提交 4a009e24 作者: 925993793@qq.com

问题修改

上级 c455618f
...@@ -97,6 +97,7 @@ public class EventDataController { ...@@ -97,6 +97,7 @@ public class EventDataController {
@GetMapping(value = "/pageList") @GetMapping(value = "/pageList")
public Result<?> pageList(@RequestParam(defaultValue = "1476527644425682945") String projectId, public Result<?> pageList(@RequestParam(defaultValue = "1476527644425682945") String projectId,
@RequestParam(name = "category") Integer category, @RequestParam(name = "category") Integer category,
@RequestParam(name = "eventId", required = false) String eventId,
@RequestParam(name = "eventName", required = false) String eventName, @RequestParam(name = "eventName", required = false) String eventName,
@RequestParam(name = "eventType", required = false) String eventType, @RequestParam(name = "eventType", required = false) String eventType,
@RequestParam(name = "labelField", required = false) String labelField, @RequestParam(name = "labelField", required = false) String labelField,
...@@ -107,7 +108,7 @@ public class EventDataController { ...@@ -107,7 +108,7 @@ public class EventDataController {
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
IPage<EventFrontVO> pageList = new Page<>(); IPage<EventFrontVO> pageList = new Page<>();
if (category == 1){ if (category == 1){
pageList = eventService.frontAllPageList(projectId, eventName, eventType, labelField, labelName, order, orderType, pageNo, pageSize); pageList = eventService.frontAllPageList(projectId, eventId,eventName, eventType, labelField, labelName, order, orderType, pageNo, pageSize);
} else if (category == 2) { } else if (category == 2) {
pageList = eventExtractService.frontDigPageList(projectId,eventName,eventType,pageNo,pageSize); pageList = eventExtractService.frontDigPageList(projectId,eventName,eventType,pageNo,pageSize);
} else if (category == 3) { } else if (category == 3) {
...@@ -229,6 +230,7 @@ public class EventDataController { ...@@ -229,6 +230,7 @@ public class EventDataController {
@RequestParam(name = "searchWord", required = false) String searchWord, @RequestParam(name = "searchWord", required = false) String searchWord,
@RequestParam(name = "position", required = false) String position, @RequestParam(name = "position", required = false) String position,
@RequestParam(name = "category", required = false) Integer category, @RequestParam(name = "category", required = false) Integer category,
@RequestParam(name = "labelId", required = false) String labelId,
@RequestParam(name = "column", defaultValue = "publishDate") String column, @RequestParam(name = "column", defaultValue = "publishDate") String column,
@RequestParam(name = "order", defaultValue = "desc") String order, @RequestParam(name = "order", defaultValue = "desc") String order,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
...@@ -243,7 +245,7 @@ public class EventDataController { ...@@ -243,7 +245,7 @@ public class EventDataController {
frontList.forEach(e -> subjectIdList.add(e.getId())); frontList.forEach(e -> subjectIdList.add(e.getId()));
} }
//获取数据 //获取数据
IPage<SubjectDataVo> pageList = esService.frontListByPage(subjectIdList, searchWord, position, category, column, order, pageNo, pageSize); IPage<SubjectDataVo> pageList = esService.frontListByPage(subjectIdList, searchWord, position, category,labelId, column, order, pageNo, pageSize);
return Result.OK(pageList); return Result.OK(pageList);
} }
......
...@@ -116,7 +116,7 @@ public class EsService { ...@@ -116,7 +116,7 @@ public class EsService {
} }
boolQuery.filter(rangeQueryBuilder); boolQuery.filter(rangeQueryBuilder);
} }
boolQuery.mustNot(QueryBuilders.termQuery("origin.keyword","")); boolQuery.mustNot(QueryBuilders.termQuery("origin.keyword", ""));
//未删除状态查询 //未删除状态查询
boolQuery.mustNot(QueryBuilders.matchQuery("deleteFlag", "1")); boolQuery.mustNot(QueryBuilders.matchQuery("deleteFlag", "1"));
List<SubjectDataVo> subjectDataVos = formatData(getEsResult(searchSourceBuilder, boolQuery, subjectId)); List<SubjectDataVo> subjectDataVos = formatData(getEsResult(searchSourceBuilder, boolQuery, subjectId));
...@@ -223,7 +223,7 @@ public class EsService { ...@@ -223,7 +223,7 @@ public class EsService {
* @date 2024/4/10 * @date 2024/4/10
*/ */
public IPage<SubjectDataVo> frontListByPage(List<String> subjectIdList, String searchWord, String position, Integer category, public IPage<SubjectDataVo> frontListByPage(List<String> subjectIdList, String searchWord, String position, Integer category,
String column, String order, int pageNo, int pageSize) { String labelId, String column, String order, int pageNo, int pageSize) {
SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX); SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX);
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
//设置分页参数 //设置分页参数
...@@ -246,20 +246,23 @@ public class EsService { ...@@ -246,20 +246,23 @@ public class EsService {
searchSourceBuilder.sort(SortBuilders.scoreSort().order(SortOrder.ASC)); searchSourceBuilder.sort(SortBuilders.scoreSort().order(SortOrder.ASC));
} }
} }
String[] fetchFields = new String[]{"id", "subjectId", "title", "summary", "origin", "publishDate", "sourceAddress", "author"}; String[] fetchFields = new String[]{"id", "subjectId", "title", "summary", "origin", "publishDate", "sourceAddress", "author", "labels"};
searchSourceBuilder.fetchSource(fetchFields, null); searchSourceBuilder.fetchSource(fetchFields, null);
//默认最大数量是10000,设置为true后,显示准确数量 //默认最大数量是10000,设置为true后,显示准确数量
searchSourceBuilder.trackTotalHits(true); searchSourceBuilder.trackTotalHits(true);
//创建查询对象 //创建查询对象
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
boolQuery.must(QueryBuilders.termsQuery("subjectId.keyword", subjectIdList)); boolQuery.must(QueryBuilders.termsQuery("subjectId.keyword", subjectIdList));
if (StringUtils.isNotEmpty(searchWord)) { if (StringUtils.isNotBlank(searchWord)) {
if (category == 1) { if (category == 1) {
boolQuery.must(QueryBuilders.matchQuery(position, searchWord)); boolQuery.must(QueryBuilders.matchQuery(position, searchWord));
} else if (category == 2) { } else if (category == 2) {
boolQuery.must(QueryBuilders.matchPhraseQuery(position, searchWord)); boolQuery.must(QueryBuilders.matchPhraseQuery(position, searchWord));
} }
} }
if (StringUtils.isNotBlank(labelId)) {
boolQuery.must(QueryBuilders.nestedQuery("labels", QueryBuilders.termQuery("labels.relationId", labelId), ScoreMode.None));
}
boolQuery.mustNot(QueryBuilders.matchQuery("deleteFlag", "1")); boolQuery.mustNot(QueryBuilders.matchQuery("deleteFlag", "1"));
searchSourceBuilder.query(boolQuery); searchSourceBuilder.query(boolQuery);
searchRequest.source(searchSourceBuilder); searchRequest.source(searchSourceBuilder);
...@@ -1105,14 +1108,14 @@ public class EsService { ...@@ -1105,14 +1108,14 @@ public class EsService {
return dataList; return dataList;
} }
public List<EventDigDataVO> pageListOfColumn(String columnId,Integer checkStatus,String startTime,String endTime,Integer pageSize) { public List<EventDigDataVO> pageListOfColumn(String columnId, Integer checkStatus, String startTime, String endTime, Integer pageSize) {
List<EventDigDataVO> dataList = new ArrayList<>(); List<EventDigDataVO> dataList = new ArrayList<>();
SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX); SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX);
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
//设置分页参数 //设置分页参数
searchSourceBuilder.size(pageSize); searchSourceBuilder.size(pageSize);
//排序方式 按入专题库时间升序 //排序方式 按入专题库时间升序
searchSourceBuilder.sort("processDate",SortOrder.ASC); searchSourceBuilder.sort("processDate", SortOrder.ASC);
searchSourceBuilder.trackTotalHits(true); searchSourceBuilder.trackTotalHits(true);
//创建查询对象 //创建查询对象
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
...@@ -1138,7 +1141,7 @@ public class EsService { ...@@ -1138,7 +1141,7 @@ public class EsService {
try { try {
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT); SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
SearchHit[] hits = searchResponse.getHits().getHits(); SearchHit[] hits = searchResponse.getHits().getHits();
if (hits!=null && hits.length > 0) { if (hits != null && hits.length > 0) {
for (SearchHit hit : hits) { for (SearchHit hit : hits) {
String index = hit.getIndex(); String index = hit.getIndex();
String sourceAsString = hit.getSourceAsString(); String sourceAsString = hit.getSourceAsString();
...@@ -1156,19 +1159,19 @@ public class EsService { ...@@ -1156,19 +1159,19 @@ public class EsService {
return dataList; return dataList;
} }
public List<SubjectDataVo> listByIds(List<String> ids){ public List<SubjectDataVo> listByIds(List<String> ids) {
List<SubjectDataVo> dataList = new ArrayList<>(); List<SubjectDataVo> dataList = new ArrayList<>();
SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX); SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX);
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
//创建查询对象 //创建查询对象
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
boolQuery.must(QueryBuilders.termsQuery("id",ids)); boolQuery.must(QueryBuilders.termsQuery("id", ids));
searchSourceBuilder.query(boolQuery); searchSourceBuilder.query(boolQuery);
searchRequest.source(searchSourceBuilder); searchRequest.source(searchSourceBuilder);
try { try {
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT); SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
SearchHit[] hits = searchResponse.getHits().getHits(); SearchHit[] hits = searchResponse.getHits().getHits();
if (hits!=null && hits.length > 0) { if (hits != null && hits.length > 0) {
for (SearchHit hit : hits) { for (SearchHit hit : hits) {
String sourceAsString = hit.getSourceAsString(); String sourceAsString = hit.getSourceAsString();
SubjectDataVo subjectDataVo = JSONObject.parseObject(sourceAsString, SubjectDataVo.class); SubjectDataVo subjectDataVo = JSONObject.parseObject(sourceAsString, SubjectDataVo.class);
......
...@@ -69,6 +69,7 @@ public interface EventMapper extends BaseMapper<Event> { ...@@ -69,6 +69,7 @@ public interface EventMapper extends BaseMapper<Event> {
* *
* @param projectId 项目id * @param projectId 项目id
* @param createBy 创建人 * @param createBy 创建人
* @param eventId 事件id
* @param eventName 事件名称 * @param eventName 事件名称
* @param eventTypes 事件分类id集合 * @param eventTypes 事件分类id集合
* @param labelField 搜索字段 * @param labelField 搜索字段
...@@ -81,7 +82,8 @@ public interface EventMapper extends BaseMapper<Event> { ...@@ -81,7 +82,8 @@ public interface EventMapper extends BaseMapper<Event> {
* @author lkg * @author lkg
* @date 2024/4/8 * @date 2024/4/8
*/ */
List<EventFrontVO> frontAllPageList(@Param("projectId") String projectId, @Param("createBy") String createBy, @Param("eventName") String eventName, List<EventFrontVO> frontAllPageList(@Param("projectId") String projectId, @Param("createBy") String createBy,
@Param("eventId") String eventId, @Param("eventName") String eventName,
@Param("eventTypes") List<String> eventTypes, @Param("labelField") String labelField, @Param("eventTypes") List<String> eventTypes, @Param("labelField") String labelField,
@Param("labelName") String labelName, @Param("type") Integer type, @Param("labelName") String labelName, @Param("type") Integer type,
@Param("order") String order, @Param("orderType") String orderType, @Param("order") String order, @Param("orderType") String orderType,
...@@ -92,6 +94,7 @@ public interface EventMapper extends BaseMapper<Event> { ...@@ -92,6 +94,7 @@ public interface EventMapper extends BaseMapper<Event> {
* *
* @param projectId 项目id * @param projectId 项目id
* @param createBy 创建人 * @param createBy 创建人
* @param eventId 事件id
* @param eventName 事件名称 * @param eventName 事件名称
* @param eventTypes 事件分类id集合 * @param eventTypes 事件分类id集合
* @param labelField 搜索字段 * @param labelField 搜索字段
...@@ -100,7 +103,8 @@ public interface EventMapper extends BaseMapper<Event> { ...@@ -100,7 +103,8 @@ public interface EventMapper extends BaseMapper<Event> {
* @author lkg * @author lkg
* @date 2024/4/8 * @date 2024/4/8
*/ */
Integer frontAllCount(@Param("projectId") String projectId, @Param("createBy") String createBy, @Param("eventName") String eventName, Integer frontAllCount(@Param("projectId") String projectId, @Param("createBy") String createBy,
@Param("eventId") String eventId, @Param("eventName") String eventName,
@Param("eventTypes") List<String> eventTypes, @Param("labelField") String labelField, @Param("eventTypes") List<String> eventTypes, @Param("labelField") String labelField,
@Param("labelName") String labelName, @Param("type") Integer type); @Param("labelName") String labelName, @Param("type") Integer type);
...@@ -213,7 +217,7 @@ public interface EventMapper extends BaseMapper<Event> { ...@@ -213,7 +217,7 @@ public interface EventMapper extends BaseMapper<Event> {
* @author lkg * @author lkg
* @date 2024/4/10 * @date 2024/4/10
*/ */
List<EventRegionVO> listByRegion(@Param("projectId") String projectId, @Param("createBy") String createBy,@Param("type") Integer type, @Param("name") String name); List<EventRegionVO> listByRegion(@Param("projectId") String projectId, @Param("createBy") String createBy, @Param("type") Integer type, @Param("name") String name);
/** /**
* 公开且发布的事件信息集合 * 公开且发布的事件信息集合
......
...@@ -124,6 +124,9 @@ ...@@ -124,6 +124,9 @@
where t1.publish_status = 1 and t1.create_by = #{createBy} where t1.publish_status = 1 and t1.create_by = #{createBy}
) a inner join project_subject_map m on a.id = m.subject_id ) a inner join project_subject_map m on a.id = m.subject_id
where m.project_id = #{projectId} where m.project_id = #{projectId}
<if test="eventId!=null and eventId != ''">
and a.id = #{eventId}
</if>
<if test="eventName!=null and eventName != ''"> <if test="eventName!=null and eventName != ''">
and a.event_name like CONCAT('%',#{eventName},'%') and a.event_name like CONCAT('%',#{eventName},'%')
</if> </if>
...@@ -182,6 +185,9 @@ ...@@ -182,6 +185,9 @@
inner join project_subject_map m on a.id = m.subject_id inner join project_subject_map m on a.id = m.subject_id
) b ) b
where b.project_id = #{projectId} where b.project_id = #{projectId}
<if test="eventId!=null and eventId != ''">
and b.id = #{eventId}
</if>
<if test="eventName!=null and eventName != ''"> <if test="eventName!=null and eventName != ''">
and b.event_name like CONCAT('%',#{eventName},'%') and b.event_name like CONCAT('%',#{eventName},'%')
</if> </if>
...@@ -540,7 +546,8 @@ ...@@ -540,7 +546,8 @@
select distinct a.* from( select distinct a.* from(
select t.id,t.event_name,t.start_time,t.end_time from event t where t.publish_status = 1 and t.face_public = 1 select t.id,t.event_name,t.start_time,t.end_time from event t where t.publish_status = 1 and t.face_public = 1
union union
select e.id,e.event_name,e.start_time,e.end_time from event e where e.publish_status = 1 and e.create_by = #{createBy} select e.id,e.event_name,e.start_time,e.end_time from event e where e.publish_status = 1 and e.create_by =
#{createBy}
) a inner join project_subject_map m on a.id = m.subject_id ) a inner join project_subject_map m on a.id = m.subject_id
where m.project_id = #{projectId} where m.project_id = #{projectId}
) b ) b
......
...@@ -62,7 +62,7 @@ public interface IEventService extends IService<Event> { ...@@ -62,7 +62,7 @@ public interface IEventService extends IService<Event> {
* @author lkg * @author lkg
* @date 2024/4/8 * @date 2024/4/8
*/ */
IPage<EventFrontVO> frontAllPageList(String projectId, String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize); IPage<EventFrontVO> frontAllPageList(String projectId, String eventId,String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize);
/** /**
* 分页列表-门户(我的) * 分页列表-门户(我的)
......
...@@ -130,6 +130,7 @@ public class EsStatisticsServiceImpl implements EsStatisticsService { ...@@ -130,6 +130,7 @@ public class EsStatisticsServiceImpl implements EsStatisticsService {
public CountVO orientation(String subjectId, String labelId, String startTime, String endTime, Integer type) { public CountVO orientation(String subjectId, String labelId, String startTime, String endTime, Integer type) {
CountVO countVO = new CountVO(); CountVO countVO = new CountVO();
LabelEntity labelEntity = labelEntityService.getById(labelId); LabelEntity labelEntity = labelEntityService.getById(labelId);
countVO.setLabelId(labelEntity.getId());
countVO.setName(labelEntity.getName()); countVO.setName(labelEntity.getName());
SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX); SearchRequest searchRequest = new SearchRequest(Constants.SUBJECT_INDEX);
SearchSourceBuilder searchSourceBuilder = formatSourceBuilder(subjectId, labelId, startTime, endTime, false); SearchSourceBuilder searchSourceBuilder = formatSourceBuilder(subjectId, labelId, startTime, endTime, false);
......
...@@ -142,7 +142,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements ...@@ -142,7 +142,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
} }
@Override @Override
public IPage<EventFrontVO> frontAllPageList(String projectId, String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize) { public IPage<EventFrontVO> frontAllPageList(String projectId,String eventId, String eventName, String eventType, String labelField, String labelName, String order, String orderType, Integer pageNo, Integer pageSize) {
int offset = (pageNo - 1) * pageSize; int offset = (pageNo - 1) * pageSize;
Integer type = null; Integer type = null;
if (StringUtils.isNotEmpty(labelField) && labelField.equals("event_label")) { if (StringUtils.isNotEmpty(labelField) && labelField.equals("event_label")) {
...@@ -155,7 +155,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements ...@@ -155,7 +155,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
} }
//获取当前登录人信息 //获取当前登录人信息
UserVo currentUser = UserUtil.getLoginUser(); UserVo currentUser = UserUtil.getLoginUser();
List<EventFrontVO> pageList = baseMapper.frontAllPageList(projectId, currentUser.getUsername(), eventName, eventTypes, labelField, labelName, type, order, orderType, offset, pageSize); List<EventFrontVO> pageList = baseMapper.frontAllPageList(projectId, currentUser.getUsername(), eventId,eventName, eventTypes, labelField, labelName, type, order, orderType, offset, pageSize);
if (CollectionUtils.isNotEmpty(pageList)) { if (CollectionUtils.isNotEmpty(pageList)) {
Map<String, String> map = getFirstMap(pageList); Map<String, String> map = getFirstMap(pageList);
if (MapUtil.isNotEmpty(map)) { if (MapUtil.isNotEmpty(map)) {
...@@ -171,7 +171,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements ...@@ -171,7 +171,7 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
} }
} }
//获取总条数 //获取总条数
Integer count = baseMapper.frontAllCount(projectId, currentUser.getUsername(), eventName, eventTypes, labelField, labelName, type); Integer count = baseMapper.frontAllCount(projectId, currentUser.getUsername(), eventId,eventName, eventTypes, labelField, labelName, type);
IPage<EventFrontVO> pageData = new Page<>(pageNo, pageSize, count); IPage<EventFrontVO> pageData = new Page<>(pageNo, pageSize, count);
pageData.setRecords(pageList); pageData.setRecords(pageList);
return pageData; return pageData;
......
...@@ -13,6 +13,8 @@ import java.util.List; ...@@ -13,6 +13,8 @@ import java.util.List;
@Data @Data
public class CountVO { public class CountVO {
//标签id,前端跳转用
private String labelId;
//key值 //key值
private String key; private String key;
//数量/价格 //数量/价格
......
...@@ -2,6 +2,8 @@ package com.zzsn.event.vo; ...@@ -2,6 +2,8 @@ package com.zzsn.event.vo;
import lombok.Data; import lombok.Data;
import java.util.List;
/** /**
* @author lkg * @author lkg
* @description: * @description:
...@@ -36,5 +38,7 @@ public class SubjectDataVo { ...@@ -36,5 +38,7 @@ public class SubjectDataVo {
private String index; private String index;
//重复数 //重复数
private Integer similarNumber; private Integer similarNumber;
//标签信息
private List<Label> labels;
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论