|
|
@@ -126,7 +126,8 @@ public class TradeOrderInfoServiceImpl implements TradeOrderInfoService {
|
|
|
if (!Objects.equals(String.valueOf(order.getStatus()), DictEnum.TORDER_STATUS_4.getValue())) {
|
|
|
return HttpResult.error("执行中的订单才可物流托运!");
|
|
|
}
|
|
|
- BigDecimal totalEntrustAmount = Objects.isNull(order.getEntrustAmount()) ? entrustAmount : entrustAmount.add(order.getEntrustAmount());
|
|
|
+ BigDecimal totalEntrustAmount = Objects.isNull(order.getEntrustAmount()) ?
|
|
|
+ entrustAmount : entrustAmount.add(order.getEntrustAmount());
|
|
|
if (order.getAmount().compareTo(totalEntrustAmount) < 0) {
|
|
|
return HttpResult.error("物流已委托总量不可大于订单总量!");
|
|
|
}
|
|
|
@@ -154,9 +155,9 @@ public class TradeOrderInfoServiceImpl implements TradeOrderInfoService {
|
|
|
if (Objects.isNull(actualLoadAmount) || Objects.isNull(actualUnloadAmount)) {
|
|
|
return HttpResult.error("装卸总量不能为空!");
|
|
|
}
|
|
|
- if (Objects.isNull(param.getIsAllComplete())) {
|
|
|
- return HttpResult.error("物流订单是否已全部完结不能为空!");
|
|
|
- }
|
|
|
+// if (Objects.isNull(param.getIsAllComplete())) {
|
|
|
+// return HttpResult.error("物流订单是否已全部完结不能为空!");
|
|
|
+// }
|
|
|
if (Objects.isNull(updateBy) || StringUtils.isBlank(updateByName)) {
|
|
|
return HttpResult.error("操作人信息不能为空!");
|
|
|
}
|
|
|
@@ -172,24 +173,28 @@ public class TradeOrderInfoServiceImpl implements TradeOrderInfoService {
|
|
|
if (!Objects.equals(String.valueOf(order.getStatus()), DictEnum.TORDER_STATUS_4.getValue())) {
|
|
|
return HttpResult.error("执行中的订单才可物流托运!");
|
|
|
}
|
|
|
- BigDecimal actualAmount = Objects.equals(order.getDeliveryType(), DictEnum.DELIVERY_TYPE_0.getValue()) ? actualLoadAmount : actualUnloadAmount;
|
|
|
- order.setActualAmount(actualAmount).setUpdateBy(param.getUpdateBy());
|
|
|
- if (param.getIsAllComplete() && actualAmount.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);
|
|
|
- //更新合同履约量
|
|
|
- KwoTradeOrderContract contract = kwoTradeOrderContractService.getByOrderId(order.getId());
|
|
|
- remoteContractService.updatePerformed(contract.getContractId(), actualAmount);
|
|
|
- }
|
|
|
+ BigDecimal actualAmount = Objects.isNull(order.getActualAmount()) ? BigDecimal.ZERO : order.getActualAmount();
|
|
|
+ BigDecimal addActualAmount = Objects.equals(order.getDeliveryType(), DictEnum.DELIVERY_TYPE_0.getValue())
|
|
|
+ ? actualLoadAmount : actualUnloadAmount;
|
|
|
+ BigDecimal totalActualAmount = actualAmount.add(addActualAmount);
|
|
|
+ order.setActualAmount(totalActualAmount).setUpdateBy(param.getUpdateBy());
|
|
|
+ //不走自然完结
|
|
|
+// if (param.getIsAllComplete() && actualAmount.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);
|
|
|
+// //更新合同履约量
|
|
|
+// KwoTradeOrderContract contract = kwoTradeOrderContractService.getByOrderId(order.getId());
|
|
|
+// remoteContractService.updatePerformed(contract.getContractId(), actualAmount);
|
|
|
+// }
|
|
|
kwoTradeOrderService.updateById(order);
|
|
|
//更新mongodb
|
|
|
SckwTradeOrder updateParam = new SckwTradeOrder();
|
|
|
- updateParam.setTOrderId(order.getId()).setActualAmount(actualAmount).setStatus(order.getStatus())
|
|
|
+ updateParam.setTOrderId(order.getId()).setActualAmount(totalActualAmount).setStatus(order.getStatus())
|
|
|
.setUpdateBy(param.getUpdateBy()).setUpdateByName(param.getUpdateByName()).setUpdateTime(new Date());
|
|
|
saveMongoDb(updateParam);
|
|
|
} finally {
|
|
|
@@ -274,16 +279,6 @@ public class TradeOrderInfoServiceImpl implements TradeOrderInfoService {
|
|
|
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public Boolean associateEnt(Long entId) {
|
|
|
- Set<Long> tOrderIds = tradeOrderUnitService.associateEntOrderId(entId, entId);
|
|
|
- if (CollectionUtils.isEmpty(tOrderIds)) {
|
|
|
- return Boolean.FALSE;
|
|
|
- }
|
|
|
- List<KwoTradeOrder> list = kwoTradeOrderService.associateEnt(tOrderIds);
|
|
|
- return CollectionUtils.isNotEmpty(list);
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
public Boolean associateEnt(Long firstEntId, Long secondEntId) {
|
|
|
Set<Long> tOrderIds = tradeOrderUnitService.associateEntOrderId(firstEntId, secondEntId);
|