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
5b328081
Commit
5b328081
authored
Jun 18, 2019
by
裴大威
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat C1000756
parent
d536c7c9
Hide whitespace changes
Inline
Side-by-side
Showing
41 changed files
with
2650 additions
and
857 deletions
+2650
-857
BookConstant.java
...main/java/com/pcloud/book/book/constant/BookConstant.java
+62
-0
BookKeywordWarehouseBiz.java
...ava/com/pcloud/book/book/biz/BookKeywordWarehouseBiz.java
+69
-0
BookKeywordWarehouseBizImpl.java
...cloud/book/book/biz/impl/BookKeywordWarehouseBizImpl.java
+489
-0
KeywordUseRecordDao.java
...in/java/com/pcloud/book/book/dao/KeywordUseRecordDao.java
+20
-0
KeywordWarehouseDao.java
...in/java/com/pcloud/book/book/dao/KeywordWarehouseDao.java
+25
-0
KeywordWarehouseDetailDao.java
...a/com/pcloud/book/book/dao/KeywordWarehouseDetailDao.java
+27
-0
KeywordUseRecordDaoImpl.java
...om/pcloud/book/book/dao/impl/KeywordUseRecordDaoImpl.java
+50
-0
KeywordWarehouseDaoImpl.java
...om/pcloud/book/book/dao/impl/KeywordWarehouseDaoImpl.java
+52
-0
KeywordWarehouseDetailDaoImpl.java
...oud/book/book/dao/impl/KeywordWarehouseDetailDaoImpl.java
+55
-0
KeywordUseRecord.java
...in/java/com/pcloud/book/book/entity/KeywordUseRecord.java
+30
-0
KeywordWarehouse.java
...in/java/com/pcloud/book/book/entity/KeywordWarehouse.java
+34
-0
KeywordWarehouseDetail.java
...a/com/pcloud/book/book/entity/KeywordWarehouseDetail.java
+51
-0
BookKeywordWarehouseFacadeImpl.java
...book/book/facade/impl/BookKeywordWarehouseFacadeImpl.java
+115
-0
BookKeywordDetailVO.java
...ain/java/com/pcloud/book/book/vo/BookKeywordDetailVO.java
+71
-0
BookKeywordProductVO.java
...in/java/com/pcloud/book/book/vo/BookKeywordProductVO.java
+93
-0
KeywordWearhouseLabelVO.java
...java/com/pcloud/book/book/vo/KeywordWearhouseLabelVO.java
+32
-0
AddBookKeywordRequestVO.java
.../pcloud/book/book/vo/request/AddBookKeywordRequestVO.java
+123
-0
CheckKeywordRequestVO.java
...om/pcloud/book/book/vo/request/CheckKeywordRequestVO.java
+23
-0
EditBookKeywordRequestVO.java
...pcloud/book/book/vo/request/EditBookKeywordRequestVO.java
+119
-0
QueryBookKeywordWarehouseRequestVO.java
...k/book/vo/request/QueryBookKeywordWarehouseRequestVO.java
+34
-0
BookKeywordResponseVO.java
...m/pcloud/book/book/vo/response/BookKeywordResponseVO.java
+53
-0
CheckKeywordResponseVO.java
.../pcloud/book/book/vo/response/CheckKeywordResponseVO.java
+17
-0
AppConsr.java
.../src/main/java/com/pcloud/book/consumer/app/AppConsr.java
+19
-0
LabelConsr.java
.../main/java/com/pcloud/book/consumer/label/LabelConsr.java
+93
-0
ProductConsr.java
.../java/com/pcloud/book/consumer/resource/ProductConsr.java
+23
-0
BookKeywordBiz.java
...ain/java/com/pcloud/book/keywords/biz/BookKeywordBiz.java
+1
-1
BookKeywordBizImpl.java
...com/pcloud/book/keywords/biz/impl/BookKeywordBizImpl.java
+20
-3
BookKeywordDao.java
...ain/java/com/pcloud/book/keywords/dao/BookKeywordDao.java
+6
-0
BookKeywordDaoImpl.java
...com/pcloud/book/keywords/dao/impl/BookKeywordDaoImpl.java
+5
-0
KeywordDTO.java
...rc/main/java/com/pcloud/book/keywords/dto/KeywordDTO.java
+11
-32
ReplyKeywordDTO.java
...in/java/com/pcloud/book/keywords/dto/ReplyKeywordDTO.java
+9
-68
BookKeyword.java
...ain/java/com/pcloud/book/keywords/entity/BookKeyword.java
+19
-113
Keyword.java
...rc/main/java/com/pcloud/book/keywords/entity/Keyword.java
+13
-144
BookKeywordFacadeImpl.java
...loud/book/keywords/facade/impl/BookKeywordFacadeImpl.java
+2
-1
KeywordVO.java
.../src/main/java/com/pcloud/book/keywords/vo/KeywordVO.java
+9
-131
ListKeywordVO.java
.../main/java/com/pcloud/book/keywords/vo/ListKeywordVO.java
+9
-122
SetKeywordVO.java
...c/main/java/com/pcloud/book/keywords/vo/SetKeywordVO.java
+26
-121
UpdateKeywordVO.java
...ain/java/com/pcloud/book/keywords/vo/UpdateKeywordVO.java
+14
-121
KeywordUseRecordDao.xml
...ok/src/main/resources/mapper/book/KeywordUseRecordDao.xml
+190
-0
KeywordWarehouseDao.xml
...ok/src/main/resources/mapper/book/KeywordWarehouseDao.xml
+224
-0
KeywordWarehouseDetailDao.xml
.../main/resources/mapper/book/KeywordWarehouseDetailDao.xml
+313
-0
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/book/constant/BookConstant.java
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
constant
;
package
com
.
pcloud
.
book
.
book
.
constant
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.pcloud.common.constant.CacheConstant
;
import
com.pcloud.common.constant.CacheConstant
;
import
java.util.Map
;
/**
/**
* 描述 :图书常量
* 描述 :图书常量
*
*
...
@@ -112,4 +117,61 @@ public class BookConstant {
...
@@ -112,4 +117,61 @@ public class BookConstant {
* 30天
* 30天
*/
*/
public
static
final
Long
THIRTY
=
30L
;
public
static
final
Long
THIRTY
=
30L
;
public
enum
BookKeywordAuditEnum
{
NORMAL
(
0
),
/**
* 待审核
*/
TO_AUDIT
(
1
),
/**
* 审核通过
*/
PASS_THE_AUDIT
(
2
),
/**
* 拒绝审核
*/
REFUSE_THE_AUDIT
(
3
);
private
Integer
code
;
BookKeywordAuditEnum
(
Integer
code
)
{
this
.
code
=
code
;
}
public
Integer
getCode
()
{
return
code
;
}
}
public
static
final
Map
<
Integer
,
BookKeywordAuditEnum
>
AUDIT_ENUM_MAP
=
Maps
.
newHashMap
();
static
{
for
(
BookKeywordAuditEnum
auditEnum
:
Lists
.
newArrayList
(
BookKeywordAuditEnum
.
values
()))
{
AUDIT_ENUM_MAP
.
put
(
auditEnum
.
getCode
(),
auditEnum
);
}
}
public
enum
BookKeywordScopeEnum
{
/**
* 全部
*/
ALL
(
0
),
/**
* 编辑
*/
EDITOR
(
1
);
private
Integer
code
;
BookKeywordScopeEnum
(
Integer
code
)
{
this
.
code
=
code
;
}
public
Integer
getCode
()
{
return
code
;
}
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookKeywordWarehouseBiz.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
biz
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.book.vo.BookKeywordProductVO
;
import
com.pcloud.book.book.vo.request.AddBookKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.CheckKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.EditBookKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.QueryBookKeywordWarehouseRequestVO
;
import
com.pcloud.book.book.vo.response.BookKeywordResponseVO
;
import
com.pcloud.book.keywords.vo.SetKeywordVO
;
import
com.pcloud.common.page.PageBeanNew
;
import
java.util.List
;
public
interface
BookKeywordWarehouseBiz
{
Long
addBookKeyword
(
SetKeywordVO
setKeywordVO
);
/**
* 新增关键词
*/
Long
addBookKeyword
(
AddBookKeywordRequestVO
vo
,
Integer
useKeyword
);
/**
* 修改关键词
*/
void
editBookKeyword
(
EditBookKeywordRequestVO
vo
);
/**
* 删除关键词
*/
void
deleteBookKeyword
(
Long
keywordId
,
Long
adviserId
);
/**
* 关键词库查询
*/
PageBeanNew
<
BookKeywordResponseVO
>
listBookKeywordWarehouse
(
QueryBookKeywordWarehouseRequestVO
vo
);
/**
* 使用关键词
*/
void
useKeyword
(
Long
adviserId
,
Long
keywordDetailId
);
/**
* 查询关键词详情(去掉)
*/
BookKeywordResponseVO
getDetail
(
Long
keywordId
);
/**
* 常用关键词
*/
PageBeanNew
<
BookKeywordProductVO
>
oftenKeyword
(
Integer
currentPage
,
Integer
numPerPage
,
Long
bookGroupId
,
Long
adviserId
,
Long
depthLabelId
,
Long
classifyId
);
/**
* 热门关键词
*/
PageBeanNew
<
BookKeywordProductVO
>
hotKeyword
(
Integer
currentPage
,
Integer
numPerPage
,
Long
adviserId
,
Long
bookGroupId
,
String
keyword
,
Long
depthLabelId
,
Long
classifyId
);
/**
* 审核关键词
*/
void
auditKeyword
(
Long
partyId
,
Long
keywordId
,
BookConstant
.
BookKeywordAuditEnum
auditEnum
);
/**
* 检查关键词是否重复
*/
List
<
Long
>
checkKeyword
(
CheckKeywordRequestVO
vo
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookKeywordWarehouseBizImpl.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
biz
.
impl
;
import
com.google.common.collect.Lists
;
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.constant.BookConstant
;
import
com.pcloud.book.book.dao.KeywordUseRecordDao
;
import
com.pcloud.book.book.dao.KeywordWarehouseDao
;
import
com.pcloud.book.book.dao.KeywordWarehouseDetailDao
;
import
com.pcloud.book.book.entity.KeywordUseRecord
;
import
com.pcloud.book.book.entity.KeywordWarehouse
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.book.book.vo.BookKeywordDetailVO
;
import
com.pcloud.book.book.vo.BookKeywordProductVO
;
import
com.pcloud.book.book.vo.KeywordWearhouseLabelVO
;
import
com.pcloud.book.book.vo.request.AddBookKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.CheckKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.EditBookKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.QueryBookKeywordWarehouseRequestVO
;
import
com.pcloud.book.book.vo.response.BookKeywordResponseVO
;
import
com.pcloud.book.book.vo.response.CheckKeywordResponseVO
;
import
com.pcloud.book.consumer.app.AppConsr
;
import
com.pcloud.book.consumer.label.LabelConsr
;
import
com.pcloud.book.consumer.resource.ProductConsr
;
import
com.pcloud.book.consumer.user.AdviserConsr
;
import
com.pcloud.book.consumer.user.PartyConsr
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.book.keywords.biz.BookKeywordBiz
;
import
com.pcloud.book.keywords.vo.ListKeywordParam
;
import
com.pcloud.book.keywords.vo.ListKeywordVO
;
import
com.pcloud.book.keywords.vo.SetKeywordVO
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.constant.SystemCode
;
import
com.pcloud.common.entity.BaseRequestVO
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.utils.BeanUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
com.pcloud.resourcecenter.product.dto.ProductLabelDto
;
import
com.pcloud.usercenter.party.adviser.dto.AdviserBaseInfoDto
;
import
com.pcloud.usercenter.party.agent.entity.Agent
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
lombok.extern.slf4j.Slf4j
;
@Slf4j
@Service
public
class
BookKeywordWarehouseBizImpl
implements
BookKeywordWarehouseBiz
{
@Resource
private
KeywordWarehouseDao
keywordWarehouseDao
;
@Resource
private
KeywordWarehouseDetailDao
keywordWarehouseDetailDao
;
@Resource
private
KeywordUseRecordDao
keywordUseRecordDao
;
@Resource
private
BookKeywordBiz
bookKeywordBiz
;
@Resource
private
BookGroupBiz
bookGroupBiz
;
@Resource
private
PartyConsr
partyConsr
;
@Resource
private
AdviserConsr
adviserConsr
;
@Resource
private
LabelConsr
labelConsr
;
@Resource
private
AppConsr
appConsr
;
@Resource
private
ProductConsr
productConsr
;
/**
* 添加关键词的时候同步加入到仓库
*/
@Override
@ParamLog
(
"[addBookKeyword SetKeywordVO]"
)
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
Long
addBookKeyword
(
SetKeywordVO
setKeywordVO
)
{
if
(
null
==
setKeywordVO
||
1
!=
setKeywordVO
.
getAddWarehouse
())
{
log
.
info
(
"关键词添加到仓库失败,参数为空"
);
return
0L
;
}
final
AddBookKeywordRequestVO
vo
=
new
AddBookKeywordRequestVO
();
vo
.
setKeyword
(
setKeywordVO
.
getKeywords
());
vo
.
setGuide
(
setKeywordVO
.
getGuide
());
vo
.
setMatchingRule
(
setKeywordVO
.
getMatchingRule
());
// 加入词库是属于编辑自己
vo
.
setScope
(
BookConstant
.
BookKeywordScopeEnum
.
EDITOR
.
getCode
());
vo
.
setEditorId
(
setKeywordVO
.
getUserId
());
// vo.setAuditStatus(BookConstant.BookKeywordAuditEnum.TO_AUDIT.getCode());
vo
.
setAuditStatus
(
BookConstant
.
BookKeywordAuditEnum
.
PASS_THE_AUDIT
.
getCode
());
final
List
<
BookKeywordDetailVO
>
details
=
Lists
.
newArrayList
();
final
List
<
KeywordWearhouseLabelVO
>
labels
=
Lists
.
newArrayList
();
final
BookGroupDTO
info
=
bookGroupBiz
.
getBookGroupInfo
(
setKeywordVO
.
getBookGroupId
());
if
(
null
==
info
)
{
throw
new
BookBizException
(
BookBizException
.
ID_NOT_EXIST
,
"社群码不存在"
);
}
final
KeywordWearhouseLabelVO
v
=
new
KeywordWearhouseLabelVO
();
v
.
setProfessionalLabelId
(
info
.
getProLabelId
());
v
.
setDepthLabelId
(
info
.
getDepLabelId
());
v
.
setPurposeLabelId
(
info
.
getPurLabelId
());
labels
.
add
(
v
);
final
BookKeywordDetailVO
v1
=
new
BookKeywordDetailVO
();
v1
.
setGroupId
(
1
);
v1
.
setContent
(
setKeywordVO
.
getContent
());
v1
.
setProductId
(
setKeywordVO
.
getServeId
());
v1
.
setProductType
(
setKeywordVO
.
getServeType
());
v1
.
setDescription
(
setKeywordVO
.
getDescription
());
v1
.
setTypeCode
(
setKeywordVO
.
getTypeCode
());
v1
.
setLinkUrl
(
setKeywordVO
.
getLinkUrl
());
v1
.
setPicUrl
(
setKeywordVO
.
getPicUrl
());
v1
.
setLabels
(
labels
);
details
.
add
(
v1
);
vo
.
setDetails
(
details
);
vo
.
setUserId
(
setKeywordVO
.
getUserId
());
return
this
.
addBookKeyword
(
vo
,
1
);
}
@Override
@ParamLog
(
"[addBookKeyword]"
)
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
Long
addBookKeyword
(
AddBookKeywordRequestVO
vo
,
Integer
useKeyword
)
{
if
(
null
==
vo
||
vo
.
check
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"参数错误"
);
}
final
KeywordWarehouse
keyword
=
vo
.
getEntity
();
keyword
.
setCreateUser
(
vo
.
getUserId
());
keyword
.
setCreateTime
(
keyword
.
getUpdateTime
());
this
.
keywordWarehouseDao
.
insert
(
keyword
);
final
List
<
KeywordWarehouseDetail
>
detail
=
vo
.
getDetailEntity
(
keyword
.
getId
());
if
(
null
!=
useKeyword
&&
1
==
useKeyword
)
{
final
KeywordWarehouseDetail
detail1
=
detail
.
get
(
0
);
this
.
keywordWarehouseDetailDao
.
insert
(
detail1
);
this
.
useKeyword
(
vo
.
getUserId
(),
detail1
.
getId
());
}
else
{
this
.
keywordWarehouseDetailDao
.
insert
(
detail
);
}
this
.
onlineProduct
(
vo
);
return
keyword
.
getId
();
}
@Override
@ParamLog
(
"[editBookKeyword]"
)
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
void
editBookKeyword
(
EditBookKeywordRequestVO
vo
)
{
if
(
null
==
vo
||
vo
.
check
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"参数错误"
);
}
final
KeywordWarehouse
keyword
=
vo
.
getEntity
();
// 1、修改关键词 2、标记删除详情 3、记录详情
this
.
keywordWarehouseDao
.
updateByPrimaryKeySelective
(
keyword
);
this
.
keywordWarehouseDetailDao
.
deleteDetails
(
vo
.
getKeywordId
());
this
.
keywordWarehouseDetailDao
.
insert
(
vo
.
getDetailEntity
(
vo
.
getKeywordId
()));
this
.
onlineProduct
(
vo
);
}
/**
* 处理需要上架的商品信息
*/
private
void
onlineProduct
(
BaseRequestVO
vo
)
{
Map
<
Long
,
List
<
BookKeywordDetailVO
>>
collect
;
if
(
vo
instanceof
AddBookKeywordRequestVO
)
{
final
AddBookKeywordRequestVO
vo1
=
(
AddBookKeywordRequestVO
)
vo
;
collect
=
vo1
.
getDetails
().
stream
().
filter
(
x
->
"PRODUCT"
.
equals
(
x
.
getProductType
())).
collect
(
Collectors
.
groupingBy
(
BookKeywordDetailVO:
:
getChannelId
));
}
else
if
(
vo
instanceof
EditBookKeywordRequestVO
)
{
final
EditBookKeywordRequestVO
vo1
=
(
EditBookKeywordRequestVO
)
vo
;
collect
=
vo1
.
getDetails
().
stream
().
filter
(
x
->
"PRODUCT"
.
equals
(
x
.
getProductType
())).
collect
(
Collectors
.
groupingBy
(
BookKeywordDetailVO:
:
getChannelId
));
}
else
{
log
.
info
(
"[onlineProduct] 类型错误"
);
return
;
}
if
(
CollectionUtils
.
isEmpty
(
collect
))
{
log
.
info
(
"[addBookKeyword] 没有商品需要上架"
);
return
;
}
for
(
Long
channelId
:
collect
.
keySet
())
{
final
List
<
BookKeywordDetailVO
>
vos
=
collect
.
get
(
channelId
);
if
(
CollectionUtils
.
isEmpty
(
vos
))
{
log
.
info
(
"[addBookKeyword] channelId 没有作品:{}"
,
channelId
);
continue
;
}
// 上架商品
this
.
productConsr
.
productAutoOnShelves
(
channelId
,
vos
.
stream
().
map
(
BookKeywordDetailVO:
:
getProductId
).
collect
(
Collectors
.
toList
()));
}
}
@Override
@ParamLog
(
"[deleteBookKeyword]"
)
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
void
deleteBookKeyword
(
Long
keywordId
,
Long
adviserId
)
{
if
(
null
==
keywordId
||
null
==
adviserId
)
{
log
.
info
(
"[deleteBookKeyword] keywordId is null"
);
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"参数错误"
);
}
final
KeywordWarehouse
keywordWarehouse
=
keywordWarehouseDao
.
selectByPrimaryKey
(
keywordId
);
if
(
null
==
keywordWarehouse
||
0
!=
keywordWarehouse
.
getIsDelete
())
{
log
.
info
(
"[deleteBookKeyword] keywordWarehouse:{}"
,
keywordWarehouse
);
return
;
}
keywordWarehouse
.
setUpdateUser
(
adviserId
);
keywordWarehouse
.
setUpdateTime
(
new
Date
());
keywordWarehouse
.
setIsDelete
(
1
);
this
.
keywordWarehouseDao
.
updateByPrimaryKey
(
keywordWarehouse
);
this
.
keywordWarehouseDetailDao
.
deleteDetails
(
keywordId
);
}
@Override
@ParamLog
(
"[listBookKeywordWarehouse]"
)
public
PageBeanNew
<
BookKeywordResponseVO
>
listBookKeywordWarehouse
(
QueryBookKeywordWarehouseRequestVO
vo
)
{
if
(
null
==
vo
||
null
==
vo
.
getCurrentPage
()
||
null
==
vo
.
getNumPerPage
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"分页参数为空"
);
}
// 根据主表分页,然后组装子表数据
PageBeanNew
<
BookKeywordResponseVO
>
warehouse
=
this
.
keywordWarehouseDao
.
listPageNew
(
new
PageParam
(
vo
.
getCurrentPage
(),
vo
.
getNumPerPage
()),
BeanUtils
.
beanToMap
(
vo
),
"listBookKeywordWarehouse"
);
if
(
null
==
warehouse
||
CollectionUtils
.
isEmpty
(
warehouse
.
getRecordList
()))
{
return
warehouse
;
}
final
List
<
BookKeywordResponseVO
>
list
=
warehouse
.
getRecordList
();
final
List
<
Long
>
ids
=
list
.
stream
().
map
(
BookKeywordResponseVO:
:
getId
).
collect
(
Collectors
.
toList
());
final
List
<
KeywordWarehouseDetail
>
details
=
this
.
keywordWarehouseDetailDao
.
listByKeywordIds
(
ids
);
if
(
CollectionUtils
.
isEmpty
(
details
))
{
return
warehouse
;
}
this
.
processData
(
warehouse
.
getRecordList
(),
details
);
return
warehouse
;
}
private
void
processData
(
List
<
BookKeywordResponseVO
>
list
,
List
<
KeywordWarehouseDetail
>
details
)
{
final
Map
<
Long
,
List
<
KeywordWarehouseDetail
>>
map
=
details
.
stream
().
collect
(
Collectors
.
groupingBy
(
KeywordWarehouseDetail:
:
getKeywordId
));
final
List
<
Long
>
editIds
=
Lists
.
newArrayList
();
for
(
BookKeywordResponseVO
vo1
:
list
)
{
Long
id
=
vo1
.
getId
();
final
List
<
KeywordWarehouseDetail
>
warehouseDetails
=
map
.
get
(
id
);
if
(
CollectionUtils
.
isEmpty
(
warehouseDetails
))
{
log
.
info
(
"warehouseDetails is null"
);
continue
;
}
editIds
.
add
(
vo1
.
getEditorId
());
List
<
BookKeywordDetailVO
>
vos
=
Lists
.
newArrayList
();
final
List
<
String
>
groupIds
=
warehouseDetails
.
stream
().
map
(
KeywordWarehouseDetail:
:
getGroupId
).
distinct
().
collect
(
Collectors
.
toList
());
final
Map
<
String
,
List
<
KeywordWarehouseDetail
>>
collect
=
warehouseDetails
.
stream
().
collect
(
Collectors
.
groupingBy
(
KeywordWarehouseDetail:
:
getGroupId
));
// 一个关键词对应多个作品 一个作品对应多组标签
List
<
Long
>
appIds
=
Lists
.
newArrayList
();
List
<
Long
>
productIds
=
Lists
.
newArrayList
();
for
(
String
s
:
groupIds
)
{
final
List
<
KeywordWarehouseDetail
>
keywordWarehouseDetails
=
collect
.
get
(
s
);
if
(
CollectionUtils
.
isEmpty
(
keywordWarehouseDetails
))
{
log
.
info
(
"keywordWarehouseDetails is null"
);
continue
;
}
BookKeywordDetailVO
v
=
BookKeywordDetailVO
.
cloneByEntity
(
keywordWarehouseDetails
.
get
(
0
));
if
(
"APP"
.
equals
(
v
.
getProductType
()))
{
appIds
.
add
(
v
.
getProductId
());
}
if
(
"PRODUCT"
.
equals
(
v
.
getProductType
()))
{
productIds
.
add
(
v
.
getProductId
());
}
// 填充标签名称
List
<
KeywordWearhouseLabelVO
>
labels
=
Lists
.
newArrayList
();
final
List
<
Long
>
labelIds
=
Lists
.
newArrayList
();
for
(
KeywordWarehouseDetail
detail
:
keywordWarehouseDetails
)
{
KeywordWearhouseLabelVO
v1
=
KeywordWearhouseLabelVO
.
cloneByEntity
(
detail
);
labelIds
.
add
(
v1
.
getPurposeLabelId
());
labelIds
.
add
(
v1
.
getDepthLabelId
());
labelIds
.
add
(
v1
.
getProfessionalLabelId
());
labels
.
add
(
v1
);
}
final
Map
<
Long
,
String
>
labelName
=
labelConsr
.
getLabelName
(
labelIds
);
for
(
KeywordWearhouseLabelVO
label
:
labels
)
{
label
.
setPurposeLabelName
(
labelName
.
get
(
label
.
getPurposeLabelId
()));
label
.
setDepthLabelName
(
labelName
.
get
(
label
.
getDepthLabelId
()));
label
.
setProfessionalLabelName
(
labelName
.
get
(
label
.
getProfessionalLabelId
()));
}
v
.
setLabels
(
labels
);
vos
.
add
(
v
);
}
final
Map
<
Long
,
ProductLabelDto
>
productLabelDtoMap
=
productConsr
.
getLabelByProIds
(
productIds
);
// 填充应用标签
final
Map
<
Long
,
AppDto
>
baseByIds
=
appConsr
.
mapBaseByIds
(
appIds
);
for
(
BookKeywordDetailVO
detailVO
:
vos
)
{
if
(
"APP"
.
equals
(
detailVO
.
getProductType
()))
{
final
AppDto
appDto
=
baseByIds
.
get
(
detailVO
.
getProductId
());
if
(
null
==
appDto
)
{
log
.
info
(
"[listBookKeywordWarehouse] ProductId :{} 未找到应用"
,
detailVO
.
getProductId
());
continue
;
}
detailVO
.
setProLabelName
(
appDto
.
getProLabelName
());
detailVO
.
setDepLabelName
(
appDto
.
getDepLabelName
());
detailVO
.
setPurLabelName
(
appDto
.
getPurLabelName
());
}
if
(
"PRODUCT"
.
equals
(
detailVO
.
getProductType
()))
{
final
ProductLabelDto
labelDto
=
productLabelDtoMap
.
get
(
detailVO
.
getProductId
());
if
(
null
==
labelDto
)
{
log
.
info
(
"[listBookKeywordWarehouse] ProductId :{} 未找到应用"
,
detailVO
.
getProductId
());
continue
;
}
detailVO
.
setProLabelName
(
labelDto
.
getProLabelName
());
detailVO
.
setDepLabelName
(
labelDto
.
getDepLabelName
());
detailVO
.
setPurLabelName
(
labelDto
.
getPurLabelName
());
}
}
vo1
.
setProduct
(
vos
);
}
// 填充编辑名称
final
Map
<
Long
,
String
>
names
=
adviserConsr
.
getNames
(
editIds
);
final
Map
<
Long
,
AdviserBaseInfoDto
>
agentMap
=
adviserConsr
.
getAdviserId2AdviserInfoDtoMap
(
editIds
);
for
(
BookKeywordResponseVO
vo1
:
list
)
{
final
AdviserBaseInfoDto
infoDto
=
agentMap
.
get
(
vo1
.
getEditorId
());
vo1
.
setEditorName
(
names
.
get
(
vo1
.
getEditorId
()));
vo1
.
setAgentName
(
null
==
infoDto
?
""
:
infoDto
.
getAgentName
());
}
}
@Override
@ParamLog
(
"[useKeyword]"
)
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
public
void
useKeyword
(
Long
adviserId
,
Long
keywordDetailId
)
{
if
(
Objects
.
isNull
(
adviserId
)
||
Objects
.
isNull
(
keywordDetailId
))
{
return
;
}
final
KeywordWarehouseDetail
detail
=
this
.
keywordWarehouseDetailDao
.
selectByPrimaryKey
(
keywordDetailId
);
if
(
Objects
.
isNull
(
detail
)
||
detail
.
getIsDelete
()
!=
0
)
{
log
.
info
(
"[useKeyword] warehouse is null"
);
return
;
}
final
KeywordUseRecord
record
=
this
.
keywordUseRecordDao
.
getByAdviserIdAndKeywordId
(
adviserId
,
keywordDetailId
);
final
Date
now
=
new
Date
();
// 常用词库+1
if
(
Objects
.
isNull
(
record
))
{
KeywordUseRecord
r
=
new
KeywordUseRecord
();
r
.
setAdviserId
(
adviserId
);
r
.
setKeywordId
(
detail
.
getKeywordId
());
r
.
setKeywordDetailId
(
keywordDetailId
);
r
.
setUseNum
(
1
);
r
.
setCreateUser
(
adviserId
);
r
.
setCreateTime
(
now
);
r
.
setUpdateUser
(
adviserId
);
r
.
setUpdateTime
(
now
);
r
.
setIsDelete
(
0
);
this
.
keywordUseRecordDao
.
insert
(
r
);
}
else
{
this
.
keywordUseRecordDao
.
addOne
(
adviserId
,
record
.
getId
());
}
// 总词库+1
this
.
keywordWarehouseDetailDao
.
addOne
(
adviserId
,
detail
.
getId
());
}
@Override
@ParamLog
(
"[getDetail]"
)
public
BookKeywordResponseVO
getDetail
(
Long
keywordId
)
{
QueryBookKeywordWarehouseRequestVO
vo
=
new
QueryBookKeywordWarehouseRequestVO
();
vo
.
setId
(
keywordId
);
vo
.
setCurrentPage
(
0
);
vo
.
setNumPerPage
(
1
);
final
PageBeanNew
<
BookKeywordResponseVO
>
keyword
=
this
.
listBookKeywordWarehouse
(
vo
);
if
(
Objects
.
isNull
(
keyword
)
||
CollectionUtils
.
isEmpty
(
keyword
.
getRecordList
()))
{
return
new
BookKeywordResponseVO
();
}
final
BookKeywordResponseVO
responseVO
=
keyword
.
getRecordList
().
get
(
0
);
if
(
Objects
.
isNull
(
responseVO
))
{
return
new
BookKeywordResponseVO
();
}
final
Map
<
Long
,
Agent
>
byPartyId
=
partyConsr
.
getAgentByPartyId
(
Collections
.
singletonList
(
responseVO
.
getEditorId
()),
SystemCode
.
adviser
.
code
);
final
Agent
agent
=
Optional
.
ofNullable
(
byPartyId
).
orElse
(
Maps
.
newHashMap
()).
get
(
responseVO
.
getEditorId
());
responseVO
.
setAgentId
(
null
==
agent
?
0L
:
agent
.
getAgentId
());
return
responseVO
;
}
@Override
@ParamLog
(
"[oftenKeyword]"
)
public
PageBeanNew
<
BookKeywordProductVO
>
oftenKeyword
(
Integer
currentPage
,
Integer
numPerPage
,
Long
bookGroupId
,
Long
adviserId
,
Long
depthLabelId
,
Long
classifyId
)
{
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"depthLabelId"
,
depthLabelId
);
map
.
put
(
"adviserId"
,
adviserId
);
map
.
put
(
"bookGroupId"
,
bookGroupId
);
final
PageBeanNew
<
BookKeywordProductVO
>
oftenKeyword
=
this
.
keywordUseRecordDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"oftenKeyword"
);
if
(
null
==
oftenKeyword
||
CollectionUtils
.
isEmpty
(
oftenKeyword
.
getRecordList
()))
{
return
oftenKeyword
;
}
PageBeanNew
<
BookKeywordProductVO
>
pageBeanNew
=
this
.
processIsMark
(
oftenKeyword
,
bookGroupId
,
classifyId
);
return
this
.
processKeyword
(
pageBeanNew
);
}
@Override
@ParamLog
(
"[hotKeyword]"
)
public
PageBeanNew
<
BookKeywordProductVO
>
hotKeyword
(
Integer
currentPage
,
Integer
numPerPage
,
Long
adviserId
,
Long
bookGroupId
,
String
keyword
,
Long
depthLabelId
,
Long
classifyId
)
{
final
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"keyword"
,
keyword
);
map
.
put
(
"depthLabelId"
,
depthLabelId
);
map
.
put
(
"bookGroupId"
,
bookGroupId
);
map
.
put
(
"adviserId"
,
adviserId
);
final
PageBeanNew
<
BookKeywordProductVO
>
hotKeyword
=
this
.
keywordWarehouseDetailDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"hotKeyword"
);
if
(
null
==
hotKeyword
||
CollectionUtils
.
isEmpty
(
hotKeyword
.
getRecordList
()))
{
return
hotKeyword
;
}
return
this
.
processIsMark
(
hotKeyword
,
bookGroupId
,
classifyId
);
}
/**
* 标记已选择列表
*/
private
PageBeanNew
<
BookKeywordProductVO
>
processIsMark
(
PageBeanNew
<
BookKeywordProductVO
>
hotKeyword
,
Long
bookGroupId
,
Long
classifyId
)
{
ListKeywordParam
param
=
new
ListKeywordParam
();
param
.
setBookGroupId
(
bookGroupId
);
param
.
setClassifyId
(
classifyId
);
param
.
setCurrentPage
(
0
);
param
.
setNumPerPage
(
200
);
final
PageBeanNew
<
ListKeywordVO
>
beanNew
=
bookKeywordBiz
.
listKeywordsByClassify
(
param
);
if
(
null
==
beanNew
||
CollectionUtils
.
isEmpty
(
beanNew
.
getRecordList
()))
{
return
hotKeyword
;
}
final
Map
<
Long
,
Integer
>
map1
=
Maps
.
newHashMap
();
for
(
ListKeywordVO
vo
:
beanNew
.
getRecordList
())
{
map1
.
put
(
vo
.
getWarehouseId
(),
1
);
}
for
(
BookKeywordProductVO
vo
:
hotKeyword
.
getRecordList
())
{
final
Integer
num
=
map1
.
get
(
vo
.
getKeywordId
());
vo
.
setIsMark
(
null
==
num
?
0
:
1
);
}
return
hotKeyword
;
}
/**
* 标记已选择列表
*/
private
PageBeanNew
<
BookKeywordProductVO
>
processKeyword
(
PageBeanNew
<
BookKeywordProductVO
>
hotKeyword
)
{
if
(
null
==
hotKeyword
||
CollectionUtils
.
isEmpty
(
hotKeyword
.
getRecordList
()))
{
return
hotKeyword
;
}
final
List
<
Long
>
ids
=
hotKeyword
.
getRecordList
().
stream
().
map
(
BookKeywordProductVO:
:
getKeywordId
).
distinct
().
collect
(
Collectors
.
toList
());
final
List
<
KeywordWarehouse
>
list
=
keywordWarehouseDao
.
listByIds
(
ids
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
hotKeyword
;
}
final
Map
<
Long
,
String
>
map1
=
Maps
.
newHashMap
();
for
(
KeywordWarehouse
warehouse
:
list
)
{
map1
.
put
(
warehouse
.
getId
(),
warehouse
.
getKeyword
());
}
for
(
BookKeywordProductVO
vo
:
hotKeyword
.
getRecordList
())
{
final
String
keyword
=
map1
.
get
(
vo
.
getKeywordId
());
vo
.
setKeyword
(
StringUtil
.
isEmpty
(
keyword
)
?
""
:
keyword
);
}
return
hotKeyword
;
}
@Override
@ParamLog
(
"[auditKeyword]"
)
public
void
auditKeyword
(
Long
partyId
,
Long
keywordId
,
BookConstant
.
BookKeywordAuditEnum
auditEnum
)
{
final
KeywordWarehouse
warehouse
=
this
.
keywordWarehouseDao
.
selectByPrimaryKey
(
keywordId
);
if
(
Objects
.
isNull
(
warehouse
))
{
throw
new
BookBizException
(
BookBizException
.
RESULT_NULL
,
"关键词不存在"
);
}
warehouse
.
setAuditStatus
(
auditEnum
.
getCode
());
if
(
BookConstant
.
BookKeywordAuditEnum
.
PASS_THE_AUDIT
.
equals
(
auditEnum
))
{
warehouse
.
setScope
(
BookConstant
.
BookKeywordScopeEnum
.
ALL
.
getCode
());
warehouse
.
setEditorId
(
0L
);
}
this
.
keywordWarehouseDao
.
updateByPrimaryKey
(
warehouse
);
}
@Override
public
List
<
Long
>
checkKeyword
(
CheckKeywordRequestVO
vo
)
{
final
List
<
CheckKeywordResponseVO
>
responseVO
=
this
.
keywordWarehouseDao
.
checkKeyword
(
vo
);
if
(
CollectionUtils
.
isEmpty
(
responseVO
))
{
return
Lists
.
newArrayList
();
}
return
responseVO
.
stream
().
filter
(
x
->
x
.
getNum
()
>
0
).
filter
(
x
->
!
x
.
getKeywordId
().
equals
(
vo
.
getKeywordId
())).
map
(
CheckKeywordResponseVO:
:
getDepthLabelId
).
collect
(
Collectors
.
toList
());
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/KeywordUseRecordDao.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
dao
;
import
com.pcloud.book.book.entity.KeywordUseRecord
;
import
com.pcloud.common.core.dao.BaseDao
;
public
interface
KeywordUseRecordDao
extends
BaseDao
<
KeywordUseRecord
>
{
int
insertSelective
(
KeywordUseRecord
record
);
KeywordUseRecord
selectByPrimaryKey
(
Integer
id
);
int
updateByPrimaryKeySelective
(
KeywordUseRecord
record
);
int
updateByPrimaryKey
(
KeywordUseRecord
record
);
KeywordUseRecord
getByAdviserIdAndKeywordId
(
Long
adviserId
,
Long
keywordId
);
void
addOne
(
Long
adviserId
,
Long
id
);
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/KeywordWarehouseDao.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
dao
;
import
com.pcloud.book.book.entity.KeywordWarehouse
;
import
com.pcloud.book.book.vo.request.CheckKeywordRequestVO
;
import
com.pcloud.book.book.vo.response.CheckKeywordResponseVO
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
public
interface
KeywordWarehouseDao
extends
BaseDao
<
KeywordWarehouse
>
{
int
insertSelective
(
KeywordWarehouse
record
);
KeywordWarehouse
selectByPrimaryKey
(
Long
id
);
int
updateByPrimaryKeySelective
(
KeywordWarehouse
record
);
int
updateByPrimaryKey
(
KeywordWarehouse
record
);
List
<
KeywordWarehouse
>
listByIds
(
List
<
Long
>
ids
);
List
<
CheckKeywordResponseVO
>
checkKeyword
(
CheckKeywordRequestVO
vo
);
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/KeywordWarehouseDetailDao.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
dao
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.common.core.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
public
interface
KeywordWarehouseDetailDao
extends
BaseDao
<
KeywordWarehouseDetail
>
{
int
insertSelective
(
KeywordWarehouseDetail
record
);
KeywordWarehouseDetail
selectByPrimaryKey
(
Long
id
);
int
updateByPrimaryKeySelective
(
KeywordWarehouseDetail
record
);
int
updateByPrimaryKey
(
KeywordWarehouseDetail
record
);
void
deleteDetails
(
Long
keywordId
);
void
addOne
(
Long
adviserId
,
Long
id
);
List
<
KeywordWarehouseDetail
>
listByKeywordIds
(
@Param
(
"list"
)
List
<
Long
>
ids
);
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/KeywordUseRecordDaoImpl.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
dao
.
impl
;
import
com.google.common.collect.Maps
;
import
com.pcloud.book.book.dao.KeywordUseRecordDao
;
import
com.pcloud.book.book.entity.KeywordUseRecord
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.Map
;
@Component
public
class
KeywordUseRecordDaoImpl
extends
BaseDaoImpl
<
KeywordUseRecord
>
implements
KeywordUseRecordDao
{
@Override
public
int
insertSelective
(
KeywordUseRecord
record
)
{
return
this
.
getSqlSession
().
insert
(
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl.insertSelective"
,
record
);
}
@Override
public
KeywordUseRecord
selectByPrimaryKey
(
Integer
id
)
{
return
this
.
getSqlSession
().
selectOne
(
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl.selectByPrimaryKey"
,
id
);
}
@Override
public
int
updateByPrimaryKeySelective
(
KeywordUseRecord
record
)
{
return
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl.updateByPrimaryKeySelective"
,
record
);
}
@Override
public
int
updateByPrimaryKey
(
KeywordUseRecord
record
)
{
return
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl.updateByPrimaryKey"
,
record
);
}
@Override
public
KeywordUseRecord
getByAdviserIdAndKeywordId
(
Long
adviserId
,
Long
keywordDetailId
)
{
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"adviserId"
,
adviserId
);
map
.
put
(
"keywordDetailId"
,
keywordDetailId
);
return
this
.
getSqlSession
().
selectOne
(
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl.getByAdviserIdAndKeywordId"
,
map
);
}
@Override
public
void
addOne
(
Long
adviserId
,
Long
id
)
{
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"adviserId"
,
adviserId
);
map
.
put
(
"id"
,
id
);
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl.addOne"
,
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/KeywordWarehouseDaoImpl.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
dao
.
impl
;
import
com.google.common.collect.Maps
;
import
com.pcloud.book.book.dao.KeywordWarehouseDao
;
import
com.pcloud.book.book.entity.KeywordWarehouse
;
import
com.pcloud.book.book.vo.request.CheckKeywordRequestVO
;
import
com.pcloud.book.book.vo.response.CheckKeywordResponseVO
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
import
java.util.Map
;
@Component
public
class
KeywordWarehouseDaoImpl
extends
BaseDaoImpl
<
KeywordWarehouse
>
implements
KeywordWarehouseDao
{
@Override
public
int
insertSelective
(
KeywordWarehouse
record
)
{
return
this
.
getSqlSession
().
insert
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl.insertSelective"
,
record
);
}
@Override
public
KeywordWarehouse
selectByPrimaryKey
(
Long
id
)
{
return
this
.
getSqlSession
().
selectOne
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl.selectByPrimaryKey"
,
id
);
}
@Override
public
int
updateByPrimaryKeySelective
(
KeywordWarehouse
record
)
{
return
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl.updateByPrimaryKeySelective"
,
record
);
}
@Override
public
int
updateByPrimaryKey
(
KeywordWarehouse
record
)
{
return
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl.updateByPrimaryKey"
,
record
);
}
@Override
public
List
<
KeywordWarehouse
>
listByIds
(
List
<
Long
>
ids
)
{
return
this
.
getSqlSession
().
selectList
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl.listByIds"
,
ids
);
}
@Override
public
List
<
CheckKeywordResponseVO
>
checkKeyword
(
CheckKeywordRequestVO
vo
)
{
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"keyword"
,
vo
.
getKeyword
());
map
.
put
(
"list"
,
vo
.
getDepthLabelIds
());
return
this
.
getSqlSession
().
selectList
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl.checkKeyword"
,
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/dao/impl/KeywordWarehouseDetailDaoImpl.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
dao
.
impl
;
import
com.google.common.collect.Maps
;
import
com.pcloud.book.book.dao.KeywordWarehouseDetailDao
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
import
java.util.Map
;
@Component
public
class
KeywordWarehouseDetailDaoImpl
extends
BaseDaoImpl
<
KeywordWarehouseDetail
>
implements
KeywordWarehouseDetailDao
{
@Override
public
int
insertSelective
(
KeywordWarehouseDetail
record
)
{
return
this
.
getSqlSession
().
insert
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.insertSelective"
,
record
);
}
@Override
public
KeywordWarehouseDetail
selectByPrimaryKey
(
Long
id
)
{
return
this
.
getSqlSession
().
selectOne
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.selectByPrimaryKey"
,
id
);
}
@Override
public
int
updateByPrimaryKeySelective
(
KeywordWarehouseDetail
record
)
{
return
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.updateByPrimaryKeySelective"
,
record
);
}
@Override
public
int
updateByPrimaryKey
(
KeywordWarehouseDetail
record
)
{
return
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.updateByPrimaryKey"
,
record
);
}
@Override
public
void
deleteDetails
(
Long
keywordId
)
{
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.deleteDetails"
,
keywordId
);
}
@Override
public
void
addOne
(
Long
adviserId
,
Long
id
)
{
Map
<
String
,
Object
>
map
=
Maps
.
newHashMap
();
map
.
put
(
"adviserId"
,
adviserId
);
map
.
put
(
"id"
,
id
);
this
.
getSqlSession
().
update
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.addOne"
,
map
);
}
@Override
public
List
<
KeywordWarehouseDetail
>
listByKeywordIds
(
List
<
Long
>
ids
)
{
return
this
.
getSqlSession
().
selectList
(
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl.listByKeywordIds"
,
ids
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/entity/KeywordUseRecord.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
KeywordUseRecord
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
2218918681920971881L
;
private
Long
keywordId
;
private
Long
keywordDetailId
;
private
Long
adviserId
;
private
Integer
useNum
;
private
Long
createUser
;
private
Long
updateUser
;
private
Integer
isDelete
;
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/entity/KeywordWarehouse.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
KeywordWarehouse
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
681141672872945668L
;
private
String
keyword
;
private
Integer
scope
;
private
Integer
matchingRule
;
private
Integer
auditStatus
;
private
String
guide
;
private
Long
editorId
;
private
Long
createUser
;
private
Long
updateUser
;
private
Integer
isDelete
;
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/entity/KeywordWarehouseDetail.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
KeywordWarehouseDetail
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
6093266266761819768L
;
private
Long
keywordId
;
private
Long
professionalLabelId
;
private
Long
depthLabelId
;
private
Long
purposeLabelId
;
private
String
groupId
;
private
Long
productId
;
private
String
productType
;
private
Long
channelId
;
private
String
typeCode
;
private
String
description
;
private
String
content
;
private
String
linkUrl
;
private
String
picUrl
;
private
Integer
useNum
;
private
Long
createUser
;
private
Long
updateUser
;
private
Integer
isDelete
;
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/book/facade/impl/BookKeywordWarehouseFacadeImpl.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
facade
.
impl
;
import
com.pcloud.book.book.biz.BookKeywordWarehouseBiz
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.book.vo.BookKeywordProductVO
;
import
com.pcloud.book.book.vo.request.AddBookKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.CheckKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.EditBookKeywordRequestVO
;
import
com.pcloud.book.book.vo.request.QueryBookKeywordWarehouseRequestVO
;
import
com.pcloud.book.book.vo.response.BookKeywordResponseVO
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.permission.PermissionException
;
import
com.pcloud.common.utils.SessionUtil
;
import
org.springframework.web.bind.annotation.GetMapping
;
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
java.util.List
;
import
javax.annotation.Resource
;
import
io.swagger.annotations.Api
;
@Api
(
"关键词库"
)
@RestController
@RequestMapping
(
"keywordWarehouse"
)
public
class
BookKeywordWarehouseFacadeImpl
{
@Resource
private
BookKeywordWarehouseBiz
bookKeywordWarehouseBiz
;
@PostMapping
(
"addBookKeyword"
)
public
ResponseDto
<
Void
>
addBookKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
AddBookKeywordRequestVO
vo
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
vo
.
setUserId
(
adviserId
);
this
.
bookKeywordWarehouseBiz
.
addBookKeyword
(
vo
,
null
);
return
new
ResponseDto
<>();
}
@PostMapping
(
"editBookKeyword"
)
public
ResponseDto
<
Void
>
editBookKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
EditBookKeywordRequestVO
vo
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
vo
.
setUserId
(
adviserId
);
this
.
bookKeywordWarehouseBiz
.
editBookKeyword
(
vo
);
return
new
ResponseDto
<>();
}
@GetMapping
(
"deleteBookKeyword"
)
public
ResponseDto
<
Void
>
deleteBookKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"keywordId"
)
Long
keywordId
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
this
.
bookKeywordWarehouseBiz
.
deleteBookKeyword
(
keywordId
,
adviserId
);
return
new
ResponseDto
<>();
}
@PostMapping
(
"listBookKeywordWarehouse"
)
public
ResponseDto
<
PageBeanNew
<
BookKeywordResponseVO
>>
listBookKeywordWarehouse
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
QueryBookKeywordWarehouseRequestVO
vo
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
vo
.
setUserId
(
adviserId
);
final
PageBeanNew
<
BookKeywordResponseVO
>
pageBeanNew
=
this
.
bookKeywordWarehouseBiz
.
listBookKeywordWarehouse
(
vo
);
return
new
ResponseDto
<>(
pageBeanNew
);
}
@GetMapping
(
"useKeyword"
)
public
ResponseDto
<
Void
>
useKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"keywordDetailId"
)
Long
keywordDetailId
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
this
.
bookKeywordWarehouseBiz
.
useKeyword
(
adviserId
,
keywordDetailId
);
return
new
ResponseDto
<>();
}
@GetMapping
(
"getDetail"
)
public
ResponseDto
<
BookKeywordResponseVO
>
getDetail
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"keywordId"
)
Long
keywordId
)
throws
PermissionException
{
final
BookKeywordResponseVO
detail
=
this
.
bookKeywordWarehouseBiz
.
getDetail
(
keywordId
);
return
new
ResponseDto
<>(
detail
);
}
@GetMapping
(
"oftenKeyword"
)
public
ResponseDto
<
PageBeanNew
<
BookKeywordProductVO
>>
oftenKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
,
@RequestParam
(
"bookGroupId"
)
Long
bookGroupId
,
@RequestParam
(
"depthLabelId"
)
Long
depthLabelId
,
@RequestParam
(
"classifyId"
)
Long
classifyId
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
final
PageBeanNew
<
BookKeywordProductVO
>
pageBeanNew
=
this
.
bookKeywordWarehouseBiz
.
oftenKeyword
(
currentPage
,
numPerPage
,
bookGroupId
,
adviserId
,
depthLabelId
,
classifyId
);
return
new
ResponseDto
<>(
pageBeanNew
);
}
@GetMapping
(
"hotKeyword"
)
public
ResponseDto
<
PageBeanNew
<
BookKeywordProductVO
>>
hotKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
,
@RequestParam
(
"bookGroupId"
)
Long
bookGroupId
,
@RequestParam
(
value
=
"keyword"
,
required
=
false
)
String
keyword
,
@RequestParam
(
"depthLabelId"
)
Long
depthLabelId
,
@RequestParam
(
"classifyId"
)
Long
classifyId
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
final
PageBeanNew
<
BookKeywordProductVO
>
pageBeanNew
=
this
.
bookKeywordWarehouseBiz
.
hotKeyword
(
currentPage
,
numPerPage
,
adviserId
,
bookGroupId
,
keyword
,
depthLabelId
,
classifyId
);
return
new
ResponseDto
<>(
pageBeanNew
);
}
@GetMapping
(
"auditKeyword"
)
public
ResponseDto
<
Void
>
auditKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"keywordId"
)
Long
keywordId
,
@RequestParam
(
"auditCode"
)
Integer
auditCode
)
throws
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
this
.
bookKeywordWarehouseBiz
.
auditKeyword
(
adviserId
,
keywordId
,
BookConstant
.
AUDIT_ENUM_MAP
.
get
(
auditCode
));
return
new
ResponseDto
<>();
}
@PostMapping
(
"checkKeyword"
)
public
ResponseDto
<
List
<
Long
>>
checkKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
CheckKeywordRequestVO
vo
)
throws
PermissionException
{
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
final
List
<
Long
>
code
=
this
.
bookKeywordWarehouseBiz
.
checkKeyword
(
vo
);
return
new
ResponseDto
<>(
code
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/BookKeywordDetailVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.common.utils.BeanUtils
;
import
java.util.List
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.ToString
;
@Data
@ToString
@ApiModel
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
BookKeywordDetailVO
{
private
List
<
KeywordWearhouseLabelVO
>
labels
;
/**
* 分组id,一组label对应一个作品/应用
*/
@ApiModelProperty
(
"分组id,一组label对应一个作品/应用,那么这个整体为一组,按顺序1-15,每组不要重复"
)
private
Integer
groupId
;
@ApiModelProperty
(
"作品渠道id"
)
private
Long
channelId
;
@ApiModelProperty
(
"作品/应用标签"
)
private
String
proLabelName
;
@ApiModelProperty
(
"作品/应用id"
)
private
String
depLabelName
;
@ApiModelProperty
(
"作品/应用id"
)
private
String
purLabelName
;
@ApiModelProperty
(
"作品/应用id"
)
private
Long
productId
;
@ApiModelProperty
(
"作品/应用类型"
)
private
String
productType
;
@ApiModelProperty
(
"应用类型"
)
private
String
typeCode
;
@ApiModelProperty
(
"内容"
)
private
String
content
;
@ApiModelProperty
(
"应用/作品描述(答案 or 互动墙)"
)
private
String
description
;
@ApiModelProperty
(
"跳转链接"
)
private
String
linkUrl
;
@ApiModelProperty
(
"图片地址"
)
private
String
picUrl
;
public
static
BookKeywordDetailVO
cloneByEntity
(
KeywordWarehouseDetail
detail
)
{
if
(
null
==
detail
)
{
return
new
BookKeywordDetailVO
();
}
final
BookKeywordDetailVO
detailVO
=
new
BookKeywordDetailVO
();
BeanUtils
.
copyProperties
(
detail
,
detailVO
);
return
detailVO
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/BookKeywordProductVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
;
import
com.google.common.collect.Lists
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.common.utils.BeanUtils
;
import
org.springframework.util.CollectionUtils
;
import
java.util.List
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.ToString
;
@Data
@ToString
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
BookKeywordProductVO
{
@ApiModelProperty
(
"关键词id"
)
private
Long
keywordId
;
@ApiModelProperty
(
"关键词"
)
private
String
keyword
;
@ApiModelProperty
(
"关键词详情id"
)
private
Long
keywordDetailId
;
@ApiModelProperty
(
"匹配规则"
)
private
Integer
matchingRule
;
@ApiModelProperty
(
"作品/应用id"
)
private
Long
productId
;
@ApiModelProperty
(
"作品/应用类型(1:商品2:应用)"
)
private
String
productType
;
@ApiModelProperty
(
"渠道id"
)
private
Long
channelId
;
@ApiModelProperty
(
"作品/应用图片"
)
private
String
picUrl
;
@ApiModelProperty
(
"作品/应用链接"
)
private
String
linkUrl
;
@ApiModelProperty
(
"作品/应用标题"
)
private
String
title
;
@ApiModelProperty
(
"作品/应用描述"
)
private
String
description
;
@ApiModelProperty
(
"关键词引导语"
)
private
String
guide
;
@ApiModelProperty
(
"作品/应用内容"
)
private
String
content
;
@ApiModelProperty
(
"应用类型"
)
private
String
typeCode
;
@ApiModelProperty
(
"专业标签id"
)
private
Long
professionalLabelId
;
@ApiModelProperty
(
"深度标签id"
)
private
Long
depthLabelId
;
@ApiModelProperty
(
"目的标签"
)
private
Long
purposeLabelId
;
@ApiModelProperty
(
"使用次数"
)
private
Integer
useNum
;
@ApiModelProperty
(
"是否标记(1:是 0:否)"
)
private
Integer
isMark
;
public
static
List
<
BookKeywordProductVO
>
cloneByEntity
(
List
<
KeywordWarehouseDetail
>
list
){
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
Lists
.
newArrayList
();
}
List
<
BookKeywordProductVO
>
vos
=
Lists
.
newArrayList
();
for
(
KeywordWarehouseDetail
detail
:
list
)
{
BookKeywordProductVO
vo
=
new
BookKeywordProductVO
();
BeanUtils
.
copyProperties
(
detail
,
vo
);
vos
.
add
(
vo
);
}
return
vos
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/KeywordWearhouseLabelVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.common.utils.BeanUtils
;
import
lombok.Data
;
@Data
public
class
KeywordWearhouseLabelVO
{
private
Long
professionalLabelId
;
private
String
professionalLabelName
;
private
Long
depthLabelId
;
private
String
depthLabelName
;
private
Long
purposeLabelId
;
private
String
purposeLabelName
;
public
static
KeywordWearhouseLabelVO
cloneByEntity
(
KeywordWarehouseDetail
detail
)
{
if
(
null
==
detail
)
{
return
new
KeywordWearhouseLabelVO
();
}
final
KeywordWearhouseLabelVO
detailVO
=
new
KeywordWearhouseLabelVO
();
BeanUtils
.
copyProperties
(
detail
,
detailVO
);
return
detailVO
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/request/AddBookKeywordRequestVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
.
request
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.book.entity.KeywordWarehouse
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.book.book.vo.BookKeywordDetailVO
;
import
com.pcloud.book.book.vo.KeywordWearhouseLabelVO
;
import
com.pcloud.common.entity.BaseRequestVO
;
import
com.pcloud.common.utils.BeanUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
org.springframework.util.CollectionUtils
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
@ApiModel
public
class
AddBookKeywordRequestVO
extends
BaseRequestVO
{
private
static
final
long
serialVersionUID
=
-
5581508584274149498L
;
@ApiModelProperty
(
"关键词"
)
private
String
keyword
;
@ApiModelProperty
(
"引导语"
)
private
String
guide
;
@ApiModelProperty
(
"匹配规则(0:精准匹配1:模糊匹配)"
)
private
Integer
matchingRule
;
@ApiModelProperty
(
"适用范围(0:所有出版社,1:编辑)"
)
private
Integer
scope
;
@ApiModelProperty
(
"审核状态(0:手动添加免审核 1:申请待审核 2:审核通过 3:拒绝审核)"
)
private
Integer
auditStatus
;
@ApiModelProperty
(
"编辑id(适用范围为所有出版社的时候可以为空)"
)
private
Long
editorId
;
@ApiModelProperty
(
"关键词详情"
)
private
List
<
BookKeywordDetailVO
>
details
;
public
KeywordWarehouse
getEntity
()
{
final
KeywordWarehouse
warehouse
=
new
KeywordWarehouse
();
BeanUtils
.
copyProperties
(
this
,
warehouse
);
final
Date
now
=
new
Date
();
warehouse
.
setEditorId
(
null
==
this
.
getEditorId
()
?
0L
:
this
.
getEditorId
());
// warehouse.setAuditStatus(null == this.getAuditStatus() ? BookConstant.BookKeywordAuditEnum.NORMAL.getCode() : BookConstant.BookKeywordAuditEnum.TO_AUDIT.getCode());
warehouse
.
setAuditStatus
(
null
==
this
.
getAuditStatus
()
?
BookConstant
.
BookKeywordAuditEnum
.
NORMAL
.
getCode
()
:
BookConstant
.
BookKeywordAuditEnum
.
PASS_THE_AUDIT
.
getCode
());
warehouse
.
setCreateUser
(
this
.
getUserId
());
warehouse
.
setUpdateUser
(
this
.
getUserId
());
warehouse
.
setCreateTime
(
now
);
warehouse
.
setUpdateTime
(
now
);
warehouse
.
setIsDelete
(
0
);
return
warehouse
;
}
public
List
<
KeywordWarehouseDetail
>
getDetailEntity
(
Long
keywordId
)
{
final
List
<
KeywordWarehouseDetail
>
list
=
Lists
.
newArrayList
();
List
<
BookKeywordDetailVO
>
details
=
this
.
getDetails
();
if
(
CollectionUtils
.
isEmpty
(
details
))
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"关键词信息为空"
);
}
Map
<
Integer
,
String
>
map
=
Maps
.
newHashMap
();
for
(
BookKeywordDetailVO
vo
:
details
)
{
final
List
<
KeywordWearhouseLabelVO
>
labels
=
vo
.
getLabels
();
if
(
"PRODUCT"
.
equals
(
vo
.
getProductType
())
&&
null
==
vo
.
getChannelId
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"渠道信息不能为空"
);
}
if
(
CollectionUtils
.
isEmpty
(
labels
))
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"标签信息为空"
);
}
for
(
KeywordWearhouseLabelVO
label
:
labels
)
{
KeywordWarehouseDetail
detail
=
new
KeywordWarehouseDetail
();
BeanUtils
.
copyProperties
(
vo
,
detail
);
String
uuid
=
map
.
get
(
vo
.
getGroupId
());
if
(
StringUtil
.
isBlank
(
uuid
))
{
uuid
=
StringUtil
.
getUUID
();
map
.
put
(
vo
.
getGroupId
(),
uuid
);
}
// 分组id唯一
detail
.
setGroupId
(
uuid
);
detail
.
setProfessionalLabelId
(
label
.
getProfessionalLabelId
());
detail
.
setPurposeLabelId
(
label
.
getPurposeLabelId
());
detail
.
setDepthLabelId
(
label
.
getDepthLabelId
());
final
Date
now
=
new
Date
();
detail
.
setKeywordId
(
keywordId
);
detail
.
setUseNum
(
0
);
detail
.
setCreateUser
(
this
.
getUserId
());
detail
.
setUpdateUser
(
this
.
getUserId
());
detail
.
setCreateTime
(
now
);
detail
.
setUpdateTime
(
now
);
detail
.
setIsDelete
(
0
);
list
.
add
(
detail
);
}
}
return
list
;
}
public
Boolean
check
()
{
return
CollectionUtils
.
isEmpty
(
this
.
getDetails
())
||
StringUtil
.
isBlank
(
this
.
getKeyword
())
||
StringUtil
.
isBlank
(
this
.
getGuide
())
||
null
==
this
.
getMatchingRule
()
||
null
==
this
.
getScope
()
||
null
==
this
.
getUserId
()
||
(
scope
!=
0
&&
null
==
this
.
getEditorId
());
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/request/CheckKeywordRequestVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
.
request
;
import
com.pcloud.common.entity.BaseRequestVO
;
import
java.util.List
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
CheckKeywordRequestVO
extends
BaseRequestVO
{
private
static
final
long
serialVersionUID
=
4139553896398532109L
;
private
Long
keywordId
;
private
String
keyword
;
private
List
<
Long
>
depthLabelIds
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/request/EditBookKeywordRequestVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
.
request
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.constant.BookConstant
;
import
com.pcloud.book.book.entity.KeywordWarehouse
;
import
com.pcloud.book.book.entity.KeywordWarehouseDetail
;
import
com.pcloud.book.book.vo.BookKeywordDetailVO
;
import
com.pcloud.book.book.vo.KeywordWearhouseLabelVO
;
import
com.pcloud.common.entity.BaseRequestVO
;
import
com.pcloud.common.utils.BeanUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
org.springframework.util.CollectionUtils
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
@ApiModel
public
class
EditBookKeywordRequestVO
extends
BaseRequestVO
{
private
static
final
long
serialVersionUID
=
719494003873772831L
;
@ApiModelProperty
(
"关键词主键"
)
private
Long
keywordId
;
@ApiModelProperty
(
"关键词"
)
private
String
keyword
;
@ApiModelProperty
(
"引导语"
)
private
String
guide
;
@ApiModelProperty
(
"匹配规则(0:精准匹配1:模糊匹配)"
)
private
Integer
matchingRule
;
@ApiModelProperty
(
"适用范围(0:所有出版社,1:编辑)"
)
private
Integer
scope
;
@ApiModelProperty
(
"编辑id(适用范围为所有出版社的时候可以为空)"
)
private
Long
editorId
;
@ApiModelProperty
(
"关键词详情"
)
private
List
<
BookKeywordDetailVO
>
details
;
public
KeywordWarehouse
getEntity
()
{
final
KeywordWarehouse
warehouse
=
new
KeywordWarehouse
();
BeanUtils
.
copyProperties
(
this
,
warehouse
);
final
Date
now
=
new
Date
();
warehouse
.
setId
(
keywordId
);
warehouse
.
setAuditStatus
(
BookConstant
.
BookKeywordAuditEnum
.
NORMAL
.
getCode
());
warehouse
.
setUpdateUser
(
this
.
getUserId
());
warehouse
.
setUpdateTime
(
now
);
return
warehouse
;
}
public
List
<
KeywordWarehouseDetail
>
getDetailEntity
(
Long
keywordId
)
{
final
List
<
KeywordWarehouseDetail
>
list
=
Lists
.
newArrayList
();
List
<
BookKeywordDetailVO
>
details
=
this
.
getDetails
();
Map
<
Integer
,
String
>
map
=
Maps
.
newHashMap
();
for
(
BookKeywordDetailVO
vo
:
details
)
{
final
List
<
KeywordWearhouseLabelVO
>
labels
=
vo
.
getLabels
();
if
(
"PRODUCT"
.
equals
(
vo
.
getProductType
())
&&
null
==
vo
.
getChannelId
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"渠道信息不能为空"
);
}
if
(
CollectionUtils
.
isEmpty
(
labels
))
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"标签信息为空"
);
}
for
(
KeywordWearhouseLabelVO
labelVO
:
vo
.
getLabels
())
{
final
KeywordWarehouseDetail
detail
=
new
KeywordWarehouseDetail
();
BeanUtils
.
copyProperties
(
vo
,
detail
);
String
uuid
=
map
.
get
(
vo
.
getGroupId
());
if
(
StringUtil
.
isBlank
(
uuid
))
{
uuid
=
StringUtil
.
getUUID
();
map
.
put
(
vo
.
getGroupId
(),
uuid
);
}
// 分组id唯一
detail
.
setGroupId
(
uuid
);
detail
.
setPurposeLabelId
(
labelVO
.
getPurposeLabelId
());
detail
.
setDepthLabelId
(
labelVO
.
getDepthLabelId
());
detail
.
setProfessionalLabelId
(
labelVO
.
getProfessionalLabelId
());
final
Date
now
=
new
Date
();
detail
.
setUseNum
(
0
);
detail
.
setKeywordId
(
keywordId
);
detail
.
setCreateUser
(
this
.
getUserId
());
detail
.
setUpdateUser
(
this
.
getUserId
());
detail
.
setCreateTime
(
now
);
detail
.
setUpdateTime
(
now
);
detail
.
setIsDelete
(
0
);
list
.
add
(
detail
);
}
}
return
list
;
}
public
Boolean
check
()
{
return
null
==
this
.
getKeywordId
()
||
StringUtil
.
isBlank
(
this
.
getKeyword
())
||
StringUtil
.
isBlank
(
this
.
getGuide
())
||
null
==
this
.
getMatchingRule
()
||
null
==
this
.
getScope
()
||
null
==
this
.
getUserId
()
||
CollectionUtils
.
isEmpty
(
this
.
getDetails
())
||
(
scope
!=
0
&&
null
==
this
.
getEditorId
())
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/request/QueryBookKeywordWarehouseRequestVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
.
request
;
import
com.pcloud.common.entity.BasePageRequestVO
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
@ApiModel
(
"查询关键词库列表"
)
public
class
QueryBookKeywordWarehouseRequestVO
extends
BasePageRequestVO
{
private
static
final
long
serialVersionUID
=
4027474233489240382L
;
@ApiModelProperty
(
value
=
"主键"
,
hidden
=
true
)
private
Long
id
;
@ApiModelProperty
(
"关键词"
)
private
String
keyword
;
@ApiModelProperty
(
"专业关键词id"
)
private
Long
professionalLabelId
;
@ApiModelProperty
(
"深度关键词id"
)
private
Long
depthLabelId
;
@ApiModelProperty
(
"目的关键词id"
)
private
Long
purposeLabelId
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/response/BookKeywordResponseVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
.
response
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.pcloud.book.book.vo.BookKeywordDetailVO
;
import
java.io.Serializable
;
import
java.util.List
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
@ApiModel
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
BookKeywordResponseVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1180965999128554190L
;
private
Long
id
;
/**
* 关键词
*/
@ApiModelProperty
(
"关键词id"
)
private
String
keyword
;
@ApiModelProperty
(
"引导语"
)
private
String
guide
;
/**
* 适用范围(0:所有出版社,1:编辑)
*/
@ApiModelProperty
(
"0:精准匹配1:模糊匹配"
)
private
Integer
matchingRule
;
@ApiModelProperty
(
"出版id"
)
private
Long
agentId
;
@ApiModelProperty
(
"出版名称"
)
private
String
agentName
;
@ApiModelProperty
(
"编辑id"
)
private
Long
editorId
;
@ApiModelProperty
(
"编辑名称"
)
private
String
editorName
;
/**
* 商品/应用id
*/
private
List
<
BookKeywordDetailVO
>
product
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/response/CheckKeywordResponseVO.java
0 → 100644
View file @
5b328081
package
com
.
pcloud
.
book
.
book
.
vo
.
response
;
import
java.io.Serializable
;
import
lombok.Data
;
@Data
public
class
CheckKeywordResponseVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
5291107769450086908L
;
private
Long
keywordId
;
private
Long
depthLabelId
;
private
Long
num
;
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/app/AppConsr.java
View file @
5b328081
...
@@ -84,6 +84,25 @@ public class AppConsr {
...
@@ -84,6 +84,25 @@ public class AppConsr {
return
appDtos
;
return
appDtos
;
}
}
public
Map
<
Long
,
AppDto
>
mapBaseByIds
(
List
<
Long
>
appIds
)
{
LOGGER
.
info
(
"获取应用基本信息[appService.mapByIds],参数列表[appIds]:"
+
appIds
);
Map
<
Long
,
AppDto
>
appDtos
=
new
HashMap
<>();
if
(
ListUtils
.
isEmpty
(
appIds
))
{
return
appDtos
;
}
try
{
ResponseEntity
<
ResponseDto
<
Map
<
Long
,
AppDto
>>>
appDtosEntity
=
appService
.
mapBaseByIds
(
appIds
);
appDtos
=
ResponseHandleUtil
.
parseMapResponse
(
appDtosEntity
,
Long
.
class
,
AppDto
.
class
);
}
catch
(
BizException
e
)
{
LOGGER
.
warn
(
"获取应用基本信息[appService.mapByIds]:"
+
e
.
getMessage
(),
e
);
throw
new
BizException
(
e
.
getCode
(),
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"获取应用基本信息[appService.mapByIds]:"
+
e
.
getMessage
(),
e
);
throw
new
BookBizException
(
BookBizException
.
INVOKE_USER_ERROR
,
"获取应用基本信息失败~!"
);
}
return
appDtos
;
}
/**
/**
* 获取应用基本信息
* 获取应用基本信息
* @param appIds 应用ID列表
* @param appIds 应用ID列表
...
...
pcloud-service-book/src/main/java/com/pcloud/book/consumer/label/LabelConsr.java
0 → 100644
View file @
5b328081
/**
*
*/
package
com
.
pcloud
.
book
.
consumer
.
label
;
import
com.pcloud.common.core.biz.LabelUsedQueueBiz
;
import
com.pcloud.common.core.dto.LabelUsedMessageDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.ResponseHandleUtil
;
import
com.pcloud.labelcenter.label.service.LabelService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
import
java.util.Map
;
import
lombok.extern.slf4j.Slf4j
;
/**
* @描述:标签中间件
* @作者:songx
* @创建时间:2016年12月21日,下午3:04:17 @版本:1.0
*/
@Slf4j
@Component
(
"labelConsr"
)
public
class
LabelConsr
{
@Autowired
private
LabelService
labelService
;
@Autowired
private
LabelUsedQueueBiz
labelUsedQueueBiz
;
/**
* 标签使用量
*/
public
void
sendLabelUsed
(
Long
partyId
,
Long
proLabelId
,
Long
depLabelId
,
Long
purLabelId
)
throws
BizException
{
log
.
info
(
"【标签中心(消)】标签使用量,<START>.[partyId]="
+
partyId
+
",[proLabelId]="
+
proLabelId
+
",[depLabelId]="
+
depLabelId
+
",[purLabelId]="
+
purLabelId
);
if
(
proLabelId
==
null
&&
depLabelId
==
null
&&
purLabelId
==
null
)
{
return
;
}
LabelUsedMessageDto
labelUsedMessageDto
=
new
LabelUsedMessageDto
(
partyId
,
proLabelId
,
depLabelId
,
purLabelId
);
try
{
labelUsedQueueBiz
.
sendMessageQueue
(
labelUsedMessageDto
);
}
catch
(
Exception
e
)
{
log
.
error
(
"【标签中心(消)】标签使用量.[sendMessageQueue]:"
+
e
.
getMessage
(),
e
);
}
log
.
info
(
"【标签中心(消)】标签使用量,<END>"
);
}
/**
* 获取标签的名称
*/
public
Map
<
Long
,
String
>
getLabelName
(
List
<
Long
>
labelIds
)
throws
BizException
{
log
.
info
(
"【标签中心(消)】获取标签的名称,<START>.[labelIds]="
+
labelIds
.
toString
());
if
(
ListUtils
.
isEmpty
(
labelIds
))
{
return
null
;
}
Map
<
Long
,
String
>
labelNameMap
=
null
;
try
{
labelNameMap
=
ResponseHandleUtil
.
parseMap
(
labelService
.
getLabelName
(
labelIds
),
Long
.
class
,
String
.
class
);
}
catch
(
Exception
e
)
{
log
.
error
(
"【标签中心(消)】获取标签的名称.[getLabelName]:"
+
e
.
getMessage
(),
e
);
}
log
.
info
(
"【标签中心(消)】获取标签的名称,<END>.[labelNameMap]="
+
(
labelNameMap
==
null
?
null
:
labelNameMap
.
toString
()));
return
labelNameMap
;
}
/**
* 根据标签名称获取标签id
*/
public
Long
getLabelIdByName
(
Long
partyId
,
String
code
,
String
labelName
,
Long
parentLabelId
)
{
log
.
info
(
"【标签中心(消)】根据标签名称获取标签id,<START>.[partyId]="
+
partyId
+
",[code]="
+
code
+
",[labelName]="
+
labelName
+
",[parentLabelId]="
+
parentLabelId
);
if
(
parentLabelId
==
null
)
{
return
null
;
}
Long
labelId
=
null
;
try
{
labelId
=
ResponseHandleUtil
.
parseResponse
(
labelService
.
getLableIdByName
(
partyId
,
code
,
labelName
,
parentLabelId
),
Long
.
class
);
}
catch
(
Exception
e
)
{
log
.
error
(
"【标签中心(消)】根据标签名称获取标签id.[getLableIdByName]:"
+
e
.
getMessage
(),
e
);
}
log
.
info
(
"【标签中心(消)】根据标签名称获取标签id,<START>.[labelId]="
+
labelId
);
return
labelId
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/resource/ProductConsr.java
View file @
5b328081
...
@@ -10,6 +10,7 @@ import com.pcloud.common.utils.ResponseHandleUtil;
...
@@ -10,6 +10,7 @@ import com.pcloud.common.utils.ResponseHandleUtil;
import
com.pcloud.resourcecenter.product.dto.ProDto
;
import
com.pcloud.resourcecenter.product.dto.ProDto
;
import
com.pcloud.resourcecenter.product.dto.Product4BookDTO
;
import
com.pcloud.resourcecenter.product.dto.Product4BookDTO
;
import
com.pcloud.resourcecenter.product.dto.ProductDto
;
import
com.pcloud.resourcecenter.product.dto.ProductDto
;
import
com.pcloud.resourcecenter.product.dto.ProductLabelDto
;
import
com.pcloud.resourcecenter.product.dto.UpdateAppProductParamDTO
;
import
com.pcloud.resourcecenter.product.dto.UpdateAppProductParamDTO
;
import
com.pcloud.resourcecenter.product.entity.Product
;
import
com.pcloud.resourcecenter.product.entity.Product
;
import
com.pcloud.resourcecenter.product.service.ProductService
;
import
com.pcloud.resourcecenter.product.service.ProductService
;
...
@@ -63,6 +64,28 @@ public class ProductConsr {
...
@@ -63,6 +64,28 @@ public class ProductConsr {
}
}
/**
/**
* 获取商品ID集合获取商品的标签
*/
public
Map
<
Long
,
ProductLabelDto
>
getLabelByProIds
(
List
<
Long
>
productIds
)
throws
BizException
{
LOGGER
.
info
(
"【资源中心(消)】获取商品ID集合获取商品的标签,<START>.[productIds]="
+
productIds
);
if
(
ListUtils
.
isEmpty
(
productIds
))
{
return
null
;
}
try
{
return
ResponseHandleUtil
.
parseMapResponse
(
productService
.
getLabelByProIds
(
productIds
),
Long
.
class
,
ProductLabelDto
.
class
);
}
catch
(
BizException
e
)
{
LOGGER
.
warn
(
"【资源中心(消)】获取商品ID集合获取商品的标签失败:"
+
e
.
getMessage
(),
e
);
throw
new
BizException
(
e
.
getCode
(),
e
.
getMessage
());
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"【资源中心(消)】获取商品ID集合获取商品的标签.[listProDetail4Wechat]:"
+
e
.
getMessage
(),
e
);
throw
new
BookBizException
(
BookBizException
.
INVOKE_RES_ERROR
,
"服务内部错误,请稍后重试"
);
}
finally
{
LOGGER
.
info
(
"【资源中心(消)】获取商品ID集合获取商品的标签信息,<END>"
);
}
}
/**
* 资源中心拉取商品基本信息
* 资源中心拉取商品基本信息
*/
*/
public
Map
<
Long
,
ProductDto
>
getProBasesByIds
(
List
<
Long
>
productIds
)
throws
BizException
{
public
Map
<
Long
,
ProductDto
>
getProBasesByIds
(
List
<
Long
>
productIds
)
throws
BizException
{
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/biz/BookKeywordBiz.java
View file @
5b328081
...
@@ -22,7 +22,7 @@ public interface BookKeywordBiz {
...
@@ -22,7 +22,7 @@ public interface BookKeywordBiz {
* @Desr:新增关键词
* @Desr:新增关键词
* @Date:2019/4/25 10:53
* @Date:2019/4/25 10:53
*/
*/
void
insertKeyword
(
SetKeywordVO
setKeywordVO
,
Long
partyId
);
void
insertKeyword
(
SetKeywordVO
setKeywordVO
);
/**
/**
* @Author:lili
* @Author:lili
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/biz/impl/BookKeywordBizImpl.java
View file @
5b328081
package
com
.
pcloud
.
book
.
keywords
.
biz
.
impl
;
package
com
.
pcloud
.
book
.
keywords
.
biz
.
impl
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.biz.BookKeywordWarehouseBiz
;
import
com.pcloud.book.consumer.channel.QrcodeSceneConsr
;
import
com.pcloud.book.consumer.channel.QrcodeSceneConsr
;
import
com.pcloud.book.consumer.resource.ProductConsr
;
import
com.pcloud.book.consumer.resource.ProductConsr
;
import
com.pcloud.book.consumer.wechatgroup.WechatGroupConsr
;
import
com.pcloud.book.consumer.wechatgroup.WechatGroupConsr
;
...
@@ -54,6 +55,8 @@ import java.util.List;
...
@@ -54,6 +55,8 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/25 10:47
* @date 2019/4/25 10:47
...
@@ -80,11 +83,16 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
...
@@ -80,11 +83,16 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
private
AppTouchRecordDao
appTouchRecordDao
;
private
AppTouchRecordDao
appTouchRecordDao
;
@Autowired
@Autowired
private
GroupQrcodeDao
groupQrcodeDao
;
private
GroupQrcodeDao
groupQrcodeDao
;
@Resource
private
BookKeywordWarehouseBiz
bookKeywordWarehouseBiz
;
@Override
@Override
@ParamLog
(
"新增关键词"
)
@ParamLog
(
"新增关键词"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
insertKeyword
(
SetKeywordVO
setKeywordVO
,
Long
partyId
)
{
public
void
insertKeyword
(
SetKeywordVO
setKeywordVO
)
{
if
(
null
==
setKeywordVO
||
setKeywordVO
.
check
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"应用/作品信息为空"
);
}
if
(
setKeywordVO
.
getClassifyId
()
==
null
)
{
if
(
setKeywordVO
.
getClassifyId
()
==
null
)
{
setKeywordVO
.
setClassifyId
(
0L
);
setKeywordVO
.
setClassifyId
(
0L
);
}
}
...
@@ -102,7 +110,7 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
...
@@ -102,7 +110,7 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
//新增关键词
//新增关键词
Keyword
keyword
=
new
Keyword
();
Keyword
keyword
=
new
Keyword
();
BeanUtils
.
copyProperties
(
setKeywordVO
,
keyword
);
BeanUtils
.
copyProperties
(
setKeywordVO
,
keyword
);
keyword
.
setCreateUser
(
partyId
);
keyword
.
setCreateUser
(
setKeywordVO
.
getUserId
()
);
keywordDao
.
insert
(
keyword
);
keywordDao
.
insert
(
keyword
);
//上架商品
//上架商品
List
<
Long
>
productIds
=
new
ArrayList
<>();
List
<
Long
>
productIds
=
new
ArrayList
<>();
...
@@ -119,7 +127,13 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
...
@@ -119,7 +127,13 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
//获取最大排序值
//获取最大排序值
Integer
rank
=
bookKeywordDao
.
getMaxRank
(
setKeywordVO
.
getBookGroupId
(),
bookKeyword
.
getClassifyId
());
Integer
rank
=
bookKeywordDao
.
getMaxRank
(
setKeywordVO
.
getBookGroupId
(),
bookKeyword
.
getClassifyId
());
bookKeyword
.
setRank
(
rank
+
1
);
bookKeyword
.
setRank
(
rank
+
1
);
bookKeyword
.
setCreateUser
(
partyId
);
bookKeyword
.
setCreateUser
(
setKeywordVO
.
getUserId
());
if
(
null
!=
setKeywordVO
.
getAddWarehouse
()
&&
1
==
setKeywordVO
.
getAddWarehouse
())
{
setKeywordVO
.
setChannelId
(
bookGroupDTO
.
getChannelId
());
final
Long
warehouseId
=
bookKeywordWarehouseBiz
.
addBookKeyword
(
setKeywordVO
);
bookKeyword
.
setWarehouseId
(
warehouseId
);
bookKeyword
.
setIsWarehouse
(
1
);
}
bookKeywordDao
.
insert
(
bookKeyword
);
bookKeywordDao
.
insert
(
bookKeyword
);
}
}
...
@@ -141,6 +155,9 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
...
@@ -141,6 +155,9 @@ public class BookKeywordBizImpl implements BookKeywordBiz {
if
(
bookGroupDTO
==
null
)
{
if
(
bookGroupDTO
==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"该社群码不存在!"
);
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_ERROR
,
"该社群码不存在!"
);
}
}
if
(
null
!=
updateKeywordVO
.
getAddWarehouse
()
&&
1
==
updateKeywordVO
.
getAddWarehouse
())
{
this
.
bookKeywordDao
.
updateIsWarehouse
(
updateKeywordVO
.
getBookKeywordId
());
}
Keyword
keyword
=
new
Keyword
();
Keyword
keyword
=
new
Keyword
();
BeanUtils
.
copyProperties
(
updateKeywordVO
,
keyword
);
BeanUtils
.
copyProperties
(
updateKeywordVO
,
keyword
);
keyword
.
setId
(
updateKeywordVO
.
getKeywordId
());
keyword
.
setId
(
updateKeywordVO
.
getKeywordId
());
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dao/BookKeywordDao.java
View file @
5b328081
...
@@ -64,6 +64,12 @@ public interface BookKeywordDao extends BaseDao<BookKeyword> {
...
@@ -64,6 +64,12 @@ public interface BookKeywordDao extends BaseDao<BookKeyword> {
KeywordVO
getByBookKeyword
(
Long
bookKeywordId
);
KeywordVO
getByBookKeyword
(
Long
bookKeywordId
);
/**
/**
* 更新仓库值
* @param bookKeywordId
*/
void
updateIsWarehouse
(
Long
bookKeywordId
);
/**
* @Author:lili
* @Author:lili
* @Desr:获取关键词数量
* @Desr:获取关键词数量
* @Date:2019/5/14 16:46
* @Date:2019/5/14 16:46
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dao/impl/BookKeywordDaoImpl.java
View file @
5b328081
...
@@ -73,6 +73,11 @@ public class BookKeywordDaoImpl extends BaseDaoImpl<BookKeyword> implements Book
...
@@ -73,6 +73,11 @@ public class BookKeywordDaoImpl extends BaseDaoImpl<BookKeyword> implements Book
}
}
@Override
@Override
public
void
updateIsWarehouse
(
Long
bookKeywordId
)
{
this
.
getSqlSession
().
update
(
"updateIsWarehouse"
,
bookKeywordId
);
}
@Override
public
Integer
getKeywordCount
(
Long
bookGroupId
,
Long
classifyId
)
{
public
Integer
getKeywordCount
(
Long
bookGroupId
,
Long
classifyId
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"bookGroupId"
,
bookGroupId
);
paramMap
.
put
(
"bookGroupId"
,
bookGroupId
);
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dto/KeywordDTO.java
View file @
5b328081
...
@@ -5,53 +5,32 @@ import com.fasterxml.jackson.annotation.JsonInclude;
...
@@ -5,53 +5,32 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/25 10:17
* @date 2019/4/25 10:17
*/
*/
@Data
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
KeywordDTO
implements
Serializable
{
public
class
KeywordDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
6868312018634217941L
;
@ApiModelProperty
(
"关键词标识"
)
@ApiModelProperty
(
"关键词标识"
)
private
Long
keywordId
;
private
Long
keywordId
;
@ApiModelProperty
(
"关键词"
)
@ApiModelProperty
(
"关键词"
)
private
String
keywords
;
private
String
keywords
;
@ApiModelProperty
(
"是否仓库词(1:是 0:否)"
)
private
Integer
isWarehouse
;
@ApiModelProperty
(
"仓库关键词id"
)
private
Long
warehouseId
;
@ApiModelProperty
(
"引导语"
)
@ApiModelProperty
(
"引导语"
)
private
String
guide
;
private
String
guide
;
public
Long
getKeywordId
()
{
return
keywordId
;
}
public
void
setKeywordId
(
Long
keywordId
)
{
this
.
keywordId
=
keywordId
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
String
getGuide
()
{
return
guide
;
}
public
void
setGuide
(
String
guide
)
{
this
.
guide
=
guide
;
}
@Override
public
String
toString
()
{
return
"KeywordVO{"
+
"keywordId="
+
keywordId
+
", keywords='"
+
keywords
+
'\''
+
", guide='"
+
guide
+
'\''
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/dto/ReplyKeywordDTO.java
View file @
5b328081
...
@@ -3,12 +3,15 @@ package com.pcloud.book.keywords.dto;
...
@@ -3,12 +3,15 @@ package com.pcloud.book.keywords.dto;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
/**
* @author lily
* @author lily
* @date 2019/5/6 11:08
* @date 2019/5/6 11:08
*/
*/
@Data
public
class
ReplyKeywordDTO
implements
Serializable
{
public
class
ReplyKeywordDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8574462003400058682L
;
@ApiModelProperty
(
"关键词标识"
)
@ApiModelProperty
(
"关键词标识"
)
private
Long
keywordId
;
private
Long
keywordId
;
...
@@ -18,6 +21,12 @@ public class ReplyKeywordDTO implements Serializable {
...
@@ -18,6 +21,12 @@ public class ReplyKeywordDTO implements Serializable {
@ApiModelProperty
(
"回复类型"
)
@ApiModelProperty
(
"回复类型"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"是否仓库词(1:是 0:否)"
)
private
Integer
isWarehouse
;
@ApiModelProperty
(
"仓库关键词id"
)
private
Long
warehouseId
;
@ApiModelProperty
(
"内容"
)
@ApiModelProperty
(
"内容"
)
private
String
content
;
private
String
content
;
...
@@ -30,72 +39,4 @@ public class ReplyKeywordDTO implements Serializable {
...
@@ -30,72 +39,4 @@ public class ReplyKeywordDTO implements Serializable {
@ApiModelProperty
(
"描述信息"
)
@ApiModelProperty
(
"描述信息"
)
private
String
description
;
private
String
description
;
public
Long
getKeywordId
()
{
return
keywordId
;
}
public
void
setKeywordId
(
Long
keywordId
)
{
this
.
keywordId
=
keywordId
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
Integer
getReplyType
()
{
return
replyType
;
}
public
void
setReplyType
(
Integer
replyType
)
{
this
.
replyType
=
replyType
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
public
String
getPicUrl
()
{
return
picUrl
;
}
public
void
setPicUrl
(
String
picUrl
)
{
this
.
picUrl
=
picUrl
;
}
public
String
getLinkUrl
()
{
return
linkUrl
;
}
public
void
setLinkUrl
(
String
linkUrl
)
{
this
.
linkUrl
=
linkUrl
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
@Override
public
String
toString
()
{
return
"ReplyKeywordDTO{"
+
"keywordId="
+
keywordId
+
", keywords='"
+
keywords
+
'\''
+
", replyType="
+
replyType
+
", content='"
+
content
+
'\''
+
", picUrl='"
+
picUrl
+
'\''
+
", linkUrl='"
+
linkUrl
+
'\''
+
", description='"
+
description
+
'\''
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/entity/BookKeyword.java
View file @
5b328081
...
@@ -4,12 +4,20 @@ import com.pcloud.common.entity.BaseEntity;
...
@@ -4,12 +4,20 @@ import com.pcloud.common.entity.BaseEntity;
import
java.util.Date
;
import
java.util.Date
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/24 11:38
* @date 2019/4/24 11:38
*/
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
BookKeyword
extends
BaseEntity
{
public
class
BookKeyword
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
-
2202518041150996052L
;
private
Long
id
;
private
Long
id
;
/**
/**
...
@@ -38,6 +46,16 @@ public class BookKeyword extends BaseEntity {
...
@@ -38,6 +46,16 @@ public class BookKeyword extends BaseEntity {
private
Integer
setType
;
private
Integer
setType
;
/**
/**
* 是否仓库
*/
private
Integer
isWarehouse
;
/**
* 仓库关键词id
*/
private
Long
warehouseId
;
/**
* 排序
* 排序
*/
*/
private
Integer
rank
;
private
Integer
rank
;
...
@@ -66,117 +84,5 @@ public class BookKeyword extends BaseEntity {
...
@@ -66,117 +84,5 @@ public class BookKeyword extends BaseEntity {
*/
*/
private
Date
updateTime
;
private
Date
updateTime
;
public
Long
getId
()
{
return
id
;
}
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
}
public
Long
getBookId
()
{
return
bookId
;
}
public
void
setBookId
(
Long
bookId
)
{
this
.
bookId
=
bookId
;
}
public
Long
getChannelId
()
{
return
channelId
;
}
public
void
setChannelId
(
Long
channelId
)
{
this
.
channelId
=
channelId
;
}
public
Long
getBookGroupId
()
{
return
bookGroupId
;
}
public
void
setBookGroupId
(
Long
bookGroupId
)
{
this
.
bookGroupId
=
bookGroupId
;
}
public
Long
getClassifyId
()
{
return
classifyId
;
}
public
void
setClassifyId
(
Long
classifyId
)
{
this
.
classifyId
=
classifyId
;
}
public
Integer
getSetType
()
{
return
setType
;
}
public
void
setSetType
(
Integer
setType
)
{
this
.
setType
=
setType
;
}
public
Integer
getRank
()
{
return
rank
;
}
public
void
setRank
(
Integer
rank
)
{
this
.
rank
=
rank
;
}
public
Long
getKeywordId
()
{
return
keywordId
;
}
public
void
setKeywordId
(
Long
keywordId
)
{
this
.
keywordId
=
keywordId
;
}
public
Long
getCreateUser
()
{
return
createUser
;
}
public
void
setCreateUser
(
Long
createUser
)
{
this
.
createUser
=
createUser
;
}
public
Date
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
public
Long
getUpdateUser
()
{
return
updateUser
;
}
public
void
setUpdateUser
(
Long
updateUser
)
{
this
.
updateUser
=
updateUser
;
}
public
Date
getUpdateTime
()
{
return
updateTime
;
}
public
void
setUpdateTime
(
Date
updateTime
)
{
this
.
updateTime
=
updateTime
;
}
@Override
public
String
toString
()
{
return
"BookKeyword{"
+
"id="
+
id
+
", bookId="
+
bookId
+
", channelId="
+
channelId
+
", bookGroupId="
+
bookGroupId
+
", classifyId="
+
classifyId
+
", setType="
+
setType
+
", rank="
+
rank
+
", keywordId="
+
keywordId
+
", createUser="
+
createUser
+
", createTime="
+
createTime
+
", updateUser="
+
updateUser
+
", updateTime="
+
updateTime
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/entity/Keyword.java
View file @
5b328081
...
@@ -4,12 +4,20 @@ import com.pcloud.common.entity.BaseEntity;
...
@@ -4,12 +4,20 @@ import com.pcloud.common.entity.BaseEntity;
import
java.util.Date
;
import
java.util.Date
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/24 11:34
* @date 2019/4/24 11:34
*/
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
Keyword
extends
BaseEntity
{
public
class
Keyword
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
-
2337009049174430167L
;
/**
/**
* 关键词标识
* 关键词标识
*/
*/
...
@@ -36,6 +44,11 @@ public class Keyword extends BaseEntity {
...
@@ -36,6 +44,11 @@ public class Keyword extends BaseEntity {
private
Integer
replyType
;
private
Integer
replyType
;
/**
/**
* 是否仓库词
*/
private
Integer
isWarehouse
;
/**
* 服务标识
* 服务标识
*/
*/
private
Long
serveId
;
private
Long
serveId
;
...
@@ -85,148 +98,4 @@ public class Keyword extends BaseEntity {
...
@@ -85,148 +98,4 @@ public class Keyword extends BaseEntity {
*/
*/
private
Date
updateTime
;
private
Date
updateTime
;
public
Long
getId
()
{
return
id
;
}
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
}
public
String
getGuide
()
{
return
guide
;
}
public
void
setGuide
(
String
guide
)
{
this
.
guide
=
guide
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
Integer
getMatchingRule
()
{
return
matchingRule
;
}
public
void
setMatchingRule
(
Integer
matchingRule
)
{
this
.
matchingRule
=
matchingRule
;
}
public
Integer
getReplyType
()
{
return
replyType
;
}
public
void
setReplyType
(
Integer
replyType
)
{
this
.
replyType
=
replyType
;
}
public
Long
getServeId
()
{
return
serveId
;
}
public
void
setServeId
(
Long
serveId
)
{
this
.
serveId
=
serveId
;
}
public
String
getServeType
()
{
return
serveType
;
}
public
void
setServeType
(
String
serveType
)
{
this
.
serveType
=
serveType
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
public
String
getPicUrl
()
{
return
picUrl
;
}
public
void
setPicUrl
(
String
picUrl
)
{
this
.
picUrl
=
picUrl
;
}
public
String
getLinkUrl
()
{
return
linkUrl
;
}
public
void
setLinkUrl
(
String
linkUrl
)
{
this
.
linkUrl
=
linkUrl
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
public
Long
getCreateUser
()
{
return
createUser
;
}
public
void
setCreateUser
(
Long
createUser
)
{
this
.
createUser
=
createUser
;
}
@Override
public
Date
getCreateTime
()
{
return
createTime
;
}
@Override
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
public
Long
getUpdateUser
()
{
return
updateUser
;
}
public
void
setUpdateUser
(
Long
updateUser
)
{
this
.
updateUser
=
updateUser
;
}
@Override
public
Date
getUpdateTime
()
{
return
updateTime
;
}
@Override
public
void
setUpdateTime
(
Date
updateTime
)
{
this
.
updateTime
=
updateTime
;
}
@Override
public
String
toString
()
{
return
"Keyword{"
+
"id="
+
id
+
", guide='"
+
guide
+
'\''
+
", keywords='"
+
keywords
+
'\''
+
", matchingRule="
+
matchingRule
+
", replyType="
+
replyType
+
", serveId="
+
serveId
+
", serveType='"
+
serveType
+
'\''
+
", content='"
+
content
+
'\''
+
", picUrl='"
+
picUrl
+
'\''
+
", linkUrl='"
+
linkUrl
+
'\''
+
", description='"
+
description
+
'\''
+
", createUser="
+
createUser
+
", createTime="
+
createTime
+
", updateUser="
+
updateUser
+
", updateTime="
+
updateTime
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/facade/impl/BookKeywordFacadeImpl.java
View file @
5b328081
...
@@ -39,7 +39,8 @@ public class BookKeywordFacadeImpl implements BookKeywordFacade {
...
@@ -39,7 +39,8 @@ public class BookKeywordFacadeImpl implements BookKeywordFacade {
@PostMapping
(
"insertKeyword"
)
@PostMapping
(
"insertKeyword"
)
public
ResponseDto
<?>
insertKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
SetKeywordVO
setKeywordVO
)
throws
BizException
,
PermissionException
{
public
ResponseDto
<?>
insertKeyword
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
SetKeywordVO
setKeywordVO
)
throws
BizException
,
PermissionException
{
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
bookKeywordBiz
.
insertKeyword
(
setKeywordVO
,
partyId
);
setKeywordVO
.
setUserId
(
partyId
);
bookKeywordBiz
.
insertKeyword
(
setKeywordVO
);
return
new
ResponseDto
<>();
return
new
ResponseDto
<>();
}
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/vo/KeywordVO.java
View file @
5b328081
...
@@ -5,14 +5,17 @@ import com.fasterxml.jackson.annotation.JsonInclude;
...
@@ -5,14 +5,17 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/25 10:17
* @date 2019/4/25 10:17
*/
*/
@Data
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
KeywordVO
implements
Serializable
{
public
class
KeywordVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
3814214370941974682L
;
@ApiModelProperty
(
"社群码设置关键词标识"
)
@ApiModelProperty
(
"社群码设置关键词标识"
)
private
Long
bookKeywordId
;
private
Long
bookKeywordId
;
...
@@ -22,6 +25,12 @@ public class KeywordVO implements Serializable {
...
@@ -22,6 +25,12 @@ public class KeywordVO implements Serializable {
@ApiModelProperty
(
"分类标识"
)
@ApiModelProperty
(
"分类标识"
)
private
Long
classifyId
;
private
Long
classifyId
;
@ApiModelProperty
(
"是否仓库词(1:是 0:否)"
)
private
Integer
isWarehouse
;
@ApiModelProperty
(
"仓库关键词id"
)
private
Long
warehouseId
;
@ApiModelProperty
(
"社群码标识"
)
@ApiModelProperty
(
"社群码标识"
)
private
Long
bookGroupId
;
private
Long
bookGroupId
;
...
@@ -55,135 +64,4 @@ public class KeywordVO implements Serializable {
...
@@ -55,135 +64,4 @@ public class KeywordVO implements Serializable {
@ApiModelProperty
(
"描述信息"
)
@ApiModelProperty
(
"描述信息"
)
private
String
description
;
private
String
description
;
public
Long
getClassifyId
()
{
return
classifyId
;
}
public
void
setClassifyId
(
Long
classifyId
)
{
this
.
classifyId
=
classifyId
;
}
public
Long
getBookGroupId
()
{
return
bookGroupId
;
}
public
void
setBookGroupId
(
Long
bookGroupId
)
{
this
.
bookGroupId
=
bookGroupId
;
}
public
Long
getKeywordId
()
{
return
keywordId
;
}
public
void
setKeywordId
(
Long
keywordId
)
{
this
.
keywordId
=
keywordId
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
String
getGuide
()
{
return
guide
;
}
public
void
setGuide
(
String
guide
)
{
this
.
guide
=
guide
;
}
public
Integer
getMatchingRule
()
{
return
matchingRule
;
}
public
void
setMatchingRule
(
Integer
matchingRule
)
{
this
.
matchingRule
=
matchingRule
;
}
public
Integer
getReplyType
()
{
return
replyType
;
}
public
void
setReplyType
(
Integer
replyType
)
{
this
.
replyType
=
replyType
;
}
public
Long
getServeId
()
{
return
serveId
;
}
public
void
setServeId
(
Long
serveId
)
{
this
.
serveId
=
serveId
;
}
public
String
getServeType
()
{
return
serveType
;
}
public
void
setServeType
(
String
serveType
)
{
this
.
serveType
=
serveType
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
public
String
getPicUrl
()
{
return
picUrl
;
}
public
void
setPicUrl
(
String
picUrl
)
{
this
.
picUrl
=
picUrl
;
}
public
String
getLinkUrl
()
{
return
linkUrl
;
}
public
void
setLinkUrl
(
String
linkUrl
)
{
this
.
linkUrl
=
linkUrl
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
public
Long
getBookKeywordId
()
{
return
bookKeywordId
;
}
public
void
setBookKeywordId
(
Long
bookKeywordId
)
{
this
.
bookKeywordId
=
bookKeywordId
;
}
@Override
public
String
toString
()
{
return
"KeywordVO{"
+
"bookKeywordId="
+
bookKeywordId
+
", keywordId="
+
keywordId
+
", classifyId="
+
classifyId
+
", bookGroupId="
+
bookGroupId
+
", keywords='"
+
keywords
+
'\''
+
", guide='"
+
guide
+
'\''
+
", matchingRule="
+
matchingRule
+
", replyType="
+
replyType
+
", serveId="
+
serveId
+
", serveType='"
+
serveType
+
'\''
+
", content='"
+
content
+
'\''
+
", picUrl='"
+
picUrl
+
'\''
+
", linkUrl='"
+
linkUrl
+
'\''
+
", description='"
+
description
+
'\''
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/vo/ListKeywordVO.java
View file @
5b328081
...
@@ -5,14 +5,17 @@ import com.fasterxml.jackson.annotation.JsonInclude;
...
@@ -5,14 +5,17 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/25 10:17
* @date 2019/4/25 10:17
*/
*/
@Data
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
ListKeywordVO
implements
Serializable
{
public
class
ListKeywordVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
4077837341410058443L
;
@ApiModelProperty
(
"设置关键词标识"
)
@ApiModelProperty
(
"设置关键词标识"
)
private
Long
bookKeywordId
;
private
Long
bookKeywordId
;
...
@@ -28,6 +31,12 @@ public class ListKeywordVO implements Serializable {
...
@@ -28,6 +31,12 @@ public class ListKeywordVO implements Serializable {
@ApiModelProperty
(
"匹配规则"
)
@ApiModelProperty
(
"匹配规则"
)
private
Integer
matchingRule
;
private
Integer
matchingRule
;
@ApiModelProperty
(
"是否仓库词(1:是 0:否)"
)
private
Integer
isWarehouse
;
@ApiModelProperty
(
"仓库关键词id"
)
private
Long
warehouseId
;
@ApiModelProperty
(
"回复类型"
)
@ApiModelProperty
(
"回复类型"
)
private
Integer
replyType
;
private
Integer
replyType
;
...
@@ -52,126 +61,4 @@ public class ListKeywordVO implements Serializable {
...
@@ -52,126 +61,4 @@ public class ListKeywordVO implements Serializable {
@ApiModelProperty
(
"排序"
)
@ApiModelProperty
(
"排序"
)
private
Integer
rank
;
private
Integer
rank
;
public
Long
getBookKeywordId
()
{
return
bookKeywordId
;
}
public
void
setBookKeywordId
(
Long
bookKeywordId
)
{
this
.
bookKeywordId
=
bookKeywordId
;
}
public
Long
getKeywordId
()
{
return
keywordId
;
}
public
void
setKeywordId
(
Long
keywordId
)
{
this
.
keywordId
=
keywordId
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
String
getGuide
()
{
return
guide
;
}
public
void
setGuide
(
String
guide
)
{
this
.
guide
=
guide
;
}
public
Integer
getMatchingRule
()
{
return
matchingRule
;
}
public
void
setMatchingRule
(
Integer
matchingRule
)
{
this
.
matchingRule
=
matchingRule
;
}
public
Integer
getReplyType
()
{
return
replyType
;
}
public
void
setReplyType
(
Integer
replyType
)
{
this
.
replyType
=
replyType
;
}
public
Long
getServeId
()
{
return
serveId
;
}
public
void
setServeId
(
Long
serveId
)
{
this
.
serveId
=
serveId
;
}
public
String
getServeType
()
{
return
serveType
;
}
public
void
setServeType
(
String
serveType
)
{
this
.
serveType
=
serveType
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
public
String
getPicUrl
()
{
return
picUrl
;
}
public
void
setPicUrl
(
String
picUrl
)
{
this
.
picUrl
=
picUrl
;
}
public
String
getLinkUrl
()
{
return
linkUrl
;
}
public
void
setLinkUrl
(
String
linkUrl
)
{
this
.
linkUrl
=
linkUrl
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
public
Integer
getRank
()
{
return
rank
;
}
public
void
setRank
(
Integer
rank
)
{
this
.
rank
=
rank
;
}
@Override
public
String
toString
()
{
return
"ListKeywordVO{"
+
"bookKeywordId="
+
bookKeywordId
+
", keywordId="
+
keywordId
+
", keywords='"
+
keywords
+
'\''
+
", guide='"
+
guide
+
'\''
+
", matchingRule="
+
matchingRule
+
", replyType="
+
replyType
+
", serveId="
+
serveId
+
", serveType='"
+
serveType
+
'\''
+
", content='"
+
content
+
'\''
+
", picUrl='"
+
picUrl
+
'\''
+
", linkUrl='"
+
linkUrl
+
'\''
+
", description='"
+
description
+
'\''
+
", rank="
+
rank
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/vo/SetKeywordVO.java
View file @
5b328081
package
com
.
pcloud
.
book
.
keywords
.
vo
;
package
com
.
pcloud
.
book
.
keywords
.
vo
;
import
java.io.Serializable
;
import
com.pcloud.common.entity.BaseRequestVO
;
import
com.pcloud.common.utils.string.StringUtil
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.ToString
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/24 14:41
* @date 2019/4/24 14:41
*/
*/
public
class
SetKeywordVO
implements
Serializable
{
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@ToString
(
callSuper
=
true
)
public
class
SetKeywordVO
extends
BaseRequestVO
{
private
static
final
long
serialVersionUID
=
969101052142345874L
;
@ApiModelProperty
(
"社群码标识"
)
@ApiModelProperty
(
"社群码标识"
)
private
Long
bookGroupId
;
private
Long
bookGroupId
;
...
@@ -22,6 +30,15 @@ public class SetKeywordVO implements Serializable {
...
@@ -22,6 +30,15 @@ public class SetKeywordVO implements Serializable {
@ApiModelProperty
(
"关键词"
)
@ApiModelProperty
(
"关键词"
)
private
String
keywords
;
private
String
keywords
;
@ApiModelProperty
(
"渠道id"
)
private
Long
channelId
;
@ApiModelProperty
(
"是否仓库词(1:是 0:否)"
)
private
Integer
isWarehouse
;
@ApiModelProperty
(
"仓库词id"
)
private
Long
warehouseId
;
@ApiModelProperty
(
"引导语"
)
@ApiModelProperty
(
"引导语"
)
private
String
guide
;
private
String
guide
;
...
@@ -46,129 +63,17 @@ public class SetKeywordVO implements Serializable {
...
@@ -46,129 +63,17 @@ public class SetKeywordVO implements Serializable {
@ApiModelProperty
(
"链接地址"
)
@ApiModelProperty
(
"链接地址"
)
private
String
linkUrl
;
private
String
linkUrl
;
@ApiModelProperty
(
"类型"
)
private
String
typeCode
;
@ApiModelProperty
(
"描述信息"
)
@ApiModelProperty
(
"描述信息"
)
private
String
description
;
private
String
description
;
public
Long
getBookGroupId
()
{
@ApiModelProperty
(
"是否加入仓库"
)
return
bookGroupId
;
private
Integer
addWarehouse
;
}
public
void
setBookGroupId
(
Long
bookGroupId
)
{
this
.
bookGroupId
=
bookGroupId
;
}
public
Long
getClassifyId
()
{
return
classifyId
;
}
public
void
setClassifyId
(
Long
classifyId
)
{
this
.
classifyId
=
classifyId
;
}
public
Integer
getSetType
()
{
return
setType
;
}
public
void
setSetType
(
Integer
setType
)
{
this
.
setType
=
setType
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
String
getGuide
()
{
return
guide
;
}
public
void
setGuide
(
String
guide
)
{
this
.
guide
=
guide
;
}
public
Integer
getMatchingRule
()
{
return
matchingRule
;
}
public
void
setMatchingRule
(
Integer
matchingRule
)
{
this
.
matchingRule
=
matchingRule
;
}
public
Integer
getReplyType
()
{
return
replyType
;
}
public
void
setReplyType
(
Integer
replyType
)
{
this
.
replyType
=
replyType
;
}
public
Long
getServeId
()
{
return
serveId
;
}
public
void
setServeId
(
Long
serveId
)
{
this
.
serveId
=
serveId
;
}
public
String
getServeType
()
{
return
serveType
;
}
public
void
setServeType
(
String
serveType
)
{
this
.
serveType
=
serveType
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
public
Boolean
check
(
)
{
this
.
content
=
content
;
return
4
==
this
.
getReplyType
()
&&
(
null
==
this
.
getServeId
()
||
StringUtil
.
isBlank
(
this
.
getServeType
()))
;
}
}
public
String
getPicUrl
()
{
return
picUrl
;
}
public
void
setPicUrl
(
String
picUrl
)
{
this
.
picUrl
=
picUrl
;
}
public
String
getLinkUrl
()
{
return
linkUrl
;
}
public
void
setLinkUrl
(
String
linkUrl
)
{
this
.
linkUrl
=
linkUrl
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
@Override
public
String
toString
()
{
return
"SetKeywordVO{"
+
"bookGroupId="
+
bookGroupId
+
", classifyId="
+
classifyId
+
", setType="
+
setType
+
", keywords='"
+
keywords
+
'\''
+
", guide='"
+
guide
+
'\''
+
", matchingRule="
+
matchingRule
+
", replyType="
+
replyType
+
", serveId="
+
serveId
+
", serveType='"
+
serveType
+
'\''
+
", content='"
+
content
+
'\''
+
", picUrl='"
+
picUrl
+
'\''
+
", linkUrl='"
+
linkUrl
+
'\''
+
", description='"
+
description
+
'\''
+
'}'
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/keywords/vo/UpdateKeywordVO.java
View file @
5b328081
...
@@ -3,13 +3,16 @@ package com.pcloud.book.keywords.vo;
...
@@ -3,13 +3,16 @@ package com.pcloud.book.keywords.vo;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
/**
* @author lily
* @author lily
* @date 2019/4/24 14:41
* @date 2019/4/24 14:41
*/
*/
@Data
public
class
UpdateKeywordVO
implements
Serializable
{
public
class
UpdateKeywordVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1437983088879919619L
;
@ApiModelProperty
(
"关键词标识"
)
@ApiModelProperty
(
"关键词标识"
)
private
Long
keywordId
;
private
Long
keywordId
;
...
@@ -19,6 +22,9 @@ public class UpdateKeywordVO implements Serializable {
...
@@ -19,6 +22,9 @@ public class UpdateKeywordVO implements Serializable {
@ApiModelProperty
(
"社群码标识"
)
@ApiModelProperty
(
"社群码标识"
)
private
Long
bookGroupId
;
private
Long
bookGroupId
;
@ApiModelProperty
(
"书刊关键词id"
)
private
Long
bookKeywordId
;
@ApiModelProperty
(
"关键词"
)
@ApiModelProperty
(
"关键词"
)
private
String
keywords
;
private
String
keywords
;
...
@@ -31,6 +37,12 @@ public class UpdateKeywordVO implements Serializable {
...
@@ -31,6 +37,12 @@ public class UpdateKeywordVO implements Serializable {
@ApiModelProperty
(
"回复类型"
)
@ApiModelProperty
(
"回复类型"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"是否仓库词(1:是 0:否)"
)
private
Integer
isWarehouse
;
@ApiModelProperty
(
"仓库词id"
)
private
Long
warehouseId
;
@ApiModelProperty
(
"服务标识"
)
@ApiModelProperty
(
"服务标识"
)
private
Long
serveId
;
private
Long
serveId
;
...
@@ -49,126 +61,7 @@ public class UpdateKeywordVO implements Serializable {
...
@@ -49,126 +61,7 @@ public class UpdateKeywordVO implements Serializable {
@ApiModelProperty
(
"描述信息"
)
@ApiModelProperty
(
"描述信息"
)
private
String
description
;
private
String
description
;
public
Long
getKeywordId
()
{
@ApiModelProperty
(
"是否加入仓库"
)
return
keywordId
;
private
Integer
addWarehouse
;
}
public
void
setKeywordId
(
Long
keywordId
)
{
this
.
keywordId
=
keywordId
;
}
public
Long
getClassifyId
()
{
return
classifyId
;
}
public
void
setClassifyId
(
Long
classifyId
)
{
this
.
classifyId
=
classifyId
;
}
public
Long
getBookGroupId
()
{
return
bookGroupId
;
}
public
void
setBookGroupId
(
Long
bookGroupId
)
{
this
.
bookGroupId
=
bookGroupId
;
}
public
String
getKeywords
()
{
return
keywords
;
}
public
void
setKeywords
(
String
keywords
)
{
this
.
keywords
=
keywords
;
}
public
String
getGuide
()
{
return
guide
;
}
public
void
setGuide
(
String
guide
)
{
this
.
guide
=
guide
;
}
public
Integer
getMatchingRule
()
{
return
matchingRule
;
}
public
void
setMatchingRule
(
Integer
matchingRule
)
{
this
.
matchingRule
=
matchingRule
;
}
public
Integer
getReplyType
()
{
return
replyType
;
}
public
void
setReplyType
(
Integer
replyType
)
{
this
.
replyType
=
replyType
;
}
public
Long
getServeId
()
{
return
serveId
;
}
public
void
setServeId
(
Long
serveId
)
{
this
.
serveId
=
serveId
;
}
public
String
getServeType
()
{
return
serveType
;
}
public
void
setServeType
(
String
serveType
)
{
this
.
serveType
=
serveType
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
public
String
getPicUrl
()
{
return
picUrl
;
}
public
void
setPicUrl
(
String
picUrl
)
{
this
.
picUrl
=
picUrl
;
}
public
String
getLinkUrl
()
{
return
linkUrl
;
}
public
void
setLinkUrl
(
String
linkUrl
)
{
this
.
linkUrl
=
linkUrl
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
@Override
public
String
toString
()
{
return
"UpdateKeywordVO{"
+
"keywordId="
+
keywordId
+
", classifyId="
+
classifyId
+
", bookGroupId="
+
bookGroupId
+
", keywords='"
+
keywords
+
'\''
+
", guide='"
+
guide
+
'\''
+
", matchingRule="
+
matchingRule
+
", replyType="
+
replyType
+
", serveId="
+
serveId
+
", serveType='"
+
serveType
+
'\''
+
", content='"
+
content
+
'\''
+
", picUrl='"
+
picUrl
+
'\''
+
", linkUrl='"
+
linkUrl
+
'\''
+
", description='"
+
description
+
'\''
+
'}'
;
}
}
}
pcloud-service-book/src/main/resources/mapper/book/KeywordUseRecordDao.xml
0 → 100644
View file @
5b328081
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.book.dao.impl.KeywordUseRecordDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.book.entity.KeywordUseRecord"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword_id"
property=
"keywordId"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword_detail_id"
property=
"keywordDetailId"
jdbcType=
"BIGINT"
/>
<result
column=
"adviser_id"
property=
"adviserId"
jdbcType=
"BIGINT"
/>
<result
column=
"use_num"
property=
"useNum"
jdbcType=
"INTEGER"
/>
<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"
/>
<result
column=
"is_delete"
property=
"isDelete"
jdbcType=
"INTEGER"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, keyword_id, keyword_detail_id, adviser_id, use_num, create_user, create_time, update_user, update_time,
is_delete
</sql>
<select
id=
"selectByPrimaryKey"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Integer"
>
select
<include
refid=
"Base_Column_List"
/>
from book_keyword_use_record
where id = #{id,jdbcType=BIGINT}
</select>
<select
id=
"getByAdviserIdAndKeywordId"
resultMap=
"BaseResultMap"
>
select
id, keyword_id, keyword_detail_id, adviser_id, use_num
from book_keyword_use_record
where adviser_id = #{adviserId,jdbcType=BIGINT} and keyword_detail_id = #{keywordDetailId,jdbcType=BIGINT}
</select>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.book.entity.KeywordUseRecord"
>
insert into book_keyword_use_record (id, keyword_id, keyword_detail_id, adviser_id,
use_num, create_user, create_time,
update_user, update_time, is_delete
)
values (#{id,jdbcType=BIGINT}, #{keywordId,jdbcType=BIGINT}, #{keywordDetailId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT},
#{useNum,jdbcType=INTEGER}, #{createUser,jdbcType=BIGINT}, #{createTime,jdbcType=TIMESTAMP},
#{updateUser,jdbcType=BIGINT}, #{updateTime,jdbcType=TIMESTAMP}, #{isDelete,jdbcType=INTEGER}
)
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.pcloud.book.book.entity.KeywordUseRecord"
>
insert into book_keyword_use_record
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
id,
</if>
<if
test=
"keywordId != null"
>
keyword_id,
</if>
<if
test=
"keywordDetailId != null"
>
keyword_detail_id,
</if>
<if
test=
"adviserId != null"
>
adviser_id,
</if>
<if
test=
"useNum != null"
>
use_num,
</if>
<if
test=
"createUser != null"
>
create_user,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
<if
test=
"updateUser != null"
>
update_user,
</if>
<if
test=
"updateTime != null"
>
update_time,
</if>
<if
test=
"isDelete != null"
>
is_delete,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id,jdbcType=BIGINT},
</if>
<if
test=
"keywordId != null"
>
#{keywordId,jdbcType=BIGINT},
</if>
<if
test=
"keywordDetailId != null"
>
#{keywordDetailId,jdbcType=BIGINT},
</if>
<if
test=
"adviserId != null"
>
#{adviserId,jdbcType=BIGINT},
</if>
<if
test=
"useNum != null"
>
#{useNum,jdbcType=INTEGER},
</if>
<if
test=
"createUser != null"
>
#{createUser,jdbcType=BIGINT},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateUser != null"
>
#{updateUser,jdbcType=BIGINT},
</if>
<if
test=
"updateTime != null"
>
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"isDelete != null"
>
#{isDelete,jdbcType=INTEGER},
</if>
</trim>
</insert>
<select
id=
"oftenKeyword"
resultType=
"com.pcloud.book.book.vo.BookKeywordProductVO"
parameterType=
"map"
>
SELECT
a.keyword_id as keywordId,
a.keyword_detail_id as keywordDetailId,
b.description,
b.link_url as linkUrl,
b.pic_url as picUrl,
b.product_id as productId,
b.product_type as productType,
b.type_code as typeCode,
b.content,
c.matching_rule as matchingRule,
a.use_num as useNum,
c.guide
FROM
book_keyword_use_record a
LEFT JOIN book_keyword_warehouse_detail b ON a.keyword_detail_id = b.id
LEFT JOIN book_keyword_warehouse c ON a.keyword_id = c.id
WHERE
b.is_delete = 0
AND a.adviser_id = #{adviserId}
<if
test=
"depthLabelId != null and depthLabelId != '' "
>
and b.depth_label_id = #{depthLabelId}
</if>
order by a.use_num DESC, a.create_time DESC
</select>
<update
id=
"addOne"
>
update book_keyword_use_record set use_num = use_num + 1, update_user = #{adviserId}, update_time = NOW() where id = #{id,jdbcType=BIGINT}
</update>
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"com.pcloud.book.book.entity.KeywordUseRecord"
>
update book_keyword_use_record
<set>
<if
test=
"keywordId != null"
>
keyword_id = #{keywordId,jdbcType=BIGINT},
</if>
<if
test=
"keywordDetailId != null"
>
keyword_detail_id = #{keywordDetailId,jdbcType=BIGINT},
</if>
<if
test=
"adviserId != null"
>
adviser_id = #{adviserId,jdbcType=BIGINT},
</if>
<if
test=
"useNum != null"
>
use_num = #{useNum,jdbcType=INTEGER},
</if>
<if
test=
"createUser != null"
>
create_user = #{createUser,jdbcType=BIGINT},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateUser != null"
>
update_user = #{updateUser,jdbcType=BIGINT},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"isDelete != null"
>
is_delete = #{isDelete,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update
id=
"updateByPrimaryKey"
parameterType=
"com.pcloud.book.book.entity.KeywordUseRecord"
>
update book_keyword_use_record
set keyword_id = #{keywordId,jdbcType=BIGINT},
keyword_detail_id = #{keywordDetailId,jdbcType=BIGINT},
adviser_id = #{adviserId,jdbcType=BIGINT},
use_num = #{useNum,jdbcType=INTEGER},
create_user = #{createUser,jdbcType=BIGINT},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_user = #{updateUser,jdbcType=BIGINT},
update_time = #{updateTime,jdbcType=TIMESTAMP},
is_delete = #{isDelete,jdbcType=INTEGER}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/book/KeywordWarehouseDao.xml
0 → 100644
View file @
5b328081
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.book.dao.impl.KeywordWarehouseDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.book.entity.KeywordWarehouse"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword"
property=
"keyword"
jdbcType=
"VARCHAR"
/>
<result
column=
"guide"
property=
"guide"
jdbcType=
"VARCHAR"
/>
<result
column=
"scope"
property=
"scope"
jdbcType=
"INTEGER"
/>
<result
column=
"matching_rule"
property=
"matchingRule"
jdbcType=
"INTEGER"
/>
<result
column=
"audit_status"
property=
"auditStatus"
jdbcType=
"INTEGER"
/>
<result
column=
"editor_id"
property=
"editorId"
jdbcType=
"INTEGER"
/>
<result
column=
"create_user"
property=
"createUser"
jdbcType=
"INTEGER"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"update_user"
property=
"updateUser"
jdbcType=
"INTEGER"
/>
<result
column=
"update_time"
property=
"updateTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"is_delete"
property=
"isDelete"
jdbcType=
"INTEGER"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, keyword, guide, scope, matching_rule, audit_status, editor_id, create_user, create_time, update_user,
update_time, is_delete
</sql>
<select
id=
"selectByPrimaryKey"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
select
<include
refid=
"Base_Column_List"
/>
from book_keyword_warehouse
where id = #{id,jdbcType=BIGINT}
</select>
<select
id=
"listByIds"
parameterType=
"list"
resultMap=
"BaseResultMap"
>
select id, keyword, guide, scope, matching_rule, audit_status, editor_id from book_keyword_warehouse
where id in
<foreach
collection=
"list"
item=
"item"
separator=
","
open=
"("
close=
")"
>
#{item}
</foreach>
order by id desc
</select>
<select
id=
"listBookKeywordWarehouse"
resultType=
"com.pcloud.book.book.vo.response.BookKeywordResponseVO"
parameterType=
"map"
>
select
a.id, a.keyword, a.guide, a.matching_rule as matchingRule, editor_id as editorId
from book_keyword_warehouse a left join book_keyword_warehouse_detail b on a.id = b.keyword_id
where a.is_delete = 0 and b.is_delete = 0
<if
test=
"keyword != null and keyword != '' "
>
and a.keyword LIKE CONCAT('%', #{keyword},'%')
</if>
<if
test=
"professionalLabelId != null and professionalLabelId != '' "
>
and b.professional_label_id = #{professionalLabelId}
</if>
<if
test=
"depthLabelId != null and depthLabelId != '' "
>
and b.depth_label_id = #{depthLabelId}
</if>
<if
test=
"purposeLabelId != null and purposeLabelId != '' "
>
and b.purpose_label_id = #{purposeLabelId}
</if>
<if
test=
"id != null and id != '' "
>
and a.id = #{id}
</if>
group by a.id
order by a.create_time desc
</select>
<select
id=
"checkKeyword"
resultType=
"com.pcloud.book.book.vo.response.CheckKeywordResponseVO"
>
SELECT
a.keyword_id as keywordId,
a.depth_label_id as depthLabelId,
count(*) AS num
FROM
book_keyword_warehouse_detail a
LEFT JOIN book_keyword_warehouse b ON a.keyword_id = b.id
WHERE
a.is_delete = 0
AND b.is_delete = 0
AND b.keyword = #{keyword}
AND a.depth_label_id IN
<foreach
collection=
"list"
item=
"item"
separator=
","
open=
"("
close=
")"
>
#{item}
</foreach>
</select>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouse"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into book_keyword_warehouse (id, keyword, guide, scope,
matching_rule, audit_status, editor_id,
create_user, create_time, update_user,
update_time, is_delete)
values (#{id,jdbcType=BIGINT}, #{keyword,jdbcType=VARCHAR}, #{guide,jdbcType=VARCHAR}, #{scope,jdbcType=INTEGER},
#{matchingRule,jdbcType=INTEGER}, #{auditStatus,jdbcType=INTEGER}, #{editorId,jdbcType=INTEGER},
#{createUser,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateUser,jdbcType=INTEGER},
#{updateTime,jdbcType=TIMESTAMP}, #{isDelete,jdbcType=INTEGER})
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouse"
>
insert into book_keyword_warehouse
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
id,
</if>
<if
test=
"guide != null"
>
guide,
</if>
<if
test=
"keyword != null"
>
keyword,
</if>
<if
test=
"scope != null"
>
scope,
</if>
<if
test=
"matchingRule != null"
>
matching_rule,
</if>
<if
test=
"auditStatus != null"
>
audit_status,
</if>
<if
test=
"editorId != null"
>
editor_id,
</if>
<if
test=
"createUser != null"
>
create_user,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
<if
test=
"updateUser != null"
>
update_user,
</if>
<if
test=
"updateTime != null"
>
update_time,
</if>
<if
test=
"isDelete != null"
>
is_delete,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id,jdbcType=BIGINT},
</if>
<if
test=
"guide != null"
>
#{guide,jdbcType=VARCHAR},
</if>
<if
test=
"keyword != null"
>
#{keyword,jdbcType=VARCHAR},
</if>
<if
test=
"scope != null"
>
#{scope,jdbcType=INTEGER},
</if>
<if
test=
"matchingRule != null"
>
#{matchingRule,jdbcType=INTEGER},
</if>
<if
test=
"auditStatus != null"
>
#{auditStatus,jdbcType=INTEGER},
</if>
<if
test=
"editorId != null"
>
#{editorId,jdbcType=INTEGER},
</if>
<if
test=
"createUser != null"
>
#{createUser,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateUser != null"
>
#{updateUser,jdbcType=INTEGER},
</if>
<if
test=
"updateTime != null"
>
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"isDelete != null"
>
#{isDelete,jdbcType=INTEGER},
</if>
</trim>
</insert>
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouse"
>
update book_keyword_warehouse
<set
>
<if
test=
"keyword != null"
>
keyword = #{keyword,jdbcType=VARCHAR},
</if>
<if
test=
"scope != null"
>
scope = #{scope,jdbcType=INTEGER},
</if>
<if
test=
"guide != null"
>
guide = #{guide,jdbcType=VARCHAR},
</if>
<if
test=
"matchingRule != null"
>
matching_rule = #{matchingRule,jdbcType=INTEGER},
</if>
<if
test=
"auditStatus != null"
>
audit_status = #{auditStatus,jdbcType=INTEGER},
</if>
<if
test=
"editorId != null"
>
editor_id = #{editorId,jdbcType=INTEGER},
</if>
<if
test=
"createUser != null"
>
create_user = #{createUser,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateUser != null"
>
update_user = #{updateUser,jdbcType=INTEGER},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"isDelete != null"
>
is_delete = #{isDelete,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update
id=
"updateByPrimaryKey"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouse"
>
update book_keyword_warehouse
set keyword = #{keyword,jdbcType=VARCHAR},
scope = #{scope,jdbcType=INTEGER},
guide = #{guide,jdbcType=VARCHAR},
matching_rule = #{matchingRule,jdbcType=INTEGER},
audit_status = #{auditStatus,jdbcType=INTEGER},
editor_id = #{editorId,jdbcType=INTEGER},
create_user = #{createUser,jdbcType=INTEGER},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_user = #{updateUser,jdbcType=INTEGER},
update_time = #{updateTime,jdbcType=TIMESTAMP},
is_delete = #{isDelete,jdbcType=INTEGER}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/book/KeywordWarehouseDetailDao.xml
0 → 100644
View file @
5b328081
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.book.dao.impl.KeywordWarehouseDetailDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.book.entity.KeywordWarehouseDetail"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"keyword_id"
property=
"keywordId"
jdbcType=
"INTEGER"
/>
<result
column=
"professional_label_id"
property=
"professionalLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"depth_label_id"
property=
"depthLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"purpose_label_id"
property=
"purposeLabelId"
jdbcType=
"INTEGER"
/>
<result
column=
"group_id"
property=
"groupId"
jdbcType=
"CHAR"
/>
<result
column=
"product_id"
property=
"productId"
jdbcType=
"INTEGER"
/>
<result
column=
"product_type"
property=
"productType"
jdbcType=
"VARCHAR"
/>
<result
column=
"channel_id"
property=
"channelId"
jdbcType=
"INTEGER"
/>
<result
column=
"type_code"
property=
"typeCode"
jdbcType=
"VARCHAR"
/>
<result
column=
"description"
property=
"description"
jdbcType=
"VARCHAR"
/>
<result
column=
"content"
property=
"content"
jdbcType=
"VARCHAR"
/>
<result
column=
"link_url"
property=
"linkUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"pic_url"
property=
"picUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"use_num"
property=
"useNum"
jdbcType=
"INTEGER"
/>
<result
column=
"create_user"
property=
"createUser"
jdbcType=
"INTEGER"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"update_user"
property=
"updateUser"
jdbcType=
"INTEGER"
/>
<result
column=
"update_time"
property=
"updateTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"is_delete"
property=
"isDelete"
jdbcType=
"INTEGER"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, keyword_id, professional_label_id, depth_label_id, purpose_label_id, group_id, product_id,
product_type, channel_id, type_code, description, content, link_url, pic_url, use_num, create_user, create_time, update_user,
update_time, is_delete
</sql>
<update
id=
"addOne"
>
update book_keyword_warehouse_detail set use_num = use_num + 1, update_user = #{adviserId}, update_time = NOW() where id = #{id,jdbcType=BIGINT}
</update>
<select
id=
"hotKeyword"
parameterType=
"map"
resultType=
"com.pcloud.book.book.vo.BookKeywordProductVO"
>
SELECT
a.keyword_id as keywordId,
a.id as keywordDetailId,
b.guide,
a.description,
a.content,
a.link_url as linkUrl,
a.pic_url as picUrl,
a.product_id as productId,
a.product_type as productType,
a.channel_id as channelId,
a.type_code as typeCode,
b.keyword,
b.matching_rule as matchingRule,
a.use_num as useNum,
b.guide
FROM
book_keyword_warehouse_detail a left join book_keyword_warehouse b
on a.keyword_id = b.id
WHERE
a.is_delete = 0 and b.is_delete = 0
and (b.scope = 0 or b.editor_id = #{adviserId})
<if
test=
"depthLabelId != null and depthLabelId != '' "
>
and a.depth_label_id = #{depthLabelId}
</if>
<if
test=
"keyword != null and keyword != '' "
>
and b.keyword like CONCAT('%', #{keyword},'%')
</if>
ORDER BY
a.use_num DESC, a.create_time DESC
</select>
<update
id=
"deleteDetails"
parameterType=
"long"
>
update book_keyword_warehouse_detail set is_delete = 1 where keyword_id = #{keywordId} and is_delete = 0
</update>
<select
id=
"selectByPrimaryKey"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
select
<include
refid=
"Base_Column_List"
/>
from book_keyword_warehouse_detail
where id = #{id,jdbcType=BIGINT}
</select>
<select
id=
"listByKeywordIds"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from book_keyword_warehouse_detail
where is_delete = 0
and keyword_id in
<foreach
collection=
"list"
item=
"item"
open=
"("
close=
")"
separator=
","
>
#{item}
</foreach>
ORDER BY
id ASC
</select>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouseDetail"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into book_keyword_warehouse_detail (id, keyword_id, professional_label_id,
depth_label_id, purpose_label_id, group_id, product_id, product_type, channel_id, type_code, description,content, link_url, pic_url, use_num,
create_user, create_time, update_user, update_time, is_delete)
values (#{id,jdbcType=BIGINT}, #{keywordId,jdbcType=INTEGER}, #{professionalLabelId,jdbcType=INTEGER},
#{depthLabelId,jdbcType=INTEGER}, #{purposeLabelId,jdbcType=INTEGER}, #{groupId,jdbcType=CHAR},
#{productId,jdbcType=INTEGER},#{productType,jdbcType=VARCHAR}, #{channelId,jdbcType=INTEGER},#{typeCode,jdbcType=VARCHAR},
#{description,jdbcType=VARCHAR},#{content,jdbcType=VARCHAR},
#{linkUrl,jdbcType=VARCHAR}, #{picUrl,jdbcType=VARCHAR}, #{useNum,jdbcType=INTEGER}, #{createUser,jdbcType=INTEGER},
#{createTime,jdbcType=TIMESTAMP}, #{updateUser,jdbcType=INTEGER}, #{updateTime,jdbcType=TIMESTAMP},
#{isDelete,jdbcType=INTEGER})
</insert>
<insert
id=
"batchInsert"
useGeneratedKeys=
"true"
parameterType=
"java.util.List"
>
insert into book_keyword_warehouse_detail (keyword_id, professional_label_id,
depth_label_id, purpose_label_id, group_id, product_id, product_type, channel_id, type_code, description,content, link_url,
pic_url, use_num,
create_user, create_time, update_user, update_time, is_delete)
values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(#{item.keywordId,jdbcType=INTEGER}, #{item.professionalLabelId,jdbcType=INTEGER},
#{item.depthLabelId,jdbcType=INTEGER}, #{item.purposeLabelId,jdbcType=INTEGER},
#{item.groupId,jdbcType=CHAR},
#{item.productId,jdbcType=INTEGER},#{item.productType,jdbcType=VARCHAR}, #{item.channelId,jdbcType=INTEGER},
#{item.typeCode,jdbcType=VARCHAR},#{item.description,jdbcType=VARCHAR},#{item.content,jdbcType=VARCHAR},
#{item.linkUrl,jdbcType=VARCHAR}, #{item.picUrl,jdbcType=VARCHAR},
#{item.useNum,jdbcType=INTEGER}, #{item.createUser,jdbcType=INTEGER},
#{item.createTime,jdbcType=TIMESTAMP}, #{item.updateUser,jdbcType=INTEGER},
#{item.updateTime,jdbcType=TIMESTAMP},
#{item.isDelete,jdbcType=INTEGER})
</foreach>
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouseDetail"
>
insert into book_keyword_warehouse_detail
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
id,
</if>
<if
test=
"keywordId != null"
>
keyword_id,
</if>
<if
test=
"professionalLabelId != null"
>
professional_label_id,
</if>
<if
test=
"depthLabelId != null"
>
depth_label_id,
</if>
<if
test=
"purposeLabelId != null"
>
purpose_label_id,
</if>
<if
test=
"groupId != null"
>
group_id,
</if>
<if
test=
"productId != null"
>
product_id,
</if>
<if
test=
"productType != null"
>
product_type,
</if>
<if
test=
"channelId != null"
>
channel_id,
</if>
<if
test=
"typeCode != null"
>
type_code,
</if>
<if
test=
"content != null"
>
content,
</if>
<if
test=
"useNum != null"
>
use_num,
</if>
<if
test=
"createUser != null"
>
create_user,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
<if
test=
"updateUser != null"
>
update_user,
</if>
<if
test=
"updateTime != null"
>
update_time,
</if>
<if
test=
"isDelete != null"
>
is_delete,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id,jdbcType=BIGINT},
</if>
<if
test=
"keywordId != null"
>
#{keywordId,jdbcType=INTEGER},
</if>
<if
test=
"professionalLabelId != null"
>
#{professionalLabelId,jdbcType=INTEGER},
</if>
<if
test=
"depthLabelId != null"
>
#{depthLabelId,jdbcType=INTEGER},
</if>
<if
test=
"purposeLabelId != null"
>
#{purposeLabelId,jdbcType=INTEGER},
</if>
<if
test=
"groupId != null"
>
#{groupId,jdbcType=CHAR},
</if>
<if
test=
"productId != null"
>
#{productId,jdbcType=INTEGER},
</if>
<if
test=
"productType != null"
>
#{productType,jdbcType=VARCHAR},
</if>
<if
test=
"channelId != null"
>
#{channelId,jdbcType=INTEGER},
</if>
<if
test=
"typeCode != null"
>
#{typeCode,jdbcType=VARCHAR},
</if>
<if
test=
"content != null"
>
#{content,jdbcType=VARCHAR},
</if>
<if
test=
"useNum != null"
>
#{useNum,jdbcType=INTEGER},
</if>
<if
test=
"createUser != null"
>
#{createUser,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateUser != null"
>
#{updateUser,jdbcType=INTEGER},
</if>
<if
test=
"updateTime != null"
>
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"isDelete != null"
>
#{isDelete,jdbcType=INTEGER},
</if>
</trim>
</insert>
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouseDetail"
>
update book_keyword_warehouse_detail
<set>
<if
test=
"keywordId != null"
>
keyword_id = #{keywordId,jdbcType=INTEGER},
</if>
<if
test=
"professionalLabelId != null"
>
professional_label_id = #{professionalLabelId,jdbcType=INTEGER},
</if>
<if
test=
"depthLabelId != null"
>
depth_label_id = #{depthLabelId,jdbcType=INTEGER},
</if>
<if
test=
"purposeLabelId != null"
>
purpose_label_id = #{purposeLabelId,jdbcType=INTEGER},
</if>
<if
test=
"groupId != null"
>
group_id = #{groupId,jdbcType=CHAR},
</if>
<if
test=
"productId != null"
>
product_id = #{productId,jdbcType=INTEGER},
</if>
<if
test=
"productType != null"
>
product_type = #{productType,jdbcType=VARCHAR},
</if>
<if
test=
"channelId != null"
>
channel_id = #{channelId,jdbcType=INTEGER},
</if>
<if
test=
"typeCode != null"
>
type_code = #{typeCode,jdbcType=VARCHAR},
</if>
<if
test=
"content != null"
>
content = #{content,jdbcType=VARCHAR},
</if>
<if
test=
"useNum != null"
>
use_num = #{useNum,jdbcType=INTEGER},
</if>
<if
test=
"createUser != null"
>
create_user = #{createUser,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"updateUser != null"
>
update_user = #{updateUser,jdbcType=INTEGER},
</if>
<if
test=
"updateTime != null"
>
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if
test=
"isDelete != null"
>
is_delete = #{isDelete,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update
id=
"updateByPrimaryKey"
parameterType=
"com.pcloud.book.book.entity.KeywordWarehouseDetail"
>
update book_keyword_warehouse_detail
set keyword_id = #{keywordId,jdbcType=INTEGER},
professional_label_id = #{professionalLabelId,jdbcType=INTEGER},
depth_label_id = #{depthLabelId,jdbcType=INTEGER},
purpose_label_id = #{purposeLabelId,jdbcType=INTEGER},
group_id = #{groupId,jdbcType=CHAR},
product_id = #{productId,jdbcType=INTEGER},
product_type = #{productType,jdbcType=VARCHAR},
channel_id = #{channelId,jdbcType=INTEGER},
content = #{content,jdbcType=VARCHAR},
type_code = #{typeCode,jdbcType=VARCHAR},
use_num = #{useNum,jdbcType=INTEGER},
create_user = #{createUser,jdbcType=INTEGER},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_user = #{updateUser,jdbcType=INTEGER},
update_time = #{updateTime,jdbcType=TIMESTAMP},
is_delete = #{isDelete,jdbcType=INTEGER}
where id = #{id,jdbcType=BIGINT}
</update>
</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