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

Merge remote-tracking branch 'origin/dev_20251130' into dev_20251130

donglang 1 месяц назад
Родитель
Сommit
a46f8f2de4

+ 1 - 0
sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/model/dto/res/EntCacheResDto.java

@@ -128,6 +128,7 @@ public class EntCacheResDto implements Serializable {
      * 法人姓名
      */
     private String legalPhone;
+    private String detailAddress;
 
     /**
      * 专场标识

+ 1 - 1
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/dto/OrderListResDTO.java

@@ -140,7 +140,7 @@ public class OrderListResDTO {
     /**
      * 创建时间
      */
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date createTime;
 
     /**

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

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.utils.CollectionUtils;
+import com.sckw.core.utils.FileUtils;
 import com.sckw.product.dao.KwpGoodsImageMapper;
 import com.sckw.product.model.KwpGoodsImage;
 import lombok.RequiredArgsConstructor;
@@ -47,6 +48,8 @@ public class KwpGoodsImageService {
         wrapper.eq(KwpGoodsImage::getGoodsId, goodsId).eq(KwpGoodsImage::getDelFlag, Global.NO)
                 .orderByAsc(KwpGoodsImage::getSort);
         List<KwpGoodsImage> list = kwpGoodsImageMapper.selectList(wrapper);
+        //为每张图片地址加上域名前缀
+        list.forEach(e -> e.setImage(FileUtils.splice(e.getImage())));
         return CollectionUtils.emptyIfNull(list);
     }
 

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

@@ -591,7 +591,8 @@ public class KwpGoodsService {
         List<GoodsImages> images = param.getImages();
         if (CollectionUtils.isNotEmpty(images)) {
             for (GoodsImages e : images) {
-                if (StringUtils.isBlank(e.getImage())) {
+                String imagePath = FileUtils.replaceAll(e.getImage());
+                if (StringUtils.isBlank(imagePath)) {
                     return "商品图片地址不能为空!";
                 }
                 if (Objects.isNull(e.getSort())) {

+ 3 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/model/KwsRole.java

@@ -3,6 +3,7 @@ package com.sckw.system.model;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.sckw.core.model.base.BaseModel;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 
 /**
  * 岗位角色
@@ -10,6 +11,7 @@ import lombok.Data;
  * @author zk
  * @date 2023-05-31
  */
+@EqualsAndHashCode(callSuper = true)
 @Data
 public class KwsRole extends BaseModel {
 
@@ -26,6 +28,7 @@ public class KwsRole extends BaseModel {
     /**
      * 管理员标识 1-管理员 2-其它
      */
+    @TableField("admin_flag")
     private Integer adminFlag;
 
 }

+ 10 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/KwtWaybillOrderController.java

@@ -17,6 +17,8 @@ import com.sckw.core.web.response.BaseResult;
 import com.sckw.core.web.response.HttpResult;
 import com.sckw.core.web.response.result.PageDataResult;
 import com.sckw.excel.utils.ExcelUtil;
+import com.sckw.transport.api.model.param.AddLogisticOrderParam;
+import com.sckw.transport.dubbo.TransportServiceImpl;
 import com.sckw.transport.model.dto.*;
 import com.sckw.transport.model.param.WaybillOrderNodeReq;
 import com.sckw.transport.model.param.WaybillOrderReq;
@@ -54,6 +56,8 @@ public class KwtWaybillOrderController {
     KwtWaybillOrderService waybillOrderService;
     @Autowired
     KwtWaybillOrderV1Service waybillOrderV1Service;
+    @Autowired
+    TransportServiceImpl transportService;
 
     /**
      * @param params 请求参数
@@ -707,5 +711,11 @@ public class KwtWaybillOrderController {
         return BaseResult.success(waybillOrderV1Service.queryWaybillOrderNodeTimeline(req));
     }
 
+    @PostMapping("/addtr")
+    @Operation(summary = "查询运单节点轨迹时间线")
+    public void addtr(@RequestBody AddLogisticOrderParam req) {
+         transportService.addLogisticOrder(req);
+    }
+
 
 }

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtLogisticsOrder.java

@@ -25,7 +25,7 @@ public class KwtLogisticsOrder implements Serializable {
     /**
      * 主键
      */
-    @TableId(type = IdType.NONE)
+    @TableId(type = IdType.ASSIGN_UUID)
     private Long id;
 
     /**

+ 2 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtLogisticsOrderAddress.java

@@ -1,8 +1,6 @@
 package com.sckw.transport.model;
 
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableLogic;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -19,6 +17,7 @@ public class KwtLogisticsOrderAddress implements Serializable {
     /**
      * 主键
      */
+    @TableId(type = IdType.ASSIGN_UUID)
     private Long id;
 
     /**

+ 3 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtLogisticsOrderContract.java

@@ -1,5 +1,7 @@
 package com.sckw.transport.model;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
@@ -18,6 +20,7 @@ public class KwtLogisticsOrderContract implements Serializable {
     /**
      * 主键
      */
+    @TableId(type = IdType.ASSIGN_UUID)
     private Long id;
 
     /**

+ 3 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtLogisticsOrderGoods.java

@@ -1,5 +1,7 @@
 package com.sckw.transport.model;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
@@ -19,6 +21,7 @@ public class KwtLogisticsOrderGoods implements Serializable {
     /**
      * 主键
      */
+    @TableId(type = IdType.ASSIGN_UUID)
     private Long id;
 
     /**

+ 2 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtLogisticsOrderUnit.java

@@ -1,8 +1,6 @@
 package com.sckw.transport.model;
 
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableLogic;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
 import lombok.Data;
 import lombok.experimental.Accessors;
 
@@ -22,6 +20,7 @@ public class KwtLogisticsOrderUnit implements Serializable {
     /**
      * 主键
      */
+    @TableId(type = IdType.ASSIGN_UUID)
     private Long id;
 
     /**

+ 57 - 6
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtAcceptCarriageOrderService.java

@@ -62,7 +62,6 @@ import com.sckw.transport.model.vo.execlVo.AcceptCarriageOrderExcelVo;
 import com.sckw.transport.repository.*;
 import io.seata.spring.annotation.GlobalTransactional;
 import jakarta.annotation.Resource;
-import jakarta.validation.constraints.NotNull;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.MapUtils;
@@ -3186,6 +3185,7 @@ public class KwtAcceptCarriageOrderService {
         commonService.getRedisGenerateOrderNo();
         /**生成订单编号*/
         String lOrderNo = OrderGenerateSeqNoUtils.getSeqNo(RedisOrderGenerateEnum.LOGISTICS_ORDER, OrderRuleEnum.LOGISTICS_ORDER, "2", "0", "0");
+        log.info("生成物流订单编号:{}", lOrderNo);
         /**保存新建数据*/
 
         List<LogisticData> logisticInfo = orderDTO.getLogisticInfo();
@@ -3226,11 +3226,62 @@ public class KwtAcceptCarriageOrderService {
             setLogisticUnitInfo(orderDTO, x, lOrderId, savelogOrderUnitList);
 
         });
-        logisticsOrderRepository.saveBatch(saveLogisticsOrderList);
-        logisticsOrderAddressRepository.saveBatch(saveAddressList);
-        logisticsOrderGoodsRepository.saveBatch(savelogOrderGoodsList);
-        logisticsOrderContractRepository.saveBatch(saveContractList);
-        logisticsOrderUnitRepository.saveBatch(savelogOrderUnitList);
+        
+        // 批量保存并检查结果
+        saveBatch(saveLogisticsOrderList, saveAddressList, savelogOrderGoodsList, saveContractList, savelogOrderUnitList, lOrderNo);
+    }
+
+    private void saveBatch(List<KwtLogisticsOrder> saveLogisticsOrderList, List<KwtLogisticsOrderAddress> saveAddressList, List<KwtLogisticsOrderGoods> savelogOrderGoodsList, List<KwtLogisticsOrderContract> saveContractList, List<KwtLogisticsOrderUnit> savelogOrderUnitList, String lOrderNo) {
+        log.info("开始批量保存物流订单数据,订单数量:{},地址数量:{},商品数量:{},合同数量:{},单位数量:{}",
+                saveLogisticsOrderList.size(), saveAddressList.size(), savelogOrderGoodsList.size(),
+                saveContractList.size(), savelogOrderUnitList.size());
+
+        try {
+            if (!saveLogisticsOrderList.isEmpty()) {
+                boolean result1 = logisticsOrderRepository.saveBatch(saveLogisticsOrderList);
+                log.info("物流订单保存结果:{}", result1);
+                if (!result1) {
+                    throw new BusinessException("物流订单保存失败");
+                }
+            }
+
+            if (!saveAddressList.isEmpty()) {
+                boolean result2 = logisticsOrderAddressRepository.saveBatch(saveAddressList);
+                log.info("物流订单地址保存结果:{}", result2);
+                if (!result2) {
+                    throw new BusinessException("物流订单地址保存失败");
+                }
+            }
+
+            if (!savelogOrderGoodsList.isEmpty()) {
+                boolean result3 = logisticsOrderGoodsRepository.saveBatch(savelogOrderGoodsList);
+                log.info("物流订单商品保存结果:{}", result3);
+                if (!result3) {
+                    throw new BusinessException("物流订单商品保存失败");
+                }
+            }
+
+            if (!saveContractList.isEmpty()) {
+                boolean result4 = logisticsOrderContractRepository.saveBatch(saveContractList);
+                log.info("物流订单合同保存结果:{}", result4);
+                if (!result4) {
+                    throw new BusinessException("物流订单合同保存失败");
+                }
+            }
+
+            if (!savelogOrderUnitList.isEmpty()) {
+                boolean result5 = logisticsOrderUnitRepository.saveBatch(savelogOrderUnitList);
+                log.info("物流订单单位保存结果:{}", result5);
+                if (!result5) {
+                    throw new BusinessException("物流订单单位保存失败");
+                }
+            }
+
+            log.info("物流订单批量保存成功,订单编号:{}", lOrderNo);
+        } catch (Exception e) {
+            log.error("物流订单批量保存失败,订单编号:{},错误信息:{}", lOrderNo, e.getMessage(), e);
+            throw new BusinessException("物流订单保存失败:" + e.getMessage());
+        }
     }
 
     private void setLogisticUnitInfo(AddLogisticOrderDTO orderDTO, LogisticData x, Long lOrderId, List<KwtLogisticsOrderUnit> savelogOrderUnitList) {