zhongrj
2024-01-22 e603bf1ebf58458c7fec04e7f75cba488e3b90ad
新增机构区域(网格)绑定处理
9 files modified
88 ■■■■■ changed files
src/main/java/org/springblade/modules/grid/mapper/GridMapper.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/grid/mapper/GridMapper.xml 9 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/grid/service/IGridService.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/grid/service/impl/GridServiceImpl.java 11 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/controller/DeptController.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/IDeptService.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java 24 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/grid/mapper/GridMapper.java
@@ -120,4 +120,13 @@
     * @return
     */
    GridEntity getGridByUserId(@Param("userId") Long userId);
    /**
     * 根据网格名称,社区名称查询对应的网格
     * @param gridName
     * @param communityName
     * @return
     */
    GridEntity getGridByNames(@Param("gridName") String gridName,
                              @Param("communityName")  String communityName);
}
src/main/java/org/springblade/modules/grid/mapper/GridMapper.xml
@@ -182,4 +182,13 @@
        )
    </select>
    <!--根据网格名称,社区名称查询对应的网格-->
    <select id="getGridByNames" resultType="org.springblade.modules.grid.entity.GridEntity">
        select jg.* from jczz_grid jg
        left join blade_region br on br.village_code = jg.community_code
        where jg.is_deleted = 0
        and jg.grid_name = #{gridName}
        and br.name = #{communityName}
    </select>
</mapper>
src/main/java/org/springblade/modules/grid/service/IGridService.java
@@ -123,4 +123,12 @@
     * @return
     */
    GridEntity getGridByUserId(Long userId);
    /**
     * 根据网格名称,社区名称查询对应的网格
     * @param gridName
     * @param communityName
     * @return
     */
    GridEntity getGridByNames(String gridName, String communityName);
}
src/main/java/org/springblade/modules/grid/service/impl/GridServiceImpl.java
@@ -317,4 +317,15 @@
    public GridEntity getGridByUserId(Long userId) {
        return baseMapper.getGridByUserId(userId);
    }
    /**
     * 根据网格名称,社区名称查询对应的网格
     * @param gridName
     * @param communityName
     * @return
     */
    @Override
    public GridEntity getGridByNames(String gridName, String communityName) {
        return baseMapper.getGridByNames(gridName,communityName);
    }
}
src/main/java/org/springblade/modules/system/controller/DeptController.java
@@ -199,6 +199,15 @@
    }
    /**
     * 数据处理(区域网格编号绑定)
     */
    @GetMapping("/dataRegionGridCodeBindHandle")
    public R dataRegionGridCodeBindHandle() {
        return R.data(deptService.dataRegionGridCodeBindHandle());
    }
}
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
@@ -72,4 +72,10 @@
     * @return
     */
    DeptVO getDeptById(@Param("id") Long id);
    /**
     * 查询网格对应的机构信息(包含父级机构名称)
     * @return
     */
    List<DeptVO> getGridDeptAndParentList();
}
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -124,4 +124,11 @@
        and c.id = #{id}
    </select>
    <!--查询网格对应的机构信息(包含父级机构名称)-->
    <select id="getGridDeptAndParentList" resultType="org.springblade.modules.system.vo.DeptVO">
        select bd.*,bd1.dept_name as parentName from blade_dept bd
        left join blade_dept bd1 on bd.parent_id = bd1.id
        where bd.dept_name like '%网格%'
    </select>
</mapper>
src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -127,4 +127,9 @@
     * 数据处理(社区绑定)
     */
    Object dataHandle();
    /**
     * 数据处理(区域网格编号绑定)
     */
    Object dataRegionGridCodeBindHandle();
}
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -22,6 +22,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.common.cache.SysCache;
import org.springblade.common.node.TreeStringNode;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.constant.BladeConstant;
@@ -29,12 +30,15 @@
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringPool;
import org.springblade.modules.grid.entity.GridEntity;
import org.springblade.modules.grid.service.IGridService;
import org.springblade.modules.property.entity.PropertyCompanyEntity;
import org.springblade.modules.property.service.IPropertyCompanyService;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.mapper.DeptMapper;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IRegionService;
import org.springblade.modules.system.vo.DeptDetailVO;
import org.springblade.modules.system.vo.DeptVO;
import org.springblade.modules.system.wrapper.DeptWrapper;
import org.springframework.beans.factory.annotation.Autowired;
@@ -338,4 +342,24 @@
        }
        return null;
    }
    /**
     * 数据处理(区域网格编号绑定)
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Object dataRegionGridCodeBindHandle() {
        // 查询网格对应的机构信息(包含父级机构名称)
        List<DeptVO> deptVOS = baseMapper.getGridDeptAndParentList();
        //遍历处理
        for (DeptVO deptVO : deptVOS) {
            GridEntity gridEntity = SpringUtils.getBean(IGridService.class).getGridByNames(deptVO.getDeptName(),deptVO.getParentName());
            if (null!=gridEntity){
                deptVO.setRegionCode(gridEntity.getGridCode());
                // 更新
                updateById(deptVO);
            }
        }
        return null;
    }
}