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