ソースを参照

周工时标准化增加了异常判断流程

verguenza 4 年 前
コミット
6f016c97bd
1 ファイル変更24 行追加20 行削除
  1. 24 20
      src/main/java/com/galaxis/manatee/task/WorkHourStatistics.java

+ 24 - 20
src/main/java/com/galaxis/manatee/task/WorkHourStatistics.java

@@ -142,27 +142,31 @@ public class WorkHourStatistics {
         log.info("开始周工时标准化");
         List<ChuanyunWeekMemberHourDO> list = chuanyunWeekMemberHourDao.getWeekMemberHour();
         list.forEach(chuanyunWeekMemberHourDO -> {
-            if (chuanyunWeekMemberHourDO!=null){
-                ChuanyunWeekMemberHourDO weekMemberHourDO = new ChuanyunWeekMemberHourDO();
-                weekMemberHourDO.setProjectId(chuanyunWeekMemberHourDO.getProjectId());
-                weekMemberHourDO.setProjectType(chuanyunWeekMemberHourDO.getProjectType());
-                weekMemberHourDO.setStandardWorkHour(chuanyunWeekMemberHourDO.getStandardWorkHour());
-                weekMemberHourDO.setStatus(chuanyunWeekMemberHourDO.getStatus());
-                weekMemberHourDO.setUserId(chuanyunWeekMemberHourDO.getUserId());
-                weekMemberHourDO.setYear(chuanyunWeekMemberHourDO.getYear());
-                weekMemberHourDO.setWeek(chuanyunWeekMemberHourDO.getWeek());
-                ChuanyunWeekMemberHourDO oldWeekHour = chuanyunWeekMemberHourDao.findByProjectIdAndUserIdAndWeekAndStatusAndProjectTypeAndYear(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getStatus(),chuanyunWeekMemberHourDO.getProjectType(),chuanyunWeekMemberHourDO.getYear());
-                if (oldWeekHour != null) {
-                    chuanyunWeekMemberHourDao.delete(oldWeekHour);
-                }
-                chuanyunWeekMemberHourDao.save(weekMemberHourDO);
-                //搜索是否还有处于审批中的数据
-                ChuanyunWeekMemberHourDO processWeekHour = chuanyunWeekMemberHourDao.getProcessWeekHour(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getProjectType());
-                if (processWeekHour == null){
-                    chuanyunWeekMemberHourDao.deleteByProjectIdAndUserIdAndYearAndWeekAndStatusAndProjectType(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),"2",chuanyunWeekMemberHourDO.getProjectType());
-                    //同时删除氚云钟数据
-                    deleteExamineStatus(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,"F0000007","F0000001",chuanyunWeekMemberHourDO.getProjectId(),"F0000002",chuanyunWeekMemberHourDO.getUserId(),"F0000008",chuanyunWeekMemberHourDO.getYear(),"","","F0000006",chuanyunWeekMemberHourDO.getWeek(),"F0000003",chuanyunWeekMemberHourDO.getProjectType());
+            try{
+                if (chuanyunWeekMemberHourDO!=null){
+                    ChuanyunWeekMemberHourDO weekMemberHourDO = new ChuanyunWeekMemberHourDO();
+                    weekMemberHourDO.setProjectId(chuanyunWeekMemberHourDO.getProjectId());
+                    weekMemberHourDO.setProjectType(chuanyunWeekMemberHourDO.getProjectType());
+                    weekMemberHourDO.setStandardWorkHour(chuanyunWeekMemberHourDO.getStandardWorkHour());
+                    weekMemberHourDO.setStatus(chuanyunWeekMemberHourDO.getStatus());
+                    weekMemberHourDO.setUserId(chuanyunWeekMemberHourDO.getUserId());
+                    weekMemberHourDO.setYear(chuanyunWeekMemberHourDO.getYear());
+                    weekMemberHourDO.setWeek(chuanyunWeekMemberHourDO.getWeek());
+                    ChuanyunWeekMemberHourDO oldWeekHour = chuanyunWeekMemberHourDao.findByProjectIdAndUserIdAndWeekAndStatusAndProjectTypeAndYear(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getStatus(),chuanyunWeekMemberHourDO.getProjectType(),chuanyunWeekMemberHourDO.getYear());
+                    if (oldWeekHour != null) {
+                        chuanyunWeekMemberHourDao.delete(oldWeekHour);
+                    }
+                    chuanyunWeekMemberHourDao.save(weekMemberHourDO);
+                    //搜索是否还有处于审批中的数据
+                    ChuanyunWeekMemberHourDO processWeekHour = chuanyunWeekMemberHourDao.getProcessWeekHour(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getProjectType());
+                    if (processWeekHour == null){
+                        chuanyunWeekMemberHourDao.deleteByProjectIdAndUserIdAndYearAndWeekAndStatusAndProjectType(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),"2",chuanyunWeekMemberHourDO.getProjectType());
+                        //同时删除氚云钟数据
+                        deleteExamineStatus(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,"F0000007","F0000001",chuanyunWeekMemberHourDO.getProjectId(),"F0000002",chuanyunWeekMemberHourDO.getUserId(),"F0000008",chuanyunWeekMemberHourDO.getYear(),"","","F0000006",chuanyunWeekMemberHourDO.getWeek(),"F0000003",chuanyunWeekMemberHourDO.getProjectType());
+                    }
                 }
+            }catch (Exception e){
+                log.error(e.getMessage()+"周工时标准化异常");
             }
         });
         log.info("周工时标准化"+(Instant.now().getEpochSecond()-start)+"秒");