|
|
@@ -156,6 +156,9 @@ public class TradeOrderInfoServiceImpl implements TradeOrderInfoService {
|
|
|
if (Objects.isNull(entrustAmount) || Objects.isNull(actualLoadAmount) || Objects.isNull(actualUnloadAmount)) {
|
|
|
return HttpResult.error("任务量或装卸量不能为空!");
|
|
|
}
|
|
|
+ if (Objects.isNull(param.getIsAllComplete())) {
|
|
|
+ return HttpResult.error("物流订单是否已全部完结不能为空!");
|
|
|
+ }
|
|
|
String lockKey = String.format(RedisConstant.TORDER_UPDATE_AMOUNT_KEY, id);
|
|
|
if (Boolean.FALSE.equals(RedissonUtils.tryLock(lockKey, 10L, 30L))) {
|
|
|
return HttpResult.error("业务繁忙,请稍后再试!");
|
|
|
@@ -176,14 +179,13 @@ public class TradeOrderInfoServiceImpl implements TradeOrderInfoService {
|
|
|
totalActualAmount = Objects.isNull(order.getActualAmount()) ? actualUnloadAmount : order.getActualAmount().add(actualUnloadAmount);
|
|
|
}
|
|
|
order.setEntrustAmount(totalEntrustAmount).setActualAmount(totalActualAmount).setUpdateBy(param.getUpdateBy());
|
|
|
- //todo 自动完结订单规则缺少
|
|
|
-// if (amount.compareTo(addActualAmount) == 0) {
|
|
|
-// order.setStatus(Integer.valueOf(DictEnum.TORDER_STATUS_5.getValue()));
|
|
|
-// KwoTradeOrderTrack track = new KwoTradeOrderTrack();
|
|
|
-// track.setTOrderId(order.getId()).setTOrderNo(order.getTOrderNo()).setStatus(order.getStatus())
|
|
|
-// .setCreateBy(updateBy).setUpdateBy(updateBy);
|
|
|
-// kwoTradeOrderTrackService.insert(track);
|
|
|
-// }
|
|
|
+ if (param.getIsAllComplete() && totalActualAmount.compareTo(order.getAmount()) >= 0) {
|
|
|
+ order.setStatus(Integer.valueOf(DictEnum.TORDER_STATUS_5.getValue()));
|
|
|
+ KwoTradeOrderTrack track = new KwoTradeOrderTrack();
|
|
|
+ track.setTOrderId(order.getId()).setTOrderNo(order.getTOrderNo()).setStatus(order.getStatus())
|
|
|
+ .setCreateBy(updateBy).setUpdateBy(updateBy);
|
|
|
+ kwoTradeOrderTrackService.insert(track);
|
|
|
+ }
|
|
|
kwoTradeOrderService.updateById(order);
|
|
|
//更新mongodb
|
|
|
SckwTradeOrder updateParam = new SckwTradeOrder();
|