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
6889c146
Commit
6889c146
authored
Jun 08, 2020
by
田超
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feat-zyj-1002945' into 'master'
1002945编辑端社群书普通群的创建和关联流程问题 See merge request rays/pcloud-book!757
parents
193b3d6a
105e06ac
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
438 additions
and
44 deletions
+438
-44
BookDto.java
...-book/src/main/java/com/pcloud/book/book/dto/BookDto.java
+37
-0
BookGroupClassifyService.java
...m/pcloud/book/group/service/BookGroupClassifyService.java
+4
-0
AppletGroupSearchRecordBizImpl.java
.../book/applet/biz/impl/AppletGroupSearchRecordBizImpl.java
+17
-16
BookGroupBiz.java
...src/main/java/com/pcloud/book/group/biz/BookGroupBiz.java
+24
-0
BookGroupClassifyBiz.java
.../java/com/pcloud/book/group/biz/BookGroupClassifyBiz.java
+2
-0
BookGroupBizImpl.java
...java/com/pcloud/book/group/biz/impl/BookGroupBizImpl.java
+60
-1
BookGroupClassifyBizImpl.java
.../pcloud/book/group/biz/impl/BookGroupClassifyBizImpl.java
+36
-0
BookGroupDao.java
...src/main/java/com/pcloud/book/group/dao/BookGroupDao.java
+15
-0
GroupQrcodeDao.java
...c/main/java/com/pcloud/book/group/dao/GroupQrcodeDao.java
+7
-0
BookGroupDaoImpl.java
...java/com/pcloud/book/group/dao/impl/BookGroupDaoImpl.java
+15
-0
GroupQrcodeDaoImpl.java
...va/com/pcloud/book/group/dao/impl/GroupQrcodeDaoImpl.java
+7
-0
BookGroupDTO.java
...src/main/java/com/pcloud/book/group/dto/BookGroupDTO.java
+37
-0
BookGroup.java
...src/main/java/com/pcloud/book/group/entity/BookGroup.java
+23
-3
BookGroupFacade.java
...in/java/com/pcloud/book/group/facade/BookGroupFacade.java
+24
-0
BookGroupFacadeImpl.java
...om/pcloud/book/group/facade/impl/BookGroupFacadeImpl.java
+31
-12
BookGroupClassifyServiceImpl.java
...book/group/service/impl/BookGroupClassifyServiceImpl.java
+11
-0
Book.Mapper.xml
...rvice-book/src/main/resources/mapper/book/Book.Mapper.xml
+2
-2
BookGroupClassify.Mapper.xml
.../main/resources/mapper/group/BookGroupClassify.Mapper.xml
+9
-7
BookGroupMapper.xml
...-book/src/main/resources/mapper/group/BookGroupMapper.xml
+43
-1
GroupQrcode.Mapper.xml
...ok/src/main/resources/mapper/group/GroupQrcode.Mapper.xml
+34
-2
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/book/dto/BookDto.java
View file @
6889c146
...
...
@@ -4,6 +4,7 @@
package
com
.
pcloud
.
book
.
book
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -669,6 +670,42 @@ public class BookDto extends BaseDto {
* 上下册标签id
*/
private
Long
volLabelId
;
/**
* 是否独立活码群
*/
private
Boolean
singleGroup
;
/**
* 关联群
*/
private
Long
relatedBookGroupId
;
/**
* 关联群的社群码
*/
private
BookGroupDTO
relatedBookGroup
;
public
BookGroupDTO
getRelatedBookGroup
()
{
return
relatedBookGroup
;
}
public
void
setRelatedBookGroup
(
BookGroupDTO
relatedBookGroup
)
{
this
.
relatedBookGroup
=
relatedBookGroup
;
}
public
Long
getRelatedBookGroupId
()
{
return
relatedBookGroupId
;
}
public
void
setRelatedBookGroupId
(
Long
relatedBookGroupId
)
{
this
.
relatedBookGroupId
=
relatedBookGroupId
;
}
public
Boolean
getSingleGroup
()
{
return
singleGroup
;
}
public
void
setSingleGroup
(
Boolean
singleGroup
)
{
this
.
singleGroup
=
singleGroup
;
}
/**
* 是否开启小睿流程
...
...
pcloud-facade-book/src/main/java/com/pcloud/book/group/service/BookGroupClassifyService.java
View file @
6889c146
...
...
@@ -75,4 +75,8 @@ public interface BookGroupClassifyService {
@ApiOperation
(
"根据群分类id找群"
)
@GetMapping
(
"getGroupQrcodeInfo4Classify"
)
ResponseEntity
<
ResponseDto
<
GroupQrcode4ClassifyDTO
>>
getGroupQrcodeInfo4Classify
(
@RequestParam
(
"wechatUserId"
)
Long
wechatUserId
,
@RequestParam
(
"classifyId"
)
Long
classifyId
);
@ApiOperation
(
"根据群分类id找群"
)
@GetMapping
(
"getGroupQrcodeByClassify"
)
ResponseEntity
<
ResponseDto
<
GroupQrcode4ClassifyDTO
>>
getGroupQrcodeByClassify
(
@RequestParam
(
"wechatUserId"
)
Long
wechatUserId
,
@RequestParam
(
"classifyId"
)
Long
classifyId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/applet/biz/impl/AppletGroupSearchRecordBizImpl.java
View file @
6889c146
...
...
@@ -147,21 +147,11 @@ public class AppletGroupSearchRecordBizImpl implements AppletGroupSearchRecordBi
@Override
public
List
<
GroupActivity4AppletDTO
>
getTishBookSchoolList
(
Long
bookGroupId
)
{
BookGroupDTO
bookGroupDTO
=
bookGroupDao
.
getBookBaseInfoById
(
bookGroupId
);
BookAdviserDto
adviserDto
=
bookAdviserDao
.
getBase
(
bookGroupDTO
.
getBookId
(),
bookGroupDTO
.
getChannelId
(),
bookGroupDTO
.
getCreateUser
());
BaseTempletClassify
baseTempletClassify
=
new
BaseTempletClassify
();
if
(
adviserDto
!=
null
)
{
baseTempletClassify
.
setFirstClassify
(
adviserDto
.
getTempletId
());
baseTempletClassify
.
setSecondClassify
(
adviserDto
.
getSecondTempletId
());
baseTempletClassify
.
setGradeLabelId
(
adviserDto
.
getGraLabelId
());
baseTempletClassify
.
setSubjectLabelId
(
adviserDto
.
getSubLabelId
());
baseTempletClassify
.
setVolLabelId
(
adviserDto
.
getVolLabelId
());
rightsSettingBiz
.
setClassifyAndLabel
(
baseTempletClassify
);
}
BookGroupDTO
bookGroupDTO
=
bookGroupDao
.
getDTOById
(
bookGroupId
);
List
<
GroupActivity4AppletDTO
>
tishBookSchoolList
=
new
ArrayList
<>();
//本书自带社群
if
(
JoinGroupTypeEnum
.
GROUP_QRCODE
.
getCode
().
equals
(
bookGroupDTO
.
getJoinGroupType
()))
{
List
<
GroupQrcodeDTO
>
groupQrcodeDTOS
=
groupQrcodeDao
.
getGroupQrcodeListByBookGroupId
(
bookGroupId
);
List
<
GroupQrcodeDTO
>
groupQrcodeDTOS
=
groupQrcodeDao
.
listClassifyLatestGroupByBookGroup
(
bookGroupId
);
if
(!
ListUtils
.
isEmpty
(
groupQrcodeDTOS
))
{
for
(
GroupQrcodeDTO
qrcodeDTO
:
groupQrcodeDTOS
)
{
GroupActivity4AppletDTO
appletDTO
=
new
GroupActivity4AppletDTO
();
...
...
@@ -174,10 +164,21 @@ public class AppletGroupSearchRecordBizImpl implements AppletGroupSearchRecordBi
}
}
}
//根据分类推荐相关
List
<
GroupActivity4AppletDTO
>
groupActivity4AppletDTOS
=
pcloudGroupActivityDao
.
getTishBookSchoolList
(
baseTempletClassify
,
10
);
if
(!
ListUtils
.
isEmpty
(
groupActivity4AppletDTOS
))
{
tishBookSchoolList
.
addAll
(
groupActivity4AppletDTOS
);
//本书关联社群
if
(
null
!=
bookGroupDTO
.
getRelatedBookGroupId
()){
Long
relatedGroupId
=
bookGroupDTO
.
getRelatedBookGroupId
();
List
<
GroupQrcodeDTO
>
qrcodeDTOS
=
groupQrcodeDao
.
listClassifyLatestGroupByBookGroup
(
relatedGroupId
);
if
(!
ListUtils
.
isEmpty
(
qrcodeDTOS
))
{
for
(
GroupQrcodeDTO
qrcodeDTO
:
qrcodeDTOS
)
{
GroupActivity4AppletDTO
appletDTO
=
new
GroupActivity4AppletDTO
();
BeanUtils
.
copyProperties
(
qrcodeDTO
,
appletDTO
);
appletDTO
.
setName
(
qrcodeDTO
.
getGroupName
());
appletDTO
.
setDesc
(
qrcodeDTO
.
getClassifyIntroduce
());
appletDTO
.
setBookGroupId
(
bookGroupId
);
appletDTO
.
setBookGroupQrcodeId
(
qrcodeDTO
.
getId
());
tishBookSchoolList
.
add
(
appletDTO
);
}
}
}
if
(
ListUtils
.
isEmpty
(
tishBookSchoolList
))
{
return
new
ArrayList
<>();
...
...
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/BookGroupBiz.java
View file @
6889c146
...
...
@@ -856,4 +856,28 @@ public interface BookGroupBiz {
* * @param null
*/
void
updateBookGroupOpenWeapp
(
Long
bookGroupId
,
Boolean
openWeapp
);
/**
* 创建独立活码群社群码
* @author:zhuyajie
* @date:2020/5/28 11:36
* * @param null
*/
Long
createSingleBookGroup
(
BookGroup
bookGroup
,
Long
adviserId
);
/**
* 更新小睿关联社群书
* @author:zhuyajie
* @date:2020/5/29 19:21
* * @param null
*/
void
updateRelatedBookGroup
(
Long
bookGroupId
,
Long
relatedBookGroupId
);
/**
* 获取独立活码群社群码列表
* @author:zhuyajie
* @date:2020/6/1 12:43
* * @param null
*/
PageBeanNew
<
BookGroupDTO
>
listSingleBookGroup4Adviser
(
String
name
,
Integer
currentPage
,
Integer
numPerPage
,
Long
adviserId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/BookGroupClassifyBiz.java
View file @
6889c146
...
...
@@ -269,4 +269,6 @@ public interface BookGroupClassifyBiz {
GroupQrcode4ClassifyVO
getGroupQrcodeInfo4Heals
(
Long
classifyId
,
Long
wechatUserId
);
List
<
GroupQrcode4ClassifyDTO
>
getQrcodeByClassifyId4Heals
(
Long
classifyId
);
GroupQrcode4ClassifyVO
getGroupQrcodeByClassify
(
Long
classifyId
,
Long
wechatUserId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/impl/BookGroupBizImpl.java
View file @
6889c146
...
...
@@ -9,7 +9,9 @@ import com.pcloud.appcenter.app.dto.AppDto;
import
com.pcloud.appcenter.base.dto.AppPriceCacheDTO
;
import
com.pcloud.appcenter.cache.service.AppPriceCacheService
;
import
com.pcloud.audioapp.audioLesson.service.AudioLessonService
;
import
com.pcloud.book.applet.biz.AppletGroupSearchRecordBiz
;
import
com.pcloud.book.applet.biz.AppletUserBookcaseBiz
;
import
com.pcloud.book.applet.entity.AppletGroupSearchRecord
;
import
com.pcloud.book.applet.entity.AppletUserBookcase
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.biz.BookBiz
;
...
...
@@ -398,6 +400,8 @@ public class BookGroupBizImpl implements BookGroupBiz {
private
RightsSettingBiz
rightsSettingBiz
;
@Autowired
private
AppletUserBookcaseBiz
appletUserBookcaseBiz
;
@Autowired
private
AppletGroupSearchRecordBiz
appletGroupSearchRecordBiz
;
private
static
final
ThreadPoolExecutor
PLATFORM_STATISTICS_EXPORT_THREAD
=
new
ThreadPoolExecutor
(
2
,
2
,
0
,
TimeUnit
.
SECONDS
,
new
LinkedBlockingQueue
<>(),
...
...
@@ -838,6 +842,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"社群码前后类型不一致!!"
);
}
checkShortBookName
(
bookGroup
);
Long
productId
=
group
.
getProductId
();
if
(
null
==
group
.
getProductId
())
{
AddAppProductParamDTO
addAppProductParamDTO
=
new
AddAppProductParamDTO
();
addAppProductParamDTO
.
setAppProCode
(
ProductTypeConstant
.
BOOK_GROUP
);
...
...
@@ -852,6 +857,7 @@ public class BookGroupBizImpl implements BookGroupBiz {
throw
new
BookBizException
(
BookBizException
.
DB_DML_FAIL
,
"操作失败!"
);
}
bookGroup
.
setProductId
(
product
.
getProductId
());
productId
=
product
.
getProductId
();
}
else
{
UpdateAppProductParamDTO
updateAppProductParamDTO
=
new
UpdateAppProductParamDTO
();
updateAppProductParamDTO
.
setProductId
(
group
.
getProductId
());
...
...
@@ -860,6 +866,11 @@ public class BookGroupBizImpl implements BookGroupBiz {
ResponseHandleUtil
.
parseResponse
(
productService
.
postUpdateBookGroupProduct
(
updateAppProductParamDTO
),
Product
.
class
);
}
bookGroupDao
.
update
(
bookGroup
);
//上架
if
(
null
!=
productId
)
{
Long
channelId
=
bookGroup
.
getChannelId
()
==
null
?
group
.
getChannelId
()
:
bookGroup
.
getChannelId
();
productConsr
.
productAutoOnShelves
(
channelId
,
Arrays
.
asList
(
productId
));
}
if
(
JoinGroupTypeEnum
.
AI_ROBOT
.
getCode
().
equals
(
bookGroup
.
getJoinGroupType
()))
{
this
.
updateFriendGuide
(
bookGroup
.
getId
(),
bookGroup
.
getFriendGuideList
(),
group
.
getCreateUser
());
}
...
...
@@ -995,11 +1006,22 @@ public class BookGroupBizImpl implements BookGroupBiz {
bookSet
.
setFreezeStatus
(
pageBean
.
getRecordList
());
// 填充社群书数据
List
<
Long
>
bookGroupIds
=
new
ArrayList
<>();
pageBean
.
getRecordList
().
forEach
(
obj
->
bookGroupIds
.
add
(((
BookDto
)
obj
).
getBookGroupId
()));
List
<
Long
>
relatedGroupIds
=
new
ArrayList
<>();
pageBean
.
getRecordList
().
forEach
(
obj
->
{
BookDto
bookDto
=
(
BookDto
)
obj
;
bookGroupIds
.
add
(
bookDto
.
getBookGroupId
());
if
(
null
!=
bookDto
.
getRelatedBookGroupId
())
{
relatedGroupIds
.
add
(
bookDto
.
getRelatedBookGroupId
());
}
});
ResponseEntity
<
ResponseDto
<
Map
<
Long
,
BigDecimal
>>>
responseEntity
=
settlementService
.
getWXGroupIncomeByAdviser
(
bookGroupIds
,
adviserId
);
Map
<
Long
,
BigDecimal
>
incomeMap
=
ResponseHandleUtil
.
parseMap
(
responseEntity
,
Long
.
class
,
BigDecimal
.
class
);
Map
<
Long
,
BookGroupStatisticDTO
>
statisMap
=
bookGroupClassifyDao
.
getClassifyCountAbout
(
bookGroupIds
);
Map
<
Long
,
Integer
>
scanMap
=
ResponseHandleUtil
.
parseMap
(
groupMemberService
.
getScanUserCountByGroup
(
bookGroupIds
),
Long
.
class
,
Integer
.
class
);
Map
<
Long
,
BookGroupDTO
>
relatedBookGroupMap
=
new
HashMap
<>();
if
(!
ListUtils
.
isEmpty
(
relatedGroupIds
)){
relatedBookGroupMap
=
bookGroupDao
.
mapDTOByIds
(
relatedGroupIds
);
}
for
(
Object
object
:
pageBean
.
getRecordList
())
{
BookDto
bookDto
=
(
BookDto
)
object
;
Long
bookGroupId
=
bookDto
.
getBookGroupId
();
...
...
@@ -1031,6 +1053,11 @@ public class BookGroupBizImpl implements BookGroupBiz {
bookDto
.
setFriendsCount
(
friendsCount
);
Boolean
hasRobotKeyword
=
selfRobotKeywordBiz
.
hasKeyword
(
bookGroupId
);
bookDto
.
setHasRobotKeyword
(
hasRobotKeyword
);
if
(!
MapUtils
.
isEmpty
(
relatedBookGroupMap
)
&&
relatedBookGroupMap
.
containsKey
(
bookDto
.
getRelatedBookGroupId
()))
{
BookGroupDTO
relatedBookGroup
=
relatedBookGroupMap
.
get
(
bookDto
.
getRelatedBookGroupId
());
relatedBookGroup
.
setGroupQrcodeLink
(
bookGroupQrcodeDomain
+
"/"
+
bookDto
.
getRelatedBookGroupId
());
bookDto
.
setRelatedBookGroup
(
relatedBookGroup
);
}
}
return
pageBean
;
}
...
...
@@ -4805,6 +4832,14 @@ public class BookGroupBizImpl implements BookGroupBiz {
appletUserBookcase
.
setBookId
(
bookGroupDTO
.
getBookId
());
appletUserBookcase
.
setChannelId
(
bookGroupDTO
.
getChannelId
());
appletUserBookcaseBiz
.
addUserBook
(
appletUserBookcase
);
//社群书埋点
AppletGroupSearchRecord
appletGroupSearchRecord
=
new
AppletGroupSearchRecord
();
appletGroupSearchRecord
.
setAdviserId
(
bookGroupDTO
.
getCreateUser
());
appletGroupSearchRecord
.
setBookGroupId
(
bookAppletScene
.
getBookGroupId
());
appletGroupSearchRecord
.
setBookId
(
bookGroupDTO
.
getBookId
());
appletGroupSearchRecord
.
setChannelId
(
bookGroupDTO
.
getChannelId
());
appletGroupSearchRecord
.
setWechatUserId
(
wechatUserId
);
appletGroupSearchRecordBiz
.
insert
(
appletGroupSearchRecord
);
}
else
if
(
bookAppletScene
.
getSceneId
()
!=
null
)
{
QrcodeSceneDto
byId
=
qrcodeSceneConsr
.
getById
(
bookAppletScene
.
getSceneId
());
dto
.
setBookId
(
byId
.
getAdviserBookId
());
...
...
@@ -5011,4 +5046,28 @@ public class BookGroupBizImpl implements BookGroupBiz {
bookGroupDao
.
updateBookGroupOpenWeapp
(
bookGroupId
,
openWeapp
);
}
@Override
public
Long
createSingleBookGroup
(
BookGroup
bookGroup
,
Long
adviserId
)
{
BookGroup
bookGroupNew
=
this
.
createBookGroupAfterCreateBook
(
0L
,
0L
,
adviserId
,
2
,
null
,
JoinGroupTypeEnum
.
GROUP_QRCODE
.
getCode
());
bookGroup
.
setId
(
bookGroupNew
.
getId
());
bookGroup
.
setSingleGroup
(
true
);
this
.
updateBookGroup
(
bookGroup
);
return
bookGroupNew
.
getId
();
}
@Override
public
void
updateRelatedBookGroup
(
Long
bookGroupId
,
Long
relatedBookGroupId
)
{
bookGroupDao
.
updateRelatedBookGroup
(
bookGroupId
,
relatedBookGroupId
);
}
@Override
public
PageBeanNew
<
BookGroupDTO
>
listSingleBookGroup4Adviser
(
String
name
,
Integer
currentPage
,
Integer
numPerPage
,
Long
adviserId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"adviserId"
,
adviserId
);
map
.
put
(
"name"
,
name
);
PageBeanNew
<
BookGroupDTO
>
pageBeanNew
=
bookGroupDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
map
,
"listSingleBookGroup4Adviser"
);
return
pageBeanNew
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/impl/BookGroupClassifyBizImpl.java
View file @
6889c146
...
...
@@ -1320,4 +1320,40 @@ public class BookGroupClassifyBizImpl implements BookGroupClassifyBiz {
List
<
GroupQrcode4ClassifyDTO
>
list
=
bookGroupClassifyDao
.
getQrcodeByClassifyId4Heals
(
classifyId
,
classify
.
getChangeNumber
());
return
list
;
}
@Override
public
GroupQrcode4ClassifyVO
getGroupQrcodeByClassify
(
Long
classifyId
,
Long
wechatUserId
)
{
//获取分类基本信息
ClassifyVO
classify
=
bookGroupClassifyDao
.
getClassify
(
classifyId
);
if
(
classify
==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"社群码不存在,请刷新后重试"
);
}
//获取用户是否分配过二维码
GroupQrcode4ClassifyVO
groupQrcode4ClassifyVO
=
bookQrcodeUserDao
.
getUserQrcode
(
classifyId
,
wechatUserId
);
if
(
groupQrcode4ClassifyVO
==
null
)
{
//获取分类对应的二维码
groupQrcode4ClassifyVO
=
bookGroupClassifyDao
.
getClassifyQrcode
(
classifyId
,
classify
.
getChangeNumber
());
if
(
groupQrcode4ClassifyVO
==
null
)
{
groupQrcode4ClassifyVO
=
new
GroupQrcode4ClassifyVO
();
groupQrcode4ClassifyVO
.
setClassifyId
(
classifyId
);
}
else
{
BookQrcodeUser
bookQrcodeUser
=
new
BookQrcodeUser
();
bookQrcodeUser
.
setClassifyId
(
classifyId
);
bookQrcodeUser
.
setGroupQrcodeId
(
groupQrcode4ClassifyVO
.
getGroupQrcodeId
());
bookQrcodeUser
.
setWechatUserId
(
wechatUserId
);
bookQrcodeUser
.
setCreateUser
(
wechatUserId
);
bookQrcodeUser
.
setFromType
(
QrcodeUsedEnum
.
RAYS
.
value
);
try
{
bookQrcodeUserDao
.
insert
(
bookQrcodeUser
);
}
catch
(
DataIntegrityViolationException
e
)
{
LOGGER
.
error
(
"已存在该用户!"
);
}
}
}
String
spareQr
=
getSpareQr
(
classify
.
getBookGroupId
());
groupQrcode4ClassifyVO
.
setSpareQr
(
spareQr
);
groupQrcode4ClassifyVO
.
setClassify
(
classify
.
getClassify
());
return
groupQrcode4ClassifyVO
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dao/BookGroupDao.java
View file @
6889c146
...
...
@@ -322,4 +322,19 @@ public interface BookGroupDao extends BaseDao<BookGroup> {
* 1V1社群书是否开启小睿流程
*/
void
updateBookGroupOpenWeapp
(
Long
bookGroupId
,
Boolean
openWeapp
);
/**
* 更新小睿关联社群书
* @author:zhuyajie
* @date:2020/5/29 19:21
* * @param null
*/
void
updateRelatedBookGroup
(
Long
bookGroupId
,
Long
relatedBookGroupId
);
/**
* 社群书信息
* @author:zhuyajie
* @date:2020/5/29 19:43
* * @param null
*/
Map
<
Long
,
BookGroupDTO
>
mapDTOByIds
(
List
<
Long
>
ids
);
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dao/GroupQrcodeDao.java
View file @
6889c146
...
...
@@ -303,4 +303,11 @@ public interface GroupQrcodeDao extends BaseDao<GroupQrcode> {
*/
List
<
GroupQrcodeDTO
>
getGroupQrcodeListByBookGroupId
(
Long
bookGroupId
);
/**
* 查社群码下群(每个分类取最近建的群)
* @author:zhuyajie
* @date:2020/6/8 16:45
* * @param null
*/
List
<
GroupQrcodeDTO
>
listClassifyLatestGroupByBookGroup
(
Long
bookGroupId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dao/impl/BookGroupDaoImpl.java
View file @
6889c146
...
...
@@ -396,4 +396,19 @@ public class BookGroupDaoImpl extends BaseDaoImpl<BookGroup> implements BookGrou
map
.
put
(
"openWeapp"
,
openWeapp
);
getSessionTemplate
().
update
(
getStatement
(
"updateBookGroupOpenWeapp"
),
map
);
}
@Override
public
void
updateRelatedBookGroup
(
Long
bookGroupId
,
Long
relatedBookGroupId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"relatedBookGroupId"
,
relatedBookGroupId
);
map
.
put
(
"id"
,
bookGroupId
);
getSessionTemplate
().
update
(
getStatement
(
"updateRelatedBookGroup"
),
map
);
}
@Override
public
Map
<
Long
,
BookGroupDTO
>
mapDTOByIds
(
List
<
Long
>
ids
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"list"
,
ids
);
return
getSessionTemplate
().
selectMap
(
getStatement
(
"mapDTOByIds"
),
map
,
"id"
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dao/impl/GroupQrcodeDaoImpl.java
View file @
6889c146
package
com
.
pcloud
.
book
.
group
.
dao
.
impl
;
import
com.google.common.collect.Maps
;
import
com.pcloud.book.advertising.dto.GroupTagDTO
;
import
com.pcloud.book.advertising.dto.WeixinClassifyInfoDTO
;
import
com.pcloud.book.group.dao.GroupQrcodeDao
;
...
...
@@ -17,6 +18,7 @@ import com.pcloud.book.group.vo.ClassifyQrcodeVO;
import
com.pcloud.book.group.vo.GroupQrcodeBaseInfoVO
;
import
com.pcloud.book.group.vo.ListGroupQrcodeResponseVO
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
...
...
@@ -306,4 +308,9 @@ public class GroupQrcodeDaoImpl extends BaseDaoImpl<GroupQrcode> implements Grou
return
getSessionTemplate
().
selectList
(
getStatement
(
"getGroupQrcodeListByBookGroupId"
),
bookGroupId
);
}
@Override
public
List
<
GroupQrcodeDTO
>
listClassifyLatestGroupByBookGroup
(
Long
bookGroupId
)
{
return
getSessionTemplate
().
selectList
(
getStatement
(
"listClassifyLatestGroupByBookGroup"
),
bookGroupId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/dto/BookGroupDTO.java
View file @
6889c146
...
...
@@ -270,6 +270,43 @@ public class BookGroupDTO extends BaseDto {
* 小程序url
*/
private
String
appletUrl
;
/**
* 是否独立活码群
*/
private
Boolean
singleGroup
;
/**
* 关联群
*/
private
Long
relatedBookGroupId
;
/**
* 社群码链接
*/
private
String
groupQrcodeLink
;
public
String
getGroupQrcodeLink
()
{
return
groupQrcodeLink
;
}
public
void
setGroupQrcodeLink
(
String
groupQrcodeLink
)
{
this
.
groupQrcodeLink
=
groupQrcodeLink
;
}
public
Long
getRelatedBookGroupId
()
{
return
relatedBookGroupId
;
}
public
void
setRelatedBookGroupId
(
Long
relatedBookGroupId
)
{
this
.
relatedBookGroupId
=
relatedBookGroupId
;
}
public
Boolean
getSingleGroup
()
{
return
singleGroup
;
}
public
void
setSingleGroup
(
Boolean
singleGroup
)
{
this
.
singleGroup
=
singleGroup
;
}
/**
* 是否开启小睿流程
...
...
pcloud-service-book/src/main/java/com/pcloud/book/group/entity/BookGroup.java
View file @
6889c146
...
...
@@ -155,7 +155,14 @@ public class BookGroup extends BaseEntity {
* 书籍简称
*/
private
String
shortBookName
;
/**
* 是否独立活码群
*/
private
Boolean
singleGroup
;
/**
* 关联群
*/
private
Long
relatedBookGroupId
;
/**
* 好友引导语
*/
...
...
@@ -165,6 +172,21 @@ public class BookGroup extends BaseEntity {
*/
private
Boolean
openWeapp
;
public
Long
getRelatedBookGroupId
()
{
return
relatedBookGroupId
;
}
public
void
setRelatedBookGroupId
(
Long
relatedBookGroupId
)
{
this
.
relatedBookGroupId
=
relatedBookGroupId
;
}
public
Boolean
getSingleGroup
()
{
return
singleGroup
;
}
public
void
setSingleGroup
(
Boolean
singleGroup
)
{
this
.
singleGroup
=
singleGroup
;
}
public
Boolean
getOpenWeapp
()
{
return
openWeapp
;
...
...
@@ -430,7 +452,6 @@ public class BookGroup extends BaseEntity {
", belongSpecialAgent="
+
belongSpecialAgent
+
", shortBookName='"
+
shortBookName
+
'\''
+
", friendGuideList="
+
friendGuideList
+
", openWeapp="
+
openWeapp
+
'}'
;
}
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/group/facade/BookGroupFacade.java
View file @
6889c146
...
...
@@ -725,4 +725,28 @@ public interface BookGroupFacade {
@GetMapping
(
"updateBookGroupOpenWeapp"
)
ResponseDto
<?>
updateBookGroupOpenWeapp
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"bookGroupId"
)
Long
bookGroupId
,
@RequestParam
(
"openWeapp"
)
Boolean
openWeapp
);
@ApiOperation
(
"创建独立活码群社群码"
)
@PostMapping
(
"createSingleBookGroup"
)
ResponseDto
<
Long
>
createSingleBookGroup
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
BookGroup
bookGroup
);
@ApiOperation
(
"更新小睿关联社群书"
)
@GetMapping
(
"updateRelatedBookGroup"
)
ResponseDto
<?>
updateRelatedBookGroup
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"bookGroupId"
)
Long
bookGroupId
,
@RequestParam
(
value
=
"relatedBookGroupId"
,
required
=
false
)
Long
relatedBookGroupId
);
@ApiOperation
(
value
=
"获取独立活码群社群码列表(编辑)"
,
httpMethod
=
"GET"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"token"
,
value
=
"token"
,
dataType
=
"string"
,
paramType
=
"header"
),
@ApiImplicitParam
(
name
=
"name"
,
value
=
"书籍名称"
,
dataType
=
"string"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"当前页"
,
dataType
=
"Integer"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"numPerPage"
,
value
=
"每页条数"
,
dataType
=
"Integer"
,
paramType
=
"query"
)
})
@GetMapping
(
"listSingleBookGroup4Adviser"
)
ResponseDto
<?>
listSingleBookGroup4Adviser
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
value
=
"name"
,
required
=
false
)
String
name
,
@RequestParam
(
value
=
"currentPage"
,
required
=
true
)
Integer
currentPage
,
@RequestParam
(
value
=
"numPerPage"
,
required
=
true
)
Integer
numPerPage
)
throws
BizException
,
PermissionException
;
}
pcloud-service-book/src/main/java/com/pcloud/book/group/facade/impl/BookGroupFacadeImpl.java
View file @
6889c146
...
...
@@ -3,7 +3,6 @@ package com.pcloud.book.group.facade.impl;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.group.biz.BookGroupBiz
;
import
com.pcloud.book.group.biz.BookGroupClassifyBiz
;
import
com.pcloud.book.group.constant.BookBusinessConstants
;
import
com.pcloud.book.group.dto.BookAppletSceneDTO
;
import
com.pcloud.book.group.dto.BookGroupDTO
;
import
com.pcloud.book.group.dto.ChangeQrCodeTypeDto
;
...
...
@@ -16,10 +15,8 @@ import com.pcloud.book.group.entity.BookGroupServe;
import
com.pcloud.book.group.entity.WxWechatUserCorrelation
;
import
com.pcloud.book.group.enums.JoinGroupTypeEnum
;
import
com.pcloud.book.group.facade.BookGroupFacade
;
import
com.pcloud.book.group.tools.BookExcelReader
;
import
com.pcloud.book.group.vo.BookGroupAnalysisParam
;
import
com.pcloud.book.group.vo.BookGroupAnalysisVO
;
import
com.pcloud.book.group.vo.ExcelDataVO
;
import
com.pcloud.book.group.vo.FriendsVO
;
import
com.pcloud.book.group.vo.GroupIncomeStaticParamVO
;
import
com.pcloud.book.group.vo.GroupScanTrendParamVO
;
...
...
@@ -34,25 +31,19 @@ import com.pcloud.book.group.vo.WxGroupStatisticVO;
import
com.pcloud.book.keywords.vo.ListKeywordVO
;
import
com.pcloud.common.core.constant.SystemCode
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.entity.UploadResultInfo
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.page.PageBean
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageParam
;
import
com.pcloud.common.permission.PermissionException
;
import
com.pcloud.common.utils.DateUtils
;
import
com.pcloud.common.utils.QrcodeUtils
;
import
com.pcloud.common.utils.SessionUtil
;
import
com.pcloud.common.utils.aliyun.OssUtils
;
import
com.pcloud.common.utils.cookie.Cookie
;
import
com.pcloud.common.utils.httpclient.UrlUtils
;
import
com.pcloud.common.utils.string.StringUtil
;
import
com.pcloud.wechatgroup.base.exception.WechatGroupBizException
;
import
com.pcloud.wechatgroup.message.enums.IsSystem
;
import
org.codehaus.jackson.JsonParseException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.CookieValue
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
...
@@ -65,14 +56,11 @@ import org.springframework.web.bind.annotation.RequestParam;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
cn.hutool.core.util.ZipUtil
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
lombok.SneakyThrows
;
...
...
@@ -152,6 +140,9 @@ public class BookGroupFacadeImpl implements BookGroupFacade {
if
(
null
==
bookId
||
null
==
channelId
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"参数有误!"
);
}
if
(
bookId
.
equals
(
0L
)){
return
new
ResponseDto
<>();
}
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
return
new
ResponseDto
<>(
bookGroupBiz
.
getBookGroupInfoByBookId
(
bookId
,
channelId
,
adviserId
,
addType
,
sceneId
,
joinGroupType
));
}
...
...
@@ -1196,4 +1187,32 @@ public class BookGroupFacadeImpl implements BookGroupFacade {
bookGroupBiz
.
updateBookGroupOpenWeapp
(
bookGroupId
,
openWeapp
);
return
new
ResponseDto
<>();
}
@Override
@PostMapping
(
"createSingleBookGroup"
)
public
ResponseDto
<
Long
>
createSingleBookGroup
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
BookGroup
bookGroup
){
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
return
new
ResponseDto
<>(
bookGroupBiz
.
createSingleBookGroup
(
bookGroup
,
adviserId
));
}
@Override
@GetMapping
(
"updateRelatedBookGroup"
)
public
ResponseDto
<?>
updateRelatedBookGroup
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"bookGroupId"
)
Long
bookGroupId
,
@RequestParam
(
value
=
"relatedBookGroupId"
,
required
=
false
)
Long
relatedBookGroupId
)
{
SessionUtil
.
getToken4Redis
(
token
);
bookGroupBiz
.
updateRelatedBookGroup
(
bookGroupId
,
relatedBookGroupId
);
return
new
ResponseDto
<>();
}
@Override
@GetMapping
(
"listSingleBookGroup4Adviser"
)
public
ResponseDto
<?>
listSingleBookGroup4Adviser
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
value
=
"name"
,
required
=
false
)
String
name
,
@RequestParam
(
value
=
"currentPage"
,
required
=
true
)
Integer
currentPage
,
@RequestParam
(
value
=
"numPerPage"
,
required
=
true
)
Integer
numPerPage
)
throws
BizException
,
PermissionException
{
Long
adviserId
=
(
Long
)
SessionUtil
.
getVlaue
(
token
,
SessionUtil
.
PARTY_ID
);
PageBeanNew
<
BookGroupDTO
>
pageBeanNew
=
bookGroupBiz
.
listSingleBookGroup4Adviser
(
name
,
currentPage
,
numPerPage
,
adviserId
);
return
new
ResponseDto
<>(
pageBeanNew
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/service/impl/BookGroupClassifyServiceImpl.java
View file @
6889c146
...
...
@@ -128,4 +128,15 @@ public class BookGroupClassifyServiceImpl implements BookGroupClassifyService {
}
return
ResponseHandleUtil
.
toResponse
(
groupQrcode4ClassifyDTO
);
}
@Override
@GetMapping
(
"getGroupQrcodeByClassify"
)
public
ResponseEntity
<
ResponseDto
<
GroupQrcode4ClassifyDTO
>>
getGroupQrcodeByClassify
(
@RequestParam
(
"wechatUserId"
)
Long
wechatUserId
,
@RequestParam
(
"classifyId"
)
Long
classifyId
){
GroupQrcode4ClassifyVO
groupQrcode4ClassifyVO
=
bookGroupClassifyBiz
.
getGroupQrcodeByClassify
(
classifyId
,
wechatUserId
);
GroupQrcode4ClassifyDTO
groupQrcode4ClassifyDTO
=
new
GroupQrcode4ClassifyDTO
();
if
(
null
!=
groupQrcode4ClassifyVO
){
BeanUtils
.
copyProperties
(
groupQrcode4ClassifyVO
,
groupQrcode4ClassifyDTO
);
}
return
ResponseHandleUtil
.
toResponse
(
groupQrcode4ClassifyDTO
);
}
}
pcloud-service-book/src/main/resources/mapper/book/Book.Mapper.xml
View file @
6889c146
...
...
@@ -478,7 +478,7 @@
IF(ISNULL(BF.BOOK_FUND_ID),0,1) IS_FUND_SUPPORT,A.TEMPLET_ID, if(G.ID IS NULL, A.LAST_MODIFIED_DATE, G.UPDATE_TIME) LAST_MODIFIED_DATE,
A.BOOK_ADVISER_ID,I.BOOK_STATUS, CONCAT('BK',A.BOOK_ID) uniqueNumber, if(G.ID IS NULL, 0, 1) isBookGroup, A.IS_PRINT isPrint,
G.id BOOK_GROUP_ID, G.group_qrcode_url groupQrcodeUrl,G.group_qrcode_name groupQrcodeName,
G.join_group_type,a.is_open_robot_process
G.join_group_type,a.is_open_robot_process
,G.single_group singleGroup, G.related_book_group_id relatedBookGroupId
FROM
BOOK_ADVISER A
INNER JOIN BOOK B ON A.BOOK_ID = B.BOOK_ID AND A.ADVISER_ID = #{adviserId} AND A.IS_DELETE = 0 AND B.IS_DELETE = 0
...
...
@@ -596,7 +596,7 @@
WHEN 2 THEN bgs.id
WHEN 3 THEN srk.id
WHEN 4 THEN bgs.id
else null END,0)=0,0,1)as has_serve, A.IS_PRINT isPrint, G.open_weapp openWeapp
else null END,0)=0,0,1)as has_serve, A.IS_PRINT isPrint, G.open_weapp openWeapp
, G.single_group singleGroup, G.related_book_group_id relatedBookGroupId
FROM
book_group G
LEFT JOIN BOOK_ADVISER A ON G.BOOK_ID = A.BOOK_ID AND G.CHANNEL_ID = A.CHANNEL_ID AND G.CREATE_USER = A.ADVISER_ID
...
...
pcloud-service-book/src/main/resources/mapper/group/BookGroupClassify.Mapper.xml
View file @
6889c146
...
...
@@ -81,6 +81,7 @@
book_group_classify
where
book_group_id = #{_parameter,jdbcType=BIGINT}
AND is_delete = 0
</select>
...
...
@@ -345,8 +346,11 @@
book_group_classify c
JOIN book_group_qrcode q ON c.id = q.classify_id
JOIN book_group g ON c.book_group_id = g.id
JOIN book b ON c.book_id = b.BOOK_ID
LEFT
JOIN book b ON c.book_id = b.BOOK_ID
WHERE q.weixin_group_id = #{_parameter}
AND c.is_delete = 0
AND g.is_delete = 0
AND q.is_delete = 0
LIMIT 1
</select>
...
...
@@ -427,11 +431,10 @@
FROM book_group_classify c
INNER JOIN book_group_qrcode g ON c.id = g.classify_id
LEFT JOIN BOOK_GROUP bg on bg.id = c.book_group_id
LEFT JOIN book b ON c.book_id = b.book_id
LEFT JOIN book b ON c.book_id = b.book_id
AND b.is_delete = 0
WHERE c.is_delete = 0
AND g.is_delete = 0
AND bg.is_delete = 0
AND b.is_delete = 0
AND c.create_user = #{adviserId}
<if
test=
"bookIds != null"
>
AND c.book_id IN
...
...
@@ -443,6 +446,7 @@
AND (
book_name LIKE CONCAT('%', #{name},'%')
OR c.classify LIKE CONCAT('%', #{name},'%')
OR bg.group_qrcode_name LIKE CONCAT('%', #{name},'%')
)
</if>
<if
test=
"proLabelId!=null"
>
...
...
@@ -474,12 +478,11 @@
FROM book_group_classify c
INNER JOIN book_group_qrcode g ON c.id = g.classify_id
LEFT JOIN BOOK_GROUP bg on bg.id = c.book_group_id
LEFT JOIN book b ON c.book_id = b.book_id
LEFT JOIN book b ON c.book_id = b.book_id
AND b.is_delete = 0
LEFT JOIN weixin_clock_group_classify wc ON c.id = wc.book_group_classify_id
WHERE c.is_delete = 0
AND g.is_delete = 0
AND bg.is_delete = 0
AND b.is_delete = 0
AND wc.weixin_clock_group_classify_id is null
AND c.create_user = #{adviserId}
<if
test=
"bookIds != null"
>
...
...
@@ -948,10 +951,9 @@
c.has_open_learning_report hasOpenLearningReport
FROM book_group_classify c
LEFT JOIN BOOK_GROUP bg on bg.id = c.book_group_id
LEFT JOIN book b ON c.book_id = b.book_id
LEFT JOIN book b ON c.book_id = b.book_id
AND b.is_delete = 0
WHERE c.is_delete = 0
AND bg.is_delete = 0
AND b.is_delete = 0
AND c.create_user = #{partyId}
<if
test=
"keyword != null"
>
AND (
...
...
pcloud-service-book/src/main/resources/mapper/group/BookGroupMapper.xml
View file @
6889c146
...
...
@@ -31,6 +31,8 @@
<result
column=
"belong_special_agent"
property=
"belongSpecialAgent"
jdbcType=
"BOOLEAN"
/>
<result
column=
"short_book_name"
property=
"shortBookName"
jdbcType=
"VARCHAR"
/>
<result
column=
"open_weapp"
property=
"openWeapp"
jdbcType=
"BOOLEAN"
/>
<result
column=
"single_group"
property=
"singleGroup"
jdbcType=
"BOOLEAN"
/>
<result
column=
"related_book_group_id"
property=
"relatedBookGroupId"
jdbcType=
"BIGINT"
/>
</resultMap>
<resultMap
id=
"BookGroupDTO"
type=
"com.pcloud.book.group.dto.BookGroupDTO"
>
...
...
@@ -67,6 +69,8 @@
<result
column=
"belong_special_agent"
property=
"belongSpecialAgent"
jdbcType=
"BOOLEAN"
/>
<result
column=
"short_book_name"
property=
"shortBookName"
jdbcType=
"VARCHAR"
/>
<result
column=
"open_weapp"
property=
"openWeapp"
jdbcType=
"BOOLEAN"
/>
<result
column=
"single_group"
property=
"singleGroup"
jdbcType=
"BOOLEAN"
/>
<result
column=
"related_book_group_id"
property=
"relatedBookGroupId"
jdbcType=
"BIGINT"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
...
...
@@ -75,7 +79,7 @@
create_time,
update_time, is_delete, is_show_book_name,join_group_type,add_friend_guide,customer_service_name,
is_invite_group,book_group_cipher, last_push_update_time, is_some_update, agent_id, belong_special_agent,
short_book_name, open_weapp
short_book_name, open_weapp
, single_group, related_book_group_id
</sql>
<select
id=
"getById"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
...
...
@@ -312,6 +316,9 @@
<if
test=
"shortBookName != null"
>
short_book_name = #{shortBookName},
</if>
<if
test=
"singleGroup !=null"
>
single_group = #{singleGroup},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
...
...
@@ -984,6 +991,41 @@
and is_delete=0
</select>
<update
id=
"updateRelatedBookGroup"
parameterType=
"map"
>
update book_group
set related_book_group_id = #{relatedBookGroupId}
where id = #{id}
</update>
<select
id=
"mapDTOByIds"
resultMap=
"BookGroupDTO"
parameterType=
"map"
>
select
<include
refid=
"Base_Column_List"
/>
from book_group
where id in
<foreach
collection=
"list"
open=
"("
close=
")"
item=
"item"
separator=
","
>
${item}
</foreach>
</select>
<select
id=
"listSingleBookGroup4Adviser"
resultType=
"com.pcloud.book.group.dto.BookGroupDTO"
parameterType=
"map"
>
SELECT
id,
group_qrcode_name groupQrcodeName,
group_qrcode_url groupQrcodeUrl,
create_time createTime
FROM
book_group
WHERE
is_delete = 0
AND join_group_type = 1
AND single_group = 1
AND create_user = #{adviserId}
<if
test=
"name != null"
>
AND group_qrcode_name LIKE CONCAT('%', #{name}, '%')
</if>
ORDER BY create_time DESC, id DESC
</select>
<update
id=
"updateBookGroupOpenWeapp"
parameterType=
"map"
>
UPDATE book_group
SET open_weapp = #{openWeapp}
...
...
pcloud-service-book/src/main/resources/mapper/group/GroupQrcode.Mapper.xml
View file @
6889c146
...
...
@@ -591,10 +591,9 @@
book_group_qrcode q
LEFT JOIN book_group_classify c ON q.classify_id = c.id
LEFT JOIN book_group g ON c.book_group_id = g.id
LEFT JOIN book b ON g.book_id = b.BOOK_ID
LEFT JOIN book b ON g.book_id = b.BOOK_ID
AND b.IS_DELETE = 0
WHERE
q.create_user = #{partyId}
AND b.IS_DELETE = 0
AND g.is_delete = 0
AND c.is_delete = 0
AND q.is_delete = 0
...
...
@@ -876,4 +875,36 @@
</if>
</select>
<select
id=
"listClassifyLatestGroupByBookGroup"
parameterType=
"long"
resultType=
"com.pcloud.book.group.dto.GroupQrcodeDTO"
>
SELECT
r.id id,
r.classify_id classifyId,
r.weixin_group_id weixinGroupId,
r.group_name groupName,
r.user_number userNumber,
f.classify classify,
r.qrcode_url qrcodeUrl,
f.classify_introduce classifyIntroduce,
f.book_group_id bookGroupId
FROM
book_group_qrcode r
LEFT JOIN book_group_classify f ON r.classify_id = f.id
WHERE
r.id IN (
SELECT
MAX(q.id)
FROM
book_group_classify c
LEFT JOIN book_group_qrcode q ON c.id = q.classify_id
WHERE
c.book_group_id = #{bookGroupId}
AND c.is_delete = 0
AND q.is_delete = 0
GROUP BY
c.id
)
ORDER BY
f.rank ASC, f.id ASC
</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