qushaowei
2024-03-18 f2b78d745d0a3c2604f0d60c30be815af315d53a
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/CalibrationOrderController.java
@@ -26,6 +26,7 @@
import org.jeecg.modules.eam.service.*;
import org.jeecg.modules.eam.vo.CalibrationOrderPage;
import org.jeecg.modules.eam.vo.SysFileNameVo;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysDepart;
import org.jeecg.modules.system.service.ISysDepartService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
@@ -61,6 +62,25 @@
@RequestMapping("/eam/calibrationOrder")
@Slf4j
public class CalibrationOrderController {
    /**
     * 用户类型(1 普通成员 2 工段 3 分厂/中心 4 公司)
     */
    private static final Integer USER_TYPE_1 = 1;
    private static final Integer USER_TYPE_2 = 2;
    private static final Integer USER_TYPE_3 = 3;
    private static final Integer USER_TYPE_4 = 4;
    /**
     * 车间层级类型(1 公司 2 分厂、中心 3 工段)
     */
    private static final String ORG_TYPE_1 = "1";
    private static final String ORG_TYPE_2 = "2";
    private static final String ORG_TYPE_3 = "3";
    @Autowired
    private ICalibrationOrderService calibrationOrderService;
    @Autowired
@@ -88,6 +108,9 @@
//    private IUploadService uploadService;
    private ISysBaseAPI  sysBaseApi;
    @Autowired
    private IAreaService areaService;
    /**
     * 分页列表查询
     *
@@ -478,7 +501,7 @@
                record.setEquipmentModel(equipment.getModel());
                record.setEquipmentSpecification(equipment.getSpecification());
                record.setEquipmentImportance(equipment.getEquipmentImportanceId());
                record.setUseDepartName(depart.getDepartName());
                record.setUseDepartName(ObjectUtils.isNotNull(depart)?depart.getDepartName():"");
            }
//            List<Map<String, Object>> precisionParameterList = calibrationOrderService.getPrecisionParameterList(equipmentId);
//            record.setPrecisionParameterList(precisionParameterList);
@@ -671,4 +694,296 @@
        calibrationOrderService.updateById(calibrationOrder);
        return Result.OK("编辑成功!");
    }
    /**
     *首页公司级 技术状态数量统计
     * qsw 2024-3-13
     */
    @GetMapping("getFactoryEquipmentTechnologyStatusList")
    public Result<?> getFactoryEquipmentTechnologyStatusList() {
        List<Map<String, Object>> list = calibrationOrderService.getFactoryEquipmentTechnologyStatusList();
        return Result.ok(list);
    }
    /**
     *首页公司级 设备报修情况统计
     * qsw 2024-3-13
     */
    @GetMapping("getFactoryReportRepairEquipmentList")
    public Result<?> getFactoryReportRepairEquipmentList() {
        List<Map<String, Object>> list = calibrationOrderService.getFactoryReportRepairEquipmentList();
        return Result.ok(list);
    }
    /**
     *首页公司级 本月三保计划
     * qsw 2024-3-14
     */
    @GetMapping("getFactoryThisMonthMaintenanceList")
    public Result<?> getFactoryThisMonthMaintenanceList() {
        List<Map<String, Object>> list = calibrationOrderService.getFactoryThisMonthMaintenanceList();
        return Result.ok(list);
    }
    /**
     *首页公司级 下月三保计划
     * qsw 2024-3-14
     */
    @GetMapping("getFactoryNextMonthMaintenanceList")
    public Result<?> getFactoryNextMonthMaintenanceList() {
        List<Map<String, Object>> list = calibrationOrderService.getFactoryNextMonthMaintenanceList();
        return Result.ok(list);
    }
    /**
     *首页公司级 本月三保完成数量
     * qsw 2024-3-14
     */
    @GetMapping("getFactoryThisMonthMaintenanceFinishList")
    public Result<?> getFactoryThisMonthMaintenanceFinishList() {
        List<Map<String, Object>> list = calibrationOrderService.getFactoryThisMonthMaintenanceFinishList();
        return Result.ok(list);
    }
    /**
     *首页公司级 下下月三保计划
     * qsw 2024-3-14
     */
    @GetMapping("getFactoryNextNextMonthMaintenanceList")
    public Result<?> getFactoryNextNextMonthMaintenanceList() {
        List<Map<String, Object>> list = calibrationOrderService.getFactoryNextNextMonthMaintenanceList();
        return Result.ok(list);
    }
    /**
     *首页(二级页面)技术状态数量统计
     * qsw 2024-3-13
     */
    @GetMapping("getEquipmentTechnologyStatusList")
    public Result<?> getEquipmentTechnologyStatusList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Integer userType = user.getUserType();
        List<Map<String, Object>> list = null;
        if(USER_TYPE_4.equals(userType)){
            if(StringUtils.isBlank(productionCode)){
                list = calibrationOrderService.getFactoryEquipmentTechnologyStatusList();
            }else{
                String orgType = calibrationOrderService.findOrgType(productionCode);
                if(ORG_TYPE_2.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getEquipmentTechnologyStatusList(area.getId(),"");
                }else if(ORG_TYPE_3.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getEquipmentTechnologyStatusList("",area.getId());
                }
            }
        }else if(USER_TYPE_3.equals(userType)){
            String code = calibrationOrderService.findProductionCode(user.getId());
            if(StringUtils.isBlank(productionCode)){
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getEquipmentTechnologyStatusList(area.getId(),"");
            }else{
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getEquipmentTechnologyStatusList("",area.getId());
            }
        }
        return Result.ok(list);
    }
    /**
     *首页(二级页面)设备报修情况统计
     * qsw 2024-3-13
     */
    @GetMapping("getReportRepairEquipmentList")
    public Result<?> getReportRepairEquipmentList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Integer userType = user.getUserType();
        List<Map<String, Object>> list = null;
        if(USER_TYPE_4.equals(userType)){
            if(StringUtils.isBlank(productionCode)){
                list = calibrationOrderService.getFactoryReportRepairEquipmentList();
            }else{
                String orgType = calibrationOrderService.findOrgType(productionCode);
                if(ORG_TYPE_2.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getReportRepairEquipmentList(area.getId(),"");
                }else if(ORG_TYPE_3.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getReportRepairEquipmentList("",area.getId());
                }
            }
        }else if(USER_TYPE_3.equals(userType)){
            String code = calibrationOrderService.findProductionCode(user.getId());
            if(StringUtils.isBlank(productionCode)){
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getReportRepairEquipmentList(area.getId(),"");
            }else{
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getReportRepairEquipmentList("",area.getId());
            }
        }
        return Result.ok(list);
    }
    /**
     *首页(二级页面)本月三保计划
     * qsw 2024-3-14
     */
    @GetMapping("getThisMonthMaintenanceList")
    public Result<?> getThisMonthMaintenanceList(String productionCode) {
//        List<Area> areaList = areaService.lambdaQuery().eq(Area::getNum, factoryNum).eq(Area::getDelFlag, 0).list();
//        List<Map<String, Object>> list;
//        if(areaList.size()>0){
//            list = calibrationOrderService.getThisMonthMaintenanceList(areaList.get(0).getId());
//        }else{
//            list = null;
//        }
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Integer userType = user.getUserType();
        List<Map<String, Object>> list = null;
        if(USER_TYPE_4.equals(userType)){
            if(StringUtils.isBlank(productionCode)){
                list = calibrationOrderService.getFactoryThisMonthMaintenanceList();
            }else{
                String orgType = calibrationOrderService.findOrgType(productionCode);
                if(ORG_TYPE_2.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getThisMonthMaintenanceList(area.getId(),"");
                }else if(ORG_TYPE_3.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getThisMonthMaintenanceList("",area.getId());
                }
            }
        }else if(USER_TYPE_3.equals(userType)){
            String code = calibrationOrderService.findProductionCode(user.getId());
            if(StringUtils.isBlank(productionCode)){
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getThisMonthMaintenanceList(area.getId(),"");
            }else{
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getThisMonthMaintenanceList("",area.getId());
            }
        }
        return Result.ok(list);
    }
    /**
     *首页(二级页面)下月三保计划
     * qsw 2024-3-14
     */
    @GetMapping("getNextMonthMaintenanceList")
    public Result<?> getNextMonthMaintenanceList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Integer userType = user.getUserType();
        List<Map<String, Object>> list = null;
        if(USER_TYPE_4.equals(userType)){
            if(StringUtils.isBlank(productionCode)){
                list = calibrationOrderService.getFactoryNextMonthMaintenanceList();
            }else{
                String orgType = calibrationOrderService.findOrgType(productionCode);
                if(ORG_TYPE_2.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getNextMonthMaintenanceList(area.getId(),"");
                }else if(ORG_TYPE_3.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getNextMonthMaintenanceList("",area.getId());
                }
            }
        }else if(USER_TYPE_3.equals(userType)){
            String code = calibrationOrderService.findProductionCode(user.getId());
            if(StringUtils.isBlank(productionCode)){
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getNextMonthMaintenanceList(area.getId(),"");
            }else{
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getNextMonthMaintenanceList("",area.getId());
            }
        }
        return Result.ok(list);
    }
    /**
     *首页(二级页面)下下月三保计划
     * qsw 2024-3-14
     */
    @GetMapping("getNextNextMonthMaintenanceList")
    public Result<?> getNextNextMonthMaintenanceList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Integer userType = user.getUserType();
        List<Map<String, Object>> list = null;
        if(USER_TYPE_4.equals(userType)){
            if(StringUtils.isBlank(productionCode)){
                list = calibrationOrderService.getFactoryNextMonthMaintenanceList();
            }else{
                String orgType = calibrationOrderService.findOrgType(productionCode);
                if(ORG_TYPE_2.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getNextMonthMaintenanceList(area.getId(),"");
                }else if(ORG_TYPE_3.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getNextMonthMaintenanceList("",area.getId());
                }
            }
        }else if(USER_TYPE_3.equals(userType)){
            String code = calibrationOrderService.findProductionCode(user.getId());
            if(StringUtils.isBlank(productionCode)){
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getNextMonthMaintenanceList(area.getId(),"");
            }else{
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getNextMonthMaintenanceList("",area.getId());
            }
        }
        return Result.ok(list);
    }
    /**
     *首页(二级页面)本月三保完成数量
     * qsw 2024-3-14
     */
    @GetMapping("getThisMonthMaintenanceFinishList")
    public Result<?> getThisMonthMaintenanceFinishList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        Integer userType = user.getUserType();
        List<Map<String, Object>> list = null;
        if(USER_TYPE_4.equals(userType)){
            if(StringUtils.isBlank(productionCode)){
                list = calibrationOrderService.getFactoryThisMonthMaintenanceFinishList();
            }else{
                String orgType = calibrationOrderService.findOrgType(productionCode);
                if(ORG_TYPE_2.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getThisMonthMaintenanceFinishList(area.getId(),"");
                }else if(ORG_TYPE_3.equals(orgType)){
                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                    list = calibrationOrderService.getThisMonthMaintenanceFinishList("",area.getId());
                }
            }
        }else if(USER_TYPE_3.equals(userType)){
            String code = calibrationOrderService.findProductionCode(user.getId());
            if(StringUtils.isBlank(productionCode)){
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getThisMonthMaintenanceFinishList(area.getId(),"");
            }else{
                Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
                list = calibrationOrderService.getThisMonthMaintenanceFinishList("",area.getId());
            }
        }
        return Result.ok(list);
    }
    /**
     *首页二保计划展示
     * qsw 2024-3-15
     */
    @GetMapping("getTwoMaintenancePlanList")
    public Result<?> getTwoMaintenancePlanList(String productionCode) {
        List<Map<String, Object>> twoMaintenancePlanList = calibrationOrderService.getTwoMaintenancePlanList(productionCode);
        return Result.ok(twoMaintenancePlanList);
    }
}