From b5ef65d0103a71dc7af2b9be6d2ac43aca5bb726 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 27 八月 2024 08:59:57 +0800
Subject: [PATCH] 代码提交 bug解决

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java |   64 +++++++++++++++++++++++---------
 1 files changed, 46 insertions(+), 18 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java
index a133ae4..8fcf25b 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java
@@ -3,17 +3,23 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.management.domain.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.management.domain.dto.ADDPdDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoQuery;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesInfoVO;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesVO;
 import com.ruoyi.management.mapper.*;
 import com.ruoyi.management.service.InventoriesSuppliesInfoService;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.model.LoginUser;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.security.Security;
 import java.util.*;
 
 /**
@@ -39,14 +45,14 @@
 
     @Resource
     private SlGoodsShelfMapper slGoodsShelfMapper;
+    @Autowired
+    private InventoriesSuppliesServiceImpl inventoriesSuppliesService;
     @Override
     public PageDTO<InventoriesSuppliesInfoVO> inventoriesSuppliesInfoService(InventoriesSuppliesInfoQuery inventoriesSuppliesInfoQuery) {
-
         Page<InventoriesSuppliesInfo> page = new Page<>(inventoriesSuppliesInfoQuery.getPageCurr(), inventoriesSuppliesInfoQuery.getPageSize());
         LambdaQueryWrapper< InventoriesSuppliesInfo> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(InventoriesSuppliesInfo::getSuppliesId, inventoriesSuppliesInfoQuery.getSuppliesId());
-        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,0);
-        wrapper1.orderByDesc(InventoriesSuppliesInfo::getCreateTime);
+
         wrapper1.orderByDesc(InventoriesSuppliesInfo::getType);
         Page<InventoriesSuppliesInfo> page2 = this.page(page, wrapper1);
         PageDTO<InventoriesSuppliesInfoVO> slGoodsMaterialsVO = PageDTO.of(page2, InventoriesSuppliesInfoVO.class);
@@ -83,7 +89,6 @@
             InventoriesSuppliesInfo byId = this.getById(m.getId());
             byId.setSuppliesNum(m.getSuppliesNum());
             this.updateById(byId);
-
         }
     }
 
@@ -98,40 +103,63 @@
     }
 
     @Override
-    public void submitInventoriesSuppliesInfo(InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO) {
-        LambdaQueryWrapper< InventoriesSuppliesInfo> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.eq(InventoriesSuppliesInfo::getSuppliesId, inventoriesSuppliesInfoDTO.getSuppliesId());
-        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,0);
-        List<InventoriesSuppliesInfo> page2 = this.list(wrapper1);
-        for (InventoriesSuppliesInfo page:page2){
-            if (page.getZkNum()!=page.getSuppliesNum()){
-                page.setType(2);
+    public String submitInventoriesSuppliesInfo(ADDPdDTO dto) {
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        // 添加主表
+        InventoriesSupplies inventoriesSupplies = new InventoriesSupplies();
+        inventoriesSupplies.setMaterialsId(dto.getManagementId());
+        inventoriesSupplies.setPdrId(loginUser.getUserid());
+        inventoriesSupplies.setPdTime(new Date());
+        inventoriesSupplies.setPdrName(loginUser.getUsername());
+        inventoriesSupplies.setCreateTime(new Date());
+        inventoriesSupplies.setDelFlag("2");
+        inventoriesSuppliesService.save(inventoriesSupplies);
+        for (InventoriesSuppliesInfoDTO temp : dto.getList()) {
+            InventoriesSuppliesInfo res = new InventoriesSuppliesInfo();
+            res.setRkId(temp.getRkId());
+            res.setSuppliesId(inventoriesSupplies.getId());
+            res.setSuppliesNum(temp.getSuppliesNum());
+            res.setZkNum(temp.getZkNum());
+            res.setCreateTime(new Date());
+            if (!Objects.equals(temp.getZkNum(), temp.getSuppliesNum())){
+                res.setType(2);
+            }else{
+                res.setType(1);
             }
-            this.updateById(page);
+            this.save(res);
+            return inventoriesSupplies.getId().toString();
         }
+        return null;
     }
 
     @Override
     public void accomplishInventoriesSuppliesInfo(InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO) {
 
+        InventoriesSupplies byId = inventoriesSuppliesService.getById1(inventoriesSuppliesInfoDTO.getSuppliesId());
+        byId.setDelFlag("0");
+        inventoriesSuppliesService.updateById(byId);
         LambdaQueryWrapper< InventoriesSuppliesInfo> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(InventoriesSuppliesInfo::getSuppliesId, inventoriesSuppliesInfoDTO.getSuppliesId());
-        wrapper1.eq(InventoriesSuppliesInfo::getType, 2);
-        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,0);
+        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,"0");
+        wrapper1.orderByDesc(InventoriesSuppliesInfo::getType);
         List<InventoriesSuppliesInfo> page2 = this.list(wrapper1);
         for (InventoriesSuppliesInfo page:page2){
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(page.getRkId());
             slVolumeProductionRk.setRepertoryZhai(page.getSuppliesNum());
             slVolumeProductionRkMapper.updateById(slVolumeProductionRk);
-
-
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,slVolumeProductionRk.getMaterialsId());
             wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId());
             wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0);
             ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2);
             if (managementGoodsMaterials!=null){
-                managementGoodsMaterials.setRepertoryZhai(page.getSuppliesNum());
+                long l = page.getZkNum() - page.getSuppliesNum();
+                if (l>0){
+                    managementGoodsMaterials.setRepertoryZhai(page.getSuppliesNum());
+                }else if (l<0){
+                    managementGoodsMaterials.setRepertoryYishi(Integer.valueOf(String.valueOf(l)));
+                }
+                managementGoodsMaterials.setCheckNum(Integer.valueOf(String.valueOf(page.getSuppliesNum())));
                 managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
             }
         }

--
Gitblit v1.7.1