Min 1 rok temu
rodzic
commit
f441d4ad4f

+ 7 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -7385,6 +7385,9 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             employeeTime.setTimePeriod(timePeriod);
             employeeTime.setTimePeriod(timePeriod);
             employeeTime.setItemTypeCode("CN0001");
             employeeTime.setItemTypeCode("CN0001");
             employeeTime.setDuration(map.get("Duration")==null?"0":String.valueOf(map.get("Duration")));
             employeeTime.setDuration(map.get("Duration")==null?"0":String.valueOf(map.get("Duration")));
+            if(map.get("ProjectElementID")==null||map.get("ServiceProductInternalID")==null){
+                continue;
+            }
             employeeTime.setProjectElementID(String.valueOf(map.get("ProjectElementID")));
             employeeTime.setProjectElementID(String.valueOf(map.get("ProjectElementID")));
             employeeTime.setServiceProductInternalID(String.valueOf(map.get("ServiceProductInternalID")));
             employeeTime.setServiceProductInternalID(String.valueOf(map.get("ServiceProductInternalID")));
             if(map.get("WorkDescriptionText")!=null){
             if(map.get("WorkDescriptionText")!=null){
@@ -7428,6 +7431,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                 reportPushLog.setReportId(Integer.valueOf(String.valueOf(map.get("ReportId"))));
                 reportPushLog.setReportId(Integer.valueOf(String.valueOf(map.get("ReportId"))));
                 reportPushLog.setTargetSystem("SAP");
                 reportPushLog.setTargetSystem("SAP");
                 reportPushLog.setUuid(xmlResponseData.getEmployeeTime().getUUID());
                 reportPushLog.setUuid(xmlResponseData.getEmployeeTime().getUUID());
+                addList.add(reportPushLog);
             }
             }
         }
         }
         if(addList.size()>0){
         if(addList.size()>0){
@@ -7475,6 +7479,9 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                     XmlResponseData xmlResponseData = (XmlResponseData) CommonUtils.convertXmlStrToObject(XmlResponseData.class, result);
                     XmlResponseData xmlResponseData = (XmlResponseData) CommonUtils.convertXmlStrToObject(XmlResponseData.class, result);
                     if(StringUtils.isEmpty(xmlResponseData.getZDeleteEmployeeTime())){
                     if(StringUtils.isEmpty(xmlResponseData.getZDeleteEmployeeTime())){
                         log.error("推送取消考勤失败===》UUID:"+xmlRequestData.getZDeleteEmployeeTime().getEmployeeTimeUUID());
                         log.error("推送取消考勤失败===》UUID:"+xmlRequestData.getZDeleteEmployeeTime().getEmployeeTimeUUID());
+                    }else {
+                        //删除推送记录
+                        reportPushLogService.removeById(reportId);
                     }
                     }
                 }
                 }
             }
             }

+ 1 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/task/TimingTask.java

@@ -1652,7 +1652,7 @@ public class TimingTask {
     }
     }
 
 
     //每天凌晨 3:00 获取创建的项目服务和项目数据  SAP---->工时管家
     //每天凌晨 3:00 获取创建的项目服务和项目数据  SAP---->工时管家
-    @Scheduled(cron = "0 0 2 ? * *")
+    @Scheduled(cron = "0 0 3 ? * *")
     public void syncProjectFromSap(){
     public void syncProjectFromSap(){
         if(isDev){
         if(isDev){
             return;
             return;

+ 5 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/util/SyncSapUtils.java

@@ -52,7 +52,7 @@ public class SyncSapUtils {
                     service.setStartDate(startDate);
                     service.setStartDate(startDate);
                     EndDate endDate=new EndDate();
                     EndDate endDate=new EndDate();
                     endDate.setTimeZoneCode("UTC+8");
                     endDate.setTimeZoneCode("UTC+8");
-                    endDate.setEndDate(String.valueOf(map.get("EndDate"))+"T00:00:00Z");
+                    endDate.setEndDate(String.valueOf(map.get("EndDate"))+"T23:59:59Z");
                     service.setEndDate(endDate);
                     service.setEndDate(endDate);
                     service.setRemainingWork(String.valueOf(map.get("PlanWork")));
                     service.setRemainingWork(String.valueOf(map.get("PlanWork")));
                     service.setOverDeliveryAllowedIndicator("true");
                     service.setOverDeliveryAllowedIndicator("true");
@@ -89,7 +89,7 @@ public class SyncSapUtils {
             }
             }
             System.out.println(result);
             System.out.println(result);
             XmlResponseData xmlResponseData = (XmlResponseData) CommonUtils.convertXmlStrToObject(XmlResponseData.class, result);
             XmlResponseData xmlResponseData = (XmlResponseData) CommonUtils.convertXmlStrToObject(XmlResponseData.class, result);
-            if(StringUtils.isEmpty(xmlResponseData.getEmployeeTime())){
+            if(StringUtils.isEmpty(xmlResponseData.getZManageProjectTaskWork())){
                 log.error("推送失败===》项目编号:"+zManageProjectTaskWork.getProjectID());
                 log.error("推送失败===》项目编号:"+zManageProjectTaskWork.getProjectID());
                 continue;
                 continue;
             }
             }
@@ -123,6 +123,9 @@ public class SyncSapUtils {
         employeeTime.setTimePeriod(timePeriod);
         employeeTime.setTimePeriod(timePeriod);
         employeeTime.setItemTypeCode("CN0001");
         employeeTime.setItemTypeCode("CN0001");
         employeeTime.setDuration(map.get("Duration")==null?"0":String.valueOf(map.get("Duration")));
         employeeTime.setDuration(map.get("Duration")==null?"0":String.valueOf(map.get("Duration")));
+        if(map.get("ProjectElementID")==null||map.get("ServiceProductInternalID")==null){
+            return new XmlResponseData();
+        }
         employeeTime.setProjectElementID(String.valueOf(map.get("ProjectElementID")));
         employeeTime.setProjectElementID(String.valueOf(map.get("ProjectElementID")));
         employeeTime.setServiceProductInternalID(String.valueOf(map.get("ServiceProductInternalID")));
         employeeTime.setServiceProductInternalID(String.valueOf(map.get("ServiceProductInternalID")));
         if(map.get("WorkDescriptionText")!=null){
         if(map.get("WorkDescriptionText")!=null){