소스 검색

商品名称判重优化

yzc 2 년 전
부모
커밋
a41f926c5d

+ 2 - 2
sckw-modules/sckw-product/src/main/java/com/sckw/product/controller/KwpGoodsController.java

@@ -235,7 +235,7 @@ public class KwpGoodsController {
      */
     @Log(description = "商品名称判重")
     @GetMapping("/nameDuplicationJudgment")
-    public HttpResult nameDuplicationJudgment(@RequestParam String name) {
-        return HttpResult.ok("商品名称判重成功", kwpGoodsService.nameDuplicationJudgment(name, null));
+    public HttpResult nameDuplicationJudgment(@RequestParam String name, @RequestParam Long supplyEntId) {
+        return HttpResult.ok("商品名称判重成功", kwpGoodsService.nameDuplicationJudgment(name, supplyEntId, null));
     }
 }

+ 2 - 0
sckw-modules/sckw-product/src/main/java/com/sckw/product/model/vo/req/AddGoodsDraftParam.java

@@ -2,6 +2,7 @@ package com.sckw.product.model.vo.req;
 
 import jakarta.validation.Valid;
 import jakarta.validation.constraints.DecimalMin;
+import jakarta.validation.constraints.NotNull;
 import jakarta.validation.constraints.Size;
 import lombok.Getter;
 import lombok.Setter;
@@ -84,6 +85,7 @@ public class AddGoodsDraftParam {
     /**
      * 供应企业
      */
+    @NotNull(message = "供应企业不能为空")
     private Long supplyEntId;
 
     /**

+ 2 - 1
sckw-modules/sckw-product/src/main/java/com/sckw/product/model/vo/req/UpdateGoodsParam.java

@@ -34,7 +34,7 @@ public class UpdateGoodsParam {
      * 商品名称
      */
     @Length(max = 50, message = "商品名称最多支持50字")
-    @NotBlank(message= "商品名称不能为空")
+    @NotBlank(message = "商品名称不能为空")
     private String name;
 
     /**
@@ -92,6 +92,7 @@ public class UpdateGoodsParam {
     /**
      * 供应企业
      */
+    @NotNull(message = "供应企业不能为空")
     private Long supplyEntId;
 
     /**

+ 6 - 5
sckw-modules/sckw-product/src/main/java/com/sckw/product/service/KwpGoodsService.java

@@ -82,7 +82,7 @@ public class KwpGoodsService {
      */
     @Transactional(rollbackFor = Exception.class)
     public void addDraft(AddGoodsDraftParam param) {
-        if (nameDuplicationJudgment(param.getName(), null)) {
+        if (nameDuplicationJudgment(param.getName(), param.getSupplyEntId(), null)) {
             throw new BusinessException("已存在相同商品名称!");
         }
         //添加商品信息
@@ -109,7 +109,7 @@ public class KwpGoodsService {
         if (Objects.equals(param.getPrepaidLimit(), 1) && Objects.isNull(param.getAdvancePrice())) {
             throw new BusinessException("设置预付限额时,预付款最低限额不能为空!");
         }
-        if (nameDuplicationJudgment(param.getName(), null)) {
+        if (nameDuplicationJudgment(param.getName(), param.getSupplyEntId(), null)) {
             throw new BusinessException("已存在相同商品名称!");
         }
         //添加商品信息
@@ -264,7 +264,7 @@ public class KwpGoodsService {
      */
     @Transactional(rollbackFor = Exception.class)
     public void update(UpdateGoodsParam param) {
-        if (nameDuplicationJudgment(param.getName(), param.getId())) {
+        if (nameDuplicationJudgment(param.getName(), param.getSupplyEntId(), param.getId())) {
             throw new BusinessException("已存在相同商品名称!");
         }
         KwpGoods goods = getGoodsById(param.getId());
@@ -983,12 +983,13 @@ public class KwpGoodsService {
      * @author: yzc
      * @date: 2023-08-16 15:24
      * @Param name:
+     * @Param supplyEntId:
      * @Param id:
      * @return: java.lang.Boolean
      */
-    public Boolean nameDuplicationJudgment(String name, Long id) {
+    public Boolean nameDuplicationJudgment(String name, Long supplyEntId, Long id) {
         LambdaQueryWrapper<KwpGoods> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(KwpGoods::getSupplyEntId, LoginUserHolder.getEntId())
+        wrapper.eq(KwpGoods::getSupplyEntId, supplyEntId)
                 .eq(KwpGoods::getName, name).eq(KwpGoods::getDelFlag, Global.NO);
         if (Objects.nonNull(id)) {
             wrapper.ne(KwpGoods::getId, id);