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
3bf447c5
Commit
3bf447c5
authored
Jan 30, 2023
by
朱亚洁
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
平台端新增“书刊列表”菜单
parent
b3b7eb48
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
384 additions
and
0 deletions
+384
-0
BookAdviserBiz.java
...rc/main/java/com/pcloud/book/book/biz/BookAdviserBiz.java
+9
-0
BookAdviserBizImpl.java
...ava/com/pcloud/book/book/biz/impl/BookAdviserBizImpl.java
+107
-0
BookAdviserFacadeImpl.java
...m/pcloud/book/book/facade/impl/BookAdviserFacadeImpl.java
+10
-0
BookParam4PcloudVO.java
...a/com/pcloud/book/book/vo/request/BookParam4PcloudVO.java
+41
-0
BookApprovalPcloudVO.java
...om/pcloud/book/book/vo/response/BookApprovalPcloudVO.java
+157
-0
BookAdviser.Mapper.xml
...ook/src/main/resources/mapper/book/BookAdviser.Mapper.xml
+60
-0
No files found.
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/BookAdviserBiz.java
View file @
3bf447c5
...
...
@@ -8,7 +8,9 @@ import com.pcloud.book.book.dto.*;
import
com.pcloud.book.book.entity.Book
;
import
com.pcloud.book.book.entity.BookAdviser
;
import
com.pcloud.book.book.vo.*
;
import
com.pcloud.book.book.vo.request.BookParam4PcloudVO
;
import
com.pcloud.book.book.vo.request.RelateRaysBookApprovalVO
;
import
com.pcloud.book.book.vo.response.BookApprovalPcloudVO
;
import
com.pcloud.book.group.dto.BookAppletSceneDTO
;
import
com.pcloud.book.group.dto.BookServeDTO
;
import
com.pcloud.channelcenter.qrcode.vo.BookQrcodeVO
;
...
...
@@ -527,4 +529,11 @@ public interface BookAdviserBiz {
void
updateOpenGiftBag
(
Long
bookId
,
Long
adviserId
,
Long
channelId
,
Integer
isOpenGiftBag
);
Integer
getOpenGiftBag
(
Long
sceneId
,
Long
bookId
,
Long
adviserId
,
Long
channelId
);
/**
* @Description 平台端书刊列表-立项书筛选
* @Author zhuyajie
* @Date 9:53 2023/1/30
**/
PageBeanNew
<
BookApprovalPcloudVO
>
listApprovalBook4Pcloud
(
BookParam4PcloudVO
bookParam4PcloudVO
);
}
pcloud-service-book/src/main/java/com/pcloud/book/book/biz/impl/BookAdviserBizImpl.java
View file @
3bf447c5
...
...
@@ -15,6 +15,7 @@ import com.google.common.collect.Maps;
import
com.pcloud.analysisengine.browse.dto.BookBrowseAndScanStatsDTO
;
import
com.pcloud.analysisengine.browse.dto.BrowseCacheRecordDto
;
import
com.pcloud.appcenter.app.dto.AppDto
;
import
com.pcloud.appcenter.assist.dto.AssistTempletDTO
;
import
com.pcloud.book.base.dto.CountDto
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.book.biz.*
;
...
...
@@ -26,10 +27,13 @@ import com.pcloud.book.book.entity.BookAdviser;
import
com.pcloud.book.book.enums.BookQrcodeType
;
import
com.pcloud.book.book.set.BookSet
;
import
com.pcloud.book.book.vo.*
;
import
com.pcloud.book.book.vo.request.BookParam4PcloudVO
;
import
com.pcloud.book.book.vo.request.RelateRaysBookApprovalVO
;
import
com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto
;
import
com.pcloud.book.book.vo.response.BookApprovalPcloudVO
;
import
com.pcloud.book.consumer.analysisengine.BrowseRecordConsr
;
import
com.pcloud.book.consumer.app.AppConsr
;
import
com.pcloud.book.consumer.app.AssistTempletConsr
;
import
com.pcloud.book.consumer.book.elasticsearch.BookElasticSearchConsr
;
import
com.pcloud.book.consumer.channel.QrcodeSceneConsr
;
import
com.pcloud.book.consumer.common.ExportConsr
;
...
...
@@ -240,6 +244,8 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
private
OperationConsr
operationConsr
;
@Autowired
private
BookElasticSearchConsr
bookElasticSearchConsr
;
@Autowired
private
AssistTempletConsr
assistTempletConsr
;
@Override
public
List
<
BookDto
>
listByAdviserId
(
Long
adviserId
)
{
...
...
@@ -3846,4 +3852,105 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
}
return
result
;
}
@Override
public
PageBeanNew
<
BookApprovalPcloudVO
>
listApprovalBook4Pcloud
(
BookParam4PcloudVO
bookParam4PcloudVO
)
{
Integer
currentPage
=
bookParam4PcloudVO
.
getCurrentPage
();
Integer
numPerPage
=
bookParam4PcloudVO
.
getNumPerPage
();
if
(
null
==
bookParam4PcloudVO
.
getCurrentPage
()||
null
==
bookParam4PcloudVO
.
getNumPerPage
())
{
return
new
PageBeanNew
<>(
currentPage
,
numPerPage
,
0
,
new
ArrayList
<>());
}
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"keyword"
,
bookParam4PcloudVO
.
getKeyword
());
paramMap
.
put
(
"isApproval"
,
bookParam4PcloudVO
.
getIsApproval
());
List
<
Long
>
paramAdviserIds
=
new
ArrayList
<>();
if
(
CollUtil
.
isNotEmpty
(
bookParam4PcloudVO
.
getAdviserIds
()))
{
paramAdviserIds
=
bookParam4PcloudVO
.
getAdviserIds
();
}
else
if
(
null
!=
bookParam4PcloudVO
.
getAgentId
())
{
paramAdviserIds
=
adviserConsr
.
getByAgentId
(
bookParam4PcloudVO
.
getAgentId
());
}
paramMap
.
put
(
"adviserIds"
,
paramAdviserIds
);
paramMap
.
put
(
"startTime"
,
bookParam4PcloudVO
.
getStartTime
());
paramMap
.
put
(
"endTime"
,
bookParam4PcloudVO
.
getEndTime
());
paramMap
.
put
(
"templetId"
,
bookParam4PcloudVO
.
getTempletId
());
paramMap
.
put
(
"secondTempletId"
,
bookParam4PcloudVO
.
getSecondTempletId
());
paramMap
.
put
(
"thirdTempletId"
,
bookParam4PcloudVO
.
getThirdTempletId
());
PageBeanNew
<
BookApprovalPcloudVO
>
pageBeanNew
=
bookAdviserDao
.
listPageNew
(
new
PageParam
(
currentPage
,
numPerPage
),
paramMap
,
"listApprovalBook4Pcloud"
);
List
<
BookApprovalPcloudVO
>
bookVOS
=
pageBeanNew
.
getRecordList
();
if
(
CollectionUtils
.
isEmpty
(
bookVOS
))
{
return
new
PageBeanNew
<>(
currentPage
,
numPerPage
,
pageBeanNew
.
getTotalCount
(),
new
ArrayList
<>());
}
// 年级科目版本地域上下册标签
CompletableFuture
<
Map
<
Long
,
String
>>
newLabelIdFuture
=
CompletableFuture
.
supplyAsync
(()
->
bookLabelBiz
.
getLabelMapByIds
(
Stream
.
of
(
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getGraLabelId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getSubLabelId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getVerLabelId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getAreaLabelId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getVolLabelId
)
).
flatMap
(
Function
.
identity
()).
filter
(
Objects:
:
nonNull
).
distinct
().
collect
(
Collectors
.
toList
())),
ThreadPoolUtils
.
SMALL_THREAD_POOL
);
// 专业深度目的标签
CompletableFuture
<
Map
<
Long
,
String
>>
oldLabelIdFuture
=
CompletableFuture
.
supplyAsync
(()
->
labelConsr
.
getLabelName
(
Stream
.
of
(
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getProLabelId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getPurLabelId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getDepLabelId
)
).
flatMap
(
Function
.
identity
()).
filter
(
Objects:
:
nonNull
).
distinct
().
collect
(
Collectors
.
toList
())),
ThreadPoolUtils
.
SMALL_THREAD_POOL
);
//编辑信息
CompletableFuture
<
Map
<
Long
,
AdviserBaseInfoDto
>>
adviserFuture
=
CompletableFuture
.
supplyAsync
(()->
adviserConsr
.
getAdviserId2AdviserInfoDtoMap
(
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getAdviserId
).
distinct
().
collect
(
Collectors
.
toList
())),
ThreadPoolUtils
.
SMALL_THREAD_POOL
);
//编辑登录信息
CompletableFuture
<
Map
<
Long
,
UserLogin
>>
userLoginFuture
=
CompletableFuture
.
supplyAsync
(()->
adviserConsr
.
getUserLoginInfoList
(
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getAdviserId
).
distinct
().
collect
(
Collectors
.
toList
())),
ThreadPoolUtils
.
SMALL_THREAD_POOL
);
//运营信息
CompletableFuture
<
Map
<
Long
,
String
>>
channelFuture
=
CompletableFuture
.
supplyAsync
(()->
channelConsr
.
getNamesByIdList
(
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getChannelId
).
distinct
().
collect
(
Collectors
.
toList
())),
ThreadPoolUtils
.
SMALL_THREAD_POOL
);
//书刊分类
CompletableFuture
<
Map
<
Long
,
AssistTempletDTO
>>
assistTempletFuture
=
CompletableFuture
.
supplyAsync
(()->
assistTempletConsr
.
mapByIds
(
Stream
.
of
(
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getTempletId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getSecondTempletId
),
bookVOS
.
stream
().
filter
(
Objects:
:
nonNull
).
map
(
BookApprovalPcloudVO:
:
getThirdTempletId
)
).
flatMap
(
Function
.
identity
()).
filter
(
Objects:
:
nonNull
).
distinct
().
collect
(
Collectors
.
toList
())),
ThreadPoolUtils
.
SMALL_THREAD_POOL
);
CompletableFuture
<
Void
>
allCompletableFuture
=
CompletableFuture
.
allOf
(
newLabelIdFuture
,
oldLabelIdFuture
,
adviserFuture
,
channelFuture
,
userLoginFuture
,
assistTempletFuture
);
try
{
allCompletableFuture
.
get
();
Map
<
Long
,
String
>
newLabelMap
=
Optional
.
ofNullable
(
newLabelIdFuture
.
get
()).
orElse
(
new
HashMap
<>());
Map
<
Long
,
String
>
oldLabelMap
=
Optional
.
ofNullable
(
oldLabelIdFuture
.
get
()).
orElse
(
new
HashMap
<>());
Map
<
Long
,
AdviserBaseInfoDto
>
adviserAgentMap
=
Optional
.
ofNullable
(
adviserFuture
.
get
()).
orElse
(
new
HashMap
<>());
Map
<
Long
,
String
>
channelMap
=
Optional
.
ofNullable
(
channelFuture
.
get
()).
orElse
(
new
HashMap
<>());
Map
<
Long
,
UserLogin
>
userLoginInfoMap
=
Optional
.
ofNullable
(
userLoginFuture
.
get
()).
orElse
(
new
HashMap
<>());
Map
<
Long
,
AssistTempletDTO
>
assistTempletDTOMap
=
Optional
.
ofNullable
(
assistTempletFuture
.
get
()).
orElse
(
new
HashMap
<>());
bookVOS
.
forEach
(
book
->{
book
.
setProLabelName
(
Optional
.
ofNullable
(
oldLabelMap
.
get
(
book
.
getProLabelId
())).
orElse
(
""
));
book
.
setPurLabelName
(
Optional
.
ofNullable
(
oldLabelMap
.
get
(
book
.
getPurLabelId
())).
orElse
(
""
));
book
.
setDepLabelName
(
Optional
.
ofNullable
(
oldLabelMap
.
get
(
book
.
getDepLabelId
())).
orElse
(
""
));
book
.
setGraLabelName
(
Optional
.
ofNullable
(
newLabelMap
.
get
(
book
.
getGraLabelId
())).
orElse
(
""
));
book
.
setSubLabelName
(
Optional
.
ofNullable
(
newLabelMap
.
get
(
book
.
getSubLabelId
())).
orElse
(
""
));
book
.
setVerLabelName
(
Optional
.
ofNullable
(
newLabelMap
.
get
(
book
.
getVerLabelId
())).
orElse
(
""
));
book
.
setAreaLabelName
(
Optional
.
ofNullable
(
newLabelMap
.
get
(
book
.
getAreaLabelId
())).
orElse
(
""
));
book
.
setVolLabelName
(
Optional
.
ofNullable
(
newLabelMap
.
get
(
book
.
getVolLabelId
())).
orElse
(
""
));
Long
adviserId
=
book
.
getAdviserId
();
if
(
null
!=
adviserId
&&
MapUtils
.
isNotEmpty
(
adviserAgentMap
)
&&
adviserAgentMap
.
containsKey
(
adviserId
))
{
AdviserBaseInfoDto
adviserBaseInfoDto
=
adviserAgentMap
.
get
(
adviserId
);
book
.
setAgentName
(
null
!=
adviserBaseInfoDto
?
adviserBaseInfoDto
.
getAgentName
()
:
""
);
book
.
setAdviserName
(
null
!=
adviserBaseInfoDto
?
adviserBaseInfoDto
.
getPartyName
()
:
""
);
book
.
setAgentId
(
null
!=
adviserBaseInfoDto
?
adviserBaseInfoDto
.
getAgentId
()
:
null
);
book
.
setAdviserPhone
(
null
!=
adviserBaseInfoDto
?
adviserBaseInfoDto
.
getPhoneNum
():
""
);
}
if
(
null
!=
adviserId
&&
MapUtils
.
isNotEmpty
(
userLoginInfoMap
)
&&
userLoginInfoMap
.
containsKey
(
adviserId
))
{
UserLogin
userLogin
=
userLoginInfoMap
.
get
(
adviserId
);
book
.
setAdviserPwd
(
userLogin
!=
null
?
userLogin
.
getCurrentPassword
()
:
null
);
}
book
.
setChannelName
(
Optional
.
ofNullable
(
channelMap
.
get
(
book
.
getChannelId
())).
orElse
(
""
));
if
(
MapUtils
.
isNotEmpty
(
assistTempletDTOMap
))
{
book
.
setTempletName
(
Optional
.
ofNullable
(
assistTempletDTOMap
.
get
(
book
.
getTempletId
())).
map
(
AssistTempletDTO:
:
getTempletName
).
orElse
(
null
));
book
.
setSecondTempletName
(
Optional
.
ofNullable
(
assistTempletDTOMap
.
get
(
book
.
getSecondTempletId
())).
map
(
AssistTempletDTO:
:
getTempletName
).
orElse
(
null
));
book
.
setThirdTempletName
(
Optional
.
ofNullable
(
assistTempletDTOMap
.
get
(
book
.
getThirdTempletId
())).
map
(
AssistTempletDTO:
:
getTempletName
).
orElse
(
null
));
}
});
}
catch
(
InterruptedException
|
ExecutionException
e
)
{
LOGGER
.
warn
(
"listApprovalBook4Pcloud 异步任务处理失败"
);
}
return
pageBeanNew
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/facade/impl/BookAdviserFacadeImpl.java
View file @
3bf447c5
...
...
@@ -25,6 +25,8 @@ import com.pcloud.book.book.vo.BookLabelAndClassifyVO;
import
com.pcloud.book.book.vo.BookServeInfo
;
import
com.pcloud.book.book.vo.PcloudAdviserBookVO
;
import
com.pcloud.book.book.vo.QrCodeVO
;
import
com.pcloud.book.book.vo.request.BookParam4PcloudVO
;
import
com.pcloud.book.book.vo.response.BookApprovalPcloudVO
;
import
com.pcloud.channelcenter.qrcode.vo.BookQrcodeVO
;
import
com.pcloud.book.book.vo.request.RelateRaysBookApprovalVO
;
import
com.pcloud.book.book.vo.request.UpdateBookRobotProcessDto
;
...
...
@@ -631,4 +633,12 @@ public class BookAdviserFacadeImpl implements BookAdviserFacade {
@RequestParam
(
value
=
"channelId"
,
required
=
false
)
Long
channelId
)
throws
PermissionException
{
return
new
ResponseDto
<>(
bookAdviserBiz
.
getOpenGiftBag
(
sceneId
,
bookId
,
adviserId
,
channelId
));
}
@ApiOperation
(
"平台端查立项书书刊列表"
)
@PostMapping
(
"listApprovalBook4Pcloud"
)
public
ResponseDto
<
PageBeanNew
<
BookApprovalPcloudVO
>>
listApprovalBook4Pcloud
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
BookParam4PcloudVO
bookParam4PcloudVO
)
throws
PermissionException
,
BizException
{
return
new
ResponseDto
<>(
bookAdviserBiz
.
listApprovalBook4Pcloud
(
bookParam4PcloudVO
));
}
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/request/BookParam4PcloudVO.java
0 → 100644
View file @
3bf447c5
package
com
.
pcloud
.
book
.
book
.
vo
.
request
;
import
java.util.List
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @ClassName com.pcloud.book.book.vo.request.BookParam4PcloudVO
* @Author zhuyajie
* @Description
* @Date 2023/1/29 18:10
**/
@Data
public
class
BookParam4PcloudVO
{
private
Integer
currentPage
;
private
Integer
numPerPage
;
private
String
startTime
;
private
String
endTime
;
/**
* 第一级分类
*/
private
Long
templetId
;
/**
* 第二级分类
*/
private
Long
secondTempletId
;
/**
* 第三级分类
*/
private
Long
thirdTempletId
;
private
Long
agentId
;
private
List
<
Long
>
adviserIds
;
private
String
keyword
;
@ApiModelProperty
(
"是否立项;0:未立项;1:已立项;"
)
private
Integer
isApproval
;
}
pcloud-service-book/src/main/java/com/pcloud/book/book/vo/response/BookApprovalPcloudVO.java
0 → 100644
View file @
3bf447c5
package
com
.
pcloud
.
book
.
book
.
vo
.
response
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.common.dto.BaseDto
;
import
java.util.Date
;
import
lombok.Data
;
/**
* @ClassName com.pcloud.book.book.vo.response.BookApprovalPcloudVO
* @Author zhuyajie
* @Description
* @Date 2023/1/29 18:22
**/
@Data
public
class
BookApprovalPcloudVO
extends
BaseDto
{
/**
* 出版社ID
*/
private
Long
agentId
;
/**
* 出版社名称
*/
private
String
agentName
;
/**
* 渠道ID
*/
private
Long
channelId
;
/**
* 运营平台
*/
private
String
channelName
;
/**
* 编辑ID
*/
private
Long
adviserId
;
/**
* 编辑名称
*/
private
String
adviserName
;
/**
* 编辑手机号
*/
private
String
adviserPhone
;
/**
* 书籍ID
*/
private
Long
bookId
;
/**
* 书籍名称
*/
private
String
bookName
;
/**
* 条形码
*/
private
String
isbn
;
private
String
coverImg
;
/**
* 刊物序号
*/
private
String
serialNumber
;
/**
* 是否立项
*/
private
Integer
isApproval
;
/**
* 创建时间
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
createdDate
;
/**
* 第一级分类
*/
private
Long
templetId
;
/**
* 第二级分类
*/
private
Long
secondTempletId
;
/**
* 第三级分类
*/
private
Long
thirdTempletId
;
/**
* 年级标签id
*/
private
Long
graLabelId
;
/**
* 科目标签id
*/
private
Long
subLabelId
;
/**
* 版本标签id
*/
private
Long
verLabelId
;
/**
* 地域标签id
*/
private
Long
areaLabelId
;
/**
* 上下册标签id
*/
private
Long
volLabelId
;
/**
* 专业
*/
private
Long
depLabelId
;
/**
* 深度
*/
private
Long
proLabelId
;
/**
* 目的
*/
private
Long
purLabelId
;
private
String
graLabelName
;
private
String
subLabelName
;
private
String
verLabelName
;
private
String
areaLabelName
;
private
String
volLabelName
;
private
String
depLabelName
;
private
String
proLabelName
;
private
String
purLabelName
;
private
String
adviserPwd
;
/**
* 第一类型名称
*/
private
String
templetName
;
/**
* 第二类型名称
*/
private
String
secondTempletName
;
/**
* 第三类型名称
*/
private
String
thirdTempletName
;
}
pcloud-service-book/src/main/resources/mapper/book/BookAdviser.Mapper.xml
View file @
3bf447c5
...
...
@@ -1479,4 +1479,64 @@
limit 1
</select>
<select
id=
"listApprovalBook4Pcloud"
parameterType=
"map"
resultType=
"com.pcloud.book.book.vo.response.BookApprovalPcloudVO"
>
SELECT
ba.BOOK_ID bookId,
ba.ADVISER_ID adviserId,
ba.channel_id channelId,
b.BOOK_NAME bookName,
b.COVER_IMG coverImg,
b.ISBN isbn,
b.SERIAL_NUMBER serialNumber,
ba.is_approval isApproval,
ba.TEMPLET_ID AS templetId,
ba.SECOND_TEMPLET_ID AS secondTempletId,
ba.third_templet_id AS thirdTempletId,
ba.pro_label_id AS proLabelId,
ba.dep_label_id AS depLabelId,
ba.pur_label_id AS purLabelId,
ba.GRA_LABEL_ID AS graLabelId,
ba.SUB_LABEL_ID AS subLabelId,
ba.VER_LABEL_ID AS verLabelId,
ba.AREA_LABEL_ID AS areaLabelId,
ba.vol_label_id AS volLabelId,
ba.CREATED_DATE createdDate
FROM
book_adviser ba
LEFT JOIN book b ON ba.BOOK_ID = b.BOOK_ID
WHERE
ba.IS_DELETE = 0
AND b.IS_DELETE = 0
<if
test=
"keyword != null"
>
AND (
b.ISBN =#{keyword}
or b.BOOK_NAME LIKE CONCAT('%', #{keyword}, '%')
or b.BOOK_ID LIKE CONCAT('%', #{keyword}, '%')
)
</if>
<if
test=
"isApproval!=null"
>
AND ba.is_approval = #{isApproval}
</if>
<if
test=
"templetId!=null"
>
AND ba.TEMPLET_ID = #{templetId}
</if>
<if
test=
"secondTempletId!=null"
>
AND ba.SECOND_TEMPLET_ID = #{secondTempletId}
</if>
<if
test=
"thirdTempletId!=null"
>
AND ba.third_templet_id = #{thirdTempletId}
</if>
<if
test=
"startTime != null and endTime != null"
>
AND ba.CREATED_DATE BETWEEN #{startTime} AND #{endTime}
</if>
<if
test=
"adviserIds != null and adviserIds.size>0"
>
AND ba.ADVISER_ID in
<foreach
collection=
"adviserIds"
index=
"index"
separator=
","
item=
"item"
close=
")"
open=
"("
>
#{item}
</foreach>
</if>
ORDER BY
ba.CREATED_DATE DESC
</select>
</mapper>
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