提交 94b60216 authored 作者: 马路路's avatar 马路路

Merge remote-tracking branch 'origin/v30.6_order_quote_20241022' into dev_jdk17

...@@ -9,4 +9,6 @@ public interface InvoicingCompanyService { ...@@ -9,4 +9,6 @@ public interface InvoicingCompanyService {
InvoicingCompanyVO getInvoicingCompanyByGroupCode(String companyGroupCode); InvoicingCompanyVO getInvoicingCompanyByGroupCode(String companyGroupCode);
Integer getInvoicingConfigTypeByOrderNo(String orderNo);
} }
...@@ -29,4 +29,12 @@ public class InvoicingCompanyServiceImpl implements InvoicingCompanyService { ...@@ -29,4 +29,12 @@ public class InvoicingCompanyServiceImpl implements InvoicingCompanyService {
.map(Result::getData) .map(Result::getData)
.orNull(); .orNull();
} }
@Override
public Integer getInvoicingConfigTypeByOrderNo(String orderNo) {
return Optional.of(invoicingCompanyFeign.getInvoicingConfigTypeByOrderNo(orderNo))
.filter(Result::succeed)
.map(Result::getData)
.orNull();
}
} }
...@@ -51,6 +51,7 @@ public class SettlementDriverDetail implements HasKey<Integer> { ...@@ -51,6 +51,7 @@ public class SettlementDriverDetail implements HasKey<Integer> {
private Integer invoicingCompanyId; //开票公司id private Integer invoicingCompanyId; //开票公司id
private String invoicingCompanyShorterName; //开票公司简称 private String invoicingCompanyShorterName; //开票公司简称
private String invoicingCompanyGroupCode; //开票公司统一社会信用代码 private String invoicingCompanyGroupCode; //开票公司统一社会信用代码
private Integer invoiceConfigType; //开票配置类型:0-否,1-是
private BigDecimal platformServiceFee; //平台服务费(分) private BigDecimal platformServiceFee; //平台服务费(分)
private BigDecimal platformServiceFeeRate; //平台服务费费率% private BigDecimal platformServiceFeeRate; //平台服务费费率%
private Integer payAcceptStatus; //支付受理状态:0未受理支付 1支付受理中 2已受理支付 private Integer payAcceptStatus; //支付受理状态:0未受理支付 1支付受理中 2已受理支付
......
...@@ -25,6 +25,7 @@ public class SettlementOrderChildRisk implements HasKey<Integer> { ...@@ -25,6 +25,7 @@ public class SettlementOrderChildRisk implements HasKey<Integer> {
private String driverMobile; // 司机手机号 private String driverMobile; // 司机手机号
private String goodsName; // 货物名称 private String goodsName; // 货物名称
private Integer invoiceType; // 开票标识:1网运单 2普通单 private Integer invoiceType; // 开票标识:1网运单 2普通单
private Integer invoiceConfigType; // 开票配置:0否 2是
private LocalDateTime poundAuditTime; // 磅单审核通过时间 private LocalDateTime poundAuditTime; // 磅单审核通过时间
private Integer riskType; // 风控标识:1同步失败 2结算打回 private Integer riskType; // 风控标识:1同步失败 2结算打回
private String riskRemark; // 风控失败原因 private String riskRemark; // 风控失败原因
......
...@@ -62,6 +62,7 @@ public class SettlementOwnerDetail implements HasKey<Integer> { ...@@ -62,6 +62,7 @@ public class SettlementOwnerDetail implements HasKey<Integer> {
private Integer invoiceType; //开票标识:1网运单 2普通单 private Integer invoiceType; //开票标识:1网运单 2普通单
private BigDecimal invoiceServiceFee; //开票服务费(分) private BigDecimal invoiceServiceFee; //开票服务费(分)
private BigDecimal invoiceServiceFeeRate; //开票服务率 private BigDecimal invoiceServiceFeeRate; //开票服务率
private Integer invoiceConfigType; //开票配置类型:0-否,1-是
private Integer finalPaymentStatus; //尾款状态 0-否,1-是,2-无需支付 private Integer finalPaymentStatus; //尾款状态 0-否,1-是,2-无需支付
private Integer invoiceTypeStatus; // 开票标识状态:0未获取 1获取中 2获取成功 3获取失败 private Integer invoiceTypeStatus; // 开票标识状态:0未获取 1获取中 2获取成功 3获取失败
private Integer invoiceStatus; //开票状态 0-否,1-是,2-无需开票 private Integer invoiceStatus; //开票状态 0-否,1-是,2-无需开票
......
...@@ -81,6 +81,10 @@ public class OrderChildBrokerMqHandlerServiceImpl implements OrderChildBrokerMqH ...@@ -81,6 +81,10 @@ public class OrderChildBrokerMqHandlerServiceImpl implements OrderChildBrokerMqH
settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile()); settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile());
settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName()); settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName());
settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType()); settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType());
// 如果有发票配置,则更新
if (Objects.nonNull(settlementOwnerDetail.getInvoiceConfigType())) {
settlementOrderChildRisk.setInvoiceConfigType(settlementOwnerDetail.getInvoiceConfigType());
}
settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime()); settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime());
settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SETTLE_FAIL.getCode()); settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SETTLE_FAIL.getCode());
settlementOrderChildRisk.setRiskRemark("同步无车承运异常"); settlementOrderChildRisk.setRiskRemark("同步无车承运异常");
......
...@@ -6,6 +6,7 @@ import com.clx.performance.dao.settle.SettlementDriverDetailDao; ...@@ -6,6 +6,7 @@ import com.clx.performance.dao.settle.SettlementDriverDetailDao;
import com.clx.performance.enums.loan.OwnerLoanRecordEnum; import com.clx.performance.enums.loan.OwnerLoanRecordEnum;
import com.clx.performance.enums.settle.SettlementDriverEnum; import com.clx.performance.enums.settle.SettlementDriverEnum;
import com.clx.performance.enums.settle.SettlementOwnerEnum; import com.clx.performance.enums.settle.SettlementOwnerEnum;
import com.clx.performance.extranal.order.InvoicingCompanyService;
import com.clx.performance.model.OrderChild; import com.clx.performance.model.OrderChild;
import com.clx.performance.model.settle.SettlementDriverDetail; import com.clx.performance.model.settle.SettlementDriverDetail;
import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementDriverDetailParam; import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementDriverDetailParam;
...@@ -41,6 +42,7 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai ...@@ -41,6 +42,7 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
private final SettlementDriverDetailDao settlementDriverDetailDao; private final SettlementDriverDetailDao settlementDriverDetailDao;
private final SettlementDriverDetailStruct settlementOwnerDetailStruct; private final SettlementDriverDetailStruct settlementOwnerDetailStruct;
private final InvoicingCompanyService invoicingCompanyService;
@Override @Override
public SettlementDriverDetail saveSettlementDetail(OrderChild orderChild) { public SettlementDriverDetail saveSettlementDetail(OrderChild orderChild) {
...@@ -85,6 +87,12 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai ...@@ -85,6 +87,12 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
? BigDecimal.ZERO ? BigDecimal.ZERO
: orderChild.getPlatformServiceFee()); : orderChild.getPlatformServiceFee());
// 开票配置
Integer invoiceConfigType = invoicingCompanyService.getInvoicingConfigTypeByOrderNo(orderChild.getOrderNo());
if (Objects.nonNull(invoiceConfigType)) {
settlementDriverDetail.setInvoiceConfigType(invoiceConfigType);
}
settlementDriverDetailDao.saveEntity(settlementDriverDetail); settlementDriverDetailDao.saveEntity(settlementDriverDetail);
return settlementDriverDetail; return settlementDriverDetail;
...@@ -154,21 +162,22 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai ...@@ -154,21 +162,22 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
fieldList.add(new ExcelField(4, "车主名称", "driverName", 5000)); fieldList.add(new ExcelField(4, "车主名称", "driverName", 5000));
fieldList.add(new ExcelField(5, "货物名称", "goodsName", 5000)); fieldList.add(new ExcelField(5, "货物名称", "goodsName", 5000));
fieldList.add(new ExcelField(6, "车牌号", "truckNo", 5000)); fieldList.add(new ExcelField(6, "车牌号", "truckNo", 5000));
fieldList.add(new ExcelField(7, "开票公司", "invoicingCompanyShorterName", 5000)); fieldList.add(new ExcelField(7, "开票配置", "invoicingConfigType", 5000));
fieldList.add(new ExcelField(8, "开票标识", "invoiceType", 5000)); fieldList.add(new ExcelField(8, "开票公司", "invoicingCompanyShorterName", 5000));
fieldList.add(new ExcelField(9, "预付标识", "prepayFreightFlag", 5000)); fieldList.add(new ExcelField(9, "开票标识", "invoiceType", 5000));
fieldList.add(new ExcelField(10, "借款标识", "loanFlagMsg", 5000)); fieldList.add(new ExcelField(10, "借款标识", "loanFlagMsg", 5000));
fieldList.add(new ExcelField(11, "实际净重(吨)", "weight", 5000)); fieldList.add(new ExcelField(11, "预付标识", "prepayFreightFlag", 5000));
fieldList.add(new ExcelField(12, "运费单价", "freightPrice", 5000)); fieldList.add(new ExcelField(12, "实际净重(吨)", "weight", 5000));
fieldList.add(new ExcelField(13, "应付运费", "freight", 5000)); fieldList.add(new ExcelField(13, "运费单价", "freightPrice", 5000));
fieldList.add(new ExcelField(14, "货损单价", "lossPrice", 5000)); fieldList.add(new ExcelField(14, "应付运费", "freight", 5000));
fieldList.add(new ExcelField(15, "货损吨数", "lossWeight", 5000)); fieldList.add(new ExcelField(15, "货损单价", "lossPrice", 5000));
fieldList.add(new ExcelField(16, "货损金额", "lossFreight", 5000)); fieldList.add(new ExcelField(16, "货损吨数", "lossWeight", 5000));
fieldList.add(new ExcelField(17, "结算金额", "settlementFreight", 5000)); fieldList.add(new ExcelField(17, "货损金额", "lossFreight", 5000));
fieldList.add(new ExcelField(18, "毛利率", "platformServiceFeeRate", 5000)); fieldList.add(new ExcelField(18, "结算金额", "settlementFreight", 5000));
fieldList.add(new ExcelField(19, "毛利润", "platformServiceFee", 5000)); fieldList.add(new ExcelField(19, "毛利率", "platformServiceFeeRate", 5000));
fieldList.add(new ExcelField(20, "结算单号", "settlementNo", 5000)); fieldList.add(new ExcelField(20, "毛利润", "platformServiceFee", 5000));
fieldList.add(new ExcelField(21, "创建时间", "createTime", 5000)); fieldList.add(new ExcelField(21, "结算单号", "settlementNo", 5000));
fieldList.add(new ExcelField(22, "创建时间", "createTime", 5000));
// 组装数据 // 组装数据
List<List<ExcelData>> dataList = new ArrayList<>(); List<List<ExcelData>> dataList = new ArrayList<>();
...@@ -185,6 +194,8 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai ...@@ -185,6 +194,8 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
rowData.add(new ExcelData(dto.getDriverName())); rowData.add(new ExcelData(dto.getDriverName()));
rowData.add(new ExcelData(dto.getGoodsName())); rowData.add(new ExcelData(dto.getGoodsName()));
rowData.add(new ExcelData(dto.getTruckNo())); rowData.add(new ExcelData(dto.getTruckNo()));
// 开票配置
rowData.add(new ExcelData(dto.getInvoicingConfigType()==null?null:SettlementOwnerEnum.InvoiceConfigType.getMsgByCode(dto.getInvoicingConfigType())));
rowData.add(new ExcelData(dto.getInvoicingCompanyShorterName())); rowData.add(new ExcelData(dto.getInvoicingCompanyShorterName()));
rowData.add(new ExcelData(dto.getInvoiceType()==null?null:SettlementOwnerEnum.InvoiceType.getMsgByCode(dto.getInvoiceType()))); rowData.add(new ExcelData(dto.getInvoiceType()==null?null:SettlementOwnerEnum.InvoiceType.getMsgByCode(dto.getInvoiceType())));
rowData.add(new ExcelData(dto.getPrepayFreightFlag()==null?null:SettlementDriverEnum.PrepayFreightFlag.getMsgByCode(dto.getPrepayFreightFlag()))); rowData.add(new ExcelData(dto.getPrepayFreightFlag()==null?null:SettlementDriverEnum.PrepayFreightFlag.getMsgByCode(dto.getPrepayFreightFlag())));
......
...@@ -365,6 +365,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -365,6 +365,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile()); settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile());
settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName()); settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName());
settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType()); settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType());
// 防止历史数据不存在
if (Objects.nonNull(settlementOwnerDetail.getInvoiceConfigType())) {
settlementOrderChildRisk.setInvoiceConfigType(settlementOwnerDetail.getInvoiceConfigType());
}
settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime()); settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime());
settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SYNC_FAIL.getCode()); settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SYNC_FAIL.getCode());
settlementOrderChildRisk.setRiskRemark(result.getSyncMsg()); settlementOrderChildRisk.setRiskRemark(result.getSyncMsg());
...@@ -474,6 +478,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -474,6 +478,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile()); settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile());
settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName()); settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName());
settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType()); settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType());
// 防止历史数据没有出现报错
if (Objects.nonNull(settlementOwnerDetail.getInvoiceConfigType())) {
settlementOrderChildRisk.setInvoiceConfigType(settlementOwnerDetail.getInvoiceConfigType());
}
settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime()); settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime());
settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SYNC_FAIL.getCode()); settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SYNC_FAIL.getCode());
settlementOrderChildRisk.setRiskRemark(result.getSyncMsg()); settlementOrderChildRisk.setRiskRemark(result.getSyncMsg());
...@@ -551,6 +559,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -551,6 +559,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile()); settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile());
settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName()); settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName());
settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType()); settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType());
// 防止历史数据没有出现报错
if (Objects.nonNull(settlementOwnerDetail.getInvoiceConfigType())) {
settlementDriverDetail.setInvoiceConfigType(settlementOwnerDetail.getInvoiceConfigType());
}
settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime()); settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime());
settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SYNC_FAIL.getCode()); settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SYNC_FAIL.getCode());
settlementOrderChildRisk.setRiskRemark(result.getSyncMsg()); settlementOrderChildRisk.setRiskRemark(result.getSyncMsg());
...@@ -592,6 +604,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -592,6 +604,10 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile()); settlementOrderChildRisk.setDriverMobile(orderChild.getDriverMobile());
settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName()); settlementOrderChildRisk.setGoodsName(orderChild.getGoodsName());
settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType()); settlementOrderChildRisk.setInvoiceType(settlementOwnerDetail.getInvoiceType());
// 防止历史数据没有出现报错
if (Objects.nonNull(settlementOwnerDetail.getInvoiceConfigType())) {
settlementOrderChildRisk.setInvoiceConfigType(settlementOwnerDetail.getInvoiceConfigType());
}
settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime()); settlementOrderChildRisk.setPoundAuditTime(settlementOwnerDetail.getPoundAuditTime());
settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SETTLE_FAIL.getCode()); settlementOrderChildRisk.setRiskType(SettlementOrderChildRiskEnum.RiskType.SETTLE_FAIL.getCode());
settlementOrderChildRisk.setRiskRemark(result.getSettleMsg()); settlementOrderChildRisk.setRiskRemark(result.getSettleMsg());
......
...@@ -144,14 +144,15 @@ public class SettlementOrderChildRiskServiceImpl implements SettlementOrderChild ...@@ -144,14 +144,15 @@ public class SettlementOrderChildRiskServiceImpl implements SettlementOrderChild
fieldList.add(new ExcelField(3, "司机联系电话", "driverMobile", 5000)); fieldList.add(new ExcelField(3, "司机联系电话", "driverMobile", 5000));
fieldList.add(new ExcelField(4, "货物名称", "goodsName", 5000)); fieldList.add(new ExcelField(4, "货物名称", "goodsName", 5000));
fieldList.add(new ExcelField(5, "开票标识", "invoiceType", 5000)); fieldList.add(new ExcelField(5, "开票标识", "invoiceType", 5000));
fieldList.add(new ExcelField(6, "风控标识", "riskType", 5000)); fieldList.add(new ExcelField(6, "开票配置", "invoiceConfigType", 5000));
fieldList.add(new ExcelField(7, "风控失败原因", "riskRemark", 5000)); fieldList.add(new ExcelField(7, "风控标识", "riskType", 5000));
fieldList.add(new ExcelField(8, "处理状态", "status", 5000)); fieldList.add(new ExcelField(8, "风控失败原因", "riskRemark", 5000));
fieldList.add(new ExcelField(9, "处理方式", "processMethod", 5000)); fieldList.add(new ExcelField(9, "处理状态", "status", 5000));
fieldList.add(new ExcelField(10, "磅单审核通过时间", "poundAuditTime", 5000)); fieldList.add(new ExcelField(10, "处理方式", "processMethod", 5000));
fieldList.add(new ExcelField(11, "创建时间", "createTime", 5000)); fieldList.add(new ExcelField(11, "磅单审核通过时间", "poundAuditTime", 5000));
fieldList.add(new ExcelField(12, "处理人", "processBy", 5000)); fieldList.add(new ExcelField(12, "创建时间", "createTime", 5000));
fieldList.add(new ExcelField(13, "处理时间", "processTime", 5000)); fieldList.add(new ExcelField(13, "处理人", "processBy", 5000));
fieldList.add(new ExcelField(14, "处理时间", "processTime", 5000));
// 组装数据 // 组装数据
List<List<ExcelData>> dataList = new ArrayList<>(); List<List<ExcelData>> dataList = new ArrayList<>();
...@@ -164,6 +165,7 @@ public class SettlementOrderChildRiskServiceImpl implements SettlementOrderChild ...@@ -164,6 +165,7 @@ public class SettlementOrderChildRiskServiceImpl implements SettlementOrderChild
rowData.add(new ExcelData(vo.getGoodsName())); rowData.add(new ExcelData(vo.getGoodsName()));
rowData.add(new ExcelData(vo.getInvoiceType()==null?null:SettlementOwnerEnum.InvoiceType.getMsgByCode(vo.getInvoiceType()))); rowData.add(new ExcelData(vo.getInvoiceType()==null?null:SettlementOwnerEnum.InvoiceType.getMsgByCode(vo.getInvoiceType())));
rowData.add(new ExcelData(vo.getInvoiceConfigType()==null?null:SettlementOwnerEnum.InvoiceConfigType.getMsgByCode(vo.getInvoiceConfigType())));
rowData.add(new ExcelData(vo.getRiskType()==null?null:SettlementOrderChildRiskEnum.RiskType.getMsgByCode(vo.getRiskType()))); rowData.add(new ExcelData(vo.getRiskType()==null?null:SettlementOrderChildRiskEnum.RiskType.getMsgByCode(vo.getRiskType())));
rowData.add(new ExcelData(vo.getRiskRemark())); rowData.add(new ExcelData(vo.getRiskRemark()));
rowData.add(new ExcelData(vo.getStatus()==null?null:SettlementOrderChildRiskEnum.Status.getMsgByCode(vo.getStatus()))); rowData.add(new ExcelData(vo.getStatus()==null?null:SettlementOrderChildRiskEnum.Status.getMsgByCode(vo.getStatus())));
......
...@@ -147,11 +147,6 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS ...@@ -147,11 +147,6 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
//借款抵扣金额初始化 //借款抵扣金额初始化
settlementOwnerDetail.setLoanFreight(BigDecimal.ZERO); settlementOwnerDetail.setLoanFreight(BigDecimal.ZERO);
//设置开票公司信息
settlementOwnerDetail.setInvoicingCompanyId(orderChild.getInvoicingCompanyId());
settlementOwnerDetail.setInvoicingCompanyShorterName(orderChild.getInvoicingCompanyShorterName());
settlementOwnerDetail.setInvoicingCompanyGroupCode(orderChild.getInvoicingCompanyGroupCode());
// 查询开票公司 // 查询开票公司
InvoicingCompanyVO invoiceCompany = invoicingCompanyService.getInvoicingCompany( InvoicingCompanyVO invoiceCompany = invoicingCompanyService.getInvoicingCompany(
settlementOwnerDetail.getInvoicingCompanyId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND); settlementOwnerDetail.getInvoicingCompanyId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
...@@ -170,6 +165,20 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS ...@@ -170,6 +165,20 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
settlementOwnerDetail.setInvoiceFreight( settlementOwnerDetail.setInvoiceFreight(
settlementCommonService.invoiceFreightCalc(orderChild.getSettlementWay(), settlementCommonService.invoiceFreightCalc(orderChild.getSettlementWay(),
orderGoods.getInvoiceServiceFeeRate(), settlementOwnerDetail)); orderGoods.getInvoiceServiceFeeRate(), settlementOwnerDetail));
// 开票配置
Integer invoicingConfigType = invoicingCompanyService.getInvoicingConfigTypeByOrderNo(orderChild.getOrderNo());
settlementOwnerDetail.setInvoiceConfigType(invoicingConfigType);
// 若开票配置为否,设置开票标识为普通单
if (Objects.nonNull(invoicingConfigType) && Objects.equals(invoicingConfigType, InvoicingCompanyEnum.YesAndNo.NO.getCode())) {
// 赋值开票标识为普通单
settlementDriverDetail.setInvoiceType(InvoicingCompanyEnum.RiskProcessType.AUTO.getCode());
// 若开票配置非空,且为是,则开票公司信息
} else if (Objects.nonNull(invoicingConfigType) && Objects.equals(invoicingConfigType, InvoicingCompanyEnum.YesAndNo.YES.getCode())) {
//设置开票公司信息
settlementOwnerDetail.setInvoicingCompanyId(orderChild.getInvoicingCompanyId());
settlementOwnerDetail.setInvoicingCompanyShorterName(orderChild.getInvoicingCompanyShorterName());
settlementOwnerDetail.setInvoicingCompanyGroupCode(orderChild.getInvoicingCompanyGroupCode());
}
// 结算金额 // 结算金额
settlementOwnerDetail.setSettlementFreight( settlementOwnerDetail.setSettlementFreight(
...@@ -545,9 +554,10 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS ...@@ -545,9 +554,10 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
fieldList.add(new ExcelField(16, "开票金额", "invoiceFreight", 5000)); fieldList.add(new ExcelField(16, "开票金额", "invoiceFreight", 5000));
fieldList.add(new ExcelField(17, "开票公司", "invoicingCompanyShorterName", 5000)); fieldList.add(new ExcelField(17, "开票公司", "invoicingCompanyShorterName", 5000));
fieldList.add(new ExcelField(18, "开票标识", "invoiceType", 5000)); fieldList.add(new ExcelField(18, "开票标识", "invoiceType", 5000));
fieldList.add(new ExcelField(19, "订单编号", "orderNo", 5000)); fieldList.add(new ExcelField(19, "开票配置", "invoiceConfigType", 5000));
fieldList.add(new ExcelField(20, "结算单号", "settlementNo", 5000)); fieldList.add(new ExcelField(20, "订单编号", "orderNo", 5000));
fieldList.add(new ExcelField(21, "创建时间", "createTime", 5000)); fieldList.add(new ExcelField(21, "结算单号", "settlementNo", 5000));
fieldList.add(new ExcelField(22, "创建时间", "createTime", 5000));
// 组装数据 // 组装数据
List<List<ExcelData>> dataList = new ArrayList<>(); List<List<ExcelData>> dataList = new ArrayList<>();
...@@ -575,6 +585,7 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS ...@@ -575,6 +585,7 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
rowData.add(new ExcelData(dto.getInvoiceFreight()==null?null:dto.getInvoiceFreight().movePointLeft(2))); rowData.add(new ExcelData(dto.getInvoiceFreight()==null?null:dto.getInvoiceFreight().movePointLeft(2)));
rowData.add(new ExcelData(dto.getInvoicingCompanyShorterName())); rowData.add(new ExcelData(dto.getInvoicingCompanyShorterName()));
rowData.add(new ExcelData(dto.getInvoiceType()==null?null:SettlementOwnerEnum.InvoiceType.getMsgByCode(dto.getInvoiceType()))); rowData.add(new ExcelData(dto.getInvoiceType()==null?null:SettlementOwnerEnum.InvoiceType.getMsgByCode(dto.getInvoiceType())));
rowData.add(new ExcelData(dto.getInvoicingConfigType()==null?null:SettlementOwnerEnum.InvoiceConfigType.getMsgByCode(dto.getInvoicingConfigType())));
rowData.add(new ExcelData(dto.getOrderNo())); rowData.add(new ExcelData(dto.getOrderNo()));
rowData.add(new ExcelData(dto.getSettlementNo())); rowData.add(new ExcelData(dto.getSettlementNo()));
rowData.add(new ExcelData(dto.getCreateTime())); rowData.add(new ExcelData(dto.getCreateTime()));
......
...@@ -134,7 +134,24 @@ public enum SettlementOwnerEnum { ...@@ -134,7 +134,24 @@ public enum SettlementOwnerEnum {
} }
} }
@Getter
@AllArgsConstructor
public enum InvoiceConfigType {
NO(0, "否"),
YES(1, "是"),
;
private final Integer code;
private final String msg;
public static Optional<InvoiceConfigType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
public static String getMsgByCode(int code) {
return getByCode(code).map(InvoiceConfigType::getMsg).orElse(null);
}
}
......
...@@ -78,6 +78,8 @@ public class CarrierPageSettlementDriverDetailVO { ...@@ -78,6 +78,8 @@ public class CarrierPageSettlementDriverDetailVO {
private Integer invoicingCompanyId; private Integer invoicingCompanyId;
@Schema(description = "开票公司简称") @Schema(description = "开票公司简称")
private String invoicingCompanyShorterName; private String invoicingCompanyShorterName;
@Schema(description = "开票配置")
private Integer invoicingConfigType;
@MoneyOutConvert @MoneyOutConvert
@Schema(description = "平台服务费") @Schema(description = "平台服务费")
private BigDecimal platformServiceFee; private BigDecimal platformServiceFee;
......
...@@ -74,6 +74,8 @@ public class CarrierPageSettlementOwnerDetailVO { ...@@ -74,6 +74,8 @@ public class CarrierPageSettlementOwnerDetailVO {
private BigDecimal invoiceServiceFee; private BigDecimal invoiceServiceFee;
@Schema(description = "开票服务率") @Schema(description = "开票服务率")
private BigDecimal invoiceServiceFeeRate; private BigDecimal invoiceServiceFeeRate;
@Schema(description = "开票配置:0-否,1-是")
private Integer invoicingConfigType;
@MoneyOutConvert @MoneyOutConvert
@Schema(description = "借款抵扣金额") @Schema(description = "借款抵扣金额")
private BigDecimal loanFreight; private BigDecimal loanFreight;
......
...@@ -31,6 +31,9 @@ public class SettlementOrderChildRiskVO { ...@@ -31,6 +31,9 @@ public class SettlementOrderChildRiskVO {
@Schema(description = "开票标识:1网运单 2普通单") @Schema(description = "开票标识:1网运单 2普通单")
private Integer invoiceType; private Integer invoiceType;
@Schema(description = "开票配置,0否,1是")
private Integer invoiceConfigType;
@Schema(description = "磅单审核通过时间") @Schema(description = "磅单审核通过时间")
private String poundAuditTime; private String poundAuditTime;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论