This commit is contained in:
linfso 2024-08-08 11:54:46 +08:00
parent bc2f580bf8
commit 623e337ceb
2 changed files with 29 additions and 8 deletions

View File

@ -11,6 +11,7 @@
package com.xdadan.erp.emis.service.impl;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.xdadan.erp.common.annotation.Log;
@ -92,20 +93,39 @@ public class EmisSettleInvoiceRecordServiceImpl extends EmisBaseService implemen
@Override
public int insertEmisSettleInvoiceRecord(EmisSettleInvoiceRecord emisSettleInvoiceRecord) throws EmisBizError {
// 判断对应账单是否存在
EmisSettleBill emisSettleBill=getSettleBillBySettleBillNo(emisSettleInvoiceRecord.getSettleBillNo());
if(emisSettleBill==null){
throw new EmisBizError(EmisBizErrorType.FAIL,"账单不存在");
//多个账单合并开票
emisSettleInvoiceRecord.setSettleBillNo(
WaybillHelper.formatQueryValue(emisSettleInvoiceRecord.getSettleBillNo())
);
BigDecimal totalFee =BigDecimal.ZERO;
// 总可开票金额
String[] settBillNoArr = emisSettleInvoiceRecord.getSettleBillNo().split(",");
for(int i=0;i<settBillNoArr.length;i++){
String billNo=settBillNoArr[i];
EmisSettleBill emisSettleBill=getSettleBillBySettleBillNo(billNo);
if(emisSettleBill==null){
throw new EmisBizError(EmisBizErrorType.FAIL,"账单不存在");
}
if(!"1".equals(emisSettleBill.getBlConfirmSite())){
throw new EmisBizError(EmisBizErrorType.FAIL,"业务账单未确认");
}
totalFee=totalFee.add(emisSettleBill.getRecMoney());
}
if(!"1".equals(emisSettleBill.getBlConfirmSite())){
throw new EmisBizError(EmisBizErrorType.FAIL,"业务账单未确认");
if(emisSettleInvoiceRecord.getApplyMoney().compareTo(totalFee)>0){
throw new EmisBizError(EmisBizErrorType.FAIL,"开票金额不可大于总账单金额");
}
// 不重复的 id流水号
// id流水号
String applySeqNo= WaybillHelper.genApplySeqNo();
emisSettleInvoiceRecord.setApplySeqNo(applySeqNo);
emisSettleInvoiceRecord.setApplyManCode(getCurrentUser().getEmpCode());
// emisSettleInvoiceRecord.setApplyDate();
emisSettleInvoiceRecord.setApplyDate(new Date());
// 插入发票记录
emisSettleInvoiceRecordMapper.insertEmisSettleInvoiceRecord(emisSettleInvoiceRecord);

View File

@ -174,7 +174,8 @@ public class CvtTplToCpcl {
public static void main(String[] args) {
String tplFile="/Users/alan/Downloads/dc1.frx";
String tplFile="/Users/alan/Downloads/探路速运-130-0524【主单】(16).frx";
String cmd=genCmdTpl(tplFile);
Map paramMap = new HashMap();