From a08f936b51225c1d73ac4a56d9fe7f210052e28c Mon Sep 17 00:00:00 2001 From: lin <642018748@qq.com> Date: Thu, 13 Apr 2023 18:00:58 +0800 Subject: [PATCH] fix bug --- .../contract/WxRentContractController.java | 2 +- .../service/WxRentContractService.java | 2 ++ .../impl/WxRentContractServiceImpl.java | 34 +++++++++++++++---- 3 files changed, 30 insertions(+), 8 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java index e64d8e732..3a38e25b0 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -309,7 +309,7 @@ public class WxRentContractController extends WxContractBaseController { } ResultData update = null; try { - update = wxRentContractService.update(rentContract, user.getId(), user.getName(), EnumFromType.OTHER.getCode(), oldDate,false); + update = wxRentContractService.updateOneStep(rentContract, user.getId(), user.getName(), EnumFromType.OTHER.getCode(), oldDate,false); } catch (MallinkException e) { return new ResultData(update.code,update.message); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index 1475e75e3..26c528015 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -47,6 +47,8 @@ public interface WxRentContractService { ResultData save(WxRentContract record,Long userId,String userName,Date oldRentStartDate); ResultData update(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate,boolean writeComplate); + + ResultData updateOneStep(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate,boolean writeComplate); /** * 根据Id删除实体 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index 14398f407..6794e852d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -521,13 +521,13 @@ public class WxRentContractServiceImpl implements WxRentContractService { } //生成预览账单(补录第二步,第三步走编辑) - if (record.getReceivePeriod() != null && record.getLease() != null && record.getPrice() != null - && !record.getReceivePeriod().equals(0) && !record.getLease().equals(0)) { - wxBillRentMapper.deletePreviewBill(record); - //重新生成 - List resultList = buildRent(null, record, EnumIsPreview.YES.getCode(),true); - record.setPreviewBillRentList(resultList); - } +// if (record.getReceivePeriod() != null && record.getLease() != null && record.getPrice() != null +// && !record.getReceivePeriod().equals(0) && !record.getLease().equals(0)) { +// wxBillRentMapper.deletePreviewBill(record); +// //重新生成 +// List resultList = buildRent(null, record, EnumIsPreview.YES.getCode(),true); +// record.setPreviewBillRentList(resultList); +// } //创建预览账单 // List resultList = buildRent(null, record, EnumIsPreview.YES.getCode(),true); @@ -618,6 +618,26 @@ public class WxRentContractServiceImpl implements WxRentContractService { wxRentContract.setPreviewBillRentList(resultList); return new ResultData(wxRentContract); } + + @Transactional(rollbackFor = {Exception.class}) + @Override + public ResultData updateOneStep(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate,boolean writeComplate) { + //查询预账单用于展示 + WxBillRent wxBillRent = new WxBillRent(); + wxBillRent.setRentContractId(record.getId()); + wxBillRent.setSortColumns(BaseEntity.SortField.Period_ASC); + wxBillRent.setIsPreview(EnumIsPreview.YES.getCode()); + List resultList = wxBillRentMapper.findList(wxBillRent); + + //更新 + ResultData resultData = getResultDataForUpdate(record, userId,from,oldRentStartDate,writeComplate); + if (resultData.code != Result.SUCCESS) { + return resultData; + } + WxRentContract wxRentContract = (WxRentContract)resultData.data; + wxRentContract.setPreviewBillRentList(resultList); + return new ResultData(wxRentContract); + } /** * 重新生成账单(预账单调整)