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/SlVolumeProductionCkServiceImpl.java |  101 ++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 80 insertions(+), 21 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
index 8cd8cc4..51f38d3 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
@@ -18,6 +18,7 @@
 import com.ruoyi.management.service.ManagementGoodsMaterialsService;
 import com.ruoyi.management.service.SlVolumeProductionCkService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.management.service.SlVolumeProductionCkglService;
 import com.ruoyi.management.service.SlVolumeProductionRkService;
 import com.ruoyi.system.api.domain.SysUser;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -43,6 +44,8 @@
 
     @Resource
     private SlVolumeProductionRkMapper  slVolumeProductionRkMapper;
+    @Autowired
+    private SlVolumeProductionCkglService ckglService;
 
     @Resource
     private SlGoodsMaterialsMapper slGoodsMaterialsMapper;
@@ -54,36 +57,77 @@
 
     @Override
     public PageDTO<ManagementimgSlVolumeProductionCkVO> getManagementimgSlVolumeProductionCkList(SlGoodsMaterialsSlVolumeProductionRkQuery slGoodsMaterialsSlVolumeProductionRkQuery) {
-        Page<SlVolumeProductionCk> page = new Page<>(slGoodsMaterialsSlVolumeProductionRkQuery.getPageCurr(), slGoodsMaterialsSlVolumeProductionRkQuery.getPageSize());
-        LambdaQueryWrapper< SlVolumeProductionCk> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.like(SlVolumeProductionCk::getMaterialsId,slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid());
-        wrapper1.eq( SlVolumeProductionCk::getDelFlag,0);
-        wrapper1.orderByDesc(SlVolumeProductionCk::getCreateTime);
-        Page<SlVolumeProductionCk> page2 = this.page(page, wrapper1);
-        PageDTO<ManagementimgSlVolumeProductionCkVO> SlGoodsShelfDTO = PageDTO.of(page2, ManagementimgSlVolumeProductionCkVO.class);
-        List<ManagementimgSlVolumeProductionCkVO> list2 = SlGoodsShelfDTO.getList();
-        for(ManagementimgSlVolumeProductionCkVO list:list2) {{
-            SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
-            list.setRkNumber(slVolumeProductionRk.getRkNumber());
+
+            QueryWrapper<SlVolumeProductionRk> notNull = new QueryWrapper<SlVolumeProductionRk>()
+
+                    .eq("del_flag", "0")
+                    .isNotNull("new_add_time");
+            if (slGoodsMaterialsSlVolumeProductionRkQuery.getId()!=null){
+                notNull.eq("management_id", slGoodsMaterialsSlVolumeProductionRkQuery.getId());
             }
-        }
-        return SlGoodsShelfDTO;
+            if (slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid()!=null){
+                notNull.eq("materials_id", slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid());
+            }
+            if (slGoodsMaterialsSlVolumeProductionRkQuery.getStoreManagementNumber()!=null){
+                notNull.eq("store_management_number", slGoodsMaterialsSlVolumeProductionRkQuery.getStoreManagementNumber());
+            }
+            // 查询该仓库的入库记录
+            List<Long> collect = slVolumeProductionRkMapper.selectList(notNull
+            ).stream().map(SlVolumeProductionRk::getId).collect(Collectors.toList());
+            Page<SlVolumeProductionCk> page1 = new Page<>(slGoodsMaterialsSlVolumeProductionRkQuery.getPageCurr(), slGoodsMaterialsSlVolumeProductionRkQuery.getPageSize());
+            LambdaQueryWrapper< SlVolumeProductionCk> wrapper2= Wrappers.lambdaQuery();
+            wrapper2.like(SlVolumeProductionCk::getMaterialsId,slGoodsMaterialsSlVolumeProductionRkQuery.getSlGoodsMaterialsid());
+            wrapper2.eq(SlVolumeProductionCk::getDelFlag,0);
+            wrapper2.isNotNull(SlVolumeProductionCk::getCkTime);
+            wrapper2.orderByDesc(SlVolumeProductionCk::getCreateTime);
+            if (!collect.isEmpty()){
+                wrapper2.in(SlVolumeProductionCk::getRkId,collect);
+            }
+            Page<SlVolumeProductionCk> page3 = this.page(page1, wrapper2);
+            PageDTO<ManagementimgSlVolumeProductionCkVO> SlGoodsShelfDTO1 = PageDTO.of(page3, ManagementimgSlVolumeProductionCkVO.class);
+            List<ManagementimgSlVolumeProductionCkVO> list3 = SlGoodsShelfDTO1.getList();
+            for(ManagementimgSlVolumeProductionCkVO list:list3) {{
+                SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
+                list.setRkNumber(slVolumeProductionRk.getRkNumber());
+            }
+            }
+            return SlGoodsShelfDTO1;
     }
 
     @Override
-    public void updSlVolumeProductionCk(List<SlVolumeProductionCkDTO> slVolumeProductionCkDTO) {
-           for (SlVolumeProductionCkDTO c:slVolumeProductionCkDTO){
-               SlVolumeProductionCk byId = this.getById(c.getId());
+    public void updSlVolumeProductionCk(List<AddSlVolumeProductionCkDTO> slVolumeProductionCkDTO) {
+           for (AddSlVolumeProductionCkDTO c:slVolumeProductionCkDTO){
+               SlVolumeProductionCk byId = this.getById(c.getCkgl_id());
                byId.setCkNum(c.getCkNum());
                byId.setGuihNum(c.getGuihNum());
                this.updateById(byId);
+
            }
+    }
+    @Override
+    public void updSlVolumeProductionCk1(List<AddSlVolumeProductionCkDTO> slVolumeProductionCkDTO) {
+           for (AddSlVolumeProductionCkDTO c:slVolumeProductionCkDTO){
+               SlVolumeProductionCk byId = this.getById(c.getCkgl_id());
+               byId.setCkNum(c.getCkNum());
+               byId.setGuihNum(c.getGuihNum());
+               byId.setIsGh(2);
+               this.updateById(byId);
+//               Long ckglId = byId.getCkglId();
+//               SlVolumeProductionCkgl byId1 = ckglService.getById(ckglId);
+//               byId1.setAuditStatus(1);
+//               byId1.setPresentState(1);
+//               ckglService.updateById(byId1);
 
-
+           }
     }
 
     @Override
     public void addSlVolumeProductionCk(List<AddSlVolumeProductionCkDTO> addSlVolumeProductionCkDTO) {
+        List<SlVolumeProductionCk> list = this.lambdaQuery().eq(SlVolumeProductionCk::getCkglId, addSlVolumeProductionCkDTO.get(0).getCkgl_id())
+                .eq(SlVolumeProductionCk::getDelFlag, "0").list();
+        if (!list.isEmpty()){
+            this.removeBatchByIds(list.stream().map(SlVolumeProductionCk::getId).collect(Collectors.toList()));
+        }
         for (AddSlVolumeProductionCkDTO m:addSlVolumeProductionCkDTO){
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m.getRkId());
             SlVolumeProductionCk slVolumeProductionCk=new SlVolumeProductionCk();
@@ -94,6 +138,7 @@
             slVolumeProductionCk.setCkNum(m.getCkNum());
             slVolumeProductionCk.setGuihNum(m.getGuihNum());
             slVolumeProductionCk.setMaterialsId(slVolumeProductionRk.getMaterialsId());
+            slVolumeProductionCk.setCreateTime(new Date());
             this.save(slVolumeProductionCk);
         }
     }
@@ -109,8 +154,8 @@
 
         PageDTO<ManagementimgVolumeProductionCkVO> SlGoodsShelfDTO = PageDTO.of(page2, ManagementimgVolumeProductionCkVO.class);
         List<ManagementimgVolumeProductionCkVO> list2 = SlGoodsShelfDTO.getList();
-        for(ManagementimgVolumeProductionCkVO list:list2) {{
-
+        for(ManagementimgVolumeProductionCkVO list:list2) {
+            {
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
             list.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber());
             list.setRkNumber(slVolumeProductionRk.getRkNumber());
@@ -158,7 +203,6 @@
     @Override
     public PageDTO<InventoriesSuppliesInfoVO> getMaterialByManagementIdList(GetMaterialsByManagementIdQuery query) {
         List<InventoriesSuppliesInfoVO> res = new ArrayList<>();
-
         Page<SlVolumeProductionRk> page = new Page<>(query.getPageCurr(), query.getPageSize());
         QueryWrapper<ManagementGoodsMaterials> wrapper1 = new QueryWrapper<>();
         wrapper1.eq("del_flag","0");
@@ -173,11 +217,15 @@
             wrapper2.eq("is_consume",query.getIsConsume());
         }
         wrapper2.eq("del_flag","0");
+        if (collect.isEmpty())collect.add(-1L);
         wrapper2.in("id",collect);
         List<Long> collect1 = slGoodsMaterialsMapper.selectList(wrapper2).stream().map(SlGoodsMaterials::getId).collect(Collectors.toList());
         QueryWrapper<SlVolumeProductionRk> wrapper = new QueryWrapper<>();
+        if (collect1.isEmpty())collect1.add(-1L);
         wrapper.in("materials_id",collect1);
+        wrapper.eq("management_id",query.getManagementId());
         wrapper.eq("del_flag","0");
+        wrapper.isNotNull("new_add_time");
 
         Page<SlVolumeProductionRk> page2 = slVolumeProductionRkService.page(page, wrapper);
         List<SlVolumeProductionRk> list = page2.getRecords();
@@ -185,6 +233,14 @@
         PageDTO<InventoriesSuppliesInfoVO> slGoodsMaterialsVO = PageDTO.of(page2, InventoriesSuppliesInfoVO.class);
         for (SlVolumeProductionRk slVolumeProductionRk : list) {
             SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId());
+            StringBuilder stringBuilder = new StringBuilder();
+            for (String s : slVolumeProductionRk.getShelfId().split(",")) {
+                SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(s);
+                if (slGoodsShelf!=null){
+                    stringBuilder.append(slGoodsShelf.getGoodsShelfName()).append(",");
+                }
+            }
+
             SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(slVolumeProductionRk.getShelfId());
             if (slGoodsMaterials == null || slGoodsShelf == null){
                 continue;
@@ -197,8 +253,11 @@
             inventoriesSuppliesInfoVO.setRkModel(slVolumeProductionRk.getRkModel());
             inventoriesSuppliesInfoVO.setRkId(slVolumeProductionRk.getId());
             inventoriesSuppliesInfoVO.setZkNum(slVolumeProductionRk.getRepertoryZhai());
-            inventoriesSuppliesInfoVO.setGoodsShelfName(slGoodsShelf.getGoodsShelfName());
             inventoriesSuppliesInfoVO.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber());
+            // 去除最后一位字符
+            if (StringUtils.hasLength(stringBuilder.toString())){
+                inventoriesSuppliesInfoVO.setGoodsShelfName(stringBuilder.substring(0, stringBuilder.length() - 1));
+            }
             res.add(inventoriesSuppliesInfoVO);
         }
         slGoodsMaterialsVO.setList(res);

--
Gitblit v1.7.1