提交 fd42bae6 authored 作者: 艾庆国's avatar 艾庆国

承运优化需求-装卸车

上级 20e62f33
...@@ -22,13 +22,14 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam { ...@@ -22,13 +22,14 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam {
private String childNo; private String childNo;
@ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46") @ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46")
@NotNull
private BigDecimal loadRough; private BigDecimal loadRough;
@ApiModelProperty(value = "装货皮重(单位吨)", example = "1.23") @ApiModelProperty(value = "装货皮重(单位吨)", example = "1.23")
@NotNull
private BigDecimal loadTare; private BigDecimal loadTare;
@ApiModelProperty(value = "装货净重(单位吨)", example = "1.23")
private BigDecimal loadNet;
@ApiModelProperty(value = "磅单图片列表") @ApiModelProperty(value = "磅单图片列表")
@NotEmpty(message = "请上传磅单照片") @NotEmpty(message = "请上传磅单照片")
private List<String> loadImageList; private List<String> loadImageList;
......
...@@ -7,7 +7,6 @@ import lombok.Setter; ...@@ -7,7 +7,6 @@ import lombok.Setter;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List; import java.util.List;
...@@ -21,13 +20,14 @@ public class OrderChildLoadParam extends PositionParam { ...@@ -21,13 +20,14 @@ public class OrderChildLoadParam extends PositionParam {
private String childNo; private String childNo;
@ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46") @ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46")
@NotNull
private BigDecimal loadRough; private BigDecimal loadRough;
@ApiModelProperty(value = "装货皮重(单位吨)", example = "1.23") @ApiModelProperty(value = "装货皮重(单位吨)", example = "1.23")
@NotNull
private BigDecimal loadTare; private BigDecimal loadTare;
@ApiModelProperty(value = "装货净重(单位吨)", example = "1.23")
private BigDecimal loadNet;
@ApiModelProperty(value = "磅单图片列表") @ApiModelProperty(value = "磅单图片列表")
@NotEmpty(message = "请上传磅单照片") @NotEmpty(message = "请上传磅单照片")
private List<String> loadImageList; private List<String> loadImageList;
......
...@@ -25,6 +25,9 @@ public class OrderChildUnloadParam extends PositionParam { ...@@ -25,6 +25,9 @@ public class OrderChildUnloadParam extends PositionParam {
@ApiModelProperty(value = "卸货皮重(单位吨)", example = "1.23") @ApiModelProperty(value = "卸货皮重(单位吨)", example = "1.23")
private BigDecimal unloadTare; private BigDecimal unloadTare;
@ApiModelProperty(value = "卸货净重(单位吨)", example = "1.23")
private BigDecimal unloadNet;
@ApiModelProperty(value = "磅单图片列表") @ApiModelProperty(value = "磅单图片列表")
@NotEmpty(message = "请上传磅单照片") @NotEmpty(message = "请上传磅单照片")
private List<String> unloadImageList; private List<String> unloadImageList;
......
...@@ -871,14 +871,24 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -871,14 +871,24 @@ public class OrderChildServiceImpl implements OrderChildService {
public void updateLoad(OrderChildLoadParam param) { public void updateLoad(OrderChildLoadParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
BigDecimal loadNet = param.getLoadRough().subtract(param.getLoadTare());
String childNo = param.getChildNo(); String childNo = param.getChildNo();
BigDecimal loadNet;
if (param.getLoadNet() == null) {
loadNet = param.getLoadRough().subtract(param.getLoadTare());
if (loadNet.compareTo(new BigDecimal(99)) > 0) { if (loadNet.compareTo(new BigDecimal(99)) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR);
} }
if (param.getLoadTare().compareTo(param.getLoadRough()) > 0) { if (param.getLoadTare().compareTo(param.getLoadRough()) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH);
} }
}else {
loadNet = param.getLoadNet();
param.setLoadRough(null);
param.setLoadTare(null);
}
OrderChild orderChild = orderChildDao.getByChildNo(childNo).orElseThrow( OrderChild orderChild = orderChildDao.getByChildNo(childNo).orElseThrow(
PerformanceResultEnum.ORDER_CHILD_NO_FOUND); PerformanceResultEnum.ORDER_CHILD_NO_FOUND);
if (Objects.equals(orderChild.getDriverUserNo(), userNo)) { if (Objects.equals(orderChild.getDriverUserNo(), userNo)) {
...@@ -917,8 +927,7 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -917,8 +927,7 @@ public class OrderChildServiceImpl implements OrderChildService {
if (orderChild.getLoadTime() == null && if (orderChild.getLoadTime() == null &&
Objects.equals(orderChild.getStatus(), OrderChildEnum.Status.ARRIVE_SEND.getCode())) { Objects.equals(orderChild.getStatus(), OrderChildEnum.Status.ARRIVE_SEND.getCode())) {
//计算司机保证金 //计算司机保证金
BigDecimal net = param.getLoadRough().subtract(param.getLoadTare()); PaymentDTO paymentDTO = getPaymentDTO(loadNet, orderChild);
PaymentDTO paymentDTO = getPaymentDTO(net, orderChild);
if (Objects.nonNull(paymentDTO.getPlatformServiceFeeNew()) && if (Objects.nonNull(paymentDTO.getPlatformServiceFeeNew()) &&
paymentDTO.getPlatformServiceFeeNew().compareTo(BigDecimal.ZERO) != 0) { paymentDTO.getPlatformServiceFeeNew().compareTo(BigDecimal.ZERO) != 0) {
orderChild.setPlatformServiceFee(paymentDTO.getPlatformServiceFeeNew()); orderChild.setPlatformServiceFee(paymentDTO.getPlatformServiceFeeNew());
...@@ -935,8 +944,7 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -935,8 +944,7 @@ public class OrderChildServiceImpl implements OrderChildService {
} }
} else { } else {
//计算司机保证金 //计算司机保证金
BigDecimal net =param.getLoadRough().subtract(param.getLoadTare()); PaymentDTO paymentDTO = getPaymentDTO(loadNet, orderChild);
PaymentDTO paymentDTO = getPaymentDTO(net, orderChild);
if (Objects.nonNull(paymentDTO.getPlatformServiceFeeNew()) && if (Objects.nonNull(paymentDTO.getPlatformServiceFeeNew()) &&
paymentDTO.getPlatformServiceFeeNew().compareTo(BigDecimal.ZERO) != 0) { paymentDTO.getPlatformServiceFeeNew().compareTo(BigDecimal.ZERO) != 0) {
orderChild.setPlatformServiceFee(paymentDTO.getPlatformServiceFeeNew()); orderChild.setPlatformServiceFee(paymentDTO.getPlatformServiceFeeNew());
...@@ -995,12 +1003,11 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -995,12 +1003,11 @@ public class OrderChildServiceImpl implements OrderChildService {
private void updateLoadFirst(OrderChildLoadParam param, OrderChild orderChild, OrderGoods orderGoods) { private void updateLoadFirst(OrderChildLoadParam param, OrderChild orderChild, OrderGoods orderGoods) {
String childNo = param.getChildNo(); String childNo = param.getChildNo();
BigDecimal loadNet = param.getLoadRough().subtract(param.getLoadTare()); BigDecimal loadNet;
if (loadNet.compareTo(new BigDecimal(99)) > 0) { if (param.getLoadNet() == null) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); loadNet = param.getLoadRough().subtract(param.getLoadTare());
} }else {
if (param.getLoadTare().compareTo(param.getLoadRough()) > 0) { loadNet = param.getLoadNet();
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH);
} }
// // 装车时间验证 // // 装车时间验证
...@@ -1048,12 +1055,11 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1048,12 +1055,11 @@ public class OrderChildServiceImpl implements OrderChildService {
private void updateReload(OrderChildLoadParam param, OrderChild orderChild, OrderGoods orderGoods) { private void updateReload(OrderChildLoadParam param, OrderChild orderChild, OrderGoods orderGoods) {
String childNo = param.getChildNo(); String childNo = param.getChildNo();
log.info("装车毛重:{}, 装车皮重:{}", param.getLoadRough(), param.getLoadTare()); log.info("装车毛重:{}, 装车皮重:{}", param.getLoadRough(), param.getLoadTare());
BigDecimal loadNet = param.getLoadRough().subtract(param.getLoadTare()); BigDecimal loadNet;
if (loadNet.compareTo(new BigDecimal(99)) > 0) { if (param.getLoadNet() == null) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); loadNet = param.getLoadRough().subtract(param.getLoadTare());
} }else {
if (param.getLoadTare().compareTo(param.getLoadRough()) > 0) { loadNet = param.getLoadNet();
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH);
} }
List<OrderChildImage> imageList = new ArrayList<>(); List<OrderChildImage> imageList = new ArrayList<>();
...@@ -1108,6 +1114,22 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1108,6 +1114,22 @@ public class OrderChildServiceImpl implements OrderChildService {
// throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_UNLOAD_WEIGHT_ERROR); // throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_UNLOAD_WEIGHT_ERROR);
// } // }
BigDecimal unLoadNet;
if (param.getUnloadNet() == null) {
unLoadNet = param.getUnloadRough().subtract(param.getUnloadTare());
if (unLoadNet.compareTo(new BigDecimal(99)) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR);
}
if (param.getUnloadTare().compareTo(param.getUnloadRough()) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH);
}
}
else {
unLoadNet = param.getUnloadNet();
param.setUnloadRough(null);
param.setUnloadTare(null);
}
//交货时间不可早于到达目的地时间 //交货时间不可早于到达目的地时间
LocalDateTime unloadTime = StringUtils.isBlank(param.getUnloadTime()) ? null : covertStringToDefaultLocalDateTime(param.getUnloadTime()); LocalDateTime unloadTime = StringUtils.isBlank(param.getUnloadTime()) ? null : covertStringToDefaultLocalDateTime(param.getUnloadTime());
if (unloadTime!=null && unloadTime.isBefore(orderChild.getArriveReceiveTime())) { if (unloadTime!=null && unloadTime.isBefore(orderChild.getArriveReceiveTime())) {
...@@ -1184,12 +1206,13 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1184,12 +1206,13 @@ public class OrderChildServiceImpl implements OrderChildService {
private void updateUnloadFirst(OrderChildUnloadParam param, OrderChild orderChild) { private void updateUnloadFirst(OrderChildUnloadParam param, OrderChild orderChild) {
String childNo = param.getChildNo(); String childNo = param.getChildNo();
BigDecimal loadNet = param.getUnloadRough().subtract(param.getUnloadTare());
if (loadNet.compareTo(new BigDecimal(99)) > 0) { BigDecimal unLoadNet;
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); if (param.getUnloadNet() == null) {
unLoadNet = param.getUnloadRough().subtract(param.getUnloadTare());
} }
if (param.getUnloadTare().compareTo(param.getUnloadRough()) > 0) { else {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH); unLoadNet = param.getUnloadNet();
} }
// // 装车时间验证 // // 装车时间验证
...@@ -1215,7 +1238,7 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1215,7 +1238,7 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setUnloadRough(param.getUnloadRough()); orderChild.setUnloadRough(param.getUnloadRough());
orderChild.setUnloadTare(param.getUnloadTare()); orderChild.setUnloadTare(param.getUnloadTare());
orderChild.setUnloadNet(loadNet); orderChild.setUnloadNet(unLoadNet);
orderChild.setUnloadTime(StringUtils.isBlank(param.getUnloadTime())?LocalDateTime.now():covertStringToDefaultLocalDateTime(param.getUnloadTime())); orderChild.setUnloadTime(StringUtils.isBlank(param.getUnloadTime())?LocalDateTime.now():covertStringToDefaultLocalDateTime(param.getUnloadTime()));
orderChild.setWeight(orderChildWeightCalc(orderChild)); orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setStatus(OrderChildEnum.Status.UNLOAD.getCode()); orderChild.setStatus(OrderChildEnum.Status.UNLOAD.getCode());
...@@ -1254,13 +1277,14 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1254,13 +1277,14 @@ public class OrderChildServiceImpl implements OrderChildService {
private void updateReUnload(OrderChildUnloadParam param, OrderChild orderChild) { private void updateReUnload(OrderChildUnloadParam param, OrderChild orderChild) {
String childNo = param.getChildNo(); String childNo = param.getChildNo();
BigDecimal loadNet = orderChild.getUnloadRough().subtract(orderChild.getUnloadTare()); BigDecimal unLoadNet;
if (loadNet.compareTo(new BigDecimal(99)) > 0) { if (param.getUnloadNet() == null) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); unLoadNet = param.getUnloadRough().subtract(param.getUnloadTare());
} }
if (param.getUnloadTare().compareTo(param.getUnloadRough()) > 0) { else {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH); unLoadNet = param.getUnloadNet();
} }
// 审核中 // 审核中
if (Objects.equals(orderChild.getPoundStatus(), OrderChildPoundAuditEnum.Status.AUDIT.getCode())) { if (Objects.equals(orderChild.getPoundStatus(), OrderChildPoundAuditEnum.Status.AUDIT.getCode())) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_POUND_AUDIT); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_POUND_AUDIT);
...@@ -1277,7 +1301,7 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1277,7 +1301,7 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setUnloadRough(param.getUnloadRough()); orderChild.setUnloadRough(param.getUnloadRough());
orderChild.setUnloadTare(param.getUnloadTare()); orderChild.setUnloadTare(param.getUnloadTare());
orderChild.setUnloadNet(loadNet); orderChild.setUnloadNet(unLoadNet);
orderChild.setUnloadTime(StringUtils.isBlank(param.getUnloadTime())?LocalDateTime.now():covertStringToDefaultLocalDateTime(param.getUnloadTime())); orderChild.setUnloadTime(StringUtils.isBlank(param.getUnloadTime())?LocalDateTime.now():covertStringToDefaultLocalDateTime(param.getUnloadTime()));
orderChild.setWeight(orderChildWeightCalc(orderChild)); orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setPoundStatus(OrderChildPoundAuditEnum.Status.AUDIT.getCode()); orderChild.setPoundStatus(OrderChildPoundAuditEnum.Status.AUDIT.getCode());
...@@ -1304,21 +1328,38 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1304,21 +1328,38 @@ public class OrderChildServiceImpl implements OrderChildService {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo(); UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo(); Long userNo = loginUserInfo.getUserNo();
String childNo = param.getChildNo(); String childNo = param.getChildNo();
BigDecimal loadNet = param.getLoadRough().subtract(param.getLoadTare());
BigDecimal loadNet;
if (param.getLoadNet() == null) {
loadNet = param.getLoadRough().subtract(param.getLoadTare());
if (loadNet.compareTo(new BigDecimal(99)) > 0) { if (loadNet.compareTo(new BigDecimal(99)) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR);
} }
if (param.getLoadTare().compareTo(param.getLoadRough()) > 0) { if (param.getLoadTare().compareTo(param.getLoadRough()) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH);
} }
BigDecimal unLoadNet = param.getUnloadRough().subtract(param.getUnloadTare()); }else {
loadNet = param.getLoadNet();
param.setLoadRough(null);
param.setLoadTare(null);
}
BigDecimal unLoadNet;
if (param.getUnloadNet() == null) {
unLoadNet = param.getUnloadRough().subtract(param.getUnloadTare());
if (unLoadNet.compareTo(new BigDecimal(99)) > 0) { if (unLoadNet.compareTo(new BigDecimal(99)) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_LOAD_NET_ERROR);
} }
if (param.getUnloadTare().compareTo(param.getUnloadRough()) > 0) { if (param.getUnloadTare().compareTo(param.getUnloadRough()) > 0) {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_TRACE_GT_ROUGH);
} }
}
else {
unLoadNet = param.getUnloadNet();
param.setUnloadRough(null);
param.setUnloadTare(null);
}
OrderChild orderChild = orderChildDao.getByChildNo(childNo).orElseThrow( OrderChild orderChild = orderChildDao.getByChildNo(childNo).orElseThrow(
PerformanceResultEnum.ORDER_CHILD_NO_FOUND); PerformanceResultEnum.ORDER_CHILD_NO_FOUND);
...@@ -1415,7 +1456,7 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -1415,7 +1456,7 @@ public class OrderChildServiceImpl implements OrderChildService {
audit.setLoadTare(orderChild.getLoadTare()); audit.setLoadTare(orderChild.getLoadTare());
//计算司机保证金 //计算司机保证金
BigDecimal net =param.getLoadRough().subtract(param.getLoadTare()); BigDecimal net = loadNet;
PaymentDTO paymentDTO = getPaymentDTO(net, orderChild); PaymentDTO paymentDTO = getPaymentDTO(net, orderChild);
if (Objects.nonNull(paymentDTO.getPlatformServiceFeeNew()) && if (Objects.nonNull(paymentDTO.getPlatformServiceFeeNew()) &&
paymentDTO.getPlatformServiceFeeNew().compareTo(BigDecimal.ZERO) != 0) { paymentDTO.getPlatformServiceFeeNew().compareTo(BigDecimal.ZERO) != 0) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论