Pārlūkot izejas kodu

调整项目点档案月度定额表合同收入预估定时

fyz 4 nedēļas atpakaļ
vecāks
revīzija
3ad3558777

+ 3 - 3
mjava-lanyun/src/main/java/com/malk/lanyun/schedule/ScheduleTask.java

@@ -39,7 +39,7 @@ public class ScheduleTask {
     /**
      * 每周一凌晨1点自动执行
      */
-    @Scheduled(cron = "0 0 1 ? * SUN")
+    @Scheduled(cron = "0 0 1 1 * *")
     public void syncDingTalkFailedList() {
         timerService.updateYuedudinge();
         log.info("定时方法执行时间 :" + new Date());
@@ -47,7 +47,7 @@ public class ScheduleTask {
     /**
      * 每周一凌晨2点自动执行
      */
-    @Scheduled(cron = "0 0 2 ? * SUN")
+    @Scheduled(cron = "0 0 2 1 * *")
     public void syncDingTalkFailedList2() {
         timerService.updateYuedudinge();
         log.info("定时方法执行时间 :" + new Date());
@@ -160,7 +160,7 @@ public class ScheduleTask {
      * 20点20分全量同步账龄表
      */
 //    @Async
-    @Scheduled(cron = "0 20 1 * * ?")
+    @Scheduled(cron = "0 20 20 * * ?")
     void syncAgingTask(){
         log.info("全量同步账龄表");
         fService.syncAgingSchedule();

+ 1 - 1
mjava-lanyun/src/main/java/com/malk/lanyun/service/impl/TimerServiceImpl.java

@@ -94,7 +94,7 @@ public class TimerServiceImpl implements TimerService {
                 .build());
         log.info("项目点数据, {}", dataList.size());
         dataList.forEach(formData -> {
-//            if("PM00411".equals(UtilMap.getString(formData, "textField_ltxrn8h1"))){
+//            if("PM00167".equals(UtilMap.getString(formData, "textField_ltxrn8h1"))){
             if(!format.equals(UtilMap.getString(formData, "textField_m9uqfoyl")) && !"直属队".equals(UtilMap.getString(formData,"textField_lrr3rg6i"))){
                 //获取撤场时间
                 Long withdrawalTime = formData.get("dateField_lzaqu26p")==null?null:DateUtil.beginOfMonth(DateUtil.date(Long.parseLong(formData.get("dateField_lzaqu26p").toString()))).getTime();

+ 12 - 8
mjava-lanyun/src/main/java/com/malk/lanyun/service/impl/WorkServiceImpl.java

@@ -178,7 +178,7 @@ public class WorkServiceImpl implements WorkService {
                 //合同总金额
                 Double amount = Double.parseDouble(ObjectUtil.isNotNull(g.get("numberField_luz7kj3p_value"))&& !g.get("numberField_luz7kj3p_value").toString().isEmpty()?g.get("numberField_luz7kj3p_value").toString():"0.0");
                 //负责人
-                Object fzr = g.get("employeeField_lrn7frgx");
+                Object fzr = g.get("employeeField_lrn7frgx_id");
                 //施工日期
                 String workDate = g.get("dateField_lrn734i2").toString();
                 //施工内容
@@ -344,15 +344,16 @@ public class WorkServiceImpl implements WorkService {
             //日期 早上到达时间 下午结束时间 施工单位 施工内容 联系人 工程负责人 人工数 人均产值 物耗金额 物耗成本比率 施工地址 联系电话
             Map<String, Object> dataForm = UtilMap.map("dateField_mfmbs72j, dateField_lrn7frgy, dateField_lrn7frgz, textField_mfmbs72h, textField_mfmbs72i, textField_mfmbs72k, employeeField_mfmbs72q, " +
                             "numberField_mfmbs72s, numberField_mfmbs72y, numberField_mfmbs72z, numberField_mfz00i97, textField_mfz00i96, textField_mfz00i98, numberField_mn494tk1", d.get("dateField_lrn734i2"),
-                    d.get("dateField_lrn7frgy"), d.get("dateField_lrn7frgz"), d.get("textField_lrn734ie"), d.get("textField_lrn7frh6"), d.get("textField_lv37crl1"),
+                    d.get("dateField_lrn7frgy"), d.get("dateField_lrn7frgz"), d.get("textField_lrn734ie"), d.get("textField_lrn7frh6"), d.get("textField_luz7kj3q"),
                     d.get("employeeField_lrn7frgx_id"), zsdWorkHours + outWorkHours + inWorkHours, amount / (zsdWorkHours + outWorkHours + inWorkHours), 0.0, 0.0,
                     d.get("textField_luz6ben7"), d.get("textField_lv37crkw"), amount);
 
+
             ydClient.operateData(YDParam.builder()
                     .appType("APP_FKRD7416H19LDAIN348Y")
                     .systemToken("86D66PA11ITXR3RC60J43DUP75EC2T5T6Z0EMZ91")
                     .formUuid("FORM-52DCE3E917C3432AA559A146E582EB71NI0B")
-                    .searchCondition(JSON.toJSONString(UtilMap.map("dateField_mfmbs72j, textField_mfmbs72k", dateList, dataForm.get("textField_mfmbs72k"))))
+                    .searchCondition(JSON.toJSONString(UtilMap.map("dateField_mfmbs72j, textField_mfmbs72k", Arrays.asList(d.get("dateField_lrn734i2").toString(),d.get("dateField_lrn734i2").toString()), dataForm.get("textField_mfmbs72k"))))
                     .formDataJson(JSON.toJSONString(dataForm))
                     .useLatestVersion(true)
                     .build(), YDConf.FORM_OPERATION.upsert);
@@ -386,7 +387,8 @@ public class WorkServiceImpl implements WorkService {
                 .searchFieldJson(JSON.toJSONString(UtilMap.map("dateField_mfmbs72j", (Object) dateList)))
                 .build());
         // 按 "姓名" 分组,汇总工时、人均产值、出勤天数
-        Map<String, Map<String, Object>> groupByIds = dataList.stream().filter(map -> "黄珣".equals(UtilMap.getString(map,"textField_mfmbs72k")))
+        Map<String, Map<String, Object>> groupByIds = dataList.stream()
+                .filter(map -> ObjectUtil.isNotNull(UtilMap.getString(map,"textField_mfmbs72k")) && !UtilMap.getString(map,"textField_mfmbs72k").isEmpty())
                 .collect(
                         Collectors.groupingBy(
                                 map -> (String) map.get("textField_mfmbs72k"),
@@ -410,6 +412,7 @@ public class WorkServiceImpl implements WorkService {
                 );
         // 按 "姓名"、"内包/非内包" 分组,汇总工时、人均产值、出勤天数
         Map<String, Map<String, Map<String, Object>>> groupByType = dataList.stream()
+                .filter(map -> ObjectUtil.isNotNull(UtilMap.getString(map,"textField_mfmbs72k")) && !UtilMap.getString(map,"textField_mfmbs72k").isEmpty())
                 .collect(
                         Collectors.groupingBy(
                                 map -> (String) map.get("textField_mfmbs72k"),
@@ -444,7 +447,8 @@ public class WorkServiceImpl implements WorkService {
                 .build());
         groupByIds.forEach((k0,v0)->{
             Map<String, Object> dataMap = UtilMap.map("dateField_mfmbs72j, textField_mfmbs72k, numberField_mfmbs72s, numberField_mfmbs72u, numberField_mfmbs72y",
-                    dateList[0], k0, v0.get("recordCount"), v0.get("workHours"), v0.get("totalSummary"));
+                    dateList[0], k0, v0.get("workHours"), v0.get("workHours"), v0.get("totalSummary"));//出勤天数=工时
+//                    dateList[0], k0, v0.get("recordCount"), v0.get("workHours"), v0.get("totalSummary"));
             groupByType.forEach((k1,v1)->{
                 //月份 姓名 出勤天数 工时 应计总产值
                 if (k0.equals(k1)){
@@ -571,7 +575,7 @@ public class WorkServiceImpl implements WorkService {
                 .build());
         List<Map<String,Object>> sonList = new ArrayList<>();
         dataList.forEach(e-> {
-            if (!"PMXZ001".equals(e.get("textField_lrr3rg6h")) && !"PMZC001".equals(e.get("textField_lrr3rg6h")) && !e.get("textField_lrr3rg6h").toString().startsWith("PM99")) {
+            if (!"PMXZ001".equals(e.get("textField_ltxrn8h1")) && !"PMZC001".equals(e.get("textField_ltxrn8h1")) && !e.get("textField_ltxrn8h1").toString().startsWith("PM99")) {
                 LocalDateTime start = null;
                 LocalDateTime end = null;
                 if (ObjectUtil.isNotNull(e.get("dateField_lrn2oy54"))) {
@@ -876,7 +880,7 @@ public class WorkServiceImpl implements WorkService {
                         Collectors.collectingAndThen(
                                 Collectors.toList(),
                                 list -> {
-                                    //企业社保
+                                    //物耗
                                     double cost = list.stream()
                                             .mapToDouble(map -> ((Number) Double.parseDouble(!map.get("amount").toString().isEmpty() ? map.get("amount").toString() : "0.0")).doubleValue())
                                             .sum();
@@ -1232,7 +1236,7 @@ public class WorkServiceImpl implements WorkService {
                         krksl[0] = UtilMap.getDouble(v,"cost");
                     }
                 });
-                if (wlde == 0 || (wlde != 0 && krksl[0] == 0)){
+                if (wlde == 0.0 || (wlde != 0.0 && krksl[0] == 0)){
                     dataMap.put("numberField_mfenmekv",5);//7-入库
                 }else {
                     dataMap.put("numberField_mfenmekv",0);//7-入库