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
d91af14d
Commit
d91af14d
authored
Apr 17, 2020
by
裴大威
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feat-1002741' into 'master'
1002741书刊导入es See merge request rays/pcloud-book!638
parents
9ce8fb7b
59acfb01
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
533 additions
and
19 deletions
+533
-19
BookAppealBizImpl.java
...va/com/pcloud/book/appeal/biz/impl/BookAppealBizImpl.java
+7
-0
BookAdviserBizImpl.java
...ava/com/pcloud/book/book/biz/impl/BookAdviserBizImpl.java
+21
-0
BookBizImpl.java
.../main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
+79
-18
BookAdviserDao.java
...rc/main/java/com/pcloud/book/book/dao/BookAdviserDao.java
+2
-0
BookDao.java
...-book/src/main/java/com/pcloud/book/book/dao/BookDao.java
+9
-0
BookAdviserDaoImpl.java
...ava/com/pcloud/book/book/dao/impl/BookAdviserDaoImpl.java
+7
-0
BookDaoImpl.java
.../main/java/com/pcloud/book/book/dao/impl/BookDaoImpl.java
+27
-0
BookFacade.java
...src/main/java/com/pcloud/book/book/facade/BookFacade.java
+1
-0
ESBookAndAdviserBiz.java
...main/java/com/pcloud/book/es/biz/ESBookAndAdviserBiz.java
+20
-0
ESBookAndAdviserBizImpl.java
.../com/pcloud/book/es/biz/impl/ESBookAndAdviserBizImpl.java
+102
-0
ESBookAndAdviser.java
...main/java/com/pcloud/book/es/entity/ESBookAndAdviser.java
+100
-0
ESBookAndAdviserFacade.java
...ava/com/pcloud/book/es/facade/ESBookAndAdviserFacade.java
+54
-0
BookAndAdviserRepository.java
...m/pcloud/book/es/repository/BookAndAdviserRepository.java
+7
-0
Book.Mapper.xml
...rvice-book/src/main/resources/mapper/book/Book.Mapper.xml
+88
-1
BookAdviser.Mapper.xml
...ook/src/main/resources/mapper/book/BookAdviser.Mapper.xml
+9
-0
No files found.
pcloud-service-book/src/main/java/com/pcloud/book/appeal/biz/impl/BookAppealBizImpl.java
View file @
d91af14d
...
@@ -26,6 +26,7 @@ import com.pcloud.book.consumer.message.TemplateConsr;
...
@@ -26,6 +26,7 @@ import com.pcloud.book.consumer.message.TemplateConsr;
import
com.pcloud.book.consumer.user.AdviserConsr
;
import
com.pcloud.book.consumer.user.AdviserConsr
;
import
com.pcloud.book.consumer.user.BookcaseConsr
;
import
com.pcloud.book.consumer.user.BookcaseConsr
;
import
com.pcloud.book.consumer.user.ChannelConsr
;
import
com.pcloud.book.consumer.user.ChannelConsr
;
import
com.pcloud.book.es.biz.ESBookAndAdviserBiz
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
import
com.pcloud.book.util.common.ThreadPoolUtils
;
import
com.pcloud.book.util.common.ThreadPoolUtils
;
import
com.pcloud.common.core.constant.SceneCode
;
import
com.pcloud.common.core.constant.SceneCode
;
...
@@ -45,6 +46,7 @@ import org.springframework.stereotype.Component;
...
@@ -45,6 +46,7 @@ import org.springframework.stereotype.Component;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -103,6 +105,9 @@ public class BookAppealBizImpl implements BookAppealBiz {
...
@@ -103,6 +105,9 @@ public class BookAppealBizImpl implements BookAppealBiz {
@Autowired
@Autowired
private
BookGroupBiz
bookGroupBiz
;
private
BookGroupBiz
bookGroupBiz
;
@Autowired
private
ESBookAndAdviserBiz
esBookAndAdviserBiz
;
/**
/**
* 书刊申诉
* 书刊申诉
*/
*/
...
@@ -313,6 +318,7 @@ public class BookAppealBizImpl implements BookAppealBiz {
...
@@ -313,6 +318,7 @@ public class BookAppealBizImpl implements BookAppealBiz {
}
}
// 批量修改图书编辑关联关系
// 批量修改图书编辑关联关系
bookAdviserDao
.
insert
(
bookMainAdviserDto
.
getBookAdviserList
());
bookAdviserDao
.
insert
(
bookMainAdviserDto
.
getBookAdviserList
());
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookId
));
// 新增申诉编辑图书与二维码关联关系
// 新增申诉编辑图书与二维码关联关系
ThreadPoolUtils
.
OTHER_THREAD_POOL
.
execute
(()
->
{
ThreadPoolUtils
.
OTHER_THREAD_POOL
.
execute
(()
->
{
recoverBookQrcodeAssoc
(
bookId
,
bookAppealDto
.
getChannelId
(),
appealAdviserId
);
recoverBookQrcodeAssoc
(
bookId
,
bookAppealDto
.
getChannelId
(),
appealAdviserId
);
...
@@ -367,6 +373,7 @@ public class BookAppealBizImpl implements BookAppealBiz {
...
@@ -367,6 +373,7 @@ public class BookAppealBizImpl implements BookAppealBiz {
bookAdviser
.
setIsMainEditor
(
true
);
bookAdviser
.
setIsMainEditor
(
true
);
bookAdviser
.
setSecondTempletId
(
secondTempletId
);
bookAdviser
.
setSecondTempletId
(
secondTempletId
);
bookAdviserDao
.
insert
(
bookAdviser
);
bookAdviserDao
.
insert
(
bookAdviser
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookId
));
// 恢复申诉编辑图书与二维码关联关系
// 恢复申诉编辑图书与二维码关联关系
recoverBookQrcodeAssoc
(
bookId
,
channelId
,
declarant
);
recoverBookQrcodeAssoc
(
bookId
,
channelId
,
declarant
);
}
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookAdviserBizImpl.java
View file @
d91af14d
...
@@ -2,6 +2,7 @@ package com.pcloud.book.book.biz.impl;
...
@@ -2,6 +2,7 @@ package com.pcloud.book.book.biz.impl;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -11,6 +12,8 @@ import java.util.stream.Collectors;
...
@@ -11,6 +12,8 @@ import java.util.stream.Collectors;
import
com.pcloud.book.book.dto.BookRightsSettingDTO
;
import
com.pcloud.book.book.dto.BookRightsSettingDTO
;
import
com.pcloud.book.rightsSetting.biz.RightsSettingBiz
;
import
com.pcloud.book.rightsSetting.biz.RightsSettingBiz
;
import
com.pcloud.book.rightsSetting.dto.RightsSettingDto
;
import
com.pcloud.book.rightsSetting.dto.RightsSettingDto
;
import
com.pcloud.book.es.biz.ESBookAndAdviserBiz
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -111,6 +114,9 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -111,6 +114,9 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
@Autowired
@Autowired
private
RightsSettingBiz
rightsSettingBiz
;
private
RightsSettingBiz
rightsSettingBiz
;
@Autowired
private
ESBookAndAdviserBiz
esBookAndAdviserBiz
;
@Override
@Override
public
List
<
BookDto
>
listByAdviserId
(
Long
adviserId
)
{
public
List
<
BookDto
>
listByAdviserId
(
Long
adviserId
)
{
if
(
null
==
adviserId
)
{
if
(
null
==
adviserId
)
{
...
@@ -158,6 +164,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -158,6 +164,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
// 默认是主编辑
// 默认是主编辑
bookAdviser
.
setIsMainEditor
(
true
);
bookAdviser
.
setIsMainEditor
(
true
);
bookAdviserDao
.
insert
(
bookAdviser
);
bookAdviserDao
.
insert
(
bookAdviser
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookAdviser
.
getBookId
()));
}
catch
(
DataIntegrityViolationException
e
)
{
}
catch
(
DataIntegrityViolationException
e
)
{
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"该书刊已经被别的编辑添加过"
);
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"该书刊已经被别的编辑添加过"
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
...
@@ -245,6 +252,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -245,6 +252,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
}
}
LOGGER
.
info
(
"【书籍-编辑】删除编辑和书籍的推广信息,<START>.[bookId]="
+
bookId
);
LOGGER
.
info
(
"【书籍-编辑】删除编辑和书籍的推广信息,<START>.[bookId]="
+
bookId
);
bookAdviserDao
.
deleteByBook
(
bookId
);
bookAdviserDao
.
deleteByBook
(
bookId
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookId
));
}
}
/**
/**
...
@@ -260,6 +268,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -260,6 +268,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
try
{
try
{
LOGGER
.
info
(
"【书籍-编辑】批量删除书刊的推广信息,<START>.[bookIds]="
+
bookIds
.
toString
());
LOGGER
.
info
(
"【书籍-编辑】批量删除书刊的推广信息,<START>.[bookIds]="
+
bookIds
.
toString
());
bookAdviserDao
.
deleteByBooks
(
bookIds
);
bookAdviserDao
.
deleteByBooks
(
bookIds
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
bookIds
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"【书籍-编辑】批量删除书刊的推广信息,<ERROR>.[bookAdviserDao.deleteByBooks]"
+
e
.
getMessage
(),
e
);
LOGGER
.
error
(
"【书籍-编辑】批量删除书刊的推广信息,<ERROR>.[bookAdviserDao.deleteByBooks]"
+
e
.
getMessage
(),
e
);
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"批量删除书刊的推广信息失败"
);
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"批量删除书刊的推广信息失败"
);
...
@@ -379,6 +388,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -379,6 +388,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"channelId"
,
channelId
);
paramMap
.
put
(
"channelId"
,
channelId
);
bookAdviserDao
.
deleteByBookAndChannel
(
paramMap
);
bookAdviserDao
.
deleteByBookAndChannel
(
paramMap
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookId
));
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"【编辑书刊】根据书籍和渠道删除书籍编辑关联信息,<ERROR>.[deleteByBookAndChannel]:"
+
e
.
getMessage
(),
e
);
LOGGER
.
error
(
"【编辑书刊】根据书籍和渠道删除书籍编辑关联信息,<ERROR>.[deleteByBookAndChannel]:"
+
e
.
getMessage
(),
e
);
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"根据书籍和渠道删除书籍编辑关联信息失败"
);
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"根据书籍和渠道删除书籍编辑关联信息失败"
);
...
@@ -487,6 +497,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -487,6 +497,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
LOGGER
.
info
(
"【书籍-编辑】编辑设置书籍推广信息,<START>.[bookAdviser]="
+
bookAdviser
.
toString
());
LOGGER
.
info
(
"【书籍-编辑】编辑设置书籍推广信息,<START>.[bookAdviser]="
+
bookAdviser
.
toString
());
// 默认是主编辑
// 默认是主编辑
bookAdviserDao
.
insert
(
bookAdviser
);
bookAdviserDao
.
insert
(
bookAdviser
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookAdviser
.
getBookId
()));
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
LOGGER
.
warn
(
"【书籍-编辑】编辑设置书籍推广信息,<ERROR>.[BookAdviserDao.insert]"
+
e
.
getMessage
(),
e
);
LOGGER
.
warn
(
"【书籍-编辑】编辑设置书籍推广信息,<ERROR>.[BookAdviserDao.insert]"
+
e
.
getMessage
(),
e
);
}
}
...
@@ -559,6 +570,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -559,6 +570,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookAdviser
.
setDepLabelId
(
book
.
getDepLabelId
());
bookAdviser
.
setDepLabelId
(
book
.
getDepLabelId
());
bookAdviser
.
setPurLabelId
(
book
.
getPurLabelId
());
bookAdviser
.
setPurLabelId
(
book
.
getPurLabelId
());
bookAdviserDao
.
updateBookTemplet
(
bookAdviser
);
bookAdviserDao
.
updateBookTemplet
(
bookAdviser
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookAdviser
.
getBookId
()));
}
}
/**
/**
...
@@ -727,6 +739,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -727,6 +739,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
paramMap
.
put
(
"verLabelId"
,
verLabelId
);
paramMap
.
put
(
"verLabelId"
,
verLabelId
);
paramMap
.
put
(
"areaLabelId"
,
areaLabelId
);
paramMap
.
put
(
"areaLabelId"
,
areaLabelId
);
bookAdviserDao
.
updateBook4Adviser
(
paramMap
);
bookAdviserDao
.
updateBook4Adviser
(
paramMap
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookId
));
if
(
BookConstant
.
BOOK_ADVISER_DELETE
.
equals
(
deleteStatus
))
{
if
(
BookConstant
.
BOOK_ADVISER_DELETE
.
equals
(
deleteStatus
))
{
bookGroupBiz
.
deleteByBookId
(
bookId
,
channelId
,
adviserId
);
bookGroupBiz
.
deleteByBookId
(
bookId
,
channelId
,
adviserId
);
}
}
...
@@ -753,6 +766,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -753,6 +766,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
public
void
setBookTemplet
(
BookAdviser
bookAdviser
)
{
public
void
setBookTemplet
(
BookAdviser
bookAdviser
)
{
LOGGER
.
info
(
"设置图书使用模板【START】bookAdviser="
+
bookAdviser
);
LOGGER
.
info
(
"设置图书使用模板【START】bookAdviser="
+
bookAdviser
);
bookAdviserDao
.
updateBookTemplet
(
bookAdviser
);
bookAdviserDao
.
updateBookTemplet
(
bookAdviser
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookAdviser
.
getBookId
()));
}
}
@Override
@Override
@ParamLog
(
value
=
"获取图书基本信息"
,
isBefore
=
false
,
isAfterReturn
=
false
)
@ParamLog
(
value
=
"获取图书基本信息"
,
isBefore
=
false
,
isAfterReturn
=
false
)
...
@@ -777,6 +791,13 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
...
@@ -777,6 +791,13 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
public
void
refactorData
(
Long
parentId
,
Long
originTempletId
,
Long
secondTempletId
)
{
public
void
refactorData
(
Long
parentId
,
Long
originTempletId
,
Long
secondTempletId
)
{
LOGGER
.
info
(
"begin refactorData"
);
LOGGER
.
info
(
"begin refactorData"
);
int
effectRows
=
bookAdviserDao
.
updateBookBySecondTempletId
(
parentId
,
originTempletId
,
secondTempletId
);
int
effectRows
=
bookAdviserDao
.
updateBookBySecondTempletId
(
parentId
,
originTempletId
,
secondTempletId
);
try
{
List
<
Long
>
bookIds
=
bookAdviserDao
.
getBookIdsByTempletId
(
originTempletId
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
bookIds
);
}
catch
(
Exception
e
){
LOGGER
.
error
(
"更新编辑和书es失败"
+
originTempletId
);
}
LOGGER
.
info
(
"refactorData effect rows : {}"
,
effectRows
);
LOGGER
.
info
(
"refactorData effect rows : {}"
,
effectRows
);
LOGGER
.
info
(
"end refactorData"
);
LOGGER
.
info
(
"end refactorData"
);
}
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
View file @
d91af14d
...
@@ -43,6 +43,8 @@ import com.pcloud.book.consumer.user.ChannelConsr;
...
@@ -43,6 +43,8 @@ import com.pcloud.book.consumer.user.ChannelConsr;
import
com.pcloud.book.consumer.user.PartyConsr
;
import
com.pcloud.book.consumer.user.PartyConsr
;
import
com.pcloud.book.copyright.biz.BookAuthInfoBiz
;
import
com.pcloud.book.copyright.biz.BookAuthInfoBiz
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.es.biz.ESBookAndAdviserBiz
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.book.group.enums.JoinGroupTypeEnum
;
import
com.pcloud.book.group.enums.JoinGroupTypeEnum
;
...
@@ -70,6 +72,7 @@ import org.slf4j.Logger;
...
@@ -70,6 +72,7 @@ import org.slf4j.Logger;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Page
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
...
@@ -144,6 +147,8 @@ public class BookBizImpl implements BookBiz {
...
@@ -144,6 +147,8 @@ public class BookBizImpl implements BookBiz {
private
ExportConsr
exportConsr
;
private
ExportConsr
exportConsr
;
@Autowired
@Autowired
private
MessageConsr
messageConsr
;
private
MessageConsr
messageConsr
;
@Autowired
private
ESBookAndAdviserBiz
esBookAndAdviserBiz
;
/**
/**
* 创建书籍,同时建立与编辑的推广关系
* 创建书籍,同时建立与编辑的推广关系
...
@@ -164,6 +169,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -164,6 +169,7 @@ public class BookBizImpl implements BookBiz {
}
}
bookDao
.
insert
(
book
);
bookDao
.
insert
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
BookDto
bookDto
=
bookDao
.
getByIsbnAndSnum
(
book
.
getIsbn
(),
book
.
getSerialNumber
());
BookDto
bookDto
=
bookDao
.
getByIsbnAndSnum
(
book
.
getIsbn
(),
book
.
getSerialNumber
());
bookDto
.
setBookId
(
book
.
getBookId
());
bookDto
.
setBookId
(
book
.
getBookId
());
bookDto
.
setTempletId
(
book
.
getTempletId
());
bookDto
.
setTempletId
(
book
.
getTempletId
());
...
@@ -212,6 +218,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -212,6 +218,7 @@ public class BookBizImpl implements BookBiz {
checkIsUpdateCoverImgAndSendTopic
(
bookDto
,
book
.
getCoverImg
());
checkIsUpdateCoverImgAndSendTopic
(
bookDto
,
book
.
getCoverImg
());
checkIsUpdateBookNameAndSendTopic
(
bookDto
,
book
.
getBookName
());
checkIsUpdateBookNameAndSendTopic
(
bookDto
,
book
.
getBookName
());
bookDao
.
update
(
book
);
bookDao
.
update
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
// 清除redis中数据
// 清除redis中数据
bookCache
.
clearRedisByBook
(
book
.
getBookId
(),
book
.
getIsbn
(),
book
.
getSerialNumber
());
bookCache
.
clearRedisByBook
(
book
.
getBookId
(),
book
.
getIsbn
(),
book
.
getSerialNumber
());
}
}
...
@@ -250,6 +257,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -250,6 +257,7 @@ public class BookBizImpl implements BookBiz {
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"默认图书不能修改!"
);
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"默认图书不能修改!"
);
}
}
bookDao
.
updateCoverImg
(
book
);
bookDao
.
updateCoverImg
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
checkIsUpdateCoverImgAndSendTopic
(
bookDto
,
book
.
getCoverImg
());
checkIsUpdateCoverImgAndSendTopic
(
bookDto
,
book
.
getCoverImg
());
// 清除redis中数据
// 清除redis中数据
bookCache
.
clearRedisByBook
(
bookDto
.
getBookId
(),
bookDto
.
getIsbn
(),
bookDto
.
getSerialNumber
());
bookCache
.
clearRedisByBook
(
bookDto
.
getBookId
(),
bookDto
.
getIsbn
(),
bookDto
.
getSerialNumber
());
...
@@ -270,6 +278,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -270,6 +278,7 @@ public class BookBizImpl implements BookBiz {
}
}
// 修改书籍
// 修改书籍
bookDao
.
update
(
book
);
bookDao
.
update
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
BookDto
bookDto
=
new
BookDto
();
BookDto
bookDto
=
new
BookDto
();
bookDto
.
setBookId
(
book
.
getBookId
());
bookDto
.
setBookId
(
book
.
getBookId
());
bookDto
.
setTempletId
(
book
.
getTempletId
());
bookDto
.
setTempletId
(
book
.
getTempletId
());
...
@@ -347,6 +356,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -347,6 +356,7 @@ public class BookBizImpl implements BookBiz {
bookAdviserBiz
.
deleteByBook
(
bookId
);
bookAdviserBiz
.
deleteByBook
(
bookId
);
// 删除图书
// 删除图书
Integer
result
=
bookDao
.
deleteBook
(
bookId
,
deleteUserId
);
Integer
result
=
bookDao
.
deleteBook
(
bookId
,
deleteUserId
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
if
(
result
==
0
)
{
if
(
result
==
0
)
{
throw
BookBizException
.
DB_DELETE_RESULT_0
;
throw
BookBizException
.
DB_DELETE_RESULT_0
;
}
}
...
@@ -381,6 +391,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -381,6 +391,7 @@ public class BookBizImpl implements BookBiz {
}
}
Integer
result
=
bookDao
.
deleteByIds
(
bookIds
,
deleteUserId
);
Integer
result
=
bookDao
.
deleteByIds
(
bookIds
,
deleteUserId
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
bookIds
);
if
(
result
==
0
)
{
if
(
result
==
0
)
{
throw
BookBizException
.
DB_DELETE_RESULT_0
;
throw
BookBizException
.
DB_DELETE_RESULT_0
;
}
}
...
@@ -429,6 +440,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -429,6 +440,7 @@ public class BookBizImpl implements BookBiz {
bookInfo
.
setCreatedUser
(
0
l
);
bookInfo
.
setCreatedUser
(
0
l
);
try
{
try
{
bookDao
.
insert
(
bookInfo
);
bookDao
.
insert
(
bookInfo
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookInfo
.
getBookId
()));
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"书刊已存在"
+
e
.
getMessage
(),
e
);
LOGGER
.
error
(
"书刊已存在"
+
e
.
getMessage
(),
e
);
}
}
...
@@ -1441,6 +1453,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -1441,6 +1453,7 @@ public class BookBizImpl implements BookBiz {
if
(
bookDto
==
null
)
{
if
(
bookDto
==
null
)
{
// 图书不存在,新增图书
// 图书不存在,新增图书
bookDao
.
insert
(
book
);
bookDao
.
insert
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
}
else
{
}
else
{
// 图书已存在
// 图书已存在
book
.
setLastModifiedUser
(
book
.
getCreatedUser
());
book
.
setLastModifiedUser
(
book
.
getCreatedUser
());
...
@@ -1466,6 +1479,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -1466,6 +1479,7 @@ public class BookBizImpl implements BookBiz {
checkIsUpdateBookNameAndSendTopic
(
bookDto
,
book
.
getBookName
());
checkIsUpdateBookNameAndSendTopic
(
bookDto
,
book
.
getBookName
());
// 修改图书基本信息
// 修改图书基本信息
bookDao
.
updateByAdviser
(
book
);
bookDao
.
updateByAdviser
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
// 周任务书刊埋点
// 周任务书刊埋点
mainLineConsr
.
sendAddBookTask
(
bookDto
.
getBookId
(),
book
.
getCreatedUser
());
mainLineConsr
.
sendAddBookTask
(
bookDto
.
getBookId
(),
book
.
getCreatedUser
());
// 清除redis中数据
// 清除redis中数据
...
@@ -1502,6 +1516,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -1502,6 +1516,7 @@ public class BookBizImpl implements BookBiz {
checkIsUpdateBookNameAndSendTopic
(
bookDto
,
book
.
getBookName
());
checkIsUpdateBookNameAndSendTopic
(
bookDto
,
book
.
getBookName
());
// 修改图书基本信息
// 修改图书基本信息
bookDao
.
updateByAdviser
(
book
);
bookDao
.
updateByAdviser
(
book
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
book
.
getBookId
()));
// 清除redis中数据
// 清除redis中数据
bookCache
.
clearRedisByBook
(
book
.
getBookId
(),
book
.
getIsbn
(),
book
.
getSerialNumber
());
bookCache
.
clearRedisByBook
(
book
.
getBookId
(),
book
.
getIsbn
(),
book
.
getSerialNumber
());
//修改图书类型
//修改图书类型
...
@@ -1575,6 +1590,7 @@ public class BookBizImpl implements BookBiz {
...
@@ -1575,6 +1590,7 @@ public class BookBizImpl implements BookBiz {
Map
<
String
,
Object
>
paramMap
=
Maps
.
newHashMap
();
Map
<
String
,
Object
>
paramMap
=
Maps
.
newHashMap
();
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"bookId"
,
bookId
);
bookDao
.
updateTimeById
(
paramMap
);
bookDao
.
updateTimeById
(
paramMap
);
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookId
));
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
...
@@ -1593,6 +1609,11 @@ public class BookBizImpl implements BookBiz {
...
@@ -1593,6 +1609,11 @@ public class BookBizImpl implements BookBiz {
paramMap
.
put
(
"bookIds"
,
bookAdviserUpdateTimeDTO
.
getBookIds
());
paramMap
.
put
(
"bookIds"
,
bookAdviserUpdateTimeDTO
.
getBookIds
());
}
}
bookDao
.
updateTimeByIds
(
paramMap
);
bookDao
.
updateTimeByIds
(
paramMap
);
if
(
null
!=
bookAdviserUpdateTimeDTO
.
getBookId
())
{
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
Collections
.
singletonList
(
bookAdviserUpdateTimeDTO
.
getBookId
()));
}
else
{
esBookAndAdviserBiz
.
updateBookAndAdviserToES
(
bookAdviserUpdateTimeDTO
.
getBookIds
());
}
}
}
@ParamLog
(
description
=
"获取书刊信息"
)
@ParamLog
(
description
=
"获取书刊信息"
)
...
@@ -1938,26 +1959,63 @@ public class BookBizImpl implements BookBiz {
...
@@ -1938,26 +1959,63 @@ public class BookBizImpl implements BookBiz {
@ParamLog
(
"获取编辑书刊H5"
)
@ParamLog
(
"获取编辑书刊H5"
)
@Override
@Override
public
PageBeanNew
<
BookDto
>
getAdviserBooks4H5
(
String
keyword
,
Long
templetId
,
Long
secondTempletId
,
Integer
currentPage
,
Integer
numPerPage
)
{
public
PageBeanNew
<
BookDto
>
getAdviserBooks4H5
(
String
keyword
,
Long
templetId
,
Long
secondTempletId
,
Integer
currentPage
,
Integer
numPerPage
)
{
String
redisKey
=
BookConstant
.
ADVISER_BOOK_CACHE
+
"_"
+
keyword
+
"_"
+
templetId
+
"_"
+
secondTempletId
+
"_"
+
currentPage
+
"_"
+
numPerPage
;
Page
<
ESBookAndAdviser
>
esPage
=
esBookAndAdviserBiz
.
getAdviserBooks4ES
(
keyword
,
templetId
,
secondTempletId
,
currentPage
,
numPerPage
);
String
data
=
JedisClusterUtils
.
get
(
redisKey
);
List
<
ESBookAndAdviser
>
esBookAndAdvisers
=
esPage
.
getContent
();
//加缓存
if
(
ListUtils
.
isEmpty
(
esBookAndAdvisers
)){
if
(
StringUtil
.
isNotBlank
(
data
)){
return
new
PageBeanNew
<>();
PageBeanNew
pageBeanNew
=
JSONObject
.
parseObject
(
data
,
PageBeanNew
.
class
);
}
if
(
null
!=
pageBeanNew
)
{
List
<
BookDto
>
bookDtos
=
changeToBookDto
(
esBookAndAdvisers
);
return
pageBeanNew
;
fillOtherBookInfo
(
bookDtos
);
}
fillBookInfo
(
bookDtos
);
PageBeanNew
<
BookDto
>
page
=
new
PageBeanNew
<>(
currentPage
,
numPerPage
,(
int
)
esPage
.
getTotalElements
(),
bookDtos
);
return
page
;
}
@ParamLog
(
"转化为bookDto"
)
private
List
<
BookDto
>
changeToBookDto
(
List
<
ESBookAndAdviser
>
esBookAndAdvisers
)
{
List
<
BookDto
>
bookDtos
=
new
ArrayList
<>();
for
(
ESBookAndAdviser
esBookAndAdviser:
esBookAndAdvisers
){
BookDto
bookDto
=
new
BookDto
();
bookDto
.
setBookId
(
esBookAndAdviser
.
getBookId
()==
null
?
null
:
new
Long
(
esBookAndAdviser
.
getBookId
()));
bookDto
.
setBookAdviserId
(
esBookAndAdviser
.
getBookAdviserId
()==
null
?
null
:
new
Long
(
esBookAndAdviser
.
getBookAdviserId
()));
bookDto
.
setAdviserId
(
esBookAndAdviser
.
getAdviserId
()==
null
?
null
:
new
Long
(
esBookAndAdviser
.
getAdviserId
()));
bookDto
.
setChannelId
(
esBookAndAdviser
.
getChannelId
()==
null
?
null
:
new
Long
(
esBookAndAdviser
.
getChannelId
()));
bookDto
.
setTempletId
(
esBookAndAdviser
.
getTempletId
()==
null
?
null
:
new
Long
(
esBookAndAdviser
.
getTempletId
()));
bookDto
.
setSecondTempletId
(
esBookAndAdviser
.
getSecondTempletId
()==
null
?
null
:
new
Long
(
esBookAndAdviser
.
getSecondTempletId
()));
bookDto
.
setIsMainEditor
(
esBookAndAdviser
.
getIsMainEditor
());
bookDto
.
setTypeCode
(
esBookAndAdviser
.
getTypeCode
());
bookDto
.
setIsbn
(
esBookAndAdviser
.
getIsbn
());
bookDto
.
setBookName
(
esBookAndAdviser
.
getBookName
());
bookDto
.
setLastModifiedDate
(
esBookAndAdviser
.
getLastModifiedDate
());
bookDtos
.
add
(
bookDto
);
}
}
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
return
bookDtos
;
map
.
put
(
"keyword"
,
keyword
);
}
map
.
put
(
"templetId"
,
templetId
);
map
.
put
(
"secondTempletId"
,
secondTempletId
);
PageBeanNew
<
BookDto
>
page
=
bookDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"getAdviserBooks4H5"
);
private
void
fillOtherBookInfo
(
List
<
BookDto
>
bookDtos
)
{
fillBookInfo
(
page
.
getRecordList
());
if
(
ListUtils
.
isEmpty
(
bookDtos
)){
if
(!
ListUtils
.
isEmpty
(
page
.
getRecordList
()))
{
return
;
JedisClusterUtils
.
set
(
redisKey
,
JSONObject
.
toJSONString
(
page
),
3600
);
}
}
return
page
;
List
<
Long
>
bookIds
=
bookDtos
.
stream
().
filter
(
s
->
s
.
getBookId
()!=
null
).
map
(
BookDto:
:
getBookId
).
distinct
().
collect
(
Collectors
.
toList
());
Map
<
Long
,
BookDto
>
bookDtoMap
=
bookDao
.
getMapByBookIds
(
bookIds
);
for
(
BookDto
dto:
bookDtos
){
BookDto
bookDto
=
bookDtoMap
.
get
(
dto
.
getBookId
());
if
(
bookDto
==
null
){
continue
;
}
dto
.
setRemark
(
bookDto
.
getRemark
());
dto
.
setAuthor
(
bookDto
.
getAuthor
());
dto
.
setPublish
(
bookDto
.
getPublish
());
dto
.
setPublishDate
(
bookDto
.
getPublishDate
());
dto
.
setCoverImg
(
bookDto
.
getCoverImg
());
dto
.
setOriginName
(
bookDto
.
getOriginName
());
dto
.
setBookPrice
(
bookDto
.
getBookPrice
());
dto
.
setIssn
(
bookDto
.
getIssn
());
dto
.
setSerialNumber
(
bookDto
.
getSerialNumber
());
dto
.
setTypeName
(
bookDto
.
getTypeName
());
dto
.
setUniqueNumber
(
"BK"
+
dto
.
getBookId
());
}
}
}
@Override
@Override
...
@@ -1996,9 +2054,12 @@ public class BookBizImpl implements BookBiz {
...
@@ -1996,9 +2054,12 @@ public class BookBizImpl implements BookBiz {
@ParamLog
(
"获取书刊"
)
@ParamLog
(
"获取书刊"
)
@Override
@Override
public
BookDto
getAdviserBook
(
Long
bookId
,
Long
adviserId
,
Long
channelId
)
{
public
BookDto
getAdviserBook
(
Long
bookId
,
Long
adviserId
,
Long
channelId
)
{
if
(
bookId
==
null
||
adviserId
==
null
||
channelId
==
null
){
if
(
bookId
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数有误"
);
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数有误"
);
}
}
if
(
adviserId
==
null
||
channelId
==
null
||
adviserId
<=
0
||
channelId
<=
0
){
return
bookDao
.
getBaseById
(
bookId
);
}
Map
<
String
,
Object
>
paramMap
=
Maps
.
newHashMap
();
Map
<
String
,
Object
>
paramMap
=
Maps
.
newHashMap
();
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"adviserId"
,
adviserId
);
paramMap
.
put
(
"adviserId"
,
adviserId
);
...
...
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/BookAdviserDao.java
View file @
d91af14d
...
@@ -252,4 +252,6 @@ public interface BookAdviserDao extends BaseDao<BookAdviser> {
...
@@ -252,4 +252,6 @@ public interface BookAdviserDao extends BaseDao<BookAdviser> {
* @return
* @return
*/
*/
long
setIsPrint
(
BookAdviser
bookAdviser
);
long
setIsPrint
(
BookAdviser
bookAdviser
);
List
<
Long
>
getBookIdsByTempletId
(
Long
templetId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/BookDao.java
View file @
d91af14d
...
@@ -9,6 +9,7 @@ import com.pcloud.book.book.dto.BookInfoAnalysicsDTO;
...
@@ -9,6 +9,7 @@ import com.pcloud.book.book.dto.BookInfoAnalysicsDTO;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.vo.BookSaleVO
;
import
com.pcloud.book.book.vo.BookSaleVO
;
import
com.pcloud.book.book.vo.SearchBookVO
;
import
com.pcloud.book.book.vo.SearchBookVO
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
com.pcloud.common.core.dao.BaseDao
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
import
java.util.List
;
...
@@ -337,4 +338,12 @@ public interface BookDao extends BaseDao<Book> {
...
@@ -337,4 +338,12 @@ public interface BookDao extends BaseDao<Book> {
void
updateBookQualifyInfo
(
Map
<
String
,
Object
>
map
);
void
updateBookQualifyInfo
(
Map
<
String
,
Object
>
map
);
SearchBookVO
getBookInfoByBookGroupId
(
Map
<
String
,
Object
>
paramMap
);
SearchBookVO
getBookInfoByBookGroupId
(
Map
<
String
,
Object
>
paramMap
);
Integer
count
();
List
<
ESBookAndAdviser
>
findAllBookAndAdviser
(
Long
maxId
,
Integer
offset
);
List
<
ESBookAndAdviser
>
findBookAndAdviserByBookIds
(
List
<
Long
>
bookIds
);
Map
<
Long
,
BookDto
>
getMapByBookIds
(
List
<
Long
>
bookIds
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/BookAdviserDaoImpl.java
View file @
d91af14d
...
@@ -251,4 +251,11 @@ public class BookAdviserDaoImpl extends BaseDaoImpl<BookAdviser> implements Book
...
@@ -251,4 +251,11 @@ public class BookAdviserDaoImpl extends BaseDaoImpl<BookAdviser> implements Book
public
long
setIsPrint
(
BookAdviser
bookAdviser
)
{
public
long
setIsPrint
(
BookAdviser
bookAdviser
)
{
return
super
.
getSqlSession
().
update
(
getStatement
(
"setIsPrint"
),
bookAdviser
);
return
super
.
getSqlSession
().
update
(
getStatement
(
"setIsPrint"
),
bookAdviser
);
}
}
@Override
public
List
<
Long
>
getBookIdsByTempletId
(
Long
templetId
)
{
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"templetId"
,
templetId
);
return
getSqlSession
().
selectList
(
getStatement
(
"getBookIdsByTempletId"
),
map
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/BookDaoImpl.java
View file @
d91af14d
...
@@ -11,6 +11,7 @@ import com.pcloud.book.book.dto.BookInfoAnalysicsDTO;
...
@@ -11,6 +11,7 @@ import com.pcloud.book.book.dto.BookInfoAnalysicsDTO;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.vo.BookSaleVO
;
import
com.pcloud.book.book.vo.BookSaleVO
;
import
com.pcloud.book.book.vo.SearchBookVO
;
import
com.pcloud.book.book.vo.SearchBookVO
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.stereotype.Repository
;
...
@@ -344,4 +345,30 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
...
@@ -344,4 +345,30 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
public
SearchBookVO
getBookInfoByBookGroupId
(
Map
<
String
,
Object
>
paramMap
)
{
public
SearchBookVO
getBookInfoByBookGroupId
(
Map
<
String
,
Object
>
paramMap
)
{
return
super
.
getSqlSession
().
selectOne
(
super
.
getStatement
(
"getBookInfoByBookGroupId"
),
paramMap
);
return
super
.
getSqlSession
().
selectOne
(
super
.
getStatement
(
"getBookInfoByBookGroupId"
),
paramMap
);
}
}
@Override
public
Integer
count
()
{
return
super
.
getSqlSession
().
selectOne
(
getStatement
(
"count"
));
}
@Override
public
List
<
ESBookAndAdviser
>
findAllBookAndAdviser
(
Long
maxId
,
Integer
offset
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"maxId"
,
maxId
);
map
.
put
(
"offset"
,
offset
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"findAllBookAndAdviser"
),
map
);
}
@Override
public
List
<
ESBookAndAdviser
>
findBookAndAdviserByBookIds
(
List
<
Long
>
bookIds
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"bookIds"
,
bookIds
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"findBookAndAdviserByBookIds"
),
map
);
}
@Override
public
Map
<
Long
,
BookDto
>
getMapByBookIds
(
List
<
Long
>
bookIds
)
{
return
super
.
getSqlSession
().
selectMap
(
super
.
getStatement
(
"getMapByBookIds"
),
bookIds
,
"bookId"
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/facade/BookFacade.java
View file @
d91af14d
...
@@ -741,4 +741,5 @@ public interface BookFacade {
...
@@ -741,4 +741,5 @@ public interface BookFacade {
public
ResponseDto
<?>
getBookInfoByBookGroupId
(
public
ResponseDto
<?>
getBookInfoByBookGroupId
(
@RequestParam
(
value
=
"bookGroupId"
)
Long
bookGroupId
@RequestParam
(
value
=
"bookGroupId"
)
Long
bookGroupId
)
throws
PermissionException
,
JsonParseException
,
BizException
;
)
throws
PermissionException
,
JsonParseException
,
BizException
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/es/biz/ESBookAndAdviserBiz.java
0 → 100644
View file @
d91af14d
package
com
.
pcloud
.
book
.
es
.
biz
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
org.springframework.data.domain.Page
;
import
java.util.List
;
/**
* @Description
* @Author ruansiyuan
* @Date 2020/4/13 12:21
**/
public
interface
ESBookAndAdviserBiz
{
void
addAllBookAndAdviserToES
();
void
updateBookAndAdviserToES
(
List
<
Long
>
bookIds
);
Page
<
ESBookAndAdviser
>
getAdviserBooks4ES
(
String
keyword
,
Long
templetId
,
Long
secondTempletId
,
Integer
currentPage
,
Integer
numPerPage
);
}
pcloud-service-book/src/main/java/com/pcloud/book/es/biz/impl/ESBookAndAdviserBizImpl.java
0 → 100644
View file @
d91af14d
package
com
.
pcloud
.
book
.
es
.
biz
.
impl
;
import
com.pcloud.book.book.dao.BookDao
;
import
com.pcloud.book.es.biz.ESBookAndAdviserBiz
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
com.pcloud.book.es.repository.BookAndAdviserRepository
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
org.elasticsearch.index.query.BoolQueryBuilder
;
import
org.elasticsearch.index.query.QueryBuilders
;
import
org.elasticsearch.index.query.TermQueryBuilder
;
import
org.elasticsearch.index.query.WildcardQueryBuilder
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
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.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
import
java.util.Objects
;
/**
* @Description
* @Author ruansiyuan
* @Date 2020/4/13 12:21
**/
@Component
(
"esBookAndAdviserBiz"
)
public
class
ESBookAndAdviserBizImpl
implements
ESBookAndAdviserBiz
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
ESBookAndAdviserBizImpl
.
class
);
@Autowired
private
BookDao
bookDao
;
@Autowired
private
BookAndAdviserRepository
bookAndAdviserRepository
;
@ParamLog
(
"导入全部book和bookAdviser"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
addAllBookAndAdviserToES
()
{
Integer
count
=
bookDao
.
count
();
LOGGER
.
info
(
"总数:"
+
count
);
if
(
null
==
count
||
count
<=
0
)
{
return
;
}
Long
maxId
=
0L
;
Integer
index
=
0
;
Integer
offset
=
10000
;
while
(
index
*
offset
<
count
)
{
List
<
ESBookAndAdviser
>
list
=
bookDao
.
findAllBookAndAdviser
(
maxId
,
offset
);
if
(
ListUtils
.
isEmpty
(
list
))
{
break
;
}
bookAndAdviserRepository
.
save
(
list
);
maxId
=
Long
.
valueOf
(
list
.
get
(
list
.
size
()
-
1
).
getBookId
());
index
+=
1
;
}
}
@ParamLog
(
"更新书和编辑书"
)
@Override
public
void
updateBookAndAdviserToES
(
List
<
Long
>
bookIds
)
{
if
(
bookIds
==
null
){
return
;
}
try
{
List
<
ESBookAndAdviser
>
list
=
bookDao
.
findBookAndAdviserByBookIds
(
bookIds
);
if
(
ListUtils
.
isEmpty
(
list
)){
return
;
}
bookAndAdviserRepository
.
save
(
list
);
}
catch
(
Exception
e
){
LOGGER
.
error
(
"更新书和编辑书出错:"
+
bookIds
.
toString
());
}
}
@Override
public
Page
<
ESBookAndAdviser
>
getAdviserBooks4ES
(
String
keyword
,
Long
templetId
,
Long
secondTempletId
,
Integer
currentPage
,
Integer
numPerPage
)
{
BoolQueryBuilder
boolQueryBuilder
=
QueryBuilders
.
boolQuery
()
.
filter
(
QueryBuilders
.
termQuery
(
"isBookDelete"
,
0
))
.
filter
(
Objects
.
isNull
(
templetId
)
?
QueryBuilders
.
boolQuery
()
:
QueryBuilders
.
termQuery
(
"templetId"
,
templetId
))
.
filter
(
Objects
.
isNull
(
secondTempletId
)
?
QueryBuilders
.
boolQuery
()
:
QueryBuilders
.
termQuery
(
"secondTempletId"
,
secondTempletId
));
BoolQueryBuilder
should
=
QueryBuilders
.
boolQuery
()
.
should
(
StringUtil
.
isEmpty
(
keyword
)
?
QueryBuilders
.
boolQuery
()
:
QueryBuilders
.
wildcardQuery
(
"bookName"
,
"*"
+
keyword
+
"*"
))
.
should
(
StringUtil
.
isEmpty
(
keyword
)
?
QueryBuilders
.
boolQuery
()
:
QueryBuilders
.
wildcardQuery
(
"isbn"
,
"*"
+
keyword
+
"*"
));
BoolQueryBuilder
should1
=
QueryBuilders
.
boolQuery
()
.
should
(
QueryBuilders
.
termQuery
(
"isBookAdviserDelete"
,
0
))
.
should
(
QueryBuilders
.
termQuery
(
"isAdviserBook"
,
0
));
boolQueryBuilder
.
must
(
should
);
boolQueryBuilder
.
must
(
should1
);
Sort
sort
=
new
Sort
(
Sort
.
Direction
.
DESC
,
"isAdviserBook"
,
"lastModifiedDate"
,
"bookId"
);
PageRequest
pageRequest
=
new
PageRequest
(
currentPage
,
numPerPage
,
sort
);
Page
<
ESBookAndAdviser
>
search
=
bookAndAdviserRepository
.
search
(
boolQueryBuilder
,
pageRequest
);
return
search
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/es/entity/ESBookAndAdviser.java
0 → 100644
View file @
d91af14d
package
com
.
pcloud
.
book
.
es
.
entity
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.elasticsearch.annotations.Document
;
import
org.springframework.data.elasticsearch.annotations.Field
;
import
org.springframework.data.elasticsearch.annotations.FieldIndex
;
import
org.springframework.data.elasticsearch.annotations.FieldType
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @Description
* @Author ruansiyuan
* @Date 2020/4/13 14:29
**/
@Data
@Document
(
indexName
=
"book"
,
type
=
"book_and_adviser"
)
public
class
ESBookAndAdviser
{
/**
* 书籍标识
*/
@Id
private
String
bookId
;
/**
* 编辑书id
*/
private
String
bookAdviserId
;
/**
* 编辑标识
*/
private
String
adviserId
;
/**
* 渠道标识
*/
private
String
channelId
;
/**
* 模板标识
*/
private
String
templetId
;
/**
* 第二级类型
*/
private
String
secondTempletId
;
/**
* 是否是主编辑
*/
private
Boolean
isMainEditor
;
/**
* 类型编码
*/
private
String
typeCode
;
/**
* 书籍ISBN码
*/
@Field
(
type
=
FieldType
.
String
,
index
=
FieldIndex
.
not_analyzed
)
private
String
isbn
;
/**
* 书籍名称
*/
@Field
(
type
=
FieldType
.
String
,
index
=
FieldIndex
.
not_analyzed
)
private
String
bookName
;
/**
* 是否删除(书)
*/
private
String
isBookDelete
;
/**
* 是否删除(编辑书)
*/
private
String
isBookAdviserDelete
;
/**
* 最后更新时间
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
lastModifiedDate
;
/**
* 是否编辑书刊
*/
private
String
isAdviserBook
;
}
pcloud-service-book/src/main/java/com/pcloud/book/es/facade/ESBookAndAdviserFacade.java
0 → 100644
View file @
d91af14d
package
com
.
pcloud
.
book
.
es
.
facade
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.es.biz.ESBookAndAdviserBiz
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Page
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* @Description
* @Author ruansiyuan
* @Date 2019/6/13 16:43
**/
@RestController
(
"eesBookAndAdviserFacade"
)
@RequestMapping
(
"esBookAndAdviser"
)
public
class
ESBookAndAdviserFacade
{
@Autowired
private
ESBookAndAdviserBiz
esBookAndAdviserBiz
;
@ApiOperation
(
"添加所有的书和编辑书到es"
)
@PostMapping
(
"addAllBookAndAdviserToES"
)
public
ResponseDto
<?>
addAllBookAndAdviserToES
()
throws
BizException
{
esBookAndAdviserBiz
.
addAllBookAndAdviserToES
();
return
new
ResponseDto
<>();
}
@ApiOperation
(
"从es中获取编辑书"
)
@GetMapping
(
"getAdviserBooks4ES"
)
public
List
<
ESBookAndAdviser
>
getAdviserBooks4ES
(
@RequestParam
(
value
=
"keyword"
,
required
=
false
)
String
keyword
,
@RequestParam
(
value
=
"templetId"
,
required
=
false
)
Long
templetId
,
@RequestParam
(
value
=
"secondTempletId"
,
required
=
false
)
Long
secondTempletId
,
@RequestParam
(
value
=
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
value
=
"numPerPage"
)
Integer
numPerPage
)
throws
BizException
{
if
(
currentPage
==
null
||
numPerPage
==
null
||
currentPage
<
0
||
numPerPage
<
0
)
{
throw
BookBizException
.
PAGE_PARAM_DELETION
;
}
return
esBookAndAdviserBiz
.
getAdviserBooks4ES
(
keyword
,
templetId
,
secondTempletId
,
currentPage
,
numPerPage
).
getContent
();
}
}
pcloud-service-book/src/main/java/com/pcloud/book/es/repository/BookAndAdviserRepository.java
0 → 100644
View file @
d91af14d
package
com
.
pcloud
.
book
.
es
.
repository
;
import
com.pcloud.book.es.entity.ESBookAndAdviser
;
import
org.springframework.data.elasticsearch.repository.ElasticsearchRepository
;
public
interface
BookAndAdviserRepository
extends
ElasticsearchRepository
<
ESBookAndAdviser
,
String
>
{
}
pcloud-service-book/src/main/resources/mapper/book/Book.Mapper.xml
View file @
d91af14d
...
@@ -71,7 +71,7 @@
...
@@ -71,7 +71,7 @@
<collection
property=
"bookFunds"
column=
"BOOK_ID"
ofType=
"bookFundDto"
<collection
property=
"bookFunds"
column=
"BOOK_ID"
ofType=
"bookFundDto"
select=
"com.pcloud.book.book.dao.impl.BookFundDaoImpl.getByBookId"
/>
select=
"com.pcloud.book.book.dao.impl.BookFundDaoImpl.getByBookId"
/>
</resultMap>
</resultMap>
<!-- 新增书籍信息-->
<!-- 新增书籍信息-->
<insert
id=
"insert"
parameterType=
"book"
useGeneratedKeys=
"true"
keyProperty=
"bookId"
flushCache=
"true"
>
<insert
id=
"insert"
parameterType=
"book"
useGeneratedKeys=
"true"
keyProperty=
"bookId"
flushCache=
"true"
>
INSERT INTO `BOOK` (
INSERT INTO `BOOK` (
...
@@ -2237,4 +2237,90 @@
...
@@ -2237,4 +2237,90 @@
limit 1
limit 1
</select>
</select>
<!--获取全表数量-->
<select
id=
"count"
resultType=
"Integer"
>
select count(1) from BOOK
</select>
<!--查询所有-->
<select
id=
"findAllBookAndAdviser"
parameterType=
"map"
resultType=
"com.pcloud.book.es.entity.ESBookAndAdviser"
>
SELECT
B.BOOK_ID bookId,
B.ISBN isbn,
B.BOOK_NAME bookName,
B.IS_DELETE isBookDelete,
B.TYPE_CODE typeCode,
IF(A.IS_DELETE is NULL, 0, A.IS_DELETE) isBookAdviserDelete,
IF(A.CHANNEL_ID is NULL, 0, A.CHANNEL_ID) channelId,
IF(A.ADVISER_ID is NULL, 0, A.ADVISER_ID) adviserId,
IF(A.IS_MAIN_EDITOR is NULL, "", A.IS_MAIN_EDITOR) isMainEditor,
IF(A.TEMPLET_ID is NULL, 0, A.TEMPLET_ID) templetId,
IF(A.SECOND_TEMPLET_ID is NULL, 0, A.SECOND_TEMPLET_ID) secondTempletId,
IF(A.LAST_MODIFIED_DATE is NULL, "2001-01-01 00:00:00", A.LAST_MODIFIED_DATE) lastModifiedDate,
IF(A.BOOK_ADVISER_ID is NULL, 0, A.BOOK_ADVISER_ID) bookAdviserId,
IF(A.BOOK_ADVISER_ID is NULL, 0, 1) isAdviserBook
FROM
BOOK B
LEFT JOIN BOOK_ADVISER A ON A.BOOK_ID = B.BOOK_ID and A.IS_MAIN_EDITOR=1
WHERE B.BOOK_ID>#{maxId}
GROUP BY B.BOOK_ID
limit #{offset}
</select>
<!--根据书id集合查询-->
<select
id=
"findBookAndAdviserByBookIds"
parameterType=
"map"
resultType=
"com.pcloud.book.es.entity.ESBookAndAdviser"
>
SELECT
B.BOOK_ID bookId,
B.ISBN isbn,
B.BOOK_NAME bookName,
B.IS_DELETE isBookDelete,
B.TYPE_CODE typeCode,
IF(A.IS_DELETE is NULL, 0, A.IS_DELETE) isBookAdviserDelete,
IF(A.CHANNEL_ID is NULL, 0, A.CHANNEL_ID) channelId,
IF(A.ADVISER_ID is NULL, 0, A.ADVISER_ID) adviserId,
IF(A.IS_MAIN_EDITOR is NULL, "", A.IS_MAIN_EDITOR) isMainEditor,
IF(A.TEMPLET_ID is NULL, 0, A.TEMPLET_ID) templetId,
IF(A.SECOND_TEMPLET_ID is NULL, 0, A.SECOND_TEMPLET_ID) secondTempletId,
IF(A.LAST_MODIFIED_DATE is NULL, "2001-01-01 00:00:00", A.LAST_MODIFIED_DATE) lastModifiedDate,
IF(A.BOOK_ADVISER_ID is NULL, 0, A.BOOK_ADVISER_ID) bookAdviserId,
IF(A.BOOK_ADVISER_ID is NULL, 0, 1) isAdviserBook
FROM
BOOK B
LEFT JOIN BOOK_ADVISER A ON A.BOOK_ID = B.BOOK_ID and A.IS_MAIN_EDITOR=1
WHERE B.BOOK_ID in
<foreach
collection=
"bookIds"
index=
"i"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
GROUP BY B.BOOK_ID
</select>
<!-- 批量获取书籍信息 -->
<select
id=
"getMapByBookIds"
resultMap=
"bookMap"
parameterType=
"list"
>
SELECT
b.BOOK_ID,
b.ISBN,
b.ISSN,
b.BOOK_NAME,
b.REMARK,
b.AUTHOR,
b.PUBLISH,
b.PUBLISH_DATE,
b.COVER_IMG,
b.AD_IMG,
b.ORIGIN_NAME,
b.BOOK_PRICE,
b.TYPE_CODE,
b.SERIAL_NUMBER,
b.CREATED_DATE,
t.TYPE_NAME
FROM
BOOK b
INNER JOIN BOOK_TYPE t ON b.TYPE_CODE = t.TYPE_CODE
WHERE
b.BOOK_ID IN
<foreach
collection=
"list"
index=
"i"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
</select>
</mapper>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/book/BookAdviser.Mapper.xml
View file @
d91af14d
...
@@ -633,4 +633,12 @@
...
@@ -633,4 +633,12 @@
and CHANNEL_ID = #{channelId}
and CHANNEL_ID = #{channelId}
</if>
</if>
</update>
</update>
<!--根据模板id查询bookId集合-->
<select
id=
"getBookIdsByTempletId"
parameterType=
"map"
>
select distinct book_id
from book_adviser
WHERE
TEMPLET_ID = #{templetId}
</select>
</mapper>
</mapper>
\ No newline at end of file
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