|
@@ -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;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 数据转换(设备——计划)
|
|
|
*
|