@@ -249,8 +249,18 @@ public class WxRentContractServiceImpl implements WxRentContractService {
public ResultData update(WxRentContract record, Long userId,String userName) {
//对比上一次,是否有更改,有,重新生成预账单
WxRentContract dbRent = wxRentContractMapper.selectByPrimaryKey(record.getId());
//查询预账单用于展示
WxBillRent wxBillRent = new WxBillRent();
wxBillRent.setRentContractId(record.getId());
wxBillRent.setSortColumns(WxBillRent.Field.Period_ASC);
wxBillRent.setIsPreview(EnumIsPreview.YES.getCode());
List<WxBillRent> resultList = wxBillRentMapper.findList(wxBillRent);
boolean change = false;
if(record.getAdjustPeriod().intValue() != dbRent.getAdjustPeriod().intValue()){
if(CollectionUtils.isEmpty(resultList)){
change = true;
}else if(record.getAdjustPeriod().intValue() != dbRent.getAdjustPeriod().intValue()){
change = true;
}else{
if(record.getReceivePeriod() != null && record.getLease()!=null && record.getPrice()!= null) {
@@ -289,17 +299,9 @@ public class WxRentContractServiceImpl implements WxRentContractService {
ResultData resultData = getResultDataForUpdate(record, userId);
//有改变,删除预账单,重新生成
List<WxBillRent> resultList;
if(change) {
wxBillRentMapper.deletePreviewBill(record);
resultList = buildRent(new WxMerchant(), null, record, EnumIsPreview.YES.getCode());
}else{
//查询预账单用于展示
WxBillRent wxBillRent = new WxBillRent();
wxBillRent.setRentContractId(record.getId());
wxBillRent.setSortColumns(WxBillRent.Field.Period_ASC);
wxBillRent.setIsPreview(EnumIsPreview.YES.getCode());
resultList = wxBillRentMapper.findList(wxBillRent);
}
//启动审批流
@@ -320,8 +322,8 @@ public class WxRentContractServiceImpl implements WxRentContractService {
// 保存调整金额(预账单调整)
if(!CollectionUtils.isEmpty(record.getPreviewBillRentList())){
for (WxBillRent wxB illRent:record.getPreviewBillRentList()) {
wxBillRentMapper.update(wxB illRent);
for (WxBillRent b illRent:record.getPreviewBillRentList()) {
wxBillRentMapper.update(b illRent);
}
}
WxRentContract wxRentContract = (WxRentContract)resultData.data;