From 1c4311135628b53daa336821ff452292a9d063e9 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 28 八月 2024 09:14:10 +0800
Subject: [PATCH] 代码提交 bug解决

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java |   47 ++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 36 insertions(+), 11 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java
index b37c257..64db86e 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java
@@ -1,8 +1,10 @@
 package com.ruoyi.management.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.BeanUtils;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.common.security.utils.SecurityUtils;
@@ -20,6 +22,7 @@
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import javax.annotation.Resource;
 import java.util.HashSet;
@@ -51,13 +54,12 @@
         SysUser data = sysUserClient.getSysUser(userid).getData();
 
         LambdaQueryWrapper<SlStoreManagement> wrapper= Wrappers.lambdaQuery();
-        if(slGoodsShelfQuery.getStoreManagementName()!=null&&slGoodsShelfQuery.getStoreManagementName()!=""){
-            wrapper.eq(SlStoreManagement::getStoreManagementName,slGoodsShelfQuery.getStoreManagementName());
+        if(slGoodsShelfQuery.getStoreManagementName()!=null&& !slGoodsShelfQuery.getStoreManagementName().isEmpty()){
+            wrapper.like(SlStoreManagement::getStoreManagementName,slGoodsShelfQuery.getStoreManagementName());
         }
-        if (slGoodsShelfQuery.getStoreManagementNumber()!=0 && slGoodsShelfQuery.getStoreManagementNumber()!=null){
-            wrapper.eq(SlStoreManagement::getStoreManagementGrade,slGoodsShelfQuery.getStoreManagementNumber());
+        if (data.getRoleType()!=1){
+            wrapper.eq(SlStoreManagement::getStoreManagementGrade,data.getRoleType());
         }
-        wrapper.eq(SlStoreManagement::getStoreManagementGrade,data.getRoleType());
         wrapper.eq(SlStoreManagement::getDelFlag,0);
         List<SlStoreManagement> page1 = SlStoreManagementService.list(wrapper);
         Set<Long> slStoreManagementIdList = null;
@@ -67,7 +69,13 @@
 
         Page<SlGoodsShelf> page = new Page<>(slGoodsShelfQuery.getPageCurr(), slGoodsShelfQuery.getPageSize());
         LambdaQueryWrapper< SlGoodsShelf> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.like(SlGoodsShelf::getGoodsShelfName,slGoodsShelfQuery.getGoodsShelfName());
+        if (StringUtils.hasLength(slGoodsShelfQuery.getGoodsShelfName())){
+            wrapper1.like(SlGoodsShelf::getGoodsShelfName,slGoodsShelfQuery.getGoodsShelfName());
+        }
+        if (slGoodsShelfQuery.getStoreManagementNumber()!=null && slGoodsShelfQuery.getStoreManagementNumber()!=0){
+            wrapper1.eq(SlGoodsShelf::getStoreManagementNumber,slGoodsShelfQuery.getStoreManagementNumber());
+        }
+
         if(slGoodsShelfQuery.getStoreManagementName()!=null&&slGoodsShelfQuery.getStoreManagementName()!="") {
             if (slStoreManagementIdList.size() > 0) {
                 wrapper1.in(SlGoodsShelf::getStoreManagementId, slStoreManagementIdList);
@@ -76,6 +84,9 @@
                 slStoreManagementIdList.add(0L);
                 wrapper1.in(SlGoodsShelf::getStoreManagementId, slStoreManagementIdList);
             }
+        }
+        if (slGoodsShelfQuery.getStoreManagementId()!=null){
+            wrapper1.eq(SlGoodsShelf::getStoreManagementId, slGoodsShelfQuery.getStoreManagementId());
         }
         wrapper1.eq( SlGoodsShelf::getDelFlag,0);
         wrapper1.orderByDesc(SlGoodsShelf::getCreateTime);
@@ -87,7 +98,6 @@
             SlStoreManagement byId = SlStoreManagementService.getById(list.getStoreManagementId());
             if (byId!=null){
                 list.setStoreManagementName(byId.getStoreManagementName());
-                list.setStoreManagementNumber(byId.getStoreManagementNumber());
                 list.setProvinceName(byId.getProvinceName());
                 list.setProvinceCode(byId.getProvinceCode());
                 list.setCityName(byId.getCityName());
@@ -103,8 +113,15 @@
     }
 
     @Override
-    public void addSlGoodsShelf(SlGoodsShelfDTO slGoodsShelfDTO) {
+    public R addSlGoodsShelf(SlGoodsShelfDTO slGoodsShelfDTO) {
         if (slGoodsShelfDTO.getId()==null){
+            List<SlGoodsShelf> list = this.list(new QueryWrapper<SlGoodsShelf>()
+                    .eq("del_flag","0")
+                    .eq("store_management_id", slGoodsShelfDTO.getStoreManagementId())
+                    .eq("goods_shelf_name", slGoodsShelfDTO.getGoodsShelfName()));
+            if (list.size()>0){
+                return R.fail("添加失败,当前仓库已有相同名称货架");
+            }
             SlGoodsShelf slGoodsShelf=new SlGoodsShelf();
             slGoodsShelf.setGoodsShelfName(slGoodsShelfDTO.getGoodsShelfName());
             slGoodsShelf.setStoreManagementId(slGoodsShelfDTO.getStoreManagementId());
@@ -112,6 +129,14 @@
             this.save(slGoodsShelf);
         }else{
             SlGoodsShelf slGoodsShelf = this.getById(slGoodsShelfDTO.getId());
+            List<SlGoodsShelf> list = this.list(new QueryWrapper<SlGoodsShelf>()
+                            .ne("id", slGoodsShelfDTO.getId())
+                            .eq("del_flag","0")
+                    .eq("store_management_id", slGoodsShelfDTO.getStoreManagementId())
+                    .eq("goods_shelf_name", slGoodsShelfDTO.getGoodsShelfName()));
+            if (list.size()>0){
+                return R.fail("添加失败,当前仓库已有相同名称货架");
+            }
             if (slGoodsShelfDTO.getGoodsShelfName()!=null){
                 slGoodsShelf.setGoodsShelfName(slGoodsShelfDTO.getGoodsShelfName());
             }
@@ -123,6 +148,7 @@
             }
             this.updateById(slGoodsShelf);
         }
+        return R.ok();
     }
 
     @Override
@@ -134,7 +160,7 @@
         SlStoreManagement byId = SlStoreManagementService.getById(byId1.getStoreManagementId());
         slGoodsShelfVO.setStoreManagementId(byId1.getStoreManagementId());
         slGoodsShelfVO.setStoreManagementName(byId.getStoreManagementName());
-        slGoodsShelfVO.setStoreManagementNumber(byId.getStoreManagementNumber());
+        slGoodsShelfVO.setStoreManagementNumber(byId1.getStoreManagementNumber());
         slGoodsShelfVO.setProvinceName(byId.getProvinceName());
         slGoodsShelfVO.setProvinceCode(byId.getProvinceCode());
         slGoodsShelfVO.setCityName(byId.getCityName());
@@ -143,7 +169,7 @@
         slGoodsShelfVO.setCountyCode(byId.getCountyCode());
         slGoodsShelfVO.setTownCode(byId.getTownCode());
         slGoodsShelfVO.setTownName(byId.getTownName());
-
+        slGoodsShelfVO.setGrade(byId.getStoreManagementGrade());
         return slGoodsShelfVO;
     }
 
@@ -152,7 +178,6 @@
         LambdaQueryWrapper< SlGoodsShelf> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(SlGoodsShelf::getStoreManagementId,goodsShelfQuery.getStoreManagementId());
         wrapper1.eq(SlGoodsShelf::getStoreManagementNumber,goodsShelfQuery.getStoreManagementNumber());
-        wrapper1.eq(SlGoodsShelf::getIsStoreManagement,1);
         wrapper1.eq( SlGoodsShelf::getDelFlag,0);
         wrapper1.orderByDesc(SlGoodsShelf::getCreateTime);
         List<SlGoodsShelf> page2 = this.list(wrapper1);

--
Gitblit v1.7.1