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
b90b9f47
Commit
b90b9f47
authored
Jul 28, 2021
by
李传峰
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'remotes/origin/master' into 3.x
parents
11970aed
a6127327
Show whitespace changes
Inline
Side-by-side
Showing
40 changed files
with
1277 additions
and
56 deletions
+1277
-56
GroupActivity4AppletDTO.java
...a/com/pcloud/book/applet/dto/GroupActivity4AppletDTO.java
+6
-0
AviserBookInfoParam.java
...in/java/com/pcloud/book/book/dto/AviserBookInfoParam.java
+20
-0
BookDto.java
...-book/src/main/java/com/pcloud/book/book/dto/BookDto.java
+26
-0
ProjectRelateVO.java
...c/main/java/com/pcloud/book/book/dto/ProjectRelateVO.java
+14
-0
ProjectUploaderDTO.java
...ain/java/com/pcloud/book/book/dto/ProjectUploaderDTO.java
+28
-0
Book.java
...-book/src/main/java/com/pcloud/book/book/entity/Book.java
+26
-2
BookService.java
...c/main/java/com/pcloud/book/book/service/BookService.java
+7
-0
NotifyItemDTO.java
...ain/java/com/pcloud/book/cultivate/dto/NotifyItemDTO.java
+43
-0
NotifySendDTO.java
...ain/java/com/pcloud/book/cultivate/dto/NotifySendDTO.java
+33
-0
CultivateNotifyService.java
...pcloud/book/cultivate/service/CultivateNotifyService.java
+6
-0
AppletRecordAggrStatisBiz.java
...com/pcloud/book/applet/biz/AppletRecordAggrStatisBiz.java
+8
-0
AppletRecordAggrStatisBizImpl.java
...d/book/applet/biz/impl/AppletRecordAggrStatisBizImpl.java
+169
-5
AppletRecordSevenDayDao.java
...a/com/pcloud/book/applet/dao/AppletRecordSevenDayDao.java
+2
-1
AppletRecordSevenDayDaoImpl.java
...oud/book/applet/dao/impl/AppletRecordSevenDayDaoImpl.java
+2
-1
AppletRecordDTO.java
...main/java/com/pcloud/book/applet/dto/AppletRecordDTO.java
+18
-0
BookBiz.java
...-book/src/main/java/com/pcloud/book/book/biz/BookBiz.java
+14
-1
BookBizImpl.java
.../main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
+80
-3
BookFacadeImpl.java
...java/com/pcloud/book/book/facade/impl/BookFacadeImpl.java
+10
-2
BookServiceImpl.java
...va/com/pcloud/book/book/service/impl/BookServiceImpl.java
+8
-0
BookSet.java
...-book/src/main/java/com/pcloud/book/book/set/BookSet.java
+25
-0
BookQrcodeWxworkResponseVO.java
...oud/book/book/vo/response/BookQrcodeWxworkResponseVO.java
+4
-0
ErpConsr.java
.../src/main/java/com/pcloud/book/consumer/erp/ErpConsr.java
+52
-0
CultivateNotifyBiz.java
...ava/com/pcloud/book/cultivate/biz/CultivateNotifyBiz.java
+3
-0
CultivateNotifyBizImpl.java
...cloud/book/cultivate/biz/impl/CultivateNotifyBizImpl.java
+35
-0
CultivateNotifyServiceImpl.java
...ok/cultivate/service/impl/CultivateNotifyServiceImpl.java
+8
-0
ResourcePageBiz.java
.../main/java/com/pcloud/book/group/biz/ResourcePageBiz.java
+33
-0
ResourcePageBizImpl.java
...a/com/pcloud/book/group/biz/impl/ResourcePageBizImpl.java
+155
-36
ResourcePageConstants.java
...com/pcloud/book/group/constant/ResourcePageConstants.java
+51
-0
ResourceRecomManageDao.java
...ava/com/pcloud/book/group/dao/ResourceRecomManageDao.java
+23
-0
ResourceRecomManageDaoImpl.java
...cloud/book/group/dao/impl/ResourceRecomManageDaoImpl.java
+41
-0
BookGroupDTO.java
...src/main/java/com/pcloud/book/group/dto/BookGroupDTO.java
+13
-0
ResourcePageCourseDTO.java
...java/com/pcloud/book/group/dto/ResourcePageCourseDTO.java
+16
-0
ResourceRecomManage.java
...ava/com/pcloud/book/group/entity/ResourceRecomManage.java
+55
-0
ResourcePageFacade.java
...com/pcloud/book/group/facade/impl/ResourcePageFacade.java
+33
-0
PcloudGroupActivityBizImpl.java
...cloud/book/skill/biz/impl/PcloudGroupActivityBizImpl.java
+5
-0
AppletRecordSevenDayDao.xml
.../main/resources/mapper/applet/AppletRecordSevenDayDao.xml
+42
-2
Book.Mapper.xml
...rvice-book/src/main/resources/mapper/book/Book.Mapper.xml
+1
-1
CultivateNotifySend.xml
...c/main/resources/mapper/cultivate/CultivateNotifySend.xml
+26
-0
ResourcePageCourseDao.xml
...src/main/resources/mapper/group/ResourcePageCourseDao.xml
+39
-2
ResourceRecomManageDao.xml
...rc/main/resources/mapper/group/ResourceRecomManageDao.xml
+97
-0
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/applet/dto/GroupActivity4AppletDTO.java
View file @
b90b9f47
...
...
@@ -90,4 +90,10 @@ public class GroupActivity4AppletDTO implements Serializable {
@ApiModelProperty
(
"描述"
)
private
String
groupDesc
;
@ApiModelProperty
(
"群分类"
)
private
Long
firstClassify
;
@ApiModelProperty
(
"群分类"
)
private
String
firstClassifyName
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/AviserBookInfoParam.java
View file @
b90b9f47
...
...
@@ -15,6 +15,26 @@ public class AviserBookInfoParam implements Serializable {
private
List
<
Long
>
adviserIds
;
private
Integer
currentPage
;
private
Integer
numPerPage
;
public
Integer
getCurrentPage
()
{
return
currentPage
;
}
public
void
setCurrentPage
(
Integer
currentPage
)
{
this
.
currentPage
=
currentPage
;
}
public
Integer
getNumPerPage
()
{
return
numPerPage
;
}
public
void
setNumPerPage
(
Integer
numPerPage
)
{
this
.
numPerPage
=
numPerPage
;
}
public
List
<
Long
>
getBookIds
()
{
return
bookIds
;
}
...
...
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/BookDto.java
View file @
b90b9f47
...
...
@@ -820,9 +820,35 @@ public class BookDto extends BaseDto {
*/
private
List
<
String
>
erpNumbers
;
/**
* 创建人(ERP运维人员)
*/
private
Integer
uploadUserId
;
/**
* 创建人名称(ERP运维人员)
*/
private
String
uploadUserName
;
//是否开启手机号登录
private
Integer
bookPhoneAuth
;
public
Integer
getUploadUserId
()
{
return
uploadUserId
;
}
public
void
setUploadUserId
(
Integer
uploadUserId
)
{
this
.
uploadUserId
=
uploadUserId
;
}
public
String
getUploadUserName
()
{
return
uploadUserName
;
}
public
void
setUploadUserName
(
String
uploadUserName
)
{
this
.
uploadUserName
=
uploadUserName
;
}
public
Integer
getBookPhoneAuth
()
{
return
bookPhoneAuth
;
}
...
...
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/ProjectRelateVO.java
View file @
b90b9f47
package
com
.
pcloud
.
book
.
book
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ProjectRelateVO
{
private
Long
orderSheetId
;
private
Long
projectId
;
private
Long
raysBookId
;
...
...
@@ -13,4 +18,13 @@ public class ProjectRelateVO {
private
Long
raysChannelId
;
private
String
coverImg
;
private
Integer
uploadUserId
;
private
String
serveType
;
@ApiModelProperty
(
"bookId/sceneId"
)
private
List
<
Long
>
serveIds
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/ProjectUploaderDTO.java
0 → 100644
View file @
b90b9f47
package
com
.
pcloud
.
book
.
book
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
ProjectUploaderDTO
{
private
Integer
id
;
private
Long
projectId
;
private
Integer
uploadUserId
;
private
String
uploadUserName
;
@ApiModelProperty
(
"服务类型-BOOK/QRCODE"
)
private
String
serveType
;
@ApiModelProperty
(
"bookId/qrcodeSceneId"
)
private
Long
serveId
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/book/entity/Book.java
View file @
b90b9f47
...
...
@@ -5,8 +5,6 @@ package com.pcloud.book.book.entity;
import
com.pcloud.common.entity.BaseEntity
;
import
java.util.List
;
/**
* @描述:书籍实体
* @作者:songx
...
...
@@ -274,10 +272,36 @@ public class Book extends BaseEntity {
private
String
erpNumber
;
/**
* ERP-运维人员
*/
private
Integer
uploadUserId
;
/**
* 类型
*/
private
String
serveType
;
/**
* 强制更新
*/
private
Integer
forceUpdateSerialNumber
;
public
String
getServeType
()
{
return
serveType
;
}
public
void
setServeType
(
String
serveType
)
{
this
.
serveType
=
serveType
;
}
public
Integer
getUploadUserId
()
{
return
uploadUserId
;
}
public
void
setUploadUserId
(
Integer
uploadUserId
)
{
this
.
uploadUserId
=
uploadUserId
;
}
public
Long
getThirdTempletId
()
{
return
thirdTempletId
;
}
...
...
pcloud-facade-book/src/main/java/com/pcloud/book/book/service/BookService.java
View file @
b90b9f47
...
...
@@ -3,6 +3,7 @@
*/
package
com
.
pcloud
.
book
.
book
.
service
;
import
com.pcloud.book.book.dto.AviserBookInfoParam
;
import
com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO
;
import
com.pcloud.book.book.dto.BookDetialDTO
;
import
com.pcloud.book.book.dto.BookDto
;
...
...
@@ -12,6 +13,8 @@ import com.pcloud.book.book.dto.BookInfoAndAuthStatusDTO;
import
com.pcloud.book.book.dto.BookMinimumSupportDTO4Service
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.page.PageBean
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
...
...
@@ -306,4 +309,8 @@ public interface BookService {
@GetMapping
(
"getWxworkGroupQrcodeIdsExceptBook"
)
ResponseEntity
<
ResponseDto
<
List
<
Long
>>>
getWxworkGroupQrcodeIdsExceptBook
(
@RequestParam
(
value
=
"sceneId"
,
required
=
false
)
Long
sceneId
,
@RequestParam
(
value
=
"bookGroupId"
,
required
=
false
)
Long
bookGroupId
);
@ApiOperation
(
"编辑图书列表"
)
@PostMapping
(
"listAdviserBook"
)
ResponseEntity
<
ResponseDto
<
PageBean
>>
listAdviserBook
(
@RequestBody
AviserBookInfoParam
aviserBookInfoParam
);
}
pcloud-facade-book/src/main/java/com/pcloud/book/cultivate/dto/NotifyItemDTO.java
0 → 100644
View file @
b90b9f47
package
com
.
pcloud
.
book
.
cultivate
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @ClassName com.pcloud.book.cultivate.dto.NotifyItemDTO
* @Author zhuyajie
* @Description 消息详情
* @Date 2021/7/14 14:40
* @Version 1.0
**/
@Data
public
class
NotifyItemDTO
{
@ApiModelProperty
(
"发送内容(1-文本,2-图片,3-音频, 4-链接,5 问题)"
)
private
Integer
contentType
;
@ApiModelProperty
(
"文字内容"
)
private
String
content
;
@ApiModelProperty
(
"图片地址"
)
private
String
picUrl
;
@ApiModelProperty
(
"音频资源id"
)
private
Long
resourceId
;
@ApiModelProperty
(
"跳转类型 1指定页面, 2web页面, 3资讯, 4应用作品"
)
private
Integer
jumpType
;
@ApiModelProperty
(
"跳转地址"
)
private
String
jumpUrl
;
@ApiModelProperty
(
"作品/应用/咨询的ID"
)
private
Long
serveId
;
@ApiModelProperty
(
"作品5/应用6/咨询的类型1"
)
private
Integer
serveType
;
@ApiModelProperty
(
"JSON格式的额外信息"
)
private
String
extJson
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/cultivate/dto/NotifySendDTO.java
0 → 100644
View file @
b90b9f47
package
com
.
pcloud
.
book
.
cultivate
.
dto
;
import
java.util.List
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @ClassName com.pcloud.book.cultivate.dto.NotifySendDTO
* @Author zhuyajie
* @Description 小程序消息发送
* @Date 2021/7/14 14:39
* @Version 1.0
**/
@Data
public
class
NotifySendDTO
{
@ApiModelProperty
(
"用户微信id"
)
private
Long
wechatUserId
;
@ApiModelProperty
(
"发送类型(1-指定用户,2-分类用户,3-按书籍查询,4-全局公告消息)"
)
private
Integer
sendType
;
@ApiModelProperty
(
"消息类型(1-系统消息,2-通知消息,3-提醒消息,4-活动消息 5-更多消息)"
)
private
Integer
messageType
;
@ApiModelProperty
(
"标题"
)
private
String
title
;
@ApiModelProperty
(
"消息详情"
)
private
List
<
NotifyItemDTO
>
notifyItemDTOS
;
}
pcloud-facade-book/src/main/java/com/pcloud/book/cultivate/service/CultivateNotifyService.java
View file @
b90b9f47
...
...
@@ -3,6 +3,7 @@ package com.pcloud.book.cultivate.service;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.dto.BookAuthTotalCountDTO
;
import
com.pcloud.book.copyright.dto.CheckUserAuthDTO
;
import
com.pcloud.book.cultivate.dto.NotifySendDTO
;
import
com.pcloud.book.cultivate.entity.AppletNotifySendDTO
;
import
com.pcloud.book.cultivate.entity.CultivateNotifySend
;
import
com.pcloud.common.dto.ResponseDto
;
...
...
@@ -10,6 +11,7 @@ import com.pcloud.common.exceptions.BizException;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
...
@@ -47,4 +49,8 @@ public interface CultivateNotifyService {
@RequestMapping
(
value
=
"createNotify4App"
,
method
=
RequestMethod
.
POST
)
ResponseEntity
<
ResponseDto
<
Long
>>
createNotify4App
(
@RequestBody
AppletNotifySendDTO
newSendDTO
)
throws
BizException
;
@ApiOperation
(
"发小程序消息"
)
@PostMapping
(
"sendNotifyToUser"
)
ResponseEntity
<
ResponseDto
<
Long
>>
sendNotifyToUser
(
@RequestBody
NotifySendDTO
notifySendDTO
);
}
pcloud-service-book/src/main/java/com/pcloud/book/applet/biz/AppletRecordAggrStatisBiz.java
View file @
b90b9f47
...
...
@@ -37,4 +37,12 @@ public interface AppletRecordAggrStatisBiz {
* * @param null
*/
PageBeanNew
getResource4H5
(
Long
wechatUserId
,
Long
officialAccountsId
,
String
keyword
,
Integer
sourceType
,
Integer
currentPage
,
Integer
numPerPage
);
/**
* 平台端资源推荐
* @author:zhuyajie
* @date:2021/7/9 16:17
* * @param null
*/
PageBeanNew
getResource4H54Pcloud
(
Integer
currentPage
,
Integer
numPerPage
,
String
query
,
Integer
sourceFrom
);
}
pcloud-service-book/src/main/java/com/pcloud/book/applet/biz/impl/AppletRecordAggrStatisBizImpl.java
View file @
b90b9f47
...
...
@@ -2,12 +2,14 @@ package com.pcloud.book.applet.biz.impl;
import
com.google.common.collect.Lists
;
import
com.pcloud.appcenter.app.dto.AppDto
;
import
com.pcloud.book.applet.biz.AppletRecordAggrStatisBiz
;
import
com.pcloud.book.applet.biz.AppletRecordBiz
;
import
com.pcloud.book.applet.biz.ServeCollectBiz
;
import
com.pcloud.book.applet.contants.AppletConstants
;
import
com.pcloud.book.applet.dao.AppletRecordDao
;
import
com.pcloud.book.applet.dao.AppletRecordSevenDayDao
;
import
com.pcloud.book.applet.dto.AppletAppOrProductDTO
;
import
com.pcloud.book.applet.dto.AppletRecordDTO
;
import
com.pcloud.book.applet.entity.AppletRecord
;
import
com.pcloud.book.applet.entity.AppletRecordSevenDay
;
...
...
@@ -16,15 +18,21 @@ import com.pcloud.book.applet.enums.AppletRankTypeEnum;
import
com.pcloud.book.applet.enums.AppletRecordTypeEnum
;
import
com.pcloud.book.applet.enums.AppletSourceTypeEnum
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.consumer.app.AppConsr
;
import
com.pcloud.book.consumer.label.LabelConsr
;
import
com.pcloud.book.consumer.reader.ReaderConsr
;
import
com.pcloud.book.consumer.resource.ProductConsr
;
import
com.pcloud.book.consumer.user.AdviserConsr
;
import
com.pcloud.book.consumer.user.MerchantConsr
;
import
com.pcloud.book.group.biz.ResourcePageBiz
;
import
com.pcloud.book.group.constant.ResourcePageConstants
;
import
com.pcloud.book.group.dao.WeworkTeacherFriendRecordDao
;
import
com.pcloud.book.group.entity.ResourceRecomManage
;
import
com.pcloud.book.mapper.clickhouse.AppletRecordCHMapper
;
import
com.pcloud.book.util.common.YesOrNoEnums
;
import
com.pcloud.book.util.properties.BookProps
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.utils.BeanUtils
;
import
com.pcloud.common.utils.DateUtils
;
import
com.pcloud.common.utils.ListUtils
;
...
...
@@ -32,6 +40,8 @@ import com.pcloud.common.utils.cache.redis.JedisClusterUtils;
import
com.pcloud.common.utils.string.StringUtil
;
import
com.pcloud.readercenter.common.enums.YesOrNoNumEnum
;
import
com.pcloud.readercenter.userlabel.dto.UserGradeLabelIdDTO
;
import
com.pcloud.resourcecenter.product.dto.ProductDto
;
import
com.pcloud.resourcecenter.product.dto.ProductLabelDto
;
import
org.apache.commons.collections.MapUtils
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -71,13 +81,21 @@ public class AppletRecordAggrStatisBizImpl implements AppletRecordAggrStatisBiz
@Autowired
private
ServeCollectBiz
serveCollectBiz
;
@Autowired
private
ResourcePageBiz
resourcePageBiz
;
@Autowired
private
AppletRecordSevenDayDao
appletRecordSevenDayDao
;
@Autowired
private
ReaderConsr
readerConsr
;
@Autowired
private
LabelConsr
labelConsr
;
@Autowired
private
ProductConsr
productConsr
;
@Autowired
private
AppConsr
appConsr
;
@Autowired
private
AdviserConsr
adviserConsr
;
@Autowired
private
MerchantConsr
merchantConsr
;
@Autowired
private
ResourcePageBiz
resourcePageBiz
;
@Override
public
PageBeanNew
getAggrStatis
(
Long
wechatUserId
,
String
keyword
,
Integer
sourceType
,
Integer
rankType
,
Integer
currentPage
,
Integer
numPerPage
)
{
...
...
@@ -351,13 +369,23 @@ public class AppletRecordAggrStatisBizImpl implements AppletRecordAggrStatisBiz
@Override
public
PageBeanNew
getResource4H5
(
Long
wechatUserId
,
Long
officialAccountsId
,
String
keyword
,
Integer
sourceType
,
Integer
currentPage
,
Integer
numPerPage
)
{
if
(
null
==
sourceType
&&
StringUtil
.
isEmpty
(
keyword
)
)
{
if
(
null
==
sourceType
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"缺少参数"
);
}
//最多查询50个
Integer
maxCount
=
50
;
List
<
AppletRecordDTO
>
countList
;
Boolean
isDefaultList
;
//默认列表还是关键词实时搜索
Integer
sourceFrom
;
//来源 育儿/教辅
if
(
ResourcePageConstants
.
ResourceSourceTypeEnum
.
CHILD
.
getCode
().
equals
(
sourceType
))
{
//育儿宝库
sourceFrom
=
ResourcePageConstants
.
RecommendResourceFromEnum
.
CHILD_RESOURCE
.
getCode
();
}
else
{
//教辅资料
sourceFrom
=
ResourcePageConstants
.
RecommendResourceFromEnum
.
TEACHE_RESOURCE
.
getCode
();
}
if
(
StringUtils
.
isNotEmpty
(
keyword
))
{
isDefaultList
=
false
;
//关键词搜索
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"sourceKeywords"
,
Arrays
.
asList
(
keyword
));
...
...
@@ -367,7 +395,8 @@ public class AppletRecordAggrStatisBizImpl implements AppletRecordAggrStatisBiz
countList
=
appletRecordCHMapper
.
getAggrStatis4H5
(
paramMap
);
}
else
{
//无关键词-根据学龄段搜索,序优先匹配同年级的资源
isDefaultList
=
true
;
//无关键词-根据学龄段搜索,优先匹配同年级的资源
UserGradeLabelIdDTO
userGradeLabelIdDTO
=
readerConsr
.
getUserGrade
(
wechatUserId
,
officialAccountsId
);
//学龄段标签, 年级标签
Long
parentLabel
=
1L
;
...
...
@@ -385,13 +414,14 @@ public class AppletRecordAggrStatisBizImpl implements AppletRecordAggrStatisBiz
gradeLabelIds
.
remove
(
gradeLabelId
);
}
orderFieldIds
.
addAll
(
gradeLabelIds
);
countList
=
appletRecordSevenDayDao
.
getResourceByGrade4H5
(
sourceType
,
orderFieldIds
,
maxCount
);
countList
=
appletRecordSevenDayDao
.
getResourceByGrade4H5
(
sourceType
,
orderFieldIds
,
maxCount
,
sourceFrom
);
}
if
(
ListUtils
.
isEmpty
(
countList
))
{
return
new
PageBeanNew
(
currentPage
,
numPerPage
,
0
,
Lists
.
newArrayList
());
}
appletRecordBiz
.
fillAppletRecord
(
countList
,
YesOrNoNumEnum
.
NO
.
getValue
());
countList
=
countList
.
stream
().
filter
(
x
->
x
.
getSourceDelete
()
==
0
).
collect
(
Collectors
.
toList
());
dealServeNamePic
(
countList
,
isDefaultList
,
sourceFrom
);
if
(
ListUtils
.
isEmpty
(
countList
))
{
return
new
PageBeanNew
(
currentPage
,
numPerPage
,
0
,
Lists
.
newArrayList
());
}
...
...
@@ -401,6 +431,140 @@ public class AppletRecordAggrStatisBizImpl implements AppletRecordAggrStatisBiz
return
pageBeanNew
;
}
/**
* 处理平台端替换的资源名称封面
* @author:zhuyajie
* @date:2021/7/9 17:28
* * @param null
*/
private
void
dealServeNamePic
(
List
<
AppletRecordDTO
>
recordDTOS
,
Boolean
isDefaultList
,
Integer
sourceFrom
)
{
if
(
ListUtils
.
isEmpty
(
recordDTOS
))
{
return
;
}
if
(
isDefaultList
)
{
//默认列表
for
(
AppletRecordDTO
appletRecordDTO:
recordDTOS
){
AppletAppOrProductDTO
appletAppOrProductDTO
=
appletRecordDTO
.
getAppletAppOrProductDTO
();
if
(!
StringUtil
.
isEmpty
(
appletRecordDTO
.
getFromName
()))
{
appletAppOrProductDTO
.
setServeName
(
appletRecordDTO
.
getFromName
());
}
if
(!
StringUtil
.
isEmpty
(
appletRecordDTO
.
getServePic
()))
{
appletAppOrProductDTO
.
setServePic
(
appletRecordDTO
.
getServePic
());
}
}
}
else
{
List
<
AppletRecordDTO
>
deleteList
=
new
ArrayList
<>();
//关键词搜索
List
<
Long
>
appIds
=
recordDTOS
.
stream
().
filter
(
s
->
s
.
getRecordType
().
equals
(
6
)).
map
(
AppletRecordDTO:
:
getFromId
).
collect
(
Collectors
.
toList
());
List
<
Long
>
productIds
=
recordDTOS
.
stream
().
filter
(
s
->
s
.
getRecordType
().
equals
(
5
)).
map
(
AppletRecordDTO:
:
getFromId
).
collect
(
Collectors
.
toList
());
Map
<
Long
,
ResourceRecomManage
>
appMap
=
resourcePageBiz
.
mapResourceRecomManage
(
appIds
,
"APP"
,
sourceFrom
);
Map
<
Long
,
ResourceRecomManage
>
productMap
=
resourcePageBiz
.
mapResourceRecomManage
(
productIds
,
"PRODUCT"
,
sourceFrom
);
if
(!
MapUtils
.
isEmpty
(
appMap
)
||
!
MapUtils
.
isEmpty
(
productMap
))
{
for
(
AppletRecordDTO
appletRecordDTO:
recordDTOS
){
Long
fromId
=
appletRecordDTO
.
getFromId
();
AppletAppOrProductDTO
appletAppOrProductDTO
=
appletRecordDTO
.
getAppletAppOrProductDTO
();
if
(
appletRecordDTO
.
getRecordType
().
equals
(
6
)
&&
!
MapUtils
.
isEmpty
(
appMap
)
&&
appMap
.
containsKey
(
fromId
))
{
ResourceRecomManage
resourceRecomManage
=
appMap
.
get
(
fromId
);
replaceServe
(
resourceRecomManage
,
appletAppOrProductDTO
,
deleteList
,
appletRecordDTO
);
}
else
if
(
appletRecordDTO
.
getRecordType
().
equals
(
5
)
&&
!
MapUtils
.
isEmpty
(
productMap
)
&&
productMap
.
containsKey
(
fromId
))
{
ResourceRecomManage
resourceRecomManage
=
productMap
.
get
(
fromId
);
replaceServe
(
resourceRecomManage
,
appletAppOrProductDTO
,
deleteList
,
appletRecordDTO
);
}
}
}
if
(!
ListUtils
.
isEmpty
(
deleteList
))
{
recordDTOS
.
removeAll
(
deleteList
);
}
}
}
private
void
replaceServe
(
ResourceRecomManage
resourceRecomManage
,
AppletAppOrProductDTO
appletAppOrProductDTO
,
List
<
AppletRecordDTO
>
deleteList
,
AppletRecordDTO
appletRecordDTO
)
{
if
(
null
==
resourceRecomManage
)
{
return
;
}
if
(
resourceRecomManage
.
getShowState
()
==
0
)
{
deleteList
.
add
(
appletRecordDTO
);
}
else
{
if
(!
StringUtil
.
isEmpty
(
resourceRecomManage
.
getCoverImg
()))
{
appletAppOrProductDTO
.
setServePic
(
resourceRecomManage
.
getCoverImg
());
}
if
(!
StringUtil
.
isEmpty
(
resourceRecomManage
.
getServeName
()))
{
appletAppOrProductDTO
.
setServeName
(
resourceRecomManage
.
getServeName
());
appletRecordDTO
.
setFromName
(
resourceRecomManage
.
getServeName
());
}
}
}
@Override
public
PageBeanNew
getResource4H54Pcloud
(
Integer
currentPage
,
Integer
numPerPage
,
String
query
,
Integer
sourceFrom
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"sourceTypeList"
,
ResourcePageConstants
.
RecommendResourceFromEnum
.
getSourceTypesByCode
(
sourceFrom
));
map
.
put
(
"sourceFrom"
,
sourceFrom
);
map
.
put
(
"query"
,
query
);
PageBeanNew
<
AppletRecordDTO
>
pageBeanNew
=
appletRecordSevenDayDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"getList4Pcloud"
);
fillResource4Pcloud
(
pageBeanNew
.
getRecordList
());
return
pageBeanNew
;
}
/**
* 填充应用作品信息
* @author:zhuyajie
* @date:2021/7/9 17:09
* * @param null
*/
private
void
fillResource4Pcloud
(
List
<
AppletRecordDTO
>
recordList
)
{
if
(
ListUtils
.
isEmpty
(
recordList
))
{
return
;
}
List
<
Long
>
productIds
=
recordList
.
stream
().
filter
(
appletRecordDTO
->
AppletRecordTypeEnum
.
PRODUCT
.
value
.
equals
(
appletRecordDTO
.
getRecordType
())).
map
(
AppletRecordDTO:
:
getFromId
).
distinct
().
collect
(
Collectors
.
toList
());
List
<
Long
>
appIds
=
recordList
.
stream
().
filter
(
appletRecordDTO
->
AppletRecordTypeEnum
.
APP
.
value
.
equals
(
appletRecordDTO
.
getRecordType
())).
map
(
AppletRecordDTO:
:
getFromId
).
distinct
().
collect
(
Collectors
.
toList
());
//应用作品创建人
Map
<
Long
,
AppDto
>
appDtoMap
=
appConsr
.
mapBaseByIds
(
appIds
);
List
<
Long
>
adviserIds
=
MapUtils
.
isEmpty
(
appDtoMap
)?
new
ArrayList
<>():
appDtoMap
.
values
().
stream
().
map
(
AppDto:
:
getCreatedUser
).
distinct
().
collect
(
Collectors
.
toList
());
Map
<
Long
,
String
>
adviserMap
=
adviserConsr
.
getNames
(
adviserIds
);
Map
<
Long
,
ProductDto
>
productDtoMap
=
productConsr
.
getProBasesByIds
(
productIds
);
List
<
Long
>
merchantIds
=
MapUtils
.
isEmpty
(
productDtoMap
)?
new
ArrayList
<>():
productDtoMap
.
values
().
stream
().
map
(
ProductDto:
:
getCreatedUser
).
distinct
().
collect
(
Collectors
.
toList
());
Map
<
Long
,
String
>
merchantMap
=
merchantConsr
.
getNamesByIdList
(
merchantIds
);
for
(
AppletRecordDTO
recordDTO
:
recordList
)
{
Long
fromId
=
recordDTO
.
getFromId
();
if
(
AppletRecordTypeEnum
.
APP
.
value
.
equals
(
recordDTO
.
getRecordType
())
&&
!
MapUtils
.
isEmpty
(
appDtoMap
)
&&
appDtoMap
.
containsKey
(
fromId
))
{
recordDTO
.
setServeType
(
"APP"
);
AppDto
appDto
=
appDtoMap
.
get
(
fromId
);
//平台端没给封面,取原有封面
if
(
StringUtil
.
isEmpty
(
recordDTO
.
getServePic
()))
{
recordDTO
.
setServePic
(
appDto
.
getSquareImg
());
}
recordDTO
.
setProLabelName
(
appDto
.
getProLabelName
());
recordDTO
.
setDepLabelName
(
appDto
.
getDepLabelName
());
recordDTO
.
setPurLabelName
(
appDto
.
getPurLabelName
());
recordDTO
.
setServeCreateUserId
(
appDto
.
getCreatedUser
());
//应用创建人名称
if
(!
MapUtils
.
isEmpty
(
adviserMap
)
&&
adviserMap
.
containsKey
(
appDto
.
getCreatedUser
()))
{
recordDTO
.
setServeCreateUserName
(
adviserMap
.
get
(
appDto
.
getCreatedUser
()));
}
}
else
if
(
AppletRecordTypeEnum
.
PRODUCT
.
value
.
equals
(
recordDTO
.
getRecordType
())
&&
!
MapUtils
.
isEmpty
(
productDtoMap
)
&&
productDtoMap
.
containsKey
(
fromId
))
{
recordDTO
.
setServeType
(
"PRODUCT"
);
ProductDto
productDto
=
productDtoMap
.
get
(
fromId
);
if
(
StringUtil
.
isEmpty
(
recordDTO
.
getServePic
()))
{
recordDTO
.
setServePic
(
productDto
.
getCoverImg
());
}
List
<
ProductLabelDto
>
labelDtos
=
productDto
.
getProductLabels
();
if
(!
ListUtils
.
isEmpty
(
labelDtos
))
{
recordDTO
.
setProLabelName
(
labelDtos
.
get
(
0
).
getProLabelName
());
recordDTO
.
setDepLabelName
(
labelDtos
.
get
(
0
).
getDepLabelName
());
recordDTO
.
setPurLabelName
(
labelDtos
.
get
(
0
).
getPurLabelName
());
}
recordDTO
.
setServeCreateUserId
(
productDto
.
getCreatedUser
());
if
(!
MapUtils
.
isEmpty
(
merchantMap
)
&&
merchantMap
.
containsKey
(
productDto
.
getCreatedUser
()))
{
recordDTO
.
setServeCreateUserName
(
merchantMap
.
get
(
productDto
.
getCreatedUser
()));
}
}
}
}
private
void
fillLabel
(
List
<
AppletRecordDTO
>
recordList
)
{
if
(
ListUtils
.
isEmpty
(
recordList
))
{
...
...
pcloud-service-book/src/main/java/com/pcloud/book/applet/dao/AppletRecordSevenDayDao.java
View file @
b90b9f47
...
...
@@ -16,5 +16,5 @@ public interface AppletRecordSevenDayDao extends BaseDao<AppletRecordSevenDay>{
void
deleteBySourceType
(
Integer
sourceType
);
List
<
AppletRecordDTO
>
getResourceByGrade4H5
(
Integer
sourceType
,
List
<
Long
>
gradeLabelIds
,
Integer
limit
);
List
<
AppletRecordDTO
>
getResourceByGrade4H5
(
Integer
sourceType
,
List
<
Long
>
gradeLabelIds
,
Integer
limit
,
Integer
sourceFrom
);
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/applet/dao/impl/AppletRecordSevenDayDaoImpl.java
View file @
b90b9f47
...
...
@@ -26,11 +26,12 @@ public class AppletRecordSevenDayDaoImpl extends BaseDaoImpl<AppletRecordSevenDa
}
@Override
public
List
<
AppletRecordDTO
>
getResourceByGrade4H5
(
Integer
sourceType
,
List
<
Long
>
gradeLabelIds
,
Integer
limit
)
{
public
List
<
AppletRecordDTO
>
getResourceByGrade4H5
(
Integer
sourceType
,
List
<
Long
>
gradeLabelIds
,
Integer
limit
,
Integer
sourceFrom
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"sourceType"
,
sourceType
);
map
.
put
(
"gradeLabelIds"
,
gradeLabelIds
);
map
.
put
(
"limit"
,
limit
);
map
.
put
(
"sourceFrom"
,
sourceFrom
);
return
getSessionTemplate
().
selectList
(
getStatement
(
"getResourceByGrade4H5"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/applet/dto/AppletRecordDTO.java
View file @
b90b9f47
...
...
@@ -116,4 +116,22 @@ public class AppletRecordDTO {
private
String
proLabelName
;
private
String
depLabelName
;
private
String
purLabelName
;
/**
* 应用作品资源封面
*/
private
String
servePic
;
/**
* 应用作品资源创建人
*/
private
Long
serveCreateUserId
;
/**
* 应用作品资源创建人名称
*/
private
String
serveCreateUserName
;
/**
* 应用作品是否显示
*/
private
Boolean
serveShowState
;
private
String
serveType
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookBiz.java
View file @
b90b9f47
...
...
@@ -666,7 +666,7 @@ public interface BookBiz {
BookDto
getBaseById4Erp
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
List
<
BookGroupDTO
>
getQrcode4Erp
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
List
<
BookGroupDTO
>
getQrcode4Erp
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
projectId
);
PageBeanNew
<
QrcodeServeDto
>
getQrcodeDetail4Erp
(
Long
sceneId
,
Long
bookGroupId
,
Long
channelId
,
Integer
currentPage
,
Integer
numPerPage
);
...
...
@@ -790,5 +790,18 @@ public interface BookBiz {
*/
void
syncRelateDataToRays
(
SyncRelateDataToRaysVO
vo
);
/**
* 更新封面
*/
void
updateCoverImg
(
SyncRelateDataToRaysVO
vo
);
boolean
checkIsBookId
(
Long
isbnNumber
);
/**
* 编辑图书
* @author:zhuyajie
* @date:2021/7/28 11:21
* * @param null
*/
PageBean
listAdviserBook
(
AviserBookInfoParam
aviserBookInfoParam
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookBizImpl.java
View file @
b90b9f47
...
...
@@ -8,7 +8,6 @@ import cn.hutool.core.collection.CollUtil;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.map.MapUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.http.HttpUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
...
...
@@ -740,6 +739,8 @@ public class BookBizImpl implements BookBiz {
bookSet
.
setOpenRobotProcess
(
new
ArrayList
<>(
Arrays
.
asList
(
bookDto
)));
// 尝试加载ERP单号
bookSet
.
setErpNumbers
(
bookDto
);
// 尝试加载创建人(ERP运维人员)
bookSet
.
setUploadUserId
(
bookDto
);
return
bookDto
;
}
...
...
@@ -1690,16 +1691,40 @@ public class BookBizImpl implements BookBiz {
}
// 调用erp接口进行关联
ProjectRelateVO
vo
=
new
ProjectRelateVO
();
vo
.
setOrderSheetId
(
dto
.
getId
());
vo
.
setProjectId
(
dto
.
getProjectId
());
vo
.
setRaysBookId
(
book
.
getBookId
());
vo
.
setServeIds
(
CollUtil
.
toList
(
book
.
getBookId
()));
vo
.
setRaysAdviserId
(
book
.
getCreatedUser
());
vo
.
setRaysChannelId
(
book
.
getChannelId
());
vo
.
setCoverImg
(
book
.
getCoverImg
());
vo
.
setUploadUserId
(
book
.
getUploadUserId
());
vo
.
setServeType
(
book
.
getServeType
());
Integer
changeCount
=
erpConsr
.
relateRaysBook
(
vo
);
if
(
changeCount
==
null
&&
changeCount
<=
0
){
LOGGER
.
info
(
"relationBook4Erp:关联ERP项目可能未成功;book:"
+
book
);
}
}
/**
* 更新关联书刊信息
*/
private
void
updateRelationBook
(
Book
book
){
if
(
book
==
null
||
book
.
getBookId
()
==
null
||
book
.
getLastModifiedUser
()
==
null
||
book
.
getChannelId
()
==
null
||
!
"BOOK"
.
equalsIgnoreCase
(
book
.
getServeType
())
||
book
.
getUploadUserId
()
==
null
){
return
;
}
// 调用erp接口进行关联
ProjectRelateVO
vo
=
new
ProjectRelateVO
();
vo
.
setRaysBookId
(
book
.
getBookId
());
vo
.
setServeIds
(
CollUtil
.
toList
(
book
.
getBookId
()));
vo
.
setRaysAdviserId
(
book
.
getLastModifiedUser
());
vo
.
setRaysChannelId
(
book
.
getChannelId
());
vo
.
setCoverImg
(
book
.
getCoverImg
());
vo
.
setUploadUserId
(
book
.
getUploadUserId
());
vo
.
setServeType
(
book
.
getServeType
());
erpConsr
.
updateRelationBook
(
vo
);
}
/**
* 修改图书与图书类型
...
...
@@ -1727,6 +1752,8 @@ public class BookBizImpl implements BookBiz {
LOGGER
.
info
(
"修改图书基本信息与类型[END]"
);
//更新超级搜索es
searchProducer
.
updateBook
(
book
);
// 更新ERP运维人员、封面图
this
.
updateRelationBook
(
book
);
}
/**
...
...
@@ -2675,7 +2702,7 @@ public class BookBizImpl implements BookBiz {
List
<
ESBookAndAdviser
>
esBookAndAdvisers
=
esPage
.
getContent
();
if
(
ListUtils
.
isEmpty
(
esBookAndAdvisers
))
{
return
new
PageBeanNew
<>(
currentPage
,
numPerPage
,
0
,
new
ArrayList
<>());
return
new
PageBeanNew
<>(
currentPage
,
numPerPage
,
(
int
)
esPage
.
getTotalElements
()
,
new
ArrayList
<>());
}
List
<
BookDto
>
bookDtos
=
changeToBookDto
(
esBookAndAdvisers
);
fillOtherBookInfo
(
bookDtos
);
...
...
@@ -2758,11 +2785,15 @@ public class BookBizImpl implements BookBiz {
if
(!
MapUtils
.
isEmpty
(
agentNameMap
)
&&
agentNameMap
.
containsKey
(
agentId
))
{
bookDto
.
setAgentName
(
agentNameMap
.
get
(
agentId
));
}
ProjectUploaderDTO
projectUploadUser
=
erpConsr
.
getProjectUploadUser
(
bookId
);
bookDto
.
setUploadUserName
(
projectUploadUser
==
null
?
null
:
projectUploadUser
.
getUploadUserName
());
}
else
{
// 从redis获取书籍信息
bookDto
=
bookCache
.
getBookToRedis
(
bookId
);
if
(
null
==
bookDto
)
{
bookDto
=
bookDao
.
getBaseById
(
bookId
);
ProjectUploaderDTO
projectUploadUser
=
erpConsr
.
getProjectUploadUser
(
bookId
);
bookDto
.
setUploadUserName
(
projectUploadUser
==
null
?
null
:
projectUploadUser
.
getUploadUserName
());
// 将数据存入redis
bookCache
.
setBookToRedis
(
bookDto
);
}
...
...
@@ -3101,7 +3132,7 @@ public class BookBizImpl implements BookBiz {
}
@Override
public
List
<
BookGroupDTO
>
getQrcode4Erp
(
Long
bookId
,
Long
channelId
,
Long
adviserId
)
{
public
List
<
BookGroupDTO
>
getQrcode4Erp
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
projectId
)
{
if
(
bookId
==
null
||
channelId
==
null
||
adviserId
==
null
){
return
null
;
}
...
...
@@ -3122,9 +3153,24 @@ public class BookBizImpl implements BookBiz {
this
.
mergeQrcodeData
(
qrcodeSceneDtos
,
bookGroupList
);
// 填充书刊标签
this
.
setBookGroupLabel
(
bookGroupList
);
// 设置创建人(ERP运维人员)
this
.
setProjectUploadUser
(
bookGroupList
,
projectId
);
return
bookGroupList
;
}
private
void
setProjectUploadUser
(
List
<
BookGroupDTO
>
bookGroupList
,
Long
projectId
)
{
if
(
CollUtil
.
isEmpty
(
bookGroupList
)
||
projectId
==
null
){
return
;
}
Map
<
Long
,
String
>
uploadMap
=
erpConsr
.
getQrcodeUploadUserByProjectId
(
projectId
);
for
(
BookGroupDTO
bookGroupDTO
:
bookGroupList
)
{
if
(
bookGroupDTO
.
getSceneId
()
==
null
){
continue
;
}
bookGroupDTO
.
setUploadUserName
(
uploadMap
.
get
(
bookGroupDTO
.
getSceneId
()));
}
}
private
void
mergeQrcodeData
(
List
<
QrcodeSceneDto
>
qrcodeSceneDtos
,
List
<
BookGroupDTO
>
bookGroupList
)
{
BookGroupDTO
tempBookGroupDTO
;
for
(
QrcodeSceneDto
qrcodeSceneDto
:
qrcodeSceneDtos
)
{
...
...
@@ -4297,7 +4343,38 @@ public class BookBizImpl implements BookBiz {
}
@Override
public
void
updateCoverImg
(
SyncRelateDataToRaysVO
vo
){
if
(
vo
==
null
||
vo
.
getBookId
()
==
null
||
StrUtil
.
isBlank
(
vo
.
getCoverImg
())){
throw
new
BizException
(
BizException
.
PARAM_DELETION
.
getCode
(),
"参数不能为空"
);
}
BookDto
bookDto
=
this
.
getBaseById
(
vo
.
getBookId
());
Book
book
=
new
Book
();
book
.
setBookId
(
vo
.
getBookId
().
longValue
());
book
.
setCoverImg
(
vo
.
getCoverImg
());
book
.
setLastModifiedUser
(
bookDto
.
getLastModifiedUser
());
this
.
updateCoverImg
(
book
);
}
@Override
public
boolean
checkIsBookId
(
Long
isbnNumber
)
{
return
bookDao
.
checkIsBookId
(
isbnNumber
);
}
@Override
public
PageBean
listAdviserBook
(
AviserBookInfoParam
aviserBookInfoParam
)
{
Integer
currentPage
=
null
==
aviserBookInfoParam
.
getCurrentPage
()?
0
:
aviserBookInfoParam
.
getCurrentPage
();
Integer
numPerPage
=
null
==
aviserBookInfoParam
.
getNumPerPage
()?
10
:
aviserBookInfoParam
.
getNumPerPage
();
PageBean
pageBean
=
bookDao
.
listPage
(
new
PageParam
(
currentPage
,
numPerPage
),
new
HashMap
<>(),
"listBookClassify"
,
"listBookClassifyCount"
);
if
(
pageBean
!=
null
)
{
// 设置书刊分类
bookSet
.
setTemplateNameNew
(
pageBean
.
getRecordList
());
// 设置出版社名称
bookSet
.
setAgentId4BookDto
(
pageBean
.
getRecordList
());
//标签
bookSet
.
setProDepPurLabelNameList
(
pageBean
.
getRecordList
());
}
else
{
pageBean
=
new
PageBean
();
}
return
pageBean
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/facade/impl/BookFacadeImpl.java
View file @
b90b9f47
...
...
@@ -1231,8 +1231,9 @@ public class BookFacadeImpl implements BookFacade {
@GetMapping
(
"getQrcode4Erp"
)
public
ResponseDto
<?>
getQrcode4Erp
(
@RequestParam
(
value
=
"bookId"
)
Long
bookId
,
@RequestParam
(
value
=
"channelId"
)
Long
channelId
,
@RequestParam
(
value
=
"adviserId"
)
Long
adviserId
)
{
return
new
ResponseDto
<>(
bookBiz
.
getQrcode4Erp
(
bookId
,
channelId
,
adviserId
));
@RequestParam
(
value
=
"adviserId"
)
Long
adviserId
,
@RequestParam
(
value
=
"projectId"
,
required
=
false
)
Long
projectId
)
{
return
new
ResponseDto
<>(
bookBiz
.
getQrcode4Erp
(
bookId
,
channelId
,
adviserId
,
projectId
));
}
@ApiOperation
(
"获取二维码下的应用作品(ERP)"
)
...
...
@@ -1387,4 +1388,11 @@ public class BookFacadeImpl implements BookFacade {
bookBiz
.
syncRelateDataToRays
(
vo
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"更新封面"
)
@PostMapping
(
"updateCoverImg4Erp"
)
public
ResponseDto
<?>
updateCoverImg4Erp
(
@RequestBody
SyncRelateDataToRaysVO
vo
)
{
bookBiz
.
updateCoverImg
(
vo
);
return
new
ResponseDto
<>();
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/service/impl/BookServiceImpl.java
View file @
b90b9f47
...
...
@@ -7,6 +7,7 @@ import com.pcloud.book.book.biz.BookBiz;
import
com.pcloud.book.book.biz.BookLabelBiz
;
import
com.pcloud.book.book.biz.BookQrcodeWxworkBiz
;
import
com.pcloud.book.book.biz.BookMinimumSupportBiz
;
import
com.pcloud.book.book.dto.AviserBookInfoParam
;
import
com.pcloud.book.book.dto.BookAdviserUpdateTimeDTO
;
import
com.pcloud.book.book.dto.BookDetialDTO
;
import
com.pcloud.book.book.dto.BookDto
;
...
...
@@ -18,6 +19,7 @@ import com.pcloud.book.book.dto.BookMinimumSupportDTO4Service;
import
com.pcloud.book.book.service.BookService
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.page.PageBean
;
import
com.pcloud.common.utils.ResponseHandleUtil
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -282,4 +284,10 @@ public class BookServiceImpl implements BookService {
@RequestParam
(
value
=
"bookGroupId"
,
required
=
false
)
Long
bookGroupId
)
{
return
ResponseHandleUtil
.
toResponse
(
bookQrcodeWxworkBiz
.
getWxworkGroupQrcodeIdsExceptBook
(
sceneId
,
bookGroupId
));
}
@Override
@PostMapping
(
"listAdviserBook"
)
public
ResponseEntity
<
ResponseDto
<
PageBean
>>
listAdviserBook
(
@RequestBody
AviserBookInfoParam
aviserBookInfoParam
)
{
return
ResponseHandleUtil
.
toResponse
(
bookBiz
.
listAdviserBook
(
aviserBookInfoParam
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/set/BookSet.java
View file @
b90b9f47
...
...
@@ -29,6 +29,7 @@ import com.pcloud.book.book.dto.BookFreezeDto;
import
com.pcloud.book.book.dto.BookProductDto
;
import
com.pcloud.book.book.dto.BookResourceDto
;
import
com.pcloud.book.book.dto.BookTypeDto
;
import
com.pcloud.book.book.dto.ProjectUploaderDTO
;
import
com.pcloud.book.book.entity.BookDefendant
;
import
com.pcloud.book.book.entity.BookLabel
;
import
com.pcloud.book.book.tools.BookTools
;
...
...
@@ -2047,4 +2048,28 @@ public class BookSet {
List
<
String
>
erpNumbers
=
erpConsr
.
getErpNumbers
(
bookDto
.
getBookId
(),
bookDto
.
getChannelId
(),
bookDto
.
getAdviserId
());
bookDto
.
setErpNumbers
(
erpNumbers
);
}
public
void
setUploadUserId
(
BookDto
bookDto
){
if
(
bookDto
==
null
||
bookDto
.
getBookId
()
==
null
||
bookDto
.
getChannelId
()
==
null
||
bookDto
.
getAdviserId
()
==
null
){
return
;
}
ProjectUploaderDTO
projectUploadUser
=
erpConsr
.
getProjectUploadUser
(
bookDto
.
getBookId
());
if
(
projectUploadUser
==
null
){
return
;
}
bookDto
.
setUploadUserId
(
projectUploadUser
.
getUploadUserId
());
bookDto
.
setUploadUserName
(
projectUploadUser
.
getUploadUserName
());
}
public
void
setProDepPurLabelNameList
(
List
<
Object
>
objects
)
{
if
(
ListUtils
.
isEmpty
(
objects
))
{
return
;
}
List
<
BookDto
>
bookDtos
=
new
ArrayList
<>();
for
(
Object
object
:
objects
)
{
BookDto
bookDto
=
(
BookDto
)
object
;
bookDtos
.
add
(
bookDto
);
}
this
.
setProDepPurLabelNames
(
bookDtos
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/response/BookQrcodeWxworkResponseVO.java
View file @
b90b9f47
...
...
@@ -70,4 +70,8 @@ public class BookQrcodeWxworkResponseVO extends BaseDto {
*/
private
String
url
;
/**
* 群分类
*/
private
String
classifyName
;
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/erp/ErpConsr.java
View file @
b90b9f47
...
...
@@ -11,6 +11,7 @@ import com.pcloud.book.book.dto.ErpBookApprovalDTO;
import
com.pcloud.book.book.dto.ErpBookInfoDTO
;
import
com.pcloud.book.book.dto.ProjectOrderSheetDTO
;
import
com.pcloud.book.book.dto.ProjectRelateVO
;
import
com.pcloud.book.book.dto.ProjectUploaderDTO
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ListUtils
;
...
...
@@ -326,4 +327,55 @@ public class ErpConsr {
throw
new
BookBizException
(
BookBizException
.
INVOKE_CONTENT_ERROR
,
"关联RAYS书刊失败~!"
);
}
}
@ParamLog
(
"更新RAYS书刊关联的尽调单信息"
)
public
void
updateRelationBook
(
ProjectRelateVO
vo
)
throws
BizException
{
try
{
Map
<
String
,
String
>
headers
=
new
HashMap
<>();
headers
.
put
(
"Content-Type"
,
"application/json"
);
HttpResponse
response
=
HttpUtils
.
doPost
(
domain
,
"/erp/project4Third/updateRelationBook"
,
"POST"
,
headers
,
new
HashMap
<>(),
JSONObject
.
toJSONString
(
vo
));
String
entityString
=
EntityUtils
.
toString
(
response
.
getEntity
());
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
entityString
);
if
(
jsonObject
.
getInteger
(
"errCode"
)
!=
0
){
throw
new
BizException
(
jsonObject
.
getString
(
"message"
));
}
}
catch
(
Exception
e
){
LOGGER
.
error
(
"关联RAYS书刊[project4Third.relateRaysBook]:"
+
e
.
getMessage
(),
e
);
throw
new
BookBizException
(
BookBizException
.
INVOKE_CONTENT_ERROR
,
"关联RAYS书刊失败~!"
);
}
}
public
ProjectUploaderDTO
getProjectUploadUser
(
Long
bookId
)
{
Map
<
String
,
String
>
querys
=
new
HashMap
<>();
querys
.
put
(
"bookId"
,
bookId
.
toString
());
try
{
HttpResponse
response
=
HttpUtils
.
doGet
(
domain
,
"/erp/project4Third/getProjectUploadUser"
,
"GET"
,
new
HashMap
<>(),
querys
);
String
entityString
=
EntityUtils
.
toString
(
response
.
getEntity
());
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
entityString
);
if
(
jsonObject
.
getInteger
(
"errCode"
)
!=
0
){
throw
new
BizException
(
jsonObject
.
getString
(
"message"
));
}
return
JSONObject
.
parseObject
(
jsonObject
.
getString
(
"data"
),
ProjectUploaderDTO
.
class
);
}
catch
(
Exception
e
){
LOGGER
.
error
(
"根据isbn获取erp书刊信息[project4Third.getByErpNumber]:"
+
e
.
getMessage
(),
e
);
}
return
null
;
}
public
Map
<
Long
,
String
>
getQrcodeUploadUserByProjectId
(
Long
projectId
)
{
Map
<
String
,
String
>
querys
=
new
HashMap
<>();
querys
.
put
(
"projectId"
,
projectId
.
toString
());
try
{
HttpResponse
response
=
HttpUtils
.
doGet
(
domain
,
"/erp/project4Third/getQrcodeUploadUserByProjectId"
,
"GET"
,
new
HashMap
<>(),
querys
);
String
entityString
=
EntityUtils
.
toString
(
response
.
getEntity
());
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
entityString
);
if
(
jsonObject
.
getInteger
(
"errCode"
)
!=
0
){
throw
new
BizException
(
jsonObject
.
getString
(
"message"
));
}
return
JSONObject
.
parseObject
(
jsonObject
.
getString
(
"data"
),
new
TypeReference
<
Map
<
Long
,
String
>>(){});
}
catch
(
Exception
e
){
LOGGER
.
error
(
"根据isbn获取erp书刊信息[project4Third.getByErpNumber]:"
+
e
.
getMessage
(),
e
);
}
return
new
HashMap
<>();
}
}
pcloud-service-book/src/main/java/com/pcloud/book/cultivate/biz/CultivateNotifyBiz.java
View file @
b90b9f47
...
...
@@ -3,6 +3,7 @@ package com.pcloud.book.cultivate.biz;
import
com.pcloud.book.book.dto.AdviserBookInfoDTO
;
import
com.pcloud.book.cultivate.dto.CultivateNotifyDTO
;
import
com.pcloud.book.cultivate.dto.CultivateNotifyPageDTO
;
import
com.pcloud.book.cultivate.dto.NotifySendDTO
;
import
com.pcloud.book.cultivate.dto.SearchNotifyDTO
;
import
com.pcloud.book.cultivate.dto.SearchSendUserDTO
;
import
com.pcloud.book.cultivate.dto.SendUserDetailDto
;
...
...
@@ -44,4 +45,6 @@ public interface CultivateNotifyBiz {
Long
createNotify4App
(
AppletNotifySendDTO
newSendDTO
);
void
clearExpireNotifies
();
Long
sendNotifyToUser
(
NotifySendDTO
notifySendDTO
);
}
pcloud-service-book/src/main/java/com/pcloud/book/cultivate/biz/impl/CultivateNotifyBizImpl.java
View file @
b90b9f47
...
...
@@ -30,6 +30,8 @@ import com.pcloud.book.cultivate.dao.CultivateNotifySendDao;
import
com.pcloud.book.cultivate.dto.CultivateNotifyDTO
;
import
com.pcloud.book.cultivate.dto.CultivateNotifyPageDTO
;
import
com.pcloud.book.cultivate.dto.CultivateNotifyTypeDTO
;
import
com.pcloud.book.cultivate.dto.NotifyItemDTO
;
import
com.pcloud.book.cultivate.dto.NotifySendDTO
;
import
com.pcloud.book.cultivate.dto.SearchNotifyDTO
;
import
com.pcloud.book.cultivate.dto.SearchSendUserDTO
;
import
com.pcloud.book.cultivate.dto.WechatUserDTO
;
...
...
@@ -45,6 +47,7 @@ import com.pcloud.common.core.aspect.ParamLog;
import
com.pcloud.common.core.dto.AppletTemplateMessageDto
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.utils.BeanUtils
;
import
com.pcloud.common.utils.DateUtils
;
import
com.pcloud.common.utils.ListUtils
;
import
com.pcloud.common.utils.ServeLinkUtils
;
...
...
@@ -622,4 +625,36 @@ public class CultivateNotifyBizImpl implements CultivateNotifyBiz {
public
void
clearExpireNotifies
()
{
cultivateNotifySendDao
.
clearExpireNotifies
();
}
@Override
public
Long
sendNotifyToUser
(
NotifySendDTO
notifySendDTO
)
{
if
(
null
==
notifySendDTO
||
null
==
notifySendDTO
.
getSendType
()
||
null
==
notifySendDTO
.
getMessageType
()
||
StringUtil
.
isEmpty
(
notifySendDTO
.
getTitle
())
||
null
==
notifySendDTO
.
getWechatUserId
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"新建站内信消息参数为空"
);
}
CultivateNotify
cultivateNotify
=
new
CultivateNotify
();
cultivateNotify
.
setMessageType
(
notifySendDTO
.
getMessageType
());
cultivateNotify
.
setTitle
(
notifySendDTO
.
getTitle
());
cultivateNotify
.
setSendType
(
notifySendDTO
.
getSendType
());
cultivateNotify
.
setAgentId
(
0L
);
cultivateNotifyDao
.
insert
(
cultivateNotify
);
Long
messageId
=
cultivateNotify
.
getMessageId
();
if
(!
ListUtils
.
isEmpty
(
notifySendDTO
.
getNotifyItemDTOS
()))
{
List
<
CultivateNotifyItem
>
items
=
new
ArrayList
<>();
for
(
NotifyItemDTO
itemDTO:
notifySendDTO
.
getNotifyItemDTOS
()){
CultivateNotifyItem
item
=
new
CultivateNotifyItem
();
BeanUtils
.
copyProperties
(
itemDTO
,
item
);
item
.
setMessageId
(
messageId
);
items
.
add
(
item
);
}
cultivateNotifyItemDao
.
insert
(
items
);
}
//发给用户
CultivateNotifySend
notifySend
=
new
CultivateNotifySend
();
notifySend
.
setMessageId
(
messageId
);
notifySend
.
setWechatUserId
(
notifySendDTO
.
getWechatUserId
());
notifySend
.
setSendType
(
notifySendDTO
.
getSendType
());
notifySend
.
setMessageType
(
notifySendDTO
.
getMessageType
());
cultivateNotifySendDao
.
insert
(
notifySend
);
return
messageId
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/cultivate/service/impl/CultivateNotifyServiceImpl.java
View file @
b90b9f47
package
com
.
pcloud
.
book
.
cultivate
.
service
.
impl
;
import
com.pcloud.book.cultivate.biz.CultivateNotifyBiz
;
import
com.pcloud.book.cultivate.dto.NotifySendDTO
;
import
com.pcloud.book.cultivate.entity.AppletNotifySendDTO
;
import
com.pcloud.book.cultivate.entity.CultivateNotifySend
;
import
com.pcloud.book.cultivate.service.CultivateNotifyService
;
...
...
@@ -11,6 +12,7 @@ import com.pcloud.common.utils.ListUtils;
import
com.pcloud.common.utils.ResponseHandleUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
...
@@ -52,4 +54,10 @@ public class CultivateNotifyServiceImpl implements CultivateNotifyService {
public
ResponseEntity
<
ResponseDto
<
Long
>>
createNotify4App
(
@RequestBody
AppletNotifySendDTO
newSendDTO
)
throws
BizException
{
return
ResponseHandleUtil
.
toResponse
(
cultivateNotifyBiz
.
createNotify4App
(
newSendDTO
));
}
@Override
@PostMapping
(
"sendNotifyToUser"
)
public
ResponseEntity
<
ResponseDto
<
Long
>>
sendNotifyToUser
(
@RequestBody
NotifySendDTO
notifySendDTO
)
{
return
ResponseHandleUtil
.
toResponse
(
cultivateNotifyBiz
.
sendNotifyToUser
(
notifySendDTO
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/ResourcePageBiz.java
View file @
b90b9f47
...
...
@@ -10,6 +10,7 @@ import com.pcloud.book.group.entity.BookGroupServe;
import
com.pcloud.book.group.entity.ResourcePage
;
import
com.pcloud.book.group.entity.ResourcePageCollect
;
import
com.pcloud.book.group.entity.ResourcePageTool
;
import
com.pcloud.book.group.entity.ResourceRecomManage
;
import
com.pcloud.book.group.vo.ResourceColumnAndServeVO
;
import
com.pcloud.book.group.vo.ResourcePageItemVO
;
import
com.pcloud.book.group.vo.ResourcePageOneServe
;
...
...
@@ -360,4 +361,36 @@ public interface ResourcePageBiz {
* * @param null
*/
void
updateBookId
(
Long
bookId
,
Long
sceneId
);
/**
* 平台端-资源推荐管理-热门课程
* @author:zhuyajie
* @date:2021/7/9 15:03
* * @param null
*/
PageBeanNew
listRecommendCourse4Pcloud
(
Integer
currentPage
,
Integer
numPerPage
,
String
query
);
/**
* 平台端-资源推荐管理-教辅、育儿宝库
* @author:zhuyajie
* @date:2021/7/9 17:41
* * @param null
*/
PageBeanNew
listRecommendResource4Pcloud
(
Integer
currentPage
,
Integer
numPerPage
,
String
query
,
Integer
sourceFrom
);
/**
* 平台端-资源推荐管理-修改
* @author:zhuyajie
* @date:2021/7/9 18:05
* * @param null
*/
void
updateRecommendResource4Pcloud
(
ResourceRecomManage
resourceRecomManage
);
/**
* 查平台端应用作品修改记录
* @author:zhuyajie
* @date:2021/7/19 18:20
* * @param null
*/
Map
<
Long
,
ResourceRecomManage
>
mapResourceRecomManage
(
List
<
Long
>
serveIds
,
String
serveType
,
Integer
sourceFrom
);
}
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/impl/ResourcePageBizImpl.java
View file @
b90b9f47
package
com
.
pcloud
.
book
.
group
.
biz
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.io.FileUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.extra.qrcode.QrCodeException
;
import
cn.hutool.extra.qrcode.QrCodeUtil
;
import
cn.hutool.http.HttpUtil
;
import
com.pcloud.advertising.advertising.dto.AdvertisingSpaceDTO
;
import
com.pcloud.advertising.advertising.dto.AdvertisingSpaceItemDTO
;
import
com.pcloud.analysisengine.browse.dto.BrowseRecordStatisticDTO
;
import
com.pcloud.appcenter.app.dto.AppDto
;
import
com.pcloud.book.applet.biz.AppletBooklistBiz
;
import
com.pcloud.book.applet.biz.AppletGroupSearchRecordBiz
;
import
com.pcloud.book.applet.biz.AppletRecordAggrStatisBiz
;
import
com.pcloud.book.applet.biz.AppletThirdResourcesBiz
;
import
com.pcloud.book.applet.dto.AppletGroupStatementDTO
;
import
com.pcloud.book.applet.dto.AppletOuterBooklistDTO
;
...
...
@@ -21,8 +15,8 @@ import com.pcloud.book.applet.entity.AppletThirdResources;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.biz.BookBiz
;
import
com.pcloud.book.book.dto.BookDto
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.dto.RaysSceneCatalogDto
;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.enums.WxworkQrcodeType
;
import
com.pcloud.book.book.vo.BookLinkVO
;
import
com.pcloud.book.book.vo.response.BookQrcodeWxworkResponseVO
;
...
...
@@ -37,6 +31,7 @@ import com.pcloud.book.consumer.resource.ProductConsr;
import
com.pcloud.book.consumer.user.AdviserConsr
;
import
com.pcloud.book.consumer.user.AgentConsr
;
import
com.pcloud.book.consumer.user.ChannelConsr
;
import
com.pcloud.book.consumer.user.MerchantConsr
;
import
com.pcloud.book.consumer.wechatgroup.WechatGroupConsr
;
import
com.pcloud.book.es.biz.ESBookAndAdviserBiz
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
...
...
@@ -50,6 +45,7 @@ import com.pcloud.book.group.dao.ResourcePageCourseDao;
import
com.pcloud.book.group.dao.ResourcePageDao
;
import
com.pcloud.book.group.dao.ResourcePageItemDao
;
import
com.pcloud.book.group.dao.ResourcePageToolDao
;
import
com.pcloud.book.group.dao.ResourceRecomManageDao
;
import
com.pcloud.book.group.dto.AddBookGroupServeDTO
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.book.group.dto.BookGroupServeCountDTO
;
...
...
@@ -66,6 +62,7 @@ import com.pcloud.book.group.entity.ResourcePageColumn;
import
com.pcloud.book.group.entity.ResourcePageCourse
;
import
com.pcloud.book.group.entity.ResourcePageItem
;
import
com.pcloud.book.group.entity.ResourcePageTool
;
import
com.pcloud.book.group.entity.ResourceRecomManage
;
import
com.pcloud.book.group.tools.SendWeixinRequestTools
;
import
com.pcloud.book.group.vo.ResourceColumnAndServeVO
;
import
com.pcloud.book.group.vo.ResourcePageItemVO
;
...
...
@@ -99,11 +96,11 @@ import com.pcloud.common.utils.QrcodeUtils;
import
com.pcloud.common.utils.ServeLinkUtils
;
import
com.pcloud.common.utils.UUIDUitl
;
import
com.pcloud.common.utils.string.StringUtil
;
import
com.pcloud.readercenter.userlabel.dto.UserGradeLabelIdDTO
;
import
com.pcloud.message.common.enums.YesNoEnums
;
import
com.pcloud.readercenter.userlabel.dto.UserGradeLabelIdDTO
;
import
com.pcloud.resourcecenter.product.dto.ProductDto
;
import
com.pcloud.resourcecenter.product.dto.ProductLabelDto
;
import
com.pcloud.usercenter.party.adviser.dto.AdviserBaseInfoDto
;
import
lombok.extern.slf4j.Slf4j
;
import
com.pcloud.wechatgroup.wxwork.dto.WxworkGroupQrcodeBaseDTO
;
import
org.apache.commons.collections.CollectionUtils
;
...
...
@@ -125,6 +122,15 @@ import java.util.Objects;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.io.FileUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.extra.qrcode.QrCodeException
;
import
cn.hutool.extra.qrcode.QrCodeUtil
;
import
cn.hutool.http.HttpUtil
;
import
lombok.extern.slf4j.Slf4j
;
/**
* @ClassName com.pcloud.book.group.biz.impl.ResourcePageBizImpl
* @Author zhuyajie
...
...
@@ -189,9 +195,13 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
@Autowired
private
ChannelConsr
channelConsr
;
@Autowired
private
LabelConsr
labelConsr
;
@Autowired
private
AppletGroupSearchRecordBiz
appletGroupSearchRecordBiz
;
@Autowired
private
MerchantConsr
merchantConsr
;
@Autowired
private
AppletRecordAggrStatisBiz
appletRecordAggrStatisBiz
;
@Autowired
private
ResourceRecomManageDao
resourceRecomManageDao
;
@Override
public
Long
updateResourcePage
(
UpdateResourcePageVO
updateResourcePageVO
)
{
...
...
@@ -786,6 +796,7 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
responseVO
.
setGroupName
(
wxworkGroupQrcodeBaseDTO
.
getGroupQrcodeName
());
responseVO
.
setGroupDesc
(
wxworkGroupQrcodeBaseDTO
.
getInvitationRays
());
responseVO
.
setUrl
(
wxworkGroupQrcodeBaseDTO
.
getUrl
());
responseVO
.
setClassifyName
(
wxworkGroupQrcodeBaseDTO
.
getClassifyName
());
//头像列表从缓存里取
List
<
String
>
headUrlList
=
appletGroupSearchRecordBiz
.
getHeadUrlList
(
9
,
itemVO
.
getServeId
());
responseVO
.
setHeadUrlList
(
headUrlList
);
...
...
@@ -1718,6 +1729,7 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
Long
gradeLabel
=
null
==
userGradeLabelIdDTO
?
11L
:
userGradeLabelIdDTO
.
getLabelId
();
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"userGradeLabelId"
,
gradeLabel
);
paramMap
.
put
(
"sourceFrom"
,
ResourcePageConstants
.
RecommendResourceFromEnum
.
HOT_COURSE
.
getCode
());
PageBeanNew
<
ResourcePageCourseDTO
>
pageBeanNew
=
resourcePageCourseDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
paramMap
,
"listCourseByGradeLabelId"
);
if
(
ListUtils
.
isEmpty
(
pageBeanNew
.
getRecordList
()))
{
return
new
PageBeanNew
<>(
currentPage
,
numPerPage
,
pageBeanNew
.
getTotalCount
(),
new
ArrayList
<>());
...
...
@@ -1725,7 +1737,6 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
List
<
ResourcePageCourseDTO
>
dtos
=
pageBeanNew
.
getRecordList
();
List
<
Long
>
appIds
=
new
ArrayList
<>();
List
<
Long
>
productIds
=
new
ArrayList
<>();
List
<
Long
>
labelIds
=
new
ArrayList
<>();
for
(
ResourcePageCourseDTO
dto
:
dtos
)
{
Long
serveId
=
dto
.
getServeId
();
if
(
ResourcePageConstants
.
ServeTypeEnum
.
APP
.
getValue
().
equals
(
dto
.
getServeType
())
&&
!
appIds
.
contains
(
serveId
))
{
...
...
@@ -1734,30 +1745,24 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
if
(
ResourcePageConstants
.
ServeTypeEnum
.
PRODUCT
.
getValue
().
equals
(
dto
.
getServeType
())
&&
!
productIds
.
contains
(
serveId
))
{
productIds
.
add
(
serveId
);
}
if
(
null
!=
dto
.
getProLabelId
()
&&
!
labelIds
.
contains
(
dto
.
getProLabelId
()))
{
labelIds
.
add
(
dto
.
getProLabelId
());
}
if
(
null
!=
dto
.
getDepLabelId
()
&&
!
labelIds
.
contains
(
dto
.
getDepLabelId
()))
{
labelIds
.
add
(
dto
.
getDepLabelId
());
}
if
(
null
!=
dto
.
getPurLabelId
()
&&
!
labelIds
.
contains
(
dto
.
getPurLabelId
()))
{
labelIds
.
add
(
dto
.
getPurLabelId
());
}
}
Map
<
Long
,
AppDto
>
appDtoMap
=
appConsr
.
mapBaseByIds
(
appIds
);
Map
<
Long
,
ProductDto
>
productDtoMap
=
productConsr
.
getProBasesByIds
(
productIds
);
Long
accountSettingId
=
BookProps
.
getOperateOfficalId
();
AccountSetting
accountSetting
=
channelConsr
.
getAppInfo
(
accountSettingId
);
Map
<
Long
,
String
>
labelMap
=
labelConsr
.
getLabelName
(
labelIds
);
for
(
ResourcePageCourseDTO
courseDTO
:
dtos
)
{
Long
serveId
=
courseDTO
.
getServeId
();
String
serveType
=
courseDTO
.
getServeType
();
if
(
ResourcePageConstants
.
ServeTypeEnum
.
APP
.
getValue
().
equals
(
serveType
)
&&
!
MapUtils
.
isEmpty
(
appDtoMap
)
&&
appDtoMap
.
containsKey
(
serveId
))
{
AppDto
appDto
=
appDtoMap
.
get
(
courseDTO
.
getServeId
());
courseDTO
.
setServeName
(
appDto
.
getTitle
());
if
(
StringUtil
.
isEmpty
(
courseDTO
.
getServePic
()))
{
courseDTO
.
setServePic
(
appDto
.
getSquareImg
());
}
courseDTO
.
setTransverseImg
(
appDto
.
getTransverseImg
());
courseDTO
.
setProLabelName
(
appDto
.
getProLabelName
());
courseDTO
.
setDepLabelName
(
appDto
.
getDepLabelName
());
courseDTO
.
setPurLabelName
(
appDto
.
getPurLabelName
());
//跳转链接
String
turnUrl
=
ServeLinkUtils
.
getCompleteLink
(
"APP"
,
appDto
.
getTypeCode
(),
appDto
.
getAppId
().
toString
(),
appDto
.
getSceneCode
(),
appDto
.
getChannelId
().
toString
(),
appDto
.
getCreatedUser
().
toString
(),
null
,
accountSettingId
.
toString
(),
...
...
@@ -1768,10 +1773,17 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
}
else
if
(
ResourcePageConstants
.
ServeTypeEnum
.
PRODUCT
.
getValue
().
equals
(
serveType
)
&&
!
MapUtils
.
isEmpty
(
productDtoMap
)
&&
productDtoMap
.
containsKey
(
serveId
))
{
ProductDto
productDto
=
productDtoMap
.
get
(
courseDTO
.
getServeId
());
courseDTO
.
setServeName
(
productDto
.
getProductName
());
if
(
StringUtil
.
isEmpty
(
courseDTO
.
getServePic
()))
{
courseDTO
.
setServePic
(
productDto
.
getCoverImg
());
}
courseDTO
.
setTransverseImg
(
StringUtil
.
isEmpty
(
productDto
.
getPicture1
())?
getDefaultBigPic
(
courseDTO
.
getTypeCode
()):
productDto
.
getPicture1
());
List
<
ProductLabelDto
>
labelDtos
=
productDto
.
getProductLabels
();
if
(!
ListUtils
.
isEmpty
(
labelDtos
))
{
courseDTO
.
setProLabelName
(
labelDtos
.
get
(
0
).
getProLabelName
());
courseDTO
.
setDepLabelName
(
labelDtos
.
get
(
0
).
getDepLabelName
());
courseDTO
.
setPurLabelName
(
labelDtos
.
get
(
0
).
getPurLabelName
());
}
//跳转链接
String
turnUrl
=
ServeLinkUtils
.
getCompleteLink
(
"PRODUCT"
,
courseDTO
.
getTypeCode
(),
productDto
.
getProductId
().
toString
(),
productDto
.
getProductSceneCode
(),
courseDTO
.
getChannelId
().
toString
(),
null
,
null
,
accountSettingId
.
toString
(),
...
...
@@ -1779,17 +1791,6 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
null
!=
accountSetting
.
getRandom
()
?
accountSetting
.
getRandom
().
toString
()
:
null
);
courseDTO
.
setResultUrl
(
turnUrl
);
}
if
(!
MapUtils
.
isEmpty
(
labelMap
))
{
if
(
null
!=
courseDTO
.
getProLabelId
()
&&
labelMap
.
containsKey
(
courseDTO
.
getProLabelId
()))
{
courseDTO
.
setProLabelName
(
labelMap
.
get
(
courseDTO
.
getProLabelId
()));
}
if
(
null
!=
courseDTO
.
getDepLabelId
()
&&
labelMap
.
containsKey
(
courseDTO
.
getDepLabelId
()))
{
courseDTO
.
setDepLabelName
(
labelMap
.
get
(
courseDTO
.
getDepLabelId
()));
}
if
(
null
!=
courseDTO
.
getPurLabelId
()
&&
labelMap
.
containsKey
(
courseDTO
.
getPurLabelId
()))
{
courseDTO
.
setPurLabelName
(
labelMap
.
get
(
courseDTO
.
getPurLabelId
()));
}
}
}
return
pageBeanNew
;
}
...
...
@@ -1911,4 +1912,122 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
bookGroupDao
.
updateBookIdById
(
bookGroupId
,
bookId
);
}
}
@Override
public
PageBeanNew
listRecommendCourse4Pcloud
(
Integer
currentPage
,
Integer
numPerPage
,
String
query
)
{
//热门课程
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"query"
,
query
);
paramMap
.
put
(
"sourceFrom"
,
ResourcePageConstants
.
RecommendResourceFromEnum
.
HOT_COURSE
.
getCode
());
PageBeanNew
<
ResourcePageCourseDTO
>
pageBeanNew
=
resourcePageCourseDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
paramMap
,
"listCourse4Pcloud"
);
if
(
ListUtils
.
isEmpty
(
pageBeanNew
.
getRecordList
()))
{
return
pageBeanNew
;
}
fillHotCourse4Pcloud
(
pageBeanNew
.
getRecordList
());
return
pageBeanNew
;
}
@Override
public
PageBeanNew
listRecommendResource4Pcloud
(
Integer
currentPage
,
Integer
numPerPage
,
String
query
,
Integer
sourceFrom
)
{
if
(
null
==
sourceFrom
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数缺失"
);
}
if
(
ListUtils
.
isEmpty
(
ResourcePageConstants
.
RecommendResourceFromEnum
.
getSourceTypesByCode
(
sourceFrom
)))
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数有误"
);
}
//育儿宝库/搜教辅资料
PageBeanNew
pageBeanNew
=
appletRecordAggrStatisBiz
.
getResource4H54Pcloud
(
currentPage
,
numPerPage
,
query
,
sourceFrom
);
return
pageBeanNew
;
}
@Override
public
void
updateRecommendResource4Pcloud
(
ResourceRecomManage
resourceRecomManage
)
{
if
(
null
==
resourceRecomManage
||
null
==
resourceRecomManage
.
getSourceFrom
()
||
null
==
resourceRecomManage
.
getServeId
()
||
StringUtil
.
isEmpty
(
resourceRecomManage
.
getServeType
())
||
null
==
resourceRecomManage
.
getTypeCode
())
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数缺失"
);
}
resourceRecomManageDao
.
deleteByServe
(
resourceRecomManage
.
getServeId
(),
resourceRecomManage
.
getServeType
(),
resourceRecomManage
.
getSourceFrom
());
if
(
null
==
resourceRecomManage
.
getShowState
())
{
resourceRecomManage
.
setShowState
(
1
);
}
resourceRecomManageDao
.
insert
(
resourceRecomManage
);
}
@Override
public
Map
<
Long
,
ResourceRecomManage
>
mapResourceRecomManage
(
List
<
Long
>
serveIds
,
String
serveType
,
Integer
sourceFrom
)
{
if
(
ListUtils
.
isEmpty
(
serveIds
)
||
StringUtil
.
isEmpty
(
serveType
)
||
null
==
sourceFrom
)
{
return
new
HashMap
<>();
}
Map
<
Long
,
ResourceRecomManage
>
manageMap
=
resourceRecomManageDao
.
mapResourceRecomManage
(
serveIds
,
serveType
,
sourceFrom
);
return
manageMap
;
}
/**
* 热门课程
* @author:zhuyajie
* @date:2021/7/9 15:30
* * @param null
*/
private
void
fillHotCourse4Pcloud
(
List
<
ResourcePageCourseDTO
>
recordList
)
{
if
(
ListUtils
.
isEmpty
(
recordList
))
{
return
;
}
List
<
Long
>
appIds
=
new
ArrayList
<>();
List
<
Long
>
productIds
=
new
ArrayList
<>();
for
(
ResourcePageCourseDTO
dto
:
recordList
)
{
Long
serveId
=
dto
.
getServeId
();
if
(
ResourcePageConstants
.
ServeTypeEnum
.
APP
.
getValue
().
equals
(
dto
.
getServeType
())
&&
!
appIds
.
contains
(
serveId
))
{
appIds
.
add
(
serveId
);
}
if
(
ResourcePageConstants
.
ServeTypeEnum
.
PRODUCT
.
getValue
().
equals
(
dto
.
getServeType
())
&&
!
productIds
.
contains
(
serveId
))
{
productIds
.
add
(
serveId
);
}
}
Map
<
Long
,
AppDto
>
appDtoMap
=
appConsr
.
mapBaseByIds
(
appIds
);
List
<
Long
>
adviserIds
=
MapUtils
.
isEmpty
(
appDtoMap
)?
new
ArrayList
<>():
appDtoMap
.
values
().
stream
().
map
(
AppDto:
:
getCreatedUser
).
distinct
().
collect
(
Collectors
.
toList
());
Map
<
Long
,
String
>
adviserMap
=
adviserConsr
.
getNames
(
adviserIds
);
Map
<
Long
,
ProductDto
>
productDtoMap
=
productConsr
.
getProBasesByIds
(
productIds
);
List
<
Long
>
merchantIds
=
MapUtils
.
isEmpty
(
productDtoMap
)?
new
ArrayList
<>():
productDtoMap
.
values
().
stream
().
map
(
ProductDto:
:
getCreatedUser
).
distinct
().
collect
(
Collectors
.
toList
());
Map
<
Long
,
String
>
merchantMap
=
merchantConsr
.
getNamesByIdList
(
merchantIds
);
for
(
ResourcePageCourseDTO
courseDTO
:
recordList
)
{
Long
serveId
=
courseDTO
.
getServeId
();
String
serveType
=
courseDTO
.
getServeType
();
if
(
ResourcePageConstants
.
ServeTypeEnum
.
APP
.
getValue
().
equals
(
serveType
)
&&
!
MapUtils
.
isEmpty
(
appDtoMap
)
&&
appDtoMap
.
containsKey
(
serveId
))
{
AppDto
appDto
=
appDtoMap
.
get
(
serveId
);
//平台端没给封面,取原有封面
if
(
StringUtil
.
isEmpty
(
courseDTO
.
getServePic
()))
{
courseDTO
.
setServePic
(
appDto
.
getSquareImg
());
}
courseDTO
.
setProLabelName
(
appDto
.
getProLabelName
());
courseDTO
.
setDepLabelName
(
appDto
.
getDepLabelName
());
courseDTO
.
setPurLabelName
(
appDto
.
getPurLabelName
());
courseDTO
.
setServeCreateUserId
(
appDto
.
getCreatedUser
());
//应用创建人名称
if
(!
MapUtils
.
isEmpty
(
adviserMap
)
&&
adviserMap
.
containsKey
(
appDto
.
getCreatedUser
()))
{
courseDTO
.
setServeCreateUserName
(
adviserMap
.
get
(
appDto
.
getCreatedUser
()));
}
}
else
if
(
ResourcePageConstants
.
ServeTypeEnum
.
PRODUCT
.
getValue
().
equals
(
serveType
)
&&
!
MapUtils
.
isEmpty
(
productDtoMap
)
&&
productDtoMap
.
containsKey
(
serveId
))
{
ProductDto
productDto
=
productDtoMap
.
get
(
serveId
);
if
(
StringUtil
.
isEmpty
(
courseDTO
.
getServePic
()))
{
courseDTO
.
setServePic
(
productDto
.
getCoverImg
());
}
List
<
ProductLabelDto
>
labelDtos
=
productDto
.
getProductLabels
();
if
(!
ListUtils
.
isEmpty
(
labelDtos
))
{
courseDTO
.
setProLabelName
(
labelDtos
.
get
(
0
).
getProLabelName
());
courseDTO
.
setDepLabelName
(
labelDtos
.
get
(
0
).
getDepLabelName
());
courseDTO
.
setPurLabelName
(
labelDtos
.
get
(
0
).
getPurLabelName
());
}
courseDTO
.
setServeCreateUserId
(
productDto
.
getCreatedUser
());
if
(!
MapUtils
.
isEmpty
(
merchantMap
)
&&
merchantMap
.
containsKey
(
productDto
.
getCreatedUser
()))
{
courseDTO
.
setServeCreateUserName
(
merchantMap
.
get
(
productDto
.
getCreatedUser
()));
}
}
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/constant/ResourcePageConstants.java
View file @
b90b9f47
...
...
@@ -3,6 +3,9 @@ package com.pcloud.book.group.constant;
import
com.pcloud.book.applet.contants.AppletResourceApplyConstants
;
import
com.pcloud.common.constant.CacheConstant
;
import
java.util.Arrays
;
import
java.util.List
;
/**
* @ClassName com.pcloud.book.group.constant.ResourcePageConstants
* @Author zhuyajie
...
...
@@ -278,4 +281,52 @@ public class ResourcePageConstants {
}
}
/**
* 资源推荐管理-类型
* @author:zhuyajie
* @date:2021/7/9 15:02
* * @param null
*/
public
enum
RecommendResourceFromEnum
{
//(1育儿宝库2教辅资料3热门课程)
CHILD_RESOURCE
(
1
,
new
Integer
[]{
ResourceSourceTypeEnum
.
CHILD
.
getCode
()}),
TEACHE_RESOURCE
(
2
,
new
Integer
[]{
ResourceSourceTypeEnum
.
PAPER
.
getCode
(),
ResourceSourceTypeEnum
.
PDF
.
getCode
(),
ResourceSourceTypeEnum
.
ARTICLE
.
getCode
(),
ResourceSourceTypeEnum
.
KNOWLEDGE
.
getCode
()
}),
HOT_COURSE
(
3
,
new
Integer
[]{});
private
Integer
code
;
private
Integer
[]
sourceTypes
;
public
Integer
getCode
()
{
return
code
;
}
public
void
setCode
(
Integer
code
)
{
this
.
code
=
code
;
}
public
Integer
[]
getSourceTypes
()
{
return
sourceTypes
;
}
public
void
setSourceTypes
(
Integer
[]
sourceTypes
)
{
this
.
sourceTypes
=
sourceTypes
;
}
RecommendResourceFromEnum
(
Integer
code
,
Integer
[]
sourceTypes
)
{
this
.
code
=
code
;
this
.
sourceTypes
=
sourceTypes
;
}
public
static
List
<
Integer
>
getSourceTypesByCode
(
Integer
code
)
{
for
(
RecommendResourceFromEnum
resourceFromEnum:
RecommendResourceFromEnum
.
values
()){
if
(
resourceFromEnum
.
getCode
().
equals
(
code
)){
return
Arrays
.
asList
(
resourceFromEnum
.
getSourceTypes
());
}
}
return
null
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dao/ResourceRecomManageDao.java
0 → 100644
View file @
b90b9f47
package
com
.
pcloud
.
book
.
group
.
dao
;
import
com.pcloud.book.group.entity.ResourceRecomManage
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
import
java.util.Map
;
/**
* 资源页推荐资源管理(ResourceRecomManage)表数据库访问层
*
* @author makejava
* @since 2021-07-09 14:39:21
*/
public
interface
ResourceRecomManageDao
extends
BaseDao
<
ResourceRecomManage
>{
void
deleteByServe
(
Long
serveId
,
String
serveType
,
Integer
sourceFrom
);
Map
<
Long
,
ResourceRecomManage
>
mapResourceRecomManage
(
List
<
Long
>
serveIds
,
String
serveType
,
Integer
sourceFrom
);
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/group/dao/impl/ResourceRecomManageDaoImpl.java
0 → 100644
View file @
b90b9f47
package
com
.
pcloud
.
book
.
group
.
dao
.
impl
;
import
com.pcloud.book.group.dao.ResourceRecomManageDao
;
import
com.pcloud.book.group.entity.ResourceRecomManage
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* @ClassName com.pcloud.book.group.dao.impl.ResourceRecomManageDaoImpl
* @Author zhuyajie
* @Description 推荐资源管理
* @Date 2021/7/9 14:48
* @Version 1.0
**/
@Component
public
class
ResourceRecomManageDaoImpl
extends
BaseDaoImpl
<
ResourceRecomManage
>
implements
ResourceRecomManageDao
{
@Override
public
void
deleteByServe
(
Long
serveId
,
String
serveType
,
Integer
sourceFrom
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"serveId"
,
serveId
);
map
.
put
(
"sourceFrom"
,
sourceFrom
);
map
.
put
(
"serveType"
,
serveType
);
getSessionTemplate
().
delete
(
getStatement
(
"deleteByServe"
),
map
);
}
@Override
public
Map
<
Long
,
ResourceRecomManage
>
mapResourceRecomManage
(
List
<
Long
>
serveIds
,
String
serveType
,
Integer
sourceFrom
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"serveIds"
,
serveIds
);
map
.
put
(
"sourceFrom"
,
sourceFrom
);
map
.
put
(
"serveType"
,
serveType
);
return
getSessionTemplate
().
selectMap
(
getStatement
(
"mapResourceRecomManage"
),
map
,
"serveId"
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dto/BookGroupDTO.java
View file @
b90b9f47
...
...
@@ -354,6 +354,19 @@ public class BookGroupDTO extends BaseDto {
*/
private
String
entranceContent
;
/**
* 创建人(ERP运维人员)
*/
private
String
uploadUserName
;
public
String
getUploadUserName
()
{
return
uploadUserName
;
}
public
void
setUploadUserName
(
String
uploadUserName
)
{
this
.
uploadUserName
=
uploadUserName
;
}
public
String
getEntranceTitle
()
{
return
entranceTitle
;
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/group/dto/ResourcePageCourseDTO.java
View file @
b90b9f47
...
...
@@ -62,4 +62,19 @@ public class ResourcePageCourseDTO extends BaseDto {
private
String
proLabelName
;
private
String
depLabelName
;
private
String
purLabelName
;
private
Integer
browseCount
;
/**
* 资源创建人
*/
private
Long
serveCreateUserId
;
/**
* 资源创建人名称
*/
private
String
serveCreateUserName
;
/**
* 是否显示
*/
private
Boolean
showState
;
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/group/entity/ResourceRecomManage.java
0 → 100644
View file @
b90b9f47
package
com
.
pcloud
.
book
.
group
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
lombok.Data
;
/**
* 资源页推荐资源管理(ResourceRecomManage)实体类
*
* @author makejava
* @since 2021-07-09 14:39:21
*/
@Data
public
class
ResourceRecomManage
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
-
25381380975839107L
;
/**
* 主键
*/
private
Long
id
;
/**
* 资源id
*/
private
Long
serveId
;
/**
* 资源名称
*/
private
String
serveName
;
/**
* 资源类型
*/
private
String
serveType
;
/**
* 具体类型
*/
private
String
typeCode
;
/**
* 封面图
*/
private
String
coverImg
;
/**
* 来源(1育儿宝库2教辅资料3热门课程)
*/
private
Integer
sourceFrom
;
/**
* 是否显示
*/
private
Integer
showState
;
/**
* 创建人
*/
private
Long
createUser
;
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/group/facade/impl/ResourcePageFacade.java
View file @
b90b9f47
...
...
@@ -2,6 +2,7 @@ package com.pcloud.book.group.facade.impl;
import
com.pcloud.book.group.biz.ResourcePageBiz
;
import
com.pcloud.book.group.entity.ResourcePageCollect
;
import
com.pcloud.book.group.entity.ResourceRecomManage
;
import
com.pcloud.book.group.vo.ResourcePageVO
;
import
com.pcloud.book.group.vo.UpdateResourceColumnVO
;
import
com.pcloud.book.group.vo.UpdateResourcePageVO
;
...
...
@@ -245,4 +246,36 @@ public class ResourcePageFacade {
Cookie
.
getId
(
userInfo
,
Cookie
.
_WECHAT_USER_ID
);
return
new
ResponseDto
<>(
resourcePageBiz
.
hasOfficialAccountsTool
(
resourcePageId
));
}
@ApiOperation
(
"平台端-资源推荐管理-热门课程"
)
@GetMapping
(
"listRecommendCourse4Pcloud"
)
public
ResponseDto
<?>
listRecommendCourse4Pcloud
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
,
@RequestParam
(
value
=
"query"
,
required
=
false
)
String
query
)
{
SessionUtil
.
getToken4Redis
(
token
);
return
new
ResponseDto
<>(
resourcePageBiz
.
listRecommendCourse4Pcloud
(
currentPage
,
numPerPage
,
query
));
}
@ApiOperation
(
"平台端-资源推荐管理-教辅、育儿宝库"
)
@GetMapping
(
"listRecommendResource4Pcloud"
)
public
ResponseDto
<?>
listRecommendResource4Pcloud
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
Integer
numPerPage
,
@RequestParam
(
value
=
"query"
,
required
=
false
)
String
query
,
@RequestParam
(
"sourceFrom"
)
Integer
sourceFrom
)
{
SessionUtil
.
getToken4Redis
(
token
);
return
new
ResponseDto
<>(
resourcePageBiz
.
listRecommendResource4Pcloud
(
currentPage
,
numPerPage
,
query
,
sourceFrom
));
}
@ApiOperation
(
"平台端-资源推荐管理-修改"
)
@PostMapping
(
"updateRecommendResource4Pcloud"
)
public
ResponseDto
<?>
updateRecommendResource4Pcloud
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
ResourceRecomManage
resourceRecomManage
)
{
Long
partyId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
resourceRecomManage
.
setCreateUser
(
partyId
);
resourcePageBiz
.
updateRecommendResource4Pcloud
(
resourceRecomManage
);
return
new
ResponseDto
<>();
}
}
pcloud-service-book/src/main/java/com/pcloud/book/skill/biz/impl/PcloudGroupActivityBizImpl.java
View file @
b90b9f47
...
...
@@ -834,10 +834,15 @@ public class PcloudGroupActivityBizImpl implements PcloudGroupActivityBiz {
if
(!
ListUtils
.
isEmpty
(
activityGroupIds
))
{
localMap
=
pcloudGroupActivityDao
.
getByIds
(
activityGroupIds
,
1
);
}
List
<
Long
>
firstClassifys
=
localMap
.
values
().
stream
().
filter
(
s
->
null
!=
s
.
getFirstClassify
()
&&
s
.
getFirstClassify
()>
0
).
map
(
GroupActivity4AppletDTO:
:
getFirstClassify
).
distinct
().
collect
(
Collectors
.
toList
());
Map
<
Long
,
AssistTempletDTO
>
classifyMap
=
assistTempletConsr
.
mapByIds4Classify
(
firstClassifys
);
for
(
GroupActivity4AppletDTO
groupActivity4AppletDTO:
localMap
.
values
()){
String
filterStr
=
StringUtilParent
.
replaceHtml
(
groupActivity4AppletDTO
.
getDesc
());
String
subStr
=
filterStr
.
length
()
>
60
?
filterStr
.
substring
(
0
,
60
)
+
"..."
:
filterStr
;
groupActivity4AppletDTO
.
setCutDesc
(
subStr
);
if
(!
MapUtils
.
isEmpty
(
classifyMap
)
&&
classifyMap
.
containsKey
(
groupActivity4AppletDTO
.
getFirstClassify
())){
groupActivity4AppletDTO
.
setFirstClassifyName
(
classifyMap
.
get
(
groupActivity4AppletDTO
.
getFirstClassify
()).
getTempletName
());
}
}
return
localMap
;
}
...
...
pcloud-service-book/src/main/resources/mapper/applet/AppletRecordSevenDayDao.xml
View file @
b90b9f47
...
...
@@ -100,16 +100,21 @@
SELECT
a.record_type recordType,
a.from_id fromId,
a.from_name
fromName,
IFNULL(m.serve_name, a.from_name)
fromName,
a.link_url linkUrl,
a.type_code typeCode,
a.click_count clickCount,
a.user_count userCount
a.user_count userCount,
m.cover_img servePic
FROM
applet_record_seven_day a
INNER JOIN resource_page_grade_label g ON a.dep_label_id = g.dep_label_id
LEFT JOIN resource_recom_manage m ON A.from_id = m.serve_id
AND m.source_from = #{sourceFrom}
AND a.type_code = m.type_code
WHERE
a.source_type = #{sourceType}
AND IFNULL(m.show_state, 1) = 1
<if
test=
"gradeLabelIds != null and gradeLabelIds.size>0"
>
AND g.user_grade_label_id IN
<foreach
collection=
"gradeLabelIds"
separator=
","
index=
"index"
item=
"item"
close=
")"
open=
"("
>
...
...
@@ -132,4 +137,38 @@
limit #{limit}
</if>
</select>
<select
id=
"getList4Pcloud"
parameterType=
"map"
resultType=
"com.pcloud.book.applet.dto.AppletRecordDTO"
>
SELECT
a.record_type recordType,
a.from_id fromId,
IFNULL(m.serve_name, a.from_name) fromName,
a.link_url linkUrl,
a.type_code typeCode,
a.click_count clickCount,
a.user_count userCount,
m.cover_img servePic,
IFNULL(m.show_state, 1) serveShowState
FROM
applet_record_seven_day a
LEFT JOIN resource_recom_manage m ON A.from_id = m.serve_id
AND m.source_from = #{sourceFrom}
AND a.type_code = m.type_code
WHERE 1=1
<if
test=
"sourceTypeList != null and sourceTypeList.size>0"
>
AND a.source_type IN
<foreach
collection=
"sourceTypeList"
index=
"index"
separator=
","
item=
"item"
close=
")"
open=
"("
>
${item}
</foreach>
</if>
<if
test=
"query != null"
>
AND IFNULL(m.serve_name, a.from_name) LIKE CONCAT("%", #{query}, "%")
</if>
GROUP BY
a.record_type,
a.from_id
ORDER BY
a.user_count DESC
</select>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/book/Book.Mapper.xml
View file @
b90b9f47
...
...
@@ -1453,7 +1453,7 @@
bt.TYPE_NAME, ba.IS_PRINT isPrint,
ba.SECOND_TEMPLET_ID, ba.GRA_LABEL_ID,ba.SUB_LABEL_ID,ba.VER_LABEL_ID,ba.AREA_LABEL_ID,ba.vol_label_id,ba.is_approval,
la1.`name` graLabelName,la2.`name` subLabelName,la3.`name` verLabelName,la4.`name` areaLabelName,la5.`name` volLabelName,
ba.third_TEMPLET_ID
ba.third_TEMPLET_ID
, ba.pro_label_id, ba.dep_label_id,ba.pur_label_id
FROM
BOOK_ADVISER ba
JOIN
...
...
pcloud-service-book/src/main/resources/mapper/cultivate/CultivateNotifySend.xml
View file @
b90b9f47
...
...
@@ -18,6 +18,32 @@
id,wx_user_id, wechat_user_id, send_type,message_id,message_type,is_read,read_time, create_time,update_time
</sql>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.cultivate.entity.CultivateNotifySend"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into cultivate_notify_send
(
wx_user_id,
wechat_user_id,
send_type,
message_id,
message_type,
is_read,
show_home,
create_time,
update_time
)
values
(#{wxUserId},
#{wechatUserId},
#{sendType},
#{messageId},
#{messageType},
0,
1,
NOW(),
NOW()
)
</insert>
<insert
id=
"batchInsert"
parameterType=
"com.pcloud.book.cultivate.entity.CultivateNotifySend"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into cultivate_notify_send
(
...
...
pcloud-service-book/src/main/resources/mapper/group/ResourcePageCourseDao.xml
View file @
b90b9f47
...
...
@@ -98,19 +98,25 @@
<select
id=
"listCourseByGradeLabelId"
resultType=
"com.pcloud.book.group.dto.ResourcePageCourseDTO"
parameterType=
"map"
>
SELECT
c.serve_id serveId,
c.serve_name
serveName,
IFNULL(m.serve_name, c.serve_name)
serveName,
c.serve_type serveType,
c.type_code typeCode,
c.channel_id channelId,
c.type_name typeName,
c.pro_label_id proLabelId,
c.dep_lable_id depLabelId,
c.pur_label_id purLabelId
c.pur_label_id purLabelId,
c.browse_count browseCount,
m.cover_img servePic
FROM
resource_page_course c
INNER JOIN resource_page_grade_label g ON c.dep_lable_id = g.dep_label_id
LEFT JOIN resource_recom_manage m ON c.serve_id = m.serve_id
AND m.source_from = #{sourceFrom}
AND c.type_code = m.type_code
WHERE
g.user_grade_label_id = #{userGradeLabelId}
AND IFNULL(m.show_state, 1) = 1
GROUP BY
c.serve_id
ORDER BY
...
...
@@ -136,4 +142,34 @@
dep_label_id = #{depLabelId}
LIMIT 1
</select>
<select
id=
"listCourse4Pcloud"
resultType=
"com.pcloud.book.group.dto.ResourcePageCourseDTO"
parameterType=
"map"
>
SELECT
c.serve_id serveId,
c.serve_type serveType,
c.type_code typeCode,
c.type_name typeName,
c.pro_label_id proLabelId,
c.dep_lable_id depLabelId,
c.pur_label_id purLabelId,
c.browse_count browseCount,
m.cover_img servePic,
IFNULL(m.serve_name, c.serve_name) serveName,
IFNULL(m.show_state, 1) showState
FROM
resource_page_course c
LEFT JOIN resource_recom_manage m ON c.serve_id = m.serve_id
AND m.source_from = #{sourceFrom}
AND c.type_code = m.type_code
WHERE
1 = 1
<if
test=
"query != null"
>
AND IFNULL(m.serve_name, c.serve_name) LIKE CONCAT("%", #{query}, "%")
</if>
GROUP BY
c.serve_id
ORDER BY
c.browse_count DESC
</select>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/group/ResourceRecomManageDao.xml
0 → 100644
View file @
b90b9f47
<?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.group.dao.impl.ResourceRecomManageDaoImpl"
>
<resultMap
type=
"com.pcloud.book.group.entity.ResourceRecomManage"
id=
"ResourceRecomManageMap"
>
<result
property=
"id"
column=
"id"
jdbcType=
"INTEGER"
/>
<result
property=
"serveId"
column=
"serve_id"
jdbcType=
"INTEGER"
/>
<result
property=
"serveName"
column=
"serve_name"
jdbcType=
"VARCHAR"
/>
<result
property=
"serveType"
column=
"serve_type"
jdbcType=
"VARCHAR"
/>
<result
property=
"typeCode"
column=
"type_code"
jdbcType=
"VARCHAR"
/>
<result
property=
"coverImg"
column=
"cover_img"
jdbcType=
"VARCHAR"
/>
<result
property=
"sourceFrom"
column=
"source_from"
jdbcType=
"INTEGER"
/>
<result
property=
"showState"
column=
"show_state"
jdbcType=
"INTEGER"
/>
<result
property=
"createTime"
column=
"create_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"createUser"
column=
"create_user"
jdbcType=
"INTEGER"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, serve_id, serve_name, serve_type, type_code, cover_img, source_from, show_state
</sql>
<!--查询单个-->
<select
id=
"getById"
resultMap=
"ResourceRecomManageMap"
>
select
<include
refid=
"Base_Column_List"
/>
from book.resource_recom_manage
where id = #{id}
</select>
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into book.resource_recom_manage(serve_id, serve_name, serve_type, type_code, cover_img, source_from, show_state, create_time, create_user)
values (#{serveId}, #{serveName}, #{serveType}, #{typeCode}, #{coverImg}, #{sourceFrom}, #{showState}, now(), #{createUser})
</insert>
<!--通过主键修改数据-->
<update
id=
"update"
>
update book.resource_recom_manage
<set>
<if
test=
"serveId != null"
>
serve_id = #{serveId},
</if>
<if
test=
"serveName != null and serveName != ''"
>
serve_name = #{serveName},
</if>
<if
test=
"serveType != null and serveType != ''"
>
serve_type = #{serveType},
</if>
<if
test=
"typeCode != null and typeCode != ''"
>
type_code = #{typeCode},
</if>
<if
test=
"coverImg != null and coverImg != ''"
>
cover_img = #{coverImg},
</if>
<if
test=
"sourceFrom != null"
>
source_from = #{sourceFrom},
</if>
<if
test=
"showState != null"
>
show_state = #{showState},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime},
</if>
<if
test=
"createUser != null"
>
create_user = #{createUser},
</if>
</set>
where id = #{id}
</update>
<!--通过主键删除-->
<delete
id=
"deleteById"
>
delete from book.resource_recom_manage where id = #{id}
</delete>
<select
id=
"deleteByServe"
parameterType=
"map"
>
DELETE
from book.resource_recom_manage
where serve_id = #{serveId}
and source_from = #{sourceFrom}
and serve_type = #{serveType}
</select>
<select
id=
"mapResourceRecomManage"
parameterType=
"map"
resultMap=
"ResourceRecomManageMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM
resource_recom_manage
WHERE
serve_id IN
<foreach
collection=
"serveIds"
index=
"index"
separator=
","
item=
"item"
close=
")"
open=
"("
>
#{item}
</foreach>
AND source_from = #{sourceFrom}
AND serve_type = #{serveType}
</select>
</mapper>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment