From d61b21c50e62298f185ecafa8e0b22f7ee8c4973 Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期四, 21 八月 2025 18:13:17 +0800 Subject: [PATCH] 430报表接口与列表流程添加 --- lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportProductHazardsServiceImpl.java | 67 ++++++++++++++++++++++++++++++--- 1 files changed, 61 insertions(+), 6 deletions(-) diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportProductHazardsServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportProductHazardsServiceImpl.java index 21645f0..8850de0 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportProductHazardsServiceImpl.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamReportProductHazardsServiceImpl.java @@ -22,6 +22,8 @@ import org.jeecg.modules.eam.constant.BusinessCodeConst; import org.jeecg.modules.eam.constant.EamReportAccidentsRegisterEnum; import org.jeecg.modules.eam.constant.EamReportProductHazardsEnum; +import org.jeecg.modules.eam.constant.SecondMaintenanceStatusEnum; +import org.jeecg.modules.eam.dto.EamReportProductHazardsDto; import org.jeecg.modules.eam.dto.EamReportProductHazardsDto; import org.jeecg.modules.eam.entity.EamEquipment; import org.jeecg.modules.eam.entity.EamReportAccidentsRegister; @@ -294,15 +296,27 @@ values.put("comment", eamReportProductHazardsDto.getDeputyDepartmentComment()); values.put("deputyDepartmentResult", eamReportProductHazardsDto.getDeputyDepartmentResult()); eamReportProductHazardsDto.setComment(eamReportProductHazardsDto.getDeputyDepartmentComment()); - eamReportProductHazards.setDeputyDepartment(user.getUsername()); - eamReportProductHazards.setDeputyDepartmentTime(new Date()); - eamReportProductHazards.setDeputyDepartmentResult(eamReportProductHazardsDto.getDeputyDepartmentResult()); - eamReportProductHazards.setDeputyDepartmentComment(eamReportProductHazardsDto.getDeputyDepartmentComment()); + if ("2".equals(eamReportProductHazardsDto.getDeputyDepartmentResult())){ - //鍓儴绾ч瀵兼嫆缁� - eamReportProductHazards.setConfirmStatus(EamReportProductHazardsEnum.REJECTED.name()); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0024); + if (CollectionUtil.isEmpty(userSelectors)) { + throw new JeecgBootException("璁惧鏈瓨鍦ㄤ富绠″伐鑹猴紝鏃犳硶杩涘叆椹冲洖鎿嶄綔锛�"); + }else { + userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList()); + values.put("NextAssignee", userApprovalList); + //鍓儴绾ч瀵兼嫆缁� + eamReportProductHazards.setConfirmStatus(EamReportProductHazardsEnum.PENDING_SUPERIOR_TECHNICAL_CONFIRMATION.name()); + eamReportProductHazards.setTechnologist(null); + eamReportProductHazards.setTechnologistTime(null); + eamReportProductHazards.setTechnologistResult(null); + eamReportProductHazards.setTechnologistComment(null); + } }else { eamReportProductHazards.setConfirmStatus(EamReportProductHazardsEnum.REPAIR_COMPLETED.name()); + eamReportProductHazards.setDeputyDepartment(user.getUsername()); + eamReportProductHazards.setDeputyDepartmentTime(new Date()); + eamReportProductHazards.setDeputyDepartmentResult(eamReportProductHazardsDto.getDeputyDepartmentResult()); + eamReportProductHazards.setDeputyDepartmentComment(eamReportProductHazardsDto.getDeputyDepartmentComment()); } break; default: @@ -368,6 +382,47 @@ return true; } + /** + * 浜у搧瀹夊叏闅愭偅纭鎵撳嵃 + * @param ids + * @return + */ + @Override + public List<EamReportProductHazardsDto> findListByIds(String ids){ + QueryWrapper<EamReportProductHazardsDto> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("erph.del_flag",CommonConstant.DEL_FLAG_0.toString()); + queryWrapper.eq("erph.confirm_status",EamReportProductHazardsEnum.REPAIR_COMPLETED.name() ); + //鐢ㄦ埛鏁版嵁鏉冮檺 + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if (sysUser == null) { + return new ArrayList<>(); + } + if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) { + //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧 + List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(",")); + queryWrapper.in("e.equipment_code", equipArr); + } else { + //娌℃湁閫夋嫨璁惧锛屾牴鎹腑蹇冭繃婊よ澶� + List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService. + list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId())); + if(!CollectionUtils.isEmpty(baseFactoryUserList)){ + Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet()); + Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet()); + queryWrapper.in("e.factory_org_code", factoryCode); + } else { + return new ArrayList<>(); + } + } + //鏌ヨ鏉′欢杩囨护 + if (StrUtil.isNotEmpty(ids)) { + List<String> idList = Arrays.asList(ids.split(",")); + queryWrapper.in("erph.id", idList); + } else { + queryWrapper.orderByDesc("erph.create_time"); + } + return this.baseMapper.queryList(queryWrapper); + } + @Override public void afterFlowHandle(FlowMyBusiness business) { -- Gitblit v1.9.3