Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
brandkbs2
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shenjunjie
brandkbs2
Commits
4aa2ecfd
Commit
4aa2ecfd
authored
Nov 03, 2022
by
shenjunjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加getProjectWarnCriteri默认值
parent
cee7d4fa
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
379 additions
and
4 deletions
+379
-4
src/main/java/com/zhiwei/brandkbs2/controller/InterfaceController.java
+29
-3
src/main/java/com/zhiwei/brandkbs2/es/EsQueryTools.java
+15
-1
src/main/java/com/zhiwei/brandkbs2/pojo/external/BaseMapCompound.java
+29
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsChannelConfig.java
+54
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsChannelWarn.java
+28
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsHotEventWarn.java
+64
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsHotTopConfig.java
+60
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsWarnTemplate.java
+23
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsYuQingConfig.java
+54
-0
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsYuQingWarn.java
+23
-0
src/main/java/com/zhiwei/brandkbs2/service/impl/ProjectWarnServiceImpl.java
+0
-0
No files found.
src/main/java/com/zhiwei/brandkbs2/controller/InterfaceController.java
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
controller
;
package
com
.
zhiwei
.
brandkbs2
.
controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.pojo.external.BrandkbsChannelConfig
;
import
com.zhiwei.brandkbs2.pojo.external.BrandkbsHotEventConfig
;
import
com.zhiwei.brandkbs2.pojo.external.BrandkbsYuQingConfig
;
import
com.zhiwei.brandkbs2.service.ProjectService
;
import
com.zhiwei.brandkbs2.service.ProjectService
;
import
com.zhiwei.brandkbs2.service.ProjectWarnService
;
import
com.zhiwei.brandkbs2.service.ProjectWarnService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
...
@@ -40,4 +42,28 @@ public class InterfaceController {
...
@@ -40,4 +42,28 @@ public class InterfaceController {
return
ResponseResult
.
success
(
projectService
.
getUserAllProjectsPrimary
(
userId
));
return
ResponseResult
.
success
(
projectService
.
getUserAllProjectsPrimary
(
userId
));
}
}
@ApiOperation
(
"获取舆情动态-预警结果"
)
@PostMapping
(
"/warn/yuqing"
)
public
ResponseResult
getYuqingWaring
(
@RequestBody
JSONObject
json
)
{
String
projectId
=
json
.
getString
(
"projectId"
);
BrandkbsYuQingConfig
config
=
json
.
getObject
(
"config"
,
BrandkbsYuQingConfig
.
class
);
return
projectWarnService
.
getYuqingWaring
(
projectId
,
config
);
}
@ApiOperation
(
"获取渠道参与-预警结果"
)
@PostMapping
(
"/warn/channel"
)
public
ResponseResult
getChannelWaring
(
@RequestBody
JSONObject
json
)
{
String
projectId
=
json
.
getString
(
"projectId"
);
BrandkbsChannelConfig
config
=
json
.
getObject
(
"config"
,
BrandkbsChannelConfig
.
class
);
return
projectWarnService
.
getChannelWaring
(
projectId
,
config
);
}
@ApiOperation
(
"获取热点事件-预警结果"
)
@PostMapping
(
"/warn/hotEvent"
)
public
ResponseResult
getHotEventWaring
(
@RequestBody
JSONObject
json
)
{
String
projectId
=
json
.
getString
(
"projectId"
);
BrandkbsHotEventConfig
config
=
json
.
getObject
(
"config"
,
BrandkbsHotEventConfig
.
class
);
return
projectWarnService
.
getHotEventWaring
(
projectId
,
config
);
}
}
}
src/main/java/com/zhiwei/brandkbs2/es/EsQueryTools.java
View file @
4aa2ecfd
...
@@ -176,7 +176,7 @@ public class EsQueryTools {
...
@@ -176,7 +176,7 @@ public class EsQueryTools {
BoolQueryBuilder
contendQuery
=
QueryBuilders
.
boolQuery
();
BoolQueryBuilder
contendQuery
=
QueryBuilders
.
boolQuery
();
// 主品牌一定参与
// 主品牌一定参与
// contendQuery.should(QueryBuilders.termQuery("contend_id.keyword", "0"));
// contendQuery.should(QueryBuilders.termQuery("contend_id.keyword", "0"));
if
(
null
==
contends
)
{
if
(
CollectionUtils
.
isEmpty
(
contends
)
)
{
return
;
return
;
}
}
for
(
String
contendId
:
contends
)
{
for
(
String
contendId
:
contends
)
{
...
@@ -210,6 +210,20 @@ public class EsQueryTools {
...
@@ -210,6 +210,20 @@ public class EsQueryTools {
}
}
/**
/**
* 针对微博平台转发 查询语句
*
* @param isForward
* @return
*/
public
static
BoolQueryBuilder
assembleForwardQuery
(
boolean
isForward
)
{
BoolQueryBuilder
queryBuilder
=
QueryBuilders
.
boolQuery
();
BoolQueryBuilder
notWeiboCondition
=
QueryBuilders
.
boolQuery
();
queryBuilder
.
should
(
notWeiboCondition
.
mustNot
(
QueryBuilders
.
termQuery
(
"platform_id"
,
"5d02236e6395002a7c380b79"
)));
queryBuilder
.
should
(
QueryBuilders
.
termQuery
(
"is_forward"
,
isForward
));
return
queryBuilder
;
}
/**
* 字段不拆封,多字段 同关键词
* 字段不拆封,多字段 同关键词
*
*
* @param @param boolQueryBuilder
* @param @param boolQueryBuilder
...
...
src/main/java/com/zhiwei/brandkbs2/pojo/external/BaseMapCompound.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
com.zhiwei.brandkbs2.pojo.BaseMap
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
java.util.List
;
/**
* @ClassName: BaseMapCompound
* @Description BaseMapCompound
* @author: sjj
* @date: 2022-11-02 16:21
*/
@Data
@AllArgsConstructor
public
class
BaseMapCompound
{
/**
* 基础字段
*/
private
BaseMap
baseMap
;
/**
* 标签列表
*/
private
List
<
String
>
tags
;
}
\ No newline at end of file
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsChannelConfig.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
BrandkbsChannelConfig
{
private
String
configName
;
/**
* 友好渠道
*/
private
Boolean
friendlyChannel
;
/**
* 阈值
*/
private
int
threshold
;
/**
* 自定义渠道
*/
private
String
channel
;
/**
* 是否转发
*/
private
List
<
Boolean
>
primary
;
/**
* 舆情标签
*/
private
List
<
String
>
markerTags
;
/**
* 是否去重
*/
private
Boolean
duplicate
;
/**
* pushInterval 推送间隔
*/
private
Long
pushInterval
;
private
boolean
used
;
public
BrandkbsChannelConfig
()
{
this
.
used
=
false
;
this
.
pushInterval
=
10
*
60
*
1000L
;
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsChannelWarn.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
java.util.List
;
/**
* @ClassName: BrandkbsChannelWarn
* @Description BrandkbsChannelWarn
* @author: sjj
* @date: 2022-11-02 16:45
*/
@Data
@AllArgsConstructor
public
class
BrandkbsChannelWarn
{
/**
* 基础数据
*/
private
List
<
BaseMapCompound
>
list
;
/**
* 预警理由
*/
private
String
channelWarnReason
;
}
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsHotEventWarn.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
java.util.List
;
/**
* @ClassName: BrandkbsHotEventWarn
* @Description BrandkbsHotEventWarn
* @author: sjj
* @date: 2022-11-02 16:49
*/
@Data
@AllArgsConstructor
public
class
BrandkbsHotEventWarn
{
private
List
<
HotEvent
>
hotEventList
;
@Data
public
static
class
HotEvent
{
/**
* 类别名称
*/
private
String
type
;
/**
* 事件标题
*/
private
String
title
;
/**
* 事件情感倾向
*/
private
String
emotion
;
/**
* 总传播量
*/
private
Long
totalDisseminationVolume
;
/**
* 参与渠道数
*/
private
Long
totalChannelVolume
;
/**
* 开始时间
*/
private
Long
startTime
;
/**
* 影响力
*/
private
double
influence
;
/**
* 标签列表
*/
private
List
<
String
>
tagList
;
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsHotTopConfig.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
BrandkbsHotTopConfig
{
private
String
configName
;
/**
* 预警关键字
*/
private
String
warnKeyword
;
/**
* 过滤词
*/
private
String
filterKeyword
;
/**
* 榜单类型
*/
private
List
<
String
>
listType
;
/**
* 预警类型 首次上榜
*/
private
Boolean
firstTop
;
/**
*
*/
private
Boolean
newHeight
;
/**
* 新高
*/
private
int
topNewHeight
;
/**
* 再一次上榜
*/
private
Boolean
topOnceAgain
;
private
Boolean
introduction
;
/**
* pushInterval 推送间隔
*/
private
Long
pushInterval
;
private
boolean
used
;
public
BrandkbsHotTopConfig
()
{
this
.
used
=
false
;
this
.
pushInterval
=
5
*
60
*
1000L
;
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsWarnTemplate.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
/**
* @ClassName: BrandkbsWarnTemplate
* @Description BrandkbsWarnTemplate
* @author: sjj
* @date: 2022-11-03 13:48
*/
@Data
@AllArgsConstructor
public
class
BrandkbsWarnTemplate
<
T
>
{
int
firstCount
;
String
keyword1
;
String
keyword2
;
String
keyword3
;
String
keyword4
;
T
warnDetails
;
}
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsYuQingConfig.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
BrandkbsYuQingConfig
{
private
String
configName
;
/**
* 发声渠道
*/
private
List
<
String
>
channelTypes
;
/**
* 文章类型
*/
private
List
<
Boolean
>
primary
;
/**
* 本品舆情
*/
private
List
<
String
>
markerTags
;
/**
* 竞品舆情
*/
private
List
<
String
>
contends
;
/**
* 是否去重
*/
private
Boolean
duplicate
;
/**
* 关键字命中
*/
private
String
keyword
;
/**
* pushInterval 推送间隔
*/
private
Long
pushInterval
;
private
boolean
used
;
public
BrandkbsYuQingConfig
()
{
this
.
used
=
false
;
this
.
pushInterval
=
60
*
60
*
1000L
;
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/external/BrandkbsYuQingWarn.java
0 → 100644
View file @
4aa2ecfd
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
external
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
java.util.List
;
/**
* @ClassName: BrandkbsYuQingWarn
* @Description BrandkbsYuQingWarn
* @author: sjj
* @date: 2022-11-02 16:10
*/
@Data
@AllArgsConstructor
public
class
BrandkbsYuQingWarn
{
/**
* 基础数据
*/
private
List
<
BaseMapCompound
>
list
;
}
src/main/java/com/zhiwei/brandkbs2/service/impl/ProjectWarnServiceImpl.java
View file @
4aa2ecfd
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment