| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.apache.logging.log4j.util.Strings; |
| | | import org.springblade.common.cache.SysCache; |
| | | import org.springblade.common.param.CommonParamSet; |
| | | import org.springblade.common.utils.SpringUtils; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.modules.grid.service.IGridService; |
| | |
| | | */ |
| | | @Override |
| | | public IPage<HouseRentalTenantVO> selectHouseRentalPage(IPage<HouseRentalTenantVO> page, HouseRentalTenantVO houseRental) { |
| | | List<String> regionChildCodesList = SysCache.getRegionChildCodesByDeptId(AuthUtil.getDeptId()); |
| | | Integer isAdministrator = AuthUtil.isAdministrator()==true?1:2; |
| | | List<String> list = new ArrayList<>(); |
| | | if (null!=houseRental.getRoleName() && !houseRental.getRoleName().equals("")){ |
| | | if (houseRental.getRoleName().equals("网格员")){ |
| | | // 查询对应的房屋地址code |
| | | list = gridService.getAddressCodeListByUserId(AuthUtil.getUserId()); |
| | | } |
| | | } |
| | | if (null!=houseRental.getAuditStatus()){ |
| | | if (houseRental.getAuditStatus()==0){ |
| | | houseRental.setAuditStatus(2); |
| | | } |
| | | } |
| | | List<HouseRentalTenantVO> houseRentalTenantVOS = baseMapper.selectHouseRentalPage(page, houseRental, list,regionChildCodesList,isAdministrator); |
| | | CommonParamSet<Object> commonParamSet = new CommonParamSet<>().invoke(HouseRentalTenantVO.class, houseRental); |
| | | List<HouseRentalTenantVO> houseRentalTenantVOS = baseMapper.selectHouseRentalPage(page, houseRental, |
| | | commonParamSet.getGridCodeList(), |
| | | commonParamSet.getRegionChildCodesList(), |
| | | commonParamSet.getIsAdministrator()); |
| | | for (HouseRentalTenantVO houseRentalTenantVO : houseRentalTenantVOS) { |
| | | if(houseRentalTenantVO.getStatus().equals(1)){ |
| | | houseRentalTenantVO.setStatus(30); |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public Boolean add(HouseRentalVO houseRentalVO) { |
| | | boolean flag = false; |
| | | houseRentalVO.setCreateUser(AuthUtil.getUserId()); |
| | | houseRentalVO.setCreateTime(new Date()); |
| | | houseRentalVO.setUpdateUser(AuthUtil.getUserId()); |
| | | houseRentalVO.setUpdateTime(new Date()); |
| | | // 网格员新增默认是审核通过 |
| | | houseRentalVO.setAuditStatus(1); |
| | | if (!Strings.isBlank(houseRentalVO.getRoleName()) && houseRentalVO.getRoleName().equals("居民")){ |
| | | // 获取请求头中的角色别名 |
| | | String roleName = SpringUtils.getRequestParam("roleName"); |
| | | // 居民 |
| | | if (!Strings.isBlank(roleName) && roleName.equals("inhabitant")){ |
| | | // 待审核 |
| | | houseRentalVO.setAuditStatus(0); |
| | | } |
| | | //保存自身 |
| | | boolean save = save(houseRentalVO); |
| | | List<String> phoneList = new ArrayList<>(); |
| | | List<HouseholdEntity> householdEntityList = new ArrayList<>(); |
| | | houseRentalVO.getHouseholdVOList().forEach(e -> { |
| | | e.setHouseCode(houseRentalVO.getHouseCode()); |
| | | e.setHousingRentalId(houseRentalVO.getId()); |
| | | e.setRelationship(18); |
| | | e.setResidentialStatus(1); |
| | | e.setRoleType(2); |
| | | householdEntityList.add(e); |
| | | phoneList.add(e.getPhoneNumber()); |
| | | }); |
| | | try { |
| | | // 查询租户是否网格员身份的,给网格员设置居民角色 |
| | | IUserService bean = SpringUtils.getBean(IUserService.class); |
| | | String str = "1717429261910528001"; |
| | | List<User> list = bean.list(Wrappers.<User>lambdaQuery() |
| | | .in(User::getPhone, phoneList) |
| | | .like(User::getRoleId, str)); |
| | | for (User user : list) { |
| | | boolean contains = user.getRoleId().contains("1717429059648606209"); |
| | | if (contains) { |
| | | continue; |
| | | } |
| | | user.setRoleId(user.getRoleId() + ",1717429059648606209"); |
| | | } |
| | | bean.updateBatchById(list); |
| | | } catch (Exception e) { |
| | | log.error("保存用户角色为居民:", e); |
| | | } |
| | | boolean saveBatch = iHouseholdService.saveBatch(householdEntityList); |
| | | flag = save(houseRentalVO); |
| | | //保存到住户 |
| | | flag = saveHousehold(houseRentalVO, flag); |
| | | return flag; |
| | | } |
| | | |
| | | return save && saveBatch; |
| | | /** |
| | | * 保存租户信息 |
| | | * @param houseRentalVO |
| | | * @param flag |
| | | * @return |
| | | */ |
| | | public boolean saveHousehold(HouseRentalVO houseRentalVO, boolean flag) { |
| | | if (flag && houseRentalVO.getHouseholdVOList().size()>0) { |
| | | List<String> phoneList = new ArrayList<>(); |
| | | List<HouseholdEntity> householdEntityList = new ArrayList<>(); |
| | | houseRentalVO.getHouseholdVOList().forEach(e -> { |
| | | e.setHouseCode(houseRentalVO.getHouseCode()); |
| | | e.setHousingRentalId(houseRentalVO.getId()); |
| | | e.setRelationship(18); |
| | | e.setResidentialStatus(1); |
| | | e.setRoleType(2); |
| | | householdEntityList.add(e); |
| | | phoneList.add(e.getPhoneNumber()); |
| | | }); |
| | | try { |
| | | // 查询租户是否网格员身份的,给网格员设置居民角色 |
| | | IUserService bean = SpringUtils.getBean(IUserService.class); |
| | | String str = "1717429261910528001"; |
| | | List<User> list = bean.list(Wrappers.<User>lambdaQuery() |
| | | .in(User::getPhone, phoneList) |
| | | .like(User::getRoleId, str)); |
| | | for (User user : list) { |
| | | boolean contains = user.getRoleId().contains("1717429059648606209"); |
| | | if (contains) { |
| | | continue; |
| | | } |
| | | user.setRoleId(user.getRoleId() + ",1717429059648606209"); |
| | | } |
| | | bean.updateBatchById(list); |
| | | } catch (Exception e) { |
| | | log.error("保存用户角色为居民:", e); |
| | | } |
| | | flag = iHouseholdService.saveBatch(householdEntityList); |
| | | } |
| | | return flag; |
| | | } |
| | | |
| | | /** |