提交 a0679811 authored 作者: huyufan's avatar huyufan

同步网络货运开票相关

上级 a1487a83
...@@ -33,7 +33,10 @@ public enum SettlementOwnerEnum { ...@@ -33,7 +33,10 @@ public enum SettlementOwnerEnum {
public enum InvoiceStatus { public enum InvoiceStatus {
INVOICED(1, "已开票"), INVOICED(1, "已开票"),
NOT_INVOICE(2, "未开票"), NOT_INVOICE(2, "未开票"),
NO_NEED_INVOICE(3, "无需开票"); NO_NEED_INVOICE(3, "无需开票"),
PART_INVOICE(4, "部分开票")
;
private final Integer code; private final Integer code;
private final String msg; private final String msg;
......
...@@ -66,6 +66,14 @@ public class SettlementOwnerDaoImpl extends BaseDaoImpl<SettlementOwnerMapper, S ...@@ -66,6 +66,14 @@ public class SettlementOwnerDaoImpl extends BaseDaoImpl<SettlementOwnerMapper, S
); );
} }
@Override
public boolean updateInvoiceStatusBySettlementNo(String settlementNo, Integer invoiceStatus) {
return update(lUdWrapper()
.eq(SettlementOwner::getSettlementNo, settlementNo)
.set(SettlementOwner::getInvoiceStatus, invoiceStatus)
);
}
@Override @Override
public boolean updateInvoiceStatusById(Integer id, Integer invoiceStatus){ public boolean updateInvoiceStatusById(Integer id, Integer invoiceStatus){
return update(lUdWrapper() return update(lUdWrapper()
......
...@@ -76,9 +76,10 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet ...@@ -76,9 +76,10 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet
} }
@Override @Override
public List<SettlementOwnerDetail> getBySettlementNoAndInvoiceType(String settlementNo, Integer invoiceType) { public List<SettlementOwnerDetail> getBySettlementNoAndInvoiceType(String settlementNo, Integer invoiceType, Integer invoiceStatus) {
return list(lQrWrapper().eq(SettlementOwnerDetail::getSettlementNo, settlementNo) return list(lQrWrapper().eq(SettlementOwnerDetail::getSettlementNo, settlementNo)
.eq(SettlementOwnerDetail::getInvoiceType, invoiceType) .eq(SettlementOwnerDetail::getInvoiceType, invoiceType)
.eq(SettlementOwnerDetail::getInvoiceStatus, invoiceStatus)
); );
} }
......
...@@ -22,6 +22,9 @@ public interface SettlementOwnerDao extends BaseDao<SettlementOwnerMapper, Settl ...@@ -22,6 +22,9 @@ public interface SettlementOwnerDao extends BaseDao<SettlementOwnerMapper, Settl
boolean updateStatusBySettlementNo(@Param("settlementNo")String settlementNo, @Param("status")Integer status); boolean updateStatusBySettlementNo(@Param("settlementNo")String settlementNo, @Param("status")Integer status);
boolean updateInvoiceStatusBySettlementNo(@Param("settlementNo")String settlementNo, @Param("status")Integer status);
boolean updateInvoiceStatusById(@Param("id")Integer id, @Param("invoiceStatus")Integer invoiceStatus); boolean updateInvoiceStatusById(@Param("id")Integer id, @Param("invoiceStatus")Integer invoiceStatus);
boolean updatePayment(SettlementOwner settlementOwner); boolean updatePayment(SettlementOwner settlementOwner);
......
...@@ -30,7 +30,7 @@ public interface SettlementOwnerDetailDao extends BaseDao<SettlementOwnerDetailM ...@@ -30,7 +30,7 @@ public interface SettlementOwnerDetailDao extends BaseDao<SettlementOwnerDetailM
Optional<SettlementOwnerDetail> getByChildNo(String childNo); Optional<SettlementOwnerDetail> getByChildNo(String childNo);
List<SettlementOwnerDetail> getBySettlementNo(String settlementNo); List<SettlementOwnerDetail> getBySettlementNo(String settlementNo);
List<SettlementOwnerDetail> getBySettlementNoAndInvoiceType(String settlementNo, Integer invoiceType); List<SettlementOwnerDetail> getBySettlementNoAndInvoiceType(String settlementNo, Integer invoiceType, Integer invoiceStatus);
IPage<SettlementOwnerDetail> pageOwnerSettlementOrderDetailList(PageOwnerSettlementOwnerDetailParam param); IPage<SettlementOwnerDetail> pageOwnerSettlementOrderDetailList(PageOwnerSettlementOwnerDetailParam param);
......
...@@ -331,10 +331,6 @@ public class TransportSyncServiceImpl implements TransportSyncService { ...@@ -331,10 +331,6 @@ public class TransportSyncServiceImpl implements TransportSyncService {
} }
public void generateRouteList(GdRouteDTO gdRouteDTO, ThirdOrderChildBrokerParam param) { public void generateRouteList(GdRouteDTO gdRouteDTO, ThirdOrderChildBrokerParam param) {
if ("13005382757".equals(param.getDriverInfoDTO().getMobile())) {
log.info("当前司机不需要获取轨迹");
return;
}
List<OrderChildTruckTraceDTO> list = new LinkedList<>(); List<OrderChildTruckTraceDTO> list = new LinkedList<>();
for (int i = 0; i < gdRouteDTO.getPosList().size(); i++) { for (int i = 0; i < gdRouteDTO.getPosList().size(); i++) {
if (i == 6) { if (i == 6) {
......
...@@ -141,8 +141,11 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -141,8 +141,11 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
if (!settlementDriverDetail.getInvoiceType().equals(SettlementOwnerEnum.InvoiceType.ONLINE.getCode())) { if (!settlementDriverDetail.getInvoiceType().equals(SettlementOwnerEnum.InvoiceType.ONLINE.getCode())) {
paySettlementDriver(settlementDriverDetail); paySettlementDriver(settlementDriverDetail);
} else { } else {
//插入同步网络货运待支付记录 if (settlementDriverDetail.getPrepayFreight().compareTo(BigDecimal.ZERO) > 0) {
childSyncTransportRecordService.addOrderChildSyncTransportRecord(settlementDriverDetail); settlementDriverDetail.setSettlementNo(settlementNo);
//插入同步网络货运待支付记录
childSyncTransportRecordService.addOrderChildSyncTransportRecord(settlementDriverDetail);
}
} }
// 更新结算单 // 更新结算单
......
...@@ -466,11 +466,12 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService { ...@@ -466,11 +466,12 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
finalPaymentStatus = SettlementOwnerDetailEnum.FinalPaymentStatus.NO_REQUIRE.getCode(); finalPaymentStatus = SettlementOwnerDetailEnum.FinalPaymentStatus.NO_REQUIRE.getCode();
} }
}else{ //网运单 }else{ //网运单
if(settlementOwner.getSettlementFreight().compareTo(BigDecimal.ZERO) > 0){ //结算金额>0的,结算单收款方付款确认后,更新状态为“是” if(settlementOwner.getPrepayFreight().compareTo(BigDecimal.ZERO) == 0){ //结算金额>0的,结算单收款方付款确认后,更新状态为“是”
finalPaymentStatus = SettlementOwnerDetailEnum.FinalPaymentStatus.YES.getCode(); finalPaymentStatus = SettlementOwnerDetailEnum.FinalPaymentStatus.YES.getCode();
}else if(settlementOwner.getSettlementFreight().compareTo(BigDecimal.ZERO) == 0){ //结算金额=0的,默认“无需支付”。
finalPaymentStatus = SettlementOwnerDetailEnum.FinalPaymentStatus.NO_REQUIRE.getCode();
} }
/* else if(settlementOwner.getSettlementFreight().compareTo(BigDecimal.ZERO) == 0){ //结算金额=0的,默认“无需支付”。
finalPaymentStatus = SettlementOwnerDetailEnum.FinalPaymentStatus.NO_REQUIRE.getCode();
}*/
} }
if(Objects.nonNull(finalPaymentStatus)){ if(Objects.nonNull(finalPaymentStatus)){
settlementOwnerDetailDao.updateFinalPaymentStatusBySettlementNo(settlementNo, finalPaymentStatus); settlementOwnerDetailDao.updateFinalPaymentStatusBySettlementNo(settlementNo, finalPaymentStatus);
...@@ -487,7 +488,7 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService { ...@@ -487,7 +488,7 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
List<OwnerSettlementSyncParam.SettlementItem> settlementList = new LinkedList<>(); List<OwnerSettlementSyncParam.SettlementItem> settlementList = new LinkedList<>();
param.setSettlementList(settlementList); param.setSettlementList(settlementList);
List<SettlementOwnerDetail> settlementOwnerDetailList = settlementOwnerDetailDao.getBySettlementNoAndInvoiceType(settlementNo, List<SettlementOwnerDetail> settlementOwnerDetailList = settlementOwnerDetailDao.getBySettlementNoAndInvoiceType(settlementNo,
SettlementDriverEnum.InvoiceType.ONLINE.getCode()); SettlementDriverEnum.InvoiceType.ONLINE.getCode(),SettlementOwnerEnum.InvoiceStatus.NOT_INVOICE.getCode());
for (SettlementOwnerDetail settlementOwnerDetail : settlementOwnerDetailList) { for (SettlementOwnerDetail settlementOwnerDetail : settlementOwnerDetailList) {
String childNo = settlementOwnerDetail.getChildNo(); String childNo = settlementOwnerDetail.getChildNo();
OwnerSettlementSyncParam.SettlementItem item = new OwnerSettlementSyncParam.SettlementItem(); OwnerSettlementSyncParam.SettlementItem item = new OwnerSettlementSyncParam.SettlementItem();
...@@ -528,11 +529,19 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService { ...@@ -528,11 +529,19 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
SettlementOwnerDetail settlementOwnerDetail = settlementOwnerDetailDao.getByChildNo(childNoList.get(0)).get(); SettlementOwnerDetail settlementOwnerDetail = settlementOwnerDetailDao.getByChildNo(childNoList.get(0)).get();
String settlementNo = settlementOwnerDetail.getSettlementNo(); String settlementNo = settlementOwnerDetail.getSettlementNo();
List<SettlementOwnerDetail> list = settlementOwnerDetailDao.getBySettlementNoAndInvoiceType(settlementNo, List<SettlementOwnerDetail> list = settlementOwnerDetailDao.getBySettlementNoAndInvoiceType(settlementNo,
SettlementOwnerEnum.InvoiceType.ONLINE.getCode() SettlementOwnerEnum.InvoiceType.ONLINE.getCode(),SettlementOwnerEnum.InvoiceStatus.NOT_INVOICE.getCode());
); if (CollectionUtil.isEmpty(list)) {
log.info("开票结果回调查询当前结算单均已开完票,结算单信息为{}", settlementNo);
}
settlementOwnerDetailDao.updateSettlementByChildNoList(childNoList); settlementOwnerDetailDao.updateSettlementByChildNoList(childNoList);
if (list.size() == childNoList.size()) {
log.info("当前是结算单所有计费都已经开票");
settlementOwnerDao.updateInvoiceStatusBySettlementNo(settlementNo, SettlementOwnerEnum.InvoiceStatus.INVOICED.getCode());
} else {
log.info("当前是结算单部分开票");
settlementOwnerDao.updateInvoiceStatusBySettlementNo(settlementNo, SettlementOwnerEnum.InvoiceStatus.NO_NEED_INVOICE.getCode());
}
} }
......
...@@ -146,7 +146,7 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -146,7 +146,7 @@ public class SettlementServiceImpl implements SettlementService {
} else { } else {
settlementDriverDetail.setPrepayFreightFlag(0); settlementDriverDetail.setPrepayFreightFlag(0);
settlementOwnerDetail.setPrepayFreight(BigDecimal.ZERO); settlementOwnerDetail.setPrepayFreight(BigDecimal.ZERO);
settlementOwnerDetail.setFinalPaymentStatus(SettlementOwnerDetailEnum.FinalPaymentStatus.NO.getCode()); settlementOwnerDetail.setFinalPaymentStatus(SettlementOwnerDetailEnum.FinalPaymentStatus.NO_REQUIRE.getCode());
} }
} else { } else {
throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_SYNC_ERROR); throw new ServiceSystemException(PerformanceResultEnum.ORDER_CHILD_SYNC_ERROR);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论