资源负荷率报表v5

master
yinq 2 years ago
parent 3339077434
commit e68dbbecdb

@ -1553,7 +1553,7 @@
OT.DESCRIPTION "operationDescription",
RT.DESCRIPTION,
SUM(CASE
WHEN SYSDATE > ZSD.PLANNED_COMP_DATE THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "tardinessWork",
WHEN TO_DATE(trunc(sysdate,'month')) > ZSD.PLANNED_COMP_DATE THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "tardinessWork",
SUM(CASE
WHEN ZSD.PLANNED_COMP_DATE >= TO_DATE(WEEK.WEEK0) AND ZSD.PLANNED_COMP_DATE <= TO_DATE(WEEK.WEEK1)
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "unWorkHours1",
@ -1581,7 +1581,7 @@
WCT.DESCRIPTION WORK_CENTER_DESCRIPTION,
RT.DESCRIPTION RESOURCE_TYPE_DESCRIPTION
FROM Z_SFC_DISPATCH ZSD
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE AND CURRENT_REVISION = 'true'
LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO
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
@ -1595,7 +1595,8 @@
</if>
GROUP BY O.OPERATION,OT.DESCRIPTION,WCT.DESCRIPTION,RT.DESCRIPTION
ORDER BY "tardinessWork" DESC ) WIP
LEFT JOIN CUSTOM_FIELDS CF ON CF.ATTRIBUTE ='WEEK_CAPACITY' AND CF.HANDLE = 'OperationBO:1000,'|| WIP."operation" || ',1.0'
LEFT JOIN OPERATION OP ON OP.OPERATION = WIP."operation" AND CURRENT_REVISION = 'true'
LEFT JOIN CUSTOM_FIELDS CF ON CF.ATTRIBUTE ='WEEK_CAPACITY' AND CF.HANDLE = OP.HANDLE
<where>
1=1
<if test="operation != null and operation != ''">
@ -1643,8 +1644,7 @@
SELECT O.OPERATION "operation",
OT.DESCRIPTION "operationDescription",
SUM(CASE
WHEN SYSDATE > ZSD.PLANNED_COMP_DATE AND ZSD.DISPATCH_STATUS != 'COMPLETE'
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "tardinessWork",
WHEN TO_DATE(trunc(sysdate,'month')) > ZSD.PLANNED_COMP_DATE THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "tardinessWork",
SUM(CASE
WHEN ZSD.PLANNED_COMP_DATE >= TO_DATE(MONTH.month0) AND ZSD.PLANNED_COMP_DATE &lt;= TO_DATE(MONTH.month1)
THEN ZSD.DISPATCH_QTY * ZSD.PROD_HOURS ELSE 0 END) "workHours1",
@ -1684,20 +1684,21 @@
WCT.DESCRIPTION WORK_CENTER_DESCRIPTION,
RT.DESCRIPTION RESOURCE_TYPE_DESCRIPTION
FROM Z_SFC_DISPATCH ZSD
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE
LEFT JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = ZSD.SITE AND CURRENT_REVISION = 'true'
LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO
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
LEFT JOIN RESOURCE_TYPE RT ON ZSD.RESOURCE_TYPE = RT.RESOURCE_TYPE
CROSS JOIN MONTH
WHERE (ZSD.DISPATCH_STATUS != 'CANCEL' AND ZSD.DISPATCH_STATUS != 'PAUSE')
WHERE (ZSD.DISPATCH_STATUS != 'CANCEL' AND ZSD.DISPATCH_STATUS != 'PAUSE' AND ZSD.DISPATCH_STATUS != 'COMPLETE')
AND ZSD.PLANNED_COMP_DATE IS NOT NULL
<if test="workCenter != null and workCenter != ''">
AND ZSD.WORK_CENTER = #{workCenter}
</if>
GROUP BY O.OPERATION,OT.DESCRIPTION,WCT.DESCRIPTION,RT.DESCRIPTION
ORDER BY O.OPERATION DESC ) WIP
LEFT JOIN CUSTOM_FIELDS CF ON CF.ATTRIBUTE ='MONTH_CAPACITY' AND CF.HANDLE = 'OperationBO:1000,'|| WIP."operation" || ',1.0'
LEFT JOIN OPERATION OP ON OP.OPERATION = WIP."operation" AND CURRENT_REVISION = 'true'
LEFT JOIN CUSTOM_FIELDS CF ON CF.ATTRIBUTE ='MONTH_CAPACITY' AND CF.HANDLE = OP.HANDLE
<where>
1=1
<if test="operation != null and operation != ''">

@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.foreverwin.mesnac.meapi.enums.HandleEnum;
import com.foreverwin.mesnac.meapi.model.CustomFields;
import com.foreverwin.mesnac.meapi.model.Operation;
import com.foreverwin.mesnac.meapi.model.Resrce;
import com.foreverwin.mesnac.meapi.service.CustomFieldsService;
import com.foreverwin.mesnac.meapi.service.OperationService;
import com.foreverwin.mesnac.meapi.service.ResrceService;
import com.foreverwin.modular.core.util.CommonMethods;
import com.foreverwin.modular.core.util.FrontPage;
@ -30,6 +32,9 @@ public class ResrceController {
@Autowired
public ResrceService resrceService;
@Autowired
OperationService operationService;
@Autowired
private CustomFieldsService customFieldsService;
@ -241,7 +246,8 @@ public class ResrceController {
if (paramMap.get("capacity").equals("weekCapacity")) {
for (HashMap<String, String> hashMap : resultList) {
CustomFields customFields = new CustomFields();
customFields.setHandle(HandleEnum.OPERATION.getHandle(CommonMethods.getSite(), hashMap.get("operation"),"1.0"));
Operation operation = operationService.getCurrentRevisionRef(CommonMethods.getSite(), hashMap.get("operation"));
customFields.setHandle(operation.getHandle());
customFields.setAttribute("WEEK_CAPACITY");
customFields.setValue(hashMap.get("weekCapacity"));
CustomFieldsList.add(customFields);
@ -249,7 +255,8 @@ public class ResrceController {
} else if (paramMap.get("capacity").equals("monthCapacity")){
for (HashMap<String, String> hashMap : resultList) {
CustomFields customFields = new CustomFields();
customFields.setHandle(HandleEnum.OPERATION.getHandle(CommonMethods.getSite(), hashMap.get("operation"),"1.0"));
Operation operation = operationService.getCurrentRevisionRef(CommonMethods.getSite(), hashMap.get("operation"));
customFields.setHandle(operation.getHandle());
customFields.setAttribute("MONTH_CAPACITY");
customFields.setValue(hashMap.get("monthCapacity"));
CustomFieldsList.add(customFields);
@ -257,7 +264,8 @@ public class ResrceController {
}else if (paramMap.get("capacity").equals("dayCapacity")){
for (HashMap<String, String> hashMap : resultList) {
CustomFields customFields = new CustomFields();
customFields.setHandle(HandleEnum.OPERATION.getHandle(CommonMethods.getSite(), hashMap.get("operation"),"1.0"));
Operation operation = operationService.getCurrentRevisionRef(CommonMethods.getSite(), hashMap.get("operation"));
customFields.setHandle(operation.getHandle());
customFields.setAttribute("DAY_CAPACITY");
customFields.setValue(hashMap.get("dayCapacity"));
CustomFieldsList.add(customFields);

Loading…
Cancel
Save