yzc пре 2 година
родитељ
комит
e32eee12fd

+ 4 - 0
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/AcceptanceOrderParam.java

@@ -2,6 +2,7 @@ package com.sckw.order.model.vo.req;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import jakarta.validation.Valid;
+import jakarta.validation.constraints.DecimalMin;
 import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.NotNull;
 import lombok.Getter;
@@ -25,12 +26,15 @@ public class AcceptanceOrderParam {
     private Long id;
 
     @NotNull(message = "订单总量不能为空")
+    @DecimalMin(value = "0.00",message = "订单总量最小为零")
     private BigDecimal amount;
 
     @NotNull(message = "订单成交单价不能为空")
+    @DecimalMin(value = "0.00",message = "订单成交单价最小为零")
     private BigDecimal unitPrice;
 
     @NotNull(message = "订单金额不能为空")
+    @DecimalMin(value = "0.00",message = "订单金额最小为零")
     private BigDecimal price;
 
     @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")

+ 2 - 0
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/AddressInfo.java

@@ -6,6 +6,7 @@ import jakarta.validation.constraints.Pattern;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
+import org.hibernate.validator.constraints.Range;
 
 /**
  * @desc: 地址信息
@@ -21,6 +22,7 @@ public class AddressInfo {
      * 地址类型(1装货地址、2卸货地址)
      */
     @NotNull(message = "地址类型不能为空")
+    @Range(min = 1, max = 2, message ="非法地址类型")
     private String addressType;
 
     /**

+ 2 - 5
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/BatchDeleteParam.java

@@ -4,6 +4,7 @@ import jakarta.validation.constraints.*;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
+import org.hibernate.validator.constraints.Range;
 
 /**
  * @desc: 批量删除请求参数
@@ -18,11 +19,7 @@ public class BatchDeleteParam {
     @NotBlank(message = "订单ids不能为空")
     private String ids;
 
-    /**
-     * 订单类型(1采购订单、2销售订单)
-     */
-    @Min(value = 1, message = "非法订单类型")
-    @Max(value = 2, message = "非法订单类型")
     @NotNull(message = "订单类型不能为空")
+    @Range(min = 1, max = 2, message = "非法订单类型")
     private Integer orderType;
 }

+ 2 - 2
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/CompleteOrderParam.java

@@ -1,6 +1,6 @@
 package com.sckw.order.model.vo.req;
 
-import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.DecimalMin;
 import jakarta.validation.constraints.NotNull;
 import lombok.Getter;
 import lombok.Setter;
@@ -23,7 +23,7 @@ public class CompleteOrderParam {
     private Long id;
 
     @NotNull(message = "实际交付量不能为空")
-    @Min(value = 0, message = "实际交付量不能为负数")
+    @DecimalMin(value = "0.00",message = "实际交付量最小为零")
     private BigDecimal actualAmount;
 
     /**

+ 2 - 2
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/PurchaseOrderDraftParam.java

@@ -40,12 +40,12 @@ public class PurchaseOrderDraftParam {
     /**
      * 单位信息
      */
-    @Size(min = 2, max = 2, message = "单位信息只能有两条")
+    @Size(max = 2, message = "单位信息最多有两条")
     private List<UnitInfo> unitInfo;
     /**
      * 地址信息
      */
-    @Size(min = 2, max = 2, message = "地址信息只能有两条")
+    @Size(max = 2, message = "地址信息最多有两条")
     private List<AddressInfo> addressInfo;
     /**
      * 开始时间

+ 2 - 2
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/PurchaseOrderParam.java

@@ -46,14 +46,14 @@ public class PurchaseOrderParam {
      * 单位信息
      */
     @NotEmpty(message = "单位信息不能为空")
-    @Size(min = 2, max = 2, message = "单位信息只能有两条")
+    @Size(min = 2, max = 2, message = "采购或供应单位信息缺失")
     @Valid
     private List<UnitInfo> unitInfo;
     /**
      * 地址信息
      */
     @NotEmpty(message = "地址信息不能为空")
-    @Size(min = 2, max = 2, message = "地址信息只能有两条")
+    @Size(min = 2, max = 2, message = "装货或卸货地址信息缺失")
     @Valid
     private List<AddressInfo> addressInfo;
     /**

+ 2 - 0
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/UnitInfo.java

@@ -6,6 +6,7 @@ import jakarta.validation.constraints.Pattern;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
+import org.hibernate.validator.constraints.Range;
 
 /**
  * @desc: 单位信息
@@ -21,6 +22,7 @@ public class UnitInfo {
      * 单位类型(1销售单位、2采购单位)
      */
     @NotNull(message = "单位类型不能为空")
+    @Range(min = 1, max = 2, message = "非法单位类型")
     private String unitType;
 
     /**

+ 2 - 2
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/vo/req/UpdateOrderParam.java

@@ -67,12 +67,12 @@ public class UpdateOrderParam {
     /**
      * 单位信息
      */
-    @Size(max = 2, message = "单位信息只能有两条")
+    @Size(max = 2, message = "单位信息最多有两条")
     private List<UnitInfo> unitInfo;
     /**
      * 地址信息
      */
-    @Size(max = 2, message = "地址信息只能有两条")
+    @Size(max = 2, message = "地址信息最多有两条")
     private List<AddressInfo> addressInfo;
 
     /**

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

@@ -128,8 +128,12 @@ public class KwoTradeOrderService {
             List<Long> entIds = unitInfos.stream().map(UnitInfo::getEntId).distinct().toList();
             Map<Long, EntCacheResDto> entMap = remoteSystemService.queryEntTreeByIds(entIds);
             unitInfos.forEach(e -> {
+                EntCacheResDto ent = entMap.get(e.getEntId());
+                if (Objects.isNull(ent)) {
+                    throw new BusinessException("企业:" + e.getFirmName() + "的一级企业信息不存在!");
+                }
                 KwoTradeOrderUnit unit = BeanUtils.copyProperties(e, KwoTradeOrderUnit.class);
-                unit.setTOrderId(id).setTOrderNo(tOrderNo).setTopEntId(entMap.get(e.getEntId()).getId());
+                unit.setTOrderId(id).setTOrderNo(tOrderNo).setTopEntId(ent.getId());
                 list.add(unit);
                 if (Objects.equals(e.getUnitType(), DictEnum.TORDER_UNIT_TYPE_1.getValue())) {
                     order.setProcureEntId(e.getEntId()).setProcureTopEntId(unit.getTopEntId()).setProcureFirmName(e.getFirmName())
@@ -252,6 +256,11 @@ public class KwoTradeOrderService {
         List<Long> entIds = unitInfo.stream().map(UnitInfo::getEntId).toList();
         Map<Long, EntCacheResDto> entMap = remoteSystemService.queryEntTreeByIds(entIds);
         unitInfo.forEach(e -> {
+            EntCacheResDto ent = entMap.get(e.getEntId());
+            if (Objects.isNull(ent)) {
+                log.error("企业:{}找不到对应一级企业信息", e.getEntId());
+                throw new BusinessException("一级企业信息不存在!");
+            }
             if (Objects.equals(e.getUnitType(), DictEnum.TORDER_UNIT_TYPE_1.getValue())) {
                 orderCheckDTO.setProcureTopEntId(entMap.get(e.getEntId()).getId());
             } else {

+ 3 - 0
sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/KwoTransportDemandService.java

@@ -254,6 +254,9 @@ public class KwoTransportDemandService {
         List<KwoTransportDemand> demands = kwoTransportDemandMapper.selectList(wrapper);
         Map<Integer, List<KwoTransportDemand>> map = demands.stream().collect(Collectors.groupingBy(KwoTransportDemand::getStatus));
         List<TableTop> tableTops = new ArrayList<>();
+        TableTop all = new TableTop();
+        all.setName("全部").setTotal(CollectionUtils.isEmpty(demands) ? 0 : demands.size());
+        tableTops.add(all);
         List<DictEnum> enums = DictEnum.getEnumsByType(DictTypeEnum.TRANSPORT_DEMAND_STATUS.getType());
         enums.forEach(e -> {
             Integer value = Integer.valueOf(e.getValue());

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

@@ -519,6 +519,9 @@ public class KwpGoodsService {
         List<KwpGoods> goodsList = getGoodsLists(BeanUtils.copyProperties(params, SelectGoodsListParam.class), false).getRecords();
         Map<Integer, List<KwpGoods>> map = goodsList.stream().collect(Collectors.groupingBy(KwpGoods::getStatus));
         List<TableTop> tableTops = new ArrayList<>();
+        TableTop all = new TableTop();
+        all.setName("全部").setTotal(CollectionUtils.isEmpty(goodsList) ? 0 : goodsList.size());
+        tableTops.add(all);
         GoodsStatusEnum.getSortList().forEach(e -> {
             List<KwpGoods> list = map.get(e.getCode());
             int total = CollectionUtils.isEmpty(list) ? 0 : list.size();

+ 3 - 0
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/KwOrderService.java

@@ -208,6 +208,9 @@ public class KwOrderService {
         List<SckwTradeOrder> orders = mongoTemplate.find(query, SckwTradeOrder.class);
         Map<Integer, List<SckwTradeOrder>> map = orders.stream().collect(Collectors.groupingBy(SckwTradeOrder::getStatus));
         List<TableTop> tableTops = new ArrayList<>();
+        TableTop all = new TableTop();
+        all.setName("全部").setTotal(CollectionUtils.isEmpty(orders) ? 0 : orders.size());
+        tableTops.add(all);
         List<DictEnum> tOrderStatusEnums = DictEnum.getEnumsByType(DictTypeEnum.TORDER_STATUS.getType());
         tOrderStatusEnums.forEach(e -> {
             Integer value = Integer.valueOf(e.getValue());