IFNULL(tm2.transferedCount, 0) AS transferedCount,
IFNULL(t1.transferedCount, 0) respProjectRatioFm,
IFNULL(tm1.closedProjectCount, 0) AS closedProjectCount,
CASE WHEN t.closedProjectCount > t1.transferedCount THEN 100.00 ELSE IFNULL(round((t.closedProjectCount / t1.transferedCount),4)*100, 0.00) END AS closedProjectRatio,
SUM(TIMESTAMPDIFF(MINUTE,t.itemCreatedTime, t.closedItemTime)) AS handleProjectRatioFm
FROM
FROM
(SELECT
(SELECT eihp.`ITEM_ID` , eihp.`HANDLER_DEPT_ID` , eihp.`CREATED_TIME` AS closedItemTime, ei.`CREATED_TIME` AS itemCreatedTime, ei.`EVALUATION_SCORE`
t1.HANDLER_DEPT_ID,
FROM `esua_epdc_events`.`epdc_item_handle_process` eihp
COUNT(t1.ID) AS closedProjectCount,
LEFT JOIN `esua_epdc_events`.`epdc_item` ei on ei.`ID` = eihp.`ITEM_ID` AND ei.`DEL_FLAG` = '0'
IFNULL(SUM(TIMESTAMPDIFF(MINUTE,t1.itemCreatedTime, t1.closedItemTime)), 0) AS handleProjectRatioFz,
WHERE eihp.`DEL_FLAG`= '0'
CASE WHEN t1.EVALUATION_SCORE = 0 THEN SUM(1) ELSE SUM(0) END AS bmyCount,
AND eihp.`STATE`= '10'
CASE WHEN t1.EVALUATION_SCORE = 2 THEN SUM(1) ELSE SUM(0) END AS fcmyCount
AND date_format(eihp.CREATED_TIME, '%Y-%m') = #{yearMonth, jdbcType=VARCHAR} GROUP BY eihp.`ITEM_ID`) t GROUP BY t.HANDLER_DEPT_ID) t on t.HANDLER_DEPT_ID = d.`id`
FROM
LEFT JOIN
(SELECT eihp.`ID`, eihp.`HANDLER_DEPT_ID`, eihp.`CREATED_TIME` AS closedItemTime, ei.`CREATED_TIME` AS itemCreatedTime, ei.`EVALUATION_SCORE`
(SELECT ttt.DEPT_ID, COUNT(ttt.ITEM_ID) AS transferedCount, SUM(TIMESTAMPDIFF(MINUTE,ttt.timeToBeWhistled, ttt.earliestResponseTime)) AS respProject FROM
FROM `esua_epdc_events`.`epdc_item_handle_process` eihp
(SELECT
LEFT JOIN `esua_epdc_events`.`epdc_item` ei on ei.`ID` = eihp.`ITEM_ID`
tt.CREATED_TIME AS timeToBeWhistled,
WHERE eihp.`DEL_FLAG`= '0'
MIN( tmphp.CREATED_TIME ) AS earliestResponseTime,
AND eihp.`STATE`= 10
tt.ITEM_ID,
AND date_format(eihp.CREATED_TIME, '%Y-%m') = '2021-11' GROUP BY eihp.`ITEM_ID`) t1 GROUP BY t1.HANDLER_DEPT_ID) tmp1) tm1 on tm1.HANDLER_DEPT_ID = d.`id`
tt.DEPT_ID
LEFT JOIN
FROM
(SELECT
(
tmp2.DEPT_ID,
SELECT
tmp2.transferedCount,
eid.ID,
IFNULL(ROUND((tmp2.closedProjectRatioFz / tmp2.transferedCount)*100, 4), 0.0000) AS closedProjectRatio,
eid.CREATED_TIME,
tmp2.closedProjectRatioFz,
eid.DEPT_ID,
tmp2.transferedCount AS closedProjectRatioFm
eid.ITEM_ID
FROM
FROM
(SELECT t2.DEPT_ID, COUNT(t2.ITEM_ID) AS transferedCount, CASE WHEN t2.ITEM_STATE = 10 OR t2.ITEM_STATE = 5 THEN SUM(1) ELSE SUM(0) END AS closedProjectRatioFz FROM
LEFT JOIN `esua_epdc_events`.`epdc_item` ei on ei.`ID`= eid.`ITEM_ID`
AND date_format( eid.CREATED_TIME, '%Y-%m' ) = #{yearMonth, jdbcType=VARCHAR}
WHERE eid.`DEL_FLAG`= '0'
GROUP BY
AND ei.`DEL_FLAG`= '0'
eid.ITEM_ID
AND eid.`CREATED_TIME` <![CDATA[ <> ]]> ei.`CREATED_TIME`
) tt
AND date_format(eid.CREATED_TIME, '%Y-%m') = '2021-11' GROUP BY eid.`DEPT_ID`, eid.`ITEM_ID`) t2 GROUP BY t2.DEPT_ID) tmp2) tm2 on tm2.DEPT_ID = d.`id`
LEFT JOIN `esua_epdc_events`.epdc_item_handle_process tmphp ON tmphp.ITEM_ID = tt.ITEM_ID
LEFT JOIN
AND tmphp.HANDLER_DEPT_ID = tt.DEPT_ID
(SELECT ttt.DEPT_ID, SUM(TIMESTAMPDIFF(MINUTE,ttt.timeToBeWhistled, ttt.earliestResponseTime)) AS respProject FROM
AND tmphp.CREATED_TIME > tt.CREATED_TIME
(SELECT
AND tmphp.DEL_FLAG = '0'
tt.CREATED_TIME AS timeToBeWhistled,
GROUP BY tt.`ID`) ttt WHERE ttt.earliestResponseTime IS NOT NULL GROUP BY ttt.DEPT_ID) t1 on t1.DEPT_ID = d.`id`
MIN( tmphp.CREATED_TIME ) AS earliestResponseTime,
CASE WHEN t.closedProjectCount > t1.transferedCount THEN 100.00 ELSE IFNULL(round((t.closedProjectCount / t1.transferedCount),4)*100, 0.00) END AS closedProjectRatio,
IFNULL(tm2.closedProjectRatio, 0.00) AS closedProjectRatio,
IFNULL(CASE WHEN t.closedProjectCount > t1.transferedCount THEN t.closedProjectCount ELSE t1.transferedCount END, 0) AS closedProjectRatioFm,
IFNULL(tm2.closedProjectRatioFz, 0) AS closedProjectRatioFz,
SUM(TIMESTAMPDIFF(MINUTE,t.itemCreatedTime, t.closedItemTime)) AS handleProjectRatioFm
FROM
FROM
(SELECT
(SELECT eihp.`ITEM_ID` , eihp.`HANDLER_DEPT_ID` , eihp.`CREATED_TIME` AS closedItemTime, ei.`CREATED_TIME` AS itemCreatedTime, ei.`EVALUATION_SCORE`
t1.HANDLER_DEPT_ID,
FROM `esua_epdc_events`.`epdc_item_handle_process` eihp
COUNT(t1.ID) AS closedProjectCount,
LEFT JOIN `esua_epdc_events`.`epdc_item` ei on ei.`ID` = eihp.`ITEM_ID` AND ei.`DEL_FLAG` = '0'
IFNULL(SUM(TIMESTAMPDIFF(MINUTE,t1.itemCreatedTime, t1.closedItemTime)), 0) AS handleProjectRatioFz,
WHERE eihp.`DEL_FLAG`= '0'
CASE WHEN t1.EVALUATION_SCORE = 0 THEN SUM(1) ELSE SUM(0) END AS bmyCount,
AND eihp.`STATE`= '10'
CASE WHEN t1.EVALUATION_SCORE = 2 THEN SUM(1) ELSE SUM(0) END AS fcmyCount
AND date_format(eihp.CREATED_TIME, '%Y-%m') = #{yearMonth, jdbcType=VARCHAR} GROUP BY eihp.`ITEM_ID`) t GROUP BY t.HANDLER_DEPT_ID) t on t.HANDLER_DEPT_ID = d.`id`
FROM
LEFT JOIN
(SELECT eihp.`ID`, eihp.`HANDLER_DEPT_ID`, eihp.`CREATED_TIME` AS closedItemTime, ei.`CREATED_TIME` AS itemCreatedTime, ei.`EVALUATION_SCORE`
(SELECT ttt.DEPT_ID, COUNT(ttt.ITEM_ID) AS transferedCount, SUM(TIMESTAMPDIFF(MINUTE,ttt.timeToBeWhistled, ttt.earliestResponseTime)) AS respProject FROM
FROM `esua_epdc_events`.`epdc_item_handle_process` eihp
(SELECT
LEFT JOIN `esua_epdc_events`.`epdc_item` ei on ei.`ID` = eihp.`ITEM_ID`
tt.CREATED_TIME AS timeToBeWhistled,
WHERE eihp.`DEL_FLAG`= '0'
MIN( tmphp.CREATED_TIME ) AS earliestResponseTime,
AND eihp.`STATE`= 10
tt.ITEM_ID,
AND date_format(eihp.CREATED_TIME, '%Y-%m') = #{yearMonth, jdbcType=VARCHAR} GROUP BY eihp.`ITEM_ID`) t1 GROUP BY t1.HANDLER_DEPT_ID) tmp1) tm1 on tm1.HANDLER_DEPT_ID = d.`id`
tt.DEPT_ID
LEFT JOIN
FROM
(SELECT
(
tmp2.DEPT_ID,
SELECT
tmp2.transferedCount,
eid.ID,
IFNULL(ROUND((tmp2.closedProjectRatioFz / tmp2.transferedCount)*100, 4), 0.0000) AS closedProjectRatio,
eid.CREATED_TIME,
tmp2.closedProjectRatioFz,
eid.DEPT_ID,
tmp2.transferedCount AS closedProjectRatioFm
eid.ITEM_ID
FROM
FROM
(SELECT t2.DEPT_ID, COUNT(t2.ITEM_ID) AS transferedCount, CASE WHEN t2.ITEM_STATE = 10 OR t2.ITEM_STATE = 5 THEN SUM(1) ELSE SUM(0) END AS closedProjectRatioFz FROM
LEFT JOIN `esua_epdc_events`.`epdc_item` ei on ei.`ID`= eid.`ITEM_ID`
AND date_format( eid.CREATED_TIME, '%Y-%m' ) = #{yearMonth, jdbcType=VARCHAR}
WHERE eid.`DEL_FLAG`= '0'
GROUP BY
AND ei.`DEL_FLAG`= '0'
eid.ITEM_ID
AND eid.`CREATED_TIME` <![CDATA[ <> ]]> ei.`CREATED_TIME`
) tt
AND date_format(eid.CREATED_TIME, '%Y-%m') = #{yearMonth, jdbcType=VARCHAR} GROUP BY eid.`DEPT_ID`, eid.`ITEM_ID`) t2 GROUP BY t2.DEPT_ID) tmp2) tm2 on tm2.DEPT_ID = d.`id`
LEFT JOIN `esua_epdc_events`.epdc_item_handle_process tmphp ON tmphp.ITEM_ID = tt.ITEM_ID
LEFT JOIN
AND tmphp.HANDLER_DEPT_ID = tt.DEPT_ID
(SELECT ttt.DEPT_ID, SUM(TIMESTAMPDIFF(MINUTE,ttt.timeToBeWhistled, ttt.earliestResponseTime)) AS respProject FROM
AND tmphp.CREATED_TIME > tt.CREATED_TIME
(SELECT
AND tmphp.DEL_FLAG = '0'
tt.CREATED_TIME AS timeToBeWhistled,
GROUP BY tt.`ID`) ttt WHERE ttt.earliestResponseTime IS NOT NULL GROUP BY ttt.DEPT_ID) t1 on t1.DEPT_ID = d.`id`
MIN( tmphp.CREATED_TIME ) AS earliestResponseTime,