diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java index 27b469f0..9fb5d1c6 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java @@ -34,6 +34,7 @@ import com.foreverwin.mesnac.listener.mapper.UsrMapper; import com.foreverwin.mesnac.meapi.dto.NcCodeDto; import com.foreverwin.mesnac.meapi.dto.RouterStepDto; import com.foreverwin.mesnac.meapi.dto.SfcDto; +import com.foreverwin.mesnac.meapi.dto.ShopOrderDto; import com.foreverwin.mesnac.meapi.mapper.*; import com.foreverwin.mesnac.meapi.model.*; import com.foreverwin.mesnac.meapi.service.*; @@ -186,6 +187,15 @@ public class AbnormalBillServiceImpl extends ServiceImpl messages = messageService.selectList(message); + for (int i = 0; i < messages.size(); i++) { + messages.get(i).setStatus("Y"); + messages.get(i).setModifiedDateTime(now); + messages.get(i).setModifiedUser(commonUser); + } + if(messages.size() > 0){ + messageService.saveOrUpdateBatch(messages); + } return ; } this.anomalyCreatedAndSendMessage(abnormalBillMapper.selectById(abnormalBill.getHandle()),null); @@ -957,12 +980,45 @@ public class AbnormalBillServiceImpl extends ServiceImpl scrapDtoBySfc = abnormalBillMapper.findScrapDtoBySfc(site, mainSfc,splitSfcs); - - //如果用户提报上来的sfc不为空,并且不是主sfc,则把主sfc从scrapDtoBySfc去掉 if(!StringUtil.isBlank(sfc) && !sfc.equals(mainSfc)){ for (int i = 0; i < scrapDtoBySfc.size(); i++) { diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AnomalyJobServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AnomalyJobServiceImpl.java index 5bcb0483..9b5b2c58 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AnomalyJobServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AnomalyJobServiceImpl.java @@ -172,9 +172,10 @@ public class AnomalyJobServiceImpl implements AnomalyJobService { List nwaUsers = nwaUserService.checkUserGroup(site, message.getSendUserGroup()); String user = ""; for (int i = 0; i < nwaUsers.size(); i++) { - user += nwaUsers.get(i).getFullName()+"、"; if(i == (nwaUsers.size() - 1)){ user += nwaUsers.get(i).getFullName()+","; + }else { + user += nwaUsers.get(i).getFullName()+"、"; } } //根据异常消息的节点来判断所处的状态 diff --git a/anomaly/src/main/resources/mapper/AbnormalBillDisposeMapper.xml b/anomaly/src/main/resources/mapper/AbnormalBillDisposeMapper.xml index 536b62c2..1a5039c8 100644 --- a/anomaly/src/main/resources/mapper/AbnormalBillDisposeMapper.xml +++ b/anomaly/src/main/resources/mapper/AbnormalBillDisposeMapper.xml @@ -738,7 +738,7 @@ LEFT JOIN OPERATION_T OT ON O.HANDLE = OT.OPERATION_BO AND OT.LOCALE = #{locale} LEFT JOIN CUSTOM_FIELDS WORKORDER ON WORKORDER.HANDLE = SO.HANDLE AND WORKORDER."ATTRIBUTE" = 'WORK_ORDER' LEFT JOIN CUSTOM_FIELDS ITEMNUMBER ON ITEMNUMBER.HANDLE = SO.HANDLE AND ITEMNUMBER."ATTRIBUTE" = 'ITEM_NUMBER' - LEFT JOIN CUSTOM_FIELDS "MAP" ON "MAP".HANDLE = SO.HANDLE AND "MAP"."ATTRIBUTE" = 'MAP' + LEFT JOIN CUSTOM_FIELDS "MAP" ON "MAP".HANDLE = I.HANDLE AND "MAP"."ATTRIBUTE" = 'DWG_NO' LEFT JOIN Z_ABNORMAL_NC_CODE ZANC ON ZAB.HANDLE = ZANC.ABNORMAL_BILL_BO LEFT JOIN NC_CODE_T NCT ON ('NCCodeBO:' || ZAB.SITE || ',' || ZANC.NC_CODE) = NCT.NC_CODE_BO AND NCT.LOCALE = #{locale} LEFT JOIN WORK_CENTER_T WCT ON ('WorkCenterBO:' || ZAB.SITE || ',' || ZAB.WORK_CENTER) = WCT.WORK_CENTER_BO AND WCT.LOCALE = #{locale} diff --git a/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml b/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml index 8e61967f..44bdc40e 100644 --- a/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml +++ b/anomaly/src/main/resources/mapper/AbnormalBillMapper.xml @@ -1104,7 +1104,7 @@ ZAB.NC_CODE NC_CODE ,ZAB.PB_DESCRIPTION PB_DESCRIPTION ,ZAB.SHUT_DOWN SHUT_DOWN ,ZAB.RESPONSE_USER RESPONSE_USER,ZAB.RESPONSE_DATE_TIME RESPONSE_DATE_TIME, ZABD.ABNORMAL_METHOD ABNORMAL_METHOD,ZNU3.FULL_NAME CONFIRM_USER,ZABD.RESOLVE_REMARK RESOLVE_REMARK, ZAB.CANCEL_CODE CANCEL_CODE,ZAB.CANCEL_DATE_TIME CANCEL_DATE_TIME,ZNU4.FULL_NAME CANCEL_USER,ZAB.CANCEL_REASON CANCEL_REASON, - ZAB.REPORT_SEND_USER_GROUP REPORT_SEND_USER_GROUP, + ZAB.REPORT_SEND_USER_GROUP REPORT_SEND_USER_GROUP,ZAB.CANCEL_SEND_USER_GROUP CANCEL_SEND_USER_GROUP, SUBSTR(LISTAGG(NCT.DESCRIPTION || ',') WITHIN GROUP(ORDER BY ZAB.ABNORMAL_NO),0,LENGTH(LISTAGG(NCT.DESCRIPTION || ',') WITHIN GROUP(ORDER BY ZAB.ABNORMAL_NO))-1) NC_CODE_DESCRIPTION FROM Z_ABNORMAL_BILL ZAB @@ -1134,7 +1134,7 @@ ZAB.NC_CODE ,ZAB.PB_DESCRIPTION ,ZAB.SHUT_DOWN ,ZAB.RESPONSE_USER ,ZAB.RESPONSE_DATE_TIME , ZABD.ABNORMAL_METHOD ,ZNU3.FULL_NAME ,ZABD.RESOLVE_REMARK , ZAB.CANCEL_CODE ,ZAB.CANCEL_DATE_TIME ,ZNU4.FULL_NAME ,ZAB.CANCEL_REASON , - ZAB.REPORT_SEND_USER_GROUP + ZAB.REPORT_SEND_USER_GROUP,ZAB.CANCEL_SEND_USER_GROUP SELECT S.SFC SFC, S2.STATUS STATUS, - SUBSTR(SS.OPERATION_BO ,INSTR(SS.OPERATION_BO ,',',1)+1,(INSTR(SS.OPERATION_BO ,'#',1)-1)-(INSTR(SS.OPERATION_BO ,',',1)+1)) || '/' || SS.STEP_ID OPERATION, - ZSD2.RESRCE RESRCE,SO.SHOP_ORDER SHOP_ORDER, + CASE WHEN ZAB.OPERATION IS NOT NULL AND ZAB.STEP_ID IS NOT NULL THEN ZAB.OPERATION || '/' || ZAB.STEP_ID + ELSE SUBSTR(SS.OPERATION_BO ,INSTR(SS.OPERATION_BO ,',',1)+1,(INSTR(SS.OPERATION_BO ,'#',1)-1)-(INSTR(SS.OPERATION_BO ,',',1)+1)) || '/' || SS.STEP_ID + END OPERATION, + CASE WHEN ZAB.RESRCE IS NOT NULL THEN ZAB.RESRCE + ELSE ZSD2.RESRCE + END RESRCE, + CASE WHEN ZAB.SHOP_ORDER IS NOT NULL THEN ZAB.SHOP_ORDER + ELSE SO.SHOP_ORDER + END SHOP_ORDER, CASE WHEN I.ITEM != 'NULL' THEN I.ITEM || '/' || I.REVISION END ITEM, CASE WHEN R.ROUTER != 'NULL' THEN R.ROUTER || '/' || R.REVISION END ROUTER , CASE WHEN B.BOM != 'NULL' THEN B.BOM || '/' || B.REVISION END BOM, @@ -1196,9 +1203,9 @@ END REASON, ZSS.TYPE TYPE FROM SFC S - INNER JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE - INNER JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE - INNER JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE AND (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0) + LEFT JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE + LEFT JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE AND ST.IN_USE = 'true' + LEFT JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE AND (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0) INNER JOIN STATUS S2 ON S2.HANDLE = S.STATUS_BO LEFT JOIN Z_SFC_DISPATCH ZSD2 ON ZSD2.DISPATCH_NO = S.SFC || '-' || SS.STEP_ID INNER JOIN SHOP_ORDER SO ON SO.HANDLE = S.SHOP_ORDER_BO AND SO.SITE = S.SITE @@ -1213,6 +1220,7 @@ FROM Z_ABNORMAL_BILL_VIEW ZABV2 WHERE ZABV2.SFC = #{mainSfc} )) ZABV ON ZABV.SFC = S.SFC AND ZABV.SITE= S.SITE + LEFT JOIN Z_ABNORMAL_BILL ZAB ON ZAB.HANDLE = ZABV.HANDLE S.SITE = #{site} AND (S.SFC = #{mainSfc} diff --git a/anomaly/src/main/resources/mapper/ReportMapper.xml b/anomaly/src/main/resources/mapper/ReportMapper.xml index 7a1c0b88..fe84fe94 100644 --- a/anomaly/src/main/resources/mapper/ReportMapper.xml +++ b/anomaly/src/main/resources/mapper/ReportMapper.xml @@ -49,7 +49,7 @@ CF2.VALUE WORK_ORDER,OT2.DESCRIPTION CURRENT_OPERATION_DESCRIPTION,O2.OPERATION CURRENT_OPERATION FROM SFC S LEFT JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE - LEFT JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE + LEFT JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE AND ST.IN_USE = 'true' LEFT JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE AND (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0) INNER JOIN SHOP_ORDER SO ON SO.HANDLE = S.SHOP_ORDER_BO INNER JOIN ITEM I ON I.HANDLE = SO.ITEM_BO @@ -314,7 +314,7 @@ LEFT JOIN CUSTOM_FIELDS itemNumber ON itemNumber.HANDLE = so.HANDLE AND itemNumber."ATTRIBUTE" = 'ITEM_NUMBER' LEFT JOIN SFC s ON s.SFC = zab.SFC AND s.SITE = zab.SITE LEFT JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE - LEFT JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE + LEFT JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE AND ST.IN_USE = 'true' LEFT JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE AND (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0) LEFT JOIN Z_SFC_DISPATCH zsd ON zsd.DISPATCH_NO = S.SFC || '-' || SS.STEP_ID LEFT JOIN OPERATION o ON o.OPERATION = zsd.OPERATION AND o.SITE = zab.SITE AND o.CURRENT_REVISION ='true' @@ -425,7 +425,10 @@ LEFT JOIN Z_SELF_REPORT zsr ON zsr.HANDLE = zab.OBJECT_BO LEFT JOIN USER_GROUP ug ON ug.USER_GROUP = zabd.RESOLVE_SEND_USER_GROUP AND ug.SITE = zab.SITE - zab.SITE = #{site} AND (wc.WORK_CENTER = #{workCenter} OR wct.DESCRIPTION = #{workCenter}) + zab.SITE = #{site} + + AND (wc.WORK_CENTER = #{workCenter} OR wct.DESCRIPTION = #{workCenter}) + AND zab.ITEM_NUMBER = #{itemNumber} @@ -475,9 +478,9 @@ ELSE '' END SURPLUS_DAY, CASE WHEN zsd.ACTUAL_START_DATE IS NOT null AND cf3.VALUE IS NOT null AND cf3.VALUE != 0 AND zsd.ACTUAL_COMPLETE_DATE IS NULL - THEN ROUND(TO_NUMBER(SYSDATE - zsd.ACTUAL_START_DATE)/TO_NUMBER(cf3.VALUE),2) || '%' + THEN ROUND(TO_NUMBER(SYSDATE - zsd.ACTUAL_START_DATE)/TO_NUMBER(cf3.VALUE),2)*100 || '%' ELSE '' - END PROCESS_PROGRESS + END PROCESS_HOURS FROM Z_SFC_DISPATCH zsd 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' @@ -489,7 +492,7 @@ LEFT JOIN RESRCE r ON r.RESRCE = zsd.RESRCE AND r.SITE = zsd.SITE LEFT JOIN SFC s ON s.SFC = zsd.SFC AND s.SITE = zsd.SITE LEFT JOIN SFC_ROUTING sr ON sr.SFC_BO = s.HANDLE - LEFT JOIN SFC_ROUTER st ON st.SFC_ROUTING_BO = sr.HANDLE + LEFT JOIN SFC_ROUTER st ON st.SFC_ROUTING_BO = sr.HANDLE AND st.IN_USE = 'true' LEFT JOIN SFC_STEP ss ON ss.SFC_ROUTER_BO = st.HANDLE AND (ss.QTY_IN_QUEUE > 0 OR ss.QTY_IN_WORK > 0) LEFT JOIN OPERATION o ON o.OPERATION = SUBSTR(SS.OPERATION_BO,INSTR(SS.OPERATION_BO,',',1,1)+1,INSTR(SS.OPERATION_BO,',',1,2) - INSTR(SS.OPERATION_BO,',') -1) AND o.SITE = zsd.SITE LEFT JOIN OPERATION_T ot ON ot.OPERATION_BO = o.HANDLE AND ot.LOCALE = 'zh' diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java index e83f5945..44d235a6 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java @@ -108,8 +108,10 @@ public class UserResourceServiceImpl extends ServiceImpl deleteList = new ArrayList<>(); - for (UserResource resource : deleteTableList) { - deleteList.add(HandleEnum.USER_RESOURCE.getHandle(site,resource.getResrce(),resource.getUserId())); + if(deleteTableList != null && deleteTableList.size() > 0){ + for (UserResource resource : deleteTableList) { + deleteList.add(HandleEnum.USER_RESOURCE.getHandle(site,resource.getResrce(),resource.getUserId())); + } } if(deleteList.size() > 0) { userResourceMapper.deleteBatchIds(deleteList); diff --git a/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml b/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml index 9970404e..6f5380ea 100644 --- a/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml +++ b/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml @@ -804,7 +804,7 @@ SELECT ZSD2.RESRCE RESRCE,ZSD2.WORK_CENTER WORK_CENTER FROM SFC S INNER JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE - INNER JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE + INNER JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE AND ST.IN_USE='true' INNER JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE AND (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0) LEFT JOIN Z_SFC_DISPATCH ZSD2 ON ZSD2.DISPATCH_NO = S.SFC || '-' || SS.STEP_ID WHERE S.SITE = #{site} diff --git a/meapi/src/main/resources/mapper/SfcMapper.xml b/meapi/src/main/resources/mapper/SfcMapper.xml index 45a7dcfe..3316268f 100644 --- a/meapi/src/main/resources/mapper/SfcMapper.xml +++ b/meapi/src/main/resources/mapper/SfcMapper.xml @@ -692,7 +692,7 @@ SELECT SS.OPERATION_BO,SS.STEP_ID FROM SFC S INNER JOIN SFC_ROUTING SR ON SR.SFC_BO = S.HANDLE - INNER JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE + INNER JOIN SFC_ROUTER ST ON ST.SFC_ROUTING_BO = SR.HANDLE AND ST.IN_USE = 'true' INNER JOIN SFC_STEP SS ON SS.SFC_ROUTER_BO = ST.HANDLE WHERE (SS.QTY_IN_QUEUE > 0 OR SS.QTY_IN_WORK > 0) AND S.SFC = #{sfc} AND S.SITE = #{site} diff --git a/meapi/src/main/resources/mapper/ShopOrderMapper.xml b/meapi/src/main/resources/mapper/ShopOrderMapper.xml index e36eb7d9..6aec022a 100644 --- a/meapi/src/main/resources/mapper/ShopOrderMapper.xml +++ b/meapi/src/main/resources/mapper/ShopOrderMapper.xml @@ -1007,7 +1007,7 @@ - + SELECT zab.NC_QTY,zsbd.ROUTER_BO,zab.NC_CODE,zab.ABNORMAL_NO,zsbd.ABNORMAL_METHOD,zab.STEP_ID FROM Z_ABNORMAL_BILL zab JOIN Z_ABNORMAL_BILL_DISPOSE zsbd ON zab.HANDLE=ZSBD.ABNORMAL_BILL_BO - WHERE ZAB.SFC=#{sfc} AND zab.ABNORMAL_NO=#{abnormalNo} AND zab.SITE=#{site} AND ZAB.STEP_ID=#{stepId} AND (zab.STATUS='G' OR zab.STATUS='F') AND zab."TYPE"='Z' AND (zsbd.ABNORMAL_METHOD='F' OR zsbd.ABNORMAL_METHOD='C') + WHERE ZAB.SFC=#{sfc} AND zab.ABNORMAL_NO=#{abnormalNo} AND zab.SITE=#{site} AND (zab.STATUS='G' OR zab.STATUS='F') AND zab."TYPE"='Z' AND (zsbd.ABNORMAL_METHOD='F' OR zsbd.ABNORMAL_METHOD='C')