订单信息处理
This commit is contained in:
parent
76b19ef413
commit
9e2582e7af
|
|
@ -3,14 +3,14 @@ package cn.iocoder.yudao.module.haoka.service.orders;
|
|||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.iocoder.yudao.module.haoka.api.ApiFrom;
|
||||
import cn.iocoder.yudao.module.haoka.controller.admin.onsaleproduct.vo.OnSaleProductPreOrderRespVO;
|
||||
import cn.iocoder.yudao.module.haoka.controller.admin.orderoperatelog.vo.OrderOperateLogSaveReqVO;
|
||||
import cn.iocoder.yudao.module.haoka.controller.admin.product.vo.HaoKaProductRespVO;
|
||||
import cn.iocoder.yudao.module.haoka.dal.dataobject.onsaleproduct.OnSaleProductDO;
|
||||
import cn.iocoder.yudao.module.haoka.dal.dataobject.product.HaoKaProductDO;
|
||||
import cn.iocoder.yudao.module.haoka.service.api.models.ApiDealResp;
|
||||
import cn.iocoder.yudao.module.haoka.service.api.ApiDealStrategyService;
|
||||
import cn.iocoder.yudao.module.haoka.service.api.models.OrderApiCreateParam;
|
||||
import cn.iocoder.yudao.module.haoka.service.api.models.OrderApiCreateResp;
|
||||
import cn.iocoder.yudao.module.haoka.service.onsaleproduct.OnSaleProductService;
|
||||
import cn.iocoder.yudao.module.haoka.service.orderoperatelog.OrderOperateLogService;
|
||||
import cn.iocoder.yudao.module.haoka.service.smstask.SmsTaskService;
|
||||
import cn.iocoder.yudao.module.haoka.utils.SnowflakeId;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
|
@ -51,6 +51,8 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersMapper, OrdersDO> imple
|
|||
@Resource
|
||||
private SmsTaskService smsTaskService;
|
||||
|
||||
@Resource
|
||||
private OrderOperateLogService orderOperateLogService;
|
||||
/**
|
||||
* 重新提交订单
|
||||
* @param orderId
|
||||
|
|
@ -90,14 +92,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersMapper, OrdersDO> imple
|
|||
}
|
||||
|
||||
private OrdersDO handleOrderCreate(final OrdersDO ordersDO){
|
||||
OrderApiCreateParam param = new OrderApiCreateParam();
|
||||
BeanUtils.copyProperties(ordersDO,param);
|
||||
ApiDealResp<OrderApiCreateResp> strategyServiceOrder = apiDealStrategyService.createOrder(param);
|
||||
|
||||
// todo: 根据上游创建订单结果更新 ordersDO的信息 :状态,上游订单id等等.....
|
||||
//
|
||||
|
||||
return ordersDO;
|
||||
return createOrder(ordersDO);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -182,14 +177,29 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersMapper, OrdersDO> imple
|
|||
Long productId = updateObj.getProductId();
|
||||
OnSaleProductPreOrderRespVO onSaleProduct = onSaleProductService.getOnSaleProductPreOrder(productId);
|
||||
HaoKaProductRespVO haoKaProduct = onSaleProduct.getParentProduct();
|
||||
updateObj.setAutoType(haoKaProduct.getAutoType());
|
||||
Integer autoType = haoKaProduct.getAutoType();
|
||||
updateObj.setAutoType(autoType);
|
||||
|
||||
ordersMapper.updateById(updateObj);
|
||||
Long status = updateObj.getStatus();
|
||||
// 进入审核流程
|
||||
if (ObjectUtil.equals(status, 450)) {
|
||||
// 450 审核通过
|
||||
createOrder(updateObj);
|
||||
if("2".equals(autoType)){
|
||||
// 自动生产
|
||||
OrderOperateLogSaveReqVO logSaveReqVO = new OrderOperateLogSaveReqVO();
|
||||
logSaveReqVO.setOrderId(updateObj.getId());
|
||||
logSaveReqVO.setMsg("已自动提交到上游");
|
||||
logSaveReqVO.setMsgType("0");
|
||||
logSaveReqVO.setMsgSource("1");
|
||||
orderOperateLogService.createOrderOperateLog(logSaveReqVO);
|
||||
createOrder(updateObj);
|
||||
}else {
|
||||
// 手动生产
|
||||
updateObj.setStatus(450L);
|
||||
ordersMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -214,7 +224,7 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersMapper, OrdersDO> imple
|
|||
*
|
||||
* @param ordersDO
|
||||
*/
|
||||
private void createOrder(OrdersDO ordersDO) {
|
||||
private OrdersDO createOrder(OrdersDO ordersDO) {
|
||||
// 向上游提交订单
|
||||
OrderApiCreateParam param = new OrderApiCreateParam();
|
||||
BeanUtils.copyProperties(ordersDO, param);
|
||||
|
|
@ -227,21 +237,48 @@ public class OrdersServiceImpl extends ServiceImpl<OrdersMapper, OrdersDO> imple
|
|||
Boolean success = orderResponse.getSuccess();
|
||||
// 响应信息
|
||||
String msg = orderResponse.getMsg();
|
||||
|
||||
// 记录操作记录
|
||||
OrderOperateLogSaveReqVO logSaveReqVO = new OrderOperateLogSaveReqVO();
|
||||
logSaveReqVO.setOrderId(ordersDO.getId());
|
||||
if(success){
|
||||
// 订单创结果
|
||||
// 订单调用接口返回结果
|
||||
logSaveReqVO.setMsgSource("1");
|
||||
|
||||
// 订单创建结果
|
||||
OrderApiCreateResp orderData = orderResponse.getData();
|
||||
// ordersDO 记录 create param 和 响应信息
|
||||
ordersDO.setOrderCreateResponse(orderData.getOrderCreateResponse());
|
||||
// 上游订单ID
|
||||
String supplierOrderId = orderData.getSupplierOrderId();
|
||||
ordersDO.setUpstreamOrderId(supplierOrderId);
|
||||
// 记录成功操作记录 todo
|
||||
String orderStatusCode = orderData.getOrderStatusCode();
|
||||
// 上游订单状态
|
||||
ordersDO.setUpstreamOrderStatus(Integer.valueOf(orderStatusCode));
|
||||
// api记录成功操作记录
|
||||
if("0".equals(orderStatusCode)){
|
||||
// 提交异常
|
||||
logSaveReqVO.setMsgType("1");
|
||||
ordersDO.setStatus(-460L);
|
||||
logSaveReqVO.setMsg(orderData.getSupplierOrderStatusDesc());
|
||||
} else {
|
||||
// 成功 470
|
||||
// ordersDO 记录 create param 和 响应信息
|
||||
ordersDO.setOrderCreateResponse(orderData.getOrderCreateResponse());
|
||||
// 上游订单ID
|
||||
String supplierOrderId = orderData.getSupplierOrderId();
|
||||
ordersDO.setUpstreamOrderId(supplierOrderId);
|
||||
logSaveReqVO.setMsgType("0");
|
||||
ordersDO.setStatus(470L);
|
||||
logSaveReqVO.setMsg("提单成功");
|
||||
}
|
||||
}else {
|
||||
// 失败操作记录 todo
|
||||
// 系统失败操作记录
|
||||
logSaveReqVO.setMsg(msg);
|
||||
logSaveReqVO.setMsgSource("0");
|
||||
logSaveReqVO.setMsgType("1");
|
||||
// 产品定义存在问题
|
||||
ordersDO.setStatus(450L);
|
||||
}
|
||||
ordersDO.setOrderCreateResponse(msg);
|
||||
orderOperateLogService.createOrderOperateLog(logSaveReqVO);
|
||||
// 更新订单
|
||||
ordersMapper.updateById(ordersDO);
|
||||
return ordersDO;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
Loading…
Reference in New Issue