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
2968ae3e
Commit
2968ae3e
authored
Feb 06, 2020
by
郑永强
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
【1002273】与小睿对话记录用户书刊并索要出版社信息
parent
46c8a8c3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
615 additions
and
12 deletions
+615
-12
BookService.java
...c/main/java/com/pcloud/book/book/service/BookService.java
+6
-0
BookBiz.java
...-book/src/main/java/com/pcloud/book/book/biz/BookBiz.java
+6
-0
BookBizImpl.java
.../main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
+20
-0
BookDao.java
...-book/src/main/java/com/pcloud/book/book/dao/BookDao.java
+7
-0
BookDaoImpl.java
.../main/java/com/pcloud/book/book/dao/impl/BookDaoImpl.java
+7
-0
BookServiceImpl.java
...va/com/pcloud/book/book/service/impl/BookServiceImpl.java
+9
-0
ChannelConsr.java
...main/java/com/pcloud/book/consumer/user/ChannelConsr.java
+17
-0
SelfRobotKeywordBiz.java
...ava/com/pcloud/book/keywords/biz/SelfRobotKeywordBiz.java
+5
-0
BookKeywordBizImpl.java
...com/pcloud/book/keywords/biz/impl/BookKeywordBizImpl.java
+107
-7
SelfRobotKeywordBizImpl.java
...cloud/book/keywords/biz/impl/SelfRobotKeywordBizImpl.java
+137
-5
SelfRobotBookRecordDao.java
.../com/pcloud/book/keywords/dao/SelfRobotBookRecordDao.java
+11
-0
SelfRobotKeywordReplyTemplateDao.java
...d/book/keywords/dao/SelfRobotKeywordReplyTemplateDao.java
+15
-0
SelfRobotBookRecordDaoImpl.java
...ud/book/keywords/dao/impl/SelfRobotBookRecordDaoImpl.java
+18
-0
SelfRobotKeywordReplyTemplateDaoImpl.java
...ywords/dao/impl/SelfRobotKeywordReplyTemplateDaoImpl.java
+21
-0
SelfRobotBookRecordDTO.java
.../com/pcloud/book/keywords/dto/SelfRobotBookRecordDTO.java
+50
-0
SelfRobotBookRecord.java
.../com/pcloud/book/keywords/entity/SelfRobotBookRecord.java
+39
-0
SelfRobotKeywordReplyTemplate.java
...d/book/keywords/entity/SelfRobotKeywordReplyTemplate.java
+27
-0
SelfRobotKeywordFacade.java
...m/pcloud/book/keywords/facade/SelfRobotKeywordFacade.java
+12
-0
SelfRobotKeywordFacadeImpl.java
...book/keywords/facade/impl/SelfRobotKeywordFacadeImpl.java
+15
-0
Book.Mapper.xml
...rvice-book/src/main/resources/mapper/book/Book.Mapper.xml
+11
-0
SelfRobotBookRecord.xml
...k/src/main/resources/mapper/group/SelfRobotBookRecord.xml
+55
-0
SelfRobotKeywordReplyTemplate.xml
.../resources/mapper/group/SelfRobotKeywordReplyTemplate.xml
+20
-0
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/book/service/BookService.java
View file @
2968ae3e
...
...
@@ -251,4 +251,10 @@ public interface BookService {
@RequestParam
(
value
=
"keyword"
)
String
keyword
,
@RequestParam
(
value
=
"adviserId"
)
Long
adviserId
)
throws
BizException
;
@ApiOperation
(
"根据书名模糊匹配,获得所有book_id"
)
@RequestMapping
(
value
=
"/getBookIdsByBookName"
,
method
=
RequestMethod
.
GET
)
ResponseEntity
<
ResponseDto
<
List
<
Long
>>>
getBookIdsByBookName
(
@RequestParam
(
value
=
"bookName"
)
String
bookName
)
throws
BizException
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookBiz.java
View file @
2968ae3e
...
...
@@ -605,4 +605,10 @@ public interface BookBiz {
*/
void
exportBookIncomeDetail
(
Map
<
String
,
Object
>
paramMap
,
Long
agentId
,
Long
partyId
,
String
systemCode
);
/**
* 根据书名模糊匹配,获得所有book_id
* @param bookName
* @return
*/
List
<
Long
>
getBookIdsByBookName
(
String
bookName
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
View file @
2968ae3e
...
...
@@ -1898,4 +1898,24 @@ public class BookBizImpl implements BookBiz {
}
});
}
@ParamLog
(
"根据书名模糊匹配,获得所有book_id"
)
@Override
public
List
<
Long
>
getBookIdsByBookName
(
String
bookName
)
{
LOGGER
.
info
(
"根据书名模糊匹配,获得所有book_id,<START>.[bookName]="
+
bookName
);
if
(
StringUtil
.
isEmpty
(
bookName
))
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"请输入书名"
);
}
List
<
Long
>
bookIds
;
try
{
bookIds
=
bookDao
.
getBookIdsByBookName
(
bookName
);
if
(
bookIds
==
null
)
{
bookIds
=
Lists
.
newArrayList
();
}
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"根据书名模糊匹配,获得所有book_id,<ERROR>.[getBookIdsByBookName]:"
+
e
.
getMessage
(),
e
);
throw
BizException
.
DB_SELECT_IS_FAIL
;
}
return
bookIds
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/BookDao.java
View file @
2968ae3e
...
...
@@ -320,4 +320,11 @@ public interface BookDao extends BaseDao<Book> {
List
<
BookSaleVO
>
listIncomePage4Agent
(
Map
<
String
,
Object
>
paramMap
);
Long
countIncomePage4Agent
(
Map
<
String
,
Object
>
paramMap
);
/**
* 模糊匹配书名 限制50条
* @param bookName
* @return
*/
List
<
Long
>
getBookIdsByBookName
(
String
bookName
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/BookDaoImpl.java
View file @
2968ae3e
...
...
@@ -314,4 +314,11 @@ public class BookDaoImpl extends BaseDaoImpl<Book> implements BookDao {
public
Long
countIncomePage4Agent
(
Map
<
String
,
Object
>
paramMap
)
{
return
super
.
getSqlSession
().
selectOne
(
super
.
getStatement
(
"countIncomePage4Agent"
),
paramMap
);
}
@Override
public
List
<
Long
>
getBookIdsByBookName
(
String
bookName
)
{
Map
<
String
,
Object
>
paramMap
=
Maps
.
newHashMap
();
paramMap
.
put
(
"bookName"
,
bookName
);
return
super
.
getSqlSession
().
selectList
(
getStatement
(
"getBookIdsByBookName"
),
paramMap
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/service/impl/BookServiceImpl.java
View file @
2968ae3e
...
...
@@ -201,4 +201,13 @@ public class BookServiceImpl implements BookService {
)
throws
BizException
{
return
ResponseHandleUtil
.
toResponse
(
bookBiz
.
getIdsByNameOrISBN
(
keyword
,
adviserId
));
}
@ApiOperation
(
"根据书名模糊匹配,获得所有book_id"
)
@RequestMapping
(
value
=
"/getBookIdsByBookName"
,
method
=
RequestMethod
.
GET
)
@Override
public
ResponseEntity
<
ResponseDto
<
List
<
Long
>>>
getBookIdsByBookName
(
@RequestParam
(
value
=
"bookName"
)
String
bookName
)
throws
BizException
{
return
ResponseHandleUtil
.
toResponse
(
bookBiz
.
getBookIdsByBookName
(
bookName
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/user/ChannelConsr.java
View file @
2968ae3e
...
...
@@ -4,6 +4,7 @@
package
com
.
pcloud
.
book
.
consumer
.
user
;
import
com.pcloud.channelcenter.base.exceptions.ChannelBizException
;
import
com.pcloud.channelcenter.wechat.service.MessageService
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.ResponseHandleUtil
;
...
...
@@ -31,6 +32,8 @@ public class ChannelConsr {
@Autowired
private
ChannelService
channelService
;
@Autowired
private
MessageService
messageService
;
/**
* 获取渠道名称
...
...
@@ -124,4 +127,18 @@ public class ChannelConsr {
}
}
/**
* 根据bookIds获取资源数
* @param bookIds
* @return
*/
public
Integer
getMessageCountByBookIds
(
List
<
Long
>
bookIds
){
LOGGER
.
info
(
"根据bookIds获取资源数,<START>.[bookIds]="
+
bookIds
.
toString
());
try
{
return
ResponseHandleUtil
.
parseResponse
(
messageService
.
getMessageCountByBookIds
(
bookIds
),
Integer
.
class
);
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"获取代理下已经审核通过的运营id.[getApproveIdList]:"
+
e
.
getMessage
(),
e
);
throw
new
ChannelBizException
(
ChannelBizException
.
PARAM_IS_NULL
,
"运营不存在"
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/biz/SelfRobotKeywordBiz.java
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
biz
;
import
com.pcloud.book.keywords.dto.SelfRobotBookRecordDTO
;
import
com.pcloud.book.keywords.entity.SelfRobotKeyword
;
import
com.pcloud.book.keywords.vo.GuideWordVO
;
import
com.pcloud.book.keywords.vo.LabelVO
;
...
...
@@ -38,4 +39,8 @@ public interface SelfRobotKeywordBiz {
void
sendWhenNoReply
(
Integer
id
,
String
robotId
,
String
wxUserId
);
List
<
SelfRobotKeyword
>
getListByBookGroupId
(
Long
bookGroupId
);
PageBeanNew
<
SelfRobotBookRecordDTO
>
getSelfRobotBookRecordList
(
Integer
currentPage
,
Integer
numPerPage
);
void
exportSelfRobotBookRecord
(
Long
partyId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/biz/impl/BookKeywordBizImpl.java
View file @
2968ae3e
...
...
@@ -5,11 +5,14 @@ import com.google.common.collect.Maps;
import
com.pcloud.appcenter.app.dto.AppDto
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.biz.BookKeywordWarehouseBiz
;
import
com.pcloud.book.book.dao.BookDao
;
import
com.pcloud.book.book.dto.BookGuideDelayDto
;
import
com.pcloud.book.consumer.app.AppConsr
;
import
com.pcloud.book.consumer.channel.QrcodeSceneConsr
;
import
com.pcloud.book.consumer.content.ResourceConsr
;
import
com.pcloud.book.consumer.live.LiveCons
;
import
com.pcloud.book.consumer.resource.ProductConsr
;
import
com.pcloud.book.consumer.user.ChannelConsr
;
import
com.pcloud.book.consumer.wechatgroup.WechatGroupConsr
;
import
com.pcloud.book.group.biz.BookGroupAppBiz
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
...
...
@@ -94,6 +97,7 @@ import org.springframework.util.CollectionUtils;
import
javax.annotation.Resource
;
import
java.math.BigDecimal
;
import
java.net.URLEncoder
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Collections
;
...
...
@@ -170,6 +174,15 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
@Autowired
private
SelfRobotKeywordReplyDao
selfRobotKeywordReplyDao
;
@Autowired
private
BookDao
bookDao
;
@Autowired
private
SelfRobotKeywordReplyTemplateDao
selfRobotKeywordReplyTemplateDao
;
@Autowired
private
ChannelConsr
channelConsr
;
@Autowired
private
SelfRobotBookRecordDao
selfRobotBookRecordDao
;
@Autowired
private
ReadingActivityBiz
readingActivityBiz
;
@Autowired
private
NotKeywordTemplateDao
notKeywordTemplateDao
;
...
...
@@ -508,14 +521,101 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
return
;
}
if
(
SendMessageTypeEnum
.
SELF
.
getCode
().
equals
(
sendTextDTO
.
getCode
()))
{
dealBookGroupCipher
(
sendTextDTO
);
//判断是否为某个群分类名称
inviteToGroupByKeyword
(
sendTextDTO
);
//智能机器人新版个人号回复
dealSelfShortBookName
(
sendTextDTO
);
//回复关键词
replySelfKeyword
(
sendTextDTO
);
// 小睿对话索要出版社信息
boolean
_continue
=
replySelfKeywordTemplate
(
sendTextDTO
);
if
(
_continue
)
{
dealBookGroupCipher
(
sendTextDTO
);
//判断是否为某个群分类名称
inviteToGroupByKeyword
(
sendTextDTO
);
//智能机器人新版个人号回复
dealSelfShortBookName
(
sendTextDTO
);
//回复关键词
replySelfKeyword
(
sendTextDTO
);
}
}
}
@ParamLog
(
"小睿根据书名推送匹配的资源"
)
private
boolean
replySelfKeywordTemplate
(
SendTextDTO
sendTextDTO
)
{
String
content
=
sendTextDTO
.
getTextContent
();
String
redisKey
=
"replySelfKeywordTemplate:"
+
sendTextDTO
.
getWxId
()+
":"
+
sendTextDTO
.
getWechatUserId
();
List
<
SelfRobotKeywordReplyTemplate
>
replyTemplateList
=
selfRobotKeywordReplyTemplateDao
.
getList
();
// 解析出《》的书名
Pattern
pattern
=
Pattern
.
compile
(
"《(.*?)》"
);
Matcher
matcher
=
pattern
.
matcher
(
content
);
// 如果匹配不到,在匹配出版社
if
(!
matcher
.
find
()
||
matcher
.
group
(
1
).
trim
().
isEmpty
())
{
// 解析出版社 出版社:
int
index
=
content
.
indexOf
(
"出版社:"
);
// 再匹配不到,直接返回,并走接下来的逻辑
if
(
index
==
-
1
)
{
index
=
content
.
indexOf
(
"出版社:"
);
if
(
index
==
-
1
)
return
true
;
}
String
agentName
=
content
.
substring
(
index
+
4
);
if
(
StringUtil
.
isNotNull
(
agentName
)){
// 从redis取出书名
String
bookName
=
JedisClusterUtils
.
get
(
redisKey
);
// 删掉书名
JedisClusterUtils
.
del
(
redisKey
);
if
(
StringUtil
.
isNotNull
(
bookName
)){
// 将书的信息录入
SelfRobotBookRecord
selfRobotBookRecord
=
new
SelfRobotBookRecord
();
selfRobotBookRecord
.
setWxUserId
(
sendTextDTO
.
getWechatUserId
());
selfRobotBookRecord
.
setAltId
(
sendTextDTO
.
getWxId
());
selfRobotBookRecord
.
setBookName
(
bookName
);
selfRobotBookRecord
.
setStatus
(
2
);
selfRobotBookRecord
.
setAgentName
(
agentName
);
selfRobotBookRecordDao
.
insert
(
selfRobotBookRecord
);
}
Optional
<
SelfRobotKeywordReplyTemplate
>
replyTemplate
=
replyTemplateList
.
stream
().
filter
(
x
->
x
.
getStatus
().
equals
(
2
)).
findFirst
();
sendText
(
sendTextDTO
,
replyTemplate
.
get
().
getReplyContentTemplate
());
}
}
String
bookName
=
matcher
.
group
(
1
).
trim
();
// 根据书名查询到 bookIds
List
<
Long
>
bookIds
=
bookDao
.
getBookIdsByBookName
(
bookName
);
if
(
ListUtils
.
isEmpty
(
bookIds
)){
// 将书名写入redis暂存
JedisClusterUtils
.
set
(
redisKey
,
bookName
);
// 如果bookIds没有值,则回复模板状态3
// 呃,小睿刚才仔细的找了下,发现书刊的配套资源我这边还没有呢,要不等小睿看完整理好后再给你吧
Optional
<
SelfRobotKeywordReplyTemplate
>
replyTemplate
=
replyTemplateList
.
stream
().
filter
(
x
->
x
.
getStatus
().
equals
(
3
)).
findFirst
();
sendText
(
sendTextDTO
,
replyTemplate
.
get
().
getReplyContentTemplate
().
replace
(
"${bookName}"
,
bookName
));
}
else
{
// 根据bookIds查询资源数;
Integer
totalCount
=
channelConsr
.
getMessageCountByBookIds
(
bookIds
);
if
(
totalCount
>
0
){
// 信息录入
SelfRobotBookRecord
selfRobotBookRecord
=
new
SelfRobotBookRecord
();
selfRobotBookRecord
.
setWxUserId
(
sendTextDTO
.
getWechatUserId
());
selfRobotBookRecord
.
setAltId
(
sendTextDTO
.
getWxId
());
selfRobotBookRecord
.
setBookName
(
bookName
);
selfRobotBookRecord
.
setStatus
(
3
);
selfRobotBookRecordDao
.
insert
(
selfRobotBookRecord
);
// 如果有书有资源,则转换链接,并推送链接给用户
Map
<
String
,
String
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"wxId"
,
sendTextDTO
.
getWechatUserId
());
paramMap
.
put
(
"robotWxId"
,
sendTextDTO
.
getWxId
());
paramMap
.
put
(
"bookName"
,
URLEncoder
.
encode
(
bookName
));
Optional
<
SelfRobotKeywordReplyTemplate
>
replyTemplate
=
replyTemplateList
.
stream
().
filter
(
x
->
x
.
getStatus
().
equals
(
4
)).
findFirst
();
sendText
(
sendTextDTO
,
appendUrlParams
(
replyTemplate
.
get
().
getReplyContentTemplate
(),
paramMap
));
}
else
{
// 信息录入
SelfRobotBookRecord
selfRobotBookRecord
=
new
SelfRobotBookRecord
();
selfRobotBookRecord
.
setWxUserId
(
sendTextDTO
.
getWechatUserId
());
selfRobotBookRecord
.
setAltId
(
sendTextDTO
.
getWxId
());
selfRobotBookRecord
.
setBookName
(
bookName
);
selfRobotBookRecord
.
setStatus
(
1
);
selfRobotBookRecordDao
.
insert
(
selfRobotBookRecord
);
// 如果有书但没有资源,则回复模板状态1
Optional
<
SelfRobotKeywordReplyTemplate
>
replyTemplate
=
replyTemplateList
.
stream
().
filter
(
x
->
x
.
getStatus
().
equals
(
1
)).
findFirst
();
sendText
(
sendTextDTO
,
replyTemplate
.
get
().
getReplyContentTemplate
().
replace
(
"${bookName}"
,
bookName
));
}
}
return
false
;
}
@ParamLog
(
"回复新版关键词"
)
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/biz/impl/SelfRobotKeywordBizImpl.java
View file @
2968ae3e
This diff is collapsed.
Click to expand it.
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dao/SelfRobotBookRecordDao.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
dao
;
import
com.pcloud.book.keywords.dto.SelfRobotBookRecordDTO
;
import
com.pcloud.book.keywords.entity.SelfRobotBookRecord
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
public
interface
SelfRobotBookRecordDao
extends
BaseDao
<
SelfRobotBookRecord
>
{
List
<
SelfRobotBookRecordDTO
>
getAllSelfRobotBookRecordList
();
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dao/SelfRobotKeywordReplyTemplateDao.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
dao
;
import
com.pcloud.book.keywords.entity.SelfRobotKeywordReplyTemplate
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
/**
* @Description
* @Author zhengyongqiang
* @Date 2020/02/05 22:10
**/
public
interface
SelfRobotKeywordReplyTemplateDao
extends
BaseDao
<
SelfRobotKeywordReplyTemplate
>
{
List
<
SelfRobotKeywordReplyTemplate
>
getList
();
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dao/impl/SelfRobotBookRecordDaoImpl.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
dao
.
impl
;
import
com.pcloud.book.keywords.dao.SelfRobotBookRecordDao
;
import
com.pcloud.book.keywords.dto.SelfRobotBookRecordDTO
;
import
com.pcloud.book.keywords.entity.SelfRobotBookRecord
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
@Repository
(
"selfRobotBookRecordDao"
)
public
class
SelfRobotBookRecordDaoImpl
extends
BaseDaoImpl
<
SelfRobotBookRecord
>
implements
SelfRobotBookRecordDao
{
@Override
public
List
<
SelfRobotBookRecordDTO
>
getAllSelfRobotBookRecordList
()
{
return
getSqlSession
().
selectList
(
getStatement
(
"getAllSelfRobotBookRecordList"
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dao/impl/SelfRobotKeywordReplyTemplateDaoImpl.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
dao
.
impl
;
import
com.pcloud.book.keywords.dao.SelfRobotKeywordReplyTemplateDao
;
import
com.pcloud.book.keywords.entity.SelfRobotKeywordReplyTemplate
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
/**
* @Description
* @Author zhengyongqiang
* @Date 2020/02/05 23:59
**/
@Component
(
"selfRobotKeywordReplyTemplateDao"
)
public
class
SelfRobotKeywordReplyTemplateDaoImpl
extends
BaseDaoImpl
<
SelfRobotKeywordReplyTemplate
>
implements
SelfRobotKeywordReplyTemplateDao
{
@Override
public
List
<
SelfRobotKeywordReplyTemplate
>
getList
()
{
return
getSessionTemplate
().
selectList
(
getStatement
(
"getList"
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dto/SelfRobotBookRecordDTO.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @Description
* @Author zhengyongqiang
* @Date 2020/02/06 12:10
**/
@Data
public
class
SelfRobotBookRecordDTO
{
@ApiModelProperty
(
"id"
)
private
Long
id
;
@ApiModelProperty
(
"社群码id"
)
private
Long
bookGroupId
;
@ApiModelProperty
(
"用户id"
)
private
String
wxUserId
;
@ApiModelProperty
(
"机器人id"
)
private
String
altId
;
@ApiModelProperty
(
"书名"
)
private
String
bookName
;
@ApiModelProperty
(
"出版社名称"
)
private
String
agentName
;
@ApiModelProperty
(
"状态"
)
private
Integer
status
;
@ApiModelProperty
(
"头像"
)
private
String
headPic
;
@ApiModelProperty
(
"昵称"
)
private
String
nickName
;
@ApiModelProperty
(
"性别"
)
private
Integer
sex
;
@ApiModelProperty
(
"创建时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
createTime
;
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/entity/SelfRobotBookRecord.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @Description
* @Author zhengyongqiang
* @Date 2020/02/06 12:10
**/
@Data
@ApiModel
(
"个人号关键词回复模板"
)
public
class
SelfRobotBookRecord
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
982575139118784017L
;
@ApiModelProperty
(
"id"
)
private
Long
id
;
@ApiModelProperty
(
"社群码id"
)
private
Long
bookGroupId
;
@ApiModelProperty
(
"用户id"
)
private
String
wxUserId
;
@ApiModelProperty
(
"机器人id"
)
private
String
altId
;
@ApiModelProperty
(
"书名"
)
private
String
bookName
;
@ApiModelProperty
(
"出版社名称"
)
private
String
agentName
;
@ApiModelProperty
(
"状态"
)
private
Integer
status
;
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/entity/SelfRobotKeywordReplyTemplate.java
0 → 100644
View file @
2968ae3e
package
com
.
pcloud
.
book
.
keywords
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
/**
* @Description
* @Author zhengyongqiang
* @Date 2020/02/05 22:10
**/
@Data
@ApiModel
(
"个人号关键词回复模板"
)
public
class
SelfRobotKeywordReplyTemplate
extends
BaseEntity
{
@ApiModelProperty
(
"id"
)
private
Long
id
;
@ApiModelProperty
(
"内容"
)
private
String
replyContentTemplate
;
@ApiModelProperty
(
"状态"
)
private
Integer
status
;
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/facade/SelfRobotKeywordFacade.java
View file @
2968ae3e
...
...
@@ -121,4 +121,16 @@ public interface SelfRobotKeywordFacade {
@ApiOperation
(
value
=
"用户点击引导语未操作时,主动回复"
,
httpMethod
=
"GET"
)
@GetMapping
(
"sendWhenNoReply"
)
ResponseDto
<?>
sendWhenNoReply
(
Integer
id
,
String
robotId
,
String
wxUserId
);
@ApiOperation
(
"获取个人号图书信息记录列表"
)
@GetMapping
(
"getSelfRobotBookRecordList"
)
ResponseDto
<?>
getSelfRobotBookRecordList
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
)
throws
BizException
,
PermissionException
;
@ApiOperation
(
"书刊信息收录导出"
)
@GetMapping
(
"exportSelfRobotBookRecord"
)
ResponseDto
<?>
exportSelfRobotBookRecord
(
@RequestHeader
(
"token"
)
String
token
)
throws
BizException
,
PermissionException
;
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/facade/impl/SelfRobotKeywordFacadeImpl.java
View file @
2968ae3e
...
...
@@ -184,4 +184,19 @@ public class SelfRobotKeywordFacadeImpl implements SelfRobotKeywordFacade {
return
new
ResponseDto
<>();
}
@Override
public
ResponseDto
<?>
getSelfRobotBookRecordList
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
)
throws
BizException
,
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
return
new
ResponseDto
<>(
selfRobotKeywordBiz
.
getSelfRobotBookRecordList
(
currentPage
,
numPerPage
));
}
@Override
public
ResponseDto
<?>
exportSelfRobotBookRecord
(
@RequestHeader
(
"token"
)
String
token
)
throws
BizException
,
PermissionException
{
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
selfRobotKeywordBiz
.
exportSelfRobotBookRecord
(
partyId
);
return
new
ResponseDto
<>();
}
}
pcloud-service-book/src/main/resources/mapper/book/Book.Mapper.xml
View file @
2968ae3e
...
...
@@ -2013,4 +2013,14 @@
BF.BOOK_FUND_ID IS NOT NULL
</if>
</select>
<select
id=
"getBookIdsByBookName"
parameterType=
"map"
resultType=
"long"
>
SELECT DISTINCT a.BOOK_ID
FROM
book_adviser a
INNER JOIN book b ON a.BOOK_ID = b.BOOK_ID AND a.IS_DELETE = 0 AND b.IS_DELETE = 0
WHERE
b.BOOK_NAME LIKE CONCAT('%',#{bookName},'%')
LIMIT 0,50
</select>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/group/SelfRobotBookRecord.xml
0 → 100644
View file @
2968ae3e
<?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.keywords.dao.impl.SelfRobotBookRecordDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.keywords.entity.SelfRobotBookRecord"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"book_group_id"
property=
"bookGroupId"
jdbcType=
"BIGINT"
/>
<result
column=
"wx_user_id"
property=
"wxUserId"
jdbcType=
"VARCHAR"
/>
<result
column=
"alt_id"
property=
"altId"
jdbcType=
"VARCHAR"
/>
<result
column=
"book_name"
property=
"bookName"
jdbcType=
"VARCHAR"
/>
<result
column=
"agent_name"
property=
"agentName"
jdbcType=
"VARCHAR"
/>
<result
column=
"status"
property=
"status"
jdbcType=
"INTEGER"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, book_group_id, wx_user_id, alt_id, book_name, agent_name, status, create_time
</sql>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.keywords.entity.SelfRobotBookRecord"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into self_robot_book_record
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
book_group_id,
wx_user_id,
alt_id,
book_name,
agent_name,
status,
create_time
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{bookGroupId,jdbcType=BIGINT},
#{wxUserId,jdbcType=VARCHAR},
#{altId,jdbcType=VARCHAR},
#{bookName,jdbcType=VARCHAR},
#{agentName,jdbcType=VARCHAR},
#{status,jdbcType=INTEGER},
NOW()
</trim>
</insert>
<select
id=
"getSelfRobotBookRecordList"
resultType=
"com.pcloud.book.keywords.dto.SelfRobotBookRecordDTO"
>
SELECT id,book_group_id bookGroupId,wx_user_id wxUserId,alt_id altId,book_name bookName,agent_name agentName, status, create_time createTime
FROM self_robot_book_record
ORDER BY id DESC
</select>
<select
id=
"getAllSelfRobotBookRecordList"
resultType=
"com.pcloud.book.keywords.dto.SelfRobotBookRecordDTO"
>
SELECT id,book_group_id bookGroupId,wx_user_id wxUserId,alt_id altId,book_name bookName,agent_name agentName, status, create_time createTime
FROM self_robot_book_record
ORDER BY id DESC
</select>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/group/SelfRobotKeywordReplyTemplate.xml
0 → 100644
View file @
2968ae3e
<?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.keywords.dao.impl.SelfRobotKeywordReplyTemplateDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.keywords.entity.SelfRobotKeywordReplyTemplate"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"reply_content_template"
property=
"replyContentTemplate"
jdbcType=
"VARCHAR"
/>
<result
column=
"status"
property=
"status"
jdbcType=
"INTEGER"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, reply_content_template, status
</sql>
<select
id=
"getList"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from self_robot_keyword_reply_template
</select>
</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