src/main/java/org/springblade/common/param/CommonParamSet.java
@@ -1,5 +1,6 @@ package org.springblade.common.param; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.util.Strings; import org.springblade.common.cache.SysCache; import org.springblade.common.utils.AuthUtils; @@ -62,8 +63,14 @@ } } // 超级管理员、系统管理员、公安管理员不过滤数据 isAdministrator = AuthUtils.isAdmin(roleName) || AuthUtils.isAdmin() || AuthUtils.isAdministrator() || AuthUtils.isGaAdmin() ? 1 : 2; // isAdministrator = AuthUtils.isAdmin(roleName) || AuthUtils.isAdmin() || // AuthUtils.isAdministrator() || AuthUtils.isGaAdmin() ? 1 : 2; if (StringUtils.isNotBlank(roleName)) { isAdministrator = AuthUtils.isAdmin(roleName) ? 1 : 2; } else { isAdministrator = AuthUtils.isAdmin() || AuthUtils.isAdministrator() || AuthUtils.isGaAdmin() ? 1 : 2; } if (isAdministrator == 2) { // 获取当前用户的所属行政区划编号() src/main/java/org/springblade/modules/house/entity/HouseEntity.java
@@ -152,6 +152,12 @@ private String gridCode; /** * 警务网格编号 */ @ApiModelProperty(value = "警务网格编号") private String jwGridCode; /** * 来源 1:地址总表 2:国控采集 */ @ApiModelProperty(value = "来源 1:地址总表 2:国控采集") src/main/java/org/springblade/modules/house/mapper/HouseMapper.java
@@ -48,6 +48,7 @@ List<HouseVO> selectHousePage(IPage page, @Param("house") HouseVO house, @Param("regionChildCodesList") List<String> regionChildCodesList, @Param("gridCodeList") List<String> gridCodeList, @Param("isAdministrator") Integer isAdministrator); /** src/main/java/org/springblade/modules/house/mapper/HouseMapper.xml
@@ -140,6 +140,7 @@ from jczz_house jh left join jczz_grid jg on jg.grid_code = jh.grid_code and jg.is_deleted = 0 left join blade_region br on br.code = jg.community_code LEFT JOIN jczz_police_affairs_grid jpag on jh.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0 <where> <if test="house.id != null ">and jh.id = #{house.id}</if> <if test="house.streetCode != null and house.streetCode != ''"> @@ -175,12 +176,56 @@ <if test="house.buildingNo != null ">and jh.building_no = #{house.buildingNo}</if> <if test="isAdministrator==2"> <choose> <when test="regionChildCodesList !=null and regionChildCodesList.size()>0"> and jg.community_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> <when test="house.roleName != null and house.roleName != ''"> <if test="house.roleName=='wgy'"> <choose> <when test="gridCodeList !=null and gridCodeList.size()>0"> and jh.grid_code in <foreach collection="gridCodeList" item="code" open="(" close=")" separator=","> #{code} </foreach> </when> <otherwise> and jh.grid_code in ('') </otherwise> </choose> </if> <if test="house.roleName=='mj'"> <choose> <when test="regionChildCodesList !=null and regionChildCodesList.size()>0"> and jpag.community_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> </when> <otherwise> and jpag.community_code in ('') </otherwise> </choose> </if> </when> <otherwise> <choose> <when test="regionChildCodesList !=null and regionChildCodesList.size()>0"> and ( jg.grid_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> or jpag.community_code in <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=","> #{code} </foreach> ) </when> <otherwise> </otherwise> </choose> </otherwise> </choose> </if> <if test="house.parentId != null "> src/main/java/org/springblade/modules/house/service/impl/HouseServiceImpl.java
@@ -23,6 +23,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.util.Strings; import org.springblade.common.cache.SysCache; import org.springblade.common.param.CommonParamSet; import org.springblade.common.utils.IdUtils; import org.springblade.common.utils.NodeTreeUtil; import org.springblade.common.utils.SpringUtils; @@ -51,6 +52,7 @@ import org.springblade.modules.system.entity.User; import org.springblade.modules.system.service.IRegionService; import org.springblade.modules.system.service.IUserService; import org.springblade.modules.taskPlaceSelfCheck.vo.TaskPlaceSelfCheckVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -87,9 +89,13 @@ @Override public IPage<HouseVO> selectHousePage(IPage<HouseVO> page, HouseVO house) { List<String> regionChildCodesList = SysCache.getRegionChildCodesByDeptId(AuthUtil.getDeptId()); Integer isAdministrator = AuthUtil.isAdministrator() == true ? 1 : 2; List<HouseVO> houseVOS = baseMapper.selectHousePage(page, house, regionChildCodesList, isAdministrator); // List<String> regionChildCodesList = SysCache.getRegionChildCodesByDeptId(AuthUtil.getDeptId()); // Integer isAdministrator = AuthUtil.isAdministrator() == true ? 1 : 2; CommonParamSet commonParamSet = new CommonParamSet().invoke(HouseVO.class,house); List<HouseVO> houseVOS = baseMapper.selectHousePage(page, house, commonParamSet.getRegionChildCodesList(),commonParamSet.getGridCodeList(), commonParamSet.getIsAdministrator() ); return page.setRecords(houseVOS); } src/main/java/org/springblade/modules/house/vo/HouseVO.java
@@ -16,6 +16,7 @@ */ package org.springblade.modules.house.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.modules.house.entity.HouseEntity; @@ -73,5 +74,13 @@ // 标签父级id private Integer parentId; // 角色名称 @ApiModelProperty(value = "角色名称", example = "") private String roleName; // 社区编号 @ApiModelProperty(value = "社区编号", example = "") private String communityCode; private List<UserHouseLabelVO> userHouseLabelVOList = new ArrayList<>(); } src/test/java/org/springblade/test/BladeTest.java
@@ -1,11 +1,13 @@ package org.springblade.test; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import org.apache.logging.log4j.util.Strings; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.springblade.common.utils.SpringUtils; import org.springblade.core.test.BladeBootTest; import org.springblade.core.test.BladeSpringExtension; import org.springblade.core.tool.utils.SpringUtil; import org.springblade.core.tool.utils.StringUtil; import org.springblade.flow.engine.entity.FlowModel; import org.springblade.flow.engine.service.FlowEngineService; @@ -15,6 +17,8 @@ import org.springblade.modules.house.service.IHouseService; import org.springblade.modules.place.entity.PlaceEntity; import org.springblade.modules.place.service.IPlaceService; import org.springblade.modules.police.entity.PoliceAffairsGridEntity; import org.springblade.modules.police.service.IPoliceAffairsGridService; import org.springblade.modules.task.entity.TaskReportForRepairsEntity; import org.springblade.modules.task.service.ITaskReportForRepairsService; import org.springframework.beans.factory.annotation.Autowired; @@ -40,7 +44,7 @@ private IDoorplateAddressService iDoorplateAddressService; @Autowired private ITaskReportForRepairsService iTaskReportForRepairsService; private IHouseService iHouseService; // @Test public void test() { @@ -59,25 +63,24 @@ // @Test public void test2() { List<TaskReportForRepairsEntity> list = iTaskReportForRepairsService.list(); IHouseService bean = SpringUtils.getBean(IHouseService.class); IPlaceService bean2 = SpringUtils.getBean(IPlaceService.class); for (TaskReportForRepairsEntity taskReportForRepairsEntity : list) { HouseEntity houseEntity = bean.getOne(Wrappers.<HouseEntity>lambdaQuery() .eq(HouseEntity::getHouseCode, taskReportForRepairsEntity.getAddressCode())); if (houseEntity != null) { // taskReportForRepairsEntity.setGridCode(houseEntity.getGridCode()); iTaskReportForRepairsService.updateById(taskReportForRepairsEntity); }else { PlaceEntity placeEntity = bean2.getOne(Wrappers.<PlaceEntity>lambdaQuery() .eq(PlaceEntity::getHouseCode, taskReportForRepairsEntity.getAddressCode()).last("limit 1")); // taskReportForRepairsEntity.setGridCode(placeEntity.getGridCode()); iTaskReportForRepairsService.updateById(taskReportForRepairsEntity); // 查询 警务网格为空的数据 List<HouseEntity> list = iHouseService.list(Wrappers.<HouseEntity>lambdaQuery().eq(HouseEntity::getIsDeleted,0)); // 遍历 for (HouseEntity houseEntity : list) { if (!Strings.isBlank(houseEntity.getLng())) { // 空间分析 //点坐标解析 String point = "'POINT(" + houseEntity.getLng() + " " + houseEntity.getLat() + ")'"; List<PoliceAffairsGridEntity> policeAffairsGridEntities = SpringUtil.getBean(IPoliceAffairsGridService.class).spatialAnalysis(point); if (policeAffairsGridEntities.size() > 0) { PoliceAffairsGridEntity policeAffairsGridEntity = policeAffairsGridEntities.get(0); houseEntity.setJwGridCode(policeAffairsGridEntity.getJwGridCode()); // 更新 iHouseService.updateById(houseEntity); } } } } @Test