Commit 9bb231eb7338f7dc4649d0f8ef219de43f1ed259
1 parent
456b54d4
【代码优化】商城:查询 SF 物流,需要 CustomerName 的情况
Showing
3 changed files
with
9 additions
and
25 deletions
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/framework/delivery/core/client/dto/ExpressTrackQueryReqDTO.java
| 1 | 1 | package cn.iocoder.yudao.module.trade.framework.delivery.core.client.dto; |
| 2 | 2 | |
| 3 | -import cn.hutool.core.util.StrUtil; | |
| 4 | 3 | import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryExpressDO; |
| 5 | 4 | import lombok.Data; |
| 6 | 5 | |
| ... | ... | @@ -34,21 +33,4 @@ public class ExpressTrackQueryReqDTO { |
| 34 | 33 | */ |
| 35 | 34 | private String customerName; |
| 36 | 35 | |
| 37 | - public ExpressTrackQueryReqDTO setExpressCode(String expressCode) { | |
| 38 | - this.expressCode = expressCode; | |
| 39 | - updateCustomerName(); | |
| 40 | - return this; // 返回实体对象 | |
| 41 | - } | |
| 42 | - | |
| 43 | - public ExpressTrackQueryReqDTO setPhone(String phone) { | |
| 44 | - this.phone = phone; | |
| 45 | - updateCustomerName(); | |
| 46 | - return this; // 返回实体对象 | |
| 47 | - } | |
| 48 | - | |
| 49 | - private void updateCustomerName() { | |
| 50 | - if ("SF".equals(expressCode) && phone != null && phone.length() >= 4) { | |
| 51 | - this.customerName = phone.substring(phone.length() - 4); | |
| 52 | - } | |
| 53 | - } | |
| 54 | 36 | } | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/framework/delivery/core/client/impl/kdniao/KdNiaoExpressClient.java
| ... | ... | @@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.trade.framework.delivery.core.client.impl.kdniao |
| 3 | 3 | import cn.hutool.core.codec.Base64; |
| 4 | 4 | import cn.hutool.core.collection.CollUtil; |
| 5 | 5 | import cn.hutool.core.net.URLEncodeUtil; |
| 6 | +import cn.hutool.core.util.ObjUtil; | |
| 7 | +import cn.hutool.core.util.StrUtil; | |
| 6 | 8 | import cn.hutool.crypto.digest.DigestUtil; |
| 7 | 9 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; |
| 8 | 10 | import cn.iocoder.yudao.module.trade.framework.delivery.config.TradeExpressProperties; |
| ... | ... | @@ -60,6 +62,11 @@ public class KdNiaoExpressClient implements ExpressClient { |
| 60 | 62 | // 发起请求 |
| 61 | 63 | KdNiaoExpressQueryReqDTO requestDTO = INSTANCE.convert(reqDTO) |
| 62 | 64 | .setExpressCode(reqDTO.getExpressCode().toUpperCase()); |
| 65 | + if (ObjUtil.equal(requestDTO.getExpressCode(), "SF") | |
| 66 | + && StrUtil.isBlank(reqDTO.getCustomerName()) | |
| 67 | + && StrUtil.length(reqDTO.getPhone()) >= 4) { | |
| 68 | + requestDTO.setCustomerName(StrUtil.subSufByLength(reqDTO.getPhone(), 4)); | |
| 69 | + } | |
| 63 | 70 | KdNiaoExpressQueryRespDTO respDTO = httpRequest(REAL_TIME_QUERY_URL, REAL_TIME_FREE_REQ_TYPE, |
| 64 | 71 | requestDTO, KdNiaoExpressQueryRespDTO.class); |
| 65 | 72 | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderQueryServiceImpl.java
| ... | ... | @@ -217,13 +217,8 @@ public class TradeOrderQueryServiceImpl implements TradeOrderQueryService { |
| 217 | 217 | @Cacheable(cacheNames = RedisKeyConstants.EXPRESS_TRACK, key = "#code + '-' + #logisticsNo + '-' + #receiverMobile", |
| 218 | 218 | condition = "#result != null && #result.length() > 0") |
| 219 | 219 | public List<ExpressTrackRespDTO> getExpressTrackList(String code, String logisticsNo, String receiverMobile) { |
| 220 | - return expressClientFactory.getDefaultExpressClient() | |
| 221 | - .getExpressTrackList( | |
| 222 | - new ExpressTrackQueryReqDTO() | |
| 223 | - .setExpressCode(code) | |
| 224 | - .setLogisticsNo(logisticsNo) | |
| 225 | - .setPhone(receiverMobile) | |
| 226 | - ); | |
| 220 | + return expressClientFactory.getDefaultExpressClient().getExpressTrackList(new ExpressTrackQueryReqDTO() | |
| 221 | + .setExpressCode(code).setLogisticsNo(logisticsNo).setPhone(receiverMobile)); | |
| 227 | 222 | } |
| 228 | 223 | |
| 229 | 224 | // =================== Order Item =================== | ... | ... |