Просмотр исходного кода

商品上架参数校验抛出前端指定提示异常

yzc 2 лет назад
Родитель
Сommit
bcd069aee2

+ 1 - 1
sckw-common/sckw-common-core/src/main/java/com/sckw/core/exception/BusinessException.java

@@ -16,7 +16,7 @@ public class BusinessException extends RuntimeException {
     /**
      * 异常信息
      **/
-    private String msg;
+    private final String msg;
     private Object[] param;
 
     public BusinessException(String msg) {

+ 7 - 4
sckw-common/sckw-common-core/src/main/java/com/sckw/core/exception/CustomPromptException.java

@@ -6,7 +6,7 @@ import java.io.Serial;
 
 /**
  * @Author yzc
- * @Description 自定义提示异常
+ * @Description 前端自定义提示异常
  * @createTime 2023年06月08日 10:05:00
  */
 @Getter
@@ -17,16 +17,19 @@ public class CustomPromptException extends RuntimeException {
     /**
      * 异常信息
      **/
-    private String msg;
+    private final String msg;
+    private final Integer code;
     private Object[] param;
 
-    public CustomPromptException(String msg) {
+    public CustomPromptException(Integer code,String msg) {
         super(msg);
+        this.code = code;
         this.msg = msg;
     }
 
-    public CustomPromptException(String msg, Object... param) {
+    public CustomPromptException(Integer code,String msg, Object... param) {
         super(msg);
+        this.code = code;
         this.msg = msg;
         this.param = param;
     }

+ 3 - 2
sckw-common/sckw-common-core/src/main/java/com/sckw/core/exception/GlobalSystemExceptionHandler.java

@@ -49,14 +49,15 @@ public class GlobalSystemExceptionHandler {
 
     /**
      * 前端自定义提示异常
+     *
      * @param ex
      * @return
      */
     @ResponseBody
     @ExceptionHandler(CustomPromptException.class)
     public HttpResult customPromptExceptionHandler(CustomPromptException ex) {
-        log.info("业务异常,message={},param={}", ex.getMsg(), ex.getParam());
-        return HttpResult.error(HttpStatus.CUSTOM_PROMPT_CODE, ex.getMessage());
+        log.info("前端自定义提示异常,code={},message={},param={}", ex.getCode(), ex.getMsg(), ex.getParam());
+        return HttpResult.error(ex.getCode(), ex.getMessage());
     }
 
 

+ 6 - 2
sckw-common/sckw-common-core/src/main/java/com/sckw/core/web/constant/HttpStatus.java

@@ -24,9 +24,13 @@ public class HttpStatus {
     /**全局异常状态码*/
     public static final int GLOBAL_EXCEPTION_CODE = 60500;
     /**
-     * 自定义提示异常
+     * 完结贸易订单失败异常码
      */
-    public static final int CUSTOM_PROMPT_CODE = 60666;
+    public static final int COMPLETE_TORDER_FAIL_CODE = 60666;
+    /**
+     * 商品上架失败异常码
+     */
+    public static final int GOODS_PUT_ON_SHELVES_FAIL_CODE = 60667;
     /**全局异常提示信息*/
     public static final String GLOBAL_EXCEPTION_MESSAGE = "攻城狮正在拼命优化,请您稍候再试!";
 

+ 1 - 1
sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/KwoTradeOrderService.java

@@ -787,7 +787,7 @@ public class KwoTradeOrderService {
             throw new BusinessException("无订单操作权限!");
         }
         if (transportDubboService.checkLogisticsOrderByTradeOrderId(param.getId())) {
-            throw new CustomPromptException("订单存在未完成的物流托运,不可完结!");
+            throw new CustomPromptException(HttpStatus.COMPLETE_TORDER_FAIL_CODE, "订单存在未完成的物流托运,不可完结!");
         }
         String lockKey = String.format(RedisConstant.TORDER_UPDATE_AMOUNT_KEY, param.getId());
         if (Boolean.FALSE.equals(RedissonUtils.tryLock(lockKey, 5L, 10L))) {

+ 3 - 2
sckw-modules/sckw-product/src/main/java/com/sckw/product/service/KwpGoodsService.java

@@ -17,6 +17,7 @@ import com.sckw.core.utils.BeanUtils;
 import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.NumberUtils;
 import com.sckw.core.utils.StringUtils;
+import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.excel.utils.DateUtil;
 import com.sckw.payment.api.dubbo.PayCenterDubboService;
@@ -355,7 +356,7 @@ public class KwpGoodsService {
      */
     private String judgeParameters(UpdateGoodsParam param) {
         if (StringUtils.isBlank(param.getName())) {
-            return  "商品名称不能为空!";
+            return "商品名称不能为空!";
         }
         if (StringUtils.isBlank(param.getGoodsType())) {
             return "商品类型不能为空!";
@@ -663,7 +664,7 @@ public class KwpGoodsService {
             updateParam.setAddressInfo(BeanUtils.copyProperties(kwpGoodsAddressService.getByGoodsId(id), AddressInfo.class));
             String msg = judgeParameters(updateParam);
             if (StringUtils.isNotBlank(msg)) {
-                throw new CustomPromptException(msg);
+                throw new CustomPromptException(HttpStatus.GOODS_PUT_ON_SHELVES_FAIL_CODE, msg);
             }
         }
         LambdaUpdateWrapper<KwpGoods> updateWrapper = new LambdaUpdateWrapper<>();