WHEN (zsd.DISPATCH_STATUS = 'COMPLETE' AND to_char(zsd.PLANNED_COMP_DATE,'yyyy-mm-dd')>= to_char(zsd.ACTUAL_COMPLETE_DATE,'yyyy-mm-dd')) OR zsd.DISPATCH_STATUS = 'CANCEL' THEN zsd.PROD_HOURS * zsd.DISPATCH_QTY
ELSE 0 END) SUM_DONE_HOURS
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 cf ON cf.HANDLE = so.HANDLE AND cf."ATTRIBUTE" = 'ITEM_NUMBER'
LEFT JOIN CUSTOM_FIELDS cf2 ON cf2.HANDLE = so.HANDLE AND cf2."ATTRIBUTE" = 'WORK_ORDER'
LEFT JOIN WORK_CENTER wc ON zsd.WORK_CENTER = wc.WORK_CENTER
LEFT JOIN WORK_CENTER_T wct ON wc.HANDLE = wct.WORK_CENTER_BO
LEFT JOIN RESOURCE_TYPE RT ON ZSD.RESOURCE_TYPE = RT.RESOURCE_TYPE
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE
LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO
WHERE RT.RESOURCE_TYPE IS NOT NULL
<iftest="itemNumber != null and itemNumber != ''">
AND cf.VALUE = #{itemNumber}
</if>
<iftest="workOrder != null and workOrder != ''">
AND cf2.VALUE = #{workOrder}
</if>
<iftest="resourceType != null and resourceType != ''">