xg
“linengliang”
2024-03-14 fde3a7fbef625a679f1f3582df3ee39276005b59
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentMaintenancePlanController.java
@@ -18,6 +18,8 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import java.util.ArrayList;
import java.util.Arrays;
import org.jeecg.common.util.oConvertUtils;
import io.swagger.annotations.Api;
@@ -33,7 +35,6 @@
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -98,6 +99,12 @@
                           @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                           HttpServletRequest req) {
      QueryWrapper<EquipmentMaintenancePlan> queryWrapper = QueryGenerator.initQueryWrapper(equipmentMaintenancePlan, req.getParameterMap());
        //按创建时间范围查询,从前端接收两个参数,beginTime和endTime
      String beginTime = req.getParameter("beginTime");
      String endTime = req.getParameter("endTime");
      if(oConvertUtils.isNotEmpty(beginTime) && oConvertUtils.isNotEmpty(endTime)){
         queryWrapper.between("create_time",beginTime,endTime);
      }
      Page<EquipmentMaintenancePlan> page = new Page<EquipmentMaintenancePlan>(pageNo, pageSize);
      IPage<EquipmentMaintenancePlan> pageList = equipmentMaintenancePlanService.page(page, queryWrapper);
      return Result.OK(pageList);
@@ -113,15 +120,44 @@
    @PostMapping(value = "/add")
   @Transactional(rollbackFor = {Exception.class})
    public Result<String> add(@RequestBody EquipmentMaintenancePlan equipmentMaintenancePlan) {
       equipmentMaintenancePlan.setStatus("created");
        List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetails = equipmentMaintenancePlan.getEquipmentMaintenancePlanDetailList();
      equipmentMaintenancePlan.setEquipNo(equipmentMaintenancePlanDetails.size());
       //判断selectOption类型
      equipmentMaintenancePlan.setStatus("created");
      equipmentMaintenancePlan.setDelFlag(CommonConstant.DEL_FLAG_0);
      equipmentMaintenancePlanService.save(equipmentMaintenancePlan);
        for(EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail:equipmentMaintenancePlanDetails){
           equipmentMaintenancePlanDetail.setPlanId(equipmentMaintenancePlan.getId());
      if(equipmentMaintenancePlan.getSelectOption().equals("0")){
         //查询所有设备并将其id封装成idList
         List<Equipment> equipments = equipmentService.list();
         List<String> idList = equipments.stream().map(Equipment::getId).collect(Collectors.toList());
         //根据idList和type查询所有设备的保养标准
         Map<String, Object> maintenanceStandards = equipmentMaintenancePlanService.getStandards(idList,equipmentMaintenancePlan.getType());
         List<MaintenanceStandard> maintenanceStandardList = (List<MaintenanceStandard>) maintenanceStandards.get("records");
         //循环maintenanceStandardList将数据封装到equipmentMaintenancePlanDetailList
         List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetailList = new ArrayList<>();
         equipmentMaintenancePlan.setEquipNo(maintenanceStandardList.size());
         equipmentMaintenancePlanService.save(equipmentMaintenancePlan);
         for(MaintenanceStandard maintenanceStandard:maintenanceStandardList){
            EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail = new EquipmentMaintenancePlanDetail();
            equipmentMaintenancePlanDetail.setStandardNum(maintenanceStandard.getNum());
            equipmentMaintenancePlanDetail.setEquipmentName(maintenanceStandard.getEquipmentName());
            equipmentMaintenancePlanDetail.setEquipmentId(maintenanceStandard.getEquipmentId());
            equipmentMaintenancePlanDetail.setEquipmentNum(maintenanceStandard.getEquipmentNum());
            equipmentMaintenancePlanDetail.setModel(maintenanceStandard.getEquipmentModel());
            equipmentMaintenancePlanDetail.setStandardId(maintenanceStandard.getId());
            equipmentMaintenancePlanDetail.setPlanId(equipmentMaintenancePlan.getId());
            equipmentMaintenancePlanDetail.setPlanStartTime(equipmentMaintenancePlan.getBeginTime());
            equipmentMaintenancePlanDetail.setPlanEndTime(equipmentMaintenancePlan.getEndTime());
            equipmentMaintenancePlanDetailList.add(equipmentMaintenancePlanDetail);
         }
         equipmentMaintenancePlanDetailService.saveBatch(equipmentMaintenancePlanDetailList);
      }
        equipmentMaintenancePlanDetailService.saveBatch(equipmentMaintenancePlanDetails);
      else{
         List<EquipmentMaintenancePlanDetail> equipmentMaintenancePlanDetails = equipmentMaintenancePlan.getEquipmentMaintenancePlanDetailList();
         equipmentMaintenancePlan.setEquipNo(equipmentMaintenancePlanDetails.size());
         equipmentMaintenancePlanService.save(equipmentMaintenancePlan);
         for(EquipmentMaintenancePlanDetail equipmentMaintenancePlanDetail:equipmentMaintenancePlanDetails){
            equipmentMaintenancePlanDetail.setPlanId(equipmentMaintenancePlan.getId());
         }
         equipmentMaintenancePlanDetailService.saveBatch(equipmentMaintenancePlanDetails);
      }
        return Result.OK("添加成功!");
    }