From 1a2258c4eca2e7514b6096004fa1c3e0036b402b Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期四, 28 三月 2024 14:04:24 +0800 Subject: [PATCH] Merge branch 'master' of http://117.34.109.166:18448/r/mdc_430 into develop --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java | 121 ++++++++++++++++++++++++++++++++++++--- 1 files changed, 110 insertions(+), 11 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java index 6cc9e33..13ad3d5 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java @@ -1,6 +1,8 @@ package org.jeecg.modules.eam.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.shiro.SecurityUtils; import org.jeecg.common.system.vo.LoginUser; @@ -32,6 +34,22 @@ */ @Service public class CalibrationOrderServiceImpl extends ServiceImpl<CalibrationOrderMapper, CalibrationOrder> implements ICalibrationOrderService { + + + /** + * 鐢ㄦ埛绫诲瀷(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 CalibrationOrderMapper calibrationOrderMapper; @@ -108,6 +126,16 @@ @Override public String findProductionCode(String userId) { return this.baseMapper.findProductionCode(userId); + } + + /** + * 鏍规嵁妯″瀷浼犲叆鐨勭紪鐮� 鍒ゆ柇鏀圭紪鐮佸叕鍙�/涓績/宸ユ鐨勫摢涓�绾� + * 鑾峰彇褰撳墠鐧诲綍浜哄伐娈电骇瀵瑰簲鐨勭紪鐮� + * qsw 2024-3-18 + */ + @Override + public String findAreaProductionCode(String userId) { + return this.baseMapper.findAreaProductionCode(userId); } /** @@ -229,22 +257,93 @@ } /** + *宸ユ绾� 鏈湀涓変繚寤舵湡鏁伴噺 + * qsw 2024-3-20 + */ + @Override + public List<Map<String, Object>> get3MaintenancePostponeCount(String areaId) { + return this.baseMapper.get3MaintenancePostponeCount(areaId); + } + + /** + *宸ユ绾� 鏈湀涓変繚瓒呮湡鏁伴噺 + * qsw 2024-3-20 + */ + @Override + public List<Map<String, Object>> get3MaintenanceOverdueCount(String areaId) { + return this.baseMapper.get3MaintenanceOverdueCount(areaId); + } + + /** *棣栭〉浜屼繚璁″垝灞曠ず * qsw 2024-3-15 */ @Override - public List<Map<String, Object>> getTwoMaintenancePlanList() { - LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - - List<Area> areaList = areaService.lambdaQuery().eq(Area::getType, "1").eq(Area::getDelFlag, "0").list(); - List<Map<String, Object>> arrayList = new ArrayList<>(); - for (Area area : areaList) { - String id = area.getId(); - List<Map<String, Object>> centerTwoMaintenancePlanList = this.baseMapper.getCenterTwoMaintenancePlanList(id); - if(centerTwoMaintenancePlanList.size()>0){ - arrayList.add(centerTwoMaintenancePlanList.get(0)); + public List<Map<String, Object>> getTwoMaintenancePlanList(String productionCode) { + Boolean flag = true; + List<Map<String, Object>> list = new ArrayList<>(); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + Integer userType = user.getUserType(); + List<Area> areaList = null; + if(USER_TYPE_4.equals(userType)){ + if(StringUtils.isBlank(productionCode)){ + areaList = areaService.lambdaQuery().eq(Area::getType, "1").eq(Area::getDelFlag, "0").list(); + }else{ + String orgType = this.baseMapper.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)); + areaList = areaService.lambdaQuery().eq(Area::getType, "1").eq(Area::getId,area.getId()).eq(Area::getDelFlag, "0").list(); + } else if(ORG_TYPE_3.equals(orgType)){ + //宸ユ绾х洿鎺ユ樉绀哄伐娈典笅瑕佷繚鍏荤殑璁惧鏄庣粏 + flag = false; + String siteProductionCode = this.baseMapper.findSiteProductionCode(productionCode); + Area areaOne = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, siteProductionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0)); + Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0)); + if(areaOne != null && area != null){ + String maintenanceDate = this.baseMapper.findMaintenanceDate(areaOne.getId()); + list = this.baseMapper.getAreTwoMaintenancePlanDetails(area.getId(), maintenanceDate); + } + } + } + }else if(USER_TYPE_3.equals(userType)){ + String code = this.baseMapper.findProductionCode(user.getId()); + Area area = null; + if(StringUtils.isBlank(productionCode)){ + area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0)); + if(area != null){ + areaList = areaService.lambdaQuery().eq(Area::getType, "1").eq(Area::getId,area.getId()).eq(Area::getDelFlag, "0").list(); + } + }else{ + //宸ユ绾х洿鎺ユ樉绀哄伐娈典笅瑕佷繚鍏荤殑璁惧鏄庣粏 + flag = false; + Area areaOne = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0)); + area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0)); + if(areaOne != null && area != null){ + String maintenanceDate = this.baseMapper.findMaintenanceDate(areaOne.getId()); + list = this.baseMapper.getAreTwoMaintenancePlanDetails(area.getId(), maintenanceDate); + } + } + }else if(USER_TYPE_2.equals(userType)){ + //宸ユ绾х洿鎺ユ樉绀哄伐娈典笅瑕佷繚鍏荤殑璁惧鏄庣粏 + flag = false; + String areaProductionCode = this.baseMapper.findAreaProductionCode(user.getId()); + String code = this.baseMapper.findSiteProductionCode(productionCode); + Area areaOne = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0)); + Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, areaProductionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0)); + if(areaOne != null && area != null){ + String maintenanceDate = this.baseMapper.findMaintenanceDate(areaOne.getId()); + list = this.baseMapper.getAreTwoMaintenancePlanDetails(area.getId(), maintenanceDate); } } - return null; + if(flag == true){ + for (Area area : areaList) { + String id = area.getId(); + List<Map<String, Object>> centerTwoMaintenancePlanList = this.baseMapper.getCenterTwoMaintenancePlanList(id); + if(centerTwoMaintenancePlanList.size()>0){ + list.add(centerTwoMaintenancePlanList.get(0)); + } + } + } + return list; } } -- Gitblit v1.9.3