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
246c2461
Commit
246c2461
authored
Oct 30, 2023
by
陈健智
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
工具库-互动量更新调整
parent
ea317a06
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
23 additions
and
9 deletions
+23
-9
src/main/java/com/zhiwei/brandkbs2/service/impl/MarkDataServiceImpl.java
+23
-9
No files found.
src/main/java/com/zhiwei/brandkbs2/service/impl/MarkDataServiceImpl.java
View file @
246c2461
...
@@ -1510,15 +1510,23 @@ public class MarkDataServiceImpl implements MarkDataService {
...
@@ -1510,15 +1510,23 @@ public class MarkDataServiceImpl implements MarkDataService {
@Override
@Override
public
ResponseResult
markInteractionUpdate
(
MarkSearchDTO
dto
)
{
public
ResponseResult
markInteractionUpdate
(
MarkSearchDTO
dto
)
{
Pair
<
String
,
List
<
ExportAppYuqingDTO
>>
pair
=
downloadList
(
dto
,
esSearchService:
:
searchMarkHitsAndCount
);
List
<
BaseMap
>
list
=
new
ArrayList
<>();
assert
pair
!=
null
;
dto
.
setProjectId
(
UserThreadLocal
.
getProjectId
());
List
<
ExportAppYuqingDTO
>
list
=
pair
.
getRight
();
try
{
SearchHits
[]
searchHits
=
esSearchService
.
searchMarkHitsAndCount
(
dto
,
true
).
getLeft
();
for
(
SearchHits
searchHit
:
searchHits
)
{
List
<
BaseMap
>
baseMaps
=
Arrays
.
stream
(
searchHit
.
getHits
()).
map
(
SearchHit:
:
getSourceAsMap
).
map
(
Tools:
:
getBaseFromEsMap
).
collect
(
Collectors
.
toList
());
list
.
addAll
(
baseMaps
);
}
}
catch
(
IOException
e
)
{
ExceptionCast
.
cast
(
CommonCodeEnum
.
FAIL
,
"es查询异常"
);
}
// 互动量更新剩余可用次数
// 互动量更新剩余可用次数
int
interactionBalance
=
projectService
.
getProjectById
(
UserThreadLocal
.
getProjectId
()).
getInteractionBalance
();
int
interactionBalance
=
projectService
.
getProjectById
(
UserThreadLocal
.
getProjectId
()).
getInteractionBalance
();
if
(
interactionBalance
-
list
.
size
()
<
0
){
if
(
interactionBalance
-
list
.
size
()
<
0
){
return
ResponseResult
.
failure
(
"剩余可用次数不足"
);
return
ResponseResult
.
failure
(
"剩余可用次数不足"
);
}
}
Map
<
String
,
String
>
map
=
list
.
stream
().
collect
(
Collectors
.
toMap
(
ExportAppYuqingDTO:
:
getUrl
,
ExportAppYuqingDTO
:
:
getPlatform
,
(
v1
,
v2
)
->
v1
));
Map
<
String
,
String
>
map
=
list
.
stream
().
collect
(
Collectors
.
toMap
(
BaseMap:
:
getUrl
,
BaseMap
:
:
getPlatform
,
(
v1
,
v2
)
->
v1
));
// 分割map,list里每个map.size为100,目前品见最大链接限制为100,见知微tapd-wiki《互动量更新中间件使用》说明
// 分割map,list里每个map.size为100,目前品见最大链接限制为100,见知微tapd-wiki《互动量更新中间件使用》说明
List
<
Map
<
String
,
String
>>
mapList
=
Tools
.
splitMap
(
map
,
100
);
List
<
Map
<
String
,
String
>>
mapList
=
Tools
.
splitMap
(
map
,
100
);
AtomicInteger
id
=
new
AtomicInteger
(
0
);
AtomicInteger
id
=
new
AtomicInteger
(
0
);
...
@@ -1537,7 +1545,7 @@ public class MarkDataServiceImpl implements MarkDataService {
...
@@ -1537,7 +1545,7 @@ public class MarkDataServiceImpl implements MarkDataService {
}
}
}
}
Map
<
Object
,
JSONObject
>
urlMap
=
result
.
stream
().
collect
(
Collectors
.
toMap
(
jsonObject
->
jsonObject
.
get
(
"url"
),
o
->
o
));
Map
<
Object
,
JSONObject
>
urlMap
=
result
.
stream
().
collect
(
Collectors
.
toMap
(
jsonObject
->
jsonObject
.
get
(
"url"
),
o
->
o
));
List
<
ExportInteractionUpdateDTO
>
exportList
=
list
.
stream
().
map
(
ExportAppYuqingDTO
:
:
getUrl
)
List
<
ExportInteractionUpdateDTO
>
exportList
=
list
.
stream
().
map
(
BaseMap
:
:
getUrl
)
.
map
(
url
->
ExportInteractionUpdateDTO
.
createWithPlatform
(
String
.
valueOf
(
id
.
incrementAndGet
()),
map
,
urlMap
,
url
))
.
map
(
url
->
ExportInteractionUpdateDTO
.
createWithPlatform
(
String
.
valueOf
(
id
.
incrementAndGet
()),
map
,
urlMap
,
url
))
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
// excel输出到指定路径
// excel输出到指定路径
...
@@ -1556,10 +1564,16 @@ public class MarkDataServiceImpl implements MarkDataService {
...
@@ -1556,10 +1564,16 @@ public class MarkDataServiceImpl implements MarkDataService {
@Override
@Override
public
Long
interactionUpdatePrediction
(
MarkSearchDTO
dto
)
{
public
Long
interactionUpdatePrediction
(
MarkSearchDTO
dto
)
{
try
{
try
{
defaultMarkSearch
(
dto
);
String
projectId
=
UserThreadLocal
.
getProjectId
();
dto
.
setPageSize
(
null
);
String
contendId
=
Constant
.
PRIMARY_CONTEND_ID
;
Pair
<
SearchHits
[],
Map
<
String
,
Long
>>
hitsAndCounts
=
esSearchService
.
searchMarkHitsAndCount
(
dto
,
false
);
BoolQueryBuilder
postFilter
=
EsQueryTools
.
assembleCacheMapsQuery
(
projectId
,
contendId
,
dto
.
getPoliticsLevel
(),
dto
.
getField
(),
dto
.
getRegion
(),
dto
.
getMainBodyType
(),
dto
.
getChannelEmotion
());
return
hitsAndCounts
.
getLeft
()[
0
].
getTotalHits
().
value
;
// time
postFilter
.
must
(
QueryBuilders
.
rangeQuery
(
dto
.
getTimeType
()).
gte
(
dto
.
getStartTime
()).
lt
(
dto
.
getEndTime
()));
// platform
if
(
CollectionUtils
.
isNotEmpty
(
dto
.
getPlatforms
()))
{
postFilter
.
must
(
EsQueryTools
.
assemblePlatformQuery
(
Tools
.
getPlatformByIds
(
dto
.
getPlatforms
())));
}
return
esClientDao
.
count
(
postFilter
);
}
catch
(
Exception
e
){
}
catch
(
Exception
e
){
ExceptionCast
.
cast
(
CommonCodeEnum
.
FAIL
,
"es查询异常"
);
ExceptionCast
.
cast
(
CommonCodeEnum
.
FAIL
,
"es查询异常"
);
}
}
...
...
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