ソースを参照

aps-排程完还原时间

sucheng 5 ヶ月 前
コミット
daee8bad4c

+ 2 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsProcessOperationProcessEquDao.java

@@ -134,6 +134,8 @@ public interface ApsProcessOperationProcessEquDao extends BaseMapper<ApsProcessO
     void repairePlanStartDate(@Param("userId") String userId,@Param("userName")String userName);
 
     List<ApsProcessOperationProcessEquCheckVo> getNeedCheckEquList(@Param("startTime") DateTime startTime,@Param("endTime") DateTime endTime, @Param("tenantId") String tenantId);
+
+    void repairePlanStartDate2(@Param("userId") String userId,@Param("userName")String userName);
 }
 
 

+ 1 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsServiceImpl.java

@@ -800,6 +800,7 @@ public class ApsServiceImpl implements ApsService {
                 }
                 //还原排程过程中,开工/报工的作业的计划时间
                 apsProcessOperationProcessEquDao.repairePlanStartDate(currentUser.getId(), currentUser.getName());
+                apsProcessOperationProcessEquDao.repairePlanStartDate2(currentUser.getId(), currentUser.getName());
 
                 if (StrUtil.isNotBlank(productionScheduleRetVo.getMsg())) {
                     // 排程异常后恢复历史排程结果为锁定状态

+ 10 - 8
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsProcessOperationProcessEquDao.xml

@@ -396,7 +396,8 @@
     <update id="repairePlanStartDate">
         update aps_process_operation_process_equ set
          PLANENDDATE = ACTUALFINISHDATE,
-         PLANSTARTDATE = DATE_SUB(ACTUALFINISHDATE,INTERVAL TIMESTAMPDIFF(SECOND,OLDPLANSTARTDATE,OLDPLANENDDATE) SECOND),
+         PLANSTARTDATE = ACTUALSTARTDATE,
+#          PLANSTARTDATE = DATE_SUB(ACTUALFINISHDATE,INTERVAL TIMESTAMPDIFF(SECOND,OLDPLANSTARTDATE,OLDPLANENDDATE) SECOND),
          MODIFYDATE = NOW(),
          MODIFYUSERID = #{userId},
          MODIFYUSERNAME = #{userName}
@@ -405,14 +406,15 @@
           AND OLDPLANSTARTDATE is not null
           AND OLDPLANENDDATE is not null
           AND PLANENDDATE is not null
-          AND ACTUALFINISHDATE != PLANENDDATE;
-
+          AND ACTUALFINISHDATE != PLANENDDATE
+    </update>
+    <update id="repairePlanStartDate2">
         update aps_process_operation_process_equ set
-         PLANSTARTDATE = ACTUALSTARTDATE,
-         PLANENDDATE = DATE_ADD(ACTUALSTARTDATE,INTERVAL TIMESTAMPDIFF(SECOND,OLDPLANSTARTDATE,OLDPLANENDDATE) SECOND),
-         MODIFYDATE = NOW(),
-         MODIFYUSERID = #{userId},
-         MODIFYUSERNAME = #{userName}
+             PLANSTARTDATE = ACTUALSTARTDATE,
+             PLANENDDATE = DATE_ADD(ACTUALSTARTDATE,INTERVAL TIMESTAMPDIFF(SECOND,OLDPLANSTARTDATE,OLDPLANENDDATE) SECOND),
+             MODIFYDATE = NOW(),
+             MODIFYUSERID = #{userId},
+             MODIFYUSERNAME = #{userName}
         where DELETED = 0
           AND ACTUALFINISHDATE is null
           AND ACTUALSTARTDATE is not null