提交 52ba5636 authored 作者: huyufan's avatar huyufan

增加取消订单、货单调用积分MQ

上级 ce2c6177
......@@ -84,7 +84,7 @@ public enum PerformanceResultEnum implements ResultEnum {
SETTLEMENT_NO_FOUND(1401, "结算单不存在"),
MONEY_NO_SAME(1501, "货主提现金额和平台支付金额不一致"),
ORDER_CHILD_WEIGHT_NOT_EQ(1601, "磅单吨数和运单拉运吨数不一致")
ORDER_GOODS_WEIGHT_NOT_HAVE(1601, "货单可拉运吨数不足")
;
private final int code;
......
......@@ -13,6 +13,7 @@ import com.clx.performance.extranal.user.DriverService;
import com.clx.performance.model.OrderChild;
import com.clx.performance.model.OrderGoods;
import com.clx.performance.param.pc.OrderCancelParam;
import com.clx.performance.service.IntegralMqService;
import com.clx.performance.service.OrderChildService;
import com.clx.performance.service.OrderGoodsTruckBindService;
import com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService;
......@@ -54,11 +55,15 @@ public class OrderCancelComponent implements InitializingBean {
public static Map<Integer, String> statusCodeMap = new HashMap<>();
private final IntegralMqService integralMqService;
public void ownerProcess(OrderCancelParam param) {
String orderNo = param.getOrderNo();
List<OrderGoods> orderGoodsList = null;
Integer orderStatusCode = OrderEnum.Status.CANCELED.getCode();
LocalDateTime now = LocalDateTime.now();
List<String> childNoList = new LinkedList<>();
switch (param.getCancelType()) {
case 1: //单纯取消订单
log.info("1:货主单纯取消订单");
......@@ -110,7 +115,6 @@ public class OrderCancelComponent implements InitializingBean {
List<OrderChild> orderChildren = orderChildDao.selectResidueWeight(orderNo, OrderChildEnum.Status.ARRIVE_SEND.getCode());
log.info("执行货主取消未拉运+未到达货源地吨数,当前运单个数" + orderChildren.size());
List<String> childNoList = new LinkedList<>();
for (OrderChild orderChild : orderChildren) {
log.info("取消的运单:{}", JSONUtil.parse(orderChild));
//释放车辆
......@@ -169,7 +173,9 @@ public class OrderCancelComponent implements InitializingBean {
if (!orderFeign.updateOrderStatusByOrderNo(orderNo, orderStatusCode).succeed()) {
throw new ServiceSystemException(PerformanceResultEnum.HTTP_ERROR, "货主取消订单失败,原因:远程调用取消订单失败");
}
for (String childNo : childNoList) {
integralMqService.orderChildFinish(childNo);
}
}
......@@ -269,6 +275,7 @@ public class OrderCancelComponent implements InitializingBean {
}
@Override
public void afterPropertiesSet() throws Exception {
statusCodeMap.put(OrderEnum.Status.QUOTATION_CONFIRMED.getCode(), OrderEnum.Status.QUOTATION_CONFIRMED.getName());
......
......@@ -95,11 +95,6 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
BigDecimal dif = param.getLoadNet().subtract(orderChild.getLoadNet());
if (dif.compareTo(BigDecimal.ZERO) != 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_WEIGHT_NOT_EQ);
}
Integer type = OrderChildLogEnum.Type.POUND_AUDIT.getCode();
if(Objects.equals(param.getStatus(), OrderChildPoundAuditEnum.Status.REJECT.getCode())){
type = OrderChildLogEnum.Type.POUND_AUDIT_REJECT.getCode();
......@@ -144,11 +139,18 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
* 装车补偿
*/
private void updateOrderGoodsAmountLoad(OrderGoods orderGoods, BigDecimal dif){
if (dif.compareTo(BigDecimal.ZERO) == 0){return;}
int i = dif.compareTo(BigDecimal.ZERO);
if (i == 0){
return;
} else if (i > 0) {
if (orderGoods.getResidueTransportWeight().compareTo(dif) < 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_GOODS_WEIGHT_NOT_HAVE);
}
}
int count = orderChildDao.countValidByOrderGoodsNo(orderGoods.getOrderGoodsNo())-1;
Integer status = orderGoods.getOrderGoodsStatus();
Integer status;
if (count == 0){
status = OrderGoodsStatusEnum.Status.PAYING.getCode();
}
......
......@@ -932,10 +932,7 @@ public class OrderChildServiceImpl implements OrderChildService {
}
BigDecimal dif = param.getLoadNet().subtract(orderChild.getWeight());
if (dif.compareTo(BigDecimal.ZERO) != 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_WEIGHT_NOT_EQ);
}
orderChild.setLoadRough(param.getLoadRough());
orderChild.setLoadTare(param.getLoadTare());
orderChild.setLoadNet(param.getLoadNet());
......
......@@ -102,6 +102,8 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
private OrderCancelComponent orderCancelComponent;
private final IntegralMqService integralMqService;
@Override
public OrderGoodsVO getOrderGoodsInfoByOrderGoodsNoForPC(String orderGoodsNo) {
OrderGoodsVO orderGoodsVO = orderGoodsDao.getOrderGoodsInfoByOrderGoodsNoForPC(orderGoodsNo).map(orderGoodsStruct::convert).get();
......@@ -613,6 +615,9 @@ public class OrderGoodsServiceImpl implements OrderGoodsService {
orderFeign.orderCancelReason(orderCancelReasonParam);
for (String childNo : childNoList) {
integralMqService.orderChildFinish(childNo);
}
orderGoodsLogService.saveLog(orderGoodsNo, loginUserInfo.getUserNo(), loginUserInfo.getUserName(), OrderGoodsLogsEnum.Type.CANCEL.getName(), "");
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论