提交 c82d9560 authored 作者: jiangwenye's avatar jiangwenye

结算单运单详情-是否付尾款/是否开发票

上级 75ca6423
......@@ -16,6 +16,7 @@ public enum SettlementOwnerDetailEnum {
public enum InvoiceStatus {
NO(0, "否"),
YES(1, "是"),
NO_INVOICE(2,"无需开票"),
;
private final Integer code;
private final String msg;
......
......@@ -42,6 +42,22 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet
);
}
@Override
public boolean updateInvoiceStatusBySettlementNo(String settlementNo, Integer invoiceStatus){
return update(lUdWrapper()
.eq(SettlementOwnerDetail::getSettlementNo, settlementNo)
.set(SettlementOwnerDetail::getInvoiceStatus, invoiceStatus)
);
}
@Override
public boolean updateFinalPaymentStatusBySettlementNo(String settlementNo, Integer finalPaymentStatus){
return update(lUdWrapper()
.eq(SettlementOwnerDetail::getSettlementNo, settlementNo)
.set(SettlementOwnerDetail::getFinalPaymentStatus, finalPaymentStatus)
);
}
@Override
public Optional<SettlementOwnerDetail> getByChildNo(String childNo) {
return Optional.of(childNo)
......
......@@ -7,6 +7,7 @@ import com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam;
import com.clx.performance.param.pc.owner.PageOwnerSettlementOwnerDetailParam;
import com.msl.common.base.Optional;
import com.msl.common.dao.BaseDao;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -22,6 +23,10 @@ public interface SettlementOwnerDetailDao extends BaseDao<SettlementOwnerDetailM
boolean updateInvoiceType(SettlementOwnerDetail item);
boolean updateSettlementNo(SettlementOwnerDetail item);
boolean updateInvoiceStatusBySettlementNo(@Param("settlementNo")String settlementNo, @Param("invoiceStatus")Integer invoiceStatus);
boolean updateFinalPaymentStatusBySettlementNo(@Param("settlementNo")String settlementNo, @Param("finalPaymentStatus")Integer finalPaymentStatus);
Optional<SettlementOwnerDetail> getByChildNo(String childNo);
List<SettlementOwnerDetail> getBySettlementNo(String settlementNo);
......
......@@ -51,7 +51,7 @@ public class SettlementOwnerDetail implements HasKey<Integer> {
private BigDecimal invoiceFreight; //开票金额(分)
private Integer invoiceType; //开票标识:1网运单 2普通单
private Integer finalPaymentStatus; //尾款状态 0-否,1-是,2-无需支付
private Integer invoiceStatus; //开票状态 0-否,1-是
private Integer invoiceStatus; //开票状态 0-否,1-是,2-无需开票
private Integer status; //状态
private LocalDateTime createTime; //创建时间
private LocalDateTime modifiedTime; //修改时间
......@@ -61,4 +61,4 @@ public class SettlementOwnerDetail implements HasKey<Integer> {
public Integer gainKey() {
return id;
}
}
\ No newline at end of file
}
......@@ -3,6 +3,7 @@ package com.clx.performance.service.impl.settle;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.settle.SettlementOwnerDetailDao;
import com.clx.performance.enums.settle.SettlementOwnerDetailEnum;
import com.clx.performance.model.OrderChild;
import com.clx.performance.model.settle.SettlementOwnerDetail;
import com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam;
......@@ -77,6 +78,11 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
// 结算金额
settlementOwnerDetail.setSettlementFreight(settlementFreightCalc(settlementOwnerDetail.getFreight(), settlementOwnerDetail.getLossFreight()));
settlementOwnerDetail.setFinalPaymentStatus(SettlementOwnerDetailEnum.FinalPaymentStatus.NO.getCode());
if(settlementOwnerDetail.getSettlementFreight().compareTo(BigDecimal.ZERO) == 0){
settlementOwnerDetail.setFinalPaymentStatus(SettlementOwnerDetailEnum.FinalPaymentStatus.NO_REQUIRE.getCode());
}
settlementOwnerDetailDao.saveEntity(settlementOwnerDetail);
return settlementOwnerDetail.getId();
......
......@@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.settle.SettlementLogDao;
import com.clx.performance.dao.settle.SettlementOwnerDao;
import com.clx.performance.dao.settle.SettlementOwnerDetailDao;
import com.clx.performance.dao.settle.SettlementPlatformAccountDao;
import com.clx.performance.enums.OrderChildLogEnum;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.settle.SettlementLogEnum;
import com.clx.performance.enums.settle.SettlementOwnerDetailEnum;
import com.clx.performance.enums.settle.SettlementOwnerEnum;
import com.clx.performance.model.settle.SettlementLog;
import com.clx.performance.model.settle.SettlementOwner;
......@@ -52,6 +54,8 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
private final SettlementOwnerDao settlementOwnerDao;
private final SettlementOwnerDetailDao settlementOwnerDetailDao;
private final SettlementOwnerStruct settlementOwnerStruct;
private final SettlementLogDao settlementLogDao;
......@@ -106,6 +110,7 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
status = SettlementOwnerEnum.Status.SHIPPER_TO_PAYMENT.getCode();
}else if(settlementOwner.getSettlementFreight().compareTo(BigDecimal.ZERO) <0){
status = SettlementOwnerEnum.Status.PLATFORM_TO_PAYMENT.getCode();
settlementOwnerDetailDao.updateInvoiceStatusBySettlementNo(settlementNo,SettlementOwnerDetailEnum.InvoiceStatus.NO_INVOICE.getCode());
}else{
status = SettlementOwnerEnum.Status.COMPLETED.getCode();
//保存结算单日志----已完结
......@@ -207,6 +212,8 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
//更新状态
settlementOwnerDao.updateStatusBySettlementNo(settlementNo,SettlementOwnerEnum.Status.COMPLETED.getCode());
settlementOwnerDetailDao.updateFinalPaymentStatusBySettlementNo(settlementNo, SettlementOwnerDetailEnum.FinalPaymentStatus.YES.getCode());
//保存结算单日志
settlementLogService.saveSettlementLog(settlementNo,
SettlementLogEnum.Type.OWNER_CONFIRMED_PLATFORM_PAYMENT.getCode(),SettlementLogEnum.Type.OWNER_CONFIRMED_PLATFORM_PAYMENT.getMsg(),
......@@ -349,6 +356,8 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
settlementOwnerDao.saveExpress(settlementNo,param.getExpressCompany(),param.getExpressNo());
settlementOwnerDetailDao.updateInvoiceStatusBySettlementNo(settlementNo, SettlementOwnerDetailEnum.InvoiceStatus.YES.getCode());
settlementOwnerDao.updateStatusBySettlementNo(settlementNo
,SettlementOwnerEnum.Status.COMPLETED.getCode());
......@@ -403,6 +412,8 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
public void payeeConfirm(String settlementNo){
SettlementOwner settlementOwner = settlementOwnerDao.selectBySettlementNo(settlementNo).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
settlementOwnerDetailDao.updateFinalPaymentStatusBySettlementNo(settlementNo, SettlementOwnerDetailEnum.FinalPaymentStatus.YES.getCode());
if(settlementOwner.getInvoiceFreight().compareTo(BigDecimal.ZERO) < 0){
settlementOwnerDao.updateStatusBySettlementNo(settlementNo,SettlementOwnerEnum.Status.COMPLETED.getCode());
}else{
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论