| @@ -87,6 +87,9 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||||
| @Autowired | @Autowired | ||||
| ExcelService excelService; | ExcelService excelService; | ||||
| @Autowired | |||||
| WxPropertyContractMapper wxPropertyContractMapper; | |||||
| @Override | @Override | ||||
| public PageInfo<WxMerchant> listAsPage(WxMerchant record, Integer pageIndex, Integer pageSize) { | public PageInfo<WxMerchant> listAsPage(WxMerchant record, Integer pageIndex, Integer pageSize) { | ||||
| @@ -254,21 +257,37 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||||
| wxMerchant.setStatus(EnumMerchantStatus.NOT_VALID.getCode()); | wxMerchant.setStatus(EnumMerchantStatus.NOT_VALID.getCode()); | ||||
| wxMerchantMapper.updateByPrimaryKeySelective(wxMerchant); | wxMerchantMapper.updateByPrimaryKeySelective(wxMerchant); | ||||
| //解绑商铺 | |||||
| WxMerchantShop wxMerchantShopQuery = new WxMerchantShop(); | |||||
| wxMerchantShopQuery.setTenantId(wxMerchant.getTenantId()); | |||||
| wxMerchantShopQuery.setMerchantId(wxMerchant.getId()); | |||||
| wxMerchantShopQuery.setIsDel(EnumDelStatus.NOT_DEL.getCode()); | |||||
| List<WxMerchantShop> wxMerchantShopList = wxMerchantShopMapper.findList(wxMerchantShopQuery); | |||||
| for(WxMerchantShop wxMerchantShop:wxMerchantShopList){ | |||||
| wxMerchantShop.setIsDel(EnumDelStatus.DEL.getCode()); | |||||
| wxMerchantShopMapper.updateByPrimaryKeySelective(wxMerchantShop); | |||||
| //更新商铺状态 | |||||
| WxShop wxShop = new WxShop(); | |||||
| wxShop.setTenantId(wxMerchant.getTenantId()); | |||||
| wxShop.setId(wxMerchantShop.getShopId()); | |||||
| wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode()); | |||||
| wxShopMapper.updateByPrimaryKeySelective(wxShop); | |||||
| //是否有租赁合同 | |||||
| WxRentContract wxRentContract = new WxRentContract(); | |||||
| wxRentContract.setMerchantId(id); | |||||
| long countRentContract = wxRentContractMapper.select(wxRentContract).parallelStream(). | |||||
| filter(c -> c.getStatus().equals(EnumRentContractStatus.SIGNED_RENT_UNPAID.getCode()) || | |||||
| c.getStatus().equals(EnumRentContractStatus.RENT_PAID.getCode()) || | |||||
| c.getStatus().equals(EnumRentContractStatus.CONTRACT_END_SOON.getCode())).count(); | |||||
| //是否有物业合同 | |||||
| WxPropertyContract wxPropertyContract = new WxPropertyContract(); | |||||
| wxPropertyContract.setMerchantId(id); | |||||
| long countPropertyContract = wxPropertyContractMapper.select(wxPropertyContract).parallelStream(). | |||||
| filter(c -> c.getStatus().equals(EnumRentContractStatus.SIGNED_RENT_UNPAID.getCode()) || | |||||
| c.getStatus().equals(EnumRentContractStatus.RENT_PAID.getCode()) || | |||||
| c.getStatus().equals(EnumRentContractStatus.CONTRACT_END_SOON.getCode())).count(); | |||||
| //解绑商铺-没有租赁合同和物业合同才可以 | |||||
| if (countRentContract == 0 && countPropertyContract == 0) { | |||||
| WxMerchantShop wxMerchantShopQuery = new WxMerchantShop(); | |||||
| wxMerchantShopQuery.setTenantId(wxMerchant.getTenantId()); | |||||
| wxMerchantShopQuery.setMerchantId(wxMerchant.getId()); | |||||
| wxMerchantShopQuery.setIsDel(EnumDelStatus.NOT_DEL.getCode()); | |||||
| List<WxMerchantShop> wxMerchantShopList = wxMerchantShopMapper.findList(wxMerchantShopQuery); | |||||
| for (WxMerchantShop wxMerchantShop : wxMerchantShopList) { | |||||
| wxMerchantShop.setIsDel(EnumDelStatus.DEL.getCode()); | |||||
| wxMerchantShopMapper.updateByPrimaryKeySelective(wxMerchantShop); | |||||
| //更新商铺状态 | |||||
| WxShop wxShop = new WxShop(); | |||||
| wxShop.setTenantId(wxMerchant.getTenantId()); | |||||
| wxShop.setId(wxMerchantShop.getShopId()); | |||||
| wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode()); | |||||
| wxShopMapper.updateByPrimaryKeySelective(wxShop); | |||||
| } | |||||
| } | } | ||||
| //解绑用户 | //解绑用户 | ||||
| WxMerchantBUser bUser = new WxMerchantBUser(); | WxMerchantBUser bUser = new WxMerchantBUser(); | ||||