Browse Source

任务生成返回值调整

huangpeng 10 months ago
parent
commit
9014d36883

+ 8 - 0
bs-common/src/main/java/com/rongwei/safecommon/utils/SaveConstans.java

@@ -882,4 +882,12 @@ public class SaveConstans {
         public static final String ALUMINUM_PLATE = "铝板";
         public static final String ALUMINUM_INGOT = "铝锭";
     }
+
+    /**
+     * 设备子系统——保养计划的保养部位
+     */
+    public static class EquMaintenancePart {
+        public static final Integer MAINTENANCE_PART_MONTH_Y = 1; //月份选择是,值为1
+
+    }
 }

+ 57 - 6
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/impl/MaintenanceServiceImpl.java

@@ -32,6 +32,8 @@ import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import static com.rongwei.safecommon.utils.SaveConstans.EquMaintenancePart.MAINTENANCE_PART_MONTH_Y;
+
 /**
  * @author shangmi
  * @title MaintenanceServiceImpl
@@ -96,15 +98,17 @@ public class MaintenanceServiceImpl implements MaintenanceService {
                List<EquMaintenanceTaskDo> maintenanceSiteList = maintenanceTaskService.getMaintenanceSite(taskCreator);
                // 判断所有部位是否都有生成过任务
                if (maintenanceSiteList.size() == maintenancePartList.size()) {
-                   return R.error(maintenanceSchedule.getEquipmentname() + "在" + taskCreator.getYear() + "年" + month + "月的所有部位已发布任务或没有可发布的任务!");
+                   continue;
+                //   return R.error(maintenanceSchedule.getEquipmentname() + "在" + taskCreator.getYear() + "年" + month + "月的所有部位已发布任务或没有可发布的任务!");
                }
                // 任务表没有数据则全部添加
                if (maintenanceSiteList.size() != 0) {
                    // 去重
-                   maintenancePartList = removeDuplicates(maintenancePartList, maintenanceSiteList);
+                   maintenancePartList = removeDuplicates(maintenancePartList, maintenanceSiteList,month);
                };
                if (maintenancePartList.isEmpty()){
-                   return R.error( String.format("设备 %s %s月数据已生成", equipmentname,month));
+                   continue;
+
                }
 
                // 通过主表ID查询备品备件信息
@@ -129,7 +133,7 @@ public class MaintenanceServiceImpl implements MaintenanceService {
            }
 
        }
-        return R.ok();
+        return R.ok("生成成功");
     }
 
     /**
@@ -534,23 +538,70 @@ public class MaintenanceServiceImpl implements MaintenanceService {
      *
      * @param maintenancePartList 部位表
      * @param maintenanceTaskList 任务表
+     * @param month
      * @return {@link List<EquMaintenancePartDo>}
      * @date 2023/11/27 18:14
      * @author shangmi
      */
     public List<EquMaintenancePartDo> removeDuplicates(
             List<EquMaintenancePartDo> maintenancePartList,
-            List<EquMaintenanceTaskDo> maintenanceTaskList) {
+            List<EquMaintenanceTaskDo> maintenanceTaskList, Integer month) {
         // 获取任务表中存在的保养部位
         List<String> maintenanceSite = maintenanceTaskList.stream()
                 .map(EquMaintenanceTaskDo::getMaintenancesite)
                 .collect(Collectors.toList());
         // 对部位表进行去重
         return maintenancePartList.stream().filter(info ->
-                !maintenanceSite.contains(info.getMaintenancesite())
+                !maintenanceSite.contains(info.getMaintenancesite() ) &&  MonthPartData(info,month)== MAINTENANCE_PART_MONTH_Y
         ).collect(Collectors.toList());
     }
 
+    public int MonthPartData(EquMaintenancePartDo info, Integer month){
+        int result=0;
+        switch (month){
+            case 1:
+                result = info.getJan();
+                break;
+            case 2:
+                result = info.getFeb();
+                break;
+            case 3:
+                result = info.getMar();
+                break;
+            case 4:
+                result = info.getApr();
+                break;
+            case 5:
+                result = info.getMay();
+                break;
+            case 6:
+                result = info.getJun();
+                break;
+            case 7:
+                result = info.getJul();
+                break;
+            case 8:
+                result = info.getAug();
+                break;
+            case 9:
+                result = info.getSep();
+                break;
+            case 10:
+                result = info.getOct();
+                break;
+            case 11:
+                result = info.getNov();
+                break;
+            case 12:
+                result = info.getDecember();
+                break;
+            default:
+        }
+
+        return result;
+
+    }
+
     /**
      * 数据转换(设备——计划)
      *

+ 1 - 1
cx-equipment/cx-equipment-server/src/main/java/com/rongwei/bsserver/sys/controller/EquEnergyRecordController.java

@@ -30,7 +30,7 @@ public class EquEnergyRecordController {
      * @param
      * @return
      */
-    @Scheduled(cron = "0 0 6/8 1/1 * ? ")
+    @Scheduled(cron = "0 0 6/2 1/1 * ? ")
     @RequestMapping("/calEnergyUsage")
     public R calEnergyUsage() {
         try {