From b5067055c9f86057662368048ea623263c8c80ba Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Sun, 22 Dec 2024 18:26:46 +0800 Subject: [PATCH] fix --- .../contract/WxAgileContractController.java | 2 +- .../WxPropertyContractController.java | 34 ++++++++++++++++-- .../contract/WxRentContractController.java | 35 +++---------------- .../service/WxPropertyContractService.java | 2 ++ .../service/WxRentContractService.java | 2 ++ .../impl/WxPropertyContractServiceImpl.java | 10 ++++++ .../impl/WxRentContractServiceImpl.java | 22 ++++++++++++ 7 files changed, 72 insertions(+), 35 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java index 311f8c673..288c7f802 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxAgileContractController.java @@ -413,7 +413,7 @@ public class WxAgileContractController extends WxContractBaseController { WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId()); if (null == rentContract) { - return new ResultData(Result.ERROR, "编号["+wxRentContract.getId()+"]未找到租金合同"); + return new ResultData(Result.ERROR, "未找到租金合同"); } if (!(rentContract.getRentalEndDate().before(wxRentContract.getRentalStartDate()))) { diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java index f6bdd3929..a25bd6cd9 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java @@ -478,11 +478,11 @@ public class WxPropertyContractController extends WxContractBaseController { WxPropertyContract contract = wxPropertyContractService.getSimpleDetail(proertyContract.getId()); if (null == contract) { - return new ResultData(Result.ERROR, "编号["+contract.getContractNumber()+"]未找到租金合同"); + return new ResultData(Result.ERROR, "未找到物业合同"); } if (contract.getOperationType().intValue() == EnumContractOperationType.WHOLE.getCode().intValue()) { - return new ResultData(Result.ERROR, "编号["+contract.getContractNumber()+"]未找到租金合同"); + return new ResultData(Result.ERROR, "不能操作租金+物业合同"); } if (!(contract.getRentalEndDate().before(proertyContract.getRentalStartDate()))) { @@ -517,9 +517,37 @@ public class WxPropertyContractController extends WxContractBaseController { } + @PostMapping("transfer") + public ResultData transfer(@RequestBody WxPropertyContract proertyContract) { + MallUserInfo user = getUser(); + + if (null == proertyContract.getId() || null == proertyContract.getCustomerType() || + StringUtils.isBlank(proertyContract.getCustomerName()) || StringUtils.isBlank(proertyContract.getCustomerPhone())){ + return new ResultData(Result.ERROR, "缺少参数"); + } + + WxPropertyContract contract = wxPropertyContractService.getSimpleDetail(proertyContract.getId()); + if (null == contract) { + return new ResultData(Result.ERROR, "未找到物业合同"); + } + + if (contract.getOperationType().intValue() == EnumContractOperationType.WHOLE.getCode().intValue()) { + return new ResultData(Result.ERROR, "不能操作租金+物业合同"); + } + + try { + wxPropertyContractService.transfer(contract,user); + }catch(Exception e) { + logger.error("transfer error.",e); + return new ResultData(Result.ERROR,e.getMessage()); + } + + return new ResultData(contract); + } + + @GetMapping("/del") @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) - @SystemControllerLog(description = "物业合同-删除") public ResultData delete(Long id) { logger.debug("[" + getIpAddr() + "] WxPropertyContractController::delete"); wxPropertyContractService.deleteById(id); 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 78ca517a4..a3a62fd00 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -546,7 +546,7 @@ public class WxRentContractController extends WxContractBaseController { WxRentContract rentContract = wxRentContractMapper.selectById(wxRentContract.getId()); if (null == rentContract) { - return new ResultData(Result.ERROR, "编号["+wxRentContract.getId()+"]未找到租金合同"); + return new ResultData(Result.ERROR, "未找到租金合同"); } if (!(rentContract.getRentalEndDate().before(wxRentContract.getRentalStartDate()))) { @@ -609,43 +609,16 @@ public class WxRentContractController extends WxContractBaseController { return new ResultData(Result.ERROR, "编号["+wxRentContract.getId()+"]未找到租金合同"); } - if (rentContract.getOperationType().intValue() == EnumContractOperationType.WHOLE.getCode().intValue()) { - if (null == wxRentContract.getPropertyId()) { - return new ResultData(Result.ERROR,"未创建物业合同,请先完善。"); - } - WxPropertyContract property = wxPropertyContractService.getSimpleDetail(wxRentContract.getPropertyId()); - if (null == property) { - return new ResultData(Result.ERROR,"未创建物业合同,请先完善。"); - } - if (property.getStatus().intValue() == EnumRentContractStatus.UNWRITE.getCode().intValue()) { - return new ResultData(Result.ERROR,"物业合同未完善,请先完善。"); - } - } - MallUserInfo user = getUser(); - rentContract.setRentalStartDate(wxRentContract.getRentalStartDate()); - rentContract.setRentalEndDate(wxRentContract.getRentalEndDate()); - rentContract.setSignDate(wxRentContract.getSignDate()); - rentContract.setStartDate(wxRentContract.getStartDate()); - rentContract.setEndDate(wxRentContract.getStartDate()); - rentContract.setFixStartDate(wxRentContract.getFixStartDate()); - rentContract.setFixEndDate(wxRentContract.getFixEndDate()); - - try { - rentContractValidShop(rentContract); - } catch (Exception e) { - return new ResultData(Result.ERROR,e.getMessage()); - } - try { - wxRentContractService.renewal(rentContract,user); + wxRentContractService.transfer(rentContract,user); }catch(Exception e) { - logger.error("renewal error.",e); + logger.error("transfer error.",e); return new ResultData(Result.ERROR,e.getMessage()); } - return new ResultData(); + return new ResultData(rentContract); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxPropertyContractService.java b/mallinkService/src/main/java/com/iformall/service/WxPropertyContractService.java index 4a5d9f10c..3eb9e5a88 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxPropertyContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxPropertyContractService.java @@ -74,6 +74,8 @@ public interface WxPropertyContractService { void renewal(WxPropertyContract wxPropertyContract,MallUserInfo user,boolean aliasRentContract); + void transfer(WxPropertyContract wxPropertyContract,MallUserInfo user); + void outDateContract(WxMall wxMall); void readyToNomal(WxMall wxMall); diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index f5222bb57..b3870d1b7 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -123,6 +123,8 @@ public interface WxRentContractService { void renewal(WxRentContract wxRentContract,MallUserInfo user); + void transfer(WxRentContract wxRentContract,MallUserInfo user); + /** * 合同正常到期 * @param diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java index ff667612f..f7dbe5507 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -1494,6 +1494,16 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService } wxPropertyContractMapper.insert(record); } + + @Override + @Transactional(rollbackFor = {Exception.class}) + public void transfer(WxPropertyContract record, MallUserInfo user) { + this.setCustomers(record); + record.setUpdatetime(new Date()); + record.setUpdateBy(user.getId()); + record.setUpdateByName(user.getName()); + wxPropertyContractMapper.updateById(record); + } @Override public void outDateContract(WxMall wxMall) { 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 37d4d24b7..0d6038722 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -2094,6 +2094,28 @@ public class WxRentContractServiceImpl implements WxRentContractService { } } + @Transactional(rollbackFor = {Exception.class}) + @Override + public void transfer(WxRentContract rentContract,MallUserInfo user) { + this.setCustomers(rentContract); + rentContract.setUpdatetime(new Date()); + rentContract.setUpdateBy(user.getId()); + rentContract.setUpdateByName(user.getName()); + wxRentContractMapper.updateById(rentContract); + + if (rentContract.getOperationType().intValue() == EnumContractOperationType.WHOLE.getCode().intValue()) { + WxPropertyContract pq = new WxPropertyContract(); + pq.updateTenantInfo(rentContract); + pq.setOperationType(EnumContractOperationType.WHOLE.getCode()); + pq.setRentContractId(rentContract.getId()); + List pclist = wxPropertyContractService.findList(pq); + if (null != pclist && pclist.size() > 0 ) { + WxPropertyContract propertyContract = pclist.get(0); + wxPropertyContractService.transfer(propertyContract, user); + } + } + } + @Override public void outDateContract(WxMall wxMall) { try {