Jelajahi Sumber

运费计算封装

xdd 2 bulan lalu
induk
melakukan
ebddcd20a3

+ 6 - 0
fs-service-system/src/main/java/com/fs/store/service/impl/FsStoreOrderServiceImpl.java

@@ -1285,13 +1285,19 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
                 FsStoreProductAttrValue fsStoreProductAttrValues
                         = fsStoreProductAttrValueService.selectFsStoreProductAttrValueById(id);
                 sum = sum.add(fsStoreProductAttrValues.getWeight());
+                sum = sum.multiply(BigDecimal.valueOf(count));
                 // 按体积
             } else if(ObjectUtil.equal(ShippingTempEnum.TYPE_3.getValue(),type)){
                 FsStoreProductAttrValue fsStoreProductAttrValues
                         = fsStoreProductAttrValueService.selectFsStoreProductAttrValueById(id);
                 sum = sum.add(fsStoreProductAttrValues.getVolume());
+                sum = sum.multiply(BigDecimal.valueOf(count));
             }
         }
+        // 不满1kg按1kg计算
+        if(sum.compareTo(BigDecimal.ONE) < 0){
+            sum = BigDecimal.ONE;
+        }
         return sum;
     }
 

+ 5 - 1
fs-user-app/src/main/java/com/fs/app/exception/FSExceptionHandler.java

@@ -61,7 +61,11 @@ public class FSExceptionHandler {
 			String defaultMessage = error.getDefaultMessage();//异常内容
 
 			return R.error(defaultMessage);
-		}else {
+		}
+
+		if(e instanceof IllegalArgumentException){
+			return R.error(e.getMessage());
+		} else {
 			return R.error();
 		}