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
7bc9851e
Commit
7bc9851e
authored
Feb 08, 2020
by
zhuyajie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
平台端关键词
parent
3dc69f86
Show whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
2052 additions
and
0 deletions
+2052
-0
BookKeywordBizImpl.java
...com/pcloud/book/keywords/biz/impl/BookKeywordBizImpl.java
+149
-0
PcloudKeywordBiz.java
...a/com/pcloud/book/pcloudkeyword/biz/PcloudKeywordBiz.java
+56
-0
PcloudKeywordClassifyBiz.java
...loud/book/pcloudkeyword/biz/PcloudKeywordClassifyBiz.java
+42
-0
PcloudKeywordBizImpl.java
...oud/book/pcloudkeyword/biz/impl/PcloudKeywordBizImpl.java
+316
-0
PcloudKeywordClassifyBizImpl.java
.../pcloudkeyword/biz/impl/PcloudKeywordClassifyBizImpl.java
+56
-0
PcloudKeywordCheck.java
...m/pcloud/book/pcloudkeyword/check/PcloudKeywordCheck.java
+118
-0
PcloudKeywordClassifyDao.java
...loud/book/pcloudkeyword/dao/PcloudKeywordClassifyDao.java
+34
-0
PcloudKeywordDao.java
...a/com/pcloud/book/pcloudkeyword/dao/PcloudKeywordDao.java
+16
-0
PcloudKeywordNameDao.java
...m/pcloud/book/pcloudkeyword/dao/PcloudKeywordNameDao.java
+19
-0
PcloudKeywordReplyDao.java
.../pcloud/book/pcloudkeyword/dao/PcloudKeywordReplyDao.java
+19
-0
PcloudNotKeywordDao.java
...om/pcloud/book/pcloudkeyword/dao/PcloudNotKeywordDao.java
+29
-0
PcloudKeywordClassifyDaoImpl.java
.../pcloudkeyword/dao/impl/PcloudKeywordClassifyDaoImpl.java
+37
-0
PcloudKeywordDaoImpl.java
...oud/book/pcloudkeyword/dao/impl/PcloudKeywordDaoImpl.java
+34
-0
PcloudKeywordNameDaoImpl.java
...book/pcloudkeyword/dao/impl/PcloudKeywordNameDaoImpl.java
+47
-0
PcloudKeywordReplyDaoImpl.java
...ook/pcloudkeyword/dao/impl/PcloudKeywordReplyDaoImpl.java
+52
-0
PcloudNotKeywordDaoImpl.java
.../book/pcloudkeyword/dao/impl/PcloudNotKeywordDaoImpl.java
+31
-0
PcloudKeywordClassifyDTO.java
...loud/book/pcloudkeyword/dto/PcloudKeywordClassifyDTO.java
+32
-0
PcloudKeyword.java
...a/com/pcloud/book/pcloudkeyword/entity/PcloudKeyword.java
+30
-0
PcloudKeywordClassify.java
...loud/book/pcloudkeyword/entity/PcloudKeywordClassify.java
+46
-0
PcloudKeywordName.java
...m/pcloud/book/pcloudkeyword/entity/PcloudKeywordName.java
+19
-0
PcloudKeywordReply.java
.../pcloud/book/pcloudkeyword/entity/PcloudKeywordReply.java
+80
-0
PcloudNotKeyword.java
...om/pcloud/book/pcloudkeyword/entity/PcloudNotKeyword.java
+26
-0
KeywordTypeEnum.java
.../com/pcloud/book/pcloudkeyword/enums/KeywordTypeEnum.java
+23
-0
MethodEnum.java
.../java/com/pcloud/book/pcloudkeyword/enums/MethodEnum.java
+23
-0
RelevanceTypeEnum.java
...om/pcloud/book/pcloudkeyword/enums/RelevanceTypeEnum.java
+23
-0
PcloudKeywordFacade.java
...pcloud/book/pcloudkeyword/facade/PcloudKeywordFacade.java
+199
-0
PcloudKeyword.xml
...src/main/resources/mapper/pcloudkeyword/PcloudKeyword.xml
+105
-0
PcloudKeywordClassify.xml
.../resources/mapper/pcloudkeyword/PcloudKeywordClassify.xml
+96
-0
PcloudKeywordName.xml
...main/resources/mapper/pcloudkeyword/PcloudKeywordName.xml
+87
-0
PcloudKeywordReply.xml
...ain/resources/mapper/pcloudkeyword/PcloudKeywordReply.xml
+124
-0
PcloudNotKeyword.xml
.../main/resources/mapper/pcloudkeyword/PcloudNotKeyword.xml
+84
-0
No files found.
pcloud-service-book/src/main/java/com/pcloud/book/keywords/biz/impl/BookKeywordBizImpl.java
View file @
7bc9851e
...
...
@@ -60,6 +60,17 @@ import com.pcloud.book.keywords.vo.QrWeixinParam;
import
com.pcloud.book.keywords.vo.SetKeywordVO
;
import
com.pcloud.book.keywords.vo.SetRankVO
;
import
com.pcloud.book.keywords.vo.UpdateKeywordVO
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordClassifyDao
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordDao
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordReplyDao
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudNotKeywordDao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
import
com.pcloud.book.pcloudkeyword.enums.KeywordTypeEnum
;
import
com.pcloud.book.pcloudkeyword.enums.MethodEnum
;
import
com.pcloud.book.pcloudkeyword.enums.RelevanceTypeEnum
;
import
com.pcloud.book.reading.biz.ReadingActivityBiz
;
import
com.pcloud.book.util.common.ThreadPoolUtils
;
import
com.pcloud.channelcenter.base.constants.ChannelEnum
;
...
...
@@ -110,6 +121,7 @@ import java.util.Objects;
import
java.util.Optional
;
import
java.util.Set
;
import
java.util.TreeSet
;
import
java.util.*
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
import
java.util.stream.Collectors
;
...
...
@@ -188,6 +200,14 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
private
NotKeywordTemplateDao
notKeywordTemplateDao
;
@Autowired
private
NotKeywordItemDao
notKeywordItemDao
;
@Autowired
private
PcloudKeywordDao
pcloudKeywordDao
;
@Autowired
private
PcloudKeywordReplyDao
pcloudKeywordReplyDao
;
@Autowired
private
PcloudNotKeywordDao
pcloudNotKeywordDao
;
@Autowired
private
PcloudKeywordClassifyDao
pcloudKeywordClassifyDao
;
/**
* 字符串切割长度
*/
...
...
@@ -520,6 +540,19 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
this
.
sendKeywordMessageToGroup
(
sendTextDTO
);
return
;
}
//TODO 判断是否是平台端配置的小号,因为还没有上,先写死,关闭
Boolean
isPcloudRobot
=
false
;
if
(
"test"
.
equalsIgnoreCase
(
envStr
)
&&
"wxid_zus32xb5ukjn22"
.
equals
(
sendTextDTO
.
getWxId
())){
isPcloudRobot
=
true
;
}
if
(
"uat"
.
equalsIgnoreCase
(
envStr
)
&&
"wxid_fadtd2q58njx12"
.
equals
(
sendTextDTO
.
getWxId
())){
isPcloudRobot
=
true
;
}
if
(
isPcloudRobot
){
sendPcloudKeyword
(
sendTextDTO
);
return
;
}
if
(
SendMessageTypeEnum
.
SELF
.
getCode
().
equals
(
sendTextDTO
.
getCode
()))
{
// 小睿对话索要出版社信息
boolean
_continue
=
replySelfKeywordTemplate
(
sendTextDTO
);
...
...
@@ -618,6 +651,122 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
return
false
;
}
@ParamLog
(
"发送平台端小号的"
)
private
void
sendPcloudKeyword
(
SendTextDTO
sendTextDTO
)
{
String
userWxId
=
sendTextDTO
.
getWechatUserId
();
String
ip
=
sendTextDTO
.
getIp
();
Integer
code
=
sendTextDTO
.
getCode
();
String
robotId
=
sendTextDTO
.
getWxId
();
//TODO 获取小号对应的分类Id,个人号配置该没有,先写,后面改
Long
pcloudClassifyId
=
1L
;
PcloudKeywordClassify
pcloudKeywordClassify
=
pcloudKeywordClassifyDao
.
getById
(
pcloudClassifyId
);
if
(
null
==
pcloudKeywordClassify
||
!
pcloudKeywordClassify
.
getOpen
()){
//分类未启用
return
;
}
String
content
=
sendTextDTO
.
getTextContent
();
//根据关键词分类和关键词查询关键词
//精准
PcloudKeyword
pcloudKeyword
=
pcloudKeywordDao
.
getByClassifyIdAndName
(
KeywordTypeEnum
.
ACCURATE
.
value
,
pcloudClassifyId
,
content
);
if
(
pcloudKeyword
==
null
){
//模糊
pcloudKeyword
=
pcloudKeywordDao
.
getByClassifyIdAndName
(
KeywordTypeEnum
.
LIKE
.
value
,
pcloudClassifyId
,
content
);
}
if
(
pcloudKeyword
!=
null
){
//走关键词
List
<
PcloudKeywordReply
>
replies
=
pcloudKeywordReplyDao
.
getByRelevance
(
RelevanceTypeEnum
.
KEYWORD
.
value
,
pcloudKeyword
.
getId
());
if
(
MethodEnum
.
RANDOM
.
value
.
equals
(
pcloudKeyword
.
getMethod
())){
int
a
=
(
int
)
Math
.
floor
(
Math
.
random
()*
replies
.
size
());
replies
=
Arrays
.
asList
(
replies
.
get
(
a
));
}
for
(
PcloudKeywordReply
reply:
replies
){
sendPcloudKeywordReply
(
reply
,
robotId
,
userWxId
,
ip
,
code
);
}
}
else
{
//走非关键词
List
<
PcloudNotKeyword
>
notKeywords
=
pcloudNotKeywordDao
.
getPcloudNotKeywordList
(
pcloudClassifyId
);
if
(!
ListUtils
.
isEmpty
(
notKeywords
)){
for
(
PcloudNotKeyword
pcloudNotKeyword
:
notKeywords
){
List
<
PcloudKeywordReply
>
replies
=
pcloudKeywordReplyDao
.
getByRelevance
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
,
pcloudNotKeyword
.
getId
());
if
(
ListUtils
.
isEmpty
(
replies
)){
continue
;
}
if
(
MethodEnum
.
RANDOM
.
value
.
equals
(
pcloudNotKeyword
.
getMethod
())){
replies
=
Arrays
.
asList
(
replies
.
get
(
new
Random
().
nextInt
(
replies
.
size
())));
}
for
(
PcloudKeywordReply
reply:
replies
){
sendPcloudKeywordReply
(
reply
,
robotId
,
userWxId
,
ip
,
code
);
}
}
}
}
}
@ParamLog
(
"平台端个人号关键词回复"
)
public
void
sendPcloudKeywordReply
(
PcloudKeywordReply
reply
,
String
robotId
,
String
userWxId
,
String
ip
,
Integer
code
){
Integer
type
=
reply
.
getType
();
if
(
ReplyTypeEnum
.
TEXT
.
value
.
equals
(
type
))
{
SendTextMessageVO
sendTextMessageVO
=
new
SendTextMessageVO
();
sendTextMessageVO
.
setContent
(
reply
.
getContent
());
sendTextMessageVO
.
setAltId
(
robotId
);
sendTextMessageVO
.
setWxGroupId
(
userWxId
);
sendTextMessageVO
.
setIp
(
ip
);
sendTextMessageVO
.
setCode
(
code
);
WxGroupSDK
.
sendTextMessage
(
sendTextMessageVO
);
}
if
(
ReplyTypeEnum
.
IMAGE
.
value
.
equals
(
type
))
{
SendPicMessageVO
sendPicMessageVO
=
new
SendPicMessageVO
();
sendPicMessageVO
.
setWxGroupId
(
userWxId
);
sendPicMessageVO
.
setAltId
(
robotId
);
sendPicMessageVO
.
setPicUrl
(
reply
.
getPicUrl
());
sendPicMessageVO
.
setIp
(
ip
);
sendPicMessageVO
.
setCode
(
code
);
WxGroupSDK
.
sendPicMessage
(
sendPicMessageVO
);
}
if
(
ReplyTypeEnum
.
APP
.
value
.
equals
(
type
))
{
if
(
AppAndProductTypeEnum
.
APP
.
value
.
equals
(
reply
.
getServeType
()))
{
AppDto
appDto
=
appConsr
.
getBaseById
(
reply
.
getServeId
());
if
(
appDto
!=
null
)
{
AccountSettingDto
accountSettingDto
=
qrcodeSceneConsr
.
getWechatInfo
(
appDto
.
getChannelId
());
// 处理链接地址
String
endUrl
=
reply
.
getLinkUrl
()
+
"&wxId="
+
userWxId
+
"&robotWxId="
+
robotId
;
String
linkUrl
=
SendWeixinRequestTools
.
splitUrl
(
accountSettingDto
,
endUrl
);
String
resultUrl
=
UrlUtils
.
getShortUrl4Own
(
linkUrl
);
SendArticleMessageVO
sendArticleMessageVO
=
new
SendArticleMessageVO
();
sendArticleMessageVO
.
setCode
(
code
);
sendArticleMessageVO
.
setAltId
(
robotId
);
sendArticleMessageVO
.
setDescription
(
appDto
.
getDetail
());
sendArticleMessageVO
.
setWxGroupId
(
userWxId
);
sendArticleMessageVO
.
setLinkUrl
(
resultUrl
);
sendArticleMessageVO
.
setPicUrl
(
appDto
.
getSquareImg
());
sendArticleMessageVO
.
setTitle
(
appDto
.
getTitle
());
sendArticleMessageVO
.
setIp
(
ip
);
WxGroupSDK
.
sendArticleMessage
(
sendArticleMessageVO
);
}
}
}
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
))
{
SendFileVO
sendFileVO
=
new
SendFileVO
();
Map
<
Long
,
ResourceDTO
>
map
=
resourceConsr
.
mapByIds
(
Arrays
.
asList
(
reply
.
getResourceId
()));
ResourceDTO
resourceDTO
=
map
.
get
(
reply
.
getResourceId
());
if
(
resourceDTO
!=
null
)
{
sendFileVO
.
setFileUrl
(
resourceDTO
.
getFileUrl
());
String
fileName
=
resourceDTO
.
getResourceName
();
String
fileType
=
resourceDTO
.
getFileType
();
log
.
info
(
"fileName="
+
fileName
+
"+fileType+"
+
fileType
);
if
(
fileName
.
contains
(
fileType
)){
//去掉后缀
fileName
=
fileName
.
substring
(
0
,
fileName
.
indexOf
(
fileType
)-
1
);
}
log
.
info
(
"fileName="
+
fileName
);
sendFileVO
.
setFileName
(
fileName
);
}
sendFileVO
.
setIp
(
ip
);
sendFileVO
.
setAltId
(
robotId
);
sendFileVO
.
setWxId
(
userWxId
);
WxGroupSDK
.
sendFile
(
sendFileVO
);
}
}
@ParamLog
(
"回复新版关键词"
)
private
void
replySelfKeyword
(
SendTextDTO
sendTextDTO
)
{
String
content
=
sendTextDTO
.
getTextContent
();
...
...
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/biz/PcloudKeywordBiz.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
biz
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
public
interface
PcloudKeywordBiz
{
void
createPcloudKeyword
(
PcloudKeyword
pcloudKeyword
);
void
updatePcloudKeyword
(
PcloudKeyword
pcloudKeyword
);
PcloudKeyword
getPcloudKeyword
(
Long
id
);
PageBeanNew
<
PcloudKeyword
>
getPcloudKeywordList
(
Long
keywordClassifyId
,
String
name
,
Integer
currentPage
,
Integer
numPerPage
);
void
deletePcloudKeyword
(
Long
id
);
/**
* 新增非关键词回复
* @return
*/
Long
insertNotKeyword
(
PcloudNotKeyword
pcloudNotKeyword
);
/**
* 修改费关键词
*/
void
updateNotKeyword
(
PcloudNotKeyword
pcloudNotKeyword
);
/**
* 删除非关键词
* @param id
*/
void
deletePcloudNotKeyword
(
Long
id
);
/**
* 根据id查非关键词
* @param id
* @return
*/
public
PcloudNotKeyword
getNotKeywordById
(
Long
id
);
/**
* 非关键词列表
* @param keywordClassifyId
* @param currentPage
* @param numPerPage
* @return
*/
PageBeanNew
<
PcloudNotKeyword
>
getPcloudNotKeywordList
(
Long
keywordClassifyId
,
Integer
currentPage
,
Integer
numPerPage
);
/**
* 根据分类删除关键词
* @param id
*/
void
deleteByKeywordClassifyId
(
Long
id
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/biz/PcloudKeywordClassifyBiz.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
biz
;
import
com.pcloud.book.pcloudkeyword.dto.PcloudKeywordClassifyDTO
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify
;
import
com.pcloud.common.page.PageBeanNew
;
import
java.util.List
;
public
interface
PcloudKeywordClassifyBiz
{
/**
* 新增
* @param pcloudKeywordClassify
*/
public
Long
insert
(
PcloudKeywordClassify
pcloudKeywordClassify
);
/**
* 修改
* @param pcloudKeywordClassify
*/
public
void
update
(
PcloudKeywordClassify
pcloudKeywordClassify
);
/**
* 删除
* @param id
*/
public
void
deleteById
(
Long
id
);
/**
* 更新启用状态
* @param id
* @param open
*/
public
void
updateOpenStateById
(
Long
id
,
Boolean
open
);
/**
* 查询
* @param classify
* @return
*/
List
<
PcloudKeywordClassifyDTO
>
list
(
String
classify
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/biz/impl/PcloudKeywordBizImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
biz
.
impl
;
import
com.pcloud.appcenter.app.dto.AppDto
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.consumer.app.AppConsr
;
import
com.pcloud.book.consumer.content.ResourceConsr
;
import
com.pcloud.book.group.enums.AppAndProductTypeEnum
;
import
com.pcloud.book.keywords.enums.ReplyTypeEnum
;
import
com.pcloud.book.pcloudkeyword.biz.PcloudKeywordBiz
;
import
com.pcloud.book.pcloudkeyword.check.PcloudKeywordCheck
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordDao
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordNameDao
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordReplyDao
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudNotKeywordDao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
import
com.pcloud.book.pcloudkeyword.enums.RelevanceTypeEnum
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.utils.BeanUtils
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.contentcenter.resource.dto.ResourceDTO
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
@Component
(
"pcloudKeywordBiz"
)
public
class
PcloudKeywordBizImpl
implements
PcloudKeywordBiz
{
@Autowired
private
PcloudKeywordCheck
pcloudKeywordCheck
;
@Autowired
private
PcloudKeywordDao
pcloudKeywordDao
;
@Autowired
private
PcloudKeywordNameDao
pcloudKeywordNameDao
;
@Autowired
private
PcloudKeywordReplyDao
pcloudKeywordReplyDao
;
@Autowired
private
AppConsr
appConsr
;
@Autowired
private
ResourceConsr
resourceConsr
;
@Autowired
private
PcloudNotKeywordDao
pcloudNotKeywordDao
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ParamLog
(
"新增平台端关键词"
)
@Override
public
void
createPcloudKeyword
(
PcloudKeyword
pcloudKeyword
)
{
pcloudKeywordCheck
.
createPcloudKeywordCheck
(
pcloudKeyword
);
//新增
pcloudKeywordDao
.
insert
(
pcloudKeyword
);
//新增名称和回复
createNameAndReply
(
pcloudKeyword
);
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ParamLog
(
"修改平台端关键词"
)
@Override
public
void
updatePcloudKeyword
(
PcloudKeyword
pcloudKeyword
)
{
pcloudKeywordCheck
.
updatePcloudKeywordCheck
(
pcloudKeyword
);
pcloudKeywordDao
.
update
(
pcloudKeyword
);
//删除名称
pcloudKeywordNameDao
.
deleteByPcloudKeywordId
(
pcloudKeyword
.
getId
());
//删除回复
pcloudKeywordReplyDao
.
deleteByRelevance
(
RelevanceTypeEnum
.
KEYWORD
.
value
,
pcloudKeyword
.
getId
());
//新增名称和回复
createNameAndReply
(
pcloudKeyword
);
}
@ParamLog
(
"获取平台端关键词"
)
@Override
public
PcloudKeyword
getPcloudKeyword
(
Long
id
)
{
if
(
id
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"id为空!"
);
}
PcloudKeyword
pcloudKeyword
=
pcloudKeywordDao
.
getById
(
id
);
if
(
pcloudKeyword
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"未找到!"
);
}
List
<
PcloudKeywordName
>
names
=
pcloudKeywordNameDao
.
getByPcloudKeywordId
(
id
);
pcloudKeyword
.
setPcloudKeywordNames
(
names
);
List
<
PcloudKeywordReply
>
replies
=
pcloudKeywordReplyDao
.
getByRelevance
(
RelevanceTypeEnum
.
KEYWORD
.
value
,
id
);
if
(!
ListUtils
.
isEmpty
(
replies
)){
fillReply
(
replies
);
}
pcloudKeyword
.
setPcloudKeywordReplies
(
replies
);
return
pcloudKeyword
;
}
@ParamLog
(
"获取全平台关键词列表"
)
@Override
public
PageBeanNew
<
PcloudKeyword
>
getPcloudKeywordList
(
Long
keywordClassifyId
,
String
name
,
Integer
currentPage
,
Integer
numPerPage
)
{
if
(
keywordClassifyId
==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"keywordClassifyId参数为空!"
);
}
if
(
currentPage
==
null
||
numPerPage
==
null
||
currentPage
<
0
||
numPerPage
<=
0
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"分页参数错误!"
);
}
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"keywordClassifyId"
,
keywordClassifyId
);
map
.
put
(
"name"
,
name
);
PageBeanNew
<
PcloudKeyword
>
page
=
pcloudKeywordDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"getPcloudKeywordList"
);
if
(
ListUtils
.
isEmpty
(
page
.
getRecordList
())){
return
page
;
}
List
<
Long
>
keywordIds
=
page
.
getRecordList
().
stream
().
map
(
PcloudKeyword:
:
getId
).
collect
(
Collectors
.
toList
());
Map
<
Long
,
List
<
PcloudKeywordName
>>
nameMap
=
new
HashMap
<>();
Map
<
Long
,
List
<
PcloudKeywordReply
>>
replyMap
=
new
HashMap
<>();
List
<
PcloudKeywordName
>
names
=
pcloudKeywordNameDao
.
getByPcloudKeywordIds
(
keywordIds
);
List
<
PcloudKeywordReply
>
replies
=
pcloudKeywordReplyDao
.
getByRelevances
(
RelevanceTypeEnum
.
KEYWORD
.
value
,
keywordIds
);
if
(!
ListUtils
.
isEmpty
(
names
)){
nameMap
=
names
.
stream
().
collect
(
Collectors
.
groupingBy
(
PcloudKeywordName:
:
getPcloudKeywordId
));
}
if
(!
ListUtils
.
isEmpty
(
replies
)){
fillReply
(
replies
);
replyMap
=
replies
.
stream
().
collect
(
Collectors
.
groupingBy
(
PcloudKeywordReply:
:
getRelevanceId
));
}
for
(
PcloudKeyword
pcloudKeyword:
page
.
getRecordList
()){
pcloudKeyword
.
setPcloudKeywordNames
(
nameMap
.
get
(
pcloudKeyword
.
getId
()));
pcloudKeyword
.
setPcloudKeywordReplies
(
replyMap
.
get
(
pcloudKeyword
.
getId
()));
}
return
page
;
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ParamLog
(
"删除全平台关键词列表"
)
@Override
public
void
deletePcloudKeyword
(
Long
id
)
{
if
(
id
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"id为空!"
);
}
pcloudKeywordDao
.
deleteById
(
id
);
pcloudKeywordNameDao
.
deleteByPcloudKeywordId
(
id
);
pcloudKeywordReplyDao
.
deleteByRelevance
(
RelevanceTypeEnum
.
KEYWORD
.
value
,
id
);
}
@ParamLog
(
"填充回复"
)
private
void
fillReply
(
List
<
PcloudKeywordReply
>
replies
)
{
if
(
ListUtils
.
isEmpty
(
replies
)){
return
;
}
List
<
Long
>
appIds
=
new
ArrayList
<>();
List
<
Long
>
resourceIds
=
new
ArrayList
<>();
for
(
PcloudKeywordReply
reply
:
replies
){
Integer
type
=
reply
.
getType
();
if
(
ReplyTypeEnum
.
APP
.
value
.
equals
(
type
)){
if
(
AppAndProductTypeEnum
.
APP
.
value
.
equals
(
reply
.
getServeType
())){
appIds
.
add
(
reply
.
getServeId
());
}
}
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
)){
resourceIds
.
add
(
reply
.
getResourceId
());
}
}
Map
<
Long
,
AppDto
>
appDtoMap
=
new
HashMap
<>();
Map
<
Long
,
ResourceDTO
>
resourceDTOMap
=
new
HashMap
<>();
if
(!
ListUtils
.
isEmpty
(
appIds
)){
appDtoMap
=
appConsr
.
getBaseByIds
(
appIds
);
}
if
(!
ListUtils
.
isEmpty
(
resourceIds
)){
resourceDTOMap
=
resourceConsr
.
mapByIds
(
resourceIds
);
}
for
(
PcloudKeywordReply
reply:
replies
){
Integer
type
=
reply
.
getType
();
if
(
ReplyTypeEnum
.
APP
.
value
.
equals
(
type
)){
Long
serveId
=
reply
.
getServeId
();
if
(
AppAndProductTypeEnum
.
APP
.
value
.
equals
(
reply
.
getServeType
())){
AppDto
appDto
=
appDtoMap
.
get
(
serveId
);
if
(
appDto
!=
null
){
reply
.
setServePic
(
appDto
.
getSquareImg
());
reply
.
setServeName
(
appDto
.
getTitle
());
reply
.
setServeTypeCode
(
appDto
.
getTypeCode
());
reply
.
setServeTypeName
(
appDto
.
getTypeName
());
}
}
}
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
)){
ResourceDTO
resourceDTO
=
resourceDTOMap
.
get
(
reply
.
getResourceId
());
if
(
resourceDTO
!=
null
){
reply
.
setResourceName
(
resourceDTO
.
getResourceName
());
reply
.
setResourceUrl
(
resourceDTO
.
getFileUrl
());
reply
.
setResourceTypeCode
(
resourceDTO
.
getTypeCode
());
reply
.
setResourceTypeName
(
resourceDTO
.
getTypeName
());
reply
.
setFileType
(
resourceDTO
.
getFileType
());
reply
.
setResourcePdfItems
(
resourceDTO
.
getResourcePdfItems
());
reply
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
reply
.
setFileSize
(
resourceDTO
.
getFileSize
());
}
}
}
}
@ParamLog
(
"新增名称和回复"
)
private
void
createNameAndReply
(
PcloudKeyword
pcloudKeyword
){
for
(
PcloudKeywordName
name:
pcloudKeyword
.
getPcloudKeywordNames
()){
name
.
setPcloudKeywordId
(
pcloudKeyword
.
getId
());
}
pcloudKeywordNameDao
.
batchInsert
(
pcloudKeyword
.
getPcloudKeywordNames
());
for
(
PcloudKeywordReply
reply:
pcloudKeyword
.
getPcloudKeywordReplies
()){
reply
.
setRelevanceType
(
RelevanceTypeEnum
.
KEYWORD
.
value
);
reply
.
setRelevanceId
(
pcloudKeyword
.
getId
());
}
pcloudKeywordReplyDao
.
batchInsert
(
pcloudKeyword
.
getPcloudKeywordReplies
());
}
@Override
@ParamLog
(
"新增非关键词"
)
public
Long
insertNotKeyword
(
PcloudNotKeyword
pcloudNotKeyword
)
{
pcloudKeywordCheck
.
createPcloudNotKeywordCheck
(
pcloudNotKeyword
);
//新增
pcloudNotKeywordDao
.
insert
(
pcloudNotKeyword
);
//新增回复
for
(
PcloudKeywordReply
reply:
pcloudNotKeyword
.
getPcloudKeywordReplies
()){
reply
.
setRelevanceType
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
);
reply
.
setRelevanceId
(
pcloudNotKeyword
.
getId
());
}
pcloudKeywordReplyDao
.
batchInsert
(
pcloudNotKeyword
.
getPcloudKeywordReplies
());
return
pcloudNotKeyword
.
getId
();
}
@Override
@ParamLog
(
"修改非关键词"
)
public
void
updateNotKeyword
(
PcloudNotKeyword
pcloudNotKeyword
)
{
pcloudKeywordCheck
.
updateNotPcloudKeywordCheck
(
pcloudNotKeyword
);
pcloudNotKeywordDao
.
update
(
pcloudNotKeyword
);
//删除回复
pcloudKeywordReplyDao
.
deleteByRelevance
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
,
pcloudNotKeyword
.
getId
());
//新增回复
for
(
PcloudKeywordReply
reply:
pcloudNotKeyword
.
getPcloudKeywordReplies
()){
reply
.
setRelevanceType
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
);
reply
.
setRelevanceId
(
pcloudNotKeyword
.
getId
());
}
pcloudKeywordReplyDao
.
batchInsert
(
pcloudNotKeyword
.
getPcloudKeywordReplies
());
}
@Override
public
void
deletePcloudNotKeyword
(
Long
id
)
{
if
(
id
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"id为空!"
);
}
pcloudNotKeywordDao
.
deleteById
(
id
);
pcloudKeywordReplyDao
.
deleteByRelevance
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
,
id
);
}
@Override
public
PcloudNotKeyword
getNotKeywordById
(
Long
id
)
{
if
(
id
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"id为空!"
);
}
PcloudNotKeyword
pcloudNotKeyword
=
pcloudNotKeywordDao
.
getById
(
id
);
if
(
pcloudNotKeyword
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"未找到!"
);
}
List
<
PcloudKeywordReply
>
replies
=
pcloudKeywordReplyDao
.
getByRelevance
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
,
id
);
if
(!
ListUtils
.
isEmpty
(
replies
)){
fillReply
(
replies
);
}
pcloudNotKeyword
.
setPcloudKeywordReplies
(
replies
);
return
pcloudNotKeyword
;
}
@Override
public
PageBeanNew
<
PcloudNotKeyword
>
getPcloudNotKeywordList
(
Long
keywordClassifyId
,
Integer
currentPage
,
Integer
numPerPage
)
{
if
(
keywordClassifyId
==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"keywordClassifyId参数为空!"
);
}
if
(
currentPage
==
null
||
numPerPage
==
null
||
currentPage
<
0
||
numPerPage
<=
0
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"分页参数错误!"
);
}
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"keywordClassifyId"
,
keywordClassifyId
);
PageBeanNew
<
PcloudNotKeyword
>
page
=
pcloudNotKeywordDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"getPcloudNotKeywordList"
);
if
(
ListUtils
.
isEmpty
(
page
.
getRecordList
())){
return
page
;
}
List
<
Long
>
keywordIds
=
page
.
getRecordList
().
stream
().
map
(
PcloudNotKeyword:
:
getId
).
collect
(
Collectors
.
toList
());
Map
<
Long
,
List
<
PcloudKeywordReply
>>
replyMap
=
new
HashMap
<>();
List
<
PcloudKeywordReply
>
replies
=
pcloudKeywordReplyDao
.
getByRelevances
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
,
keywordIds
);
if
(!
ListUtils
.
isEmpty
(
replies
)){
fillReply
(
replies
);
replyMap
=
replies
.
stream
().
collect
(
Collectors
.
groupingBy
(
PcloudKeywordReply:
:
getRelevanceId
));
}
for
(
PcloudNotKeyword
pcloudNotKeyword:
page
.
getRecordList
()){
pcloudNotKeyword
.
setPcloudKeywordReplies
(
replyMap
.
get
(
pcloudNotKeyword
.
getId
()));
}
return
page
;
}
@Override
public
void
deleteByKeywordClassifyId
(
Long
id
)
{
//关键词
List
<
Long
>
keywordIds
=
pcloudKeywordDao
.
getIdsByClassifyId
(
id
);
if
(!
ListUtils
.
isEmpty
(
keywordIds
)){
pcloudKeywordReplyDao
.
deleteByRelevanceIds
(
RelevanceTypeEnum
.
KEYWORD
.
value
,
keywordIds
);
pcloudKeywordNameDao
.
deleteByKeywordIds
(
keywordIds
);
}
pcloudKeywordDao
.
deleteByClassifyId
(
id
);
//非关键词
List
<
Long
>
notKeywordIds
=
pcloudNotKeywordDao
.
getIdsByClassifyId
(
id
);
if
(!
ListUtils
.
isEmpty
(
notKeywordIds
)){
pcloudKeywordReplyDao
.
deleteByRelevanceIds
(
RelevanceTypeEnum
.
NOT_KEYWORD
.
value
,
notKeywordIds
);
}
pcloudNotKeywordDao
.
deleteByClassifyId
(
id
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/biz/impl/PcloudKeywordClassifyBizImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
biz
.
impl
;
import
com.pcloud.book.pcloudkeyword.biz.PcloudKeywordBiz
;
import
com.pcloud.book.pcloudkeyword.biz.PcloudKeywordClassifyBiz
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordClassifyDao
;
import
com.pcloud.book.pcloudkeyword.dto.PcloudKeywordClassifyDTO
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.utils.ListUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Component
(
"pcloudKeywordClassifyBiz"
)
public
class
PcloudKeywordClassifyBizImpl
implements
PcloudKeywordClassifyBiz
{
@Autowired
private
PcloudKeywordClassifyDao
pcloudKeywordClassifyDao
;
@Autowired
private
PcloudKeywordBiz
pcloudKeywordBiz
;
@Override
public
Long
insert
(
PcloudKeywordClassify
pcloudKeywordClassify
)
{
pcloudKeywordClassifyDao
.
insert
(
pcloudKeywordClassify
);
Long
id
=
pcloudKeywordClassify
.
getId
();
return
id
;
}
@Override
public
void
update
(
PcloudKeywordClassify
pcloudKeywordClassify
)
{
pcloudKeywordClassifyDao
.
update
(
pcloudKeywordClassify
);
}
@Override
public
void
deleteById
(
Long
id
)
{
pcloudKeywordClassifyDao
.
setDeleteById
(
id
);
//删除关键词
pcloudKeywordBiz
.
deleteByKeywordClassifyId
(
id
);
}
@Override
public
void
updateOpenStateById
(
Long
id
,
Boolean
open
)
{
pcloudKeywordClassifyDao
.
updateOpenById
(
id
,
open
);
}
@Override
public
List
<
PcloudKeywordClassifyDTO
>
list
(
String
classify
){
List
<
PcloudKeywordClassifyDTO
>
list
=
pcloudKeywordClassifyDao
.
list
(
classify
);
return
list
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/check/PcloudKeywordCheck.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
check
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.keywords.enums.ReplyTypeEnum
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
@Component
(
"pcloudKeywordCheck"
)
public
class
PcloudKeywordCheck
{
@ParamLog
(
"新增关键词校验"
)
public
void
createPcloudKeywordCheck
(
PcloudKeyword
pcloudKeyword
)
{
if
(
pcloudKeyword
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数为空!"
);
}
if
(
pcloudKeyword
.
getMethod
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"方式1全部回复,2随机回复为空!"
);
}
if
(
pcloudKeyword
.
getType
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"类型1:精准,2模糊为空!"
);
}
if
(
pcloudKeyword
.
getKeywordClassifyId
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"分类为空!"
);
}
if
(
ListUtils
.
isEmpty
(
pcloudKeyword
.
getPcloudKeywordNames
())){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"名称为空!"
);
}
if
(
ListUtils
.
isEmpty
(
pcloudKeyword
.
getPcloudKeywordReplies
())){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复为空!"
);
}
for
(
PcloudKeywordName
name:
pcloudKeyword
.
getPcloudKeywordNames
()){
if
(
name
==
null
||
StringUtil
.
isEmpty
(
name
.
getName
())){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"名称为空!"
);
}
}
replyCheck
(
pcloudKeyword
.
getPcloudKeywordReplies
());
}
private
void
replyCheck
(
List
<
PcloudKeywordReply
>
replyList
){
for
(
PcloudKeywordReply
reply:
replyList
){
if
(
reply
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复为空!"
);
}
if
(
reply
.
getType
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复类型为空!"
);
}
if
(
ReplyTypeEnum
.
TEXT
.
value
.
equals
(
reply
.
getType
())&&
StringUtil
.
isEmpty
(
reply
.
getContent
())){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复内容为空!"
);
}
if
(
ReplyTypeEnum
.
IMAGE
.
value
.
equals
(
reply
.
getType
())&&
StringUtil
.
isEmpty
(
reply
.
getPicUrl
())){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复内容为空!"
);
}
if
(
ReplyTypeEnum
.
APP
.
value
.
equals
(
reply
.
getType
())
&&(
StringUtil
.
isEmpty
(
reply
.
getServeType
())||
reply
.
getServeId
()==
null
)){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复应用类型或应用id为空!"
);
}
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
reply
.
getType
())&&
reply
.
getResourceId
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复资源id为空!"
);
}
}
}
@ParamLog
(
"修改关键词校验"
)
public
void
updatePcloudKeywordCheck
(
PcloudKeyword
pcloudKeyword
)
{
if
(
pcloudKeyword
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数为空!"
);
}
if
(
pcloudKeyword
.
getId
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"id为空!"
);
}
createPcloudKeywordCheck
(
pcloudKeyword
);
}
/**
* 非关键词新增校验
* @param pcloudNotKeyword
*/
public
void
createPcloudNotKeywordCheck
(
PcloudNotKeyword
pcloudNotKeyword
)
{
if
(
pcloudNotKeyword
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数为空!"
);
}
if
(
pcloudNotKeyword
.
getMethod
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"方式1全部回复,2随机回复为空!"
);
}
if
(
pcloudNotKeyword
.
getKeywordClassifyId
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"分类为空!"
);
}
if
(
ListUtils
.
isEmpty
(
pcloudNotKeyword
.
getPcloudKeywordReplies
())){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"回复为空!"
);
}
replyCheck
(
pcloudNotKeyword
.
getPcloudKeywordReplies
());
}
/**
* 非关键词修改校验
* @param pcloudNotKeyword
*/
public
void
updateNotPcloudKeywordCheck
(
PcloudNotKeyword
pcloudNotKeyword
)
{
if
(
pcloudNotKeyword
==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数为空!"
);
}
if
(
pcloudNotKeyword
.
getId
()==
null
){
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"id为空!"
);
}
createPcloudNotKeywordCheck
(
pcloudNotKeyword
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/PcloudKeywordClassifyDao.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
;
import
com.pcloud.book.pcloudkeyword.dto.PcloudKeywordClassifyDTO
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
/**
*平台端个人号关键词分类
*/
public
interface
PcloudKeywordClassifyDao
extends
BaseDao
<
PcloudKeywordClassify
>
{
/**
* 删除
* @param id
*/
public
void
setDeleteById
(
Long
id
);
/**
* 更新启用状态
* @param id
* @param open
*/
public
void
updateOpenById
(
Long
id
,
Boolean
open
);
/**
* 列表
* @param classify
* @return
*/
List
<
PcloudKeywordClassifyDTO
>
list
(
String
classify
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/PcloudKeywordDao.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
public
interface
PcloudKeywordDao
extends
BaseDao
<
PcloudKeyword
>
{
List
<
Long
>
getIdsByClassifyId
(
Long
keywordClassifyId
);
void
deleteByClassifyId
(
Long
keywordClassifyId
);
PcloudKeyword
getByClassifyIdAndName
(
Integer
type
,
Long
pcloudClassifyId
,
String
name
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/PcloudKeywordNameDao.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
public
interface
PcloudKeywordNameDao
extends
BaseDao
<
PcloudKeywordName
>
{
Integer
batchInsert
(
List
<
PcloudKeywordName
>
list
);
void
deleteByPcloudKeywordId
(
Long
id
);
List
<
PcloudKeywordName
>
getByPcloudKeywordId
(
Long
pcloudKeywordId
);
List
<
PcloudKeywordName
>
getByPcloudKeywordIds
(
List
<
Long
>
pcloudKeywordIds
);
void
deleteByKeywordIds
(
List
<
Long
>
pcloudKeywordIds
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/PcloudKeywordReplyDao.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
public
interface
PcloudKeywordReplyDao
extends
BaseDao
<
PcloudKeywordReply
>
{
Integer
batchInsert
(
List
<
PcloudKeywordReply
>
list
);
void
deleteByRelevance
(
Integer
relevanceType
,
Long
relevanceId
);
List
<
PcloudKeywordReply
>
getByRelevance
(
Integer
relevanceType
,
Long
relevanceId
);
List
<
PcloudKeywordReply
>
getByRelevances
(
Integer
relevanceType
,
List
<
Long
>
relevanceIds
);
void
deleteByRelevanceIds
(
Integer
relevanceType
,
List
<
Long
>
relevanceIds
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/PcloudNotKeywordDao.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
public
interface
PcloudNotKeywordDao
extends
BaseDao
<
PcloudNotKeyword
>
{
/**
* 根据分类id查非关键词id
* @param keywordClassifyId
* @return
*/
List
<
Long
>
getIdsByClassifyId
(
Long
keywordClassifyId
);
/**
* 根据分类id删除
* @param keywordClassifyId
*/
public
void
deleteByClassifyId
(
Long
keywordClassifyId
);
/**
* 根据分类id查询
* @param keywordClassifyId
* @return
*/
public
List
<
PcloudNotKeyword
>
getPcloudNotKeywordList
(
Long
keywordClassifyId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/impl/PcloudKeywordClassifyDaoImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
.
impl
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordClassifyDao
;
import
com.pcloud.book.pcloudkeyword.dto.PcloudKeywordClassifyDTO
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
*平台端个人号关键词分类
*/
@Component
(
"pcloudKeywordClassifyDao"
)
public
class
PcloudKeywordClassifyDaoImpl
extends
BaseDaoImpl
<
PcloudKeywordClassify
>
implements
PcloudKeywordClassifyDao
{
@Override
public
void
setDeleteById
(
Long
id
)
{
getSessionTemplate
().
update
(
getStatement
(
"setDeleteById"
),
id
);
}
@Override
public
void
updateOpenById
(
Long
id
,
Boolean
open
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"id"
,
id
);
map
.
put
(
"open"
,
open
);
getSessionTemplate
().
update
(
getStatement
(
"updateOpenById"
),
map
);
}
@Override
public
List
<
PcloudKeywordClassifyDTO
>
list
(
String
classify
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"classify"
,
classify
);
return
getSessionTemplate
().
selectList
(
getStatement
(
"list"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/impl/PcloudKeywordDaoImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
.
impl
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordDao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Component
(
"pcloudKeywordDao"
)
public
class
PcloudKeywordDaoImpl
extends
BaseDaoImpl
<
PcloudKeyword
>
implements
PcloudKeywordDao
{
@Override
public
List
<
Long
>
getIdsByClassifyId
(
Long
keywordClassifyId
)
{
return
getSessionTemplate
().
selectList
(
getStatement
(
"getIdsByClassifyId"
),
keywordClassifyId
);
}
@Override
public
void
deleteByClassifyId
(
Long
keywordClassifyId
)
{
getSessionTemplate
().
delete
(
getStatement
(
"deleteByClassifyId"
),
keywordClassifyId
);
}
@Override
public
PcloudKeyword
getByClassifyIdAndName
(
Integer
type
,
Long
pcloudClassifyId
,
String
name
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"type"
,
type
);
map
.
put
(
"pcloudClassifyId"
,
pcloudClassifyId
);
map
.
put
(
"name"
,
name
);
return
getSessionTemplate
().
selectOne
(
getStatement
(
"getByClassifyIdAndName"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/impl/PcloudKeywordNameDaoImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
.
impl
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordNameDao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Component
(
"pcloudKeywordNameDao"
)
public
class
PcloudKeywordNameDaoImpl
extends
BaseDaoImpl
<
PcloudKeywordName
>
implements
PcloudKeywordNameDao
{
@Override
public
Integer
batchInsert
(
List
<
PcloudKeywordName
>
list
)
{
return
super
.
getSqlSession
().
insert
(
getStatement
(
"batchInsert"
),
list
);
}
@Override
public
void
deleteByPcloudKeywordId
(
Long
pcloudKeywordId
)
{
super
.
getSqlSession
().
delete
(
getStatement
(
"deleteByPcloudKeywordId"
),
pcloudKeywordId
);
}
@Override
public
List
<
PcloudKeywordName
>
getByPcloudKeywordId
(
Long
pcloudKeywordId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"pcloudKeywordId"
,
pcloudKeywordId
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"getByPcloudKeywordId"
),
map
);
}
@Override
public
List
<
PcloudKeywordName
>
getByPcloudKeywordIds
(
List
<
Long
>
pcloudKeywordIds
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"pcloudKeywordIds"
,
pcloudKeywordIds
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"getByPcloudKeywordIds"
),
map
);
}
@Override
public
void
deleteByKeywordIds
(
List
<
Long
>
pcloudKeywordIds
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"pcloudKeywordIds"
,
pcloudKeywordIds
);
getSessionTemplate
().
delete
(
getStatement
(
"deleteByKeywordIds"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/impl/PcloudKeywordReplyDaoImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
.
impl
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudKeywordReplyDao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Component
(
"pcloudKeywordReplyDao"
)
public
class
PcloudKeywordReplyDaoImpl
extends
BaseDaoImpl
<
PcloudKeywordReply
>
implements
PcloudKeywordReplyDao
{
@Override
public
Integer
batchInsert
(
List
<
PcloudKeywordReply
>
list
)
{
return
super
.
getSqlSession
().
insert
(
getStatement
(
"batchInsert"
),
list
);
}
@Override
public
void
deleteByRelevance
(
Integer
relevanceType
,
Long
relevanceId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"relevanceType"
,
relevanceType
);
map
.
put
(
"relevanceId"
,
relevanceId
);
super
.
getSqlSession
().
delete
(
getStatement
(
"deleteByRelevance"
),
map
);
}
@Override
public
List
<
PcloudKeywordReply
>
getByRelevance
(
Integer
relevanceType
,
Long
relevanceId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"relevanceType"
,
relevanceType
);
map
.
put
(
"relevanceId"
,
relevanceId
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"getByRelevance"
),
map
);
}
@Override
public
List
<
PcloudKeywordReply
>
getByRelevances
(
Integer
relevanceType
,
List
<
Long
>
relevanceIds
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"relevanceType"
,
relevanceType
);
map
.
put
(
"relevanceIds"
,
relevanceIds
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"getByRelevances"
),
map
);
}
@Override
public
void
deleteByRelevanceIds
(
Integer
relevanceType
,
List
<
Long
>
relevanceIds
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"relevanceType"
,
relevanceType
);
map
.
put
(
"relevanceIds"
,
relevanceIds
);
getSessionTemplate
().
delete
(
getStatement
(
"deleteByRelevanceIds"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dao/impl/PcloudNotKeywordDaoImpl.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dao
.
impl
;
import
com.pcloud.book.pcloudkeyword.dao.PcloudNotKeywordDao
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Component
(
"pcloudNotKeywordDao"
)
public
class
PcloudNotKeywordDaoImpl
extends
BaseDaoImpl
<
PcloudNotKeyword
>
implements
PcloudNotKeywordDao
{
@Override
public
List
<
Long
>
getIdsByClassifyId
(
Long
keywordClassifyId
)
{
return
getSessionTemplate
().
selectList
(
getStatement
(
"getIdsByClassifyId"
),
keywordClassifyId
);
}
@Override
public
void
deleteByClassifyId
(
Long
keywordClassifyId
)
{
getSessionTemplate
().
delete
(
getStatement
(
"deleteByClassifyId"
),
keywordClassifyId
);
}
@Override
public
List
<
PcloudNotKeyword
>
getPcloudNotKeywordList
(
Long
keywordClassifyId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"keywordClassifyId"
,
keywordClassifyId
);
return
getSessionTemplate
().
selectList
(
getStatement
(
"getPcloudNotKeywordList"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/dto/PcloudKeywordClassifyDTO.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.wechatgroup.base.dto.BaseDTO
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
@Data
@ApiModel
(
"全平台关键词分类"
)
public
class
PcloudKeywordClassifyDTO
extends
BaseDTO
{
@ApiModelProperty
(
"id"
)
private
Long
id
;
@ApiModelProperty
(
"分类"
)
private
String
keywordClassify
;
@ApiModelProperty
(
"是否启用"
)
private
Boolean
open
;
@ApiModelProperty
(
"创建人"
)
private
Long
createUser
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"创建时间"
)
private
Date
createTime
;
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/entity/PcloudKeyword.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
java.util.List
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
@ApiModel
(
"全平台关键词"
)
public
class
PcloudKeyword
extends
BaseEntity
{
@ApiModelProperty
(
"类型1:精准,2模糊"
)
private
Integer
type
;
@ApiModelProperty
(
"方式1全部回复,2随机回复"
)
private
Integer
method
;
@ApiModelProperty
(
"关键词分类id"
)
private
Long
keywordClassifyId
;
@ApiModelProperty
(
"回复列表"
)
private
List
<
PcloudKeywordReply
>
pcloudKeywordReplies
;
@ApiModelProperty
(
"名称列表"
)
private
List
<
PcloudKeywordName
>
pcloudKeywordNames
;
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/entity/PcloudKeywordClassify.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
entity
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
@Data
@ApiModel
(
"全平台关键词分类"
)
public
class
PcloudKeywordClassify
extends
BaseEntity
{
@ApiModelProperty
(
"分类"
)
private
String
keywordClassify
;
@ApiModelProperty
(
"是否启用"
)
private
Boolean
open
;
@ApiModelProperty
(
"是否删除"
)
private
Boolean
isDelete
;
@ApiModelProperty
(
"创建人"
)
private
Long
createUser
;
@ApiModelProperty
(
"修改人"
)
private
Long
updateUser
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"创建时间"
)
private
Date
createTime
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"修改时间"
)
private
Date
updateTime
;
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/entity/PcloudKeywordName.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@ApiModel
(
"全平台关键词名称"
)
@Data
public
class
PcloudKeywordName
extends
BaseEntity
{
@ApiModelProperty
(
"关键词id"
)
private
Long
pcloudKeywordId
;
@ApiModelProperty
(
"名称"
)
private
String
name
;
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/entity/PcloudKeywordReply.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
com.pcloud.contentcenter.resource.dto.ResourceOfficeItemDTO
;
import
com.pcloud.contentcenter.resource.dto.ResourcePdfItemDTO
;
import
java.util.List
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
@ApiModel
(
"关键词和非关键词回复"
)
public
class
PcloudKeywordReply
extends
BaseEntity
{
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材"
)
private
Integer
type
;
@ApiModelProperty
(
"内容"
)
private
String
content
;
@ApiModelProperty
(
"图片地址"
)
private
String
picUrl
;
@ApiModelProperty
(
"应用或作品id"
)
private
Long
serveId
;
@ApiModelProperty
(
"应用或作品类型"
)
private
String
serveType
;
@ApiModelProperty
(
"链接地址"
)
private
String
linkUrl
;
@ApiModelProperty
(
"资源id"
)
private
Long
resourceId
;
@ApiModelProperty
(
"关联类型1关键词,2非关键词"
)
private
Integer
relevanceType
;
@ApiModelProperty
(
"关联的关键词或非关键词id"
)
private
Long
relevanceId
;
@ApiModelProperty
(
"应用或作品图片"
)
private
String
servePic
;
@ApiModelProperty
(
"应用或作品名称"
)
private
String
serveName
;
@ApiModelProperty
(
"应用或作品类型名称"
)
private
String
serveTypeName
;
@ApiModelProperty
(
"应用或作品类型编码"
)
private
String
serveTypeCode
;
@ApiModelProperty
(
"资源链接"
)
private
String
resourceUrl
;
@ApiModelProperty
(
"资源名称"
)
private
String
resourceName
;
@ApiModelProperty
(
"资源类型编码"
)
private
String
resourceTypeCode
;
@ApiModelProperty
(
"资源类型名称"
)
private
String
resourceTypeName
;
@ApiModelProperty
(
"文件类型"
)
private
String
fileType
;
@ApiModelProperty
(
"pdf转码后的单张图片集合"
)
private
List
<
ResourcePdfItemDTO
>
resourcePdfItems
;
@ApiModelProperty
(
"文件转码后的单张图片集合"
)
private
List
<
ResourceOfficeItemDTO
>
resourceOfficeItemDTOs
;
@ApiModelProperty
(
"文件大小"
)
private
Long
fileSize
;
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/entity/PcloudNotKeyword.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
@Data
@ApiModel
(
"全平台非关键词"
)
public
class
PcloudNotKeyword
extends
BaseEntity
{
@ApiModelProperty
(
"方式1全部回复,2随机回复"
)
private
Integer
method
;
@ApiModelProperty
(
"关键词分类id"
)
private
Long
keywordClassifyId
;
@ApiModelProperty
(
"创建人"
)
private
Long
createUser
;
@ApiModelProperty
(
"回复列表"
)
private
List
<
PcloudKeywordReply
>
pcloudKeywordReplies
;
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/enums/KeywordTypeEnum.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
enums
;
public
enum
KeywordTypeEnum
{
/**
* 精准
*/
ACCURATE
(
1
),
/**
* 随机回复
*/
LIKE
(
2
);
/**
* 值
*/
public
final
Integer
value
;
KeywordTypeEnum
(
Integer
value
)
{
this
.
value
=
value
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/enums/MethodEnum.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
enums
;
public
enum
MethodEnum
{
/**
* 1全部回复,
*/
ALL
(
1
),
/**
* 2随机回复
*/
RANDOM
(
2
);
/**
* 值
*/
public
final
Integer
value
;
MethodEnum
(
Integer
value
)
{
this
.
value
=
value
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/enums/RelevanceTypeEnum.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
enums
;
public
enum
RelevanceTypeEnum
{
/**
* 关键词
*/
KEYWORD
(
1
),
/**
* 非关键词
*/
NOT_KEYWORD
(
2
);
/**
* 值
*/
public
final
Integer
value
;
RelevanceTypeEnum
(
Integer
value
)
{
this
.
value
=
value
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/facade/PcloudKeywordFacade.java
0 → 100644
View file @
7bc9851e
package
com
.
pcloud
.
book
.
pcloudkeyword
.
facade
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.pcloudkeyword.biz.PcloudKeywordBiz
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeyword
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.permission.PermissionException
;
import
com.pcloud.common.utils.SessionUtil
;
import
com.pcloud.book.pcloudkeyword.biz.PcloudKeywordClassifyBiz
;
import
com.pcloud.book.pcloudkeyword.dto.PcloudKeywordClassifyDTO
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify
;
import
com.pcloud.common.utils.string.StringUtil
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestHeader
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
io.swagger.annotations.Api
;
import
java.util.List
;
@Api
(
"全平台关键词"
)
@RestController
(
"pcloudKeywordFacade"
)
@RequestMapping
(
"pcloudKeyword"
)
public
class
PcloudKeywordFacade
{
@Autowired
private
PcloudKeywordBiz
pcloudKeywordBiz
;
@Autowired
private
PcloudKeywordClassifyBiz
pcloudKeywordClassifyBiz
;
@ApiOperation
(
"新增关键词分类"
)
@PostMapping
(
"insertClassify"
)
public
ResponseDto
<?>
insertClassify
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
PcloudKeywordClassify
pcloudKeywordClassify
)
throws
PermissionException
{
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
if
(
null
==
pcloudKeywordClassify
||
StringUtil
.
isEmpty
(
pcloudKeywordClassify
.
getKeywordClassify
())
||
null
==
pcloudKeywordClassify
.
getOpen
()){
throw
new
BookBizException
(
BookBizException
.
FILED_NULL
,
"缺少参数"
);
}
pcloudKeywordClassify
.
setCreateUser
(
partyId
);
return
new
ResponseDto
<>(
pcloudKeywordClassifyBiz
.
insert
(
pcloudKeywordClassify
));
}
@ApiOperation
(
"修改关键词分类"
)
@PostMapping
(
"updateClassify"
)
public
ResponseDto
<?>
updateClassify
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
PcloudKeywordClassify
pcloudKeywordClassify
)
throws
PermissionException
{
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
if
(
null
==
pcloudKeywordClassify
||
null
==
pcloudKeywordClassify
.
getId
()){
throw
new
BookBizException
(
BookBizException
.
FILED_NULL
,
"缺少参数id"
);
}
if
(
StringUtil
.
isEmpty
(
pcloudKeywordClassify
.
getKeywordClassify
())
||
null
==
pcloudKeywordClassify
.
getOpen
()){
throw
new
BookBizException
(
BookBizException
.
FILED_NULL
,
"缺少参数"
);
}
pcloudKeywordClassify
.
setUpdateUser
(
partyId
);
pcloudKeywordClassifyBiz
.
update
(
pcloudKeywordClassify
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"删除关键词分类"
)
@GetMapping
(
"deleteClassifyById"
)
public
ResponseDto
<?>
deleteClassifyById
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
@ApiParam
(
"id"
)
Long
id
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
if
(
null
==
id
){
throw
new
BookBizException
(
BookBizException
.
FILED_NULL
,
"缺少参数id"
);
}
pcloudKeywordClassifyBiz
.
deleteById
(
id
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"修改关键词分类启用状态"
)
@GetMapping
(
"updateClassifyOpen"
)
public
ResponseDto
<?>
updateClassifyOpen
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
@ApiParam
(
"id"
)
Long
id
,
@RequestParam
(
"open"
)
@ApiParam
(
"启用状态"
)
Boolean
open
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
if
(
null
==
id
||
null
==
open
){
throw
new
BookBizException
(
BookBizException
.
FILED_NULL
,
"缺少参数"
);
}
pcloudKeywordClassifyBiz
.
updateOpenStateById
(
id
,
open
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"关键词分类列表"
)
@GetMapping
(
"listKeywordClassify"
)
public
ResponseDto
<
List
<
PcloudKeywordClassifyDTO
>>
listKeywordClassify
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
value
=
"classify"
,
required
=
false
)
@ApiParam
(
"分类名模糊查询"
)
String
classify
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
List
<
PcloudKeywordClassifyDTO
>
list
=
pcloudKeywordClassifyBiz
.
list
(
classify
);
return
new
ResponseDto
<>(
list
);
}
@ApiOperation
(
"新增平台端关键词"
)
@PostMapping
(
"createPcloudKeyword"
)
ResponseDto
<?>
createPcloudKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
(
"平台端关键词"
)
PcloudKeyword
pcloudKeyword
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
pcloudKeywordBiz
.
createPcloudKeyword
(
pcloudKeyword
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"修改平台端关键词"
)
@PostMapping
(
"updatePcloudKeyword"
)
ResponseDto
<?>
updatePcloudKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
(
"平台端关键词"
)
PcloudKeyword
pcloudKeyword
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
pcloudKeywordBiz
.
updatePcloudKeyword
(
pcloudKeyword
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"获取平台端关键词"
)
@GetMapping
(
"getPcloudKeyword"
)
ResponseDto
<?>
getPcloudKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
@ApiParam
(
"平台端关键词"
)
Long
id
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
return
new
ResponseDto
<>(
pcloudKeywordBiz
.
getPcloudKeyword
(
id
));
}
@ApiOperation
(
"获取平台端关键词"
)
@GetMapping
(
"getPcloudKeywordList"
)
ResponseDto
<?>
getPcloudKeywordList
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"keywordClassifyId"
)
@ApiParam
(
"平台端关键词分类id"
)
Long
keywordClassifyId
,
@RequestParam
(
value
=
"name"
,
required
=
false
)
@ApiParam
(
"平台端关键词名称"
)
String
name
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
return
new
ResponseDto
<>(
pcloudKeywordBiz
.
getPcloudKeywordList
(
keywordClassifyId
,
name
,
currentPage
,
numPerPage
));
}
@ApiOperation
(
"删除平台端关键词"
)
@GetMapping
(
"deletePcloudKeyword"
)
ResponseDto
<?>
deletePcloudKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
@ApiParam
(
"平台端关键词"
)
Long
id
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
pcloudKeywordBiz
.
deletePcloudKeyword
(
id
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"新增非关键词"
)
@PostMapping
(
"insertNotKeyword"
)
public
ResponseDto
<?>
insertNotKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
PcloudNotKeyword
pcloudNotKeyword
)
throws
PermissionException
{
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
pcloudNotKeyword
.
setCreateUser
(
partyId
);
Long
id
=
pcloudKeywordBiz
.
insertNotKeyword
(
pcloudNotKeyword
);
return
new
ResponseDto
<>(
id
);
}
@ApiOperation
(
"修改非关键词"
)
@PostMapping
(
"updateNotKeyword"
)
public
ResponseDto
<?>
updateNotKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
PcloudNotKeyword
pcloudNotKeyword
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
pcloudKeywordBiz
.
updateNotKeyword
(
pcloudNotKeyword
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"删除非关键词"
)
@GetMapping
(
"deleteNotKeywordById"
)
public
ResponseDto
<?>
deleteNotKeywordById
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
Long
id
)
throws
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
pcloudKeywordBiz
.
deletePcloudNotKeyword
(
id
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"根据id查询非关键词"
)
@GetMapping
(
"getNotKeywordById"
)
public
ResponseDto
<?>
getNotKeywordById
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
Long
id
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
return
new
ResponseDto
<>(
pcloudKeywordBiz
.
getNotKeywordById
(
id
));
}
@ApiOperation
(
"获取平台端非关键词"
)
@GetMapping
(
"getPcloudNotKeywordList"
)
ResponseDto
<?>
getPcloudNotKeywordList
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
@ApiParam
(
"平台端关键词分类id"
)
Long
keywordClassifyId
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
return
new
ResponseDto
<>(
pcloudKeywordBiz
.
getPcloudNotKeywordList
(
keywordClassifyId
,
currentPage
,
numPerPage
));
}
}
pcloud-service-book/src/main/resources/mapper/pcloudkeyword/PcloudKeyword.xml
0 → 100644
View file @
7bc9851e
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.pcloudkeyword.dao.impl.PcloudKeywordDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeyword"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword_classify_id"
property=
"keywordClassifyId"
jdbcType=
"BIGINT"
/>
<result
column=
"type"
property=
"type"
jdbcType=
"INTEGER"
/>
<result
column=
"method"
property=
"method"
jdbcType=
"INTEGER"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, keyword_classify_id, type,method, create_time
</sql>
<delete
id=
"deleteById"
parameterType=
"long"
>
delete from pcloud_keyword where id=#{id}
</delete>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeyword"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_keyword
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
keyword_classify_id,
type,
method,
create_time
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{keywordClassifyId,jdbcType=BIGINT},
#{type,jdbcType=INTEGER},
#{method,jdbcType=INTEGER},
NOW()
</trim>
</insert>
<update
id=
"update"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeyword"
>
update pcloud_keyword
<set>
<if
test=
"keywordClassifyId != null"
>
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT},
</if>
<if
test=
"type != null"
>
type = #{type,jdbcType=INTEGER},
</if>
<if
test=
"method != null"
>
method = #{method,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<select
id=
"getById"
parameterType=
"long"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword
where id=#{id}
</select>
<select
id=
"getPcloudKeywordList"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select
t1.id, t1.keyword_classify_id, t1.type,t1.method, t1.create_time
from pcloud_keyword t1
inner join pcloud_keyword_name t2 on t1.id=t2.pcloud_keyword_id
where t1.keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT}
<if
test=
"name!=null"
>
and t2.name like concat('%', #{name}, '%')
</if>
group by t1.id
</select>
<select
id=
"getIdsByClassifyId"
parameterType=
"long"
resultType=
"long"
>
SELECT
id
FROM
pcloud_keyword
WHERE
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT}
</select>
<delete
id=
"deleteByClassifyId"
parameterType=
"long"
>
delete FROM
pcloud_keyword
WHERE
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT}
</delete>
<select
id=
"getByClassifyIdAndName"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select t1.id, t1.keyword_classify_id, t1.type,t1.method, t1.create_time
from pcloud_keyword t1
inner join pcloud_keyword_name t2 on t1.id=t2.pcloud_keyword_id
where t1.keyword_classify_id=#{pcloudClassifyId}
and t1.type=#{type}
<if
test=
"type==1"
>
and t2.name=#{name}
</if>
<if
test=
"type==2"
>
and t2.name like concat('%', #{name}, '%')
</if>
group by t1.id
limit 1
</select>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/pcloudkeyword/PcloudKeywordClassify.xml
0 → 100644
View file @
7bc9851e
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.pcloudkeyword.dao.impl.PcloudKeywordClassifyDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword_classify"
property=
"keywordClassify"
jdbcType=
"VARCHAR"
/>
<result
column=
"open"
property=
"open"
jdbcType=
"BOOLEAN"
/>
<result
column=
"is_delete"
property=
"isDelete"
jdbcType=
"BOOLEAN"
/>
<result
column=
"create_user"
property=
"createUser"
jdbcType=
"BIGINT"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"update_user"
property=
"updateUser"
jdbcType=
"BIGINT"
/>
<result
column=
"update_time"
property=
"updateTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, keyword_classify, open, is_delete, create_user, create_time, update_user, update_time
</sql>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_keyword_classify
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
keyword_classify,
open,
is_delete,
create_user,
create_time,
update_user,
update_time
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{keywordClassify,jdbcType=VARCHAR},
#{open},
0,
#{createUser,jdbcType=BIGINT},
NOW(),
#{createUser,jdbcType=BIGINT},
NOW()
</trim>
</insert>
<update
id=
"update"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordClassify"
>
update pcloud_keyword_classify
<set>
<if
test=
"keywordClassify != null"
>
keyword_classify = #{keywordClassify,jdbcType=VARCHAR},
</if>
<if
test=
"open != null"
>
open = #{open},
</if>
<if
test=
"updateUser != null"
>
update_user = #{updateUser,jdbcType=BIGINT},
</if>
update_time = NOW(),
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update
id=
"setDeleteById"
parameterType=
"long"
>
update pcloud_keyword_classify
set is_delete = 1,
update_time = NOW()
where id = #{id,jdbcType=BIGINT}
</update>
<update
id=
"updateOpenById"
parameterType=
"map"
>
update pcloud_keyword_classify
set open = #{open},
update_time = NOW()
where id = #{id,jdbcType=BIGINT}
</update>
<select
id=
"list"
parameterType=
"map"
resultType=
"com.pcloud.book.pcloudkeyword.dto.PcloudKeywordClassifyDTO"
>
select
id id,
keyword_classify keywordClassify,
open open,
create_user createUser,
create_time createTime
from pcloud_keyword_classify
where is_delete = 0
<if
test=
"classify != null"
>
and keyword_classify like concat("%", #{classify}, "%")
</if>
order by id desc
</select>
<select
id=
"getById"
parameterType=
"long"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
></include>
from pcloud_keyword_classify
where id = #{id,jdbcType=BIGINT}
</select>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/pcloudkeyword/PcloudKeywordName.xml
0 → 100644
View file @
7bc9851e
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.pcloudkeyword.dao.impl.PcloudKeywordNameDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"pcloud_keyword_id"
property=
"pcloudKeywordId"
jdbcType=
"BIGINT"
/>
<result
column=
"name"
property=
"name"
jdbcType=
"VARCHAR"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, pcloud_keyword_id, name, create_time
</sql>
<delete
id=
"deleteById"
parameterType=
"long"
>
delete from pcloud_keyword_name where id=#{id}
</delete>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_keyword_name
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
pcloud_keyword_id,
name,
create_time
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{pcloudKeywordId,jdbcType=BIGINT},
#{name,jdbcType=VARCHAR},
NOW()
</trim>
</insert>
<!--批量插入-->
<insert
id=
"batchInsert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordName"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_keyword_name (
pcloud_keyword_id,
name,
create_time
) values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(
#{item.pcloudKeywordId,jdbcType=BIGINT},
#{item.name,jdbcType=VARCHAR},
NOW()
)
</foreach>
</insert>
<select
id=
"getById"
parameterType=
"long"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword_name
where id=#{id}
</select>
<delete
id=
"deleteByPcloudKeywordId"
parameterType=
"long"
>
delete from pcloud_keyword_name
where pcloud_keyword_id=#{pcloudKeywordId}
</delete>
<select
id=
"getByPcloudKeywordId"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword_name
where pcloud_keyword_id=#{pcloudKeywordId}
</select>
<select
id=
"getByPcloudKeywordIds"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword_name
where pcloud_keyword_id in
<foreach
collection=
"pcloudKeywordIds"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
</select>
<delete
id=
"deleteByKeywordIds"
parameterType=
"map"
>
delete FROM
pcloud_keyword_name
where pcloud_keyword_id in
<foreach
collection=
"pcloudKeywordIds"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
</delete>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/pcloudkeyword/PcloudKeywordReply.xml
0 → 100644
View file @
7bc9851e
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.pcloudkeyword.dao.impl.PcloudKeywordReplyDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"type"
property=
"type"
jdbcType=
"INTEGER"
/>
<result
column=
"content"
property=
"content"
jdbcType=
"VARCHAR"
/>
<result
column=
"pic_url"
property=
"picUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"serve_id"
property=
"serveId"
jdbcType=
"BIGINT"
/>
<result
column=
"serve_type"
property=
"serveType"
jdbcType=
"VARCHAR"
/>
<result
column=
"link_url"
property=
"linkUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"resource_id"
property=
"resourceId"
jdbcType=
"BIGINT"
/>
<result
column=
"relevance_type"
property=
"relevanceType"
jdbcType=
"INTEGER"
/>
<result
column=
"relevance_id"
property=
"relevanceId"
jdbcType=
"BIGINT"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, type, content, pic_url, serve_id, serve_type, link_url, resource_id, relevance_type, relevance_id, create_time
</sql>
<delete
id=
"deleteById"
parameterType=
"long"
>
delete from pcloud_keyword_name where id=#{id}
</delete>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_keyword_reply
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
type,
content,
pic_url,
serve_id,
serve_type,
link_url,
resource_id,
relevance_type,
relevance_id,
create_time
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{type,jdbcType=INTEGER},
#{content,jdbcType=VARCHAR},
#{picUrl,jdbcType=VARCHAR},
#{serveId,jdbcType=BIGINT},
#{serveType,jdbcType=VARCHAR},
#{linkUrl,jdbcType=VARCHAR},
#{resourceId,jdbcType=BIGINT},
#{relevanceType,jdbcType=INTEGER},
#{relevanceId,jdbcType=BIGINT},
NOW()
</trim>
</insert>
<!--批量插入-->
<insert
id=
"batchInsert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudKeywordReply"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_keyword_reply (
type,
content,
pic_url,
serve_id,
serve_type,
link_url,
resource_id,
relevance_type,
relevance_id,
create_time
) values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(
#{item.type,jdbcType=INTEGER},
#{item.content,jdbcType=VARCHAR},
#{item.picUrl,jdbcType=VARCHAR},
#{item.serveId,jdbcType=BIGINT},
#{item.serveType,jdbcType=VARCHAR},
#{item.linkUrl,jdbcType=VARCHAR},
#{item.resourceId,jdbcType=BIGINT},
#{item.relevanceType,jdbcType=INTEGER},
#{item.relevanceId,jdbcType=BIGINT},
NOW()
)
</foreach>
</insert>
<select
id=
"getById"
parameterType=
"long"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword_reply
where id=#{id}
</select>
<delete
id=
"deleteByRelevance"
parameterType=
"map"
>
delete from pcloud_keyword_reply
where relevance_id=#{relevanceId}
and relevance_type=#{relevanceType}
</delete>
<select
id=
"getByRelevance"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword_reply
where relevance_id=#{relevanceId}
and relevance_type=#{relevanceType}
</select>
<select
id=
"getByRelevances"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_keyword_reply
where relevance_id in
<foreach
collection=
"relevanceIds"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
and relevance_type=#{relevanceType}
</select>
<delete
id=
"deleteByRelevanceIds"
parameterType=
"map"
>
delete from pcloud_keyword_reply
where relevance_id in
<foreach
collection=
"relevanceIds"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
and relevance_type=#{relevanceType}
</delete>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/pcloudkeyword/PcloudNotKeyword.xml
0 → 100644
View file @
7bc9851e
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.pcloudkeyword.dao.impl.PcloudNotKeywordDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword_classify_id"
property=
"keywordClassifyId"
jdbcType=
"BIGINT"
/>
<result
column=
"method"
property=
"method"
jdbcType=
"INTEGER"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"create_user"
property=
"createUser"
jdbcType=
"BIGINT"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, keyword_classify_id,method, create_time, create_user
</sql>
<delete
id=
"deleteById"
parameterType=
"long"
>
delete from pcloud_not_keyword where id=#{id}
</delete>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into pcloud_not_keyword
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
keyword_classify_id,
method,
create_time,
create_user
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{keywordClassifyId,jdbcType=BIGINT},
#{method,jdbcType=INTEGER},
NOW(),
#{createUser}
</trim>
</insert>
<update
id=
"update"
parameterType=
"com.pcloud.book.pcloudkeyword.entity.PcloudNotKeyword"
>
update pcloud_not_keyword
<set>
<if
test=
"keywordClassifyId != null"
>
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT},
</if>
<if
test=
"method != null"
>
method = #{method,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<select
id=
"getById"
parameterType=
"long"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from pcloud_not_keyword
where id=#{id}
</select>
<select
id=
"getPcloudNotKeywordList"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM
pcloud_not_keyword
WHERE
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT}
ORDER BY
id DESC
</select>
<select
id=
"getIdsByClassifyId"
resultType=
"long"
parameterType=
"long"
>
SELECT id
FROM
pcloud_not_keyword
WHERE
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT}
</select>
<delete
id=
"deleteByClassifyId"
parameterType=
"long"
>
delete FROM
pcloud_not_keyword
WHERE
keyword_classify_id = #{keywordClassifyId,jdbcType=BIGINT}
</delete>
</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