Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
midjourney-proxy
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
徐少华
midjourney-proxy
Commits
8932cc7c
Commit
8932cc7c
authored
Aug 27, 2021
by
李传峰
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
book_group_qrcode 对接新es
parent
df59b9f6
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
52 additions
and
278 deletions
+52
-278
pom.xml
pcloud-service-book/pom.xml
+1
-1
BookElasticSearchConsr.java
...k/consumer/book/elasticsearch/BookElasticSearchConsr.java
+3
-3
ESBookGroupQrcodeBiz.java
...ain/java/com/pcloud/book/es/biz/ESBookGroupQrcodeBiz.java
+0
-6
ESBookGroupQrcodeBizImpl.java
...com/pcloud/book/es/biz/impl/ESBookGroupQrcodeBizImpl.java
+47
-249
ESBookGroupQrcodeFacadeImpl.java
...loud/book/es/facade/impl/ESBookGroupQrcodeFacadeImpl.java
+0
-1
BookGroupQrcodeRepository.java
.../pcloud/book/es/repository/BookGroupQrcodeRepository.java
+0
-10
ESBookGroupQrcodeServiceImpl.java
...ud/book/es/service/impl/ESBookGroupQrcodeServiceImpl.java
+1
-8
No files found.
pcloud-service-book/pom.xml
View file @
8932cc7c
...
...
@@ -19,7 +19,7 @@
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<pcloud-book-elasticsearch-api.version>
1
.0.1-SNAPSHOT
</pcloud-book-elasticsearch-api.version>
<pcloud-book-elasticsearch-api.version>
2
.0.1-SNAPSHOT
</pcloud-book-elasticsearch-api.version>
</properties>
<dependencies>
...
...
pcloud-service-book/src/main/java/com/pcloud/book/consumer/book/elasticsearch/BookElasticSearchConsr.java
View file @
8932cc7c
...
...
@@ -2,7 +2,7 @@ package com.pcloud.book.consumer.book.elasticsearch;
import
com.pcloud.book.elasticsearch7.entity.Es7Book
;
import
com.pcloud.book.elasticsearch7.search.domain.dto.param.PlatformSearchDto
;
import
com.pcloud.book.elasticsearch7.search.
facade.PlatformBookSearchFacad
e
;
import
com.pcloud.book.elasticsearch7.search.
service.PlatformBookSearchServic
e
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.universe.commons.paging.Pagination
;
import
org.slf4j.Logger
;
...
...
@@ -22,11 +22,11 @@ public class BookElasticSearchConsr {
private
final
Logger
logger
=
LoggerFactory
.
getLogger
(
getClass
());
@Autowired
private
PlatformBookSearch
Facade
platformBookSearchFacad
e
;
private
PlatformBookSearch
Service
platformBookSearchServic
e
;
public
Pagination
<
Es7Book
>
search
(
PlatformSearchDto
dto
)
{
try
{
ResponseDto
<
Pagination
<
Es7Book
>>
r
=
platformBookSearch
Facad
e
.
search
(
dto
);
ResponseDto
<
Pagination
<
Es7Book
>>
r
=
platformBookSearch
Servic
e
.
search
(
dto
);
return
r
.
getData
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"platform book es search exception."
,
e
);
...
...
pcloud-service-book/src/main/java/com/pcloud/book/es/biz/ESBookGroupQrcodeBiz.java
View file @
8932cc7c
...
...
@@ -9,12 +9,6 @@ import java.util.List;
public
interface
ESBookGroupQrcodeBiz
{
/**
* 初始化数据-将数据从 MySQL 导入到 Elasticsearch 中
*/
void
initData
();
/**
* 通过微信群ID(xxx@chatroom)获取ES中的群信息
*
* @param wxGroupIds 微信群ID
...
...
pcloud-service-book/src/main/java/com/pcloud/book/es/biz/impl/ESBookGroupQrcodeBizImpl.java
View file @
8932cc7c
...
...
@@ -3,53 +3,25 @@ package com.pcloud.book.es.biz.impl;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.consumer.reader.ReaderConsr
;
import
com.pcloud.book.consumer.trade.TradeConsr
;
import
com.pcloud.book.consumer.user.AdviserConsr
;
import
com.pcloud.book.consumer.user.AgentConsr
;
import
com.pcloud.book.consumer.wechat.WechatConsr
;
import
com.pcloud.book.elasticsearch7.entity.Es7BookGroupQrcode
;
import
com.pcloud.book.elasticsearch7.search.domain.dto.param.BookGroupQrcodeSearchDto
;
import
com.pcloud.book.elasticsearch7.search.service.Es7BookGroupQrcodeService
;
import
com.pcloud.book.es.biz.ESBookGroupQrcodeBiz
;
import
com.pcloud.book.es.dto.BookAdviserInfo
;
import
com.pcloud.book.es.dto.BookTagDTO
;
import
com.pcloud.book.es.dto.ESBookGroupQrcodeDTO
;
import
com.pcloud.book.es.dto.GroupQrcodeSearchDTO
;
import
com.pcloud.book.es.entity.ESBookGroupQrcode
;
import
com.pcloud.book.es.repository.BookGroupQrcodeRepository
;
import
com.pcloud.book.group.dao.BookGroupClassifyDao
;
import
com.pcloud.book.group.dao.GroupQrcodeDao
;
import
com.pcloud.book.group.entity.GroupQrcode
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.utils.cache.redis.JedisClusterUtils
;
import
com.pcloud.facade.tradecenter.dto.OrderGroupFormDto
;
import
com.pcloud.usercenter.party.agent.dto.AgentCity
;
import
com.pcloud.wechatgroup.group.dto.ESGroupBookQrcodeDTO
;
import
com.pcloud.universe.commons.paging.Pagination
;
import
lombok.extern.slf4j.Slf4j
;
import
org.elasticsearch.action.admin.indices.analyze.AnalyzeAction
;
import
org.elasticsearch.action.admin.indices.analyze.AnalyzeRequestBuilder
;
import
org.elasticsearch.action.admin.indices.analyze.AnalyzeResponse
;
import
org.elasticsearch.index.query.MatchQueryBuilder
;
import
org.elasticsearch.index.query.MultiMatchQueryBuilder
;
import
org.elasticsearch.index.query.QueryBuilder
;
import
org.elasticsearch.index.query.QueryBuilders
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.data.elasticsearch.core.ElasticsearchTemplate
;
import
org.springframework.cglib.beans.BeanCopier
;
import
org.springframework.stereotype.Component
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
static
com
.
pcloud
.
book
.
book
.
constant
.
BookConstant
.
BOOK_GROUP_QRCODE_ES_INIT
;
/**
* @author guiq
...
...
@@ -61,247 +33,73 @@ import static com.pcloud.book.book.constant.BookConstant.BOOK_GROUP_QRCODE_ES_IN
public
class
ESBookGroupQrcodeBizImpl
implements
ESBookGroupQrcodeBiz
{
@Autowired
private
ElasticsearchTemplate
elasticsearchTemplate
;
@Autowired
private
BookGroupQrcodeRepository
bookGroupQrcodeRepository
;
private
Es7BookGroupQrcodeService
es7BookGroupQrcodeService
;
@Autowired
private
GroupQrcodeDao
groupQrcodeDao
;
@Autowired
private
BookGroupClassifyDao
bookGroupClassifyDao
;
@Autowired
private
ReaderConsr
readerConsr
;
@Autowired
private
WechatConsr
wechatConsr
;
@Autowired
private
TradeConsr
tradeConsr
;
@Autowired
private
AdviserConsr
adviserConsr
;
@Autowired
private
AgentConsr
agentConsr
;
@Override
public
void
initData
()
{
long
total
=
groupQrcodeDao
.
countAll
();
if
(
JedisClusterUtils
.
setnx
(
BOOK_GROUP_QRCODE_ES_INIT
,
String
.
valueOf
(
total
)))
{
// 每次处理 1000 条数据
final
long
pageSize
=
1000
;
// 计算分页数据
long
maxPage
=
(
total
+
pageSize
-
1
)
/
pageSize
;
long
pageNum
=
0
;
while
(
pageNum
<
maxPage
)
{
// 每 1000 条处理时间大致 60s
JedisClusterUtils
.
expire
(
BOOK_GROUP_QRCODE_ES_INIT
,
60
);
importData
(
pageNum
*
pageSize
,
pageSize
);
pageNum
++;
}
// 处理完删除
JedisClusterUtils
.
del
(
BOOK_GROUP_QRCODE_ES_INIT
);
}
}
private
void
importData
(
long
start
,
long
offset
)
{
List
<
ESBookGroupQrcode
>
qrcodes
=
groupQrcodeDao
.
selectPage
(
start
,
offset
);
if
(
CollUtil
.
isEmpty
(
qrcodes
))
{
return
;
}
// 将群二维码根据群分类进行分组,获取群对应的书名信息
Map
<
Long
,
List
<
ESBookGroupQrcode
>>
classifyMap
=
qrcodes
.
stream
().
collect
(
Collectors
.
groupingBy
(
ESBookGroupQrcode:
:
getClassifyId
));
Set
<
Long
>
classifyIds
=
classifyMap
.
keySet
();
if
(
CollUtil
.
isEmpty
(
classifyIds
))
{
return
;
}
List
<
BookAdviserInfo
>
infos
=
bookGroupClassifyDao
.
getBookAndAdviserByClassifyIds
(
classifyIds
);
Map
<
Long
,
BookAdviserInfo
>
classifyBookMap
=
new
HashMap
<>();
if
(!
CollUtil
.
isEmpty
(
infos
))
{
classifyBookMap
=
infos
.
stream
().
collect
(
Collectors
.
toMap
(
BookAdviserInfo:
:
getClassifyId
,
BookAdviserInfo
->
BookAdviserInfo
));
}
// 获取编辑id集合
List
<
Long
>
advisers
=
qrcodes
.
stream
().
map
(
ESBookGroupQrcode:
:
getCreateUser
).
distinct
().
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
Map
<
Long
,
AgentCity
>
agentCityMap
=
CollUtil
.
newHashMap
();
if
(!
CollUtil
.
isEmpty
(
advisers
)){
agentCityMap
=
readerConsr
.
getAgentPositionByAdviserIds
(
advisers
);
}
// 获取群ID集合,查询城市标签及性别比例
List
<
String
>
groupIds
=
qrcodes
.
stream
().
map
(
ESBookGroupQrcode:
:
getWeixinGroupId
).
distinct
().
filter
(
x
->!
StrUtil
.
isEmpty
(
x
)).
collect
(
Collectors
.
toList
());
Map
<
String
,
ESGroupBookQrcodeDTO
>
qrcodeDTOMap
=
wechatConsr
.
aggGroupMemberUser
(
groupIds
);
// 交易中心查询群内订单数据
List
<
Long
>
collect
=
qrcodes
.
stream
().
map
(
ESBookGroupQrcode:
:
getId
).
distinct
().
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
Map
<
Long
,
OrderGroupFormDto
>
orderGroupForm4ES
=
tradeConsr
.
getOrderGroupForm4ES
(
collect
);
// 查询编辑姓名列表
Map
<
Long
,
String
>
adviserNames
=
CollUtil
.
newHashMap
(
0
);
if
(
CollUtil
.
isNotEmpty
(
advisers
)){
adviserNames
=
adviserConsr
.
getNames
(
advisers
);
}
// 查询出版社名称列表
Map
<
Long
,
String
>
agentNames
=
CollUtil
.
newHashMap
(
0
);
if
(
CollUtil
.
isNotEmpty
(
agentCityMap
)){
List
<
Long
>
agentIds
=
agentCityMap
.
values
().
stream
().
filter
(
Objects:
:
nonNull
).
map
(
AgentCity:
:
getAgentId
).
distinct
().
collect
(
Collectors
.
toList
());
if
(
CollUtil
.
isNotEmpty
(
agentIds
)){
agentNames
=
agentConsr
.
getNames
(
agentIds
);
}
}
for
(
ESBookGroupQrcode
qrcode
:
qrcodes
)
{
if
(
qrcode
==
null
)
{
continue
;
}
// 根据群名称分词获取群标签
List
<
String
>
groupNameTags
=
qrcode
.
getGroupNameTags
()
==
null
?
new
ArrayList
<>()
:
qrcode
.
getGroupNameTags
();
groupNameTags
.
addAll
(
analyzer
(
qrcode
.
getGroupName
()));
if
(!
CollUtil
.
isEmpty
(
groupNameTags
))
{
// 去除重复标签
qrcode
.
setGroupNameTags
(
groupNameTags
.
stream
().
distinct
().
collect
(
Collectors
.
toList
()));
}
if
(
qrcode
.
getClassifyId
()
!=
null
)
{
// 根据书名获取分词标签
List
<
String
>
bookNameTags
=
qrcode
.
getBookNameTags
()
==
null
?
new
ArrayList
<>()
:
qrcode
.
getBookNameTags
();
List
<
String
>
newBookNameTags
=
new
ArrayList
<>();
if
(!
CollUtil
.
isEmpty
(
classifyBookMap
)
&&
classifyBookMap
.
get
(
qrcode
.
getClassifyId
())
!=
null
){
qrcode
.
setIsbn
(
classifyBookMap
.
get
(
qrcode
.
getClassifyId
()).
getIsbn
());
}
if
(
JedisClusterUtils
.
hexists
(
BookConstant
.
BOOK_NAME_TAGS_CACHE
,
String
.
valueOf
(
qrcode
.
getClassifyId
())))
{
BookTagDTO
bookTagDTO
=
JedisClusterUtils
.
hgetJson2Class
(
BookConstant
.
BOOK_NAME_TAGS_CACHE
,
String
.
valueOf
(
qrcode
.
getClassifyId
()),
BookTagDTO
.
class
);
newBookNameTags
=
bookTagDTO
.
getBookTags
();
qrcode
.
setQrcodeBookName
(
bookTagDTO
.
getBookName
());
}
else
if
(!
CollUtil
.
isEmpty
(
classifyBookMap
)
&&
classifyBookMap
.
get
(
qrcode
.
getClassifyId
())
!=
null
){
String
bookName
=
classifyBookMap
.
get
(
qrcode
.
getClassifyId
()).
getBookName
();
if
(
!
StrUtil
.
isEmpty
(
bookName
))
{
newBookNameTags
=
analyzer
(
bookName
);
qrcode
.
setQrcodeBookName
(
bookName
);
BookTagDTO
bookTagDTO
=
new
BookTagDTO
(
bookName
,
newBookNameTags
);
JedisClusterUtils
.
hset
(
BookConstant
.
BOOK_NAME_TAGS_CACHE
,
String
.
valueOf
(
qrcode
.
getClassifyId
()),
JSONObject
.
toJSONString
(
bookTagDTO
));
}
}
bookNameTags
.
addAll
(
newBookNameTags
);
qrcode
.
setBookNameTags
(
bookNameTags
.
stream
().
distinct
().
collect
(
Collectors
.
toList
()));
}
// 获取书对应的出版社,并将出版社的地理位置作为群的地理标签,并补充出版社和编辑名称
if
(
qrcode
.
getCreateUser
()
!=
null
)
{
qrcode
.
setAdviserName
(
adviserNames
.
get
(
qrcode
.
getCreateUser
()));
AgentCity
agentCity
=
agentCityMap
.
get
(
qrcode
.
getCreateUser
());
if
(
agentCity
!=
null
)
{
qrcode
.
setAgentName
(
agentNames
.
get
(
agentCity
.
getAgentId
()));
List
<
String
>
strings
=
CollUtil
.
toList
(
agentCity
.
getCity
());
strings
=
strings
==
null
?
new
ArrayList
<>()
:
strings
;
qrcode
.
setPressTags
(
CollUtil
.
removeEmpty
(
strings
));
}
}
// 补充城市及性别信息
if
(!
CollUtil
.
isEmpty
(
qrcodeDTOMap
))
{
ESGroupBookQrcodeDTO
qrcodeDTO
=
qrcodeDTOMap
.
get
(
qrcode
.
getWeixinGroupId
());
if
(
qrcodeDTO
!=
null
)
{
qrcode
.
setCityTags
(
qrcodeDTO
.
getCityTags
());
int
male
=
qrcodeDTO
.
getMaleCount
()
==
null
?
0
:
qrcodeDTO
.
getMaleCount
();
int
female
=
qrcodeDTO
.
getFemaleCount
()
==
null
?
0
:
qrcodeDTO
.
getFemaleCount
();
int
unknown
=
qrcodeDTO
.
getUnknownCount
()
==
null
?
0
:
qrcodeDTO
.
getUnknownCount
();
qrcode
.
setMaleCount
(
male
);
qrcode
.
setFemaleCount
(
female
);
qrcode
.
setUnknownCount
(
unknown
);
qrcode
.
setGroupMemberCount
(
male
+
female
+
unknown
);
}
}
// 补充交易信息
if
(!
CollUtil
.
isEmpty
(
orderGroupForm4ES
)
&&
qrcode
.
getId
()
!=
null
)
{
OrderGroupFormDto
dto
=
orderGroupForm4ES
.
get
(
qrcode
.
getId
());
if
(
dto
!=
null
)
{
qrcode
.
setAmountActuallyPaid
(
dto
.
getAmountActuallyPaid
());
qrcode
.
setPurchaseVolume
(
dto
.
getPurchaseVolume
());
qrcode
.
setPurchaseAmount
(
dto
.
getPurchaseAmount
().
toPlainString
());
}
}
}
bookGroupQrcodeRepository
.
save
(
qrcodes
);
}
/**
* 分词方法
*
* @param content 待分词内同
* @return 分词结果
*/
private
List
<
String
>
analyzer
(
String
content
)
{
AnalyzeRequestBuilder
ikRequest
=
new
AnalyzeRequestBuilder
(
elasticsearchTemplate
.
getClient
(),
AnalyzeAction
.
INSTANCE
,
"book"
,
content
);
ikRequest
.
setTokenizer
(
"ik_smart"
);
final
ArrayList
<
String
>
list
=
CollUtil
.
newArrayList
();
final
List
<
AnalyzeResponse
.
AnalyzeToken
>
tokens
=
ikRequest
.
execute
().
actionGet
().
getTokens
();
tokens
.
forEach
(
x
->
list
.
add
(
x
.
getTerm
()));
return
list
;
}
@Override
public
List
<
ESBookGroupQrcodeDTO
>
searchByWxGroupIds
(
List
<
String
>
wxGroupIds
)
{
if
(
CollUtil
.
isEmpty
(
wxGroupIds
))
{
return
new
ArrayList
<>();
}
List
<
ESBookGroupQrcodeDTO
>
result
=
new
ArrayList
<>();
Iterable
<
ESBookGroupQrcode
>
weixinGroupIds
=
bookGroupQrcodeRepository
.
search
(
QueryBuilders
.
termsQuery
(
"weixinGroupId"
,
wxGroupIds
));
for
(
ESBookGroupQrcode
weixinGroupId
:
weixinGroupIds
)
{
if
(
weixinGroupId
!=
null
)
{
result
.
add
(
BeanUtil
.
copyProperties
(
weixinGroupId
,
ESBookGroupQrcodeDTO
.
class
));
}
List
<
Es7BookGroupQrcode
>
list
=
es7BookGroupQrcodeService
.
findByWxGroupIds
(
wxGroupIds
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
result
;
}
list
.
forEach
(
bgq
->
result
.
add
(
convert
(
bgq
)));
return
result
;
}
@Override
public
void
save
(
List
<
ESBookGroupQrcodeDTO
>
dtos
)
{
if
(!
CollUtil
.
isEmpty
(
dtos
))
{
List
<
ESBookGroupQrcode
>
qrcodes
=
new
ArrayList
<>();
for
(
ESBookGroupQrcodeDTO
dto
:
dtos
)
{
qrcodes
.
add
(
BeanUtil
.
copyProperties
(
dto
,
ESBookGroupQrcode
.
class
));
}
bookGroupQrcodeRepository
.
save
(
qrcodes
);
if
(
CollectionUtils
.
isNotEmpty
(
dtos
))
{
List
<
Es7BookGroupQrcode
>
qrcodes
=
new
ArrayList
<>();
dtos
.
forEach
(
dto
->
qrcodes
.
add
(
convert
(
dto
)));
es7BookGroupQrcodeService
.
save
(
qrcodes
);
}
}
@Override
public
PageBeanNew
<
GroupQrcodeSearchDTO
>
search
(
String
text
,
String
methodType
,
Boolean
isOrder
,
Integer
pageSize
,
Integer
pageNum
)
{
QueryBuilder
queryBuilder
;
PageRequest
pageRequest
;
if
(
Objects
.
nonNull
(
isOrder
)&&
isOrder
){
pageRequest
=
new
PageRequest
(
pageNum
,
pageSize
,
new
Sort
(
Sort
.
Direction
.
DESC
,
"groupMemberCount"
,
"userNumber"
));
}
else
{
pageRequest
=
new
PageRequest
(
pageNum
,
pageSize
);
}
BookGroupQrcodeSearchDto
dto
=
new
BookGroupQrcodeSearchDto
();
dto
.
setText
(
text
);
dto
.
setMethodType
(
methodType
);
dto
.
setOrder
(
isOrder
);
dto
.
setPageSize
(
pageSize
);
dto
.
setCurrentPage
(
pageNum
+
1
);
Pagination
<
Es7BookGroupQrcode
>
data
=
es7BookGroupQrcodeService
.
search
(
dto
);
if
(
StrUtil
.
isEmpty
(
text
))
{
queryBuilder
=
QueryBuilders
.
boolQuery
();
}
else
{
if
(
"AND"
.
equals
(
methodType
))
{
queryBuilder
=
QueryBuilders
.
multiMatchQuery
(
text
,
"groupName"
,
"groupNameTags"
,
"qrcodeBookName"
,
"bookNameTags"
,
"cityTags"
,
"pressTags"
,
"pressTags"
,
"adviserName"
).
type
(
MultiMatchQueryBuilder
.
Type
.
CROSS_FIELDS
).
operator
(
MatchQueryBuilder
.
Operator
.
AND
);
}
else
{
queryBuilder
=
QueryBuilders
.
multiMatchQuery
(
text
,
"groupName"
,
"groupNameTags"
,
"qrcodeBookName"
,
"bookNameTags"
,
"cityTags"
,
"pressTags"
,
"pressTags"
,
"adviserName"
);
}
}
Page
<
ESBookGroupQrcode
>
page
=
bookGroupQrcodeRepository
.
search
(
queryBuilder
,
pageRequest
);
List
<
GroupQrcodeSearchDTO
>
list
=
convert
(
data
.
getList
());
List
<
GroupQrcodeSearchDTO
>
list
=
convert
(
page
.
getContent
());
if
(
CollUtil
.
isEmpty
(
list
))
{
return
new
PageBeanNew
<>(
pageNum
,
pageSize
,
null
);
}
return
new
PageBeanNew
<>(
pageNum
,
pageSize
,
(
int
)
page
.
getTotalElements
(),
list
);
return
new
PageBeanNew
<>(
pageNum
,
pageSize
,
(
int
)
data
.
getTotalCount
(),
list
);
}
private
static
final
BeanCopier
BOOK_GROUP_QRCODE_COPIER
=
BeanCopier
.
create
(
Es7BookGroupQrcode
.
class
,
ESBookGroupQrcodeDTO
.
class
,
false
);
private
ESBookGroupQrcodeDTO
convert
(
Es7BookGroupQrcode
q
)
{
ESBookGroupQrcodeDTO
dto
=
new
ESBookGroupQrcodeDTO
();
BOOK_GROUP_QRCODE_COPIER
.
copy
(
q
,
dto
,
null
);
dto
.
setId
(
Long
.
parseLong
(
q
.
getId
()));
return
dto
;
}
private
static
final
BeanCopier
BOOK_GROUP_QRCODE_COPIER2
=
BeanCopier
.
create
(
ESBookGroupQrcodeDTO
.
class
,
Es7BookGroupQrcode
.
class
,
false
);
private
Es7BookGroupQrcode
convert
(
ESBookGroupQrcodeDTO
dto
)
{
Es7BookGroupQrcode
q
=
new
Es7BookGroupQrcode
();
BOOK_GROUP_QRCODE_COPIER2
.
copy
(
dto
,
q
,
null
);
q
.
setId
(
String
.
valueOf
(
dto
.
getId
()));
return
q
;
}
private
List
<
GroupQrcodeSearchDTO
>
convert
(
List
<
E
S
BookGroupQrcode
>
content
)
{
private
List
<
GroupQrcodeSearchDTO
>
convert
(
List
<
E
s7
BookGroupQrcode
>
content
)
{
if
(
CollUtil
.
isEmpty
(
content
)){
return
new
ArrayList
<>();
}
List
<
GroupQrcodeSearchDTO
>
list
=
new
ArrayList
<>(
content
.
size
());
for
(
E
S
BookGroupQrcode
esBookGroupQrcode
:
content
)
{
for
(
E
s7
BookGroupQrcode
esBookGroupQrcode
:
content
)
{
GroupQrcodeSearchDTO
groupQrcodeSearchDTO
=
new
GroupQrcodeSearchDTO
();
if
(
CollUtil
.
isNotEmpty
(
content
)){
BeanUtil
.
copyProperties
(
esBookGroupQrcode
,
groupQrcodeSearchDTO
);
...
...
@@ -311,7 +109,7 @@ public class ESBookGroupQrcodeBizImpl implements ESBookGroupQrcodeBiz {
}
else
{
groupQrcodeSearchDTO
.
setPurchaseAmount
(
new
BigDecimal
(
esBookGroupQrcode
.
getPurchaseAmount
()));
}
GroupQrcode
qrcode
=
groupQrcodeDao
.
getById
(
esBookGroupQrcode
.
getId
(
));
GroupQrcode
qrcode
=
groupQrcodeDao
.
getById
(
Long
.
parseLong
(
esBookGroupQrcode
.
getId
()
));
if
(
qrcode
!=
null
&&
qrcode
.
getQrcodeUrl
()!=
null
){
groupQrcodeSearchDTO
.
setQrcodeUrl
(
qrcode
.
getQrcodeUrl
());
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/es/facade/impl/ESBookGroupQrcodeFacadeImpl.java
View file @
8932cc7c
...
...
@@ -24,7 +24,6 @@ public class ESBookGroupQrcodeFacadeImpl {
@ApiOperation
(
"初始化数据"
)
@RequestMapping
(
value
=
"init"
,
method
=
RequestMethod
.
GET
)
public
ResponseDto
<?>
initData
(){
esBookGroupQrcodeBiz
.
initData
();
return
new
ResponseDto
<>();
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/es/repository/BookGroupQrcodeRepository.java
deleted
100644 → 0
View file @
df59b9f6
package
com
.
pcloud
.
book
.
es
.
repository
;
import
com.pcloud.book.es.entity.ESBookGroupQrcode
;
import
org.springframework.data.elasticsearch.repository.ElasticsearchRepository
;
/**
* @author guiq
*/
public
interface
BookGroupQrcodeRepository
extends
ElasticsearchRepository
<
ESBookGroupQrcode
,
Long
>
{
}
pcloud-service-book/src/main/java/com/pcloud/book/es/service/impl/ESBookGroupQrcodeServiceImpl.java
View file @
8932cc7c
...
...
@@ -2,16 +2,11 @@ package com.pcloud.book.es.service.impl;
import
com.pcloud.book.es.biz.ESBookGroupQrcodeBiz
;
import
com.pcloud.book.es.dto.ESBookGroupQrcodeDTO
;
import
com.pcloud.book.es.repository.BookGroupQrcodeRepository
;
import
com.pcloud.book.es.service.ESBookGroupQrcodeService
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.elasticsearch.core.ElasticsearchTemplate
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
...
...
@@ -22,8 +17,6 @@ public class ESBookGroupQrcodeServiceImpl implements ESBookGroupQrcodeService {
@Autowired
private
ElasticsearchTemplate
elasticsearchTemplate
;
@Autowired
private
BookGroupQrcodeRepository
bookGroupQrcodeRepository
;
@Autowired
private
ESBookGroupQrcodeBiz
esBookGroupQrcodeBiz
;
...
...
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