diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/LawsHomeSearchMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/LawsHomeSearchMapper.java index 76aa7dff..a8135c97 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/LawsHomeSearchMapper.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/LawsHomeSearchMapper.java @@ -28,9 +28,10 @@ public interface LawsHomeSearchMapper extends BaseMapper */ - IPage getPage(Page page,@Param(Constants.WRAPPER) QueryWrapper queryWrapper); + IPage getPage(Page page,@Param(Constants.WRAPPER) QueryWrapper queryWrapper,@Param("username") String username); /** * 首页-一般检索(标题)查询国内标准 diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/xml/LawsHomeSearchMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/xml/LawsHomeSearchMapper.xml index b8f6b40e..23c3c4c6 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/xml/LawsHomeSearchMapper.xml +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/mapper/xml/LawsHomeSearchMapper.xml @@ -42,7 +42,7 @@ select id,'4' as resource_type,dynamic_heading as standard_name,create_time,9 as standard_type_order, null AS standard_state_order, null,null,null,null,null,null,null,null - from laws_news_feed where del_flag = 0 + from laws_news_feed where del_flag = 0 and (release_status = 1 or (release_status = 0 and create_by = #{username})) ) as all_data ${ew.sqlSegment} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java index 3d49b73e..3539e2e8 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeSearchServiceImpl.java @@ -140,7 +140,7 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { QueryWrapper queryWrapper = getQueryWrapperNormal(lawsHomeNormalSearchDTO); Page page = new Page<>(pageNo, pageSize); - IPage pageList = lawsHomeSearchMapper.getPage(page,queryWrapper); + IPage pageList = lawsHomeSearchMapper.getPage(page,queryWrapper,loginUser.getUsername()); addContent(searchContent, pageList); return pageList; } @@ -655,6 +655,10 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJson); queryMapJsonDict.add(jsonObject); } + // 查 (发布状态=1 或者 (发布状态=0 and create_by = 当前登录人)) + JSONObject jsonObjectShould = getJsonObject(loginUser); + queryMapJsonDict.add(jsonObjectShould); + if(CollectionUtils.isNotEmpty(queryMapJsonDict)){ jsonAll.put("must",queryMapJsonDict); JSONObject all = new JSONObject(); @@ -917,6 +921,30 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { return objVo; } + private JSONObject getJsonObject(LoginUser loginUser) { + // 查 (发布状态=1 或者 (发布状态=0 and create_by = 当前登录人)) + JSONArray queryMapShould = new JSONArray(); + Map status1 = new HashMap<>(); + Map status1Val = new HashMap<>(); + status1Val.put("release_status", "1"); + status1.put("match", status1Val); + queryMapShould.add(status1); + JSONArray queryMapMust = new JSONArray(); + Map status2 = new HashMap<>(); + Map status2Val = new HashMap<>(); + status2Val.put("release_status", "0"); + status2.put("match", status2Val); + queryMapMust.add(status2); + Map status3 = new HashMap<>(); + Map status3Val = new HashMap<>(); + status3Val.put("create_by", loginUser.getUsername()); + status3.put("match", status3Val); + queryMapMust.add(status3); + JSONObject jsonObjectMust = jeroElasticsearchTemplate.buildBoolQuery(queryMapMust, null, null); + queryMapShould.add(jsonObjectMust); + return jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapShould); + } + private void addVo(JSONObject search, List list, String aggs, String fieldName) { List> list1 = (List>) ((Map) ((Map) search.get("aggregations")).get(aggs)).get("buckets"); if (!CollectionUtils.isEmpty(list1)) { @@ -1024,6 +1052,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { obj.setApplicableVehicle(lawsDomesticStandard.getApplicableVehicle()); obj.setStandardProperty(lawsDomesticStandard.getStandardProperty()); obj.setStandardState(lawsDomesticStandard.getStandardState()); + obj.setCreateBy(lawsDomesticStandard.getCreateBy()); + obj.setReleaseStatus("1"); List listFile = getOssFilesLawsDomesticStandard(lawsDomesticStandard); updateES(opType, obj, listFile, lawsDomesticStandard.getId()); }catch (Exception e){ @@ -1112,6 +1142,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { obj.setStandardClass(lawsOverseasStandard.getStandardClass()); obj.setApplicableVehicle(lawsOverseasStandard.getApplicableVehicle()); obj.setStandardState(lawsOverseasStandard.getStandardState()); + obj.setCreateBy(lawsOverseasStandard.getCreateBy()); + obj.setReleaseStatus("1"); List listFile = getOssFilesLawsOverseasStandard(lawsOverseasStandard); updateES(opType, obj, listFile, lawsOverseasStandard.getId()); }catch (Exception e){ @@ -1200,6 +1232,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { obj.setStandardCode(lawsEnterpriseStandard.getStandardCode()); obj.setEnterpriseStandardState(lawsEnterpriseStandard.getStandardState()); obj.setGradeClassification(lawsEnterpriseStandard.getGradeClassification()); + obj.setCreateBy(lawsEnterpriseStandard.getCreateBy()); + obj.setReleaseStatus("1"); List listFile = getOssFilesLawsEnterpriseStandard(lawsEnterpriseStandard); updateES(opType, obj, listFile, lawsEnterpriseStandard.getId()); }catch (Exception e){ @@ -1211,11 +1245,6 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { } } - @NotNull - private String getImplementationDate(Date implementationDate) { - return Objects.isNull(implementationDate) ? "" : new SimpleDateFormat(YYYY_MM_DD).format(implementationDate); - } - @NotNull private List getOssFilesLawsEnterpriseStandard(LawsEnterpriseStandard lawsEnterpriseStandard) { // 从过程稿件从上到下顺序检索;如果文档里有发布稿,只检索发布稿 @@ -1271,6 +1300,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { obj.setStandardState("4"); obj.setReleaseDate(lawsNewsFeed.getReleaseTime()); obj.setCreateTime(lawsNewsFeed.getCreateTime()); + obj.setCreateBy(lawsNewsFeed.getCreateBy()); + obj.setReleaseStatus(String.valueOf(lawsNewsFeed.getReleaseStatus())); updateESLawsNewsFeed(opType, lawsNewsFeed, obj); }catch (Exception e){ log.error(SYNC_ES_ERR,e.getMessage()); @@ -1358,6 +1389,8 @@ public class LawsHomeSearchServiceImpl implements ILawsHomeSearchService { log.error("文档库添加es失败",e); } map.put("es_create_time",new Date()); + map.put("create_by",obj.getCreateBy()); + map.put("release_status",obj.getReleaseStatus()); //添加es JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(map, SerializerFeature.WriteMapNullValue)); try { diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/vo/LawsHomeNormalSearchVO.java b/laws-modules/src/main/java/com/jero/modules/laws/home/vo/LawsHomeNormalSearchVO.java index 0e5da2c4..514f8926 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/vo/LawsHomeNormalSearchVO.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/vo/LawsHomeNormalSearchVO.java @@ -102,4 +102,12 @@ public class LawsHomeNormalSearchVO implements Serializable { * 入库时间 */ private Date createTime; + /** + * 创建人(动态消息使用) + */ + private String createBy; + /** + * 发布状态(0-未发布、1-已发布)(动态消息使用) + */ + private String releaseStatus; }