提交 efa3d49b authored 作者: 刘海泉's avatar 刘海泉

Merge remote-tracking branch 'origin/v22.7_order_delay_20240827' into test

......@@ -167,4 +167,8 @@ public interface PerformanceFeign {
Result<OrderExtractWeightVO> getOrderCanExtractWeight(@RequestParam("orderNo") String orderNo);
@GetMapping(value = {"clx-performance/feign/order/weight/getAlreadyWeight"})
Result<BigDecimal> getAlreadyWeight(@RequestParam("orderNo") String orderNo);
}
......@@ -65,4 +65,8 @@ public interface PerformanceSDKFeign {
@GetMapping(value = {"clx-performance/feign/sdk/getOrderResidueWeight"})
Result<BigDecimal> getOrderResidueWeight(@RequestParam(value = "orderNo") String orderNo);
@GetMapping(value = {"clx-performance/feign/sdk/getAlreadyWeight"})
Result<BigDecimal> getAlreadyWeight(@RequestParam(value = "orderNo") String orderNo);
}
......@@ -50,4 +50,13 @@ public class OrderWeightFeignController {
}
@ApiOperation(value = "查询订单已拉运量",notes = "<br>By:刘海泉")
@GetMapping("/getAlreadyWeight")
public Result<BigDecimal> getAlreadyWeight(@RequestParam("orderNo")
@NotBlank(message = "订单编号不能为空") String orderNo) {
return Result.ok(orderWeightService.getAlreadyWeight(orderNo));
}
}
......@@ -128,4 +128,11 @@ public class PerformanceSdkFeignController {
BigDecimal residueWeight = orderWeightService.getOrderResidueWeight(orderNo);
return Result.ok(residueWeight);
}
@ApiOperation(value = "查询订单已拉运量",notes = "<br>By:刘海泉")
@GetMapping("/getAlreadyWeight")
public Result<BigDecimal> getAlreadyWeight(@RequestParam("orderNo")
@NotBlank(message = "订单编号不能为空") String orderNo) {
return Result.ok(orderWeightService.getAlreadyWeight(orderNo));
}
}
......@@ -10,6 +10,10 @@ public interface OrderWeightService {
BigDecimal getOrderResidueWeight(String orderNo);
BigDecimal getAlreadyWeight(String orderNo);
BigDecimal getAlreadyWeight(BigDecimal transportWeight, String orderNo);
//计算货单真实的提取量
BigDecimal calcOrderGoodsRealExtractWeight(OrderGoods item);
}
......@@ -128,12 +128,27 @@ public class OrderWeightServiceImpl implements OrderWeightService {
public BigDecimal getOrderResidueWeight(String orderNo) {
FeignOrderInfoVO orderInfo = orderService.getOrderInfo(orderNo).orElseThrow(
PerformanceResultEnum.DATA_NOT_FIND);
return orderInfo.getTransportWeight().subtract(getAlreadyWeight(orderInfo.getTransportWeight(),orderNo));
}
@Override
public BigDecimal getAlreadyWeight(String orderNo) {
FeignOrderInfoVO orderInfo = orderService.getOrderInfo(orderNo).orElseThrow(
PerformanceResultEnum.DATA_NOT_FIND);
return getAlreadyWeight(orderInfo.getTransportWeight(),orderNo);
}
@Override
public BigDecimal getAlreadyWeight(BigDecimal transportWeight, String orderNo) {
BigDecimal alreadyWeight = BigDecimal.ZERO; //该订单下已经拉运的重量
List<OrderChild> orderChildList = orderChildDao.listByField(OrderChild::getOrderNo, orderNo);
if(CollectionUtils.isEmpty(orderChildList)){
return orderInfo.getTransportWeight();
return alreadyWeight;
}
BigDecimal alreadyWeight = BigDecimal.ZERO; //该订单下已经拉运的重量
for (OrderChild child : orderChildList) {
if(child.getStatus() > OrderChildEnum.Status.COMPLETE.getCode()){
......@@ -145,9 +160,10 @@ public class OrderWeightServiceImpl implements OrderWeightService {
alreadyWeight = alreadyWeight.add(child.getWeight());
}
}
return orderInfo.getTransportWeight().subtract(alreadyWeight);
return alreadyWeight;
}
//计算货单真实的提取量
@Override
public BigDecimal calcOrderGoodsRealExtractWeight(OrderGoods item){
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论