md
This commit is contained in:
parent
c60525ffcf
commit
513e82c36a
@ -94,6 +94,13 @@ public interface IEmisSettleBillService extends IDataAuditService
|
||||
|
||||
public int reCalcSettleBillFee(EmisSettleBill emisSettleBill) throws EmisBizError;
|
||||
|
||||
/**
|
||||
* 重算账单账期
|
||||
* @param settleBillNo
|
||||
* @return
|
||||
*/
|
||||
public int reCalcBillMonthPayDueDate(String settleBillNo);
|
||||
|
||||
|
||||
/**
|
||||
* 修改结算总账单
|
||||
|
||||
@ -311,6 +311,59 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
||||
return emisSettleBillMapper.insertEmisSettleBill(emisSettleBill);
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新计算账期
|
||||
* @param settleBillNo
|
||||
* @return
|
||||
*/
|
||||
public int reCalcBillMonthPayDueDate(String settleBillNo){
|
||||
|
||||
EmisSettleBill oldEmisSettleBill=emisSettleBillMapper.selectSettleBillBySettleBillNo(settleBillNo);
|
||||
if(oldEmisSettleBill!=null) {
|
||||
|
||||
if( "2".equals(oldEmisSettleBill.getSettleType()) ) {
|
||||
EmisCustomerUser monthUser = getCustomerUserByMonthlyPayCode(oldEmisSettleBill.getCustNo());
|
||||
if (monthUser != null) {
|
||||
|
||||
EmisSettleBill updBill = new EmisSettleBill();
|
||||
updBill.setId(oldEmisSettleBill.getId());
|
||||
|
||||
|
||||
// 默认30天,从1号开始
|
||||
BigDecimal creditPeriod = BigDecimal.valueOf(30D);
|
||||
Integer settleDay = 1;
|
||||
|
||||
if (monthUser.getCreditPeriod() != null) {
|
||||
creditPeriod = monthUser.getCreditPeriod();
|
||||
}
|
||||
|
||||
if (monthUser.getSettleDay() != null) {
|
||||
settleDay = monthUser.getSettleDay();
|
||||
}
|
||||
|
||||
// 现金账期从寄件开始10天
|
||||
updBill.setCreditPeriodType("1");
|
||||
updBill.setCreditPeriod(creditPeriod);
|
||||
updBill.setSettleDay(settleDay);
|
||||
|
||||
Date billMonthDate = DateUtils.parseDate(oldEmisSettleBill.getBillMonth() + "-" + settleDay);
|
||||
Date paymentDueDate = DateUtils.addMonths(billMonthDate, 1);
|
||||
paymentDueDate = DateUtils.addDays(paymentDueDate, creditPeriod.intValue());
|
||||
|
||||
// 最后付款时间
|
||||
updBill.setPaymentDueDate(paymentDueDate);
|
||||
|
||||
emisSettleBillMapper.updateEmisSettleBill(updBill);
|
||||
}
|
||||
}
|
||||
else if( "1".equals(oldEmisSettleBill.getSettleType()) ) {
|
||||
// 现金不用计算,默认10天
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 修改账单加入运单号
|
||||
|
||||
Loading…
Reference in New Issue
Block a user