From 47e03d0aa72b6bd1c62c4ecff0c25289890f7abc Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 12 Feb 2025 10:49:17 +0800 Subject: [PATCH] refactor(mall): 根据系统配置选择不同的物流服务接口 - 在 AdminMallOrderService 和 CommonService 中添加了根据系统配置选择物流服务接口的逻辑 - 新增了 SENDER_STATE 数据字典项,用于控制使用测试环境还是生产环境的物流服务 - 根据系统配置,选择不同的 ClientParamEnum 实例来调用 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java | 29 ++++++++++++++++++++++++++--- 1 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java index 2f6a777..34fa13b 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java @@ -3,6 +3,7 @@ import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.common.enumerates.*; +import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.ValidateEntityUtils; import cc.mrbird.febs.mall.dto.*; import cc.mrbird.febs.mall.entity.*; @@ -546,8 +547,18 @@ kdCreateWaybillOrderPdfNotifyReq.setItems(items); kdCreateWaybillOrderPdfNotifyReq.setPiece(1); - KdCreateWaybillOrderPdfNotifyRsp pdfOrder = ClientParamService.getInstance(ClientParamEnum.TEST.name()).createPdfOrder(kdCreateWaybillOrderPdfNotifyReq); - + String state = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.SENDER_ADDRESS.getType(), + DataDictionaryEnum.SENDER_ADDRESS.getCode() + ).getValue(); + KdCreateWaybillOrderPdfNotifyRsp pdfOrder; + if(state.equals("0")){ + pdfOrder = ClientParamService.getInstance(ClientParamEnum.TEST.name()).createPdfOrder(kdCreateWaybillOrderPdfNotifyReq); + }else if(state.equals("1")){ + pdfOrder = ClientParamService.getInstance(ClientParamEnum.PRD.name()).createPdfOrder(kdCreateWaybillOrderPdfNotifyReq); + }else{ + throw new FebsException("一键发货失败,系统配置异常"); + } ValidateEntityUtils.ensureEqual(pdfOrder.getResult(), true, "一键发货失败,创建PDF电子面单异常"); //更新发货状态 mallOrderInfoMapper.updateOrderStateAndDeliveryState( @@ -575,7 +586,19 @@ KdCancelOrderNotifyReq kdCancelOrderNotifyReq = new KdCancelOrderNotifyReq(); kdCancelOrderNotifyReq.setTxLogisticId(mallOrderInfo.getOrderNo()); kdCancelOrderNotifyReq.setReason("Don't want to buy"); - KdCancelOrderNotifyRsp kdCancelOrderNotifyRsp = ClientParamService.getInstance(ClientParamEnum.TEST.name()).cancelOrder(kdCancelOrderNotifyReq); + + String state = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.SENDER_ADDRESS.getType(), + DataDictionaryEnum.SENDER_ADDRESS.getCode() + ).getValue(); + KdCancelOrderNotifyRsp kdCancelOrderNotifyRsp; + if(state.equals("0")){ + kdCancelOrderNotifyRsp = ClientParamService.getInstance(ClientParamEnum.TEST.name()).cancelOrder(kdCancelOrderNotifyReq); + }else if(state.equals("1")){ + kdCancelOrderNotifyRsp = ClientParamService.getInstance(ClientParamEnum.PRD.name()).cancelOrder(kdCancelOrderNotifyReq); + }else{ + throw new FebsException("取消发货失败,系统配置异常"); + } ValidateEntityUtils.ensureEqual(kdCancelOrderNotifyRsp.getResult(), true, "取消发货失败"); //更新发货状态 -- Gitblit v1.9.1