From ac48938c90d93206bc67abeab6f951e3a3968cb5 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Wed, 20 Nov 2024 20:37:18 +0800 Subject: [PATCH 01/31] fix --- .../controller/contract/WxRentContractController.java | 5 +++-- 1 file changed, 3 insertions(+), 2 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 b4eb05da4..54908c107 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -174,6 +174,9 @@ public class WxRentContractController extends WxContractBaseController { if (null != wxRentContract.getDecimalSize() && wxRentContract.getDecimalSize() <= 0 ) { wxRentContract.setDecimalSize(Constant.default_short_decimal_size); } + WxRentContract contract = wxRentContractService.selectById(wxRentContract.getId()); + wxRentContract.setRentArea(contract.getRentArea()); + MallUserInfo user = getUser(); wxRentContract.updateTenantInfo(user); wxRentContract.setAdjustPeriodHandle(); @@ -191,8 +194,6 @@ public class WxRentContractController extends WxContractBaseController { return new ResultData(Result.ERROR,"请填写月平均天数"); } - WxRentContract contract = wxRentContractService.selectById(wxRentContract.getId()); - wxRentContract.setRentArea(contract.getRentArea()); return wxRentContractService.update(wxRentContract, user,user.getName(),EnumFromType.OTHER.getCode(),oldDate,false,true); } From cef68e43d90c9a5195b0ba77fcc065336a73363d Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Wed, 20 Nov 2024 21:55:09 +0800 Subject: [PATCH 02/31] fix --- .../iformall/domain/po/WxRentContract.java | 2 + .../impl/WxRentContractServiceImpl.java | 43 +++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java index c8f654505..cd28f5bd2 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java @@ -568,5 +568,7 @@ public class WxRentContract extends TenantEntity { private Date salesStartTime; @TableField(exist = false) private Date salesEndTime; + @TableField(exist = false) + private String merchantName; } 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 11895b139..cd93c18f5 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1706,8 +1706,51 @@ public class WxRentContractServiceImpl implements WxRentContractService { } //PageInfo pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxRentContractMapper.getRentContractList(rentContract)); PageInfo pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxRentContractMapper.findList(rentContract)); + if (null != pageInfo && null != pageInfo.getList()) { + List customersIdList = new ArrayList(); + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ){ + WxRentContract contract = pageInfo.getList().get(i); + if (null != contract.getCustomersId()) { + customersIdList.add(contract.getCustomersId()); + } + } + + Map customersMap = getContractCustomersMap(rentContract,customersIdList); + + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ) { + WxRentContract contract = pageInfo.getList().get(i); + String merchantName = ""; + if (null != customersMap && null != contract.getCustomersId()) { + WxContractCustomers cc = customersMap.get(contract.getCustomersId()); + if (null != cc) { + merchantName = merchantName + cc.getName()+"/"; + } + } + merchantName = merchantName + contract.getRentInfoShopNumber(); + contract.setMerchantName(merchantName); + } + + } return pageInfo; } + + private Map getContractCustomersMap(TenantEntity tenantEntity,List customerIds) { + WxContractCustomers ccq = new WxContractCustomers(); + ccq.updateTenantInfo(tenantEntity); + ccq.setIds(customerIds); + List cclist = wxContractCustomersMapper.findList(ccq); + if (null != cclist && cclist.size() > 0 ){ + Map map = new HashMap(); + for (int i = 0 ; i < cclist.size() ; i ++ ) { + WxContractCustomers cc = cclist.get(i); + if (null != cc) { + map.put(cc.getId(),cc); + } + } + return map; + } + return null; + } @Override @Transactional(rollbackFor = {Exception.class}) From 16fea37ee78415f9080410bd0258679377c43336 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Wed, 20 Nov 2024 22:24:13 +0800 Subject: [PATCH 03/31] fix --- .../src/main/java/com/iformall/domain/po/WxRentContract.java | 2 +- .../com/iformall/service/impl/WxRentContractServiceImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java index cd28f5bd2..85f461cc1 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java @@ -484,7 +484,7 @@ public class WxRentContract extends TenantEntity { for (int i = 0; i < size; i++) { JSONObject rentInfoObject = rentInfoArray.getJSONObject(i); Long shopId = rentInfoObject.getLong("id"); - String rentArea = rentInfoObject.getString("rentArea"); + String rentArea = rentInfoObject.getString("operationArea"); if (StringUtils.isBlank(rentArea)) { shopAreaMap.put(shopId, new BigDecimal("0")); }else { 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 cd93c18f5..9ea977b68 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -362,7 +362,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { wxBillRent.setSortColumns("starttime asc"); wxBillRent.updateTenantInfo(wxRentContract); wxBillRent.setBillType(EnumBillAllType.RENT.getCode()); - List resultList = wxAllBillMapper.findList(wxBillRent); + List resultList = wxAllBillMapper.findContractSamePeriodSum(wxBillRent); result.put("previewBillRentList",resultList); return result; From ac68fe7dbd94de3b07464c5342ef6a23ec421a9b Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Wed, 20 Nov 2024 22:31:49 +0800 Subject: [PATCH 04/31] fix --- .../iformall/service/impl/WxRentContractServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) 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 9ea977b68..53da053e7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1483,6 +1483,12 @@ public class WxRentContractServiceImpl implements WxRentContractService { rs.setReceivePay(rs.getNeedPay()); rs.setShopId(sid); rs.setRentArea(shoprentArea.toPlainString()); + if (StringUtils.isNotBlank(rb.getBussinessManageFeeNeedPay())) { + rs.setBussinessManageFeeNeedPay(new BigDecimal(rb.getBussinessManageFeeNeedPay()).multiply(shoprate).toPlainString()); + } + if (StringUtils.isNotBlank(rb.getOperatingManageFeeNeedPay())) { + rs.setOperatingManageFeeNeedPay(new BigDecimal(rb.getOperatingManageFeeNeedPay()).multiply(shoprate).toPlainString()); + } if (null != shopUserMap ) { WxShopUsers wsu = shopUserMap.get(sid); if (null != wsu) { From da9c0783b82e7a8c715478a441a5bf97a00637b2 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 15:11:10 +0800 Subject: [PATCH 05/31] fix --- .../iformall/domain/po/WxShopUsersInfo.java | 3 + .../com/iformall/mapper/WxAllBillMapper.java | 2 + .../iformall/mapper/WxShopUsersMapper.java | 2 + .../com/iformall/service/WxShopService.java | 9 ++ .../impl/WxAgileContractServiceImpl.java | 30 ++++--- .../impl/WxPropertyContractServiceImpl.java | 87 ++++++++++++++++++- .../impl/WxRentContractServiceImpl.java | 82 ++++++++++++++++- .../service/impl/WxShopServiceImpl.java | 35 ++++++++ .../main/resources/mapper/WxAllBillMapper.xml | 10 +++ .../mapper/WxShopUsersInfoMapper.xml | 7 +- .../resources/mapper/WxShopUsersMapper.xml | 6 +- 11 files changed, 251 insertions(+), 22 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxShopUsersInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/WxShopUsersInfo.java index 30ed085c3..a9d297061 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxShopUsersInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxShopUsersInfo.java @@ -73,6 +73,9 @@ public class WxShopUsersInfo extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") private Date updateDate; + @io.swagger.annotations.ApiModelProperty(value = "创建的合同客户编号", name = "createContractCustomerId") + private Long createContractCustomerId; + @TableField(exist = false) private String phoneEqual; @TableField(exist = false) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxAllBillMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxAllBillMapper.java index ea171f8cf..49a19228f 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxAllBillMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxAllBillMapper.java @@ -48,5 +48,7 @@ public interface WxAllBillMapper extends CommonMapper { void deleteById(@Param("id")Long id,@Param("tenantId")String tenantId); void deleteEnergyReadingBills(@Param("energyReadingCalcuteId")Long energyReadingCalcuteId,@Param("tenantId")String tenantId); + + void updateContractCusName(WxAllBill wxBillRent); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxShopUsersMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxShopUsersMapper.java index a8901ed92..8a2ab0d71 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxShopUsersMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxShopUsersMapper.java @@ -11,4 +11,6 @@ public interface WxShopUsersMapper extends CommonMapper { List findList(WxShopUsers wxShop); List findShopIdList(WxShopUsers wxShop); + + void updateShopOld(WxShopUsers wxShop); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxShopService.java b/mallinkService/src/main/java/com/iformall/service/WxShopService.java index df0f35ff2..727fe5fb3 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxShopService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxShopService.java @@ -129,10 +129,14 @@ public interface WxShopService { WxShopUsers getOneShopUsers(WxShopUsers wxShopUsersShop); + List getShopUsersList(WxShopUsers wxShopUsers); + void saveOrUpdateShopUsers(WxShopUsers wxShopUsers); void changeShopUsers(WxShopUsers wxShopUsers); + void updateRentShopUsersOld(TenantEntity tenantEntity,Long shopId); + void deleteShopUsers(WxShopUsers wxShopUsers); PageInfo shopUsersListAsPage(WxShopUsers record,Integer pageIndex,Integer pageSize); @@ -141,11 +145,16 @@ public interface WxShopService { PageInfo shopUsersInfoListAsPage(WxShopUsersInfo record,Integer pageIndex,Integer pageSize); + void saveOrUpdateShopUsersInfo(WxShopUsersInfo wxShopUsersInfo); + void saveOrUpdateShopUsersPerson(WxShopUsersPerson wxShopUsers); void deleteShopUsersPerson(WxShopUsersPerson wxShopUsers); + List getUserInfoList(WxShopUsersInfo wxShopUsersInfo); + List getUserInfoIds(WxShopUsersInfo wxShopUsersInfo); + List getUserShopIds(WxShopUsers wxShopUsers); Map getShopUserMap(WxShopUsers wxShopUsers); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java index 3e5760688..140007d6a 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java @@ -481,10 +481,12 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { Long sid = shopIdList.get(j); BigDecimal shoprentArea = shopAreaRateMap.get(sid); BigDecimal shoprate = shoprentArea.divide(new BigDecimal(wxRentContract.getRentArea()),wxRentContract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); - WxShopUsers su = shopUserMap.get(sid); - String cusName = ""; - if (null != su) { - cusName = su.getName(); + String cusName = null; + if (null != shopUserMap) { + WxShopUsers su = shopUserMap.get(sid); + if (null != su) { + cusName = su.getName(); + } } WxAllBill wxBillDeposit = new WxAllBill(); @@ -607,10 +609,12 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { Long sid= shopIdList.get(i); BigDecimal shoprentArea = shopAreaMap.get(sid); BigDecimal shoprate = shoprentArea.divide(new BigDecimal(contract.getRentArea()),contract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); - WxShopUsers su = shopUserMap.get(sid); - String cusName = ""; - if (null != su) { - cusName = su.getName(); + String cusName = null; + if (null != shopUserMap) { + WxShopUsers su = shopUserMap.get(sid); + if (null != su) { + cusName = su.getName(); + } } String money = new BigDecimal(needpay).multiply(shoprate).toPlainString(); WxAllBill bill = buildUnDepositBill(unDeposit,idWorker,contract.getId(),fees,sid,cusName,start,end,receiveDate,money,shoprentArea.toPlainString(),user); @@ -618,10 +622,12 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { } }else { Long sid= item.getShopId(); - WxShopUsers su = shopUserMap.get(sid); - String cusName = ""; - if (null != su) { - cusName = su.getName(); + String cusName = null; + if (null != shopUserMap) { + WxShopUsers su = shopUserMap.get(sid); + if (null != su) { + cusName = su.getName(); + } } WxAllBill bill = buildUnDepositBill(unDeposit,idWorker,contract.getId(),fees,sid,cusName,start,end,receiveDate,needpay,item.getRentArea(),user); billList.add(bill); 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 a0668821f..11e7a885b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -542,6 +542,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService } @Override + @Transactional(rollbackFor = {Exception.class}) public ResultData updatePropertyContractStatus(Long id) { if (id == null) { return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); @@ -556,6 +557,19 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService wxPropertyContract.setStatus(EnumRentContractStatus.READY_FOR_PAING.getCode()); } wxPropertyContractMapper.updateById(wxPropertyContract); + + //合同客户状态变更 + WxContractCustomers customers = wxContractCustomersMapper.selectById(record.getCustomersId(), record.getTenantId()); + customers.setStatus(EnumContractCustomersStatus.FORMUL.getCode()); + customers.setUpdateDate(new Date()); + wxContractCustomersMapper.updateById(customers); + + //把customers写入到wxShopUser + String cusName = castCustomersToShopUsers(customers,record.shopIdsByShop()); + + //如果合同的账单cusName为空的话,则设置为customers name + handleContractBillCusName(record,cusName); + //建立账单 if (record.getReceivePeriod() != null && new BigDecimal(record.getPrice()).compareTo(new BigDecimal(0)) > 0) { //预览账单改为正式,并写入商户id @@ -563,6 +577,69 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService } return new ResultData(Result.SUCCESS, "操作成功"); } + + public String castCustomersToShopUsers(WxContractCustomers customers,List shopIdList) { + WxShopUsersInfo suiq = new WxShopUsersInfo(); + suiq.updateTenantInfo(customers); + suiq.setPrincipalType(customers.getPrincipalType()); + suiq.setName(customers.getName()); + suiq.setPhone(customers.getPhone()); + List ids = wxShopService.getUserInfoList(suiq); + Long infoId = null; + String cusName = null; + if (null == ids || ids.size() <= 0 ) { + WxShopUsersInfo sui = new WxShopUsersInfo(); + sui.updateTenantInfo(customers); + sui.setPrincipalType(customers.getPrincipalType()); + sui.setName(customers.getName()); + sui.setPhone(customers.getPhone()); + sui.setLegalPerson(customers.getLegalPerson()); + sui.setIdNumber(customers.getIdNumber()); + sui.setSex(customers.getSex()); + sui.setLinkPerson(customers.getLinkPerson()); + sui.setCreateContractCustomerId(customers.getId()); + wxShopService.saveOrUpdateShopUsersInfo(sui); + infoId = sui.getId(); + cusName = customers.getName(); + }else { + infoId = ids.get(0).getId(); + cusName = ids.get(0).getName(); + } + + for (int i = 0 ; i < shopIdList.size(); i++) { + Long shopId = shopIdList.get(i); + //查询这个infoId是不是当前的租户 + WxShopUsers suq = new WxShopUsers(); + suq.updateTenantInfo(customers); + suq.setShopId(shopId); + suq.setInfoId(infoId); + suq.setStatus(EnumShopUsersStatus.LIVE.getCode()); + List ulist = wxShopService.getShopUsersList(suq); + if (null != ulist && ulist.size() > 0 ) { + //WxShopUsers su = ulist.get(0); + }else { + //先把当前的租户变更掉 + wxShopService.updateRentShopUsersOld(customers,shopId); + //新增租户 + WxShopUsers su = new WxShopUsers(); + su.updateTenantInfo(customers); + su.setShopId(shopId); + su.setInfoId(infoId); + su.setType(EnumShopUsersType.RENTER.getCode()); + su.setStatus(EnumShopUsersStatus.LIVE.getCode()); + wxShopService.saveOrUpdateShopUsers(su); + } + } + return cusName; + } + + public void handleContractBillCusName(WxPropertyContract record,String cusName) { + WxAllBill bill = new WxAllBill(); + bill.updateTenantInfo(record); + bill.setCusName(cusName); + bill.setPropertyContractId(record.getId()); + wxAllBillMapper.updateContractCusName(bill); + } @Override public void updatePropertyPreviewBill(WxPropertyContract record) { @@ -601,10 +678,12 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService Long shopId = shopIds.get(i); BigDecimal shoprentArea = shopAreaRateMap.get(shopId); BigDecimal shoprate = shoprentArea.divide(new BigDecimal(wxPropertyContract.getRentArea()),wxPropertyContract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); - WxShopUsers su = shopUserMap.get(shopId); - String cusName = ""; - if (null != su) { - cusName = su.getName(); + String cusName = null; + if (null != shopUserMap) { + WxShopUsers su = shopUserMap.get(shopId); + if (null != su) { + cusName = su.getName(); + } } WxAllBill wxBillDeposit = new WxAllBill(); 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 53da053e7..a482b5751 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -29,6 +29,7 @@ import com.iformall.domain.po.WxRentContractRevenueJump; import com.iformall.domain.po.WxRentContractRevenueSales; import com.iformall.domain.po.WxShop; import com.iformall.domain.po.WxShopUsers; +import com.iformall.domain.po.WxShopUsersInfo; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.vo.BillTimeVo; import com.iformall.domain.vo.RatioVo; @@ -63,6 +64,7 @@ import com.iformall.enums.EnumRentDayPriceCalcute; import com.iformall.enums.EnumRentShopType; import com.iformall.enums.EnumRentStartType; import com.iformall.enums.EnumShopUsersStatus; +import com.iformall.enums.EnumShopUsersType; import com.iformall.enums.EnumTradeDailyDateType; import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; @@ -931,10 +933,12 @@ public class WxRentContractServiceImpl implements WxRentContractService { Long sid = shopIdList.get(i); BigDecimal shoprentArea = shopAreaRateMap.get(sid); BigDecimal shoprate = shoprentArea.divide(new BigDecimal(wxRentContract.getRentArea()),wxRentContract.getDecimalSize(),BigDecimal.ROUND_HALF_UP); - WxShopUsers su = shopUserMap.get(sid); - String cusName = ""; - if (null != su) { - cusName = su.getName(); + String cusName = null; + if (null != shopUserMap) { + WxShopUsers su = shopUserMap.get(sid); + if (null != su) { + cusName = su.getName(); + } } WxAllBill wxBillDeposit = new WxAllBill(); @@ -1796,6 +1800,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { } @Override + @Transactional(rollbackFor = {Exception.class}) public ResultData updateRentContractStatus(Long id,boolean buildProperyBill) { if (id == null) { return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); @@ -1827,6 +1832,12 @@ public class WxRentContractServiceImpl implements WxRentContractService { customers.setUpdateDate(new Date()); wxContractCustomersMapper.updateById(customers); + //把customers写入到wxShopUser + String cusName = castCustomersToShopUsers(customers,record.shopIdsByRentInfo()); + + //如果合同的账单cusName为空的话,则设置为customers name + handleContractBillCusName(record,cusName); + //EventUtil.publistRentEvent(this, wxRentContract); //建立账单 //自定义账单无单价,为能生成账单,设置该值 @@ -1866,6 +1877,69 @@ public class WxRentContractServiceImpl implements WxRentContractService { return new ResultData(Result.SUCCESS, "操作成功"); } + + public String castCustomersToShopUsers(WxContractCustomers customers,List shopIdList) { + WxShopUsersInfo suiq = new WxShopUsersInfo(); + suiq.updateTenantInfo(customers); + suiq.setPrincipalType(customers.getPrincipalType()); + suiq.setName(customers.getName()); + suiq.setPhone(customers.getPhone()); + List ids = wxShopService.getUserInfoList(suiq); + Long infoId = null; + String cusName = null; + if (null == ids || ids.size() <= 0 ) { + WxShopUsersInfo sui = new WxShopUsersInfo(); + sui.updateTenantInfo(customers); + sui.setPrincipalType(customers.getPrincipalType()); + sui.setName(customers.getName()); + sui.setPhone(customers.getPhone()); + sui.setLegalPerson(customers.getLegalPerson()); + sui.setIdNumber(customers.getIdNumber()); + sui.setSex(customers.getSex()); + sui.setLinkPerson(customers.getLinkPerson()); + sui.setCreateContractCustomerId(customers.getId()); + wxShopService.saveOrUpdateShopUsersInfo(sui); + infoId = sui.getId(); + cusName = customers.getName(); + }else { + infoId = ids.get(0).getId(); + cusName = ids.get(0).getName(); + } + + for (int i = 0 ; i < shopIdList.size(); i++) { + Long shopId = shopIdList.get(i); + //查询这个infoId是不是当前的租户 + WxShopUsers suq = new WxShopUsers(); + suq.updateTenantInfo(customers); + suq.setShopId(shopId); + suq.setInfoId(infoId); + suq.setStatus(EnumShopUsersStatus.LIVE.getCode()); + List ulist = wxShopService.getShopUsersList(suq); + if (null != ulist && ulist.size() > 0 ) { + //WxShopUsers su = ulist.get(0); + }else { + //先把当前的租户变更掉 + wxShopService.updateRentShopUsersOld(customers,shopId); + //新增租户 + WxShopUsers su = new WxShopUsers(); + su.updateTenantInfo(customers); + su.setShopId(shopId); + su.setInfoId(infoId); + su.setType(EnumShopUsersType.RENTER.getCode()); + su.setStatus(EnumShopUsersStatus.LIVE.getCode()); + wxShopService.saveOrUpdateShopUsers(su); + } + } + return cusName; + } + + public void handleContractBillCusName(WxRentContract record,String cusName) { + WxAllBill bill = new WxAllBill(); + bill.updateTenantInfo(record); + bill.setCusName(cusName); + bill.setRentContractId(record.getId()); + wxAllBillMapper.updateContractCusName(bill); + } @Override public void updatePropertyPreviewBill(WxRentContract record) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java index fb097b037..c3501392a 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java @@ -999,6 +999,12 @@ public class WxShopServiceImpl implements WxShopService { return null; } + @Override + public List getShopUsersList(WxShopUsers wxShopUsers) { + List shopUserList = wxShopUsersMapper.findList(wxShopUsers); + return shopUserList; + } + private void setShopUserProperty(WxShopUsers sus) { WxShopUsersInfo su = wxShopUsersInfoMapper.selectById(sus.getInfoId()); if (null != su) { @@ -1067,6 +1073,15 @@ public class WxShopServiceImpl implements WxShopService { wxShopUsersMapper.updateById(wxShopUsers); } + @Override + public void updateRentShopUsersOld(TenantEntity tenantEntity,Long shopId) { + WxShopUsers wxShopUsers = new WxShopUsers(); + wxShopUsers.setShopId(shopId); + wxShopUsers.setUpdateDate(new Date()); + wxShopUsers.setType(EnumShopUsersType.RENTER.getCode()); + wxShopUsersMapper.updateShopOld(wxShopUsers); + } + @Override public void deleteShopUsers(WxShopUsers wxShopUsers) { wxShopUsersMapper.deleteById(wxShopUsers.getId()); @@ -1095,6 +1110,21 @@ public class WxShopServiceImpl implements WxShopService { PageInfo page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxShopUsersInfoMapper.findList(record)); return page; } + + @Override + public void saveOrUpdateShopUsersInfo(WxShopUsersInfo record) { + if (record.getId() == null) { + final IdWorker idWorker = IdWorker.get(); + record.setId(idWorker.nextId()); + Date date = new Date(); + record.setUpdateDate(date); + record.setCreateDate(date); + wxShopUsersInfoMapper.insert(record); + }else { + record.setUpdateDate(new Date()); + wxShopUsersInfoMapper.updateById(record); + } + } @Override public void saveOrUpdateShopUsersPerson(WxShopUsersPerson record) { @@ -1118,6 +1148,11 @@ public class WxShopServiceImpl implements WxShopService { public void deleteShopUsersPerson(WxShopUsersPerson record) { wxShopUsersPersonMapper.deleteById(record.getId()); } + + @Override + public List getUserInfoList(WxShopUsersInfo wxShopUsersInfo) { + return wxShopUsersInfoMapper.findList(wxShopUsersInfo); + } @Override public List getUserInfoIds(WxShopUsersInfo wxShopUsersInfo) { diff --git a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml index dd95db80b..5de759c3a 100644 --- a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml @@ -402,5 +402,15 @@ and pay <= 0 and IFNULL(`set_off`,'0') <= 0 and IFNULL(`return_pay`,'0') <= 0 and IFNULL(`use_money`,'0') <= 0 + + update wx_all_bill set cus_name = #{cusName} where cus_name is null + + and rent_contract_id = #{rentContractId} + + + and property_contract_id = #{propertyContractId} + + + diff --git a/mallinkService/src/main/resources/mapper/WxShopUsersInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxShopUsersInfoMapper.xml index 7499cfdaf..0aad7edc5 100644 --- a/mallinkService/src/main/resources/mapper/WxShopUsersInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxShopUsersInfoMapper.xml @@ -15,11 +15,12 @@ + `id`,`tenant_id`,`parent_tenant_id`,`create_shop_id`,`principal_type`,`name`,`phone`,`legal_person`,`id_number`,`sex`, - `link_person`,`create_date`,`update_date` + `link_person`,`create_date`,`update_date`,`create_contract_customer_id` @@ -40,6 +41,10 @@ and `create_shop_id` = #{createShopId} + + and `create_contract_customer_id` = #{createContractCustomerId} + + and `principal_type` = #{principalType} diff --git a/mallinkService/src/main/resources/mapper/WxShopUsersMapper.xml b/mallinkService/src/main/resources/mapper/WxShopUsersMapper.xml index ed2464b4f..e0b1396d8 100644 --- a/mallinkService/src/main/resources/mapper/WxShopUsersMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxShopUsersMapper.xml @@ -82,5 +82,9 @@ select distinct shop_id from wx_shop_users - + + + + update wx_shop_users set status = 1,update_date=#{updateDate} where shop_id = #{shopId} and status = 0 and `type` = #{type} + From 63446cae226dfbe5593bbb97d376b36ad104e0ff Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 15:31:13 +0800 Subject: [PATCH 06/31] fix --- .../com/iformall/service/impl/WxRentContractServiceImpl.java | 1 - mallinkService/src/main/resources/mapper/WxAllBillMapper.xml | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) 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 a482b5751..1e47e195f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -361,7 +361,6 @@ public class WxRentContractServiceImpl implements WxRentContractService { //查询预账单用于展示 WxAllBill wxBillRent = new WxAllBill(); wxBillRent.setRentContractId(id); - wxBillRent.setSortColumns("starttime asc"); wxBillRent.updateTenantInfo(wxRentContract); wxBillRent.setBillType(EnumBillAllType.RENT.getCode()); List resultList = wxAllBillMapper.findContractSamePeriodSum(wxBillRent); diff --git a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml index 5de759c3a..54100366c 100644 --- a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml @@ -228,6 +228,8 @@ sum(CAST(ifnull(set_off,'0') AS DECIMAL(20,2))) set_off, sum(CAST(ifnull(use_money,'0') AS DECIMAL(20,2))) use_money, sum(CAST(ifnull(return_pay,'0') AS DECIMAL(20,2))) return_pay, + sum(CAST(ifnull(bussiness_manage_fee_need_pay,'0') AS DECIMAL(20,2))) bussiness_manage_fee_need_pay, + sum(CAST(ifnull(operating_manage_fee_need_pay,'0') AS DECIMAL(20,2))) operating_manage_fee_need_pay, starttime, endtime from wx_all_bill From dcf624a394c30d1a808d04794196bca2ece1b3f7 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 15:51:24 +0800 Subject: [PATCH 07/31] fix --- .../domain/po/WxPropertyContract.java | 2 + .../impl/WxPropertyContractServiceImpl.java | 41 +++++++++++++++++++ .../impl/WxRentContractServiceImpl.java | 1 - 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxPropertyContract.java b/mallinkService/src/main/java/com/iformall/domain/po/WxPropertyContract.java index 456bd120d..099dca5fd 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxPropertyContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxPropertyContract.java @@ -349,5 +349,7 @@ public class WxPropertyContract extends TenantEntity { @TableField(exist = false) private Long queryShopId; + @TableField(exist = false) + private String merchantName; } 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 11e7a885b..0350f7f61 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -116,9 +116,50 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService } } PageInfo pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxPropertyContractMapper.findList(record)); + if (null != pageInfo && null != pageInfo.getList() && pageInfo.getList().size() > 0 ) { + List customersIdList = new ArrayList(); + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ){ + WxPropertyContract contract = pageInfo.getList().get(i); + if (null != contract.getCustomersId()) { + customersIdList.add(contract.getCustomersId()); + } + } + + Map customersMap = getContractCustomersMap(record,customersIdList); + + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ) { + WxPropertyContract contract = pageInfo.getList().get(i); + String merchantName = ""; + if (null != customersMap && null != contract.getCustomersId()) { + WxContractCustomers cc = customersMap.get(contract.getCustomersId()); + if (null != cc) { + merchantName = merchantName + cc.getName()+"/"; + } + } + contract.setMerchantName(merchantName); + } + } return pageInfo; } + private Map getContractCustomersMap(TenantEntity tenantEntity,List customerIds) { + WxContractCustomers ccq = new WxContractCustomers(); + ccq.updateTenantInfo(tenantEntity); + ccq.setIds(customerIds); + List cclist = wxContractCustomersMapper.findList(ccq); + if (null != cclist && cclist.size() > 0 ){ + Map map = new HashMap(); + for (int i = 0 ; i < cclist.size() ; i ++ ) { + WxContractCustomers cc = cclist.get(i); + if (null != cc) { + map.put(cc.getId(),cc); + } + } + return map; + } + return null; + } + @Override public List findList(WxPropertyContract record) { return wxPropertyContractMapper.findList(record); 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 1e47e195f..e32de81cd 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1735,7 +1735,6 @@ public class WxRentContractServiceImpl implements WxRentContractService { merchantName = merchantName + cc.getName()+"/"; } } - merchantName = merchantName + contract.getRentInfoShopNumber(); contract.setMerchantName(merchantName); } From 72bf78d60647ed19364844f099260f0d51074205 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 16:12:31 +0800 Subject: [PATCH 08/31] fix --- .../service/helper/WxRentContractAgileHelper.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractAgileHelper.java b/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractAgileHelper.java index 6ab85447e..8c564c455 100644 --- a/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractAgileHelper.java +++ b/mallinkService/src/main/java/com/iformall/service/helper/WxRentContractAgileHelper.java @@ -61,10 +61,13 @@ public class WxRentContractAgileHelper { EnumRentContractAgilTimeUnit timeUnit,int time,int payPeriod){ List list = new ArrayList<>(); int count = 0; - List yearsBeginList = new ArrayList(); - yearsBeginList.addAll(yearList); - if (yearsBeginList.size() > 0) { - yearsBeginList.remove(0); + List yearsBeginList = null; + if (null != yearList) { + yearsBeginList = new ArrayList(); + yearsBeginList.addAll(yearList); + if (yearsBeginList.size() > 0) { + yearsBeginList.remove(0); + } } BillTimeVo receiveDate = null; while (true) { From f542bfa1e3e5f166187e8cd9dafc30f4f9100370 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 16:21:40 +0800 Subject: [PATCH 09/31] fix --- .../impl/WxAgileContractServiceImpl.java | 42 +++++++++++++++++++ .../impl/WxPropertyContractServiceImpl.java | 2 +- .../impl/WxRentContractServiceImpl.java | 2 +- 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java index 140007d6a..f881c48c6 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java @@ -14,6 +14,7 @@ import com.iformall.domain.po.WxContractCustomers; import com.iformall.domain.po.WxContractShop; import com.iformall.domain.po.WxEnergyFees; import com.iformall.domain.po.WxMerchant; +import com.iformall.domain.po.WxPropertyContract; import com.iformall.domain.po.WxRentContract; import com.iformall.domain.po.WxRentContractAgileDeposit; import com.iformall.domain.po.WxRentContractAgileDepositShop; @@ -135,9 +136,50 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { } } PageInfo pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxRentContractMapper.findList(rentContract)); + if (null != pageInfo && null != pageInfo.getList() && pageInfo.getList().size() > 0 ) { + List customersIdList = new ArrayList(); + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ){ + WxRentContract contract = pageInfo.getList().get(i); + if (null != contract.getCustomersId()) { + customersIdList.add(contract.getCustomersId()); + } + } + + Map customersMap = getContractCustomersMap(record,customersIdList); + + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ) { + WxRentContract contract = pageInfo.getList().get(i); + String merchantName = ""; + if (null != customersMap && null != contract.getCustomersId()) { + WxContractCustomers cc = customersMap.get(contract.getCustomersId()); + if (null != cc) { + merchantName = merchantName + cc.getName(); + } + } + contract.setMerchantName(merchantName); + } + } return pageInfo; } + private Map getContractCustomersMap(TenantEntity tenantEntity,List customerIds) { + WxContractCustomers ccq = new WxContractCustomers(); + ccq.updateTenantInfo(tenantEntity); + ccq.setIds(customerIds); + List cclist = wxContractCustomersMapper.findList(ccq); + if (null != cclist && cclist.size() > 0 ){ + Map map = new HashMap(); + for (int i = 0 ; i < cclist.size() ; i ++ ) { + WxContractCustomers cc = cclist.get(i); + if (null != cc) { + map.put(cc.getId(),cc); + } + } + return map; + } + return null; + } + @Override public WxRentContract selectById(Long id) { 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 0350f7f61..8a27ea743 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -133,7 +133,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService if (null != customersMap && null != contract.getCustomersId()) { WxContractCustomers cc = customersMap.get(contract.getCustomersId()); if (null != cc) { - merchantName = merchantName + cc.getName()+"/"; + merchantName = merchantName + cc.getName(); } } contract.setMerchantName(merchantName); 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 e32de81cd..347303d1f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -1732,7 +1732,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { if (null != customersMap && null != contract.getCustomersId()) { WxContractCustomers cc = customersMap.get(contract.getCustomersId()); if (null != cc) { - merchantName = merchantName + cc.getName()+"/"; + merchantName = merchantName + cc.getName(); } } contract.setMerchantName(merchantName); From 7d31d53bf595d1bd4390512304746636deb934ad Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 16:24:36 +0800 Subject: [PATCH 10/31] fix --- .../com/iformall/service/impl/WxAgileContractServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java index f881c48c6..6d126c23c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAgileContractServiceImpl.java @@ -145,7 +145,7 @@ public class WxAgileContractServiceImpl implements WxAgileContractService { } } - Map customersMap = getContractCustomersMap(record,customersIdList); + Map customersMap = getContractCustomersMap(rentContract,customersIdList); for (int i = 0 ; i < pageInfo.getList().size(); i ++ ) { WxRentContract contract = pageInfo.getList().get(i); From 47a01f82a13e7cce039cb243a9df601ec23036d1 Mon Sep 17 00:00:00 2001 From: winter <664946893@qq.com> Date: Thu, 21 Nov 2024 16:33:20 +0800 Subject: [PATCH 11/31] fix --- .../WxRentPropertyContractController.java | 46 ---------------- .../domain/vo/WxRentPropertyContractVo.java | 6 +++ .../WxRentPropertyContractServiceImpl.java | 52 ++++++++++++++++++- .../resources/mapper/WxRentContractMapper.xml | 5 +- 4 files changed, 60 insertions(+), 49 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentPropertyContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentPropertyContractController.java index d870c4650..6a270e9bf 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentPropertyContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentPropertyContractController.java @@ -83,52 +83,6 @@ public class WxRentPropertyContractController extends WxContractBaseController { List floorIds = new ArrayList(); List buildIds = new ArrayList(); List shopIds = new ArrayList(); -// for (int i = 0 ; i < arrays.size(); i ++) { -// JSONObject o = arrays.getJSONObject(i); -// try { -// floorIds.add(Long.parseLong(o.getString("floor"))); -// }catch(Exception e) { -// floorName = floorName +","+o.getString("floor"); -// } -// try { -// buildIds.add(Long.parseLong(o.getString("building"))); -// }catch(Exception e) { -// buildingName = buildingName + ","+ o.getString("building"); -// } -// try { -// shopIds.add(Long.parseLong(o.getString("id"))); -// }catch(Exception e) { -// shopNumber = shopNumber +","+o.getString("id"); -// } -// } -// -// WxMallBuilding bq = new WxMallBuilding(); -// bq.setIds(buildIds); -// PageInfo bpage = buildingService.listAsPage(bq, 1, 1000); -// if (null != bpage && null != bpage.getList()) { -// for (WxMallBuilding wmb : bpage.getList()) { -// buildingName = buildingName +"," + wmb.getBuildingName(); -// } -// } -// -// WxMallFloor fq = new WxMallFloor(); -// fq.setIds(floorIds); -// PageInfo fpage = floorService.listAsPage(fq, 1, 1000); -// if (null != fpage && null != fpage.getList()) { -// for (WxMallFloor wmf : fpage.getList()) { -// floorName = floorName +"," + wmf.getFloorName(); -// } -// } -// -// WxShop ws = new WxShop(); -// ws.setIds(shopIds); -// PageInfo spage = wxShopService.listAsPage(ws, 1, 1000); -// if (null != spage && null != spage.getList()) { -// for (WxShop shop : spage.getList()) { -// shopNumber = shopNumber+","+shop.getShopNumber(); -// } -// } - wrc.setFloorName(floorName); wrc.setBuildingName(buildingName); wrc.setShopNumber(shopNumber); diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxRentPropertyContractVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxRentPropertyContractVo.java index 7fe24aac0..774922aa3 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxRentPropertyContractVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxRentPropertyContractVo.java @@ -1,5 +1,6 @@ package com.iformall.domain.vo; +import com.baomidou.mybatisplus.annotation.TableField; import com.iformall.domain.po.base.TenantEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -21,6 +22,8 @@ public class WxRentPropertyContractVo extends TenantEntity { private Long rentId; private Long propertyId; + private Long customersId; + private String floorName; private String buildingName; @@ -104,5 +107,8 @@ public class WxRentPropertyContractVo extends TenantEntity { private String queryShopNumber; + @TableField(exist = false) + private String merchantName; + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentPropertyContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentPropertyContractServiceImpl.java index 49a07f3f1..47506981f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentPropertyContractServiceImpl.java @@ -4,14 +4,17 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.po.WxAllBill; +import com.iformall.domain.po.WxContractCustomers; import com.iformall.domain.po.WxFlowRecord; import com.iformall.domain.po.WxPropertyContract; import com.iformall.domain.po.WxRentContract; +import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.vo.WxRentPropertyContractVo; import com.iformall.enums.EnumContract; import com.iformall.enums.EnumContractOperationType; import com.iformall.enums.EnumContractType; import com.iformall.enums.EnumRentShopType; +import com.iformall.mapper.WxContractCustomersMapper; import com.iformall.mapper.WxPropertyContractMapper; import com.iformall.mapper.WxRentContractMapper; import com.iformall.service.WxAgileContractService; @@ -45,6 +48,9 @@ public class WxRentPropertyContractServiceImpl implements WxRentPropertyContract @Autowired WxPropertyContractMapper wxPropertyContractMapper; + + @Autowired + WxContractCustomersMapper wxContractCustomersMapper; @Autowired WxPropertyContractService wxPropertyContractService; @@ -71,7 +77,51 @@ public class WxRentPropertyContractServiceImpl implements WxRentPropertyContract }else { record.setIds(ids); } - return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxRentContractMapper.listContractVo(record)); + PageInfo pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxRentContractMapper.listContractVo(record)); + if (null != pageInfo && null != pageInfo.getList() && pageInfo.getList().size() > 0 ) { + List customersIdList = new ArrayList(); + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ){ + WxRentPropertyContractVo contract = pageInfo.getList().get(i); + if (null != contract.getCustomersId()) { + customersIdList.add(contract.getCustomersId()); + } + } + + Map customersMap = getContractCustomersMap(record,customersIdList); + + for (int i = 0 ; i < pageInfo.getList().size(); i ++ ) { + WxRentPropertyContractVo contract = pageInfo.getList().get(i); + String merchantName = ""; + if (null != customersMap && null != contract.getCustomersId()) { + WxContractCustomers cc = customersMap.get(contract.getCustomersId()); + if (null != cc) { + merchantName = merchantName + cc.getName(); + } + } + contract.setMerchantName(merchantName); + } + } + + + return pageInfo; + } + + private Map getContractCustomersMap(TenantEntity tenantEntity,List customerIds) { + WxContractCustomers ccq = new WxContractCustomers(); + ccq.updateTenantInfo(tenantEntity); + ccq.setIds(customerIds); + List cclist = wxContractCustomersMapper.findList(ccq); + if (null != cclist && cclist.size() > 0 ){ + Map map = new HashMap(); + for (int i = 0 ; i < cclist.size() ; i ++ ) { + WxContractCustomers cc = cclist.get(i); + if (null != cc) { + map.put(cc.getId(),cc); + } + } + return map; + } + return null; } @Override diff --git a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml index 7289fb3bd..0b82d9788 100644 --- a/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxRentContractMapper.xml @@ -249,7 +249,8 @@ - + + @@ -277,7 +278,7 @@ + +