From 56dfe0d4bf81262622a1919cceb2b039fd356209 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 03 九月 2024 16:52:49 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java | 48 +++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 43 insertions(+), 5 deletions(-) diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java index 01be406..0797ce7 100644 --- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java +++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java @@ -63,6 +63,20 @@ List<Long> auditIds = new ArrayList<>(); Long userid = SecurityUtils.getUserId(); SysUser data = sysUserClient.getSysUser(userid).getData(); + // 查询当前登陆人管理了哪一些货架 + List<SlStoreManagement> list1 = slStoreManagementService.lambdaQuery().list(); + List<Long> managementIds = new ArrayList<>(); + for (SlStoreManagement slStoreManagement : list1) { + if (Arrays.asList(slStoreManagement.getAdministratorId().split(",")).contains(userid.toString()) + || Arrays.asList(slStoreManagement.getCompetentId().split(",")).contains(userid.toString()) + || Arrays.asList(slStoreManagement.getDirectorId().split(",")).contains(userid.toString()) + ){ + managementIds.add(slStoreManagement.getId()); + } + } + if (managementIds.isEmpty()){ + managementIds.add(0L); + } getVolumeProductionRkQuery getVolumeProductionRkQuer=new getVolumeProductionRkQuery(); getVolumeProductionRkQuer.setSupplierName(auditRecordListQuery.getSysName()); getVolumeProductionRkQuer.setSupplierPhone(auditRecordListQuery.getSysPhone()); @@ -86,17 +100,24 @@ goodsSkuIdList1.add(0L); wrapper.in(SlAudit::getSysId,goodsSkuIdList1); } - switch (auditRecordListQuery.getType()){ case 1: rkglIds = slVolumeProductionRkglMapper.selectList(new QueryWrapper<SlVolumeProductionRkgl>() .ne("audit_status", 7)).stream().map(SlVolumeProductionRkgl::getId).collect(Collectors.toList()); wrapper.in(SlAudit::getRkId,rkglIds); + if (rkglIds.isEmpty()){ + rkglIds.add(0L); + } if (!data.getUserType().equals("00")){ - // 只查询相关的审核 + // 没有管理仓库 + // 查询相关的审核 auditIds = slAuditRecordMapper.selectList(new QueryWrapper<SlAuditRecord>() .like("shenh_id", data.getUserId())).stream().map(SlAuditRecord::getAuditId).collect(Collectors.toList()); - wrapper.in(SlAudit::getId,auditIds); + if (auditIds.isEmpty()){ + auditIds.add(0L); + } + List<Long> finalAuditIds = auditIds; + wrapper.and(wrapper1 -> wrapper1.in(SlAudit::getManagementId,managementIds).or().in(SlAudit::getId, finalAuditIds)); } break; @@ -104,24 +125,41 @@ ckglIds = slVolumeProductionCKglMapper.selectList(new QueryWrapper<SlVolumeProductionCkgl>() .ne("audit_status", 8)).stream().map(SlVolumeProductionCkgl::getId).collect(Collectors.toList()); wrapper.in(SlAudit::getRkId,ckglIds); + if (ckglIds.isEmpty()){ + ckglIds.add(0L); + } if (!data.getUserType().equals("00")){ // 只查询相关的审核 auditIds = slAuditRecordMapper.selectList(new QueryWrapper<SlAuditRecord>() .like("shenh_id", data.getUserId())).stream().map(SlAuditRecord::getAuditId).collect(Collectors.toList()); - wrapper.in(SlAudit::getId,auditIds); + if (auditIds.isEmpty()){ + auditIds.add(0L); + } + List<Long> finalAuditIds1 = auditIds; + wrapper.and(wrapper1 -> wrapper1.in(SlAudit::getManagementId,managementIds).or().in(SlAudit::getId, finalAuditIds1)); } + break; case 3: zyglIds = slVolumeProductionZyglMapper.selectList(new QueryWrapper<SlVolumeProductionZygl>() .ne("audit_status", 7)).stream().map(SlVolumeProductionZygl::getId).collect(Collectors.toList()); + if (zyglIds.isEmpty()){ + zyglIds.add(0L); + } wrapper.in(SlAudit::getRkId,zyglIds); + if (!data.getUserType().equals("00")){ // 只查询相关的审核 auditIds = slAuditRecordMapper.selectList(new QueryWrapper<SlAuditRecord>() .like("shenh_id", data.getUserId())).stream().map(SlAuditRecord::getAuditId).collect(Collectors.toList()); - wrapper.in(SlAudit::getId,auditIds); + if (auditIds.isEmpty()){ + auditIds.add(0L); + } + List<Long> finalAuditIds2 = auditIds; + wrapper.and(wrapper1 -> wrapper1.in(SlAudit::getManagementId,managementIds).or().in(SlAudit::getId, finalAuditIds2)); } + break; } wrapper.eq(SlAudit::getType,auditRecordListQuery.getType()); -- Gitblit v1.7.1