lin
2024-04-16 2b1a74f4faa5a00a294bdc6a6d956c2e009cf467
管理员过滤文章
2 files modified
30 ■■■■■ changed files
src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml 13 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java 17 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
@@ -113,6 +113,12 @@
                and (ja.article_range like concat('%',#{article.districtId},'%')
                or ja.article_range is null or ja.article_range = '')
            </if>
            <if test="article.districtIdList != null and article.districtIdList.size() > 0 ">
                and (ja.article_range like
                <foreach collection="article.districtIdList" separator=" or article_range like" item="id">'%${id}%'
                </foreach>
                ) or ja.article_range is null
            </if>
            <if test="article.districtId == null ">
                and ja.article_range is  null
@@ -174,6 +180,13 @@
                or ja.article_range is null)
            </if>
            <if test="article.districtIdList != null and article.districtIdList.size() > 0 ">
                and (ja.article_range like
                <foreach collection="article.districtIdList" separator=" or article_range like" item="id">'%${id}%'
                </foreach>
                ) or ja.article_range is null
            </if>
            <if test="article.building != null and article.building != ''">
                and (ja.building = #{article.building}
                or ja.building is null)
src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.common.cache.SysCache;
import org.springblade.common.utils.AuthUtils;
import org.springblade.common.utils.RoleUtil;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.secure.utils.AuthUtil;
@@ -103,10 +104,22 @@
     */
    @Override
    public IPage<ArticleVO> selectArticlePageByApp(IPage<ArticleVO> page, ArticleVO article) {
        // 判断是否管理员
        if (AuthUtils.isAdministratorOrAdmin(SpringUtils.getRequestParam("roleName"))) {
            IDistrictService districtService = SpringUtils.getBean(IDistrictService.class);
            String communityCode = SpringUtils.getRequestParam("communityCode");
            List<DistrictEntity> list = districtService.list(Wrappers.<DistrictEntity>lambdaQuery()
                .like(DistrictEntity::getCommunityCode, communityCode));
            if (list.size() > 0) {
                article.setDistrictIdList(list.stream().map(item -> item.getId()).collect(Collectors.toList()));
            }
        } else {
        // 查询用户小区的id
        String districId = baseMapper.getDistrictId(article.getHouseCode());
        article.setDistrictId(districId);
            List<String> objects = new ArrayList<>();
            objects.add(districId);
            article.setDistrictIdList(objects);
        }
        IHouseholdService householdService = SpringUtils.getBean(IHouseholdService.class);
        HouseholdEntity householdEntity = householdService.getOne(Wrappers.<HouseholdEntity>lambdaQuery()
            .eq(HouseholdEntity::getHouseCode, article.getHouseCode())