瀏覽代碼

feat: 增加上门取件结束时间;修改京东请求响应报文日志;

hanchaolong 1 周之前
父節點
當前提交
e1d2e6b790

+ 1 - 1
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/controller/BizAddressBookController.java

@@ -23,7 +23,7 @@ import com.ruoyi.common.core.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.web.page.TableDataInfo;
 
 /**
- * 地址簿管理Controller
+ * PC-地址簿管理
  * 
  * @author RuiJing
  * @date 2026-01-29

+ 1 - 1
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/controller/BizWaybillOrderController.java

@@ -27,7 +27,7 @@ import com.ruoyi.common.core.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.web.page.TableDataInfo;
 
 /**
- * 运单管理Controller
+ * PC-运单管理
  * 
  * @author RuiJing
  * @date 2026-01-29

+ 11 - 6
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/domain/BizWaybillOrder.java

@@ -105,23 +105,28 @@ public class BizWaybillOrder extends BaseEntity
     @Excel(name = "取件类型")
     private Integer pickupType;
 
-    /** 上门取件时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "上门取件时间", width = 30, dateFormat = "yyyy-MM-dd")
+    /** 上门取件开始时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "上门取件开始时间", width = 30, dateFormat = "yyyy-MM-dd")
     private Date sendStartTime;
 
+    /** 上门取件结束时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "上门取件结束时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date sendEndTime;
+
     /** 揽收时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @Excel(name = "揽收时间", width = 30, dateFormat = "yyyy-MM-dd")
     private Date pickupTime;
 
     /** 派送时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @Excel(name = "派送时间", width = 30, dateFormat = "yyyy-MM-dd")
     private Date deliveryTime;
 
     /** 签收时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @Excel(name = "签收时间", width = 30, dateFormat = "yyyy-MM-dd")
     private Date signTime;
 

+ 1 - 1
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/service/impl/BizWaybillOrderServiceImpl.java

@@ -78,7 +78,7 @@ public class BizWaybillOrderServiceImpl implements IBizWaybillOrderService
         JSONObject jsonObject= logisticsOrderService.precheckOrder(bizWaybillOrder);
         if(!jsonObject.getBooleanValue("success")){
             throw new ServiceException("下单前置校验未通过! 原因:"+jsonObject.getString("msg"));
-          }
+        }
         JSONObject orderObject= logisticsOrderService.createOrder(bizWaybillOrder);
         if(!orderObject.getBooleanValue("success")){
             throw new ServiceException("下单失败! 原因:"+orderObject.getString("msg"));

+ 44 - 21
jd-logistics-modules/jd-logistics-system/src/main/java/com/ruoyi/logistics/service/impl/JDLogisticsService.java

@@ -71,9 +71,12 @@ public class JDLogisticsService  implements LogisticsService {
             receiverContact.setMobile(bizWaybillOrder.getReceiverPhone());
             receiverContact.setFullAddress(bizWaybillOrder.getReceiverProvince() + bizWaybillOrder.getReceiverCity() + bizWaybillOrder.getReceiverCounty() + bizWaybillOrder.getReceiverAddress());
 
+            //订单信息
             CommonCreateOrderRequest requestDTO = new  CommonCreateOrderRequest();
-            requestDTO.setOrderOrigin(1);
+            requestDTO.setOrderOrigin(getOrderOrigin(bizWaybillOrder.getProductCode()));
             requestDTO.setCustomerCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE));
+            requestDTO.setPickupStartTime(bizWaybillOrder.getSendStartTime().getTime());
+            requestDTO.setPickupEndTime(bizWaybillOrder.getSendStartTime().getTime());
 
             CommonProductInfo productInfo = new CommonProductInfo();
             productInfo.setProductCode(bizWaybillOrder.getProductCode());
@@ -88,13 +91,18 @@ public class JDLogisticsService  implements LogisticsService {
             LopPlugin lopPlugin = OAuth2PluginFactory.produceLopPlugin(jdExpressConfig.getAppKey(), jdExpressConfig.getAppSecret(), jdExpressConfig.getAccessToken());
             request.addLopPlugin(lopPlugin);
 
-            log.info("京东开放平台订单预校验接口,请求参数:{}", request);
+            log.info("京东开放平台订单预校验接口,请求参数:{}", JSON.toJSONString(request));
             EcapV1OrdersPrecheckLopResponse response = client.execute(request);
-            log.info("京东开放平台订单预校验接口,响应结果:{}", response);
+            log.info("京东开放平台订单预校验接口,响应结果:{}", JSON.toJSONString(response));
 
             if (response.getCode().equals("0")) {
-                result.put("success", true);
-                result.put("msg", "");
+                if (response.getResult().getCode() == 0) {
+                    result.put("success", true);
+                    result.put("msg", "");
+                } else {
+                    result.put("success", false);
+                    result.put("msg", "京东开放平台订单预校验!失败原因:" + response.getResult().getMsg());
+                }
             } else {
                 result.put("success", false);
                 result.put("msg", "京东开放平台订单预校验!失败原因:" + response.getMsg());
@@ -132,8 +140,8 @@ public class JDLogisticsService  implements LogisticsService {
             requestDTO.setOrderOrigin(getOrderOrigin(bizWaybillOrder.getProductCode()));
             requestDTO.setCustomerCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE));
             requestDTO.setSettleType(3);
-            requestDTO.setPickupStartTime(bizWaybillOrder.getPickupTime().getTime());
-            requestDTO.setPickupEndTime(DateUtils.addHours(bizWaybillOrder.getPickupTime(), 1).getTime());
+            requestDTO.setPickupStartTime(bizWaybillOrder.getSendStartTime().getTime());
+            requestDTO.setPickupEndTime(bizWaybillOrder.getSendStartTime().getTime());
             requestDTO.setPickupType(1);
 
             //产品信息
@@ -162,15 +170,20 @@ public class JDLogisticsService  implements LogisticsService {
             LopPlugin lopPlugin = OAuth2PluginFactory.produceLopPlugin(jdExpressConfig.getAppKey(), jdExpressConfig.getAppSecret(), jdExpressConfig.getAccessToken());
             request.addLopPlugin(lopPlugin);
 
-            log.info("京东开放平台下单接口,请求参数:{}", request);
+            log.info("京东开放平台下单接口,请求参数:{}", JSON.toJSONString(request));
             EcapV1OrdersCreateLopResponse response = client.execute(request);
-            log.info("京东开放平台下单接口,响应结果:{}", response);
+            log.info("京东开放平台下单接口,响应结果:{}", JSON.toJSONString(response));
 
             if (response.getCode().equals("0")) {
-                result.put("success", true);
-                // 返回京东物流单号
-                result.put("data", response.getResult().getData().getWaybillCode());
-                result.put("msg", "");
+                if (response.getResult().getCode() == 0) {
+                    result.put("success", true);
+                    // 返回京东物流单号
+                    result.put("data", response.getResult().getData().getWaybillCode());
+                    result.put("msg", "");
+                } else {
+                    result.put("success", false);
+                    result.put("msg", "京东开放平台下单!失败原因:" + response.getResult().getMsg());
+                }
             } else {
                 result.put("success", false);
                 result.put("msg", "京东开放平台下单!失败原因:" + response.getMsg());
@@ -211,13 +224,18 @@ public class JDLogisticsService  implements LogisticsService {
             LopPlugin lopPlugin = OAuth2PluginFactory.produceLopPlugin(jdExpressConfig.getAppKey(), jdExpressConfig.getAppSecret(), jdExpressConfig.getAccessToken());
             request.addLopPlugin(lopPlugin);
 
-            log.info("京东开放平台取消订单接口,请求参数:{}", request);
+            log.info("京东开放平台取消订单接口,请求参数:{}", JSON.toJSONString(request));
             EcapV1OrdersCancelLopResponse response = client.execute(request);
-            log.info("京东开放平台取消订单接口,响应结果:{}", response);
+            log.info("京东开放平台取消订单接口,响应结果:{}", JSON.toJSONString(response));
 
             if (response.getCode().equals("0")) {
-                result.put("success", true);
-                result.put("msg", "");
+                if (response.getResult().getCode() == 0) {
+                    result.put("success", true);
+                    result.put("msg", "");
+                } else {
+                    result.put("success", false);
+                    result.put("msg", "京东开放平台取消订单!失败原因:" + response.getResult().getMsg());
+                }
             } else {
                 result.put("success", false);
                 result.put("msg", "京东开放平台取消订单!失败原因:" + response.getMsg());
@@ -288,13 +306,18 @@ public class JDLogisticsService  implements LogisticsService {
             LopPlugin lopPlugin = OAuth2PluginFactory.produceLopPlugin(jdExpressConfig.getAppKey(), jdExpressConfig.getAppSecret(), jdExpressConfig.getAccessToken());
             request.addLopPlugin(lopPlugin);
 
-            log.info("京东开放平台修改订单接口,请求参数:{}", request);
+            log.info("京东开放平台修改订单接口,请求参数:{}", JSON.toJSONString(request));
             EcapV1OrdersModifyLopResponse response = client.execute(request);
-            log.info("京东开放平台修改订单接口,响应结果:{}", response);
+            log.info("京东开放平台修改订单接口,响应结果:{}", JSON.toJSONString(response));
 
             if (response.getCode().equals("0")) {
-                result.put("success", true);
-                result.put("msg", "");
+                if (response.getResult().getCode() == 0) {
+                    result.put("success", true);
+                    result.put("msg", "");
+                } else {
+                    result.put("success", false);
+                    result.put("msg", "京东开放平台修改订单!失败原因:" + response.getResult().getMsg());
+                }
             } else {
                 result.put("success", false);
                 result.put("msg", "京东开放平台修改订单!失败原因:" + response.getMsg());

+ 2 - 1
jd-logistics-modules/jd-logistics-system/src/main/resources/mapper/logistics/BizAddressBookMapper.xml

@@ -42,6 +42,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="deptId != null "> and dept_id = #{deptId}</if>
             <if test="userId != null "> and user_id = #{userId}</if>
         </where>
+        order by default_flag desc
     </select>
     
     <select id="selectBizAddressBookByAddressId" parameterType="Long" resultMap="BizAddressBookResult">
@@ -124,6 +125,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </delete>
 
     <update id="updateBizAddressBookDefault" parameterType="Long">
-        update biz_address_book set default_flag = 0 where usre_id = #{userId} and default_flag = 1
+        update biz_address_book set default_flag = '0' where user_id = #{userId} and default_flag = 1
     </update>
 </mapper>

File diff suppressed because it is too large
+ 7 - 1
jd-logistics-modules/jd-logistics-system/src/main/resources/mapper/logistics/BizWaybillOrderMapper.xml