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
9683fdbc
Commit
9683fdbc
authored
Jul 15, 2022
by
shenjunjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
舆情库相关调整
parent
d961690e
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
80 changed files
with
1237 additions
and
241 deletions
+1237
-241
src/main/java/com/zhiwei/brandkbs2/common/GenericAttribute.java
+11
-0
src/main/java/com/zhiwei/brandkbs2/common/RedisKeyPrefix.java
+8
-1
src/main/java/com/zhiwei/brandkbs2/config/Constant.java
+7
-0
src/main/java/com/zhiwei/brandkbs2/controller/app/AppArticleController.java
+32
-2
src/main/java/com/zhiwei/brandkbs2/controller/app/GlobalController.java
+41
-0
src/main/java/com/zhiwei/brandkbs2/dao/BaseMongoDao.java
+19
-3
src/main/java/com/zhiwei/brandkbs2/dao/BehaviorDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/BrandkbsTaskDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/ChannelDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/ChannelLabelDao.java
+1
-1
src/main/java/com/zhiwei/brandkbs2/dao/ChannelTagDao.java
+14
-0
src/main/java/com/zhiwei/brandkbs2/dao/CustomTagDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/EventDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/EventDataDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/HighWordDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/ProjectDao.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/QbjcPojoDao.java
+4
-4
src/main/java/com/zhiwei/brandkbs2/dao/ReportDao.java
+9
-3
src/main/java/com/zhiwei/brandkbs2/dao/ReportSettingsDao.java
+8
-3
src/main/java/com/zhiwei/brandkbs2/dao/ShardingMongo.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/TagFilterDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/dao/UserDao.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/BaseMongoDaoImpl.java
+15
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/BehaviorDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/BrandkbsTaskDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/ChannelDaoImpl.java
+11
-7
src/main/java/com/zhiwei/brandkbs2/dao/impl/ChannelLabelDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/ChannelTagDaoImpl.java
+29
-0
src/main/java/com/zhiwei/brandkbs2/dao/impl/CustomTagDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/EventDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/EventDataDaoImpl.java
+10
-3
src/main/java/com/zhiwei/brandkbs2/dao/impl/HighWordDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/ProjectDaoImlp.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/QbjcPojoDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/ReportDaoImpl.java
+21
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/ReportSettingsDaoImpl.java
+13
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/TagFilterDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/dao/impl/UserDaoImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/easyexcel/listener/EventDataListener.java
+5
-5
src/main/java/com/zhiwei/brandkbs2/enmus/ChannelEmotion.java
+45
-0
src/main/java/com/zhiwei/brandkbs2/enmus/ImportantChannelEnum.java
+1
-1
src/main/java/com/zhiwei/brandkbs2/enmus/ReportTypeEnum.java
+73
-0
src/main/java/com/zhiwei/brandkbs2/es/EsClientDao.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/pojo/Channel.java
+13
-1
src/main/java/com/zhiwei/brandkbs2/pojo/ChannelIndex.java
+32
-4
src/main/java/com/zhiwei/brandkbs2/pojo/ChannelTag.java
+20
-0
src/main/java/com/zhiwei/brandkbs2/pojo/MarkFlowEntity.java
+14
-30
src/main/java/com/zhiwei/brandkbs2/pojo/Report.java
+59
-11
src/main/java/com/zhiwei/brandkbs2/pojo/ReportSettings.java
+11
-0
src/main/java/com/zhiwei/brandkbs2/pojo/dto/MarkSearchDTO.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ReportDTO.java
+54
-0
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ReportSearchDTO.java
+56
-0
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ReportSettingsDTO.java
+4
-3
src/main/java/com/zhiwei/brandkbs2/service/ChannelService.java
+2
-0
src/main/java/com/zhiwei/brandkbs2/service/MarkDataService.java
+7
-0
src/main/java/com/zhiwei/brandkbs2/service/MarkFlowService.java
+39
-0
src/main/java/com/zhiwei/brandkbs2/service/ProjectService.java
+7
-0
src/main/java/com/zhiwei/brandkbs2/service/ReportService.java
+79
-1
src/main/java/com/zhiwei/brandkbs2/service/TaskService.java
+3
-3
src/main/java/com/zhiwei/brandkbs2/service/impl/BehaviorServiceImpl.java
+4
-4
src/main/java/com/zhiwei/brandkbs2/service/impl/BrandkbsTaskServiceImpl.java
+5
-2
src/main/java/com/zhiwei/brandkbs2/service/impl/ChannelServiceImpl.java
+8
-8
src/main/java/com/zhiwei/brandkbs2/service/impl/CustomTagServiceImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/service/impl/EventDataServiceImpl.java
+4
-4
src/main/java/com/zhiwei/brandkbs2/service/impl/EventServiceImpl.java
+5
-5
src/main/java/com/zhiwei/brandkbs2/service/impl/HighWordServiceImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/service/impl/MarkDataServiceImpl.java
+0
-0
src/main/java/com/zhiwei/brandkbs2/service/impl/MarkFlowServiceImpl.java
+161
-0
src/main/java/com/zhiwei/brandkbs2/service/impl/ProjectServiceImpl.java
+10
-4
src/main/java/com/zhiwei/brandkbs2/service/impl/ReportServiceImpl.java
+0
-0
src/main/java/com/zhiwei/brandkbs2/service/impl/SystemInfoServiceImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/service/impl/TagFilterServiceImpl.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/service/impl/TaskServiceImpl.java
+97
-18
src/main/java/com/zhiwei/brandkbs2/service/impl/UserServiceImpl.java
+4
-4
src/main/java/com/zhiwei/brandkbs2/task/ControlCenter.java
+2
-2
src/main/java/com/zhiwei/brandkbs2/util/FlowEntityUtil.java
+12
-12
src/main/java/com/zhiwei/brandkbs2/util/RedisUtil.java
+38
-0
src/main/java/com/zhiwei/brandkbs2/util/TextUtil.java
+1
-1
src/main/java/com/zhiwei/brandkbs2/util/Tools.java
+12
-0
src/test/java/com/zhiwei/brandkbs2/TestRunWith.java
+33
-21
No files found.
src/main/java/com/zhiwei/brandkbs2/common/GenericAttribute.java
View file @
9683fdbc
...
@@ -7,6 +7,7 @@ package com.zhiwei.brandkbs2.common;
...
@@ -7,6 +7,7 @@ package com.zhiwei.brandkbs2.common;
* @date: 2022-04-21 10:10
* @date: 2022-04-21 10:10
*/
*/
public
class
GenericAttribute
{
public
class
GenericAttribute
{
private
GenericAttribute
()
{
private
GenericAttribute
()
{
}
}
...
@@ -24,12 +25,22 @@ public class GenericAttribute {
...
@@ -24,12 +25,22 @@ public class GenericAttribute {
**/
**/
public
static
final
String
ES_IND_FULL_TEXT
=
"ind_full_text"
;
public
static
final
String
ES_IND_FULL_TEXT
=
"ind_full_text"
;
/**
/**
* es followers_num
*/
public
static
final
String
ES_FOLLOWERS_NUM
=
"followers_num"
;
/**
* es rootSource
**/
public
static
final
String
ES_ROOT_SOURCE
=
"root_source"
;
/**
* es gid
* es gid
**/
**/
public
static
final
String
ES_GID
=
"gid"
;
public
static
final
String
ES_GID
=
"gid"
;
public
static
final
String
ES_CNAME
=
"cname"
;
public
static
final
String
ES_CNAME
=
"cname"
;
/** es c2 **/
/** es c2 **/
public
static
final
String
ES_C2
=
"c2"
;
public
static
final
String
ES_C2
=
"c2"
;
/** es c4 **/
public
static
final
String
ES_C4
=
"c4"
;
/** es c5 **/
/** es c5 **/
public
static
final
String
ES_C5
=
"c5"
;
public
static
final
String
ES_C5
=
"c5"
;
/** es foreign **/
/** es foreign **/
...
...
src/main/java/com/zhiwei/brandkbs2/common/RedisKeyPrefix.java
View file @
9683fdbc
...
@@ -15,6 +15,8 @@ public class RedisKeyPrefix {
...
@@ -15,6 +15,8 @@ public class RedisKeyPrefix {
private
RedisKeyPrefix
()
{
private
RedisKeyPrefix
()
{
}
}
private
static
final
String
SEPARATOR
=
":"
;
public
static
final
String
MARK_ANALYZE_SUMMARY
=
"BRANDKBS:MARK:ANALYZE_SUMMARY:"
;
public
static
final
String
MARK_ANALYZE_SUMMARY
=
"BRANDKBS:MARK:ANALYZE_SUMMARY:"
;
public
static
final
String
MARK_PLATFORM_PROPORTION
=
"BRANDKBS:MARK:PLATFORM_PROPORTION:"
;
public
static
final
String
MARK_PLATFORM_PROPORTION
=
"BRANDKBS:MARK:PLATFORM_PROPORTION:"
;
public
static
final
String
MARK_SPREAD
=
"BRANDKBS:MARK:SPREAD:"
;
public
static
final
String
MARK_SPREAD
=
"BRANDKBS:MARK:SPREAD:"
;
...
@@ -22,7 +24,12 @@ public class RedisKeyPrefix {
...
@@ -22,7 +24,12 @@ public class RedisKeyPrefix {
public
static
final
String
MARK_EMOTION_PROPORTION
=
"BRANDKBS:MARK:EMOTION_PROPORTION:"
;
public
static
final
String
MARK_EMOTION_PROPORTION
=
"BRANDKBS:MARK:EMOTION_PROPORTION:"
;
public
static
final
String
MARK_HIGH_WORD
=
"BRANDKBS:MARK:HIGH_WORD:"
;
public
static
final
String
MARK_HIGH_WORD
=
"BRANDKBS:MARK:HIGH_WORD:"
;
private
static
final
String
SEPARATOR
=
":"
;
public
static
final
String
REDIS_SYSTEM_COPY
=
"BRANDKBS:SYSTEM:COPY:"
;
/**
* 项目简报报相关缓存KEY
*/
public
static
final
String
REPORT_PC
=
"BRANDKBS:REPORT:PC:"
;
/**
/**
* 稿件数据上传缓存key
* 稿件数据上传缓存key
...
...
src/main/java/com/zhiwei/brandkbs2/config/Constant.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
config
;
package
com
.
zhiwei
.
brandkbs2
.
config
;
import
org.apache.commons.lang3.time.FastDateFormat
;
/**
/**
* @ClassName: Constant
* @ClassName: Constant
* @Description 常量
* @Description 常量
...
@@ -11,6 +13,9 @@ public class Constant {
...
@@ -11,6 +13,9 @@ public class Constant {
public
static
final
String
HOUR_PATTERN
=
"yyyy-MM-dd HH"
;
public
static
final
String
HOUR_PATTERN
=
"yyyy-MM-dd HH"
;
public
static
final
String
DAY_PATTERN
=
"yyyy-MM-dd"
;
public
static
final
String
DAY_PATTERN
=
"yyyy-MM-dd"
;
public
static
final
FastDateFormat
HOUR_FORMAT
=
FastDateFormat
.
getInstance
(
HOUR_PATTERN
);
public
static
final
FastDateFormat
DAY_FORMAT
=
FastDateFormat
.
getInstance
(
DAY_PATTERN
);
/**
/**
* 自定义fid分隔符号
* 自定义fid分隔符号
*/
*/
...
@@ -20,6 +25,8 @@ public class Constant {
...
@@ -20,6 +25,8 @@ public class Constant {
* 标签相关
* 标签相关
*/
*/
public
static
final
String
EMOTION_LABEL_KEY
=
"情感倾向"
;
public
static
final
String
EMOTION_LABEL_KEY
=
"情感倾向"
;
public
static
final
String
EMOTION_SENSITIVE
=
"敏感"
;
public
static
final
String
EMOTION_NEGATIVE
=
"负面"
;
public
static
final
String
BRAND_LABEL_KEY
=
"品牌归属"
;
public
static
final
String
BRAND_LABEL_KEY
=
"品牌归属"
;
/**
/**
...
...
src/main/java/com/zhiwei/brandkbs2/controller/AppArticleController.java
→
src/main/java/com/zhiwei/brandkbs2/controller/
app/
AppArticleController.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
controller
;
package
com
.
zhiwei
.
brandkbs2
.
controller
.
app
;
import
com.zhiwei.brandkbs2.auth.Auth
;
import
com.zhiwei.brandkbs2.auth.Auth
;
import
com.zhiwei.brandkbs2.controller.BaseController
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.pojo.dto.MarkSearchDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.MarkSearchDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportSearchDTO
;
import
com.zhiwei.brandkbs2.service.CommonService
;
import
com.zhiwei.brandkbs2.service.CommonService
;
import
com.zhiwei.brandkbs2.service.MarkDataService
;
import
com.zhiwei.brandkbs2.service.MarkDataService
;
import
com.zhiwei.brandkbs2.service.ReportService
;
import
com.zhiwei.brandkbs2.service.ReportService
;
...
@@ -42,6 +45,12 @@ public class AppArticleController extends BaseController {
...
@@ -42,6 +45,12 @@ public class AppArticleController extends BaseController {
return
ResponseResult
.
success
(
markDataService
.
getYuqingMarkList
(
markSearchDTO
));
return
ResponseResult
.
success
(
markDataService
.
getYuqingMarkList
(
markSearchDTO
));
}
}
@ApiOperation
(
"舆情列表-生成聚合"
)
@PostMapping
(
"/mark/agree"
)
public
ResponseResult
generateYuqingMarkAggreeList
(
@RequestBody
MarkSearchDTO
markSearchDTO
)
{
return
ResponseResult
.
success
(
markDataService
.
generateYuqingMarkAggreeList
(
markSearchDTO
));
}
@ApiOperation
(
"舆情列表-搜索条件"
)
@ApiOperation
(
"舆情列表-搜索条件"
)
@GetMapping
(
"/mark/list/criteria"
)
@GetMapping
(
"/mark/list/criteria"
)
public
ResponseResult
getYuqingMark
(
@RequestParam
(
required
=
false
)
String
linkedGroupId
)
{
public
ResponseResult
getYuqingMark
(
@RequestParam
(
required
=
false
)
String
linkedGroupId
)
{
...
@@ -113,9 +122,30 @@ public class AppArticleController extends BaseController {
...
@@ -113,9 +122,30 @@ public class AppArticleController extends BaseController {
}
}
@ApiOperation
(
"舆情简报-分类统计"
)
@ApiOperation
(
"舆情简报-分类统计"
)
@GetMapping
(
"/aggCount"
)
@GetMapping
(
"/
report/
aggCount"
)
public
ResponseResult
getReportsAggCount
()
{
public
ResponseResult
getReportsAggCount
()
{
return
ResponseResult
.
success
(
reportService
.
getReportsAggCount
());
return
ResponseResult
.
success
(
reportService
.
getReportsAggCount
());
}
}
@ApiOperation
(
"舆情简报-全部报告列表"
)
@GetMapping
(
"/report/list"
)
public
ResponseResult
findReportList
(
ReportSearchDTO
reportSearch
)
{
return
ResponseResult
.
success
(
reportService
.
findReportList
(
reportSearch
));
}
@ApiOperation
(
"舆情简报-添加自定义简报"
)
@PostMapping
(
"report/custom/add"
)
public
ResponseResult
addCustomReport
(
@RequestBody
ReportDTO
reportDTO
)
{
reportService
.
addCustomReport
(
reportDTO
);
return
ResponseResult
.
success
();
}
@ApiOperation
(
"舆情简报-删除简报"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"报告ID"
,
required
=
true
,
paramType
=
"path"
,
dataType
=
"String"
)
@DeleteMapping
(
"report/{id}"
)
public
ResponseResult
deleteReportById
(
@PathVariable
String
id
)
{
reportService
.
deleteReportById
(
id
);
return
ResponseResult
.
success
();
}
}
}
src/main/java/com/zhiwei/brandkbs2/controller/app/GlobalController.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
controller
.
app
;
import
com.zhiwei.brandkbs2.auth.Auth
;
import
com.zhiwei.brandkbs2.controller.BaseController
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.service.MarkFlowService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
/**
* @ClassName: GlobalController
* @Description 全局通用获取Controller
* @author: sjj
* @date: 2022-07-15 10:33
*/
@RestController
@RequestMapping
(
"/app/global"
)
@Api
(
tags
=
"全局通用接口"
)
@Auth
(
role
=
RoleEnum
.
CUSTOMER
)
public
class
GlobalController
extends
BaseController
{
@Resource
(
name
=
"markFlowServiceImpl"
)
MarkFlowService
markFlowService
;
@ApiOperation
(
"内部快照-组装页面"
)
@PostMapping
(
"/shotPage"
)
public
ResponseResult
setShotPage
(
@RequestBody
String
markFlowEntity
)
{
return
ResponseResult
.
success
(
markFlowService
.
setShotPage
(
markFlowEntity
));
}
@ApiOperation
(
"内部快照-获取页面"
)
@GetMapping
(
"/shotPage/{id}"
)
public
ResponseResult
getShotPage
(
@PathVariable
(
name
=
"id"
)
String
id
)
{
return
ResponseResult
.
success
(
markFlowService
.
getShotPageFromCache
(
id
));
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
BaseMongoDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/BaseMongoDao.java
View file @
9683fdbc
...
@@ -15,7 +15,7 @@ import java.util.List;
...
@@ -15,7 +15,7 @@ import java.util.List;
* @date: 2022-04-29 14:45
* @date: 2022-04-29 14:45
*/
*/
public
interface
I
BaseMongoDao
<
T
extends
AbstractBaseMongo
>
{
public
interface
BaseMongoDao
<
T
extends
AbstractBaseMongo
>
{
/**
/**
* 插入一条数据
* 插入一条数据
...
@@ -54,6 +54,13 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
...
@@ -54,6 +54,13 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
void
deleteOneById
(
String
id
,
String
...
collectionNames
);
void
deleteOneById
(
String
id
,
String
...
collectionNames
);
/**
/**
* 通过id删除数据
*
* @param id 数据库唯一id
*/
void
deleteOneByIdWithQuery
(
String
id
,
Query
query
,
String
...
collectionNames
);
/**
* 通过id查找单条数据
* 通过id查找单条数据
*
*
* @param id 数据库唯一id
* @param id 数据库唯一id
...
@@ -95,7 +102,7 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
...
@@ -95,7 +102,7 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
* @param preQuery 查询请求
* @param preQuery 查询请求
* @return list<T>
* @return list<T>
*/
*/
List
<
T
>
findList
(
Query
preQuery
,
String
...
collectionNames
);
List
<
T
>
findList
(
Query
preQuery
,
String
...
collectionNames
);
/**
/**
* 量查询
* 量查询
...
@@ -106,13 +113,21 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
...
@@ -106,13 +113,21 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
long
count
(
Query
preQuery
,
String
...
collectionNames
);
long
count
(
Query
preQuery
,
String
...
collectionNames
);
/**
/**
* 量查询with关键词
*
* @param preQuery 查询请求
* @return long
*/
long
count
(
Query
preQuery
,
String
keyword
,
String
[]
matchFields
,
String
...
collectionNames
);
/**
* 添加模糊查询条件
* 添加模糊查询条件
*
*
* @param query query
* @param query query
* @param keyword 关键字
* @param keyword 关键字
* @param fuzzKeys 匹配keys
* @param fuzzKeys 匹配keys
*/
*/
void
addKeywordFuzz
(
Query
query
,
String
keyword
,
String
...
fuzzKeys
);
void
addKeywordFuzz
(
Query
query
,
String
keyword
,
String
...
fuzzKeys
);
/**
/**
* 添加排序
* 添加排序
...
@@ -133,6 +148,7 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
...
@@ -133,6 +148,7 @@ public interface IBaseMongoDao<T extends AbstractBaseMongo> {
criteria
.
and
(
"platform"
).
is
(
channelIndex
.
getPlatform
());
criteria
.
and
(
"platform"
).
is
(
channelIndex
.
getPlatform
());
criteria
.
and
(
"realSource"
).
is
(
channelIndex
.
getRealSource
());
criteria
.
and
(
"realSource"
).
is
(
channelIndex
.
getRealSource
());
criteria
.
and
(
"source"
).
is
(
channelIndex
.
getSource
());
criteria
.
and
(
"source"
).
is
(
channelIndex
.
getSource
());
criteria
.
and
(
"projectId"
).
is
(
channelIndex
.
getProjectId
());
criteria
.
and
(
"linkedGroupId"
).
is
(
channelIndex
.
getLinkedGroupId
());
criteria
.
and
(
"linkedGroupId"
).
is
(
channelIndex
.
getLinkedGroupId
());
return
criteria
;
return
criteria
;
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
BehaviorDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/BehaviorDao.java
View file @
9683fdbc
...
@@ -3,10 +3,10 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -3,10 +3,10 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.Behavior
;
import
com.zhiwei.brandkbs2.pojo.Behavior
;
/**
/**
* @ClassName:
I
BehaviorDao
* @ClassName: BehaviorDao
* @Description
I
BehaviorDao
* @Description BehaviorDao
* @author: sjj
* @author: sjj
* @date: 2022-05-27 13:46
* @date: 2022-05-27 13:46
*/
*/
public
interface
IBehaviorDao
extends
IBaseMongoDao
<
Behavior
>,
I
ShardingMongo
{
public
interface
BehaviorDao
extends
BaseMongoDao
<
Behavior
>,
ShardingMongo
{
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
BrandkbsTaskDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/BrandkbsTaskDao.java
View file @
9683fdbc
...
@@ -3,12 +3,12 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -3,12 +3,12 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
/**
/**
* @ClassName:
I
BrandkbsTaskDao
* @ClassName: BrandkbsTaskDao
* @Description
I
BrandkbsTaskDao
* @Description BrandkbsTaskDao
* @author: sjj
* @author: sjj
* @date: 2022-07-12 17:25
* @date: 2022-07-12 17:25
*/
*/
public
interface
IBrandkbsTaskDao
extends
I
BaseMongoDao
<
BrandkbsTask
>
{
public
interface
BrandkbsTaskDao
extends
BaseMongoDao
<
BrandkbsTask
>
{
/**
/**
* 根据任务名称获取任务
* 根据任务名称获取任务
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
ChannelDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/ChannelDao.java
View file @
9683fdbc
...
@@ -4,12 +4,12 @@ import com.zhiwei.brandkbs2.pojo.Channel;
...
@@ -4,12 +4,12 @@ import com.zhiwei.brandkbs2.pojo.Channel;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
/**
/**
* @ClassName:
I
ChannelDao
* @ClassName: ChannelDao
* @Description
I
ChannelDao
* @Description ChannelDao
* @author: sjj
* @author: sjj
* @date: 2022-06-16 15:30
* @date: 2022-06-16 15:30
*/
*/
public
interface
IChannelDao
extends
I
BaseMongoDao
<
Channel
>{
public
interface
ChannelDao
extends
BaseMongoDao
<
Channel
>{
Channel
queryUnique
(
ChannelIndex
channelIndex
);
Channel
queryUnique
(
ChannelIndex
channelIndex
);
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
ChannelLabelDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/ChannelLabelDao.java
View file @
9683fdbc
...
@@ -10,7 +10,7 @@ import java.util.List;
...
@@ -10,7 +10,7 @@ import java.util.List;
* @author: sjj
* @author: sjj
* @date: 2022-06-20 16:53
* @date: 2022-06-20 16:53
*/
*/
public
interface
IChannelLabelDao
extends
I
BaseMongoDao
<
ChannelLabel
>{
public
interface
ChannelLabelDao
extends
BaseMongoDao
<
ChannelLabel
>{
List
<
String
>
getChannelLabelType
();
List
<
String
>
getChannelLabelType
();
...
...
src/main/java/com/zhiwei/brandkbs2/dao/ChannelTagDao.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
;
import
com.zhiwei.brandkbs2.pojo.ChannelTag
;
/**
* @ClassName: ChannelTagDao
* @Description ChannelTagDao
* @author: sjj
* @date: 2022-07-13 14:28
*/
public
interface
ChannelTagDao
extends
BaseMongoDao
<
ChannelTag
>{
String
getTagByChannelName
(
String
name
);
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
CustomTagDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/CustomTagDao.java
View file @
9683fdbc
...
@@ -5,12 +5,12 @@ import com.zhiwei.brandkbs2.pojo.CustomTag;
...
@@ -5,12 +5,12 @@ import com.zhiwei.brandkbs2.pojo.CustomTag;
import
java.util.List
;
import
java.util.List
;
/**
/**
* @ClassName:
I
CustomTagDao
* @ClassName: CustomTagDao
* @Description
I
CustomTagDao
* @Description CustomTagDao
* @author: sjj
* @author: sjj
* @date: 2022-07-04 13:43
* @date: 2022-07-04 13:43
*/
*/
public
interface
ICustomTagDao
extends
I
BaseMongoDao
<
CustomTag
>
{
public
interface
CustomTagDao
extends
BaseMongoDao
<
CustomTag
>
{
/**
/**
* 查询所有自定义标签(按创建时间降序)
* 查询所有自定义标签(按创建时间降序)
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
EventDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/EventDao.java
View file @
9683fdbc
...
@@ -3,12 +3,12 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -3,12 +3,12 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.Event
;
/**
/**
* @ClassName:
I
EventDao
* @ClassName: EventDao
* @Description
I
EventDao
* @Description EventDao
* @author: sjj
* @author: sjj
* @date: 2022-05-18 14:35
* @date: 2022-05-18 14:35
*/
*/
public
interface
IEventDao
extends
I
BaseMongoDao
<
Event
>{
public
interface
EventDao
extends
BaseMongoDao
<
Event
>{
/**
/**
* 是否已存在事件
* 是否已存在事件
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
EventDataDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/EventDataDao.java
View file @
9683fdbc
...
@@ -8,12 +8,12 @@ import java.util.Date;
...
@@ -8,12 +8,12 @@ import java.util.Date;
import
java.util.List
;
import
java.util.List
;
/**
/**
* @ClassName:
I
EventDataDao
* @ClassName: EventDataDao
* @Description
I
EventDataDao
* @Description EventDataDao
* @author: sjj
* @author: sjj
* @date: 2022-05-19 16:08
* @date: 2022-05-19 16:08
*/
*/
public
interface
IEventDataDao
extends
IBaseMongoDao
<
EventData
>,
I
ShardingMongo
{
public
interface
EventDataDao
extends
BaseMongoDao
<
EventData
>,
ShardingMongo
{
/**
/**
* 获取首发稿件
* 获取首发稿件
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
HighWordDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/HighWordDao.java
View file @
9683fdbc
...
@@ -3,10 +3,10 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -3,10 +3,10 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.HighWord
;
import
com.zhiwei.brandkbs2.pojo.HighWord
;
/**
/**
* @ClassName:
I
HighWordDao
* @ClassName: HighWordDao
* @Description
I
HighWordDao
* @Description HighWordDao
* @author: sjj
* @author: sjj
* @date: 2022-06-06 09:47
* @date: 2022-06-06 09:47
*/
*/
public
interface
IHighWordDao
extends
I
BaseMongoDao
<
HighWord
>{
public
interface
HighWordDao
extends
BaseMongoDao
<
HighWord
>{
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
ProjectDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/ProjectDao.java
View file @
9683fdbc
...
@@ -5,9 +5,9 @@ import com.zhiwei.brandkbs2.pojo.Project;
...
@@ -5,9 +5,9 @@ import com.zhiwei.brandkbs2.pojo.Project;
/**
/**
* @author sjj
* @author sjj
* @version 1.0
* @version 1.0
* @description
I
ProjectDao
* @description ProjectDao
* @date 2022年4月20日17:38:54
* @date 2022年4月20日17:38:54
*/
*/
public
interface
IProjectDao
extends
I
BaseMongoDao
<
Project
>{
public
interface
ProjectDao
extends
BaseMongoDao
<
Project
>{
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
QbjcPojoDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/QbjcPojoDao.java
View file @
9683fdbc
...
@@ -6,14 +6,14 @@ import com.zhiwei.qbjc.bean.pojo.common.Tag;
...
@@ -6,14 +6,14 @@ import com.zhiwei.qbjc.bean.pojo.common.Tag;
import
java.util.List
;
import
java.util.List
;
/**
/**
*
I
QbjcPojoDao-interface
* QbjcPojoDao-interface
*
*
* @ClassName:
I
QbjcPojoDao
* @ClassName: QbjcPojoDao
* @Description
I
QbjcPojoDao-interface
* @Description QbjcPojoDao-interface
* @author sjj
* @author sjj
* @date 2022年6月16日14:23:36
* @date 2022年6月16日14:23:36
*/
*/
public
interface
I
QbjcPojoDao
{
public
interface
QbjcPojoDao
{
/**
/**
* 获取qbjcPlatform
* 获取qbjcPlatform
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
ReportDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/ReportDao.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
;
package
com
.
zhiwei
.
brandkbs2
.
dao
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.pojo.Report
;
import
com.zhiwei.brandkbs2.pojo.Report
;
import
java.util.List
;
/**
/**
* @ClassName:
I
ReportDao
* @ClassName: ReportDao
* @Description
I
ReportDao
* @Description ReportDao
* @author: sjj
* @author: sjj
* @date: 2022-05-31 18:13
* @date: 2022-05-31 18:13
*/
*/
public
interface
IReportDao
extends
IBaseMongoDao
<
Report
>
{
public
interface
ReportDao
extends
BaseMongoDao
<
Report
>
{
List
<
JSONObject
>
getReportAggCount
(
String
projectId
);
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
ReportSettingsDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/ReportSettingsDao.java
View file @
9683fdbc
...
@@ -2,11 +2,16 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -2,11 +2,16 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
java.util.List
;
/**
/**
* @ClassName:
I
ReportSettingsDao
* @ClassName: ReportSettingsDao
* @Description
I
ReportSettingsDao
* @Description ReportSettingsDao
* @author: sjj
* @author: sjj
* @date: 2022-05-31 18:13
* @date: 2022-05-31 18:13
*/
*/
public
interface
IReportSettingsDao
extends
IBaseMongoDao
<
ReportSettings
>
{
public
interface
ReportSettingsDao
extends
BaseMongoDao
<
ReportSettings
>
{
List
<
ReportSettings
>
getReportSettingByProjectWithUsed
(
String
projectId
);
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
ShardingMongo.java
→
src/main/java/com/zhiwei/brandkbs2/dao/ShardingMongo.java
View file @
9683fdbc
...
@@ -5,12 +5,12 @@ import com.zhiwei.brandkbs2.util.IndexUtil;
...
@@ -5,12 +5,12 @@ import com.zhiwei.brandkbs2.util.IndexUtil;
import
java.util.Date
;
import
java.util.Date
;
/**
/**
* @ClassName:
I
ShardingMongo
* @ClassName: ShardingMongo
* @Description 分库mongo接口
* @Description 分库mongo接口
* @author: sjj
* @author: sjj
* @date: 2022-05-27 11:29
* @date: 2022-05-27 11:29
*/
*/
public
interface
I
ShardingMongo
{
public
interface
ShardingMongo
{
String
collectionPrefix
();
String
collectionPrefix
();
...
...
src/main/java/com/zhiwei/brandkbs2/dao/
I
TagFilterDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/TagFilterDao.java
View file @
9683fdbc
...
@@ -3,10 +3,10 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -3,10 +3,10 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.TagFilter
;
import
com.zhiwei.brandkbs2.pojo.TagFilter
;
/**
/**
* @ClassName:
I
TagFilterDao
* @ClassName: TagFilterDao
* @Description
I
TagFilterDao
* @Description TagFilterDao
* @author: sjj
* @author: sjj
* @date: 2022-06-01 13:52
* @date: 2022-06-01 13:52
*/
*/
public
interface
ITagFilterDao
extends
I
BaseMongoDao
<
TagFilter
>{
public
interface
TagFilterDao
extends
BaseMongoDao
<
TagFilter
>{
}
}
src/main/java/com/zhiwei/brandkbs2/dao/
I
UserDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/UserDao.java
View file @
9683fdbc
...
@@ -3,11 +3,11 @@ package com.zhiwei.brandkbs2.dao;
...
@@ -3,11 +3,11 @@ package com.zhiwei.brandkbs2.dao;
import
com.zhiwei.brandkbs2.pojo.User
;
import
com.zhiwei.brandkbs2.pojo.User
;
/**
/**
* @ClassName:
I
UserDao
* @ClassName: UserDao
* @Description 用户相关接口
* @Description 用户相关接口
* @author: sjj
* @author: sjj
* @date: 2022-04-28 18:10
* @date: 2022-04-28 18:10
*/
*/
public
interface
IUserDao
extends
I
BaseMongoDao
<
User
>{
public
interface
UserDao
extends
BaseMongoDao
<
User
>{
}
}
src/main/java/com/zhiwei/brandkbs2/dao/impl/BaseMongoDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.dao.
I
BaseMongoDao
;
import
com.zhiwei.brandkbs2.dao.BaseMongoDao
;
import
com.zhiwei.brandkbs2.pojo.AbstractBaseMongo
;
import
com.zhiwei.brandkbs2.pojo.AbstractBaseMongo
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.bson.Document
;
import
org.bson.Document
;
...
@@ -24,7 +24,7 @@ import java.util.regex.Pattern;
...
@@ -24,7 +24,7 @@ import java.util.regex.Pattern;
* @author: sjj
* @author: sjj
* @date: 2022-04-29 15:11
* @date: 2022-04-29 15:11
*/
*/
public
class
BaseMongoDaoImpl
<
T
extends
AbstractBaseMongo
>
implements
I
BaseMongoDao
<
T
>
{
public
class
BaseMongoDaoImpl
<
T
extends
AbstractBaseMongo
>
implements
BaseMongoDao
<
T
>
{
protected
static
final
String
ID
=
"_id"
;
protected
static
final
String
ID
=
"_id"
;
private
final
String
collectionName
;
private
final
String
collectionName
;
...
@@ -77,6 +77,11 @@ public class BaseMongoDaoImpl<T extends AbstractBaseMongo> implements IBaseMongo
...
@@ -77,6 +77,11 @@ public class BaseMongoDaoImpl<T extends AbstractBaseMongo> implements IBaseMongo
}
}
@Override
@Override
public
void
deleteOneByIdWithQuery
(
String
id
,
Query
query
,
String
...
collectionNames
)
{
mongoTemplate
.
remove
(
query
.
addCriteria
(
Criteria
.
where
(
ID
).
is
(
id
)),
getCollections
(
collectionNames
)[
0
]);
}
@Override
public
T
findOneById
(
String
id
,
String
...
collectionNames
)
{
public
T
findOneById
(
String
id
,
String
...
collectionNames
)
{
return
mongoTemplate
.
findOne
(
new
Query
(
Criteria
.
where
(
ID
).
is
(
id
)),
clazz
,
getCollections
(
collectionNames
)[
0
]);
return
mongoTemplate
.
findOne
(
new
Query
(
Criteria
.
where
(
ID
).
is
(
id
)),
clazz
,
getCollections
(
collectionNames
)[
0
]);
}
}
...
@@ -119,10 +124,18 @@ public class BaseMongoDaoImpl<T extends AbstractBaseMongo> implements IBaseMongo
...
@@ -119,10 +124,18 @@ public class BaseMongoDaoImpl<T extends AbstractBaseMongo> implements IBaseMongo
@Override
@Override
public
long
count
(
Query
preQuery
,
String
...
collectionNames
)
{
public
long
count
(
Query
preQuery
,
String
...
collectionNames
)
{
return
count
(
preQuery
,
null
,
null
,
collectionNames
);
}
@Override
public
long
count
(
Query
preQuery
,
String
keyword
,
String
[]
matchFields
,
String
...
collectionNames
)
{
Query
query
=
new
Query
();
Query
query
=
new
Query
();
if
(
null
!=
preQuery
)
{
if
(
null
!=
preQuery
)
{
query
=
preQuery
;
query
=
preQuery
;
}
}
if
(
StringUtils
.
isNotEmpty
(
keyword
))
{
addKeywordFuzz
(
query
,
keyword
,
matchFields
);
}
long
count
=
0
;
long
count
=
0
;
for
(
String
collection
:
getCollections
(
collectionNames
))
{
for
(
String
collection
:
getCollections
(
collectionNames
))
{
count
+=
mongoTemplate
.
count
(
query
,
collection
);
count
+=
mongoTemplate
.
count
(
query
,
collection
);
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/BehaviorDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
BehaviorDao
;
import
com.zhiwei.brandkbs2.dao.BehaviorDao
;
import
com.zhiwei.brandkbs2.pojo.Behavior
;
import
com.zhiwei.brandkbs2.pojo.Behavior
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-05-27 13:48
* @date: 2022-05-27 13:48
*/
*/
@Component
(
"behaviorDao"
)
@Component
(
"behaviorDao"
)
public
class
BehaviorDaoImpl
extends
BaseMongoDaoImpl
<
Behavior
>
implements
I
BehaviorDao
{
public
class
BehaviorDaoImpl
extends
BaseMongoDaoImpl
<
Behavior
>
implements
BehaviorDao
{
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_behavior"
;
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_behavior"
;
private
static
final
String
TIME_PATTERN
=
"yyyyMM"
;
private
static
final
String
TIME_PATTERN
=
"yyyyMM"
;
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/BrandkbsTaskDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
BrandkbsTaskDao
;
import
com.zhiwei.brandkbs2.dao.BrandkbsTaskDao
;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.core.query.Query
;
...
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Component;
...
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-07-12 17:27
* @date: 2022-07-12 17:27
*/
*/
@Component
(
"brandkbsTaskDao"
)
@Component
(
"brandkbsTaskDao"
)
public
class
BrandkbsTaskDaoImpl
extends
BaseMongoDaoImpl
<
BrandkbsTask
>
implements
I
BrandkbsTaskDao
{
public
class
BrandkbsTaskDaoImpl
extends
BaseMongoDaoImpl
<
BrandkbsTask
>
implements
BrandkbsTaskDao
{
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_task"
;
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_task"
;
public
BrandkbsTaskDaoImpl
()
{
public
BrandkbsTaskDaoImpl
()
{
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/ChannelDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
ChannelDao
;
import
com.zhiwei.brandkbs2.dao.ChannelDao
;
import
com.zhiwei.brandkbs2.pojo.Channel
;
import
com.zhiwei.brandkbs2.pojo.Channel
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Criteria
;
...
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Component;
...
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-06-16 15:31
* @date: 2022-06-16 15:31
*/
*/
@Component
(
"channelDao"
)
@Component
(
"channelDao"
)
public
class
ChannelDaoImpl
extends
BaseMongoDaoImpl
<
Channel
>
implements
I
ChannelDao
{
public
class
ChannelDaoImpl
extends
BaseMongoDaoImpl
<
Channel
>
implements
ChannelDao
{
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_channel"
;
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_channel"
;
...
@@ -24,11 +24,15 @@ public class ChannelDaoImpl extends BaseMongoDaoImpl<Channel> implements IChanne
...
@@ -24,11 +24,15 @@ public class ChannelDaoImpl extends BaseMongoDaoImpl<Channel> implements IChanne
@Override
@Override
public
Channel
queryUnique
(
ChannelIndex
channelIndex
)
{
public
Channel
queryUnique
(
ChannelIndex
channelIndex
)
{
Query
query
=
Query
.
query
(
Criteria
.
where
(
"linkedGroupId"
).
is
(
channelIndex
.
getLinkedGroupId
()).
if
(
null
==
channelIndex
)
{
and
(
"projectId"
).
is
(
channelIndex
.
getProjectId
()).
return
null
;
and
(
"platform"
).
is
(
channelIndex
.
getPlatform
()).
}
and
(
"realSource"
).
is
(
channelIndex
.
getRealSource
()).
// Query query = Query.query(Criteria.where("linkedGroupId").is(channelIndex.getLinkedGroupId()).
and
(
"source"
).
is
(
channelIndex
.
getSource
()));
// and("projectId").is(channelIndex.getProjectId()).
// and("platform").is(channelIndex.getPlatform()).
// and("realSource").is(channelIndex.getRealSource()).
// and("source").is(channelIndex.getSource()));
Query
query
=
Query
.
query
(
Criteria
.
where
(
"fid"
).
is
(
channelIndex
.
getFid
()));
return
mongoTemplate
.
findOne
(
query
,
clazz
,
COLLECTION_PREFIX
);
return
mongoTemplate
.
findOne
(
query
,
clazz
,
COLLECTION_PREFIX
);
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/ChannelLabelDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.dao.
I
ChannelLabelDao
;
import
com.zhiwei.brandkbs2.dao.ChannelLabelDao
;
import
com.zhiwei.brandkbs2.pojo.ChannelLabel
;
import
com.zhiwei.brandkbs2.pojo.ChannelLabel
;
import
org.springframework.data.mongodb.core.aggregation.Aggregation
;
import
org.springframework.data.mongodb.core.aggregation.Aggregation
;
import
org.springframework.data.mongodb.core.aggregation.AggregationResults
;
import
org.springframework.data.mongodb.core.aggregation.AggregationResults
;
...
@@ -17,7 +17,7 @@ import java.util.stream.Collectors;
...
@@ -17,7 +17,7 @@ import java.util.stream.Collectors;
* @date: 2022-06-20 16:56
* @date: 2022-06-20 16:56
*/
*/
@Component
(
"channelLabelDao"
)
@Component
(
"channelLabelDao"
)
public
class
ChannelLabelDaoImpl
extends
BaseMongoDaoImpl
<
ChannelLabel
>
implements
I
ChannelLabelDao
{
public
class
ChannelLabelDaoImpl
extends
BaseMongoDaoImpl
<
ChannelLabel
>
implements
ChannelLabelDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_channel_label"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_channel_label"
;
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/ChannelTagDaoImpl.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.ChannelTagDao
;
import
com.zhiwei.brandkbs2.pojo.ChannelTag
;
import
org.springframework.stereotype.Component
;
/**
* @ClassName: ChannelTagDaoImpl
* @Description ChannelTagDaoImpl
* @author: sjj
* @date: 2022-07-13 14:29
*/
@Component
(
"channelTagDao"
)
public
class
ChannelTagDaoImpl
extends
BaseMongoDaoImpl
<
ChannelTag
>
implements
ChannelTagDao
{
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_channel_tag"
;
public
ChannelTagDaoImpl
()
{
super
(
COLLECTION_PREFIX
);
}
@Override
public
String
getTagByChannelName
(
String
name
)
{
ChannelTag
channelTag
=
findOne
(
"channel"
,
name
);
if
(
null
==
channelTag
)
{
return
null
;
}
return
channelTag
.
getTag
();
}
}
src/main/java/com/zhiwei/brandkbs2/dao/impl/CustomTagDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
CustomTagDao
;
import
com.zhiwei.brandkbs2.dao.CustomTagDao
;
import
com.zhiwei.brandkbs2.pojo.CustomTag
;
import
com.zhiwei.brandkbs2.pojo.CustomTag
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -14,7 +14,7 @@ import java.util.List;
...
@@ -14,7 +14,7 @@ import java.util.List;
* @date: 2022-07-04 13:46
* @date: 2022-07-04 13:46
*/
*/
@Component
(
"customTagDao"
)
@Component
(
"customTagDao"
)
public
class
CustomTagDaoImpl
extends
BaseMongoDaoImpl
<
CustomTag
>
implements
I
CustomTagDao
{
public
class
CustomTagDaoImpl
extends
BaseMongoDaoImpl
<
CustomTag
>
implements
CustomTagDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_custom_tag"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_custom_tag"
;
public
CustomTagDaoImpl
()
{
public
CustomTagDaoImpl
()
{
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/EventDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
EventDao
;
import
com.zhiwei.brandkbs2.dao.EventDao
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.core.query.Query
;
...
@@ -13,7 +13,7 @@ import org.springframework.stereotype.Component;
...
@@ -13,7 +13,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-05-18 14:45
* @date: 2022-05-18 14:45
*/
*/
@Component
(
"eventDao"
)
@Component
(
"eventDao"
)
public
class
EventDaoImpl
extends
BaseMongoDaoImpl
<
Event
>
implements
I
EventDao
{
public
class
EventDaoImpl
extends
BaseMongoDaoImpl
<
Event
>
implements
EventDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_event"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_event"
;
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/EventDataDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.dao.
I
EventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.EventData
;
import
com.zhiwei.brandkbs2.pojo.EventData
;
...
@@ -12,6 +12,7 @@ import org.springframework.data.mongodb.core.query.Criteria;
...
@@ -12,6 +12,7 @@ import org.springframework.data.mongodb.core.query.Criteria;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.Calendar
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -23,7 +24,7 @@ import java.util.stream.Collectors;
...
@@ -23,7 +24,7 @@ import java.util.stream.Collectors;
* @date: 2022-05-19 17:42
* @date: 2022-05-19 17:42
*/
*/
@Component
(
"eventDataDao"
)
@Component
(
"eventDataDao"
)
public
class
EventDataDaoImpl
extends
BaseMongoDaoImpl
<
EventData
>
implements
I
EventDataDao
{
public
class
EventDataDaoImpl
extends
BaseMongoDaoImpl
<
EventData
>
implements
EventDataDao
{
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_event_data"
;
private
static
final
String
COLLECTION_PREFIX
=
"brandkbs_event_data"
;
private
static
final
String
TIME_PATTERN
=
"yyyy"
;
private
static
final
String
TIME_PATTERN
=
"yyyy"
;
...
@@ -57,7 +58,7 @@ public class EventDataDaoImpl extends BaseMongoDaoImpl<EventData> implements IEv
...
@@ -57,7 +58,7 @@ public class EventDataDaoImpl extends BaseMongoDaoImpl<EventData> implements IEv
Criteria
criteria
=
addChannelIndex
(
channelIndex
);
Criteria
criteria
=
addChannelIndex
(
channelIndex
);
// 分组
// 分组
Aggregation
agg
=
Aggregation
.
newAggregation
(
Aggregation
.
match
(
criteria
),
Aggregation
.
group
(
"eventId"
).
count
().
as
(
"eventCount"
));
Aggregation
agg
=
Aggregation
.
newAggregation
(
Aggregation
.
match
(
criteria
),
Aggregation
.
group
(
"eventId"
).
count
().
as
(
"eventCount"
));
AggregationResults
<
JSONObject
>
aggregate
=
mongoTemplate
.
aggregate
(
agg
,
"brandkbs_event_data_2022"
,
JSONObject
.
class
);
AggregationResults
<
JSONObject
>
aggregate
=
mongoTemplate
.
aggregate
(
agg
,
getAggreeCollection
()
,
JSONObject
.
class
);
List
<
JSONObject
>
mappedResults
=
aggregate
.
getMappedResults
();
List
<
JSONObject
>
mappedResults
=
aggregate
.
getMappedResults
();
return
mappedResults
.
stream
().
map
(
json
->
json
.
getString
(
"_id"
)).
collect
(
Collectors
.
toList
());
return
mappedResults
.
stream
().
map
(
json
->
json
.
getString
(
"_id"
)).
collect
(
Collectors
.
toList
());
}
}
...
@@ -90,4 +91,10 @@ public class EventDataDaoImpl extends BaseMongoDaoImpl<EventData> implements IEv
...
@@ -90,4 +91,10 @@ public class EventDataDaoImpl extends BaseMongoDaoImpl<EventData> implements IEv
return
mongoTemplate
.
count
(
query
,
EventData
.
class
,
collectionName
);
return
mongoTemplate
.
count
(
query
,
EventData
.
class
,
collectionName
);
}
}
private
String
getAggreeCollection
()
{
Calendar
date
=
Calendar
.
getInstance
();
int
year
=
date
.
get
(
Calendar
.
YEAR
);
return
COLLECTION_PREFIX
+
"_"
+
year
;
}
}
}
src/main/java/com/zhiwei/brandkbs2/dao/impl/HighWordDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
HighWordDao
;
import
com.zhiwei.brandkbs2.dao.HighWordDao
;
import
com.zhiwei.brandkbs2.pojo.HighWord
;
import
com.zhiwei.brandkbs2.pojo.HighWord
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-06-06 09:48
* @date: 2022-06-06 09:48
*/
*/
@Component
(
"highWordDao"
)
@Component
(
"highWordDao"
)
public
class
HighWordDaoImpl
extends
BaseMongoDaoImpl
<
HighWord
>
implements
I
HighWordDao
{
public
class
HighWordDaoImpl
extends
BaseMongoDaoImpl
<
HighWord
>
implements
HighWordDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_high_word"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_high_word"
;
public
HighWordDaoImpl
()
{
public
HighWordDaoImpl
()
{
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/ProjectDaoImlp.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
ProjectDao
;
import
com.zhiwei.brandkbs2.dao.ProjectDao
;
import
com.zhiwei.brandkbs2.pojo.Project
;
import
com.zhiwei.brandkbs2.pojo.Project
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-04-21 13:51
* @date: 2022-04-21 13:51
*/
*/
@Component
(
"projectDao"
)
@Component
(
"projectDao"
)
public
class
ProjectDaoImlp
extends
BaseMongoDaoImpl
<
Project
>
implements
I
ProjectDao
{
public
class
ProjectDaoImlp
extends
BaseMongoDaoImpl
<
Project
>
implements
ProjectDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_project"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_project"
;
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/QbjcPojoDao.java
→
src/main/java/com/zhiwei/brandkbs2/dao/impl/QbjcPojoDao
Impl
.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
QbjcPojoDao
;
import
com.zhiwei.brandkbs2.dao.QbjcPojoDao
;
import
com.zhiwei.qbjc.bean.pojo.common.MessagePlatform
;
import
com.zhiwei.qbjc.bean.pojo.common.MessagePlatform
;
import
com.zhiwei.qbjc.bean.pojo.common.Tag
;
import
com.zhiwei.qbjc.bean.pojo.common.Tag
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
...
@@ -17,7 +17,7 @@ import java.util.List;
...
@@ -17,7 +17,7 @@ import java.util.List;
* @date: 2022-06-16 14:24
* @date: 2022-06-16 14:24
*/
*/
@Component
(
"qbjcPojoDao"
)
@Component
(
"qbjcPojoDao"
)
public
class
QbjcPojoDao
implements
I
QbjcPojoDao
{
public
class
QbjcPojoDao
Impl
implements
QbjcPojoDao
{
@Resource
(
name
=
"secondaryMongoTemplate"
)
@Resource
(
name
=
"secondaryMongoTemplate"
)
protected
MongoTemplate
mongoTemplate
;
protected
MongoTemplate
mongoTemplate
;
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/ReportDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.IReportDao
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.dao.ReportDao
;
import
com.zhiwei.brandkbs2.pojo.Report
;
import
com.zhiwei.brandkbs2.pojo.Report
;
import
org.springframework.data.mongodb.core.aggregation.Aggregation
;
import
org.springframework.data.mongodb.core.aggregation.AggregationResults
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
/**
/**
* @ClassName: ReportDaoImpl
* @ClassName: ReportDaoImpl
* @Description ReportDaoImpl
* @Description ReportDaoImpl
...
@@ -11,10 +17,23 @@ import org.springframework.stereotype.Component;
...
@@ -11,10 +17,23 @@ import org.springframework.stereotype.Component;
* @date: 2022-05-31 18:14
* @date: 2022-05-31 18:14
*/
*/
@Component
(
"reportDao"
)
@Component
(
"reportDao"
)
public
class
ReportDaoImpl
extends
BaseMongoDaoImpl
<
Report
>
implements
I
ReportDao
{
public
class
ReportDaoImpl
extends
BaseMongoDaoImpl
<
Report
>
implements
ReportDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_report"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_report"
;
public
ReportDaoImpl
()
{
public
ReportDaoImpl
()
{
super
(
COLLECTION_NAME
);
super
(
COLLECTION_NAME
);
}
}
@Override
public
List
<
JSONObject
>
getReportAggCount
(
String
projectId
)
{
// 添加渠道唯一标识
Criteria
criteria
=
Criteria
.
where
(
"projectId"
).
is
(
projectId
).
and
(
"status"
).
is
(
true
);
// 分组
Aggregation
aggregation
=
Aggregation
.
newAggregation
(
Aggregation
.
match
(
criteria
),
//
Aggregation
.
project
(
"publishTime"
,
"type"
).
andExpression
(
"add(new java.util.Date(0l),publishTime)"
).
substring
(
0
,
4
).
as
(
"year"
),
Aggregation
.
group
(
"type"
,
"year"
).
count
().
as
(
"count"
));
AggregationResults
<
JSONObject
>
aggregate
=
mongoTemplate
.
aggregate
(
aggregation
,
COLLECTION_NAME
,
JSONObject
.
class
);
return
aggregate
.
getMappedResults
();
}
}
}
src/main/java/com/zhiwei/brandkbs2/dao/impl/ReportSettingsDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
ReportSettingsDao
;
import
com.zhiwei.brandkbs2.dao.ReportSettingsDao
;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
/**
/**
* @ClassName: ReportSettingsDaoImpl
* @ClassName: ReportSettingsDaoImpl
* @Description ReportSettingsDaoImpl
* @Description ReportSettingsDaoImpl
...
@@ -11,10 +15,17 @@ import org.springframework.stereotype.Component;
...
@@ -11,10 +15,17 @@ import org.springframework.stereotype.Component;
* @date: 2022-05-31 18:14
* @date: 2022-05-31 18:14
*/
*/
@Component
(
"reportSettingsDao"
)
@Component
(
"reportSettingsDao"
)
public
class
ReportSettingsDaoImpl
extends
BaseMongoDaoImpl
<
ReportSettings
>
implements
I
ReportSettingsDao
{
public
class
ReportSettingsDaoImpl
extends
BaseMongoDaoImpl
<
ReportSettings
>
implements
ReportSettingsDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_report_settings"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_report_settings"
;
public
ReportSettingsDaoImpl
()
{
public
ReportSettingsDaoImpl
()
{
super
(
COLLECTION_NAME
);
super
(
COLLECTION_NAME
);
}
}
@Override
public
List
<
ReportSettings
>
getReportSettingByProjectWithUsed
(
String
projectId
)
{
Query
query
=
Query
.
query
(
Criteria
.
where
(
"projectId"
).
is
(
projectId
).
and
(
"used"
).
is
(
true
));
return
findList
(
query
);
}
}
}
src/main/java/com/zhiwei/brandkbs2/dao/impl/TagFilterDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
TagFilterDao
;
import
com.zhiwei.brandkbs2.dao.TagFilterDao
;
import
com.zhiwei.brandkbs2.pojo.TagFilter
;
import
com.zhiwei.brandkbs2.pojo.TagFilter
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-06-01 14:26
* @date: 2022-06-01 14:26
*/
*/
@Component
(
"tagFilterDao"
)
@Component
(
"tagFilterDao"
)
public
class
TagFilterDaoImpl
extends
BaseMongoDaoImpl
<
TagFilter
>
implements
I
TagFilterDao
{
public
class
TagFilterDaoImpl
extends
BaseMongoDaoImpl
<
TagFilter
>
implements
TagFilterDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_tag_filter"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_tag_filter"
;
public
TagFilterDaoImpl
()
{
public
TagFilterDaoImpl
()
{
...
...
src/main/java/com/zhiwei/brandkbs2/dao/impl/UserDaoImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
dao
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
UserDao
;
import
com.zhiwei.brandkbs2.dao.UserDao
;
import
com.zhiwei.brandkbs2.pojo.User
;
import
com.zhiwei.brandkbs2.pojo.User
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Component;
* @date: 2022-04-28 18:10
* @date: 2022-04-28 18:10
*/
*/
@Component
(
"userDao"
)
@Component
(
"userDao"
)
public
class
UserDaoImpl
extends
BaseMongoDaoImpl
<
User
>
implements
I
UserDao
{
public
class
UserDaoImpl
extends
BaseMongoDaoImpl
<
User
>
implements
UserDao
{
private
static
final
String
COLLECTION_NAME
=
"brandkbs_user"
;
private
static
final
String
COLLECTION_NAME
=
"brandkbs_user"
;
...
...
src/main/java/com/zhiwei/brandkbs2/easyexcel/listener/EventDataListener.java
View file @
9683fdbc
...
@@ -2,8 +2,8 @@ package com.zhiwei.brandkbs2.easyexcel.listener;
...
@@ -2,8 +2,8 @@ package com.zhiwei.brandkbs2.easyexcel.listener;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.zhiwei.brandkbs2.dao.
I
EventDao
;
import
com.zhiwei.brandkbs2.dao.EventDao
;
import
com.zhiwei.brandkbs2.dao.
I
EventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.easyexcel.dto.UploadEventDataDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.UploadEventDataDTO
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.EventData
;
import
com.zhiwei.brandkbs2.pojo.EventData
;
...
@@ -20,15 +20,15 @@ import org.springframework.data.redis.core.StringRedisTemplate;
...
@@ -20,15 +20,15 @@ import org.springframework.data.redis.core.StringRedisTemplate;
public
class
EventDataListener
extends
AnalysisEventListener
<
UploadEventDataDTO
>
{
public
class
EventDataListener
extends
AnalysisEventListener
<
UploadEventDataDTO
>
{
private
final
I
EventDao
eventDao
;
private
final
EventDao
eventDao
;
private
final
I
EventDataDao
eventDataDao
;
private
final
EventDataDao
eventDataDao
;
private
final
StringRedisTemplate
stringRedisTemplate
;
private
final
StringRedisTemplate
stringRedisTemplate
;
private
final
String
linkedGroupId
;
private
final
String
linkedGroupId
;
private
final
String
redisKey
;
private
final
String
redisKey
;
public
EventDataListener
(
IEventDao
eventDao
,
I
EventDataDao
eventDataDao
,
StringRedisTemplate
stringRedisTemplate
,
String
linkedGroupId
,
public
EventDataListener
(
EventDao
eventDao
,
EventDataDao
eventDataDao
,
StringRedisTemplate
stringRedisTemplate
,
String
linkedGroupId
,
String
redisKey
)
{
String
redisKey
)
{
this
.
eventDao
=
eventDao
;
this
.
eventDao
=
eventDao
;
this
.
eventDataDao
=
eventDataDao
;
this
.
eventDataDao
=
eventDataDao
;
...
...
src/main/java/com/zhiwei/brandkbs2/enmus/ChannelEmotion.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
enmus
;
import
lombok.Getter
;
/**
* @ClassName: ChannelEmotion
* @Description 渠道倾向枚举类
* @author: sjj
* @date: 2022-07-14 17:56
*/
public
enum
ChannelEmotion
{
/**
* 正面的
*/
POSITIVE
(
1
,
"友好渠道"
),
/**
* 中性的
*/
NEUTRAL
(
2
,
"不友好渠道"
),
/**
* 负面的
*/
NEGATIVE
(
3
,
"中性渠道"
);
@Getter
private
final
int
state
;
@Getter
private
final
String
name
;
ChannelEmotion
(
int
state
,
String
name
)
{
this
.
state
=
state
;
this
.
name
=
name
;
}
public
static
ChannelEmotion
getFromState
(
int
state
)
{
for
(
ChannelEmotion
value
:
ChannelEmotion
.
values
())
{
if
(
value
.
state
==
state
)
{
return
value
;
}
}
throw
new
IllegalArgumentException
(
"不识别的类型:"
+
state
);
}
}
src/main/java/com/zhiwei/brandkbs2/enmus/ImportantChannelEnum.java
View file @
9683fdbc
...
@@ -41,7 +41,7 @@ public enum ImportantChannelEnum {
...
@@ -41,7 +41,7 @@ public enum ImportantChannelEnum {
QITA
(
"其他"
);
QITA
(
"其他"
);
private
String
state
;
private
final
String
state
;
ImportantChannelEnum
(
String
state
)
{
ImportantChannelEnum
(
String
state
)
{
this
.
state
=
state
;
this
.
state
=
state
;
...
...
src/main/java/com/zhiwei/brandkbs2/enmus/ReportTypeEnum.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
enmus
;
import
lombok.Getter
;
import
java.util.Arrays
;
import
java.util.Calendar
;
import
java.util.List
;
/**
* @author lxj
* @version 1.0
* @description 平台枚举类
* @date 2019/9/2 10:51
*/
public
enum
ReportTypeEnum
{
/**
* 月报
*/
MONTH
(
"月报"
,
"每月一号"
,
"月"
),
/**
* 周报
*/
WEEK
(
"周报"
,
"每周一"
,
"周"
),
/**
* 自定义简报
*/
CUSTOM
(
"自定义"
,
"自定义"
,
"周期"
);
@Getter
private
final
String
state
;
@Getter
private
final
String
publishTime
;
@Getter
private
final
String
describe
;
// 发布最小间隔1天
public
static
final
Long
PUSH_LIMIT
=
24
*
60
*
60
*
1000L
;
public
static
final
List
<
String
>
SORT_LIST
=
Arrays
.
asList
(
ReportTypeEnum
.
MONTH
.
getState
(),
ReportTypeEnum
.
WEEK
.
getState
(),
ReportTypeEnum
.
CUSTOM
.
getState
());
ReportTypeEnum
(
String
state
,
String
publishTime
,
String
describe
)
{
this
.
state
=
state
;
this
.
publishTime
=
publishTime
;
this
.
describe
=
describe
;
}
public
static
boolean
canPublishNowByState
(
String
state
)
{
return
canPublishNow
(
getInstanceByState
(
state
));
}
public
static
ReportTypeEnum
getInstanceByState
(
String
state
)
{
for
(
ReportTypeEnum
value
:
ReportTypeEnum
.
values
())
{
if
(
value
.
getState
().
equals
(
state
))
{
return
value
;
}
}
throw
new
IllegalArgumentException
(
"不识别的类型:"
+
state
);
}
public
static
boolean
canPublishNow
(
ReportTypeEnum
type
)
{
Calendar
cal
=
Calendar
.
getInstance
();
switch
(
type
)
{
case
WEEK:
return
cal
.
get
(
Calendar
.
DAY_OF_WEEK
)
==
Calendar
.
MONDAY
;
case
MONTH:
return
cal
.
get
(
Calendar
.
DAY_OF_MONTH
)
==
1
;
}
// 自定义简报
return
true
;
}
}
src/main/java/com/zhiwei/brandkbs2/es/EsClientDao.java
View file @
9683fdbc
...
@@ -171,7 +171,7 @@ public class EsClientDao {
...
@@ -171,7 +171,7 @@ public class EsClientDao {
private
List
<
Map
<
String
,
Object
>>
searchScroll
(
QueryBuilder
queryBuilder
,
int
size
,
String
[]
fetchSource
)
throws
IOException
{
private
List
<
Map
<
String
,
Object
>>
searchScroll
(
QueryBuilder
queryBuilder
,
int
size
,
String
[]
fetchSource
)
throws
IOException
{
SearchSourceBuilder
sourceBuilder
=
new
SearchSourceBuilder
();
SearchSourceBuilder
sourceBuilder
=
new
SearchSourceBuilder
();
sourceBuilder
.
query
(
queryBuilder
).
size
(
size
).
fetchSource
(
fetchSource
,
null
);
sourceBuilder
.
query
(
queryBuilder
).
size
(
size
).
fetchSource
(
fetchSource
,
null
);
return
searchScroll
(
sourceBuilder
);
return
retryTemplate
.
execute
(
context
->
searchScroll
(
sourceBuilder
)
);
}
}
private
Map
<
ChannelIndex
,
ChannelIndex
.
ChannelRecord
>
searchChannelRecord
(
long
startTime
,
long
endTime
)
{
private
Map
<
ChannelIndex
,
ChannelIndex
.
ChannelRecord
>
searchChannelRecord
(
long
startTime
,
long
endTime
)
{
...
@@ -180,7 +180,7 @@ public class EsClientDao {
...
@@ -180,7 +180,7 @@ public class EsClientDao {
QueryBuilder
queryBuilder
=
QueryBuilders
.
rangeQuery
(
"mtime"
).
gte
(
startTime
).
lt
(
endTime
);
QueryBuilder
queryBuilder
=
QueryBuilders
.
rangeQuery
(
"mtime"
).
gte
(
startTime
).
lt
(
endTime
);
List
<
Map
<
String
,
Object
>>
results
=
searchScroll
(
queryBuilder
,
10000
,
CHANNEL_RECORD_FETCH_SOURCE
);
List
<
Map
<
String
,
Object
>>
results
=
searchScroll
(
queryBuilder
,
10000
,
CHANNEL_RECORD_FETCH_SOURCE
);
for
(
Map
<
String
,
Object
>
result
:
results
)
{
for
(
Map
<
String
,
Object
>
result
:
results
)
{
for
(
ChannelIndex
channelIndex
:
ChannelIndex
.
get
ChannelIndexes
(
result
))
{
for
(
ChannelIndex
channelIndex
:
ChannelIndex
.
create
ChannelIndexes
(
result
))
{
res
.
compute
(
channelIndex
,
(
k
,
v
)
->
{
res
.
compute
(
channelIndex
,
(
k
,
v
)
->
{
if
(
null
==
v
)
{
if
(
null
==
v
)
{
v
=
new
ChannelIndex
.
ChannelRecord
();
v
=
new
ChannelIndex
.
ChannelRecord
();
...
@@ -189,8 +189,8 @@ public class EsClientDao {
...
@@ -189,8 +189,8 @@ public class EsClientDao {
return
v
.
mergeRecord
(
new
ChannelIndex
.
ChannelRecord
((
long
)
result
.
get
(
GenericAttribute
.
ES_TIME
),
String
.
valueOf
(
result
.
get
(
"id"
))));
return
v
.
mergeRecord
(
new
ChannelIndex
.
ChannelRecord
((
long
)
result
.
get
(
GenericAttribute
.
ES_TIME
),
String
.
valueOf
(
result
.
get
(
"id"
))));
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"searchChannelRecord-error-id:{}"
,
result
.
get
(
"id"
),
e
);
log
.
error
(
"searchChannelRecord-error-id:{}"
,
result
.
get
(
"id"
),
e
);
return
null
;
}
}
return
v
;
});
});
}
}
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/pojo/Channel.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
pojo
;
package
com
.
zhiwei
.
brandkbs2
.
pojo
;
import
com.zhiwei.brandkbs2.enmus.ChannelEmotion
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
...
@@ -50,7 +51,7 @@ public class Channel extends ChannelIndex {
...
@@ -50,7 +51,7 @@ public class Channel extends ChannelIndex {
/**
/**
* 渠道倾向
* 渠道倾向
*/
*/
private
String
emotion
=
"未定义"
;
private
int
emotion
;
/**
/**
* 渠道指数
* 渠道指数
...
@@ -100,6 +101,17 @@ public class Channel extends ChannelIndex {
...
@@ -100,6 +101,17 @@ public class Channel extends ChannelIndex {
channel
.
setSource
(
channelIndex
.
getSource
());
channel
.
setSource
(
channelIndex
.
getSource
());
channel
.
setLastTime
(
channelRecord
.
getLastTime
());
channel
.
setLastTime
(
channelRecord
.
getLastTime
());
channel
.
setArticleIds
(
channelRecord
.
getArticleIds
());
channel
.
setArticleIds
(
channelRecord
.
getArticleIds
());
// fid 用来便捷搜索
channel
.
setFid
(
channelIndex
.
getFid
());
// TODO 调性随机分配
double
random
=
Math
.
random
();
if
(
random
<
0.3
)
{
channel
.
setEmotion
(
ChannelEmotion
.
POSITIVE
.
getState
());
}
else
if
(
random
<
0.6
)
{
channel
.
setEmotion
(
ChannelEmotion
.
NEGATIVE
.
getState
());
}
else
{
channel
.
setEmotion
(
ChannelEmotion
.
NEUTRAL
.
getState
());
}
return
channel
;
return
channel
;
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/pojo/ChannelIndex.java
View file @
9683fdbc
...
@@ -2,6 +2,8 @@ package com.zhiwei.brandkbs2.pojo;
...
@@ -2,6 +2,8 @@ package com.zhiwei.brandkbs2.pojo;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.brandkbs2.common.GlobalPojo
;
import
com.zhiwei.brandkbs2.common.GlobalPojo
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
com.zhiwei.qbjc.bean.pojo.common.MessagePlatform
;
import
com.zhiwei.qbjc.bean.tools.BeanTools
;
import
com.zhiwei.qbjc.bean.tools.BeanTools
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
lombok.Getter
;
...
@@ -44,18 +46,44 @@ public class ChannelIndex extends AbstractBaseMongo {
...
@@ -44,18 +46,44 @@ public class ChannelIndex extends AbstractBaseMongo {
*/
*/
private
String
source
;
private
String
source
;
public
static
List
<
ChannelIndex
>
getChannelIndexes
(
Map
<
String
,
Object
>
sourceAsMap
)
{
private
String
fid
;
public
ChannelIndex
(
String
projectId
,
String
linkedGroupId
,
String
platform
,
String
realSource
,
String
source
)
{
this
.
projectId
=
projectId
;
this
.
linkedGroupId
=
linkedGroupId
;
this
.
platform
=
platform
;
this
.
realSource
=
realSource
;
this
.
source
=
source
;
this
.
fid
=
Tools
.
concat
(
projectId
,
linkedGroupId
,
platform
,
realSource
,
source
);
}
public
static
ChannelIndex
createChannelIndex
(
Map
<
String
,
Object
>
sourceAsMap
,
String
projectId
,
String
linkedGroupId
)
{
String
realSource
=
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_REAL_SOURCE
));
String
source
=
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_SOURCE
));
Integer
c5
=
Integer
.
parseInt
(
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_C5
)));
Integer
foreign
=
Integer
.
parseInt
(
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_FOREIGN
)));
MessagePlatform
messagePlatform
=
BeanTools
.
filterPlatform
(
GlobalPojo
.
PLATFORMS
,
c5
,
foreign
);
if
(
null
==
messagePlatform
)
{
return
null
;
}
return
new
ChannelIndex
(
projectId
,
linkedGroupId
,
messagePlatform
.
getName
(),
realSource
,
source
);
}
public
static
List
<
ChannelIndex
>
createChannelIndexes
(
Map
<
String
,
Object
>
sourceAsMap
)
{
List
<
ChannelIndex
>
res
=
new
ArrayList
<>();
List
<
ChannelIndex
>
res
=
new
ArrayList
<>();
String
realSource
=
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_REAL_SOURCE
));
String
realSource
=
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_REAL_SOURCE
));
String
source
=
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_SOURCE
));
String
source
=
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_SOURCE
));
Integer
c5
=
Integer
.
parseInt
(
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_C5
)));
Integer
c5
=
Integer
.
parseInt
(
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_C5
)));
Integer
foreign
=
Integer
.
parseInt
(
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_FOREIGN
)));
Integer
foreign
=
Integer
.
parseInt
(
String
.
valueOf
(
sourceAsMap
.
get
(
GenericAttribute
.
ES_FOREIGN
)));
MessagePlatform
messagePlatform
=
BeanTools
.
filterPlatform
(
GlobalPojo
.
PLATFORMS
,
c5
,
foreign
);
if
(
null
==
messagePlatform
)
{
return
res
;
}
List
<
Map
<
String
,
Object
>>
cacheMaps
=
(
List
<
Map
<
String
,
Object
>>)
sourceAsMap
.
get
(
GenericAttribute
.
ES_BRANDKBS_CACHE_MAPS
);
List
<
Map
<
String
,
Object
>>
cacheMaps
=
(
List
<
Map
<
String
,
Object
>>)
sourceAsMap
.
get
(
GenericAttribute
.
ES_BRANDKBS_CACHE_MAPS
);
for
(
Map
<
String
,
Object
>
cacheMap
:
cacheMaps
)
{
for
(
Map
<
String
,
Object
>
cacheMap
:
cacheMaps
)
{
String
projectId
=
String
.
valueOf
(
cacheMap
.
get
(
GenericAttribute
.
PROJECT_ID
));
String
projectId
=
String
.
valueOf
(
cacheMap
.
get
(
GenericAttribute
.
PROJECT_ID
));
String
linkedGroupId
=
String
.
valueOf
(
cacheMap
.
get
(
GenericAttribute
.
LINKED_GROUP_ID
));
String
linkedGroupId
=
String
.
valueOf
(
cacheMap
.
get
(
GenericAttribute
.
LINKED_GROUP_ID
));
String
platform
=
BeanTools
.
filterPlatform
(
GlobalPojo
.
PLATFORMS
,
c5
,
foreign
).
getName
();
res
.
add
(
new
ChannelIndex
(
projectId
,
linkedGroupId
,
messagePlatform
.
getName
(),
realSource
,
source
));
res
.
add
(
new
ChannelIndex
(
projectId
,
linkedGroupId
,
platform
,
realSource
,
source
));
}
}
return
res
;
return
res
;
}
}
...
@@ -76,7 +104,7 @@ public class ChannelIndex extends AbstractBaseMongo {
...
@@ -76,7 +104,7 @@ public class ChannelIndex extends AbstractBaseMongo {
}
}
private
void
setLastTime
(
Long
lastTime
)
{
private
void
setLastTime
(
Long
lastTime
)
{
if
(
null
==
this
.
lastTime
||
this
.
lastTime
<
lastTime
)
{
if
(
null
==
this
.
lastTime
||
this
.
lastTime
<
lastTime
)
{
this
.
lastTime
=
lastTime
;
this
.
lastTime
=
lastTime
;
}
}
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/pojo/ChannelTag.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
pojo
;
import
lombok.Getter
;
import
lombok.Setter
;
/**
* @ClassName: ChannelTag
* @Description 渠道标签
* @author: sjj
* @date: 2022-07-13 14:27
*/
@Setter
@Getter
public
class
ChannelTag
extends
AbstractBaseMongo
{
private
String
channel
;
private
String
tag
;
}
src/main/java/com/zhiwei/brandkbs2/pojo/MarkFlowEntity.java
View file @
9683fdbc
...
@@ -2,10 +2,10 @@ package com.zhiwei.brandkbs2.pojo;
...
@@ -2,10 +2,10 @@ package com.zhiwei.brandkbs2.pojo;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.base.category.ClassB
;
import
com.zhiwei.base.category.ClassB
;
import
com.zhiwei.base.entity.subclass.
CompleteText
;
import
com.zhiwei.base.entity.subclass.
mark.CompleteTextMark
;
import
com.zhiwei.base.entity.subclass.
IncompleteText
;
import
com.zhiwei.base.entity.subclass.
mark.IncompleteTextMark
;
import
com.zhiwei.base.entity.subclass.
QAText
;
import
com.zhiwei.base.entity.subclass.
mark.QATextMark
;
import
com.zhiwei.base.entity.subclass.
Video
;
import
com.zhiwei.base.entity.subclass.
mark.VideoMark
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.brandkbs2.util.FlowEntityUtil
;
import
com.zhiwei.brandkbs2.util.FlowEntityUtil
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
com.zhiwei.brandkbs2.util.Tools
;
...
@@ -17,7 +17,6 @@ import org.elasticsearch.search.SearchHit;
...
@@ -17,7 +17,6 @@ import org.elasticsearch.search.SearchHit;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
/**
/**
* @ClassName: MarkFlowEntity
* @ClassName: MarkFlowEntity
...
@@ -46,13 +45,14 @@ public class MarkFlowEntity {
...
@@ -46,13 +45,14 @@ public class MarkFlowEntity {
*/
*/
private
Object
data
;
private
Object
data
;
public
static
MarkFlowEntity
get
Instance
(
List
<
JSONObject
>
tJon
s
)
{
public
static
MarkFlowEntity
get
FoldInstance
(
List
<
MarkFlowEntity
>
entitie
s
)
{
// 首条数据为主
// 首条数据为主
MarkFlowEntity
entity
=
new
MarkFlowEntity
(
tJons
.
get
(
0
)
);
MarkFlowEntity
entity
=
entities
.
get
(
0
);
if
(
tJon
s
.
size
()
>
1
)
{
if
(
entitie
s
.
size
()
>
1
)
{
entity
.
getType
().
put
(
"fold"
,
true
);
entity
.
getType
().
put
(
"fold"
,
true
);
entity
.
getType
().
put
(
"size"
,
tJons
.
size
());
entity
.
getType
().
put
(
"size"
,
entities
.
size
());
entity
.
setData
(
tJons
.
stream
().
map
(
json
->
new
MarkFlowEntity
(
json
).
getData
()).
collect
(
Collectors
.
toList
()));
// info内容
entity
.
getInfo
().
put
(
"foldInfo"
,
entities
);
}
}
return
entity
;
return
entity
;
}
}
...
@@ -84,19 +84,17 @@ public class MarkFlowEntity {
...
@@ -84,19 +84,17 @@ public class MarkFlowEntity {
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_title"
)))
{
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_title"
)))
{
tJson
.
put
(
"ind_title"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_title"
),
"[\"\"]"
)));
tJson
.
put
(
"ind_title"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_title"
),
"[\"\"]"
)));
}
}
CompleteText
completeText
=
CompleteText
.
restoreFromEs
(
tJson
);
CompleteText
Mark
completeText
=
CompleteTextMark
.
restoreFromEs
(
tJson
);
this
.
type
=
FlowEntityUtil
.
getCompleteTextType
(
completeText
);
this
.
type
=
FlowEntityUtil
.
getCompleteTextType
(
completeText
);
this
.
data
=
completeText
;
this
.
data
=
completeText
;
this
.
info
=
createInfoWithEmotion
(
tJson
);
break
;
break
;
case
INCOMPLETE:
case
INCOMPLETE:
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_full_text"
)))
{
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_full_text"
)))
{
tJson
.
put
(
"ind_full_text"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_full_text"
),
"[\"\",\"\"]"
)));
tJson
.
put
(
"ind_full_text"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_full_text"
),
"[\"\",\"\"]"
)));
}
}
IncompleteText
incompleteText
=
IncompleteText
.
restoreFromEs
(
tJson
);
IncompleteText
Mark
incompleteText
=
IncompleteTextMark
.
restoreFromEs
(
tJson
);
this
.
type
=
FlowEntityUtil
.
getIncompleteTextType
(
incompleteText
);
this
.
type
=
FlowEntityUtil
.
getIncompleteTextType
(
incompleteText
);
this
.
data
=
incompleteText
;
this
.
data
=
incompleteText
;
this
.
info
=
createInfoWithEmotion
(
tJson
);
break
;
break
;
case
QA:
case
QA:
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_full_text"
)))
{
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_full_text"
)))
{
...
@@ -108,10 +106,9 @@ public class MarkFlowEntity {
...
@@ -108,10 +106,9 @@ public class MarkFlowEntity {
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_content"
)))
{
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_content"
)))
{
tJson
.
put
(
"ind_content"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_content"
),
"[\"\"]"
)));
tJson
.
put
(
"ind_content"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_content"
),
"[\"\"]"
)));
}
}
QAText
qaText
=
QAText
.
restoreFromEs
(
tJson
);
QAText
Mark
qaText
=
QATextMark
.
restoreFromEs
(
tJson
);
this
.
type
=
FlowEntityUtil
.
getQaTextType
(
qaText
);
this
.
type
=
FlowEntityUtil
.
getQaTextType
(
qaText
);
this
.
data
=
qaText
;
this
.
data
=
qaText
;
this
.
info
=
createInfoWithEmotion
(
tJson
);
break
;
break
;
case
VIDEO:
case
VIDEO:
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_full_text"
)))
{
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_full_text"
)))
{
...
@@ -120,26 +117,13 @@ public class MarkFlowEntity {
...
@@ -120,26 +117,13 @@ public class MarkFlowEntity {
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_title"
)))
{
if
(!
Tools
.
isEmpty
(
tJson
.
get
(
"ind_title"
)))
{
tJson
.
put
(
"ind_title"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_title"
),
"[\"\"]"
)));
tJson
.
put
(
"ind_title"
,
Tools
.
filterStrHtmlTag
(
ObjectUtils
.
defaultIfNull
(
tJson
.
getString
(
"ind_title"
),
"[\"\"]"
)));
}
}
Video
video
=
Video
.
restoreFromEs
(
tJson
);
Video
Mark
video
=
VideoMark
.
restoreFromEs
(
tJson
);
this
.
type
=
FlowEntityUtil
.
getVideoType
(
video
);
this
.
type
=
FlowEntityUtil
.
getVideoType
(
video
);
this
.
data
=
video
;
this
.
data
=
video
;
this
.
info
=
createInfoWithEmotion
(
tJson
);
break
;
break
;
default
:
default
:
break
;
break
;
}
}
}
}
private
JSONObject
createInfoWithEmotion
(
JSONObject
tJson
)
{
JSONObject
info
=
new
JSONObject
();
String
emotion
=
Tools
.
getEmotion
(
tJson
);
if
(
null
==
emotion
)
{
info
.
put
(
"hasTag"
,
false
);
return
info
;
}
info
.
put
(
"hasTag"
,
true
);
info
.
put
(
"showEmotion"
,
emotion
);
return
info
;
}
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/Report.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
pojo
;
package
com
.
zhiwei
.
brandkbs2
.
pojo
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.config.Constant
;
import
com.zhiwei.brandkbs2.enmus.ReportTypeEnum
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportDTO
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
import
org.apache.commons.lang3.time.DateUtils
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -15,7 +22,7 @@ import java.util.List;
...
@@ -15,7 +22,7 @@ import java.util.List;
@Setter
@Setter
@Getter
@Getter
@Document
(
"brandkbs_report"
)
@Document
(
"brandkbs_report"
)
public
class
Report
extends
AbstractBaseMongo
{
public
class
Report
extends
AbstractBaseMongo
{
/**
/**
* 简报标题
* 简报标题
...
@@ -38,24 +45,65 @@ public class Report extends AbstractBaseMongo{
...
@@ -38,24 +45,65 @@ public class Report extends AbstractBaseMongo{
*/
*/
private
String
type
;
private
String
type
;
/**
/**
* 是否是最新的
*/
private
boolean
latest
;
/**
* 项目ID
* 项目ID
*/
*/
private
String
projectId
;
private
String
projectId
;
/**
/**
* 查看用户ID:0为全项目都可查看
*/
private
String
userId
;
/**
* 竞品信息字符串
* 竞品信息字符串
*/
*/
@Deprecated
@Deprecated
private
List
<
String
>
contends
;
private
List
<
String
>
contends
;
/**
/**
*
发布
状态
*
生成
状态
*/
*/
private
boolean
release
;
private
boolean
status
;
public
static
Report
createFromReportDTO
(
ReportDTO
reportDTO
)
{
Report
report
=
new
Report
();
report
.
setTitle
(
reportDTO
.
getTitle
());
report
.
setStartTime
(
reportDTO
.
getStartTime
());
report
.
setEndTime
(
reportDTO
.
getEndTime
());
report
.
setPublishTime
(
reportDTO
.
getPublishTime
());
report
.
setType
(
ReportTypeEnum
.
CUSTOM
.
getState
());
report
.
setProjectId
(
UserThreadLocal
.
getProjectId
());
report
.
setContends
(
reportDTO
.
getContends
());
return
report
;
}
public
static
Report
createFromReportSettings
(
ReportSettings
reportSettings
,
AbstractProject
project
)
{
Report
report
=
new
Report
();
Date
now
=
new
Date
();
report
.
setPublishTime
(
now
.
getTime
());
// 枚举简报类型
ReportTypeEnum
reportType
=
ReportTypeEnum
.
getInstanceByState
(
reportSettings
.
getType
());
// 根据简报类型不同设置
report
.
setType
(
reportType
.
getState
());
switch
(
reportType
)
{
// 周报月报标题按天级别
case
WEEK:
report
.
setTitle
(
project
.
getBrandName
()
+
Constant
.
DAY_FORMAT
.
format
(
now
)
+
reportSettings
.
getType
());
now
=
Tools
.
truncDate
(
new
Date
(),
Constant
.
DAY_PATTERN
);
report
.
setStartTime
(
DateUtils
.
addDays
(
now
,
-
7
).
getTime
());
report
.
setEndTime
(
now
.
getTime
());
break
;
case
MONTH:
report
.
setTitle
(
project
.
getBrandName
()
+
Constant
.
DAY_FORMAT
.
format
(
now
)
+
reportSettings
.
getType
());
now
=
Tools
.
truncDate
(
new
Date
(),
Constant
.
DAY_PATTERN
);
report
.
setStartTime
(
DateUtils
.
addMonths
(
now
,
1
).
getTime
());
report
.
setEndTime
(
now
.
getTime
());
break
;
case
CUSTOM:
// 自定义简报标题按小时级别
report
.
setTitle
(
project
.
getBrandName
()
+
Constant
.
HOUR_FORMAT
.
format
(
now
)
+
reportSettings
.
getType
());
report
.
setStartTime
(
reportSettings
.
getStartTime
());
report
.
setEndTime
(
reportSettings
.
getEndTime
());
break
;
default
:
throw
new
IllegalArgumentException
(
"不识别的类型:"
+
reportSettings
.
getType
());
}
report
.
setProjectId
(
reportSettings
.
getProjectId
());
report
.
setContends
(
reportSettings
.
getContendIds
());
return
report
;
}
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/ReportSettings.java
View file @
9683fdbc
...
@@ -23,6 +23,17 @@ public class ReportSettings extends AbstractBaseMongo {
...
@@ -23,6 +23,17 @@ public class ReportSettings extends AbstractBaseMongo {
* 报告类型
* 报告类型
*/
*/
private
String
type
;
private
String
type
;
/**
* 数据起始时间
*/
private
Long
startTime
;
/**
* 数据截止时间
*/
private
Long
endTime
;
/**
/**
* 简报后缀标题
* 简报后缀标题
*/
*/
...
...
src/main/java/com/zhiwei/brandkbs2/pojo/dto/MarkSearchDTO.java
View file @
9683fdbc
...
@@ -99,9 +99,9 @@ public class MarkSearchDTO {
...
@@ -99,9 +99,9 @@ public class MarkSearchDTO {
private
JSONObject
sorter
;
private
JSONObject
sorter
;
/**
/**
* 是否
聚合
* 是否
去重
*/
*/
@ApiModelProperty
(
value
=
"是否
聚合
"
)
@ApiModelProperty
(
value
=
"是否
去重
"
)
private
boolean
aggregation
;
private
boolean
duplicate
;
}
}
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ReportDTO.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.ToString
;
import
java.util.List
;
/**
* @author sjj
* @version 1.0
* @description 自定义简报传输类
* @date 2022年7月15日16:16:39
*/
@Data
@ToString
@ApiModel
(
"自定义简报传输类"
)
public
class
ReportDTO
{
/**
* 简报标题
*/
@ApiModelProperty
(
"简报标题"
)
private
String
title
;
/**
* 开始时间
*/
@ApiModelProperty
(
"开始时间"
)
private
Long
startTime
;
/**
* 结束时间
*/
@ApiModelProperty
(
"结束时间"
)
private
Long
endTime
;
/**
* 发布时间
*/
@ApiModelProperty
(
"发布时间"
)
private
Long
publishTime
;
/**
* 竞品信息
*/
@ApiModelProperty
(
"竞品信息"
)
private
List
<
String
>
contends
;
/**
* 是否是仅个人查看
*/
@ApiModelProperty
(
"是否是仅个人查看"
)
private
boolean
personal
;
}
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ReportSearchDTO.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.ToString
;
/**
* @author sjj
* @version 1.0
* @description 简报搜索传输类
* @date 2022年7月15日15:55:49
*/
@Data
@ToString
@ApiModel
(
"简报搜索传输类"
)
public
class
ReportSearchDTO
{
/**
* 页码
*/
@ApiModelProperty
(
"页码"
)
private
int
page
=
1
;
/**
* 大小
*/
@ApiModelProperty
(
"页码大小"
)
private
int
pageSize
=
10
;
/**
* 开始时间
*/
@ApiModelProperty
(
"开始时间"
)
private
Long
startTime
;
/**
* 结束时间
*/
@ApiModelProperty
(
"结束时间"
)
private
Long
endTime
;
/**
* 搜索关键字
*/
@ApiModelProperty
(
value
=
"搜索关键字"
)
private
String
keyword
;
/**
* 报告类型
*/
@ApiModelProperty
(
value
=
"报告类型"
)
private
String
type
;
/**
* 排序字段
*/
@ApiModelProperty
(
value
=
"排序字段"
)
private
String
sorter
=
"{\"publishTime\":\"descend\"}"
;
}
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ReportSettingsDTO.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
dto
;
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
dto
;
import
com.zhiwei.brandkbs2.enmus.ReportTypeEnum
;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
...
@@ -63,9 +64,9 @@ public class ReportSettingsDTO {
...
@@ -63,9 +64,9 @@ public class ReportSettingsDTO {
public
static
ReportSettingsDTO
createFromReportSettings
(
ReportSettings
reportSettings
)
{
public
static
ReportSettingsDTO
createFromReportSettings
(
ReportSettings
reportSettings
)
{
ReportSettingsDTO
reportSettingsDTO
=
Tools
.
convertMap
(
reportSettings
,
ReportSettingsDTO
.
class
);
ReportSettingsDTO
reportSettingsDTO
=
Tools
.
convertMap
(
reportSettings
,
ReportSettingsDTO
.
class
);
String
publishTime
=
"每周一"
;
String
publishTime
=
ReportTypeEnum
.
WEEK
.
getPublishTime
()
;
if
(
"月报"
.
equals
(
reportSettingsDTO
.
getType
()))
{
if
(
ReportTypeEnum
.
MONTH
.
name
().
equals
(
reportSettingsDTO
.
getType
()))
{
publishTime
=
"每月1号"
;
publishTime
=
ReportTypeEnum
.
MONTH
.
getPublishTime
()
;
}
}
reportSettingsDTO
.
setPublishTime
(
publishTime
);
reportSettingsDTO
.
setPublishTime
(
publishTime
);
return
reportSettingsDTO
;
return
reportSettingsDTO
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/ChannelService.java
View file @
9683fdbc
...
@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONObject;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelArticleDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelArticleDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelEventDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelEventDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportChannelDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportChannelDTO
;
import
com.zhiwei.brandkbs2.pojo.Channel
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.pojo.dto.ChannelDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.ChannelDTO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/MarkDataService.java
View file @
9683fdbc
...
@@ -22,6 +22,13 @@ public interface MarkDataService {
...
@@ -22,6 +22,13 @@ public interface MarkDataService {
PageVO
<
MarkFlowEntity
>
getYuqingMarkList
(
MarkSearchDTO
markSearchDTO
);
PageVO
<
MarkFlowEntity
>
getYuqingMarkList
(
MarkSearchDTO
markSearchDTO
);
/**
/**
* 生成聚合列表并返回id
*
* @return 聚合id
*/
String
generateYuqingMarkAggreeList
(
MarkSearchDTO
markSearchDTO
);
/**
* 舆情标注数据搜索条件
* 舆情标注数据搜索条件
*/
*/
JSONObject
getYuqingMarkCriteria
(
String
linkedGroup
);
JSONObject
getYuqingMarkCriteria
(
String
linkedGroup
);
...
...
src/main/java/com/zhiwei/brandkbs2/service/MarkFlowService.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.pojo.MarkFlowEntity
;
/**
* @ClassName: MarkFlowService
* @Description 标注消息流服务抽象类
* @author: sjj
* @date: 2022-07-13 14:00
*/
public
interface
MarkFlowService
{
/**
* 创建标注消息流实体
*
* @param json
* @param projectId
* @param linkedGroupId
* @return
*/
JSONObject
createMarkFlowInfo
(
JSONObject
json
,
String
projectId
,
String
linkedGroupId
);
/**
* 快照页信息组装
*
* @param markFlowEntity 消息实体
*/
String
setShotPage
(
String
markFlowEntity
);
/**
* 获取标注消息实体
*
* @param id 缓存id
* @return markFlowEntity
*/
MarkFlowEntity
getShotPageFromCache
(
String
id
);
}
src/main/java/com/zhiwei/brandkbs2/service/ProjectService.java
View file @
9683fdbc
...
@@ -2,6 +2,7 @@ package com.zhiwei.brandkbs2.service;
...
@@ -2,6 +2,7 @@ package com.zhiwei.brandkbs2.service;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.pojo.AbstractProject
;
import
com.zhiwei.brandkbs2.pojo.AbstractProject
;
import
com.zhiwei.brandkbs2.pojo.Project
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
import
com.zhiwei.brandkbs2.pojo.vo.ProjectVO
;
import
com.zhiwei.brandkbs2.pojo.vo.ProjectVO
;
...
@@ -97,4 +98,10 @@ public interface ProjectService {
...
@@ -97,4 +98,10 @@ public interface ProjectService {
*/
*/
AbstractProject
getProjectByLinkedGroupId
(
String
linkedGroupId
);
AbstractProject
getProjectByLinkedGroupId
(
String
linkedGroupId
);
/**
* 获取所有启动状态下的Project
* @return
*/
List
<
Project
>
getAllProjectsWithStart
();
}
}
src/main/java/com/zhiwei/brandkbs2/service/ReportService.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
;
package
com
.
zhiwei
.
brandkbs2
.
service
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.pojo.AbstractProject
;
import
com.zhiwei.brandkbs2.pojo.Report
;
import
com.zhiwei.brandkbs2.pojo.ReportSettings
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportSearchDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportSettingsDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.ReportSettingsDTO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
import
org.apache.commons.lang3.tuple.Pair
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
/**
/**
...
@@ -18,7 +26,9 @@ public interface ReportService {
...
@@ -18,7 +26,9 @@ public interface ReportService {
*
*
* @return 项目报告配置信息
* @return 项目报告配置信息
*/
*/
Map
<
String
,
ReportSettingsDTO
>
getReportSettings
();
Map
<
String
,
ReportSettingsDTO
>
getReportSettings
();
List
<
Report
>
getCustomReportByStatus
(
String
projectId
,
boolean
status
);
/**
/**
* 保存报告配置
* 保存报告配置
...
@@ -28,9 +38,77 @@ public interface ReportService {
...
@@ -28,9 +38,77 @@ public interface ReportService {
void
upsertReportSettings
(
ReportSettingsDTO
reportSettingsDTO
);
void
upsertReportSettings
(
ReportSettingsDTO
reportSettingsDTO
);
/**
/**
* 开闭简报设置使用
*
* @param id
* @param used
*/
@Deprecated
void
switchReportSettingsUsed
(
String
id
,
boolean
used
);
/**
* 开闭简报生成状态
*
* @param id
* @param status
*/
void
switchReportStatus
(
String
id
,
boolean
status
);
/**
* 获取简报分类统计
* 获取简报分类统计
*
*
* @return 获取简报分类统计
* @return 获取简报分类统计
*/
*/
JSONObject
getReportsAggCount
();
JSONObject
getReportsAggCount
();
/**
* 生成简报信息并返回
*
* @param reportSettings
* @param project
* @return 新否新简报&&简报
*/
Pair
<
Boolean
,
Report
>
generateReportBySettings
(
ReportSettings
reportSettings
,
AbstractProject
project
);
/**
* 获取PC端报告信息
*
* @param id 报告ID
* @param cache 是否优先读取缓存
* @return 获取PC端报告信息
*/
JSONObject
getPcReportAnalyze
(
String
id
,
boolean
cache
);
/**
* 获取PC端报告信息
*
* @param report 报告
* @param cache 是否优先读取缓存
* @return 获取PC端报告信息
*/
JSONObject
getPcReportAnalyze
(
Report
report
,
boolean
cache
);
/**
* 分页查询报告列表
*
* @param reportSearch 报告搜索对象
* @return 分页查询报告列表
*/
PageVO
<
JSONObject
>
findReportList
(
ReportSearchDTO
reportSearch
);
/**
* 添加自定义简报
*
* @param reportDTO
*/
void
addCustomReport
(
ReportDTO
reportDTO
);
/**
* 删除简报
*
* @param id
*/
void
deleteReportById
(
String
id
);
}
}
src/main/java/com/zhiwei/brandkbs2/service/TaskService.java
View file @
9683fdbc
...
@@ -9,13 +9,13 @@ package com.zhiwei.brandkbs2.service;
...
@@ -9,13 +9,13 @@ package com.zhiwei.brandkbs2.service;
public
interface
TaskService
{
public
interface
TaskService
{
/**
/**
*
渠道
记录
*
消息进量
记录
*/
*/
void
messageFlowCount
(
int
day
);
void
messageFlowCount
(
int
day
);
/**
/**
*
简报
推送
*
生成简报任务并
推送
*/
*/
void
report
Send
();
void
generateReportAnd
Send
();
}
}
src/main/java/com/zhiwei/brandkbs2/service/impl/BehaviorServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.dao.
I
BehaviorDao
;
import
com.zhiwei.brandkbs2.dao.BehaviorDao
;
import
com.zhiwei.brandkbs2.dao.
I
UserDao
;
import
com.zhiwei.brandkbs2.dao.UserDao
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportBehaviorDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportBehaviorDTO
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.listener.ApplicationProjectListener
;
import
com.zhiwei.brandkbs2.listener.ApplicationProjectListener
;
...
@@ -43,10 +43,10 @@ public class BehaviorServiceImpl implements BehaviorService {
...
@@ -43,10 +43,10 @@ public class BehaviorServiceImpl implements BehaviorService {
public
static
final
Logger
log
=
LogManager
.
getLogger
(
BehaviorServiceImpl
.
class
);
public
static
final
Logger
log
=
LogManager
.
getLogger
(
BehaviorServiceImpl
.
class
);
@Resource
(
name
=
"behaviorDao"
)
@Resource
(
name
=
"behaviorDao"
)
private
I
BehaviorDao
behaviorDao
;
private
BehaviorDao
behaviorDao
;
@Resource
(
name
=
"userDao"
)
@Resource
(
name
=
"userDao"
)
private
I
UserDao
userDao
;
private
UserDao
userDao
;
@Resource
(
name
=
"mongoUtil"
)
@Resource
(
name
=
"mongoUtil"
)
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/BrandkbsTaskServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.config.Constant
;
import
com.zhiwei.brandkbs2.config.Constant
;
import
com.zhiwei.brandkbs2.dao.
I
BrandkbsTaskDao
;
import
com.zhiwei.brandkbs2.dao.BrandkbsTaskDao
;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
import
com.zhiwei.brandkbs2.service.BrandkbsTaskService
;
import
com.zhiwei.brandkbs2.service.BrandkbsTaskService
;
import
org.springframework.data.mongodb.core.query.Update
;
import
org.springframework.data.mongodb.core.query.Update
;
...
@@ -20,7 +20,7 @@ import java.util.Objects;
...
@@ -20,7 +20,7 @@ import java.util.Objects;
public
class
BrandkbsTaskServiceImpl
implements
BrandkbsTaskService
{
public
class
BrandkbsTaskServiceImpl
implements
BrandkbsTaskService
{
@Resource
(
name
=
"brandkbsTaskDao"
)
@Resource
(
name
=
"brandkbsTaskDao"
)
private
I
BrandkbsTaskDao
brandkbsTaskDao
;
private
BrandkbsTaskDao
brandkbsTaskDao
;
/**
/**
* 根据任务名称获取任务
* 根据任务名称获取任务
...
@@ -59,6 +59,9 @@ public class BrandkbsTaskServiceImpl implements BrandkbsTaskService {
...
@@ -59,6 +59,9 @@ public class BrandkbsTaskServiceImpl implements BrandkbsTaskService {
*/
*/
@Override
@Override
public
void
resetTask
(
BrandkbsTask
task
,
Long
nextTime
)
{
public
void
resetTask
(
BrandkbsTask
task
,
Long
nextTime
)
{
if
(
null
==
task
)
{
return
;
}
Update
set
=
Update
.
update
(
"version"
,
Constant
.
INIT_VERSION
).
set
(
"executableTime"
,
nextTime
);
Update
set
=
Update
.
update
(
"version"
,
Constant
.
INIT_VERSION
).
set
(
"executableTime"
,
nextTime
);
brandkbsTaskDao
.
updateOneByIdWithField
(
task
.
getId
(),
set
);
brandkbsTaskDao
.
updateOneByIdWithField
(
task
.
getId
(),
set
);
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/ChannelServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.dao.
I
ChannelDao
;
import
com.zhiwei.brandkbs2.dao.ChannelDao
;
import
com.zhiwei.brandkbs2.dao.
I
ChannelLabelDao
;
import
com.zhiwei.brandkbs2.dao.ChannelLabelDao
;
import
com.zhiwei.brandkbs2.dao.
I
EventDao
;
import
com.zhiwei.brandkbs2.dao.EventDao
;
import
com.zhiwei.brandkbs2.dao.
I
EventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelArticleDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelArticleDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelEventDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportAdminChannelEventDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportChannelDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportChannelDTO
;
...
@@ -41,16 +41,16 @@ import java.util.stream.Collectors;
...
@@ -41,16 +41,16 @@ import java.util.stream.Collectors;
public
class
ChannelServiceImpl
implements
ChannelService
{
public
class
ChannelServiceImpl
implements
ChannelService
{
@Resource
(
name
=
"eventDataDao"
)
@Resource
(
name
=
"eventDataDao"
)
I
EventDataDao
eventDataDao
;
EventDataDao
eventDataDao
;
@Resource
(
name
=
"channelDao"
)
@Resource
(
name
=
"channelDao"
)
I
ChannelDao
channelDao
;
ChannelDao
channelDao
;
@Resource
(
name
=
"eventDao"
)
@Resource
(
name
=
"eventDao"
)
I
EventDao
eventDao
;
EventDao
eventDao
;
@Resource
(
name
=
"channelLabelDao"
)
@Resource
(
name
=
"channelLabelDao"
)
I
ChannelLabelDao
channelLabelDao
;
ChannelLabelDao
channelLabelDao
;
@Resource
(
name
=
"esClientDao"
)
@Resource
(
name
=
"esClientDao"
)
EsClientDao
esClientDao
;
EsClientDao
esClientDao
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/CustomTagServiceImpl.java
View file @
9683fdbc
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.dao.
I
CustomTagDao
;
import
com.zhiwei.brandkbs2.dao.CustomTagDao
;
import
com.zhiwei.brandkbs2.enmus.response.CustomTagCodeEnum
;
import
com.zhiwei.brandkbs2.enmus.response.CustomTagCodeEnum
;
import
com.zhiwei.brandkbs2.es.EsClientDao
;
import
com.zhiwei.brandkbs2.es.EsClientDao
;
import
com.zhiwei.brandkbs2.exception.ExceptionCast
;
import
com.zhiwei.brandkbs2.exception.ExceptionCast
;
...
@@ -33,7 +33,7 @@ import java.util.stream.Collectors;
...
@@ -33,7 +33,7 @@ import java.util.stream.Collectors;
public
class
CustomTagServiceImpl
implements
CustomTagService
{
public
class
CustomTagServiceImpl
implements
CustomTagService
{
@Resource
(
name
=
"customTagDao"
)
@Resource
(
name
=
"customTagDao"
)
private
I
CustomTagDao
customTagDao
;
private
CustomTagDao
customTagDao
;
@Resource
(
name
=
"esClient"
)
@Resource
(
name
=
"esClient"
)
private
RestHighLevelClient
esClient
;
private
RestHighLevelClient
esClient
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/EventDataServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
EventDao
;
import
com.zhiwei.brandkbs2.dao.EventDao
;
import
com.zhiwei.brandkbs2.dao.
I
EventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.es.EsClientDao
;
import
com.zhiwei.brandkbs2.es.EsClientDao
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.Event
;
import
com.zhiwei.brandkbs2.pojo.EventData
;
import
com.zhiwei.brandkbs2.pojo.EventData
;
...
@@ -29,10 +29,10 @@ public class EventDataServiceImpl implements EventDataService {
...
@@ -29,10 +29,10 @@ public class EventDataServiceImpl implements EventDataService {
public
static
final
Logger
log
=
LogManager
.
getLogger
(
EventDataServiceImpl
.
class
);
public
static
final
Logger
log
=
LogManager
.
getLogger
(
EventDataServiceImpl
.
class
);
@Resource
(
name
=
"eventDao"
)
@Resource
(
name
=
"eventDao"
)
private
I
EventDao
eventDao
;
private
EventDao
eventDao
;
@Resource
(
name
=
"eventDataDao"
)
@Resource
(
name
=
"eventDataDao"
)
private
I
EventDataDao
eventDataDao
;
private
EventDataDao
eventDataDao
;
@Resource
(
name
=
"esClientDao"
)
@Resource
(
name
=
"esClientDao"
)
private
EsClientDao
esClientDao
;
private
EsClientDao
esClientDao
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/EventServiceImpl.java
View file @
9683fdbc
...
@@ -5,8 +5,8 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -5,8 +5,8 @@ import com.alibaba.fastjson.JSONObject;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Lists
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.common.RedisKeyPrefix
;
import
com.zhiwei.brandkbs2.common.RedisKeyPrefix
;
import
com.zhiwei.brandkbs2.dao.
I
EventDao
;
import
com.zhiwei.brandkbs2.dao.EventDao
;
import
com.zhiwei.brandkbs2.dao.
I
EventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.easyexcel.EasyExcelUtil
;
import
com.zhiwei.brandkbs2.easyexcel.EasyExcelUtil
;
import
com.zhiwei.brandkbs2.easyexcel.config.ReadExcelDTO
;
import
com.zhiwei.brandkbs2.easyexcel.config.ReadExcelDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportEventDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportEventDTO
;
...
@@ -75,10 +75,10 @@ public class EventServiceImpl implements EventService {
...
@@ -75,10 +75,10 @@ public class EventServiceImpl implements EventService {
private
String
brandkbsFileUrl
;
private
String
brandkbsFileUrl
;
@Resource
(
name
=
"eventDao"
)
@Resource
(
name
=
"eventDao"
)
private
I
EventDao
eventDao
;
private
EventDao
eventDao
;
@Resource
(
name
=
"eventDataDao"
)
@Resource
(
name
=
"eventDataDao"
)
private
I
EventDataDao
eventDataDao
;
private
EventDataDao
eventDataDao
;
@Resource
(
name
=
"eventDataServiceImpl"
)
@Resource
(
name
=
"eventDataServiceImpl"
)
private
EventDataService
eventDataService
;
private
EventDataService
eventDataService
;
...
@@ -225,7 +225,7 @@ public class EventServiceImpl implements EventService {
...
@@ -225,7 +225,7 @@ public class EventServiceImpl implements EventService {
@Override
@Override
public
JSONObject
uploadEventDatas
(
String
linkedGroupId
,
MultipartFile
file
)
{
public
JSONObject
uploadEventDatas
(
String
linkedGroupId
,
MultipartFile
file
)
{
String
uuid
=
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
);
String
uuid
=
Tools
.
getUUID
(
);
String
redisKey
=
RedisKeyPrefix
.
eventDataProgressKey
(
uuid
);
String
redisKey
=
RedisKeyPrefix
.
eventDataProgressKey
(
uuid
);
stringRedisTemplate
.
opsForValue
().
set
(
redisKey
,
"0"
);
stringRedisTemplate
.
opsForValue
().
set
(
redisKey
,
"0"
);
ApplicationProjectListener
.
getThreadPool
().
execute
(()
->
{
ApplicationProjectListener
.
getThreadPool
().
execute
(()
->
{
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/HighWordServiceImpl.java
View file @
9683fdbc
...
@@ -2,7 +2,7 @@ package com.zhiwei.brandkbs2.service.impl;
...
@@ -2,7 +2,7 @@ package com.zhiwei.brandkbs2.service.impl;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.dao.
I
HighWordDao
;
import
com.zhiwei.brandkbs2.dao.HighWordDao
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportHighWordDTO
;
import
com.zhiwei.brandkbs2.easyexcel.dto.ExportHighWordDTO
;
import
com.zhiwei.brandkbs2.pojo.HighWord
;
import
com.zhiwei.brandkbs2.pojo.HighWord
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
...
@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
...
@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
public
class
HighWordServiceImpl
implements
HighWordService
{
public
class
HighWordServiceImpl
implements
HighWordService
{
@Resource
(
name
=
"highWordDao"
)
@Resource
(
name
=
"highWordDao"
)
I
HighWordDao
highWordDao
;
HighWordDao
highWordDao
;
@Resource
(
name
=
"mongoUtil"
)
@Resource
(
name
=
"mongoUtil"
)
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/MarkDataServiceImpl.java
View file @
9683fdbc
This diff is collapsed.
Click to expand it.
src/main/java/com/zhiwei/brandkbs2/service/impl/MarkFlowServiceImpl.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.base.category.ClassD
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.brandkbs2.config.Constant
;
import
com.zhiwei.brandkbs2.dao.ChannelTagDao
;
import
com.zhiwei.brandkbs2.dao.ChannelDao
;
import
com.zhiwei.brandkbs2.exception.ExceptionCast
;
import
com.zhiwei.brandkbs2.model.CommonCodeEnum
;
import
com.zhiwei.brandkbs2.pojo.Channel
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.pojo.MarkFlowEntity
;
import
com.zhiwei.brandkbs2.service.MarkFlowService
;
import
com.zhiwei.brandkbs2.util.RedisUtil
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
/**
* @ClassName: MarkFlowServiceImpl
* @Description 标注消息流服务实现类
* @author: sjj
* @date: 2022-07-13 14:00
*/
@Service
(
"markFlowServiceImpl"
)
public
class
MarkFlowServiceImpl
implements
MarkFlowService
{
@Resource
(
name
=
"channelTagDao"
)
ChannelTagDao
channelTagDao
;
@Resource
(
name
=
"channelDao"
)
ChannelDao
channelDao
;
@Resource
(
name
=
"redisUtil"
)
RedisUtil
redisUtil
;
@Override
public
JSONObject
createMarkFlowInfo
(
JSONObject
json
,
String
projectId
,
String
linkedGroupId
)
{
JSONObject
resultInfo
=
createInfoWithEmotion
(
json
);
resultInfo
.
put
(
"sourceDetails"
,
getSourceDetails
(
json
,
projectId
,
linkedGroupId
));
return
resultInfo
;
}
@Override
public
String
setShotPage
(
String
markFlowEntity
)
{
MarkFlowEntity
data
=
JSON
.
parseObject
(
markFlowEntity
,
MarkFlowEntity
.
class
);
String
id
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
data
.
getData
())).
getString
(
"id"
);
String
key
=
RedisUtil
.
getShotPageKey
(
id
,
UserThreadLocal
.
getProjectId
());
redisUtil
.
setExpire
(
key
,
markFlowEntity
);
return
id
;
}
@Override
public
MarkFlowEntity
getShotPageFromCache
(
String
id
)
{
String
key
=
RedisUtil
.
getShotPageKey
(
id
,
UserThreadLocal
.
getProjectId
());
String
data
=
redisUtil
.
get
(
key
);
if
(
null
==
data
)
{
ExceptionCast
.
cast
(
CommonCodeEnum
.
FAIL
.
message
(
"缓存不存在或已过期"
));
}
return
JSON
.
parseObject
(
data
,
MarkFlowEntity
.
class
);
// JSONObject dataJson = JSON.parseObject(data);
// FilterInfo filterInfo = null;
// JSONObject filterInfoJson = dataJson.getJSONObject("filterInfo");
// if (Objects.nonNull(filterInfoJson) && filterInfoJson.containsKey("selectType")
// && filterInfoJson.containsKey("filterMap")) {
// SelectType selectType = SelectType.valueOf(filterInfoJson.getString("selectType"));
// JSONObject filterMap = filterInfoJson.getJSONObject("filterMap");
// // 2020/5/27 15:17 论坛回答部分特殊去重解析
// if (SelectType.SPEC_FORUM_CONTENT_MARK == selectType) {
// filterInfo = FilterInfo.getInstanceWithNoTime(selectType,
// requireNonNull(filterMap.getString("url"), "url 为空"),
// requireNonNull(filterMap.getString("text"), "text 为空"),
// requireNonNull(filterMap.getString("spareText"), "spareText 为空"),
// requireNonNull(filterMap.getString("source"), "source 为空"), filterMap.getString("mgroup"));
// } else {
// filterInfo = new FilterInfo(selectType, requireNonNull(filterMap.getString("unique"), "unique 为空"),
// requireNonNull(filterMap.getString("url"), "url 为空"),
// requireNonNull(filterMap.getLong("time"), "time 为空"),
// requireNonNull(filterMap.getString("text"), "text 为空"),
// requireNonNull(filterMap.getString("source"), "source 为空"), filterMap.getString("mgroup"));
// }
// }
}
private
JSONObject
createInfoWithEmotion
(
JSONObject
json
)
{
JSONObject
info
=
new
JSONObject
();
String
emotion
=
Tools
.
getEmotion
(
json
);
// tag
if
(
null
==
emotion
)
{
info
.
put
(
"hasTag"
,
false
);
}
else
{
info
.
put
(
"hasTag"
,
true
);
// 敏感算作负面
info
.
put
(
"showEmotion"
,
Constant
.
EMOTION_SENSITIVE
.
equals
(
emotion
)
?
Constant
.
EMOTION_NEGATIVE
:
emotion
);
}
return
info
;
}
private
JSONObject
getSourceDetails
(
JSONObject
tJson
,
String
projectId
,
String
linkedGroupId
)
{
JSONObject
sourceDetails
=
new
JSONObject
();
String
source
=
tJson
.
getString
(
GenericAttribute
.
ES_SOURCE
);
// 是否原创
if
(
tJson
.
containsKey
(
GenericAttribute
.
ES_ROOT_SOURCE
)
&&
isOrigin
(
source
,
tJson
.
getString
(
GenericAttribute
.
ES_ROOT_SOURCE
)))
{
sourceDetails
.
put
(
"rootPublish"
,
"原创"
);
}
// C4,realSource提取展示
sourceDetails
.
put
(
"clientFrom"
,
getClientFrom
(
tJson
.
getIntValue
(
GenericAttribute
.
ES_C4
),
tJson
.
getString
(
GenericAttribute
.
ES_REAL_SOURCE
)));
// source
sourceDetails
.
put
(
"source"
,
source
);
// 粉丝量提取
Long
followersNum
=
tJson
.
getLongValue
(
GenericAttribute
.
ES_FOLLOWERS_NUM
);
sourceDetails
.
put
(
"followersNum"
,
followersNum
);
// 渠道标签
sourceDetails
.
put
(
"channelTag"
,
channelTagDao
.
getTagByChannelName
(
source
));
// 渠道倾向及id
Channel
channel
=
channelDao
.
queryUnique
(
ChannelIndex
.
createChannelIndex
(
tJson
,
projectId
,
linkedGroupId
));
if
(
null
!=
channel
)
{
sourceDetails
.
put
(
"channelId"
,
channel
.
getId
());
sourceDetails
.
put
(
"channelEmotion"
,
channel
.
getEmotion
());
}
else
{
sourceDetails
.
put
(
"channelId"
,
null
);
sourceDetails
.
put
(
"channelEmotion"
,
null
);
}
return
sourceDetails
;
}
/**
* 按c4、origin获取ClientFrom
*
* @param c4
* @param realSource
* @return String
*/
public
String
getClientFrom
(
int
c4
,
String
realSource
)
{
if
(
Tools
.
isEmpty
(
realSource
))
{
return
ClassD
.
TypeD
.
fromEncode
(
c4
).
title
();
}
else
{
return
realSource
;
}
}
/**
* 网媒来源是否原创
*
* @param source
* @param rootSource
* @return boolean
*/
public
boolean
isOrigin
(
String
source
,
String
rootSource
)
{
// 条件一 泛用
return
rootSource
.
contains
(
source
)
||
source
.
contains
(
rootSource
);
}
}
src/main/java/com/zhiwei/brandkbs2/service/impl/ProjectServiceImpl.java
View file @
9683fdbc
...
@@ -2,8 +2,8 @@ package com.zhiwei.brandkbs2.service.impl;
...
@@ -2,8 +2,8 @@ package com.zhiwei.brandkbs2.service.impl;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.dao.
I
ProjectDao
;
import
com.zhiwei.brandkbs2.dao.ProjectDao
;
import
com.zhiwei.brandkbs2.dao.
I
UserDao
;
import
com.zhiwei.brandkbs2.dao.UserDao
;
import
com.zhiwei.brandkbs2.enmus.response.ProjectCodeEnum
;
import
com.zhiwei.brandkbs2.enmus.response.ProjectCodeEnum
;
import
com.zhiwei.brandkbs2.exception.ExceptionCast
;
import
com.zhiwei.brandkbs2.exception.ExceptionCast
;
import
com.zhiwei.brandkbs2.model.CommonCodeEnum
;
import
com.zhiwei.brandkbs2.model.CommonCodeEnum
;
...
@@ -17,6 +17,7 @@ import com.zhiwei.brandkbs2.service.ProjectService;
...
@@ -17,6 +17,7 @@ import com.zhiwei.brandkbs2.service.ProjectService;
import
com.zhiwei.brandkbs2.util.MongoUtil
;
import
com.zhiwei.brandkbs2.util.MongoUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.core.query.Update
;
import
org.springframework.data.mongodb.core.query.Update
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -35,10 +36,10 @@ import java.util.stream.Collectors;
...
@@ -35,10 +36,10 @@ import java.util.stream.Collectors;
public
class
ProjectServiceImpl
implements
ProjectService
{
public
class
ProjectServiceImpl
implements
ProjectService
{
@Resource
(
name
=
"userDao"
)
@Resource
(
name
=
"userDao"
)
private
I
UserDao
userDao
;
private
UserDao
userDao
;
@Resource
(
name
=
"projectDao"
)
@Resource
(
name
=
"projectDao"
)
private
I
ProjectDao
projectDao
;
private
ProjectDao
projectDao
;
@Resource
(
name
=
"mongoUtil"
)
@Resource
(
name
=
"mongoUtil"
)
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
...
@@ -218,6 +219,11 @@ public class ProjectServiceImpl implements ProjectService {
...
@@ -218,6 +219,11 @@ public class ProjectServiceImpl implements ProjectService {
return
null
;
return
null
;
}
}
@Override
public
List
<
Project
>
getAllProjectsWithStart
()
{
return
projectDao
.
findList
(
Query
.
query
(
Criteria
.
where
(
"isStart"
).
is
(
true
)));
}
// public JSONObject getUserInfoAndProjectConfig(User user) {
// public JSONObject getUserInfoAndProjectConfig(User user) {
// long start = System.currentTimeMillis();
// long start = System.currentTimeMillis();
// JSONObject result = new JSONObject();
// JSONObject result = new JSONObject();
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/ReportServiceImpl.java
View file @
9683fdbc
This diff is collapsed.
Click to expand it.
src/main/java/com/zhiwei/brandkbs2/service/impl/SystemInfoServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.dao.
I
QbjcPojoDao
;
import
com.zhiwei.brandkbs2.dao.QbjcPojoDao
;
import
com.zhiwei.brandkbs2.service.SystemInfoService
;
import
com.zhiwei.brandkbs2.service.SystemInfoService
;
import
com.zhiwei.qbjc.bean.pojo.common.MessagePlatform
;
import
com.zhiwei.qbjc.bean.pojo.common.MessagePlatform
;
import
com.zhiwei.qbjc.bean.pojo.common.Tag
;
import
com.zhiwei.qbjc.bean.pojo.common.Tag
;
...
@@ -19,7 +19,7 @@ import java.util.List;
...
@@ -19,7 +19,7 @@ import java.util.List;
public
class
SystemInfoServiceImpl
implements
SystemInfoService
{
public
class
SystemInfoServiceImpl
implements
SystemInfoService
{
@Resource
(
name
=
"qbjcPojoDao"
)
@Resource
(
name
=
"qbjcPojoDao"
)
private
I
QbjcPojoDao
qbjcPojoDao
;
private
QbjcPojoDao
qbjcPojoDao
;
@Override
@Override
public
List
<
MessagePlatform
>
getPlatforms
()
{
public
List
<
MessagePlatform
>
getPlatforms
()
{
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/TagFilterServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.dao.
I
TagFilterDao
;
import
com.zhiwei.brandkbs2.dao.TagFilterDao
;
import
com.zhiwei.brandkbs2.pojo.TagFilter
;
import
com.zhiwei.brandkbs2.pojo.TagFilter
;
import
com.zhiwei.brandkbs2.pojo.dto.TagFilterDTO
;
import
com.zhiwei.brandkbs2.pojo.dto.TagFilterDTO
;
import
com.zhiwei.brandkbs2.service.CommonService
;
import
com.zhiwei.brandkbs2.service.CommonService
;
...
@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
...
@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
public
class
TagFilterServiceImpl
implements
TagFilterService
{
public
class
TagFilterServiceImpl
implements
TagFilterService
{
@Resource
(
name
=
"tagFilterDao"
)
@Resource
(
name
=
"tagFilterDao"
)
private
I
TagFilterDao
tagFilterDao
;
private
TagFilterDao
tagFilterDao
;
@Resource
(
name
=
"commonServiceImpl"
)
@Resource
(
name
=
"commonServiceImpl"
)
private
CommonService
commonService
;
private
CommonService
commonService
;
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/TaskServiceImpl.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.zhiwei.brandkbs2.config.Constant
;
import
com.zhiwei.brandkbs2.config.Constant
;
import
com.zhiwei.brandkbs2.dao.IBrandkbsTaskDao
;
import
com.zhiwei.brandkbs2.dao.BrandkbsTaskDao
;
import
com.zhiwei.brandkbs2.dao.IChannelDao
;
import
com.zhiwei.brandkbs2.dao.ChannelDao
;
import
com.zhiwei.brandkbs2.dao.IEventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.dao.ReportSettingsDao
;
import
com.zhiwei.brandkbs2.enmus.ReportTypeEnum
;
import
com.zhiwei.brandkbs2.es.EsClientDao
;
import
com.zhiwei.brandkbs2.es.EsClientDao
;
import
com.zhiwei.brandkbs2.pojo.BrandkbsTask
;
import
com.zhiwei.brandkbs2.listener.ApplicationProjectListener
;
import
com.zhiwei.brandkbs2.pojo.Channel
;
import
com.zhiwei.brandkbs2.pojo.*
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.service.BrandkbsTaskService
;
import
com.zhiwei.brandkbs2.service.ProjectService
;
import
com.zhiwei.brandkbs2.service.ReportService
;
import
com.zhiwei.brandkbs2.service.TaskService
;
import
com.zhiwei.brandkbs2.service.TaskService
;
import
org.apache.commons.lang3.tuple.Pair
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.
Date
;
import
java.util.
ArrayList
;
import
java.util.LinkedHashSet
;
import
java.util.LinkedHashSet
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.concurrent.CompletableFuture
;
import
java.util.concurrent.ThreadPoolExecutor
;
import
java.util.concurrent.atomic.AtomicInteger
;
/**
/**
* @ClassName: TaskServiceImpl
* @ClassName: TaskServiceImpl
...
@@ -32,42 +41,112 @@ public class TaskServiceImpl implements TaskService {
...
@@ -32,42 +41,112 @@ public class TaskServiceImpl implements TaskService {
EsClientDao
esClientDao
;
EsClientDao
esClientDao
;
@Resource
(
name
=
"channelDao"
)
@Resource
(
name
=
"channelDao"
)
I
ChannelDao
channelDao
;
ChannelDao
channelDao
;
@Resource
(
name
=
"eventDataDao"
)
@Resource
(
name
=
"eventDataDao"
)
I
EventDataDao
eventDataDao
;
EventDataDao
eventDataDao
;
@Resource
(
name
=
"brandkbsTaskDao"
)
@Resource
(
name
=
"brandkbsTaskDao"
)
IBrandkbsTaskDao
brandkbsTaskDao
;
BrandkbsTaskDao
brandkbsTaskDao
;
@Resource
(
name
=
"reportSettingsDao"
)
ReportSettingsDao
reportSettingsDao
;
@Resource
(
name
=
"brandkbsTaskServiceImpl"
)
BrandkbsTaskService
brandkbsTaskService
;
@Resource
(
name
=
"projectServiceImpl"
)
ProjectService
projectService
;
@Resource
(
name
=
"reportServiceImpl"
)
ReportService
reportService
;
@Override
@Override
public
void
messageFlowCount
(
int
day
)
{
public
void
messageFlowCount
(
int
day
)
{
Map
<
ChannelIndex
,
ChannelIndex
.
ChannelRecord
>
channelIndexChannelRecordMap
=
esClientDao
.
searchChannelRecordRecentDay
(
day
);
Map
<
ChannelIndex
,
ChannelIndex
.
ChannelRecord
>
channelIndexChannelRecordMap
=
esClientDao
.
searchChannelRecordRecentDay
(
day
);
log
.
info
(
"渠道信息记录-搜索到近{}天的记录条数{}条"
,
day
,
channelIndexChannelRecordMap
.
size
());
log
.
info
(
"渠道信息记录-搜索到近{}天的记录条数{}条"
,
day
,
channelIndexChannelRecordMap
.
size
());
int
insertCount
=
0
;
List
<
Channel
>
insertList
=
new
ArrayList
<>()
;
for
(
Map
.
Entry
<
ChannelIndex
,
ChannelIndex
.
ChannelRecord
>
entry
:
channelIndexChannelRecordMap
.
entrySet
())
{
for
(
Map
.
Entry
<
ChannelIndex
,
ChannelIndex
.
ChannelRecord
>
entry
:
channelIndexChannelRecordMap
.
entrySet
())
{
// 是否已存在
// 是否已存在
Channel
channel
=
channelDao
.
queryUnique
(
entry
.
getKey
());
Channel
channel
=
channelDao
.
queryUnique
(
entry
.
getKey
());
if
(
null
==
channel
)
{
if
(
null
==
channel
)
{
channel
=
Channel
.
createFromChannelIndexRecord
(
entry
.
getKey
(),
entry
.
getValue
());
channel
=
Channel
.
createFromChannelIndexRecord
(
entry
.
getKey
(),
entry
.
getValue
());
channel
.
setEventIds
(
new
LinkedHashSet
<>(
eventDataDao
.
getEventCount
(
entry
.
getKey
())));
channel
.
setEventIds
(
new
LinkedHashSet
<>(
eventDataDao
.
getEventCount
(
entry
.
getKey
())));
insertList
.
add
(
channel
);
channelDao
.
insertOne
(
channel
);
channelDao
.
insertOne
(
channel
);
insertCount
++;
}
else
{
}
else
{
channel
.
setEventIds
(
new
LinkedHashSet
<>(
eventDataDao
.
getEventCount
(
entry
.
getKey
())));
channel
.
setEventIds
(
new
LinkedHashSet
<>(
eventDataDao
.
getEventCount
(
entry
.
getKey
())));
channel
.
setChannelRecord
(
entry
.
getValue
());
channel
.
setChannelRecord
(
entry
.
getValue
());
channelDao
.
updateOne
(
channel
);
channelDao
.
updateOne
(
channel
);
}
}
}
}
log
.
info
(
"渠道信息记录-录入完毕,新增渠道{}条,更新渠道{}条"
,
insertCount
,
channelIndexChannelRecordMap
.
size
()
-
insertCount
);
// ListUtils.partition(insertList, 1000).forEach(list -> {
// channelDao.insertMany(list);
// });
log
.
info
(
"渠道信息记录-录入完毕,新增渠道{}条,更新渠道{}条"
,
insertList
.
size
(),
channelIndexChannelRecordMap
.
size
()
-
insertList
.
size
());
}
}
@Override
@Override
public
void
reportSend
()
{
public
void
generateReportAndSend
()
{
Date
now
=
new
Date
();
long
now
=
System
.
currentTimeMillis
();
BrandkbsTask
task
=
brandkbsTaskDao
.
findTaskByTaskNameAndVersion
(
Constant
.
TASK_REPORT_JOB
,
Constant
.
INIT_VERSION
);
BrandkbsTask
task
=
null
;
boolean
getTask
=
false
;
try
{
task
=
brandkbsTaskDao
.
findTaskByTaskNameAndVersion
(
Constant
.
TASK_REPORT_JOB
,
Constant
.
INIT_VERSION
);
if
(!(
getTask
=
brandkbsTaskService
.
getTaskJob
(
task
,
now
)))
{
return
;
}
log
.
info
(
"执行task:{}"
,
task
.
getTaskName
());
List
<
CompletableFuture
<
Boolean
>>
futures
=
new
ArrayList
<>();
for
(
Project
project
:
projectService
.
getAllProjectsWithStart
())
{
ThreadPoolExecutor
threadPool
=
ApplicationProjectListener
.
getThreadPool
();
futures
.
add
(
CompletableFuture
.
supplyAsync
(()
->
reportSendByProject
(
project
),
threadPool
));
}
AtomicInteger
valid
=
new
AtomicInteger
();
CompletableFuture
.
allOf
(
futures
.
toArray
(
new
CompletableFuture
[
0
])).
whenComplete
((
v
,
e
)
->
{
if
(
null
!=
e
)
{
log
.
error
(
"reportSendByProject-"
,
e
);
}
futures
.
forEach
(
f
->
{
if
(
Boolean
.
TRUE
.
equals
(
f
.
join
()))
{
valid
.
getAndIncrement
();
}
});
}).
join
();
log
.
info
(
"结束task:{},本次执行有效任务数:{}"
,
task
.
getTaskName
(),
valid
.
get
());
}
finally
{
if
(
getTask
)
{
//重置定时任务表
brandkbsTaskService
.
resetTask
(
task
,
now
);
log
.
info
(
"重置task:{}"
,
task
.
getTaskName
());
}
}
}
private
boolean
reportSendByProject
(
Project
project
)
{
boolean
flag
=
false
;
// 扫描setting信息
for
(
ReportSettings
reportSettings
:
reportSettingsDao
.
getReportSettingByProjectWithUsed
(
project
.
getId
()))
{
ReportTypeEnum
reportType
=
ReportTypeEnum
.
getInstanceByState
(
reportSettings
.
getType
());
if
(
ReportTypeEnum
.
canPublishNow
(
reportType
))
{
Pair
<
Boolean
,
Report
>
booleanReportPair
=
reportService
.
generateReportBySettings
(
reportSettings
,
project
);
// 生成新的简报之后的处理
if
(
booleanReportPair
.
getLeft
())
{
Report
report
=
booleanReportPair
.
getRight
();
// 用作生成缓存
reportService
.
getPcReportAnalyze
(
report
.
getId
(),
false
);
reportService
.
switchReportStatus
(
report
.
getId
(),
true
);
}
flag
=
true
;
}
}
}
// 自定义简报不通过setting生效
for
(
Report
report
:
reportService
.
getCustomReportByStatus
(
project
.
getId
(),
false
))
{
// 用作生成缓存
reportService
.
getPcReportAnalyze
(
report
.
getId
(),
false
);
reportService
.
switchReportStatus
(
report
.
getId
(),
true
);
}
return
flag
;
}
}
}
src/main/java/com/zhiwei/brandkbs2/service/impl/UserServiceImpl.java
View file @
9683fdbc
...
@@ -2,8 +2,8 @@ package com.zhiwei.brandkbs2.service.impl;
...
@@ -2,8 +2,8 @@ package com.zhiwei.brandkbs2.service.impl;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.dao.
I
ProjectDao
;
import
com.zhiwei.brandkbs2.dao.ProjectDao
;
import
com.zhiwei.brandkbs2.dao.
I
UserDao
;
import
com.zhiwei.brandkbs2.dao.UserDao
;
import
com.zhiwei.brandkbs2.dao.impl.UserOldDaoImpl
;
import
com.zhiwei.brandkbs2.dao.impl.UserOldDaoImpl
;
import
com.zhiwei.brandkbs2.dao.impl.UserProjectOldDaoImpl
;
import
com.zhiwei.brandkbs2.dao.impl.UserProjectOldDaoImpl
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
...
@@ -39,7 +39,7 @@ import java.util.stream.Collectors;
...
@@ -39,7 +39,7 @@ import java.util.stream.Collectors;
public
class
UserServiceImpl
implements
UserService
{
public
class
UserServiceImpl
implements
UserService
{
@Resource
(
name
=
"userDao"
)
@Resource
(
name
=
"userDao"
)
private
I
UserDao
userDao
;
private
UserDao
userDao
;
@Resource
(
name
=
"userProjectOldDao"
)
@Resource
(
name
=
"userProjectOldDao"
)
private
UserProjectOldDaoImpl
userProjectOldDao
;
private
UserProjectOldDaoImpl
userProjectOldDao
;
...
@@ -48,7 +48,7 @@ public class UserServiceImpl implements UserService {
...
@@ -48,7 +48,7 @@ public class UserServiceImpl implements UserService {
private
UserOldDaoImpl
userOldDao
;
private
UserOldDaoImpl
userOldDao
;
@Resource
(
name
=
"projectDao"
)
@Resource
(
name
=
"projectDao"
)
private
I
ProjectDao
projectDao
;
private
ProjectDao
projectDao
;
@Resource
(
name
=
"mongoUtil"
)
@Resource
(
name
=
"mongoUtil"
)
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
private
com
.
zhiwei
.
brandkbs2
.
util
.
MongoUtil
mongoUtil
;
...
...
src/main/java/com/zhiwei/brandkbs2/task/ControlCenter.java
View file @
9683fdbc
...
@@ -39,10 +39,10 @@ public class ControlCenter {
...
@@ -39,10 +39,10 @@ public class ControlCenter {
@Async
(
"scheduledExecutor"
)
@Async
(
"scheduledExecutor"
)
@Scheduled
(
cron
=
"0 0 * * * ? "
)
@Scheduled
(
cron
=
"0 0 * * * ? "
)
public
void
repo
stSend
()
{
public
void
repo
rtScanning
()
{
log
.
info
(
"每小时扫描简报信息-启动"
);
log
.
info
(
"每小时扫描简报信息-启动"
);
try
{
try
{
taskService
.
report
Send
();
taskService
.
generateReportAnd
Send
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
info
(
"每小时扫描简报信息-出错"
,
e
);
log
.
info
(
"每小时扫描简报信息-出错"
,
e
);
}
finally
{
}
finally
{
...
...
src/main/java/com/zhiwei/brandkbs2/util/FlowEntityUtil.java
View file @
9683fdbc
...
@@ -2,10 +2,10 @@ package com.zhiwei.brandkbs2.util;
...
@@ -2,10 +2,10 @@ package com.zhiwei.brandkbs2.util;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.base.category.ClassB
;
import
com.zhiwei.base.category.ClassB
;
import
com.zhiwei.base.entity.subclass.
CompleteText
;
import
com.zhiwei.base.entity.subclass.
mark.CompleteTextMark
;
import
com.zhiwei.base.entity.subclass.
IncompleteText
;
import
com.zhiwei.base.entity.subclass.
mark.IncompleteTextMark
;
import
com.zhiwei.base.entity.subclass.
QAText
;
import
com.zhiwei.base.entity.subclass.
mark.QATextMark
;
import
com.zhiwei.base.entity.subclass.
Video
;
import
com.zhiwei.base.entity.subclass.
mark.VideoMark
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
/**
/**
...
@@ -15,14 +15,14 @@ import com.zhiwei.brandkbs2.common.GenericAttribute;
...
@@ -15,14 +15,14 @@ import com.zhiwei.brandkbs2.common.GenericAttribute;
*/
*/
public
class
FlowEntityUtil
{
public
class
FlowEntityUtil
{
public
static
JSONObject
getVideoType
(
Video
info
)
{
public
static
JSONObject
getVideoType
(
Video
Mark
info
)
{
JSONObject
type
=
new
JSONObject
();
JSONObject
type
=
new
JSONObject
();
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"fold"
,
false
);
type
.
put
(
"fold"
,
false
);
return
type
;
return
type
;
}
}
public
static
JSONObject
getQaTextType
(
QAText
info
)
{
public
static
JSONObject
getQaTextType
(
QAText
Mark
info
)
{
JSONObject
type
=
new
JSONObject
();
JSONObject
type
=
new
JSONObject
();
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"question"
,
info
.
question
());
type
.
put
(
"question"
,
info
.
question
());
...
@@ -30,14 +30,14 @@ public class FlowEntityUtil {
...
@@ -30,14 +30,14 @@ public class FlowEntityUtil {
return
type
;
return
type
;
}
}
public
static
JSONObject
getCompleteTextType
(
CompleteText
info
)
{
public
static
JSONObject
getCompleteTextType
(
CompleteText
Mark
info
)
{
JSONObject
type
=
new
JSONObject
();
JSONObject
type
=
new
JSONObject
();
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"fold"
,
false
);
type
.
put
(
"fold"
,
false
);
return
type
;
return
type
;
}
}
public
static
JSONObject
getIncompleteTextType
(
IncompleteText
info
)
{
public
static
JSONObject
getIncompleteTextType
(
IncompleteText
Mark
info
)
{
JSONObject
type
=
new
JSONObject
();
JSONObject
type
=
new
JSONObject
();
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"type"
,
getType
(
info
.
getC2
()));
type
.
put
(
"forward"
,
info
.
getIsForward
());
type
.
put
(
"forward"
,
info
.
getIsForward
());
...
@@ -66,16 +66,16 @@ public class FlowEntityUtil {
...
@@ -66,16 +66,16 @@ public class FlowEntityUtil {
int
c2
=
msgJson
.
getIntValue
(
GenericAttribute
.
ES_C2
);
int
c2
=
msgJson
.
getIntValue
(
GenericAttribute
.
ES_C2
);
switch
(
ClassB
.
TypeB
.
fromEncode
(
c2
))
{
switch
(
ClassB
.
TypeB
.
fromEncode
(
c2
))
{
case
COMPLETE:
case
COMPLETE:
CompleteText
completeText
=
CompleteText
.
restoreFromEs
(
msgJson
);
CompleteText
Mark
completeText
=
CompleteTextMark
.
restoreFromEs
(
msgJson
);
return
getCompleteTextType
(
completeText
);
return
getCompleteTextType
(
completeText
);
case
INCOMPLETE:
case
INCOMPLETE:
IncompleteText
incompleteText
=
IncompleteText
.
restoreFromEs
(
msgJson
);
IncompleteText
Mark
incompleteText
=
IncompleteTextMark
.
restoreFromEs
(
msgJson
);
return
getIncompleteTextType
(
incompleteText
);
return
getIncompleteTextType
(
incompleteText
);
case
QA:
case
QA:
QAText
qaText
=
QAText
.
restoreFromEs
(
msgJson
);
QAText
Mark
qaText
=
QATextMark
.
restoreFromEs
(
msgJson
);
return
getQaTextType
(
qaText
);
return
getQaTextType
(
qaText
);
case
VIDEO:
case
VIDEO:
Video
video
=
Video
.
restoreFromEs
(
msgJson
);
Video
Mark
video
=
VideoMark
.
restoreFromEs
(
msgJson
);
return
getVideoType
(
video
);
return
getVideoType
(
video
);
default
:
default
:
break
;
break
;
...
...
src/main/java/com/zhiwei/brandkbs2/util/RedisUtil.java
0 → 100644
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
.
util
;
import
com.zhiwei.brandkbs2.common.RedisKeyPrefix
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.stereotype.Component
;
import
java.util.concurrent.TimeUnit
;
/**
* @ClassName: RedisUtil
* @Description RedisUtil
* @author: sjj
* @date: 2022-07-15 10:19
*/
@Component
public
class
RedisUtil
{
@Autowired
StringRedisTemplate
stringRedisTemplate
;
public
static
String
getShotPageKey
(
String
id
,
String
projectId
)
{
return
RedisKeyPrefix
.
REDIS_SYSTEM_COPY
+
"SHOT_PAGE:"
+
projectId
+
"-"
+
id
;
}
public
void
setExpire
(
String
key
,
String
value
,
long
timeout
,
TimeUnit
unit
)
{
stringRedisTemplate
.
opsForValue
().
set
(
key
,
value
,
timeout
,
unit
);
}
public
void
setExpire
(
String
key
,
String
value
)
{
stringRedisTemplate
.
opsForValue
().
set
(
key
,
value
,
1
,
TimeUnit
.
DAYS
);
}
public
String
get
(
String
key
)
{
return
stringRedisTemplate
.
opsForValue
().
get
(
key
);
}
}
src/main/java/com/zhiwei/brandkbs2/util/TextUtil.java
View file @
9683fdbc
...
@@ -67,7 +67,7 @@ public class TextUtil {
...
@@ -67,7 +67,7 @@ public class TextUtil {
return
AggreeBootStarter
.
getKResult
(
listMap
,
LIMIT
).
stream
().
map
(
KResult:
:
getDataPoints
).
collect
(
Collectors
.
toList
());
return
AggreeBootStarter
.
getKResult
(
listMap
,
LIMIT
).
stream
().
map
(
KResult:
:
getDataPoints
).
collect
(
Collectors
.
toList
());
}
}
public
static
<
T
>
List
<
List
<
JSONObject
>>
sortByTimeAsc
(
List
<
List
<
T
>>
kResultList
,
List
<
JSONObject
>
sourceList
,
String
tField
)
{
public
static
<
T
>
List
<
List
<
JSONObject
>>
restoreAndSort
(
List
<
List
<
T
>>
kResultList
,
List
<
JSONObject
>
sourceList
,
String
tField
)
{
ImmutableMap
<
T
,
JSONObject
>
idMap
=
Maps
.
uniqueIndex
(
sourceList
,
json
->
(
T
)
json
.
get
(
tField
));
ImmutableMap
<
T
,
JSONObject
>
idMap
=
Maps
.
uniqueIndex
(
sourceList
,
json
->
(
T
)
json
.
get
(
tField
));
// 还原数据
// 还原数据
return
kResultList
.
stream
().
map
(
gList
->
return
kResultList
.
stream
().
map
(
gList
->
...
...
src/main/java/com/zhiwei/brandkbs2/util/Tools.java
View file @
9683fdbc
...
@@ -543,4 +543,15 @@ public class Tools {
...
@@ -543,4 +543,15 @@ public class Tools {
return
null
;
return
null
;
}
}
public
static
String
getUUID
()
{
return
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
);
}
public
static
Long
getYearFirst
(
int
year
)
{
Calendar
calendar
=
Calendar
.
getInstance
();
calendar
.
clear
();
calendar
.
set
(
Calendar
.
YEAR
,
year
);
return
calendar
.
getTime
().
getTime
();
}
}
}
\ No newline at end of file
src/test/java/com/zhiwei/brandkbs2/TestRunWith.java
View file @
9683fdbc
package
com
.
zhiwei
.
brandkbs2
;
package
com
.
zhiwei
.
brandkbs2
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.auth.UserThreadLocal
;
import
com.zhiwei.brandkbs2.common.GlobalPojo
;
import
com.zhiwei.brandkbs2.controller.AppArticleController
;
import
com.zhiwei.brandkbs2.controller.app.AppArticleController
;
import
com.zhiwei.brandkbs2.dao.IChannelLabelDao
;
import
com.zhiwei.brandkbs2.dao.ChannelLabelDao
;
import
com.zhiwei.brandkbs2.dao.IEventDataDao
;
import
com.zhiwei.brandkbs2.dao.EventDataDao
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.dao.ReportDao
;
import
com.zhiwei.brandkbs2.pojo.ChannelIndex
;
import
com.zhiwei.brandkbs2.service.ReportService
;
import
com.zhiwei.brandkbs2.pojo.UserInfo
;
import
com.zhiwei.brandkbs2.service.TaskService
;
import
com.zhiwei.brandkbs2.service.TaskService
;
import
com.zhiwei.brandkbs2.util.TextUtil
;
import
com.zhiwei.brandkbs2.util.TextUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
...
@@ -32,13 +31,19 @@ import java.util.List;
...
@@ -32,13 +31,19 @@ import java.util.List;
public
class
TestRunWith
{
public
class
TestRunWith
{
@Autowired
@Autowired
TaskService
T
askService
;
TaskService
t
askService
;
@Autowired
@Autowired
IEventDataDao
eventDataDao
;
ReportService
reportService
;
@Autowired
@Autowired
IChannelLabelDao
channelLabelDao
;
EventDataDao
eventDataDao
;
@Autowired
ChannelLabelDao
channelLabelDao
;
@Autowired
ReportDao
reportDao
;
@Autowired
@Autowired
TextUtil
textUtil
;
TextUtil
textUtil
;
...
@@ -46,23 +51,30 @@ public class TestRunWith {
...
@@ -46,23 +51,30 @@ public class TestRunWith {
@Autowired
@Autowired
AppArticleController
appArticleController
;
AppArticleController
appArticleController
;
@Autowired
GlobalPojo
globalPojo
;
@Test
@Test
public
void
test1
()
{
public
void
test1
()
{
UserInfo
userInfo
=
new
UserInfo
();
// UserInfo userInfo = new UserInfo();
userInfo
.
setProjectId
(
"62beadd1bbf8eb20f96d2f2f"
);
// userInfo.setProjectId("62beadd1bbf8eb20f96d2f2f");
UserThreadLocal
.
set
(
userInfo
);
// UserThreadLocal.set(userInfo);
ResponseResult
result
=
appArticleController
.
getMarkSpread
(
1657468800000L
,
1657555200000L
);
// ResponseResult result = appArticleController.getMarkSpread(1657468800000L, 1657555200000L);
System
.
out
.
println
(
JSONObject
.
toJSONString
(
result
));
// System.out.println(JSONObject.toJSONString(result));
// taskService.messageFlowCount(1);
reportService
.
getReportsAggCount
();
}
}
@Test
@Test
public
void
test2
()
{
public
void
test2
()
{
ChannelIndex
channelIndex
=
new
ChannelIndex
();
taskService
.
generateReportAndSend
();
channelIndex
.
setPlatform
(
"微信"
);
// ChannelIndex channelIndex = new ChannelIndex();
channelIndex
.
setRealSource
(
"微信公众号"
);
// channelIndex.setPlatform("微信");
channelIndex
.
setSource
(
"金陵晚报2"
);
// channelIndex.setRealSource("微信公众号");
channelIndex
.
setLinkedGroupId
(
"41"
);
// channelIndex.setSource("金陵晚报2");
System
.
out
.
println
(
JSONObject
.
toJSONString
(
eventDataDao
.
getEventCount
(
channelIndex
)));
// channelIndex.setLinkedGroupId("41");
// System.out.println(JSONObject.toJSONString(eventDataDao.getEventCount(channelIndex)));
}
}
@Test
@Test
...
...
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