diff --git a/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/dto/MerchantStatisticsDTO.java b/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/dto/MerchantStatisticsDTO.java index d1ad2df46..2b84490e0 100644 --- a/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/dto/MerchantStatisticsDTO.java +++ b/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/dto/MerchantStatisticsDTO.java @@ -23,4 +23,6 @@ public class MerchantStatisticsDTO implements Serializable { private List orderInfoIds; + private Long balanceOrderId; + } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/mq/NodeDataPushListener.java b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/mq/NodeDataPushListener.java index 7495af8ed..7ac2392fd 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/mq/NodeDataPushListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/mq/NodeDataPushListener.java @@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.EnumUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; @@ -12,6 +13,7 @@ import com.logpm.factorydata.feign.IFactoryDataClient; import com.logpm.factorydata.olo.enums.FactoryNodeEnums; import com.logpm.factorydata.olo.enums.NodeMappingEnums; import com.logpm.factorydata.olo.enums.NodeNeedEnums; +import com.logpm.factorydata.olo.pros.OldProperties; import com.logpm.factorydata.vo.PushData; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -40,6 +42,7 @@ import java.util.stream.Collectors; public class NodeDataPushListener { private final IFactoryDataClient factoryDataClient; + private final OldProperties oldProperties; @RabbitListener(bindings = @QueueBinding( value = @Queue(name = FactoryDataConstants.Mq.Queues.OLO_NODE_DATA_PUSH, durable = "true"), @@ -87,7 +90,15 @@ public class NodeDataPushListener { } js.set("snList", snArray); log.info("推送节点数据:{}", js.toString()); -// HttpUtil.post("", js.toString()); + if (StrUtil.isNotEmpty(oldProperties.getPushNodeUrl())) { + try { + String post = HttpUtil.post(oldProperties.getPushNodeUrl(), js.toString()); + log.info("推送结果:{}", post); + } catch (Exception e) { + e.printStackTrace(); + log.error("推送节点数据错误:{}", e); + } + } } } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/pros/OldProperties.java b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/pros/OldProperties.java new file mode 100644 index 000000000..9d414cf8b --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/pros/OldProperties.java @@ -0,0 +1,19 @@ +package com.logpm.factorydata.olo.pros; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; + +/** + * 老系统配置 + * @author zhaoqiaobo + * @Date 2024/5/29 + **/ +@Data +@ConfigurationProperties(prefix = "old") +public class OldProperties { + /** + * 推送节点数据到来系统的 url + */ + private String pushNodeUrl; + +} diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java index 73e879cd1..a51563664 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java @@ -188,7 +188,7 @@ public class ZbomFactoryOrderListener { packageInfoService.saveBatch(packageInfoEntities); } // 处理暂存单 - if(zbFactoryProperties.isAdvance()){ + if(zbFactoryProperties.getIsAdvance()){ receiptService.buildAdvance(zbReceiptDTO, packageCode); } } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomNodeDataPushListener.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomNodeDataPushListener.java index 1bdd1e641..8b8f58d25 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomNodeDataPushListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomNodeDataPushListener.java @@ -139,7 +139,7 @@ public class ZbomNodeDataPushListener { String key = nodeConfirmParam.getDepartCode() + nodeConfirmParam.getPlatformOrderCode(); String body = JSONUtil.toJsonStr(nodeConfirmParam); String result = null; - if (zbProperties.isEnable()) { + if (zbProperties.getEnable()) { result = ZbomUtil.pushZbomSystem(zbProperties, body, ZbomConstants.Method.ROUTE_NODE_CONFIRM); } else { JSONObject jsonObject = new JSONObject(); @@ -214,6 +214,7 @@ public class ZbomNodeDataPushListener { Map noSignNumberMap, Map nodeOrderMap, List nodeConfirmLsit, Map sendMsgMap) { if (CollUtil.isNotEmpty(orders)) { + Integer nodeDelay = zbProperties.getDelayedTime() * 60 * 1000; for (NodeDataDTO nodeData : orders) { ZbomNodeEnums zbNode = ZbomNodeMappingEnums.getZbomByNodeAndStatus(workNodeEnums); String departCode = nodeData.getDepartCode(); @@ -242,7 +243,6 @@ public class ZbomNodeDataPushListener { if (ObjectUtil.isNotEmpty(nodeOrderEntity.getPushNode()) && !StrUtil.contains(nodeOrderEntity.getPushNode(), ZbomNodeEnums.DELIVERY_ARRIVAL.getIndex().toString())) { // 第一次签收,节点改为送货抵达 currentNode = ZbomNodeEnums.DELIVERY_ARRIVAL; - Integer nodeDelay = 30 * 60 * 1000; buildSendMag(sendMsgMap, nodeData, key, paramDTO, node, nodeDelay); } else { // 查询当前未签收的数量与当前签收数量比较,如果未签收数较大,则是部分签收 @@ -267,20 +267,19 @@ public class ZbomNodeDataPushListener { } } Integer index = currentNode.getIndex(); - Integer startNodeDelay = 15 * 60 * 1000; // 历史必须节点需要补发 if (ObjectUtil.isEmpty(nodeOrderEntity.getPushNode())) { // 历史不存在,当前节点不是第一个节点,则需要补发第一个节点 if (!ObjectUtil.equal(index, ZbomNodeEnums.STATION_DEPART.getIndex())) { currentNode = ZbomNodeEnums.STATION_DEPART; - buildSendMag(sendMsgMap, nodeData, key, paramDTO, node, startNodeDelay); + buildSendMag(sendMsgMap, nodeData, key, paramDTO, node, nodeDelay); } } else { // 历史节点存在,但是历史节点中不包含第一个节点,且当前节点不是第一个节点,则需要补发第一个节点 if (!ObjectUtil.equal(index, ZbomNodeEnums.STATION_DEPART.getIndex()) && !StrUtil.contains(nodeOrderEntity.getPushNode(), ZbomNodeEnums.STATION_DEPART.getIndex().toString())) { currentNode = ZbomNodeEnums.STATION_DEPART; - buildSendMag(sendMsgMap, nodeData, key, paramDTO, node, startNodeDelay); + buildSendMag(sendMsgMap, nodeData, key, paramDTO, node, nodeDelay); } } // 组装历史节点数据 diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/pros/ZbFactoryProperties.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/pros/ZbFactoryProperties.java index 4692f73cf..a45760756 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/pros/ZbFactoryProperties.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/pros/ZbFactoryProperties.java @@ -19,7 +19,17 @@ public class ZbFactoryProperties { private String customerid; private String secretkey; private String url; - private boolean isAdvance = false; - private boolean enable = true; + /** + * 签收延迟推送时间(分钟) + */ + private Integer delayedTime = 30; + /** + * 是否推送暂存单到新系统 + */ + private Boolean isAdvance = false; + /** + * 是否推送数据到志邦 + */ + private Boolean enable = true; } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java index a40475a47..5d67944a7 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java @@ -155,5 +155,30 @@ public class MerchantBalanceController { } } + @ResponseBody + @PostMapping("/findBalanceDetail") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "查询异常列表", notes = "传入merchantStatisticsDTO") + public R findBalanceDetail(@RequestBody MerchantStatisticsDTO merchantStatisticsDTO) { + String method = "############findBalanceDetail: "; + log.info(method+"请求参数{}",merchantStatisticsDTO); + try{ + + Long balanceOrderId = merchantStatisticsDTO.getBalanceOrderId(); + if(Objects.isNull(balanceOrderId)){ + log.warn(method+"请选择正确的结算单 balanceOrderId={}",balanceOrderId); + return R.fail(405,"请选择正确的结算单"); + } + + return balanceOrderInfoService.findBalanceDetail(balanceOrderId); + }catch (CustomerException e){ + log.error(e.message,e); + return R.fail(e.code,e.message); + }catch (Exception e){ + log.error(method+"系统异常",e); + return R.fail(500,"系统异常"); + } + } + } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java index 15bd8f331..46d550728 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java @@ -19,4 +19,7 @@ public interface IStatisticsBalanceOrderInfoService extends BaseService