md
This commit is contained in:
parent
111b4cb02c
commit
047700e947
@ -136,7 +136,7 @@ public class EmisCustomerUser extends BaseEntity
|
|||||||
/* 付款期类型 1-天 2-月 */
|
/* 付款期类型 1-天 2-月 */
|
||||||
private String creditPeriodType;
|
private String creditPeriodType;
|
||||||
/* 付款期 默认10天 */
|
/* 付款期 默认10天 */
|
||||||
private Integer creditPeriod;
|
private BigDecimal creditPeriod;
|
||||||
/* 账单日 1-31 */
|
/* 账单日 1-31 */
|
||||||
private Integer settleDay;
|
private Integer settleDay;
|
||||||
/* 启用状态 1-启用 0-未启用 */
|
/* 启用状态 1-启用 0-未启用 */
|
||||||
|
|||||||
@ -11,13 +11,16 @@
|
|||||||
package com.xdadan.erp.emis.service.impl;
|
package com.xdadan.erp.emis.service.impl;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Calendar;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import com.xdadan.erp.common.core.domain.AjaxResult;
|
import com.xdadan.erp.common.core.domain.AjaxResult;
|
||||||
|
import com.xdadan.erp.common.utils.DateUtils;
|
||||||
import com.xdadan.erp.common.utils.StringUtils;
|
import com.xdadan.erp.common.utils.StringUtils;
|
||||||
|
import com.xdadan.erp.emis.domain.EmisCustomerUser;
|
||||||
import com.xdadan.erp.emis.domain.EmisSettleSubBill;
|
import com.xdadan.erp.emis.domain.EmisSettleSubBill;
|
||||||
import com.xdadan.erp.emis.domain.enumtype.EmisBizErrorType;
|
import com.xdadan.erp.emis.domain.enumtype.EmisBizErrorType;
|
||||||
import com.xdadan.erp.emis.domain.exception.EmisBizError;
|
import com.xdadan.erp.emis.domain.exception.EmisBizError;
|
||||||
@ -126,6 +129,8 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
// /* 合计金额 */
|
// /* 合计金额 */
|
||||||
BigDecimal sendMoneySum= BigDecimal.ZERO;
|
BigDecimal sendMoneySum= BigDecimal.ZERO;
|
||||||
|
|
||||||
|
Date sendDate = null;
|
||||||
|
|
||||||
for (EmisSettleSubBill subBill: emisSettleBill.getSubBillList()
|
for (EmisSettleSubBill subBill: emisSettleBill.getSubBillList()
|
||||||
) {
|
) {
|
||||||
EmisSettleSubBill subBllOld = getSettleSubBillBySubBillNo(subBill.getBillNo());
|
EmisSettleSubBill subBllOld = getSettleSubBillBySubBillNo(subBill.getBillNo());
|
||||||
@ -162,8 +167,11 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
emisSettleBill.setCustomerName(subBllOld.getCustomerName());
|
emisSettleBill.setCustomerName(subBllOld.getCustomerName());
|
||||||
emisSettleBill.setPayee(subBllOld.getPayee());
|
emisSettleBill.setPayee(subBllOld.getPayee());
|
||||||
emisSettleBill.setSalesmen(subBllOld.getSalesmen());
|
emisSettleBill.setSalesmen(subBllOld.getSalesmen());
|
||||||
|
|
||||||
|
sendDate=subBllOld.getWaybillDetail().getSendDate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
sendMoneySum=totalRecMoney;
|
sendMoneySum=totalRecMoney;
|
||||||
|
|
||||||
emisSettleBill.setSendPieceSum(sendPieceSum);
|
emisSettleBill.setSendPieceSum(sendPieceSum);
|
||||||
@ -179,6 +187,49 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
|
|||||||
emisSettleBill.setConfirmSiteManCode("1");
|
emisSettleBill.setConfirmSiteManCode("1");
|
||||||
emisSettleBill.setConfirmSiteCode("88888");
|
emisSettleBill.setConfirmSiteCode("88888");
|
||||||
emisSettleBill.setConfirmSiteNote("现金账单系统自动确认");
|
emisSettleBill.setConfirmSiteNote("现金账单系统自动确认");
|
||||||
|
|
||||||
|
// 现金账期从寄件开始10天
|
||||||
|
emisSettleBill.setCreditPeriodType("1");
|
||||||
|
emisSettleBill.setCreditPeriod(BigDecimal.valueOf(Long.valueOf(10)));
|
||||||
|
|
||||||
|
// 现金账期日从当天开始
|
||||||
|
sendDate=WaybillHelper.removeTimeHMS(sendDate);
|
||||||
|
Calendar sendDateCal=Calendar.getInstance();
|
||||||
|
sendDateCal.setTime(sendDate);
|
||||||
|
emisSettleBill.setSettleDay(sendDateCal.get(Calendar.DAY_OF_MONTH));// 每月1-31日
|
||||||
|
// 10天时间
|
||||||
|
emisSettleBill.setPaymentDueDate(DateUtils.addDays(sendDate,10));
|
||||||
|
|
||||||
|
}else{
|
||||||
|
|
||||||
|
// 计算月结客户的最后付款日期
|
||||||
|
EmisCustomerUser monthUser=getCustomerUserByMonthlyPayCode(emisSettleBill.getCustNo());
|
||||||
|
if(monthUser!=null) {
|
||||||
|
|
||||||
|
// 默认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天
|
||||||
|
emisSettleBill.setCreditPeriodType("1");
|
||||||
|
emisSettleBill.setCreditPeriod(creditPeriod);
|
||||||
|
emisSettleBill.setSettleDay(settleDay);
|
||||||
|
|
||||||
|
Date billMonthDate = DateUtils.parseDate(emisSettleBill.getBillMonth() + "-"+settleDay);
|
||||||
|
Date paymentDueDate = DateUtils.addMonths(billMonthDate,1);
|
||||||
|
paymentDueDate= DateUtils.addDays(paymentDueDate,creditPeriod.intValue());
|
||||||
|
|
||||||
|
// 最后时间
|
||||||
|
emisSettleBill.setPaymentDueDate(paymentDueDate);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user