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/SlVolumeProductionZyglServiceImpl.java |   84 ++++++++++++++++++++++++++++++++---------
 1 files changed, 65 insertions(+), 19 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java
index af504ac..6a3903b 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java
@@ -13,6 +13,7 @@
 import com.ruoyi.management.domain.dto.SlVolumeProductionZyQuery;
 import com.ruoyi.management.domain.vo.*;
 import com.ruoyi.management.mapper.*;
+import com.ruoyi.management.service.SlAuditService;
 import com.ruoyi.management.service.SlVolumeProductionZyglService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.system.api.domain.SysUser;
@@ -43,9 +44,6 @@
     private SlStoreManagementMapper slStoreManagementMapper;
 
     @Resource
-    private SlVolumeProductionZyglMapper slVolumeProductionZyglMapper;
-
-    @Resource
     private SlVolumeProductionRkMapper slVolumeProductionRkMapper;
 
     @Resource
@@ -56,30 +54,68 @@
 
     @Resource
     private SlVolumeProductionZyMapper slVolumeProductionZyMapper;
+    @Resource
+    private SlVolumeProductionCkMapper slVolumeProductionCkMapper;
 
     @Resource
     private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
+    @Resource
+    private SlAuditService slAuditService;
 
     @Override
     public PageDTO<VolumeProductionzZyglVO> getVolumeProductionzZyglList(SlVolumeProductionZyQuery slVolumeProductionZyQuery) {
+        Long userId = SecurityUtils.getUserId();
+
+        List<Long> managementIds = new ArrayList<>();
+        List<SlStoreManagement> slStoreManagements = slStoreManagementMapper.selectList(new LambdaQueryWrapper<SlStoreManagement>()
+                .eq(SlStoreManagement::getDelFlag, "0"));
+        for (SlStoreManagement slStoreManagement : slStoreManagements) {
+            List<String> list = Arrays.asList(slStoreManagement.getAdministratorId().split(","));
+            List<String> list1 = Arrays.asList(slStoreManagement.getCompetentId().split(","));
+            List<String> list2 = Arrays.asList(slStoreManagement.getDirectorId().split(","));
+            if (list.contains(userId.toString()) || list1.contains(userId.toString()) || list2.contains(userId.toString())){
+                managementIds.add(slStoreManagement.getId());
+            }
+
+        }
+        LambdaQueryWrapper< SlVolumeProductionZygl> wrapper1= Wrappers.lambdaQuery();
         Page<SlVolumeProductionZygl> page = new Page<>(slVolumeProductionZyQuery.getPageCurr(), slVolumeProductionZyQuery.getPageSize());
         getVolumeProductionRkQuery getVolume=new getVolumeProductionRkQuery();
-        getVolume.setSupplierPhone(slVolumeProductionZyQuery.getSupplierPhone());
-        getVolume.setSupplierName(slVolumeProductionZyQuery.getSupplierName());
+        getVolume.setSupplierPhone(slVolumeProductionZyQuery.getPhonenumber());
+        getVolume.setSupplierName(slVolumeProductionZyQuery.getNickName());
+        SysUser data2 = sysUserClient.getSysUser(userId).getData();
+        if (data2!=null){
+            if (!data2.getUserType().equals("00")){
+                switch (data2.getRoleType()){
+                    case 3:
+                    case 4:
+                    case 5:
+                    case 6:
+                        if (!managementIds.isEmpty()){
+                            wrapper1.in(SlVolumeProductionZygl::getManagementId,managementIds);
+                        }else{
+                            return PageDTO.empty(page);
+                        }
+                        break;
+                }
+            }
+        }
         List<SysUser> data1 = sysUserClient.getUserSupplierList(getVolume).getData();
         Set<Long> goodsSkuIdList = null;
         goodsSkuIdList = data1.stream().map(SysUser::getUserId)
                 .collect(Collectors.toSet());
-        LambdaQueryWrapper< SlVolumeProductionZygl> wrapper1= Wrappers.lambdaQuery();
         if (slVolumeProductionZyQuery.getPresentState()!=null){
             wrapper1.eq(SlVolumeProductionZygl::getPresentState,slVolumeProductionZyQuery.getPresentState());
         }
         if (slVolumeProductionZyQuery.getAuditStatus()!=null){
             wrapper1.eq(SlVolumeProductionZygl::getAuditStatus,slVolumeProductionZyQuery.getAuditStatus());
-
         }
         if (goodsSkuIdList.size()>0){
             wrapper1.in(SlVolumeProductionZygl::getSysId,goodsSkuIdList);
+        }else{
+            Page<SlVolumeProductionZygl> page2 = new Page<SlVolumeProductionZygl>();
+            PageDTO<VolumeProductionzZyglVO> SlGoodsShelfDTO = PageDTO.of(page2, VolumeProductionzZyglVO .class);
+            return SlGoodsShelfDTO;
         }
         wrapper1.eq( SlVolumeProductionZygl::getDelFlag,0);
 //        wrapper1.ne(SlVolumeProductionZygl::getAuditStatus,7);
@@ -350,6 +386,11 @@
 
     @Override
     public void zy(Long id,String authorizationUrl) {
+        SlAudit one = slAuditService.lambdaQuery().eq(SlAudit::getType, 3).eq(SlAudit::getRkId, id).eq(SlAudit::getDelFlag, "0").one();
+        if (one!=null){
+            one.setState(6);
+            slAuditService.updateById(one);
+        }
         SlVolumeProductionZygl byId = this.getById(id);
         byId.setAuthorizationUrl(authorizationUrl);
         byId.setAuditStatus(6);
@@ -362,7 +403,6 @@
         wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime);
         List<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectList(wrapper1);
         // 新入库ids
-        List<Long> collect = page2.stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList());
         for (SlVolumeProductionZy zy : page2) {
             // 将入库记录确认
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(zy.getScrkId());
@@ -385,7 +425,6 @@
                 Long re1=repertoryZhai+Long.valueOf(zy.getZyNum());
                 managementGoodsMaterials.setRepertorySum(re);
                 managementGoodsMaterials.setRepertoryZhai(re1);
-                managementGoodsMaterials.setRepertoryChu(0);
                 managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
             }else{
                 ManagementGoodsMaterials managementGoodsMaterials1=new ManagementGoodsMaterials();
@@ -393,26 +432,33 @@
                 managementGoodsMaterials1.setGoodsMaterialsId(zy.getMaterialsId());
                 managementGoodsMaterials1.setRepertoryZhai(Long.valueOf(zy.getZyNum()));
                 managementGoodsMaterials1.setRepertorySum(Long.valueOf(zy.getZyNum()));
-                managementGoodsMaterials1.setRepertoryChu(0);
                 managementGoodsMaterials1.setCreateTime(new Date());
                 managementGoodsMaterialsMapper.insert(managementGoodsMaterials1);
             }
-            // 给转移仓库减去库存数量
+            // 给转出仓库减去库存
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper3 = Wrappers.lambdaQuery();
             wrapper3.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId());
             wrapper3.eq(ManagementGoodsMaterials::getManagementId,byId.getManagementId());
             wrapper3.eq(ManagementGoodsMaterials::getDelFlag, 0);
-            ManagementGoodsMaterials managementGoodsMaterials1 = managementGoodsMaterialsMapper.selectOne(wrapper3);
-            if (managementGoodsMaterials1!=null){
-                Long repertorySum = managementGoodsMaterials1.getRepertorySum();
-                Long repertoryZhai = managementGoodsMaterials1.getRepertoryZhai();
+            ManagementGoodsMaterials managementGoodsMaterials3 = managementGoodsMaterialsMapper.selectOne(wrapper3);
+            if (managementGoodsMaterials3!=null){
+                Long repertorySum = managementGoodsMaterials3.getRepertorySum();
+                Long repertoryZhai = managementGoodsMaterials3.getRepertoryZhai();
                 Long re=repertorySum-Long.valueOf(zy.getZyNum());
                 Long re1=repertoryZhai-Long.valueOf(zy.getZyNum());
-//                managementGoodsMaterials1.setRepertorySum(re);
-                managementGoodsMaterials1.setRepertoryZhai(re1);
-                managementGoodsMaterials1.setRepertoryChu(managementGoodsMaterials1.getRepertoryChu()+zy.getZyNum());
-                managementGoodsMaterialsMapper.updateById(managementGoodsMaterials1);
+                managementGoodsMaterials3.setRepertorySum(re);
+                managementGoodsMaterials3.setRepertoryZhai(re1);
+                managementGoodsMaterialsMapper.updateById(managementGoodsMaterials3);
+            }else{
+                ManagementGoodsMaterials managementGoodsMaterials1=new ManagementGoodsMaterials();
+                managementGoodsMaterials1.setManagementId(byId.getBmanagementId());
+                managementGoodsMaterials1.setGoodsMaterialsId(zy.getMaterialsId());
+                managementGoodsMaterials1.setRepertoryZhai(Long.valueOf(zy.getZyNum()));
+                managementGoodsMaterials1.setRepertorySum(Long.valueOf(zy.getZyNum()));
+                managementGoodsMaterials1.setCreateTime(new Date());
+                managementGoodsMaterialsMapper.insert(managementGoodsMaterials1);
             }
+
         }
 
     }

--
Gitblit v1.7.1