提交 7c691a2e authored 作者: aiqingguo's avatar aiqingguo

Merge branch 'v6.4_transportation_20231110' into test

...@@ -27,8 +27,6 @@ public interface BreakContractDriverRecordService { ...@@ -27,8 +27,6 @@ public interface BreakContractDriverRecordService {
void saveDriverRecordOfArriveSendAddressTimeout(OrderChild orderChild, Long createBy, String createName); void saveDriverRecordOfArriveSendAddressTimeout(OrderChild orderChild, Long createBy, String createName);
void saveDriverRecordOfArriveSendAddress(OrderChild orderChild, Long createBy, String createName);
void saveDriverRecordOfArriveReceiveAddress(OrderChild orderChild, Long createBy, String createName); void saveDriverRecordOfArriveReceiveAddress(OrderChild orderChild, Long createBy, String createName);
......
...@@ -543,9 +543,6 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -543,9 +543,6 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.ARRIVE_SEND.getCode(), orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.ARRIVE_SEND.getCode(),
OrderChildLogEnum.Type.ARRIVE_SEND.getMsg(), loginUserInfo.getUserNo(), loginUserInfo.getUserName()); OrderChildLogEnum.Type.ARRIVE_SEND.getMsg(), loginUserInfo.getUserNo(), loginUserInfo.getUserName());
// 保存违约记录
breakContractDriverRecordService.saveDriverRecordOfArriveSendAddress(orderChild, loginUserInfo.getUserNo(), loginUserInfo.getUserName());
// 发送mq (到达货源地) // 发送mq (到达货源地)
orderChildMqService.orderChildArriveSendAddress(orderChild.getChildNo()); orderChildMqService.orderChildArriveSendAddress(orderChild.getChildNo());
......
...@@ -202,42 +202,6 @@ public class BreakContractDriverRecordServiceImpl implements BreakContractDrive ...@@ -202,42 +202,6 @@ public class BreakContractDriverRecordServiceImpl implements BreakContractDrive
breakContractMqService.driverRecordAdd(record.getId()); breakContractMqService.driverRecordAdd(record.getId());
} }
@Override
public void saveDriverRecordOfArriveSendAddress(OrderChild orderChild, Long createBy, String createName) {
OrderGoods orderGoods = orderGoodsDao.getByOrderGoodsNo(orderChild.getOrderGoodsNo()).orElseThrow(PerformanceResultEnum.ORDER_CHILD_NO_FOUND);
if (!orderChild.getArriveSendTime().isAfter(orderGoods.getLastArriveSendTime())) {return;}
BreakContractDriverRule rule = breakContractDriverRuleDao.getEntityByKey(1).orNull();
if (rule == null) {return;}
BreakContractDriverRuleVO breakContractDriverRuleVO = JSON.parseObject(rule.getRuleJson(), BreakContractDriverRuleVO.class);
// 费用计算
BigDecimal figure = arriveSendAddressFigureCalc(orderChild, orderGoods, breakContractDriverRuleVO);
BreakContractDriverRecord record = new BreakContractDriverRecord();
record.setTriggerType(BreakContractRecordEnum.TriggerType.SYSTEM.getCode());
record.setBreakContractPartyType(BreakContractRecordEnum.BreakContractPartyType.DRIVER.getCode());
record.setBreakNo(breakNoGenerate());
record.setFigure(figure);
record.setRemark("到达货源地超时");
record.setChildNo(orderChild.getChildNo());
record.setTruckNo(orderChild.getTruckNo());
record.setTruckOwnUserNo(orderChild.getTruckOwnUserNo());
record.setTruckOwnName(orderChild.getTruckOwnName());
record.setDriverUserNo(orderChild.getDriverUserNo());
record.setDriverName(orderChild.getDriverName());
record.setCreateBy(0L);
record.setCreateName("系统");
breakContractDriverRecordDao.saveEntity(record);
// 发送mq (违约记录新增)
breakContractMqService.driverRecordAdd(record.getId());
}
@Override @Override
public void saveDriverRecordOfArriveReceiveAddress(OrderChild orderChild, Long createBy, String createName) { public void saveDriverRecordOfArriveReceiveAddress(OrderChild orderChild, Long createBy, String createName) {
OrderGoods orderGoods = orderGoodsDao.getByOrderGoodsNo(orderChild.getOrderGoodsNo()).orElseThrow(PerformanceResultEnum.ORDER_CHILD_NO_FOUND); OrderGoods orderGoods = orderGoodsDao.getByOrderGoodsNo(orderChild.getOrderGoodsNo()).orElseThrow(PerformanceResultEnum.ORDER_CHILD_NO_FOUND);
...@@ -316,15 +280,7 @@ public class BreakContractDriverRecordServiceImpl implements BreakContractDrive ...@@ -316,15 +280,7 @@ public class BreakContractDriverRecordServiceImpl implements BreakContractDrive
return money.movePointRight(2); return money.movePointRight(2);
} }
/**
* 费用计算 (到达货源地超时)
*/
private BigDecimal arriveSendAddressFigureCalc(OrderChild orderChild, OrderGoods orderGoods, BreakContractDriverRuleVO rule){
long time = com.clx.performance.utils.LocalDateTimeUtils.betweenSecond(orderGoods.getLastArriveSendTime(), orderChild.getArriveSendTime());
BigDecimal money = BigDecimal.valueOf(time).divide(BigDecimal.valueOf(3600), 2, RoundingMode.HALF_UP).multiply(rule.getSendAddressRule().getFigurePerHour()).setScale(2, RoundingMode.HALF_UP);
return money.movePointRight(2);
}
/** /**
* 费用计算 (到达目的地超时) * 费用计算 (到达目的地超时)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论