zhangherong
2025-03-07 bcd7d1c9222431f37a6579a72456b2edb8f02402
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -1,11 +1,14 @@
package org.jeecg.modules.eam.controller;
import java.time.LocalDate;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
@@ -18,11 +21,13 @@
import org.jeecg.common.system.base.entity.SysUpload;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.DateUtils;
import org.jeecg.modules.base.entity.Constructor;
import org.jeecg.modules.base.service.IConstructorService;
import org.jeecg.modules.base.service.IFactoryModelService;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.model.DepartVo;
import org.jeecg.modules.eam.model.MaintenanceCycleVo;
import org.jeecg.modules.eam.service.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -33,7 +38,9 @@
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.system.entity.SysDepart;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.service.ISysDepartService;
import org.jeecg.modules.system.service.ISysUserService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.springframework.beans.factory.annotation.Autowired;
@@ -115,7 +122,14 @@
    @Autowired
    private IAreaService areaService;
    @Autowired
    private IDailyInspectionStandardService dailyInspectionStandardService;
    @Autowired
    private IMaintenanceStandardService maintenanceStandardService;
    @Autowired
    private ISysUserService sysUserService;
   /**
@@ -151,7 +165,14 @@
      if(StringUtils.isNotBlank(equipment.getEquipmentCategoryId())){
         queryWrapper.eq("equipment_category_id",equipment.getEquipmentCategoryId());
      }
      List<String> userWorkCenterIds = getUserWorkCenterIds();
      if(CollectionUtils.isNotEmpty(userWorkCenterIds)) {
         queryWrapper.in("work_center_id",userWorkCenterIds);
      }
      if(StringUtils.isNotBlank(equipment.getWorkCenterId())){
         queryWrapper.eq("work_center_id",equipment.getWorkCenterId());
      }
      queryWrapper.isNull("line_id");
      queryWrapper.eq("status","1");
      queryWrapper.eq("del_flag",0);
      queryWrapper.orderByDesc("create_time");
@@ -194,6 +215,78 @@
      return Result.OK(pageList);
   }
    @ApiOperation(value="mom_eam_equipment-分页列表查询", notes="mom_eam_equipment-分页列表查询")
    @GetMapping(value = "/showEquipmentList")
    public Result<IPage<Equipment>> showEquipmentList(Equipment equipment,
                                       @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                       @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                       HttpServletRequest req) {
       QueryWrapper<Equipment> queryWrapper = new QueryWrapper<>();
       if(StringUtils.isNotBlank(equipment.getNum())){
          queryWrapper.like("num",equipment.getNum());
       }
       if(StringUtils.isNotBlank(equipment.getName())){
          queryWrapper.like("name",equipment.getName());
       }
//       queryWrapper.eq("equipment_status","1");
       queryWrapper.in("technology_status","qualified","limitedUse");
       queryWrapper.eq("status","1");
       queryWrapper.eq("del_flag",0);
       queryWrapper.orderByDesc("create_time");
       Page<Equipment> page = new Page<Equipment>(pageNo, pageSize);
       IPage<Equipment> pageList = equipmentService.page(page, queryWrapper);
       return Result.OK(pageList);
    }
    @ApiOperation(value="mom_eam_equipment-分页列表查询", notes="mom_eam_equipment-分页列表查询")
    @GetMapping(value = "/findEquipmentList")
    public Result<IPage<Equipment>> findEquipmentList(Equipment equipment,
                                          @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                          @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                          HttpServletRequest req) {
       QueryWrapper<Equipment> queryWrapper = new QueryWrapper<>();
       if(StringUtils.isNotBlank(equipment.getNum())){
          queryWrapper.like("num",equipment.getNum());
       }
       if(StringUtils.isNotBlank(equipment.getName())){
          queryWrapper.like("name",equipment.getName());
       }
//       queryWrapper.eq("equipment_status","1");
       queryWrapper.in("technology_status","qualified","limitedUse");
       queryWrapper.in("equipment_importance_id","A","B","C");
       queryWrapper.eq("status","1");
       queryWrapper.eq("del_flag",0);
       queryWrapper.orderByDesc("create_time");
       Page<Equipment> page = new Page<Equipment>(pageNo, pageSize);
       IPage<Equipment> pageList = equipmentService.page(page, queryWrapper);
       return Result.OK(pageList);
    }
    @ApiOperation(value="mom_eam_equipment-分页列表查询", notes="mom_eam_equipment-分页列表查询")
    @GetMapping(value = "/queryEquipmentList")
    public Result<IPage<Equipment>> queryEquipmentList(Equipment equipment,
                                          @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                          @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                          HttpServletRequest req) {
       QueryWrapper<Equipment> queryWrapper = new QueryWrapper<>();
       if(StringUtils.isNotBlank(equipment.getNum())){
          queryWrapper.like("num",equipment.getNum());
       }
       if(StringUtils.isNotBlank(equipment.getName())){
          queryWrapper.like("name",equipment.getName());
       }
       queryWrapper.eq("use_id",equipment.getUseId());
       queryWrapper.eq("del_flag",0);
       queryWrapper.orderByDesc("create_time");
       Page<Equipment> page = new Page<Equipment>(pageNo, pageSize);
       IPage<Equipment> pageList = equipmentService.page(page, queryWrapper);
       return Result.OK(pageList);
    }
    /**
     * 设备保修  获取设备列表组件
@@ -209,6 +302,54 @@
       QueryWrapper<Equipment> queryWrapper = QueryGenerator.initQueryWrapper(equipment, req.getParameterMap());
       Page<Equipment> page = new Page<Equipment>(pageNo, pageSize);
       IPage<Equipment> pageList = equipmentService.getEquipmentList(page, equipment);
       return Result.OK(pageList);
    }
    /**
     * 设备保修  获取设备列表组件
     * qsw 2023-7-14
     */
    @GetMapping(value = "/getEquipmentTZList")
    @PermissionData
    public Result<IPage<Equipment>> getEquipmentTZList(Equipment equipment,
                                         @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                         @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                         HttpServletRequest req) {
       //QueryWrapper<Equipment> queryWrapper = QueryGenerator.initQueryWrapper(equipment, req.getParameterMap());
       Page<Equipment> page = new Page<Equipment>(pageNo, pageSize);
       IPage<Equipment> pageList = equipmentService.getEquipmentTZList(page, equipment);
       List<Equipment> list = pageList.getRecords();
       list.forEach(equip -> {
          String id = equip.getId();
          List<DailyInspectionStandard> dailyInspectionStandards = dailyInspectionStandardService.lambdaQuery()
                .eq(DailyInspectionStandard::getEquipmentId, id)
                .eq(DailyInspectionStandard::getVersionStatus, "2")
                .list();
          if (dailyInspectionStandards.size() > 0) {
             equip.setYseNoInspectionStandard("0");
          } else {
             equip.setYseNoInspectionStandard("1");
          }
          List<MaintenanceStandard> maintenance2Standards = maintenanceStandardService.lambdaQuery()
                .eq(MaintenanceStandard::getEquipmentId, id)
                .eq(MaintenanceStandard::getMaintenanceType, "2")
                .eq(MaintenanceStandard::getVersionStatus, "2").list();
          if (maintenance2Standards.size() > 0) {
             equip.setYseNoMaintenance2Standard("0");
          } else {
             equip.setYseNoMaintenance2Standard("1");
          }
          List<MaintenanceStandard> maintenance3Standards = maintenanceStandardService.lambdaQuery()
                .eq(MaintenanceStandard::getEquipmentId, id)
                .eq(MaintenanceStandard::getMaintenanceType, "3")
                .eq(MaintenanceStandard::getVersionStatus, "2").list();
          if (maintenance3Standards.size() > 0) {
             equip.setYseNoMaintenance3Standard("0");
          } else {
             equip.setYseNoMaintenance3Standard("1");
          }
       });
       return Result.OK(pageList);
    }
@@ -229,6 +370,20 @@
   @PostMapping(value = "/add")
   @Transactional(rollbackFor = { Exception.class })
   public Result<String> add(@RequestBody Equipment equipment) {
      //下次三保日期处理
      if(equipment.getThirdMaintenanceTime() == null && equipment.getAcceptanceCheckDate() != null && StringUtils.isNotBlank(equipment.getCheckPeriod())){
         //如果没有三保日期 按照验收日期计算下次三保日期
         int checkPeriod = Integer.parseInt(equipment.getCheckPeriod()) - 1;
         LocalDate acceptanceCheckDate = LocalDate.parse(equipment.getAcceptanceCheckDate());
         LocalDate localDate = acceptanceCheckDate.plusDays(checkPeriod);
         Date date = DateUtils.str2Date(localDate.toString(), DateUtils.date_sdf.get());
         equipment.setNextThirdMaintenanceTime(date);
      }else if(equipment.getThirdMaintenanceTime() != null && StringUtils.isNotBlank(equipment.getCheckPeriod())){
         //如果有三保日期 则使用三保日期计算 下次三保日期
         int checkPeriod = Integer.parseInt(equipment.getCheckPeriod()) - 1;
         Date date = DateUtils.getDayAfter(equipment.getThirdMaintenanceTime(), checkPeriod);
         equipment.setNextThirdMaintenanceTime(date);
      }
      equipmentService.save(equipment);
      //获取工艺参数模板明细
      String processParametersTemplateId = equipment.getProcessParametersTemplateId();
@@ -310,6 +465,21 @@
         equipmentPrecisionParametersService.save(equipmentPrecisionParameters);
      }
      //下次三保日期处理
      if(equipment.getThirdMaintenanceTime() == null && equipment.getAcceptanceCheckDate() != null && StringUtils.isNotBlank(equipment.getCheckPeriod())){
         //如果没有三保日期 按照验收日期计算下次三保日期
         int checkPeriod = Integer.parseInt(equipment.getCheckPeriod()) - 1;
         LocalDate acceptanceCheckDate = LocalDate.parse(equipment.getAcceptanceCheckDate());
         LocalDate localDate = acceptanceCheckDate.plusDays(checkPeriod);
         Date date = DateUtils.str2Date(localDate.toString(), DateUtils.date_sdf.get());
         equipment.setNextThirdMaintenanceTime(date);
      }else if(equipment.getThirdMaintenanceTime() != null && StringUtils.isNotBlank(equipment.getCheckPeriod())){
         //如果有三保日期 则使用三保日期计算 下次三保日期
         int checkPeriod = Integer.parseInt(equipment.getCheckPeriod()) - 1;
         Date date = DateUtils.getDayAfter(equipment.getThirdMaintenanceTime(), checkPeriod);
         equipment.setNextThirdMaintenanceTime(date);
      }
      equipmentService.updateById(equipment);
      List<SysUpload> sysUploads = equipment.getSysUploadList();
@@ -332,6 +502,7 @@
   @DeleteMapping(value = "/delete")
   public Result<String> delete(@RequestParam(name="id",required=true) String id) {
      Equipment equipment = equipmentService.getById(id);
      equipmentService.update(new UpdateWrapper<Equipment>().eq("line_id",id).set("line_id",null).set("is_meta",null));
      equipment.setDelFlag(1);
      equipmentService.updateById(equipment);
      return Result.OK("删除成功!");
@@ -567,11 +738,17 @@
                     EquipmentImportVo equipmentImportVo = list.get(i);
                String equipmentCategoryName = equipmentImportVo.getEquipmentCategoryName();
                String useId = equipmentImportVo.getUseId();
                String areaId = equipmentImportVo.getFactoryModelId();
                String workCenterId = equipmentImportVo.getWorkCenterId();//中心
                String areaId = equipmentImportVo.getFactoryModelId();//工区
                String productionId = equipmentImportVo.getAreaId();//工段
                String manageId = equipmentImportVo.getManageId();
                String constructorId = equipmentImportVo.getConstructorId();
                String teamId = equipmentImportVo.getTeamId();
                     if(StringUtils.isBlank(equipmentImportVo.getNum())){
                String propertyStatus = equipmentImportVo.getPropertyStatus();
                String abc = equipmentImportVo.getEquipmentImportanceId();
                Date thirdMaintenanceTime = equipmentImportVo.getThirdMaintenanceTime();
                Date technologyStatusQualificationTime = equipmentImportVo.getTechnologyStatusQualificationTime();
                if(StringUtils.isBlank(equipmentImportVo.getNum())){
                   exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:统一编码缺失,请填写必填项后再导入;";
                   exceptionNum++;
                   continue;
@@ -596,13 +773,18 @@
                   exceptionNum++;
                   continue;
                }
                else if(StringUtils.isBlank(equipmentImportVo.getModel())){
                   exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:设备型号缺失,请填写必填项后再导入;";
//                else if(StringUtils.isBlank(equipmentImportVo.getModel())){
//                   exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:设备型号缺失,请填写必填项后再导入;";
//                   exceptionNum++;
//                   continue;
//                }
                else if(StringUtils.isBlank(useId)){
                   exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:使用部门缺失,请填写必填项后再导入;";
                   exceptionNum++;
                   continue;
                }
                else if(StringUtils.isBlank(useId)){
                   exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:使用部门缺失,请填写必填项后再导入;";
                else if(StringUtils.isBlank(workCenterId)){
                   exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:中心缺失,请填写必填项后再导入;";
                   exceptionNum++;
                   continue;
                }
@@ -680,16 +862,28 @@
//                   exceptionNum++;
//                }
                else{
                   SysDepart use = departService.getOne(new QueryWrapper<SysDepart>().eq("depart_name",useId.trim()),false);
                   if(ObjectUtils.isNull(useId)){
                   SysDepart use = departService.getOne(new QueryWrapper<SysDepart>().eq("depart_name",useId.trim()).eq("del_flag",0),false);
                   if(ObjectUtils.isNotNull(use)){
                      equipment.setUseId(use.getId());
                   }else {
                      exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:不存在该使用部门,请维护部门数据后再导入;";
                      exceptionNum++;
                      continue;
                   }
                   Area area = areaService.getOne(new QueryWrapper<Area>().eq("name",areaId.trim()));
                   Area area1 = areaService.getOne(new QueryWrapper<Area>().eq("num",areaId.trim()));
                   //中心
                   Area workCenterArea = areaService.getOne(new QueryWrapper<Area>().eq("name",workCenterId.trim()).eq("del_flag",0));
                   if(ObjectUtils.isNotNull(workCenterArea)){
                      equipment.setWorkCenterId(workCenterArea.getId());
//                   }else if(ObjectUtils.isNotNull(area1)) {
//                      equipment.setFactoryModelId(area1.getId());
                   }else {
                      exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:不存在该中心,请维护中心数据后再导入;";
                      exceptionNum++;
                      continue;
                   }
                   //工区
                   Area area = areaService.getOne(new QueryWrapper<Area>().eq("name",areaId.trim()).eq("del_flag",0));
                   Area area1 = areaService.getOne(new QueryWrapper<Area>().eq("num",areaId.trim()).eq("del_flag",0));
                   if(ObjectUtils.isNotNull(area)){
                      equipment.setFactoryModelId(area.getId());
                   }else if(ObjectUtils.isNotNull(area1)) {
@@ -699,7 +893,14 @@
                      exceptionNum++;
                      continue;
                   }
                   SysDepart manage = departService.getOne(new QueryWrapper<SysDepart>().eq("depart_name",manageId.trim()));
                   //工段
                   Area productionArea = areaService.getOne(new QueryWrapper<Area>().eq("name",productionId.trim()).eq("del_flag",0));
                   if(ObjectUtils.isNotNull(productionArea)){
                      equipment.setAreaId(productionArea.getId());
                   }
                   SysDepart manage = departService.getOne(new QueryWrapper<SysDepart>().eq("depart_name",manageId.trim()).eq("del_flag",0));
                   if(ObjectUtils.isNotNull(manage)){
                      equipment.setManageId(manage.getId());
                   }else{
@@ -707,7 +908,9 @@
                      exceptionNum++;
                      continue;
                   }
                   EquipmentCategory equipmentCategory = equipmentCategoryService.getOne(new QueryWrapper<EquipmentCategory>().eq("name",equipmentCategoryName.trim()),false);
                   EquipmentCategory equipmentCategory = equipmentCategoryService
                         .getOne(new QueryWrapper<EquipmentCategory>()
                               .eq("name",equipmentCategoryName.trim()).eq("del_flag",0),false);
                   if(ObjectUtils.isNotNull(equipmentCategory)){
                      equipment.setEquipmentCategoryId(equipmentCategory.getId());
                   }
@@ -716,8 +919,8 @@
                      exceptionNum++;
                      continue;
                   }
                   Team team = teamService.getOne(new QueryWrapper<Team>().eq("name",teamId.trim()),false);
                   Team team1 = teamService.getOne(new QueryWrapper<Team>().eq("num",teamId.trim()),false);
                   Team team = teamService.getOne(new QueryWrapper<Team>().eq("name",teamId.trim()).eq("del_flag",0),false);
                   Team team1 = teamService.getOne(new QueryWrapper<Team>().eq("num",teamId.trim()).eq("del_flag",0),false);
                   if(ObjectUtils.isNotNull(team)){
                      equipment.setTeamId(team.getId());
                   }else if(ObjectUtils.isNotNull(team1)) {
@@ -739,19 +942,20 @@
                         equipment.setConstructorId(constructor.getId());
                      }
                   }
                         if(equipmentImportVo.getPropertyStatus().equals("warranty")){
                         if(StringUtils.isNotBlank(propertyStatus)&&propertyStatus.equals("warranty")){
                      if(
                            ObjectUtils.isNull(equipmentImportVo.getWarrantyStart())
                            ||ObjectUtils.isNull(equipmentImportVo.getWarrantyEnd())
                      ){
                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:该设备处于质保期,质保信息缺失,请先维护质保开始时间或结束时间;";
                         exceptionNum++;
                         continue;
                      }
                   }else{
                      Equipment oriEquipment = equipmentService
                            .getOne(new QueryWrapper<Equipment>()
                                  .eq("num",equipmentImportVo.getNum()),false);
                                  .eq("num",equipmentImportVo.getNum()).eq("del_flag",0),false);
                      if(ObjectUtils.isNull(oriEquipment)){
                         equipment.setNum(equipmentImportVo.getNum())
                               .setName(equipmentImportVo.getName())
@@ -778,10 +982,14 @@
                               .setSourceCountry(equipmentImportVo.getSourceCountry())
                               .setModel(equipmentImportVo.getModel())
                               .setSpecification(equipmentImportVo.getSpecification())
                               .setPropertyStatus(equipmentImportVo.getPropertyStatus())
                               .setPropertyStatus("normal")
                               .setWarrantyStart(equipmentImportVo.getWarrantyStart())
                               .setWarrantyEnd(equipmentImportVo.getWarrantyEnd())
                               .setIsLineEquip("no")
                               .setIsLine("no")
                               .setNextTechnologyStatusQualificationTime(equipmentImportVo.getNextTechnologyStatusQualificationTime())
                               .setThirdMaintenanceTime(equipmentImportVo.getThirdMaintenanceTime())
                               .setTechnologyStatusQualificationTime(equipmentImportVo.getTechnologyStatusQualificationTime())
                               .setGpo(equipmentImportVo.getGpo());
                         if(equipmentCategory.getEquipmentCategoryUda1().equals("weldingMachine")){
                            equipment.setCheckPeriod(365*3+"");
@@ -797,16 +1005,32 @@
                               &&!equipmentCategory.getEquipmentCategoryUda1().equals("filesCarousel")
                               &&!equipmentCategory.getEquipmentCategoryUda1().equals("tester")
                         ){
                            if(equipmentImportVo.getEquipmentImportanceId().equals("A")){
                              equipment.setCheckPeriod(365*3+"");
                            if(StringUtils.isNotBlank(abc)){
                              if(abc.equals("A")){
                                 equipment.setCheckPeriod(365*3+"");
                              }
                              if(
                                    abc.equals("B")
                                          ||abc.equals("C")
                                          ||abc.equals("D")
                              ){
                                 equipment.setCheckPeriod(365*4+"");
                              }
                           }
                            if(
                                  equipmentImportVo.getEquipmentImportanceId().equals("B")
                                 ||equipmentImportVo.getEquipmentImportanceId().equals("C")
                                 ||equipmentImportVo.getEquipmentImportanceId().equals("D")
                           ){
                               equipment.setCheckPeriod(365*4+"");
                            }
                         }
                         //下次三保日期处理
                         if(equipment.getThirdMaintenanceTime() == null && equipment.getAcceptanceCheckDate() != null && StringUtils.isNotBlank(equipment.getCheckPeriod())){
                            //如果没有三保日期 按照验收日期计算下次三保日期
                            int checkPeriod = Integer.parseInt(equipment.getCheckPeriod()) - 1;
                            LocalDate acceptanceCheckDate = LocalDate.parse(equipment.getAcceptanceCheckDate());
                            LocalDate localDate = acceptanceCheckDate.plusDays(checkPeriod);
                            Date date = DateUtils.str2Date(localDate.toString(), DateUtils.date_sdf.get());
                            equipment.setNextThirdMaintenanceTime(date);
                         }else if(equipment.getThirdMaintenanceTime() != null && StringUtils.isNotBlank(equipment.getCheckPeriod())){
                            //如果有三保日期 则使用三保日期计算 下次三保日期
                            int checkPeriod = Integer.parseInt(equipment.getCheckPeriod()) - 1;
                            Date date = DateUtils.getDayAfter(equipment.getThirdMaintenanceTime(), checkPeriod);
                            equipment.setNextThirdMaintenanceTime(date);
                         }
                         equipmentService.save(equipment);
                      }else {
@@ -844,9 +1068,132 @@
                                         HttpServletRequest req) {
       QueryWrapper<DailyInspectionStandardDetail> queryWrapper = QueryGenerator.initQueryWrapper(standardDetail, req.getParameterMap());
       Page<DailyInspectionStandardDetail> page = new Page<DailyInspectionStandardDetail>(pageNo, pageSize);
       IPage<DailyInspectionStandardDetail> pageList = equipmentService.getStandardList(page,standardDetail.getEquipmentId());
       IPage<DailyInspectionStandardDetail> pageList = equipmentService.getStandardList(page,standardDetail.getEquipmentId(),standardDetail.getType());
       return Result.OK(pageList);
    }
    @PostMapping("addLine")
    @Transactional(rollbackFor = {Exception.class})
    public Result<?> addLine(@RequestBody Equipment equipment){
        equipment.setIsLineEquip("no");
        equipment.setIsLine("yes");
        equipmentService.save(equipment);
        List<Equipment> equipmentList = equipment.getEquipmentOfLineTable();
        for(Equipment equipment1:equipmentList){
           equipment1.setId(equipment1.getShowId());
           equipment1.setIsLineEquip("yes");
           equipment1.setLineId(equipment.getId());
       }
        equipmentService.updateBatchById(equipmentList);
        return Result.OK("添加成功");
    }
    @PutMapping("editLine")
    @Transactional(rollbackFor = {Exception.class})
    public Result<?> editLine(@RequestBody Equipment equipment){
       equipmentService.updateById(equipment);
       equipmentService.update(new UpdateWrapper<Equipment>()
             .eq("line_id",equipment.getId())
             .set("line_id",null)
             .set("is_meta",null)
             .set("is_line_equip","no"));
       List<Equipment> equipmentList = equipment.getEquipmentOfLineTable();
       for(Equipment equipment1:equipmentList){
          equipment1.setLineId(equipment.getId());
          String id = equipment1.getId();
          if(StringUtils.isBlank(id)){
             equipment1.setId(equipment1.getShowId());
          }
          equipment1.setIsLineEquip("yes");
       }
       equipmentService.updateBatchById(equipmentList);
       return Result.OK("编辑成功");
    }
    @PostMapping("/updateKeyEquipment")
    public  Result<?>updateKeyEquipment(@RequestBody Equipment equipment){
        equipmentService.update(new UpdateWrapper<Equipment>().eq("specific_equipment","0").set("specific_equipment",null));
       List<Equipment> keyEquipmentUpdateList = equipment.getKeyEquipmentUpdateList();
       for(Equipment updateEquipment:keyEquipmentUpdateList){
           updateEquipment.setId(updateEquipment.getEquipmentId());
             equipmentService.updateById(updateEquipment);
       }
       return Result.OK("修改成功");
    }
    /**
     *设备台站-保养标准
     */
    @GetMapping("getEquipmentListAllStandard")
    public Result<?> getEquipmentListAllStandard(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) {
       IPage<Map<String, Object>> equipmentListAllStandards = equipmentService.getEquipmentListAllStandard(pageNo, pageSize, params);
       List<Map<String, Object>> records = equipmentListAllStandards.getRecords();
       for (Map<String, Object> record : records) {
          String id = (String) record.get("id");
          String precisionParameters = (String)record.get("precisionParameters");
          if("1".equals(precisionParameters)){
             record.put("yseNoPrecisionParameters","0");
          }else{
             record.put("yseNoPrecisionParameters","1");
          }
          List<DailyInspectionStandard> dailyInspectionStandards = dailyInspectionStandardService.lambdaQuery()
                .eq(DailyInspectionStandard::getEquipmentId, id)
                .eq(DailyInspectionStandard::getVersionStatus, "2")
                .list();
          if(dailyInspectionStandards.size()>0){
             record.put("yseNoInspectionStandard","0");
          }else{
             record.put("yseNoInspectionStandard","1");
          }
          List<MaintenanceStandard> maintenance2Standards = maintenanceStandardService.lambdaQuery()
                .eq(MaintenanceStandard::getEquipmentId, id)
                .eq(MaintenanceStandard::getMaintenanceType, "2")
                .eq(MaintenanceStandard::getVersionStatus, "2").list();
          if(maintenance2Standards.size()>0){
             record.put("yseNoMaintenance2Standard","0");
          }else{
             record.put("yseNoMaintenance2Standard","1");
          }
          List<MaintenanceStandard> maintenance3Standards = maintenanceStandardService.lambdaQuery()
                .eq(MaintenanceStandard::getEquipmentId, id)
                .eq(MaintenanceStandard::getMaintenanceType, "3")
                .eq(MaintenanceStandard::getVersionStatus, "2").list();
          if(maintenance3Standards.size()>0){
             record.put("yseNoMaintenance3Standard","0");
          }else{
             record.put("yseNoMaintenance3Standard","1");
          }
       }
       return Result.ok(equipmentListAllStandards);
    }
    @GetMapping(value = "/planEquipmentList")
    @PermissionData
    public Result<IPage<Equipment>> planEquipmentList(Equipment equipment,
                                         @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                         @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                         HttpServletRequest req) {
       QueryWrapper<Equipment> queryWrapper = QueryGenerator.initQueryWrapper(equipment, req.getParameterMap());
       //根据下次三保时间排序
       queryWrapper.orderByAsc("next_third_maintenance_time");
       //如果startTime和endTime不为空,则查询下次三保时间在这个时间段内的设备
       if(equipment.getStartTime()!=null && equipment.getEndTime()!=null){
          queryWrapper.between("next_third_maintenance_time",equipment.getStartTime(),equipment.getEndTime());
       }
       Page<Equipment> page = new Page<Equipment>(pageNo, pageSize);
       IPage<Equipment> pageList = equipmentService.page(page, queryWrapper);
       return Result.OK(pageList);
    }
    private List<String> getUserWorkCenterIds(){
       LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
       SysUser sysUser = sysUserService.getById(user.getId());
       String areaId = sysUser.getAreaId();
       List<String>  workCenterIds = null;
       if(StringUtils.isNotBlank(areaId)){
//            strings = new ArrayList<>();
          String[] split = areaId.split(",");
          workCenterIds = Arrays.asList(split);
       }
       return workCenterIds;
    }
}