|
|
@ -2605,5 +2605,151 @@ SELECT zab.CREATED_DATE_TIME,
|
|
|
|
</where>
|
|
|
|
</where>
|
|
|
|
ORDER BY WIP.WORK_CENTER_DESCRIPTION,WIP."operation"
|
|
|
|
ORDER BY WIP.WORK_CENTER_DESCRIPTION,WIP."operation"
|
|
|
|
</select>
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<select id="customerDimensionFinishedTimeReport" resultType="java.util.Map" parameterType="java.util.HashMap">
|
|
|
|
|
|
|
|
--客户维度已完工工时报表
|
|
|
|
|
|
|
|
SELECT KHW."workCenterDescription",--车间
|
|
|
|
|
|
|
|
KHW."shortHandWorkOrder",--客户
|
|
|
|
|
|
|
|
SUM(KHW."tardinessWork") "tardinessWork", --未完工工时
|
|
|
|
|
|
|
|
SUM(KHW."workHours1") "workHours1",
|
|
|
|
|
|
|
|
SUM(KHW."workHours2") "workHours2",
|
|
|
|
|
|
|
|
SUM(KHW."workHours3") "workHours3",
|
|
|
|
|
|
|
|
SUM(KHW."workHours4") "workHours4",
|
|
|
|
|
|
|
|
SUM(KHW."workHours5") "workHours5",
|
|
|
|
|
|
|
|
SUM(KHW."workHours6") "workHours6",
|
|
|
|
|
|
|
|
SUM(KHW."workHours7") "workHours7",
|
|
|
|
|
|
|
|
SUM(KHW."workHours8") "workHours8",
|
|
|
|
|
|
|
|
SUM(KHW."workHours9") "workHours9",
|
|
|
|
|
|
|
|
SUM(KHW."workHours10") "workHours10",
|
|
|
|
|
|
|
|
SUM(KHW."workHours11") "workHours11",
|
|
|
|
|
|
|
|
SUM(KHW."workHours12") "workHours12",
|
|
|
|
|
|
|
|
SUM(KHW."totalWorkingHours") "totalWorkingHours"
|
|
|
|
|
|
|
|
FROM (
|
|
|
|
|
|
|
|
SELECT CASE
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '硫化') > 0 THEN '硫化'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '全钢') > 0 THEN '全钢'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '半钢') > 0 THEN '半钢'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '鼓') > 0 THEN '鼓'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '裁断') > 0 THEN '裁断'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '检测') > 0 THEN '检测'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '橡塑') > 0 THEN '橡塑'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '非公路') > 0 THEN '非公路'
|
|
|
|
|
|
|
|
WHEN INSTR(WIP."workOrder", '研究院') > 0 THEN '研究院'
|
|
|
|
|
|
|
|
ELSE '其他' END "shortHandWorkOrder",
|
|
|
|
|
|
|
|
WIP."workHours1" + WIP."workHours2" + WIP."workHours3" + WIP."workHours4" + WIP."workHours5" +
|
|
|
|
|
|
|
|
WIP."workHours6" +
|
|
|
|
|
|
|
|
WIP."workHours7" + WIP."workHours8" + WIP."workHours9" + WIP."workHours10" + WIP."workHours11" +
|
|
|
|
|
|
|
|
WIP."workHours12" "totalWorkingHours",
|
|
|
|
|
|
|
|
WIP.*
|
|
|
|
|
|
|
|
FROM (
|
|
|
|
|
|
|
|
WITH MONTH AS (
|
|
|
|
|
|
|
|
SELECT ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 0 - #{month}) month0,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 1- #{month}) month1,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 2- #{month}) month2,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 3- #{month}) month3,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 4- #{month}) month4,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 5- #{month}) month5,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 6- #{month}) month6,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 7- #{month}) month7,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 8- #{month}) month8,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 9- #{month}) month9,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 10- #{month}) month10,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 11- #{month}) month11,
|
|
|
|
|
|
|
|
ADD_MONTHS(TRUNC(TO_DATE(TO_CHAR(sysdate, 'yyyy-MM'), 'yyyy-MM'), 'yyyy'), 12- #{month}) month12
|
|
|
|
|
|
|
|
FROM DUAL)
|
|
|
|
|
|
|
|
SELECT WCT.DESCRIPTION "workCenterDescription",
|
|
|
|
|
|
|
|
cf2.VALUE "workOrder",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS != 'CANCEL' AND ZSD.DISPATCH_STATUS != 'PAUSE' AND
|
|
|
|
|
|
|
|
ZSD.DISPATCH_STATUS != 'COMPLETE'
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "tardinessWork",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month0) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) <
|
|
|
|
|
|
|
|
TO_DATE(MONTH.month1)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours1",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month1) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month2)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours2",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month2) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month3)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours3",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month3) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month4)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours4",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month4) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month5)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours5",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month5) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month6)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours6",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month6) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month7)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours7",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month7) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month8)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours8",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month8) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month9)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours9",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month9) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month10)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours10",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month10) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month11)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours11",
|
|
|
|
|
|
|
|
SUM(CASE
|
|
|
|
|
|
|
|
WHEN ZSD.DISPATCH_STATUS = 'COMPLETE' AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) >= TO_DATE(MONTH.month11) AND
|
|
|
|
|
|
|
|
(ZSD.ACTUAL_COMPLETE_DATE + 8 / 24) < TO_DATE(MONTH.month12)
|
|
|
|
|
|
|
|
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS
|
|
|
|
|
|
|
|
ELSE 0 END) "workHours12"
|
|
|
|
|
|
|
|
FROM Z_SFC_DISPATCH ZSD
|
|
|
|
|
|
|
|
LEFT JOIN SHOP_ORDER so ON so.SHOP_ORDER = zsd.SHOP_ORDER AND so.SITE = zsd.SITE
|
|
|
|
|
|
|
|
LEFT JOIN CUSTOM_FIELDS cf2 ON cf2.HANDLE = so.HANDLE AND cf2."ATTRIBUTE" = 'WORK_ORDER'
|
|
|
|
|
|
|
|
LEFT JOIN WORK_CENTER WC ON WC.WORK_CENTER = ZSD.WORK_CENTER
|
|
|
|
|
|
|
|
LEFT JOIN WORK_CENTER_T WCT ON WCT.WORK_CENTER_BO = WC.HANDLE AND WCT.LOCALE = 'zh'
|
|
|
|
|
|
|
|
CROSS JOIN MONTH
|
|
|
|
|
|
|
|
WHERE cf2.VALUE IS NOT NULL
|
|
|
|
|
|
|
|
<if test="workCenter != null and workCenter != ''">
|
|
|
|
|
|
|
|
AND ZSD.WORK_CENTER = #{workCenter}
|
|
|
|
|
|
|
|
</if>
|
|
|
|
|
|
|
|
GROUP BY WCT.DESCRIPTION, cf2.VALUE) WIP
|
|
|
|
|
|
|
|
) KHW
|
|
|
|
|
|
|
|
GROUP BY KHW."workCenterDescription", KHW."shortHandWorkOrder"
|
|
|
|
|
|
|
|
ORDER BY KHW."workCenterDescription" DESC, KHW."shortHandWorkOrder"
|
|
|
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
|
|
</mapper>
|
|
|
|
</mapper>
|