101captain
2021-12-29 d513dd93de3bc3941efa859f933915af16bbd0c5
Merge branch 'bigscreen_dev'

# Conflicts:
# springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/PageBaseDTO.java
# springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/BigScreenStatisticsApi.java
1个文件已添加
5个文件已修改
111 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageComActDynTypeDTO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ActDynTypeApi.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/BigScreenStatisticsApi.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/NeighborApi.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/config/MybatisHmkInterceptor.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/config/MybatisPlusConfig.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageComActDynTypeDTO.java
@@ -17,7 +17,7 @@
    @ApiModelProperty("关键词")
    private String keyWord;
    @ApiModelProperty(value = "社区id", hidden = true)
    @ApiModelProperty(value = "社区id")
    private Long communityId;
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ActDynTypeApi.java
@@ -23,6 +23,8 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import static java.util.Objects.isNull;
@Slf4j
@Api(tags = {"社区动态分类模块"})
@RestController
@@ -35,8 +37,9 @@
    @ApiOperation(value = "分页查询社区动态列表", response = ComActDynTypeVO.class)
    @PostMapping("/page")
    public R page(@RequestBody PageComActDynTypeDTO comActDynTypeDTO) {
        Long communityId = this.getCommunityId();
        comActDynTypeDTO.setCommunityId(communityId);
        if (isNull(comActDynTypeDTO.getCommunityId())) {
            comActDynTypeDTO.setCommunityId(this.getCommunityId());
        }
        return communityService.pageDynTypeByAdmin(comActDynTypeDTO);
    }
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/BigScreenStatisticsApi.java
@@ -1,10 +1,19 @@
package com.panzhihua.community_backstage.api;
import static java.util.Objects.isNull;
import javax.annotation.Resource;
import com.panzhihua.common.model.vos.community.ComActActivityVO;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenResidentActStatisticsInfo;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenVolunteerActStatisticsInfo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -53,6 +62,9 @@
import com.panzhihua.common.model.vos.community.screen.event.EventPopulationStreetVO;
import com.panzhihua.common.model.vos.community.screen.event.EventStatisticsVO;
import com.panzhihua.common.model.vos.community.screen.index.IndexStatisticsVO;
import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAdminVO;
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingComPbDynVO;
import com.panzhihua.common.model.vos.community.switchs.StreetAllAppletsVO;
import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAdminVO;
import com.panzhihua.common.model.vos.partybuilding.PartyBuildingComPbDynVO;
import com.panzhihua.common.model.vos.screen.ScreenDrawEventPopulationTotalVO;
@@ -324,7 +336,9 @@
    @ApiOperation(value = "首页二级页面-社区动态展示列表", response = ComActDynVO.class)
    @PostMapping("/index/dynList")
    public R indexDynList(@RequestBody PageBaseDTO pageBaseDTO) {
        pageBaseDTO.setCommunityId(this.getCommunityId());
        if (isNull(pageBaseDTO.getCommunityId())) {
            pageBaseDTO.setCommunityId(this.getCommunityId());
        }
        return communityService.indexDynList(pageBaseDTO);
    }
@@ -348,7 +362,9 @@
    @ApiOperation(value = "首页二级页面-邻里圈展示列表", response = ComActNeighborCircleAdminVO.class)
    @PostMapping("/index/neighborList")
    public R indexNeighborList(@RequestBody PageBaseDTO pageBaseDTO) {
        pageBaseDTO.setCommunityId(this.getCommunityId());
        if (isNull(pageBaseDTO.getCommunityId())) {
            pageBaseDTO.setCommunityId(this.getCommunityId());
        }
        return communityService.indexNeighborList(pageBaseDTO);
    }
@@ -509,4 +525,10 @@
        pageBaseDTO.setCommunityId(this.getCommunityId());
        return communityService.indexVolunteerActList(pageBaseDTO);
    }
    @ApiOperation(value = "查询所有社区", response = StreetAllAppletsVO.class)
    @GetMapping("/list/act")
    public R list() {
        return communityService.communitySwitchList();
    }
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/NeighborApi.java
@@ -19,6 +19,8 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import static java.util.Objects.isNull;
/**
 * @auther llming
 * @describe
@@ -155,7 +157,9 @@
    @ApiOperation(value = "分页查询邻里圈话题列表", response = ComActNeighborCircleTopicAdminVO.class)
    @PostMapping("pageNeighborTopicByAdmin")
    public R pageNeighborTopicByAdmin(@RequestBody ComActNeighborCircleTopicAdminDTO circleTopicAdminDTO) {
        circleTopicAdminDTO.setCommunityId(this.getCommunityId());
        if (isNull(circleTopicAdminDTO.getCommunityId())) {
            circleTopicAdminDTO.setCommunityId(this.getCommunityId());
        }
        return communityService.pageNeighborTopicByAdmin(circleTopicAdminDTO);
    }
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/config/MybatisHmkInterceptor.java
New file
@@ -0,0 +1,68 @@
package com.panzhihua.service_community.config;
import com.baomidou.mybatisplus.core.toolkit.PluginUtils;
import com.baomidou.mybatisplus.extension.plugins.inner.InnerInterceptor;
import org.apache.ibatis.executor.Executor;
import org.apache.ibatis.executor.statement.StatementHandler;
import org.apache.ibatis.mapping.BoundSql;
import org.apache.ibatis.mapping.MappedStatement;
import org.apache.ibatis.mapping.ParameterMapping;
import org.apache.ibatis.plugin.*;
import org.apache.ibatis.reflection.DefaultReflectorFactory;
import org.apache.ibatis.reflection.MetaObject;
import org.apache.ibatis.reflection.SystemMetaObject;
import org.apache.ibatis.session.ResultHandler;
import org.apache.ibatis.session.RowBounds;
import org.springframework.stereotype.Component;
import java.lang.reflect.Field;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Intercepts({
        @Signature(type = StatementHandler.class, method = "query", args = {Statement.class, ResultHandler.class})
})
public class MybatisHmkInterceptor implements InnerInterceptor {
    @Override
    public void beforeQuery(Executor executor, MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, BoundSql boundSql) throws SQLException {
        String sql=boundSql.getSql();
        if(parameter instanceof Long){
            if(sql.contains("community_id = ?")&&(long)parameter==10086){
                sql=sql.replace("community_id = ?","community_id in (?)");
                parameter="30,31";
                boundSql.setAdditionalParameter("communityId",parameter);
                PluginUtils.mpBoundSql(boundSql).sql(sql);
            }
        }
        if(parameter instanceof Map){
            List<ParameterMapping> parameterMappingList=new ArrayList<>();
            if(sql.contains("community_id = ?")&&((Map<?, ?>) parameter).containsValue(10086L)){
                List<ParameterMapping> parameterMappings=boundSql.getParameterMappings();
                parameterMappings.forEach(parameterMapping -> {
                    if (parameterMapping.getProperty().equals("communityId")){
                        ParameterMapping parameterMapping1=new ParameterMapping.Builder(ms.getConfiguration(),"communityId",Object.class).build();
                        parameterMappingList.add(parameterMapping1);
                    }
                    else {
                        parameterMappingList.add(parameterMapping);
                    }
                });
                sql=sql.replace("community_id = ?","community_id in (?)");
                ((Map<?,?>) parameter).replaceAll((k,v)->{
                    if(v.toString().equals("10086")){
                        boundSql.setAdditionalParameter(k.toString(),"30,31");
                    }
                    return v;
                });
                PluginUtils.mpBoundSql(boundSql).parameterMappings(parameterMappingList);
                PluginUtils.mpBoundSql(boundSql).sql(sql);
            }
        }
        InnerInterceptor.super.beforeQuery(executor, ms, parameter, rowBounds, resultHandler, boundSql);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/config/MybatisPlusConfig.java
@@ -1,5 +1,6 @@
package com.panzhihua.service_community.config;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -24,6 +25,7 @@
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2));
        interceptor.addInnerInterceptor(new MybatisHmkInterceptor());
        return interceptor;
    }