From 19930603f364f8681a0f77edda5f27b9b0032576 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Fri, 15 Nov 2024 16:59:46 +0800 Subject: [PATCH] fix --- .../WxPropertyContractController.java | 59 +---------- .../impl/WxPropertyContractServiceImpl.java | 97 ++++++++++++++++--- 2 files changed, 82 insertions(+), 74 deletions(-) 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 3371151fe..8fa6b97d6 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxPropertyContractController.java @@ -57,10 +57,6 @@ public class WxPropertyContractController extends WxContractBaseController { @Autowired private WxPropertyContractMapper wxPropertyContractMapper; @Autowired - private WxContractCustomersMapper wxContractCustomersMapper; - @Autowired - private WxContractShopMapper wxContractShopMapper; - @Autowired private WxRentPropertyContractService wxRentPropertyContractService; @Autowired WxMallBuildingService buildingService; @@ -110,56 +106,7 @@ public class WxPropertyContractController extends WxContractBaseController { return new ResultData(result); } - public void setCustomers(WxPropertyContract record) { - WxContractCustomers cq = new WxContractCustomers(); - cq.updateTenantInfo(record); - cq.setPrincipalType(record.getCustomerType()); - cq.setNameEqal(record.getCustomerName()); - cq.setPhoneEqal(record.getCustomerPhone()); - List list = wxContractCustomersMapper.findList(cq); - WxContractCustomers cus = null; - if (null != list && list.size() > 0 ){ - cus = list.get(0); - } - if (null == cus) { - final IdWorker idWorker = IdWorker.get(); - cus = new WxContractCustomers(); - cus.updateTenantInfo(record); - cus.setId(idWorker.nextId()); - cus.setPrincipalType(record.getCustomerType()); - cus.setName(record.getCustomerName()); - cus.setPhone(record.getCustomerPhone()); - cus.setLegalPerson(record.getCustomerLegalPerson()); - cus.setLinkPerson(record.getCustomerLinkPerson()); - cus.setCreateDate(new Date()); - cus.setUpdateDate(new Date()); - cus.setStatus(EnumContractCustomersStatus.TEMP.getCode()); - wxContractCustomersMapper.insert(cus); - } - record.setCustomersId(cus.getId()); - } - - public void setShops(WxPropertyContract record,List shopIdList) { - WxContractShop sdel = new WxContractShop(); - sdel.updateTenantInfo(record); - sdel.setContractId(record.getId()); - wxContractShopMapper.deleteByCondition(sdel); - - if (null != shopIdList && shopIdList.size() > 0 ) { - final IdWorker idWorker = IdWorker.get(); - for ( int i = 0 ; i < shopIdList.size(); i ++) { - WxContractShop s = new WxContractShop(); - s.updateTenantInfo(record); - s.setContractId(record.getId()); - s.setShopId(shopIdList.get(i)); - s.setCreateDate(new Date()); - s.setUpdateDate(new Date()); - s.setId(idWorker.nextId()); - wxContractShopMapper.insert(s); - } - } - - } + //第一步 @PostMapping("addBasic") @@ -215,10 +162,6 @@ public class WxPropertyContractController extends WxContractBaseController { wxPropertyContract.setShopIdStr(rentContract.getShopIdStr()); wxPropertyContract.setCustomersId(rentContract.getCustomersId()); } - setShops(wxPropertyContract,wxPropertyContract.shopIdsByShop()); - //关联客户 - setCustomers(wxPropertyContract); - wxPropertyContract.setRentStartType(EnumRentStartType.RENTTIME.getCode()); return wxPropertyContractService.save(wxPropertyContract, user, user.getName(),false); } 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 17cddd9a0..665538c46 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -67,6 +67,12 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService @Autowired WxRentContractMapper wxRentContractMapper; + + @Autowired + private WxContractCustomersMapper wxContractCustomersMapper; + + @Autowired + private WxContractShopMapper wxContractShopMapper; @Lazy @Autowired @@ -319,6 +325,22 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService Date date = new Date(); + if (record.getCreateType().intValue() == EnumPropertyCreateType.BY_SHOP.getCode().intValue()) { + List shopIds = record.shopIdsByShop(); + WxShop shopq = new WxShop(); + shopq.updateTenantInfo(record); + shopq.setIds(shopIds); + List shlist = wxShopService.selectList(shopq); + BigDecimal rentArea = new BigDecimal(0); + for (int i = 0 ; i< shlist.size(); i ++) { + rentArea = rentArea.add(new BigDecimal(shlist.get(i).getOperationArea())); + } + if (null != shlist) { + record.setRentInfo(JSON.toJSONString(shlist)); + } + record.setRentArea(rentArea.toPlainString()); + } + try { if (null == record.getId()) { final IdWorker idWorker = IdWorker.get(); @@ -332,37 +354,80 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService record.setStatus(EnumRentContractStatus.UNWRITE.getCode()); record.setApplyStatus(EnumRentContractAppStatus.DEFAULT.getCode()); wxPropertyContractMapper.insert(record); + + setShops(record,record.shopIdsByShop()); + //关联客户 + setCustomers(record); //编辑 }else { record.setUpdatetime(date); record.setUpdateBy(user.getId()); record.setUpdateByName(user.getName()); wxPropertyContractMapper.updateById(record); + + setShops(record,record.shopIdsByShop()); + //关联客户 + setCustomers(record); } } catch (Exception e) { logger.error("保存物业合同信息失败,e:" + e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); } - - if (record.getCreateType().intValue() == EnumPropertyCreateType.BY_SHOP.getCode().intValue()) { - List shopIds = record.shopIdsByShop(); - WxShop shopq = new WxShop(); - shopq.updateTenantInfo(record); - shopq.setIds(shopIds); - List shlist = wxShopService.selectList(shopq); - BigDecimal rentArea = new BigDecimal(0); - for (int i = 0 ; i< shlist.size(); i ++) { - rentArea = rentArea.add(new BigDecimal(shlist.get(i).getOperationArea())); - } - if (null != shlist) { - record.setRentInfo(JSON.toJSONString(shlist)); - } - record.setRentArea(rentArea.toPlainString()); - } return new ResultData(Result.SUCCESS, "保存物业合同信息成功", record); } + public void setCustomers(WxPropertyContract record) { + WxContractCustomers cq = new WxContractCustomers(); + cq.updateTenantInfo(record); + cq.setPrincipalType(record.getCustomerType()); + cq.setNameEqal(record.getCustomerName()); + cq.setPhoneEqal(record.getCustomerPhone()); + List list = wxContractCustomersMapper.findList(cq); + WxContractCustomers cus = null; + if (null != list && list.size() > 0 ){ + cus = list.get(0); + } + if (null == cus) { + final IdWorker idWorker = IdWorker.get(); + cus = new WxContractCustomers(); + cus.updateTenantInfo(record); + cus.setId(idWorker.nextId()); + cus.setPrincipalType(record.getCustomerType()); + cus.setName(record.getCustomerName()); + cus.setPhone(record.getCustomerPhone()); + cus.setLegalPerson(record.getCustomerLegalPerson()); + cus.setLinkPerson(record.getCustomerLinkPerson()); + cus.setCreateDate(new Date()); + cus.setUpdateDate(new Date()); + cus.setStatus(EnumContractCustomersStatus.TEMP.getCode()); + wxContractCustomersMapper.insert(cus); + } + record.setCustomersId(cus.getId()); + } + + public void setShops(WxPropertyContract record,List shopIdList) { + WxContractShop sdel = new WxContractShop(); + sdel.updateTenantInfo(record); + sdel.setContractId(record.getId()); + wxContractShopMapper.deleteByCondition(sdel); + + if (null != shopIdList && shopIdList.size() > 0 ) { + final IdWorker idWorker = IdWorker.get(); + for ( int i = 0 ; i < shopIdList.size(); i ++) { + WxContractShop s = new WxContractShop(); + s.updateTenantInfo(record); + s.setContractId(record.getId()); + s.setShopId(shopIdList.get(i)); + s.setCreateDate(new Date()); + s.setUpdateDate(new Date()); + s.setId(idWorker.nextId()); + wxContractShopMapper.insert(s); + } + } + + } + @Override //@Transactional(rollbackFor = {Exception.class})