diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/schedule/HaokaUpdateOrderSchedule.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/schedule/HaokaUpdateOrderSchedule.java index 11b07a4df9..9c925c8d91 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/schedule/HaokaUpdateOrderSchedule.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/schedule/HaokaUpdateOrderSchedule.java @@ -71,17 +71,17 @@ public class HaokaUpdateOrderSchedule { int pageSize = 100; Long total = 100L; + // 需要更新的订单过滤 todo:从本地查询出需要从上游同步状态的订单 + // pageReqVO.setStatus(Lists.asList(1)); // 已经完成/取消/删除的订单,不需要再从上游同步,这里过滤掉 + while ((long) pageNo * pageSize < total) { pageNo += 1; pageReqVO.setPageNo(pageNo); pageReqVO.setPageSize(pageSize); - - // 需要更新的订单过滤 todo - // pageReqVO.setStatus(Lists.asList(1)); - PageResult ordersPage = ordersService.getOrdersPage(pageReqVO); total = ordersPage.getTotal(); for (OrdersDO ordersDO : ordersPage.getList()) { + // 开始从上游同步订单状态,解析,并且更新本地订单状态 updateOrderInfo(ordersDO); } } @@ -104,9 +104,34 @@ public class HaokaUpdateOrderSchedule { } + // 开始从上游同步订单状态,解析,并且更新本地订单状态 private void updateOrderInfo(final OrdersDO ordersDO) { log.info("更新前--:{}", JSON.toJSONString(ordersDO)); + // 查询上游的订单结果 ApiDealResp updateOrderInfo = apiDealStrategyService.getUpdateOrderInfo(ordersDO); + // 上游是否支持查询接口 :比如联通不支持查询接口,走消息队列 + if (updateOrderInfo.getIsSupport()){ + return; + } + // 上游黑名单 + if (updateOrderInfo.getIsBlack()){ + + } + // 查询成功? + if (!updateOrderInfo.getSuccess()){ + // 不成功原因 + String msg = updateOrderInfo.getMsg(); + } + + // 查询结果 + OrderApiQueryResp data = updateOrderInfo.getData(); + + // 订单状态 + String orderStatusCode = data.getOrderStatusCode(); + + // 订单状态描述 + String orderStatusDesc = data.getSupplierOrderStatusDesc(); + // todo 上游更新 ordersService.updateById(ordersDO); log.info("更新后--:{}", JSON.toJSONString(ordersDO)); diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/ApiDealServiceImpl.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/ApiDealServiceImpl.java index cac14e8ecf..9a769f1ff1 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/ApiDealServiceImpl.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/ApiDealServiceImpl.java @@ -46,7 +46,7 @@ public class ApiDealServiceImpl implements ApiDealStrategyService { logVO.setHaokaSuperiorApiId(param.getSuperiorApiId()); try { lock.lock(1, TimeUnit.SECONDS); - OnSaleProductPreOrderRespVO onSaleProductPreOrder = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO onSaleProductPreOrder = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (onSaleProductPreOrder == null) { String msg = "关联上级产品不存在"; logVO.setSuccess(false); @@ -97,7 +97,7 @@ public class ApiDealServiceImpl implements ApiDealStrategyService { logVO.setHaokaSuperiorApiId(param.getSuperiorApiId()); Boolean isSupport = true; try { - OnSaleProductPreOrderRespVO onSaleProductPreOrder = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO onSaleProductPreOrder = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (onSaleProductPreOrder == null) { String msg = "关联上级产品不存在"; logVO.setSuccess(false); diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/models/OrderApiQueryResp.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/models/OrderApiQueryResp.java index 4c5476c6ae..52e717dc41 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/models/OrderApiQueryResp.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/models/OrderApiQueryResp.java @@ -31,6 +31,9 @@ public class OrderApiQueryResp extends BaseDO { */ private String supplierOrderStatusDesc; + /** + * 订单状态 + */ private String orderStatusCode; /** diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/GuangZhouDxApiDealStrategy.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/GuangZhouDxApiDealStrategy.java index 7c0ce8a4f5..fad64d057e 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/GuangZhouDxApiDealStrategy.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/GuangZhouDxApiDealStrategy.java @@ -46,7 +46,7 @@ public class GuangZhouDxApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp createOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiCreateParam param) throws Exception { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } @@ -114,7 +114,7 @@ public class GuangZhouDxApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp queryOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiQueryParam param) throws Exception { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HaiNanDxApiDealStrategy.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HaiNanDxApiDealStrategy.java index decd7ff159..df5bddefb4 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HaiNanDxApiDealStrategy.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HaiNanDxApiDealStrategy.java @@ -49,7 +49,7 @@ public class HaiNanDxApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp createOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiCreateParam param) { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } @@ -130,7 +130,7 @@ public class HaiNanDxApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp queryOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiQueryParam param) { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HuNanDxApiDealStrategy.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HuNanDxApiDealStrategy.java index 087c1f6f59..d19cb9968d 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HuNanDxApiDealStrategy.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/HuNanDxApiDealStrategy.java @@ -49,7 +49,7 @@ public class HuNanDxApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp createOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiCreateParam param) throws Exception { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } @@ -219,7 +219,7 @@ public class HuNanDxApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp queryOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiQueryParam param) { logVO.setHaokaSuperiorApiId(param.getSuperiorApiId()); - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/LianTongApiDealStrategy.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/LianTongApiDealStrategy.java index ccaf556f4e..fd8b9a3463 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/LianTongApiDealStrategy.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/api/strategy/LianTongApiDealStrategy.java @@ -51,7 +51,7 @@ public class LianTongApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp createOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiCreateParam param) { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } @@ -244,7 +244,7 @@ public class LianTongApiDealStrategy implements ApiDealStrategy { @Override public ApiDealResp queryOrder(final SuperiorApiLogSaveReqVO logVO, OrderApiQueryParam param) { - OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getProductId()); + OnSaleProductPreOrderRespVO preProduct = onSaleProductService.getOnSaleProductPreOrder(param.getOnSaleProductId()); if (preProduct == null) { return ApiDealResp.failed("商品下架或者不存在"); } diff --git a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/orders/OrdersServiceImpl.java b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/orders/OrdersServiceImpl.java index f31f278377..c7ee5716ef 100644 --- a/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/orders/OrdersServiceImpl.java +++ b/yudao-module-haoka/yudao-module-haoka-biz/src/main/java/cn/iocoder/yudao/module/haoka/service/orders/OrdersServiceImpl.java @@ -114,21 +114,19 @@ public class OrdersServiceImpl extends ServiceImpl imple orders.setSuperiorApiId(onSaleProductPreOrder.getSuperiorApiRespVO().getId()); ordersMapper.insert(orders); - OrderApiCreateParam param = new OrderApiCreateParam(); - BeanUtils.copyProperties(orders, param); - // apiDealStrategyService.createOrder(param); + // 创建后需要发送短信 - OrdersDO ordersDO = ordersMapper.selectById(orders.getId()); + // OrdersDO ordersDO = ordersMapper.selectById(orders.getId()); smsTaskService.sendSMS( - ordersDO.getStatus(), - ordersDO.getId(), - ordersDO.getSource(), - ordersDO.getOnSaleProductId(), - ordersDO.getRefundStatus(), - ordersDO.getCallStatus(), - ordersDO.getAddressMobile(), - ordersDO + orders.getStatus(), + orders.getId(), + orders.getSource(), + orders.getOnSaleProductId(), + orders.getRefundStatus(), + orders.getCallStatus(), + orders.getAddressMobile(), + orders ); // 返回 return orders.getId();