src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.java
@@ -26,6 +26,7 @@ import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree; import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO; import org.springblade.modules.doorplateAddress.vo.FuncNode; import org.springblade.modules.house.vo.HouseParam; import java.util.List; @@ -49,32 +50,36 @@ /** * 查询区域数据 * 查询街道数据 * @return */ List<TreeNode> getRegionListByGroupTwon(); List<TreeNode> getRegionListByGroupTwon(@Param("houseParam") HouseParam houseParam, @Param("list") List<String> list); /** * 查询区域数据 * 查询社区数据 * @return */ List<TreeNode> getRegionListByGroupNei(); List<TreeNode> getRegionListByGroupNei(@Param("houseParam") HouseParam houseParam, @Param("list") List<String> list); /** * 根据社区名称查询小区集合 * @param name * @param code * @param houseParam * @param list * @return */ List<TreeNode> getDistrictList(@Param("name") String name,@Param("code") String code); List<TreeNode> getDistrictList(@Param("houseParam") HouseParam houseParam, @Param("list") List<String> list); /** * 根据社区名称查询楼栋集合 * @param name * @param code * @param houseParam * @param list * @return */ List<TreeNode> getBuildingList(@Param("name") String name,@Param("code") String code); List<TreeNode> getBuildingList(@Param("houseParam") HouseParam houseParam, @Param("list") List<String> list); /** * 查询户室及住户相关信息,单元中包含住户 @@ -104,11 +109,12 @@ /** * 查询街路巷 * @param name * @param code * @param houseParam * @param list * @return */ List<TreeNode> getStreetRuList(@Param("name") String name,@Param("code") String code); List<TreeNode> getStreetRuList(@Param("houseParam") HouseParam houseParam, @Param("list") List<String> list); /** * 根据街路巷编号查询街路巷门牌名称集合 src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -2,6 +2,25 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.springblade.modules.doorplateAddress.mapper.DoorplateAddressMapper"> <!--过滤网格数据--> <sql id="filterHouseGrid"> <if test="houseParam.roleName!=null and houseParam.roleName!=''"> <if test="houseParam.roleName=='网格员'"> <choose> <when test="list != null and list.size()>0"> and address_code in <foreach collection="list" item="houseCode" separator ="," open="(" close=")"> #{houseCode} </foreach> </when> <otherwise> and address_code in ('') </otherwise> </choose> </if> </if> </sql> <!--门牌地址详情查询--> <resultMap id="doorplateAddressDetailMap" type="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO" autoMapping="true"> @@ -22,12 +41,18 @@ <!--查询区域数据-街道--> <select id="getRegionListByGroupTwon" resultType="org.springblade.common.node.TreeNode" > select town_street_code as id,town_street_name as name from jczz_doorplate_address group by town_street_code,town_street_name select town_street_code as id,town_street_name as name from jczz_doorplate_address where 1=1 <include refid="filterHouseGrid"/> group by town_street_code,town_street_name </select> <!--查询区域数据-社区--> <select id="getRegionListByGroupNei" resultType="org.springblade.common.node.TreeNode" > select nei_code as id,nei_name as name,town_street_code as parentId from jczz_doorplate_address group by nei_code,nei_name,town_street_code select nei_code as id,nei_name as name,town_street_code as parentId from jczz_doorplate_address where 1=1 <include refid="filterHouseGrid"/> group by nei_code,nei_name,town_street_code </select> <!--根据社区名称查询小区集合--> @@ -36,12 +61,13 @@ where 1=1 and aoi_name !='' and aoi_code !='' <if test="name != null and name!=''"> and nei_name = #{name} <if test="houseParam.name != null and houseParam.name!=''"> and nei_name = #{houseParam.name} </if> <if test="code != null and code!=''"> and nei_code = #{code} <if test="houseParam.code != null and houseParam.code!=''"> and nei_code = #{houseParam.code} </if> <include refid="filterHouseGrid"/> group by aoi_code,aoi_name union all ( @@ -49,12 +75,13 @@ where 1=1 and aoi_code !='' and sub_aoi != '' <if test="name != null and name!=''"> and nei_name = #{name} <if test="houseParam.name != null and houseParam.name!=''"> and nei_name = #{houseParam.name} </if> <if test="code != null and code!=''"> and nei_code = #{code} <if test="houseParam.code != null and houseParam.code!=''"> and nei_code = #{houseParam.code} </if> <include refid="filterHouseGrid"/> group by aoi_code,sub_aoi ) union all @@ -62,12 +89,13 @@ select nei_code as id,'自建房/商铺' as name,2 as addressType from jczz_doorplate_address where 1=1 and aoi_code is null <if test="name != null and name!=''"> and nei_name = #{name} <if test="houseParam.name != null and houseParam.name!=''"> and nei_name = #{houseParam.name} </if> <if test="code != null and code!=''"> and nei_code = #{code} <if test="houseParam.code != null and houseParam.code!=''"> and nei_code = #{houseParam.code} </if> <include refid="filterHouseGrid"/> group by nei_code ) </select> @@ -77,9 +105,10 @@ ( select building_code as id,ifnull(building_name,'1栋') as name,1 as addressType from jczz_doorplate_address where 1=1 and aoi_code = #{code} and aoi_code = #{houseParam.code} and building_code !='' and doorplate_type = '户室牌' <include refid="filterHouseGrid"/> group by building_code,building_name order by building_name ) @@ -87,9 +116,10 @@ ( select address_code as id,doorplate_name as name,2 as addressType from jczz_doorplate_address where 1=1 and aoi_code = #{code} and aoi_code = #{houseParam.code} and building_name is null and (doorplate_type = '小门牌' or (doorplate_type = '中门牌' and address_level = 1)) <include refid="filterHouseGrid"/> ) </select> @@ -170,12 +200,13 @@ select street_ru_code as id,street_ru_name as name,3 as addressType from jczz_doorplate_address where 1=1 and aoi_code is null <if test="name != null and name!=''"> and nei_name = #{name} <if test="houseParam.name != null and houseParam.name!=''"> and nei_name = #{houseParam.name} </if> <if test="code != null and code!=''"> and nei_code = #{code} <if test="houseParam.code != null and houseParam.code!=''"> and nei_code = #{houseParam.code} </if> <include refid="filterHouseGrid"/> group by street_ru_code,street_ru_name </select> src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -29,6 +29,7 @@ import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO; import org.springblade.modules.doorplateAddress.vo.DoorplateAddressVOTree; import org.springblade.modules.doorplateAddress.vo.FuncNode; import org.springblade.modules.grid.service.IGridService; import org.springblade.modules.house.service.IHouseRentalService; import org.springblade.modules.house.service.IHouseholdService; import org.springblade.modules.house.vo.HouseParam; @@ -59,6 +60,9 @@ @Autowired private IHouseRentalService houseRentalService; @Autowired private IGridService gridService; @Override public IPage<DoorplateAddressVO> selectDoorplateAddressPage(IPage<DoorplateAddressVO> page, DoorplateAddressVO doorplateAddress) { @@ -73,14 +77,23 @@ */ @Override public Object getFuncList(Integer type,String roleName) { HouseParam houseParam = new HouseParam(); List<String> stringList = new ArrayList<>(); if (null!=roleName && !roleName.equals("")){ houseParam.setRoleName(roleName); if (roleName.equals("网格员")){ // 查询对应的房屋地址code stringList = gridService.getAddressCodeListByUserId(AuthUtil.getUserId()); } } List<TreeNode> list = new ArrayList<>(); if (null!=type) { // 如果是网格管理员,系统管理员 if (type==1){ // 查询街道 List<TreeNode> townList = baseMapper.getRegionListByGroupTwon(); List<TreeNode> townList = baseMapper.getRegionListByGroupTwon(houseParam,stringList); // 查询社区 List<TreeNode> neiList = baseMapper.getRegionListByGroupNei(); List<TreeNode> neiList = baseMapper.getRegionListByGroupNei(houseParam,stringList); // 遍历 for (TreeNode treeNode : townList) { // 遍历 @@ -91,7 +104,7 @@ } } } // 查询区域数据,当前只有西市街道数据 // 查询区域数据 return townList; } // 如果是居民 @@ -170,10 +183,17 @@ public Object getHousesList(HouseParam houseParam) { List<TreeNode> list = new ArrayList<>(); Map<String, Object> map = new HashMap<>(2); List<String> stringList = new ArrayList<>(); if (null!=houseParam.getRoleName() && !houseParam.getRoleName().equals("")){ if (houseParam.getRoleName().equals("网格员")){ // 查询对应的房屋地址code stringList = gridService.getAddressCodeListByUserId(AuthUtil.getUserId()); } } // 查小区,场所 if (houseParam.getType()==1){ // 根据社区名称查询小区集合 list = baseMapper.getDistrictList(houseParam.getName(),houseParam.getCode()); list = baseMapper.getDistrictList(houseParam,stringList); } // 查楼栋,街路巷 if (houseParam.getType()==2){ @@ -231,12 +251,20 @@ * @return */ private Object getBuildLevelData(HouseParam houseParam,Map<String, Object> map) { List<String> stringList = new ArrayList<>(); if (null!=houseParam.getRoleName() && !houseParam.getRoleName().equals("")){ if (houseParam.getRoleName().equals("网格员")){ // 查询对应的房屋地址code stringList = gridService.getAddressCodeListByUserId(AuthUtil.getUserId()); } } // 判断 code 长度,如果 code 长度大于 12 则为小区查楼栋/商铺,否则则按社区查街路巷 if (houseParam.getCode().length()>12){ List<TreeNode> aoiList = new ArrayList<>(); List<TreeNode> shopList = new ArrayList<>(); // 根据社区名称查询楼栋或者商铺的集合 List<TreeNode> list = baseMapper.getBuildingList(houseParam.getName(),houseParam.getCode()); List<TreeNode> list = baseMapper.getBuildingList(houseParam,stringList); // 排序 StringUtils.getDigits(X.getName()) 取出数字排序 List<TreeNode> sortList = list.stream().sorted(Comparator.comparing(X -> StringUtils.getDigits(X.getName()))).collect(Collectors.toList()); if (list.size()>0){ @@ -255,7 +283,7 @@ return map; }else { // 查询街路巷 List<TreeNode> list = baseMapper.getStreetRuList(houseParam.getName(),houseParam.getCode()); List<TreeNode> list = baseMapper.getStreetRuList(houseParam,stringList); map.put("aoiList",new ArrayList<>()); map.put("shopList",list); // 返回 src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml
@@ -50,8 +50,11 @@ ) b ON b.housing_rental_id = jhr.id WHERE jhr.is_deleted = 0 <if test="vo.auditStatus != null and vo.auditStatus != ''"> <if test="vo.auditStatus ==0 || vo.auditStatus ==1"> AND jhr.audit_status = #{vo.auditStatus} <if test="vo.auditStatus ==1"> AND jhr.audit_status = 1 </if> <if test="vo.auditStatus ==2"> AND jhr.audit_status = 0 </if> <if test="vo.auditStatus ==10"> AND date_format(jhr.due_time,'%Y-%m-%d')>= date_format(now(),'%Y-%m-%d') src/main/java/org/springblade/modules/house/service/impl/HouseRentalServiceImpl.java
@@ -70,6 +70,11 @@ list = gridService.getAddressCodeListByUserId(AuthUtil.getUserId()); } } if (null!=houseRental.getAuditStatus()){ if (houseRental.getAuditStatus()==0){ houseRental.setAuditStatus(2); } } return page.setRecords(baseMapper.selectHouseRentalPage(page, houseRental,list)); } src/main/java/org/springblade/modules/house/vo/HouseParam.java
@@ -26,4 +26,9 @@ * 地址类型 1:小区 2:非小区 */ private Integer addressType; /** * 角色名称 */ private String roleName; } src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
@@ -88,10 +88,13 @@ boolean flag = false; // 任务新增 TaskEntity taskEntity = new TaskEntity(); taskEntity.setName("报事报修"+ System.currentTimeMillis()); taskEntity.setName(taskReportForRepairs.getRealName() + "报修"); taskEntity.setStatus(1); taskEntity.setType(1); taskEntity.setFrequency(3); if (null!=taskReportForRepairs.getAddressCode() && !taskReportForRepairs.getAddressCode().equals("")){ taskEntity.setHouseCode(taskReportForRepairs.getAddressCode()); } // 新增 boolean save = taskService.save(taskEntity); if (save){