Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
E
event
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
陈世强
event
Commits
19b2d20a
提交
19b2d20a
authored
10月 14, 2024
作者:
王峰
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/master' into yjzx
# Conflicts: # src/main/resources/application-dev.yml
上级
c41049cb
af97db20
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
359 行增加
和
36 行删除
+359
-36
WebMvcConfig.java
.../java/com/zzsn/event/config/interceptor/WebMvcConfig.java
+1
-1
EventDataController.java
...n/java/com/zzsn/event/controller/EventDataController.java
+3
-3
EventExportController.java
...java/com/zzsn/event/controller/EventExportController.java
+8
-5
EventHomeController.java
...n/java/com/zzsn/event/controller/EventHomeController.java
+1
-1
EventApi.java
...ain/java/com/zzsn/event/controller/thirdApi/EventApi.java
+181
-0
ThirdAddEventVO.java
...a/com/zzsn/event/controller/thirdApi/ThirdAddEventVO.java
+57
-0
EsService.java
src/main/java/com/zzsn/event/es/EsService.java
+13
-11
EventMapper.java
src/main/java/com/zzsn/event/mapper/EventMapper.java
+6
-2
EventCategoryMapper.xml
...in/java/com/zzsn/event/mapper/xml/EventCategoryMapper.xml
+2
-1
EventMapper.xml
src/main/java/com/zzsn/event/mapper/xml/EventMapper.xml
+49
-5
IEventService.java
src/main/java/com/zzsn/event/service/IEventService.java
+5
-2
EventServiceImpl.java
...in/java/com/zzsn/event/service/impl/EventServiceImpl.java
+24
-4
ExportParam.java
src/main/java/com/zzsn/event/vo/ExportParam.java
+8
-0
application-pro.yml
src/main/resources/application-pro.yml
+1
-1
没有找到文件。
src/main/java/com/zzsn/event/config/interceptor/WebMvcConfig.java
浏览文件 @
19b2d20a
...
...
@@ -16,6 +16,6 @@ public class WebMvcConfig implements WebMvcConfigurer {
@Override
public
void
addInterceptors
(
InterceptorRegistry
registry
)
{
registry
.
addInterceptor
(
userInfoInterceptor
()).
addPathPatterns
(
"/**"
);
registry
.
addInterceptor
(
userInfoInterceptor
()).
addPathPatterns
(
"/**"
)
.
excludePathPatterns
(
"/third/api/saveEvent"
)
;
}
}
src/main/java/com/zzsn/event/controller/EventDataController.java
浏览文件 @
19b2d20a
...
...
@@ -87,8 +87,8 @@ public class EventDataController {
* @param category 栏目类型(1-全部;2-自动追踪;3-我的)
* @param eventName 事件名称
* @param eventType 事件分类id
* @param labelField 搜索字段
* @param labelName 搜索词
* @param labelField 搜索字段
(标签)
* @param labelName 搜索词
(标签)
* @param order 排序字段
* @param orderType 排序方式
* @param pageNo 偏移量
...
...
@@ -267,7 +267,7 @@ public class EventDataController {
if
(
StringUtils
.
isNotEmpty
(
subjectId
))
{
subjectIdList
.
add
(
subjectId
);
}
else
{
List
<
EventExcelVO
>
frontList
=
eventService
.
frontAllList
(
projectId
,
username
,
null
,
null
);
List
<
EventExcelVO
>
frontList
=
eventService
.
frontAllList
(
projectId
,
username
,
null
,
null
,
null
,
null
,
null
,
null
);
frontList
.
forEach
(
e
->
subjectIdList
.
add
(
e
.
getId
()));
}
//获取数据
...
...
src/main/java/com/zzsn/event/controller/EventExportController.java
浏览文件 @
19b2d20a
...
...
@@ -56,7 +56,7 @@ public class EventExportController {
UserVo
currentUser
=
UserUtil
.
getLoginUser
();
String
username
=
currentUser
.
getUsername
();
String
[]
headers
=
new
String
[]{
"id"
,
"事件名称"
,
"事件描述"
,
"发布时间"
,
"热度"
};
List
<
EventExcelVO
>
eventList
=
getEventList
(
exportParam
.
getClassify
(),
exportParam
.
getProjectId
(),
username
,
exportParam
.
getEventIdList
(),
exportParam
.
getSize
()
);
List
<
EventExcelVO
>
eventList
=
getEventList
(
exportParam
,
username
);
if
(
CollectionUtils
.
isNotEmpty
(
eventList
))
{
String
name
=
"event.xlsx"
;
List
<
List
<
String
>>
dataList
=
new
ArrayList
<>();
...
...
@@ -90,7 +90,7 @@ public class EventExportController {
try
{
List
<
String
>
eventIdList
=
exportParam
.
getEventIdList
();
if
(
CollectionUtils
.
isEmpty
(
eventIdList
))
{
List
<
EventExcelVO
>
frontList
=
getEventList
(
exportParam
.
getClassify
(),
exportParam
.
getProjectId
(),
username
,
exportParam
.
getEventIdList
(),
null
);
List
<
EventExcelVO
>
frontList
=
getEventList
(
exportParam
,
username
);
frontList
.
forEach
(
e
->
eventIdList
.
add
(
e
.
getId
()));
}
List
<
SubjectDataVo
>
exportDataList
=
esService
.
exportDataList
(
eventIdList
,
exportParam
.
getSearchWord
(),
exportParam
.
getPosition
(),
exportParam
.
getCategory
(),
...
...
@@ -133,12 +133,15 @@ public class EventExportController {
}
private
List
<
EventExcelVO
>
getEventList
(
Integer
category
,
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
Integer
size
){
private
List
<
EventExcelVO
>
getEventList
(
ExportParam
exportParam
,
String
createBy
){
List
<
EventExcelVO
>
eventList
=
new
ArrayList
<>();
Integer
category
=
exportParam
.
getClassify
();
if
(
category
==
1
)
{
eventList
=
eventService
.
frontAllList
(
projectId
,
createBy
,
eventIdList
,
size
);
eventList
=
eventService
.
frontAllList
(
exportParam
.
getProjectId
(),
createBy
,
exportParam
.
getEventIdList
(),
exportParam
.
getEventName
()
,
exportParam
.
getEventType
(),
exportParam
.
getLabelField
(),
exportParam
.
getLabelName
(),
exportParam
.
getSize
());
}
else
if
(
category
==
3
)
{
eventList
=
eventService
.
frontOwnerList
(
projectId
,
createBy
,
eventIdList
,
size
);
eventList
=
eventService
.
frontOwnerList
(
exportParam
.
getProjectId
(),
createBy
,
exportParam
.
getEventIdList
(),
exportParam
.
getEventName
()
,
exportParam
.
getEventType
(),
exportParam
.
getLabelField
(),
exportParam
.
getLabelName
(),
exportParam
.
getSize
());
}
return
eventList
;
}
...
...
src/main/java/com/zzsn/event/controller/EventHomeController.java
浏览文件 @
19b2d20a
...
...
@@ -51,7 +51,7 @@ public class EventHomeController {
UserVo
loginUser
=
UserUtil
.
getLoginUser
();
String
username
=
loginUser
.
getUsername
();
Map
<
String
,
Integer
>
map
=
new
HashMap
<>();
List
<
EventExcelVO
>
eventList
=
eventService
.
frontAllList
(
projectId
,
username
,
null
,
null
);
List
<
EventExcelVO
>
eventList
=
eventService
.
frontAllList
(
projectId
,
username
,
null
,
null
,
null
,
null
,
null
,
null
);
map
.
put
(
"eventCount"
,
eventList
.
size
());
List
<
String
>
eventIdList
=
eventList
.
stream
().
map
(
EventExcelVO:
:
getId
).
collect
(
Collectors
.
toList
());
long
total
=
esStatisticsService
.
totalCount
(
eventIdList
,
null
,
null
);
...
...
src/main/java/com/zzsn/event/controller/thirdApi/EventApi.java
0 → 100644
浏览文件 @
19b2d20a
package
com
.
zzsn
.
event
.
controller
.
thirdApi
;
import
com.alibaba.fastjson2.JSON
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.zzsn.clb.common.model.task.dto.titr.KeyWordsDTO
;
import
com.zzsn.event.constant.Constants
;
import
com.zzsn.event.constant.Result
;
import
com.zzsn.event.entity.*
;
import
com.zzsn.event.enums.CodePrefixEnum
;
import
com.zzsn.event.service.*
;
import
com.zzsn.event.util.CodeGenerateUtil
;
import
com.zzsn.event.util.CronUtil
;
import
com.zzsn.event.util.DateUtil
;
import
com.zzsn.event.util.RedisUtil
;
import
com.zzsn.event.vo.KeywordsVO
;
import
com.zzsn.event.vo.RegionVO
;
import
com.zzsn.event.xxljob.service.IXxlJobInfoService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.kafka.core.KafkaTemplate
;
import
org.springframework.transaction.annotation.Transactional
;
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.RestController
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.concurrent.CompletableFuture
;
/**
*
*
* @author lkg
* @date 2024/10/12
*/
@Slf4j
@RestController
@RequestMapping
(
"/third/api"
)
public
class
EventApi
{
@Autowired
private
IXxlJobInfoService
iXxlJobInfoService
;
@Autowired
private
IKeyWordsService
keyWordsService
;
@Autowired
private
RedisUtil
redisUtil
;
@Resource
private
KafkaTemplate
<
String
,
String
>
kafkaTemplate
;
@Autowired
private
CodeGenerateUtil
codeGenerateUtil
;
@Autowired
private
IEventService
eventService
;
@Autowired
private
ISubjectTypeMapService
subjectTypeMapService
;
@Autowired
private
IProjectSubjectMapService
projectSubjectMapService
;
@Autowired
private
IEventTagService
eventTagService
;
@Autowired
private
EventRegionMapService
eventRegionMapService
;
@Autowired
private
EventExtractService
eventExtractService
;
/**
* 新增事件(页面简化版)
*
* @param addEventVO 事件信息
* @author lkg
* @date 2024/7/22
*/
@PostMapping
(
"/saveEvent"
)
public
Result
<?>
addEvent
(
@RequestBody
ThirdAddEventVO
addEventVO
)
{
KeywordsVO
keywordsVO
=
addEventVO
.
getKeywordsVO
();
if
(
keywordsVO
!=
null
)
{
Event
event
=
simpleSave
(
addEventVO
);
KeyWords
keyWords
=
keyWordsService
.
saveKeyword
(
event
,
keywordsVO
.
getKeyword
(),
keywordsVO
.
getExclusionWord
());
CompletableFuture
.
runAsync
(()->{
iXxlJobInfoService
.
subjectInsert
(
event
);
//关键词
KeyWordsDTO
redisKeywordDTO
=
new
KeyWordsDTO
();
BeanUtils
.
copyProperties
(
keyWords
,
redisKeywordDTO
);
redisKeywordDTO
.
setStartTime
(
event
.
getStartTime
());
redisKeywordDTO
.
setEndTime
(
event
.
getEndTime
());
redisKeywordDTO
.
setSearchEngines
(
new
ArrayList
<>(
Constants
.
DEFAULT_SEARCH_ENGINE
.
values
()));
redisUtil
.
set
(
Constants
.
KEY_WORDS_TO_REDIS_PREFIX
+
keyWords
.
getWordsCode
(),
redisKeywordDTO
);
//插入xxljob
iXxlJobInfoService
.
keyWordsInsert
(
redisKeywordDTO
);
//为了立即响应,关键词新增时放入一个首次录入消息队列
kafkaTemplate
.
send
(
Constants
.
KEY_WORDS_COLLECT_TOPIC
,
JSON
.
toJSONString
(
redisKeywordDTO
));
kafkaTemplate
.
send
(
Constants
.
EVENT_SUBJECT_MODEL
,
event
.
getEventCode
());
});
return
Result
.
OK
(
event
);
}
else
{
return
Result
.
FAIL
(
500
,
"关键词不能为空"
);
}
}
@Transactional
public
Event
simpleSave
(
ThirdAddEventVO
addEventVO
)
{
Event
event
=
new
Event
();
BeanUtils
.
copyProperties
(
addEventVO
,
event
);
event
.
setStatus
(
1
);
Date
endTime
=
event
.
getEndTime
();
if
(
endTime
==
null
)
{
endTime
=
DateUtil
.
addDate
(
new
Date
(),
15
);
}
event
.
setEndTime
(
endTime
);
event
.
setIncreAnaRule
(
20
);
event
.
setTotalAnaRule
(
50
);
event
.
setTimeAnaRule
(
5
);
String
subjectCode
=
codeGenerateUtil
.
geneCodeNo
(
CodePrefixEnum
.
SUBJECT_DEFAULT
.
getValue
());
event
.
setEventCode
(
subjectCode
);
//默认发布
event
.
setPublishStatus
(
1
);
event
.
setPublishDate
(
DateUtil
.
dateToString
(
new
Date
()));
//调度周期,默认2小时
event
.
setUnit
(
"2"
);
event
.
setSpace
(
1
);
event
.
setCron
(
CronUtil
.
generateCron
(
"2"
,
1
));
event
.
setCreateTime
(
new
Date
());
event
.
setCreateBy
(
addEventVO
.
getUsername
());
eventService
.
save
(
event
);
String
eventId
=
event
.
getId
();
CompletableFuture
.
runAsync
(()->{
//删除伪事件
Integer
category
=
addEventVO
.
getCategory
();
if
(
category
!=
null
&&
category
==
2
)
{
eventExtractService
.
update
(
Wrappers
.<
EventExtract
>
lambdaUpdate
().
set
(
EventExtract:
:
getDeleteStatus
,
1
)
.
eq
(
EventExtract:
:
getId
,
addEventVO
.
getFakeEventId
()));
}
saveMapMain
(
eventId
);
//事件标签
eventTagService
.
save
(
EventTag
.
builder
().
eventId
(
eventId
).
build
());
//地域关系绑定
List
<
RegionVO
>
regionList
=
addEventVO
.
getRegionList
();
addRegionMap
(
eventId
,
regionList
);
//默认绑定搜索引擎、模型
eventService
.
saveDefaultMap
(
eventId
);
});
return
event
;
}
private
void
saveMapMain
(
String
eventId
)
{
//专题和分类关系
SubjectTypeMap
subjectTypeMap
=
new
SubjectTypeMap
();
subjectTypeMap
.
setSubjectId
(
eventId
);
subjectTypeMap
.
setCreateTime
(
new
Date
());
//分类默认 研究中心
subjectTypeMap
.
setTypeId
(
"1802619433932296193"
);
subjectTypeMapService
.
save
(
subjectTypeMap
);
//专题和项目关系
ProjectSubjectMap
projectSubjectMap
=
new
ProjectSubjectMap
();
//项目默认 研究中心
projectSubjectMap
.
setProjectId
(
"1476527644425682945"
);
projectSubjectMap
.
setSubjectId
(
eventId
);
projectSubjectMapService
.
save
(
projectSubjectMap
);
}
private
void
addRegionMap
(
String
eventId
,
List
<
RegionVO
>
regionList
)
{
if
(
CollectionUtils
.
isNotEmpty
(
regionList
))
{
List
<
EventRegionMap
>
dataList
=
new
ArrayList
<>();
for
(
RegionVO
regionVO
:
regionList
)
{
EventRegionMap
eventRegionMap
=
new
EventRegionMap
();
eventRegionMap
.
setEventId
(
eventId
);
eventRegionMap
.
setRegionId
(
regionVO
.
getId
());
eventRegionMap
.
setTopRegionId
(
regionVO
.
getTopId
());
eventRegionMap
.
setType
(
regionVO
.
getType
());
eventRegionMap
.
setCreateTime
(
new
Date
());
dataList
.
add
(
eventRegionMap
);
}
eventRegionMapService
.
saveBatch
(
dataList
);
}
}
}
src/main/java/com/zzsn/event/controller/thirdApi/ThirdAddEventVO.java
0 → 100644
浏览文件 @
19b2d20a
package
com
.
zzsn
.
event
.
controller
.
thirdApi
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.zzsn.event.vo.KeywordsVO
;
import
com.zzsn.event.vo.RegionVO
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.util.Date
;
import
java.util.List
;
/**
*
*
* @author lkg
* @date 2024/7/19
*/
@Getter
@Setter
public
class
ThirdAddEventVO
{
private
String
id
;
/**图标*/
private
String
eventIcon
;
/**名称*/
private
String
eventName
;
/**事件类型*/
private
String
eventType
;
/**事件描述*/
private
String
eventDescribe
;
/**开始时间*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
startTime
;
/**结束时间*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
private
Date
endTime
;
/**标签*/
private
String
eventLabel
;
/**是否公开*/
private
Integer
facePublic
;
/**事件创建方式(1-用户直接创建;2-基于挖掘的事件创建)*/
private
Integer
category
;
/**事件地域信息*/
List
<
RegionVO
>
regionList
;
/**关键词*/
private
KeywordsVO
keywordsVO
;
/**伪事件id*/
private
String
fakeEventId
;
/**用户账号*/
private
String
username
;
}
src/main/java/com/zzsn/event/es/EsService.java
浏览文件 @
19b2d20a
...
...
@@ -101,7 +101,8 @@ public class EsService {
//设置需要获取的字段
searchSourceBuilder
.
fetchSource
(
fetchFields
,
null
);
//设置返回条数
searchSourceBuilder
.
from
((
pageNo
.
get
()
-
1
)
*
size
);
int
currentPage
=
pageNo
.
get
();
searchSourceBuilder
.
from
((
currentPage
-
1
)
*
size
);
searchSourceBuilder
.
size
(
size
);
//创建查询对象
BoolQueryBuilder
boolQuery
=
QueryBuilders
.
boolQuery
();
...
...
@@ -125,7 +126,7 @@ public class EsService {
}
else
{
pageNo
.
getAndIncrement
();
}
log
.
info
(
"本次循环-{},数据量为-{}"
,
pageNo
,
subjectDataVos
.
size
());
log
.
info
(
"本次循环-{},数据量为-{}"
,
currentPage
,
subjectDataVos
.
size
());
return
subjectDataVos
;
});
try
{
...
...
@@ -263,7 +264,7 @@ public class EsService {
if
(
StringUtils
.
isNotBlank
(
labelId
))
{
boolQuery
.
must
(
QueryBuilders
.
nestedQuery
(
"labels"
,
QueryBuilders
.
termQuery
(
"labels.relationId"
,
labelId
),
ScoreMode
.
None
));
}
boolQuery
.
mustNot
(
QueryBuilders
.
match
Query
(
"deleteFlag"
,
"1"
));
boolQuery
.
mustNot
(
QueryBuilders
.
term
Query
(
"deleteFlag"
,
"1"
));
searchSourceBuilder
.
query
(
boolQuery
);
searchRequest
.
source
(
searchSourceBuilder
);
IPage
<
SubjectDataVo
>
pageData
=
new
Page
<>();
...
...
@@ -555,18 +556,19 @@ public class EsService {
searchSourceBuilder
.
trackTotalHits
(
true
);
//创建查询对象
BoolQueryBuilder
boolQuery
=
QueryBuilders
.
boolQuery
();
boolQuery
.
must
(
QueryBuilders
.
termsQuery
(
"subjectId.keyword"
,
subjectIdList
));
if
(
CollectionUtils
.
isNotEmpty
(
articleIdList
))
{
boolQuery
.
must
(
QueryBuilders
.
termsQuery
(
"id"
,
articleIdList
));
}
if
(
StringUtils
.
isNotEmpty
(
searchWord
))
{
if
(
category
==
1
)
{
boolQuery
.
must
(
QueryBuilders
.
matchQuery
(
position
,
searchWord
));
}
else
if
(
category
==
2
)
{
boolQuery
.
must
(
QueryBuilders
.
matchPhraseQuery
(
position
,
searchWord
));
}
else
{
boolQuery
.
must
(
QueryBuilders
.
termsQuery
(
"subjectId.keyword"
,
subjectIdList
));
if
(
StringUtils
.
isNotEmpty
(
searchWord
))
{
if
(
category
==
1
)
{
boolQuery
.
must
(
QueryBuilders
.
matchQuery
(
position
,
searchWord
));
}
else
if
(
category
==
2
)
{
boolQuery
.
must
(
QueryBuilders
.
matchPhraseQuery
(
position
,
searchWord
));
}
}
boolQuery
.
mustNot
(
QueryBuilders
.
termQuery
(
"deleteFlag"
,
"1"
));
}
boolQuery
.
mustNot
(
QueryBuilders
.
matchQuery
(
"deleteFlag"
,
"1"
));
searchSourceBuilder
.
query
(
boolQuery
);
searchRequest
.
source
(
searchSourceBuilder
);
List
<
SubjectDataVo
>
list
=
new
ArrayList
<>();
...
...
src/main/java/com/zzsn/event/mapper/EventMapper.java
浏览文件 @
19b2d20a
...
...
@@ -229,7 +229,9 @@ public interface EventMapper extends BaseMapper<Event> {
* @author lkg
* @date 2024/4/10
*/
List
<
EventExcelVO
>
frontAllList
(
@Param
(
"projectId"
)
String
projectId
,
@Param
(
"createBy"
)
String
createBy
,
@Param
(
"eventIdList"
)
List
<
String
>
eventIdList
,
@Param
(
"size"
)
Integer
size
);
List
<
EventExcelVO
>
frontAllList
(
@Param
(
"projectId"
)
String
projectId
,
@Param
(
"createBy"
)
String
createBy
,
@Param
(
"eventIdList"
)
List
<
String
>
eventIdList
,
@Param
(
"eventName"
)
String
eventName
,
@Param
(
"eventTypes"
)
List
<
String
>
eventTypes
,
@Param
(
"labelField"
)
String
labelField
,
@Param
(
"labelName"
)
String
labelName
,
@Param
(
"type"
)
Integer
type
,
@Param
(
"size"
)
Integer
size
);
/**
* 默认创建的,公开且发布的事件信息集合
...
...
@@ -241,7 +243,9 @@ public interface EventMapper extends BaseMapper<Event> {
* @author lkg
* @date 2024/4/10
*/
List
<
EventExcelVO
>
frontOwnerList
(
@Param
(
"projectId"
)
String
projectId
,
@Param
(
"createBy"
)
String
createBy
,
@Param
(
"eventIdList"
)
List
<
String
>
eventIdList
,
@Param
(
"size"
)
Integer
size
);
List
<
EventExcelVO
>
frontOwnerList
(
@Param
(
"projectId"
)
String
projectId
,
@Param
(
"createBy"
)
String
createBy
,
@Param
(
"eventIdList"
)
List
<
String
>
eventIdList
,
@Param
(
"eventName"
)
String
eventName
,
@Param
(
"eventTypes"
)
List
<
String
>
eventTypes
,
@Param
(
"labelField"
)
String
labelField
,
@Param
(
"labelName"
)
String
labelName
,
@Param
(
"type"
)
Integer
type
,
@Param
(
"size"
)
Integer
size
);
/**
* 模型信息列表
...
...
src/main/java/com/zzsn/event/mapper/xml/EventCategoryMapper.xml
浏览文件 @
19b2d20a
...
...
@@ -3,6 +3,6 @@
<mapper
namespace=
"com.zzsn.event.mapper.EventCategoryMapper"
>
<select
id=
"categoryList"
resultType=
"com.zzsn.event.util.tree.Node"
>
select id,type_name as name,pid,has_child from event_category
select id,type_name as name,pid,has_child from event_category
order by order_number
</select>
</mapper>
\ No newline at end of file
src/main/java/com/zzsn/event/mapper/xml/EventMapper.xml
浏览文件 @
19b2d20a
...
...
@@ -561,12 +561,13 @@
<select
id=
"frontAllList"
resultType=
"com.zzsn.event.vo.EventExcelVO"
>
select distinct a.* from (
select e.id,e.event_name,e.event_describe,e.publish_date,e.total_hot from event e
select e.id,e.event_name,e.event_
type,e.event_
describe,e.publish_date,e.total_hot from event e
where e.publish_status = 1 and e.face_public = 1
union
select e.id,e.event_name,e.event_describe,e.publish_date,e.total_hot from event e
select e.id,e.event_name,e.event_
type,e.event_
describe,e.publish_date,e.total_hot 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
left join event_tag t3 on a.id=t3.event_id
where m.project_id = #{projectId}
<if
test=
"eventIdList != null and eventIdList.size() > 0"
>
and a.id in
...
...
@@ -574,14 +575,36 @@
#{item}
</foreach>
</if>
<if
test=
"eventName!=null and eventName != ''"
>
and a.event_name like CONCAT('%',#{eventName},'%')
</if>
<if
test=
"eventTypes != null and eventTypes.size() > 0"
>
and a.event_type in
<foreach
collection=
"eventTypes"
item=
"item"
open=
"("
separator=
","
close=
")"
>
#{item}
</foreach>
</if>
<if
test=
"labelName != null and labelName !=''"
>
<if
test=
"labelField != null and labelField != ''"
>
<choose>
<when
test=
"type == 1"
>
and a.event_label like concat('%',#{labelName},'%')
</when>
<otherwise>
and t3.${labelField} like concat('%',#{labelName},'%')
</otherwise>
</choose>
</if>
</if>
order by a.publish_date desc
<if
test=
"size != null"
>
order by a.publish_date desc
limit #{size}
</if>
</select>
<select
id=
"frontOwnerList"
resultType=
"com.zzsn.event.vo.EventExcelVO"
>
select
id,event_name,event_describe,publish_date,
total_hot from event e
select
e.id,e.event_name,e.event_describe,e.publish_date,e.
total_hot from event e
inner join project_subject_map m on e.id = m.subject_id
left join event_tag t3 on e.id=t3.event_id
where e.publish_status = 1 and e.face_public = 1
and e.create_by = #{createBy} and m.project_id = #{projectId}
<if
test=
"eventIdList != null and eventIdList.size() > 0"
>
...
...
@@ -590,8 +613,29 @@
#{item}
</foreach>
</if>
<if
test=
"eventName!=null and eventName != ''"
>
and e.event_name like CONCAT('%',#{eventName},'%')
</if>
<if
test=
"eventTypes != null and eventTypes.size() > 0"
>
and e.event_type in
<foreach
collection=
"eventTypes"
item=
"item"
open=
"("
separator=
","
close=
")"
>
#{item}
</foreach>
</if>
<if
test=
"labelName != null and labelName !=''"
>
<if
test=
"labelField != null and labelField != ''"
>
<choose>
<when
test=
"type == 1"
>
and e.event_label like concat('%',#{labelName},'%')
</when>
<otherwise>
and t3.${labelField} like concat('%',#{labelName},'%')
</otherwise>
</choose>
</if>
</if>
order by e.publish_date desc
<if
test=
"size != null"
>
order by e.publish_date desc
limit #{size}
</if>
</select>
...
...
src/main/java/com/zzsn/event/service/IEventService.java
浏览文件 @
19b2d20a
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import
com.zzsn.event.entity.Event
;
import
com.zzsn.event.util.tree.Node
;
import
com.zzsn.event.vo.*
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -146,7 +147,8 @@ public interface IEventService extends IService<Event> {
* @author lkg
* @date 2024/4/10
*/
List
<
EventExcelVO
>
frontAllList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
Integer
size
);
List
<
EventExcelVO
>
frontAllList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
String
searchWord
,
String
eventType
,
String
labelField
,
String
labelName
,
Integer
size
);
/**
* 默认创建的,公开且发布的事件信息集合
...
...
@@ -158,7 +160,8 @@ public interface IEventService extends IService<Event> {
* @author lkg
* @date 2024/4/10
*/
List
<
EventExcelVO
>
frontOwnerList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
Integer
size
);
List
<
EventExcelVO
>
frontOwnerList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
String
searchWord
,
String
eventType
,
String
labelField
,
String
labelName
,
Integer
size
);
/**
* 模型信息列表
...
...
src/main/java/com/zzsn/event/service/impl/EventServiceImpl.java
浏览文件 @
19b2d20a
...
...
@@ -429,13 +429,33 @@ public class EventServiceImpl extends ServiceImpl<EventMapper, Event> implements
}
@Override
public
List
<
EventExcelVO
>
frontAllList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
Integer
size
)
{
return
baseMapper
.
frontAllList
(
projectId
,
createBy
,
eventIdList
,
size
);
public
List
<
EventExcelVO
>
frontAllList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
String
eventName
,
String
eventType
,
String
labelField
,
String
labelName
,
Integer
size
)
{
Integer
type
=
null
;
if
(
StringUtils
.
isNotEmpty
(
labelField
)
&&
labelField
.
equals
(
"event_label"
))
{
type
=
1
;
}
List
<
String
>
eventTypes
=
new
ArrayList
<>();
if
(
StringUtils
.
isNotEmpty
(
eventType
))
{
List
<
Node
>
nodes
=
eventCategoryService
.
categoryList
();
eventTypes
=
TreeUtil
.
belowList
(
nodes
,
eventType
,
true
);
}
return
baseMapper
.
frontAllList
(
projectId
,
createBy
,
eventIdList
,
eventName
,
eventTypes
,
labelField
,
labelName
,
type
,
size
);
}
@Override
public
List
<
EventExcelVO
>
frontOwnerList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
Integer
size
)
{
return
baseMapper
.
frontOwnerList
(
projectId
,
createBy
,
eventIdList
,
size
);
public
List
<
EventExcelVO
>
frontOwnerList
(
String
projectId
,
String
createBy
,
List
<
String
>
eventIdList
,
String
eventName
,
String
eventType
,
String
labelField
,
String
labelName
,
Integer
size
)
{
Integer
type
=
null
;
if
(
StringUtils
.
isNotEmpty
(
labelField
)
&&
labelField
.
equals
(
"event_label"
))
{
type
=
1
;
}
List
<
String
>
eventTypes
=
new
ArrayList
<>();
if
(
StringUtils
.
isNotEmpty
(
eventType
))
{
List
<
Node
>
nodes
=
eventCategoryService
.
categoryList
();
eventTypes
=
TreeUtil
.
belowList
(
nodes
,
eventType
,
true
);
}
return
baseMapper
.
frontOwnerList
(
projectId
,
createBy
,
eventIdList
,
eventName
,
eventTypes
,
labelField
,
labelName
,
type
,
size
);
}
@Override
...
...
src/main/java/com/zzsn/event/vo/ExportParam.java
浏览文件 @
19b2d20a
...
...
@@ -35,4 +35,12 @@ public class ExportParam {
private
Integer
size
;
//导出方式(1-摘要;2-正文)
private
Integer
type
;
//事件类型
String
eventType
;
//搜索字段(标签)
String
labelField
;
//搜索词(标签)
String
labelName
;
//事件名称
String
eventName
;
}
src/main/resources/application-pro.yml
浏览文件 @
19b2d20a
...
...
@@ -92,7 +92,7 @@ spring:
key-serializer
:
org.apache.kafka.common.serialization.StringSerializer
value-serializer
:
org.apache.kafka.common.serialization.StringSerializer
properties
:
max.request.size
:
10485760
#10
M
max.request.size
:
335544324
#32
M
consumer
:
#用于标识此使用者所属的使用者组的唯一字符串
group-id
:
event-analysis-group-yjzx
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论