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
4a493dd9
Commit
4a493dd9
authored
Dec 29, 2018
by
lili
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
版权保护埋点需求
parent
8ca87e1f
Show whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
693 additions
and
12 deletions
+693
-12
BookAdviserService.java
...java/com/pcloud/book/book/service/BookAdviserService.java
+1
-2
BookAuthInfoCountDTO.java
...a/com/pcloud/book/copyright/dto/BookAuthInfoCountDTO.java
+111
-0
BookAuthTotalCountDTO.java
.../com/pcloud/book/copyright/dto/BookAuthTotalCountDTO.java
+82
-0
BookAuthInfoService.java
...om/pcloud/book/copyright/service/BookAuthInfoService.java
+16
-0
QrcodeSceneConsr.java
...va/com/pcloud/book/consumer/channel/QrcodeSceneConsr.java
+0
-1
BookAuthInfoBiz.java
...n/java/com/pcloud/book/copyright/biz/BookAuthInfoBiz.java
+15
-0
BookAuthUserBiz.java
...n/java/com/pcloud/book/copyright/biz/BookAuthUserBiz.java
+17
-0
BookAuthInfoBizImpl.java
...m/pcloud/book/copyright/biz/impl/BookAuthInfoBizImpl.java
+55
-1
BookAuthUserBizImpl.java
...m/pcloud/book/copyright/biz/impl/BookAuthUserBizImpl.java
+51
-2
BookAuthInfoDao.java
...n/java/com/pcloud/book/copyright/dao/BookAuthInfoDao.java
+13
-0
BookAuthUserDao.java
...n/java/com/pcloud/book/copyright/dao/BookAuthUserDao.java
+9
-0
BookClickBuyRecordDao.java
.../com/pcloud/book/copyright/dao/BookClickBuyRecordDao.java
+14
-0
BookExportRecordDao.java
...va/com/pcloud/book/copyright/dao/BookExportRecordDao.java
+4
-4
BookAuthInfoDaoImpl.java
...m/pcloud/book/copyright/dao/impl/BookAuthInfoDaoImpl.java
+16
-0
BookAuthUserDaoImpl.java
...m/pcloud/book/copyright/dao/impl/BookAuthUserDaoImpl.java
+19
-0
BookClickBuyRecordDaoImpl.java
...ud/book/copyright/dao/impl/BookClickBuyRecordDaoImpl.java
+20
-0
BookClickBuyRecord.java
.../com/pcloud/book/copyright/entity/BookClickBuyRecord.java
+75
-0
BookAuthUserFacade.java
.../com/pcloud/book/copyright/facade/BookAuthUserFacade.java
+9
-0
BookAuthUserFacadeImpl.java
...ud/book/copyright/facade/impl/BookAuthUserFacadeImpl.java
+14
-0
BookAuthInfoServiceImpl.java
.../book/copyright/service/impl/BookAuthInfoServiceImpl.java
+25
-0
BookClickBuyRecordParam.java
...com/pcloud/book/copyright/vo/BookClickBuyRecordParam.java
+36
-0
GenuineListener.java
...c/main/java/com/pcloud/book/mq/topic/GenuineListener.java
+0
-1
BookAuthInfo.Mapper.xml
...c/main/resources/mapper/copyright/BookAuthInfo.Mapper.xml
+30
-0
BookAuthUser.Mapper.xml
...c/main/resources/mapper/copyright/BookAuthUser.Mapper.xml
+33
-1
BookClickBuyRecord.Mapper.xml
.../resources/mapper/copyright/BookClickBuyRecord.Mapper.xml
+28
-0
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/book/service/BookAdviserService.java
View file @
4a493dd9
...
@@ -13,6 +13,7 @@ import io.swagger.annotations.ApiImplicitParams;
...
@@ -13,6 +13,7 @@ import io.swagger.annotations.ApiImplicitParams;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
@@ -101,6 +102,4 @@ public interface BookAdviserService {
...
@@ -101,6 +102,4 @@ public interface BookAdviserService {
@RequestMapping
(
value
=
"/setBookTemplet"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
value
=
"/setBookTemplet"
,
method
=
RequestMethod
.
GET
)
void
setBookTemplet
(
@RequestBody
BookAdviser
bookAdviser
)
throws
BizException
;
void
setBookTemplet
(
@RequestBody
BookAdviser
bookAdviser
)
throws
BizException
;
}
}
pcloud-facade-book/src/main/java/com/pcloud/book/copyright/dto/BookAuthInfoCountDTO.java
0 → 100644
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author lily
* @date 2018/12/17 11:12
*/
@ApiModel
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
BookAuthInfoCountDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
279583394937791724L
;
@ApiModelProperty
(
"图书标识"
)
private
Long
bookId
;
@ApiModelProperty
(
"运营标识"
)
private
Long
channelId
;
@ApiModelProperty
(
"编辑标识"
)
private
Long
adviserId
;
@ApiModelProperty
(
"购买数量"
)
private
Integer
payUserCount
;
@ApiModelProperty
(
"使用正版授权码数量"
)
private
Integer
codeUserCount
;
@ApiModelProperty
(
"开启时间"
)
private
Date
openTime
;
@ApiModelProperty
(
"关闭时间"
)
private
Date
closeTime
;
public
Long
getBookId
()
{
return
bookId
;
}
public
void
setBookId
(
Long
bookId
)
{
this
.
bookId
=
bookId
;
}
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
public
Date
getOpenTime
()
{
return
openTime
;
}
public
void
setOpenTime
(
Date
openTime
)
{
this
.
openTime
=
openTime
;
}
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
public
Date
getCloseTime
()
{
return
closeTime
;
}
public
void
setCloseTime
(
Date
closeTime
)
{
this
.
closeTime
=
closeTime
;
}
public
Integer
getPayUserCount
()
{
return
payUserCount
;
}
public
void
setPayUserCount
(
Integer
payUserCount
)
{
this
.
payUserCount
=
payUserCount
;
}
public
Integer
getCodeUserCount
()
{
return
codeUserCount
;
}
public
void
setCodeUserCount
(
Integer
codeUserCount
)
{
this
.
codeUserCount
=
codeUserCount
;
}
public
Long
getChannelId
()
{
return
channelId
;
}
public
void
setChannelId
(
Long
channelId
)
{
this
.
channelId
=
channelId
;
}
public
Long
getAdviserId
()
{
return
adviserId
;
}
public
void
setAdviserId
(
Long
adviserId
)
{
this
.
adviserId
=
adviserId
;
}
@Override
public
String
toString
()
{
return
"BookAuthInfoCountDTO{"
+
"bookId="
+
bookId
+
", channelId="
+
channelId
+
", adviserId="
+
adviserId
+
", payUserCount="
+
payUserCount
+
", codeUserCount="
+
codeUserCount
+
", openTime="
+
openTime
+
", closeTime="
+
closeTime
+
'}'
;
}
}
pcloud-facade-book/src/main/java/com/pcloud/book/copyright/dto/BookAuthTotalCountDTO.java
0 → 100644
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
dto
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serializable
;
/**
* @author lily
* @date 2018/12/17 15:17
*/
@ApiModel
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
BookAuthTotalCountDTO
implements
Serializable
{
@ApiModelProperty
(
"购买数量"
)
private
Integer
payUserCount
;
@ApiModelProperty
(
"使用正版授权码数量"
)
private
Integer
codeUserCount
;
@ApiModelProperty
(
"总使用数"
)
private
Integer
totalCount
;
@ApiModelProperty
(
"开启总数"
)
private
Integer
openCount
;
@ApiModelProperty
(
"点击购买链接人数"
)
private
Integer
clickBuyCount
;
public
Integer
getPayUserCount
()
{
return
payUserCount
;
}
public
void
setPayUserCount
(
Integer
payUserCount
)
{
this
.
payUserCount
=
payUserCount
;
}
public
Integer
getCodeUserCount
()
{
return
codeUserCount
;
}
public
void
setCodeUserCount
(
Integer
codeUserCount
)
{
this
.
codeUserCount
=
codeUserCount
;
}
public
Integer
getTotalCount
()
{
return
totalCount
;
}
public
void
setTotalCount
(
Integer
totalCount
)
{
this
.
totalCount
=
totalCount
;
}
public
Integer
getOpenCount
()
{
return
openCount
;
}
public
void
setOpenCount
(
Integer
openCount
)
{
this
.
openCount
=
openCount
;
}
public
Integer
getClickBuyCount
()
{
return
clickBuyCount
;
}
public
void
setClickBuyCount
(
Integer
clickBuyCount
)
{
this
.
clickBuyCount
=
clickBuyCount
;
}
@Override
public
String
toString
()
{
return
"BookAuthTotalCountDTO{"
+
"payUserCount="
+
payUserCount
+
", codeUserCount="
+
codeUserCount
+
", totalCount="
+
totalCount
+
", openCount="
+
openCount
+
", clickBuyCount="
+
clickBuyCount
+
'}'
;
}
}
pcloud-facade-book/src/main/java/com/pcloud/book/copyright/service/BookAuthInfoService.java
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
service
;
package
com
.
pcloud
.
book
.
copyright
.
service
;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.dto.BookAuthTotalCountDTO
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.exceptions.BizException
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
/**
* @author lily
* @author lily
...
@@ -25,4 +29,16 @@ public interface BookAuthInfoService {
...
@@ -25,4 +29,16 @@ public interface BookAuthInfoService {
ResponseEntity
<
ResponseDto
<
BigDecimal
>>
getBookAuthPrice
(
@RequestParam
(
"bookId"
)
Long
bookId
,
@RequestParam
(
"channelId"
)
Long
channelId
,
@RequestParam
(
"adviserId"
)
Long
adviserId
)
ResponseEntity
<
ResponseDto
<
BigDecimal
>>
getBookAuthPrice
(
@RequestParam
(
"bookId"
)
Long
bookId
,
@RequestParam
(
"channelId"
)
Long
channelId
,
@RequestParam
(
"adviserId"
)
Long
adviserId
)
throws
BizException
;
throws
BizException
;
@ApiOperation
(
value
=
"获取图书授权统计信息"
,
httpMethod
=
"GET"
)
@RequestMapping
(
value
=
"/getBookAuthInfoCount"
,
method
=
RequestMethod
.
GET
)
ResponseEntity
<
ResponseDto
<
BookAuthInfoCountDTO
>>
getBookAuthInfoCount
(
@RequestParam
(
"bookId"
)
Long
bookId
,
@RequestParam
(
"channelId"
)
Long
channelId
,
@RequestParam
(
"adviserId"
)
Long
adviserId
,
@RequestParam
(
"monthDate"
)
String
monthDate
)
throws
BizException
;
@ApiOperation
(
value
=
"获取图书授权总统计信息"
,
httpMethod
=
"GET"
)
@RequestMapping
(
value
=
"/getBookAuthTotalCount"
,
method
=
RequestMethod
.
GET
)
ResponseEntity
<
ResponseDto
<
BookAuthTotalCountDTO
>>
getBookAuthTotalCount
()
throws
BizException
;
@ApiOperation
(
value
=
"根据获取图书授权总统计信息"
,
httpMethod
=
"POST"
)
@RequestMapping
(
value
=
"/getBookAuthTotalCount4Adviser"
,
method
=
RequestMethod
.
POST
)
ResponseEntity
<
ResponseDto
<
BookAuthTotalCountDTO
>>
getBookAuthTotalCount4Adviser
(
@RequestBody
List
<
Long
>
adviserIds
)
throws
BizException
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/consumer/channel/QrcodeSceneConsr.java
View file @
4a493dd9
...
@@ -4,7 +4,6 @@
...
@@ -4,7 +4,6 @@
package
com
.
pcloud
.
book
.
consumer
.
channel
;
package
com
.
pcloud
.
book
.
consumer
.
channel
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.channelcenter.qrcode.dto.DefaultTempletQrcode
;
import
com.pcloud.channelcenter.qrcode.dto.QrcodeSceneDto
;
import
com.pcloud.channelcenter.qrcode.dto.QrcodeSceneDto
;
import
com.pcloud.channelcenter.qrcode.service.QrcodeSceneService
;
import
com.pcloud.channelcenter.qrcode.service.QrcodeSceneService
;
import
com.pcloud.channelcenter.qrcode.vo.BookAssocLastQrAskVO
;
import
com.pcloud.channelcenter.qrcode.vo.BookAssocLastQrAskVO
;
...
...
pcloud-service-book/src/main/java/com/pcloud/book/copyright/biz/BookAuthInfoBiz.java
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
biz
;
package
com
.
pcloud
.
book
.
copyright
.
biz
;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.dto.BookAuthTotalCountDTO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoAndServesVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoAndServesVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoWechatVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoWechatVO
;
...
@@ -11,6 +13,7 @@ import com.pcloud.book.copyright.vo.SetLocationDescVO;
...
@@ -11,6 +13,7 @@ import com.pcloud.book.copyright.vo.SetLocationDescVO;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageBeanNew
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
/**
* @author lily
* @author lily
...
@@ -68,8 +71,20 @@ public interface BookAuthInfoBiz {
...
@@ -68,8 +71,20 @@ public interface BookAuthInfoBiz {
* 获取图书授权基本信息
* 获取图书授权基本信息
*/
*/
BookAuthInfoVO
getAuthBookInfo
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
sceneId
);
BookAuthInfoVO
getAuthBookInfo
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
sceneId
);
/**
* 获取图书授权统计
*/
BookAuthInfoCountDTO
getBookAuthInfoCount
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
String
monthDate
);
/**
* 获取图书授权总的提示
*/
BookAuthTotalCountDTO
getBookAuthTotalCount
(
List
<
Long
>
adviserIds
);
/**
/**
* 获取是否有正在导出的
* 获取是否有正在导出的
*/
*/
Boolean
isHaveExport
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
Boolean
isHaveExport
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/biz/BookAuthUserBiz.java
View file @
4a493dd9
...
@@ -2,6 +2,7 @@ package com.pcloud.book.copyright.biz;
...
@@ -2,6 +2,7 @@ package com.pcloud.book.copyright.biz;
import
com.pcloud.book.copyright.entity.BookAuthUser
;
import
com.pcloud.book.copyright.entity.BookAuthUser
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookClickBuyRecordParam
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
...
@@ -18,6 +19,11 @@ public interface BookAuthUserBiz {
...
@@ -18,6 +19,11 @@ public interface BookAuthUserBiz {
BookAuthCodeUserVO
getAuthUserCount
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
BookAuthCodeUserVO
getAuthUserCount
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
/**
/**
* 根据月份获取授权用户数量
*/
BookAuthCodeUserVO
getAuthUserCountByMonth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
String
monthDate
);
/**
* 最近30天趋势图
* 最近30天趋势图
*/
*/
List
<
ThirtyDayCountVO
>
listThirtyDay
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
List
<
ThirtyDayCountVO
>
listThirtyDay
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
...
@@ -36,4 +42,15 @@ public interface BookAuthUserBiz {
...
@@ -36,4 +42,15 @@ public interface BookAuthUserBiz {
* 校验用户是否已经授权
* 校验用户是否已经授权
*/
*/
Boolean
checkIsHaveAuth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
wechatUserId
);
Boolean
checkIsHaveAuth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
wechatUserId
);
/**
* 获取授权信息总的统计数据
*/
BookAuthCodeUserVO
getAuthUserTotalCount
(
List
<
Long
>
adviserIds
);
/**
* 新增点击购买记录
*/
void
insertClickBuyRecord
(
BookClickBuyRecordParam
bookClickBuyRecordParam
,
Long
channelId
,
Long
wechatUserId
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/biz/impl/BookAuthInfoBizImpl.java
View file @
4a493dd9
...
@@ -11,13 +11,18 @@ import com.pcloud.book.consumer.common.ExportConsr;
...
@@ -11,13 +11,18 @@ import com.pcloud.book.consumer.common.ExportConsr;
import
com.pcloud.book.copyright.biz.BookAuthCodeBiz
;
import
com.pcloud.book.copyright.biz.BookAuthCodeBiz
;
import
com.pcloud.book.copyright.biz.BookAuthInfoBiz
;
import
com.pcloud.book.copyright.biz.BookAuthInfoBiz
;
import
com.pcloud.book.copyright.biz.BookAuthServeBiz
;
import
com.pcloud.book.copyright.biz.BookAuthServeBiz
;
import
com.pcloud.book.copyright.biz.BookAuthUserBiz
;
import
com.pcloud.book.copyright.biz.BookExportRecordBiz
;
import
com.pcloud.book.copyright.biz.BookExportRecordBiz
;
import
com.pcloud.book.copyright.constants.CopyrightConstants
;
import
com.pcloud.book.copyright.constants.CopyrightConstants
;
import
com.pcloud.book.copyright.dao.BookAuthInfoDao
;
import
com.pcloud.book.copyright.dao.BookAuthInfoDao
;
import
com.pcloud.book.copyright.dao.BookClickBuyRecordDao
;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.dto.BookAuthTotalCountDTO
;
import
com.pcloud.book.copyright.entity.BookAuthCode
;
import
com.pcloud.book.copyright.entity.BookAuthCode
;
import
com.pcloud.book.copyright.entity.BookAuthInfo
;
import
com.pcloud.book.copyright.entity.BookAuthInfo
;
import
com.pcloud.book.copyright.entity.BookExportRecord
;
import
com.pcloud.book.copyright.entity.BookExportRecord
;
import
com.pcloud.book.copyright.tools.CopyrightTools
;
import
com.pcloud.book.copyright.tools.CopyrightTools
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoAndServesVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoAndServesVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoWechatVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoWechatVO
;
...
@@ -92,6 +97,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
...
@@ -92,6 +97,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
@Autowired
@Autowired
private
ExportConsr
exportConsr
;
private
ExportConsr
exportConsr
;
@Autowired
private
BookAuthUserBiz
bookAuthUserBiz
;
@Autowired
private
BookClickBuyRecordDao
bookClickBuyRecordDao
;
private
static
final
ExecutorService
EXECUTOR_SERVICE
=
Executors
.
newFixedThreadPool
(
2
);
private
static
final
ExecutorService
EXECUTOR_SERVICE
=
Executors
.
newFixedThreadPool
(
2
);
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
...
@@ -477,10 +488,53 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
...
@@ -477,10 +488,53 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
BookAuthInfoVO
infoByBook
=
getInfoByBook
(
bookId
,
channelId
,
adviserId
);
BookAuthInfoVO
infoByBook
=
getInfoByBook
(
bookId
,
channelId
,
adviserId
);
return
infoByBook
;
return
infoByBook
;
}
}
@Override
public
BookAuthInfoCountDTO
getBookAuthInfoCount
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
String
monthDate
)
{
BookAuthInfoCountDTO
bookAuthInfoCountDTO
=
bookAuthInfoDao
.
getBookAuthCount
(
bookId
,
channelId
,
adviserId
);
if
(
bookAuthInfoCountDTO
==
null
)
{
return
null
;
}
BookAuthCodeUserVO
authUserCount
=
bookAuthUserBiz
.
getAuthUserCountByMonth
(
bookId
,
channelId
,
adviserId
,
monthDate
);
if
(
authUserCount
!=
null
)
{
BeanUtils
.
copyProperties
(
authUserCount
,
bookAuthInfoCountDTO
);
}
return
bookAuthInfoCountDTO
;
}
@Override
public
BookAuthTotalCountDTO
getBookAuthTotalCount
(
List
<
Long
>
adviserIds
)
{
BookAuthTotalCountDTO
bookAuthTotalCountDTO
=
new
BookAuthTotalCountDTO
();
//获取开启正版授权图书的总数
Integer
openCount
=
bookAuthInfoDao
.
getTotalNum
(
adviserIds
);
if
(
openCount
==
null
||
openCount
==
0
){
setZeroData
(
bookAuthTotalCountDTO
);
return
bookAuthTotalCountDTO
;
}
else
{
bookAuthTotalCountDTO
.
setOpenCount
(
openCount
);
}
BookAuthCodeUserVO
authUserTotalCount
=
bookAuthUserBiz
.
getAuthUserTotalCount
(
adviserIds
);
if
(
authUserTotalCount
!=
null
){
BeanUtils
.
copyProperties
(
authUserTotalCount
,
bookAuthTotalCountDTO
);
}
//获取点击链接总数
Integer
count
=
bookClickBuyRecordDao
.
getClickBuyRecordCount
(
adviserIds
);
bookAuthTotalCountDTO
.
setClickBuyCount
(
count
);
return
bookAuthTotalCountDTO
;
}
@Override
@Override
@ParamLog
(
"是否有正在导出的"
)
@ParamLog
(
"是否有正在导出的"
)
public
Boolean
isHaveExport
(
Long
bookId
,
Long
channelId
,
Long
adviserId
)
{
public
Boolean
isHaveExport
(
Long
bookId
,
Long
channelId
,
Long
adviserId
)
{
Boolean
isCanExport
=
bookExportRecordBiz
.
isHaveExport
(
bookId
,
channelId
,
adviserId
);
Boolean
isCanExport
=
bookExportRecordBiz
.
isHaveExport
(
bookId
,
channelId
,
adviserId
);
return
isCanExport
;
return
isCanExport
;
}
}
private
void
setZeroData
(
BookAuthTotalCountDTO
bookAuthTotalCountDTO
)
{
bookAuthTotalCountDTO
.
setCodeUserCount
(
0
);
bookAuthTotalCountDTO
.
setOpenCount
(
0
);
bookAuthTotalCountDTO
.
setPayUserCount
(
0
);
bookAuthTotalCountDTO
.
setTotalCount
(
0
);
bookAuthTotalCountDTO
.
setClickBuyCount
(
0
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/biz/impl/BookAuthUserBizImpl.java
View file @
4a493dd9
...
@@ -2,16 +2,21 @@ package com.pcloud.book.copyright.biz.impl;
...
@@ -2,16 +2,21 @@ package com.pcloud.book.copyright.biz.impl;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.base.exception.BookBizException
;
import
com.pcloud.book.copyright.biz.BookAuthUserBiz
;
import
com.pcloud.book.copyright.biz.BookAuthUserBiz
;
import
com.pcloud.book.base.enums.BookStatusEnum
;
import
com.pcloud.book.copyright.dao.BookAuthUserDao
;
import
com.pcloud.book.copyright.dao.BookAuthUserDao
;
import
com.pcloud.book.copyright.dao.BookClickBuyRecordDao
;
import
com.pcloud.book.copyright.dto.DateDTO
;
import
com.pcloud.book.copyright.dto.DateDTO
;
import
com.pcloud.book.copyright.entity.BookAuthUser
;
import
com.pcloud.book.copyright.entity.BookAuthUser
;
import
com.pcloud.book.copyright.entity.BookClickBuyRecord
;
import
com.pcloud.book.copyright.tools.CopyrightTools
;
import
com.pcloud.book.copyright.tools.CopyrightTools
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookClickBuyRecordParam
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.utils.DateUtils
;
import
com.pcloud.common.utils.DateUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -21,6 +26,8 @@ import java.util.Date;
...
@@ -21,6 +26,8 @@ import java.util.Date;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
/**
/**
* @author lily
* @author lily
...
@@ -28,9 +35,13 @@ import java.util.Map;
...
@@ -28,9 +35,13 @@ import java.util.Map;
*/
*/
@Component
(
"bookAuthUserBiz"
)
@Component
(
"bookAuthUserBiz"
)
public
class
BookAuthUserBizImpl
implements
BookAuthUserBiz
{
public
class
BookAuthUserBizImpl
implements
BookAuthUserBiz
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
BookAuthUserBizImpl
.
class
);
@Autowired
@Autowired
private
BookAuthUserDao
bookAuthUserDao
;
private
BookAuthUserDao
bookAuthUserDao
;
@Autowired
private
BookClickBuyRecordDao
bookClickBuyRecordDao
;
private
static
final
ExecutorService
EXECUTOR_SERVICE
=
Executors
.
newFixedThreadPool
(
4
);
@ParamLog
(
"获取授权用户数量"
)
@ParamLog
(
"获取授权用户数量"
)
@Override
@Override
...
@@ -50,6 +61,18 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
...
@@ -50,6 +61,18 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
}
}
@Override
@Override
public
BookAuthCodeUserVO
getAuthUserCountByMonth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
String
monthDate
)
{
if
(
bookId
==
null
||
channelId
==
null
||
adviserId
==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"图书不存在"
);
}
BookAuthCodeUserVO
bookAuthCodeUserVO
=
bookAuthUserDao
.
getAuthUserCountByMonth
(
bookId
,
channelId
,
adviserId
,
monthDate
);
if
(
bookAuthCodeUserVO
!=
null
&&
bookAuthCodeUserVO
.
getTotalCount
()
!=
null
&&
bookAuthCodeUserVO
.
getPayUserCount
()
!=
null
)
{
bookAuthCodeUserVO
.
setCodeUserCount
(
bookAuthCodeUserVO
.
getTotalCount
()
-
bookAuthCodeUserVO
.
getPayUserCount
());
}
return
bookAuthCodeUserVO
;
}
@Override
public
List
<
ThirtyDayCountVO
>
listThirtyDay
(
Long
bookId
,
Long
channelId
,
Long
adviserId
)
{
public
List
<
ThirtyDayCountVO
>
listThirtyDay
(
Long
bookId
,
Long
channelId
,
Long
adviserId
)
{
DateDTO
date
=
CopyrightTools
.
getDateByType
(
30L
);
DateDTO
date
=
CopyrightTools
.
getDateByType
(
30L
);
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
...
@@ -116,6 +139,32 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
...
@@ -116,6 +139,32 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
return
bookAuthUserDao
.
getIsHaveAuth
(
bookId
,
channelId
,
adviserId
,
wechatUserId
);
return
bookAuthUserDao
.
getIsHaveAuth
(
bookId
,
channelId
,
adviserId
,
wechatUserId
);
}
}
@Override
public
BookAuthCodeUserVO
getAuthUserTotalCount
(
List
<
Long
>
adviserIds
)
{
BookAuthCodeUserVO
bookAuthCodeUserVO
=
bookAuthUserDao
.
getAuthUserTotalCount
(
adviserIds
);
if
(
bookAuthCodeUserVO
!=
null
){
bookAuthCodeUserVO
.
setCodeUserCount
(
bookAuthCodeUserVO
.
getTotalCount
()
-
bookAuthCodeUserVO
.
getPayUserCount
());
}
return
bookAuthCodeUserVO
;
}
@Override
@ParamLog
(
"新增点击购买链接记录"
)
public
void
insertClickBuyRecord
(
BookClickBuyRecordParam
bookClickBuyRecordParam
,
Long
channelId
,
Long
wechatUserId
)
{
EXECUTOR_SERVICE
.
execute
(()->{
try
{
BookClickBuyRecord
bookClickBuyRecord
=
new
BookClickBuyRecord
();
bookClickBuyRecord
.
setChannelId
(
channelId
);
bookClickBuyRecord
.
setWechatUserId
(
wechatUserId
);
BeanUtils
.
copyProperties
(
bookClickBuyRecordParam
,
bookClickBuyRecord
);
bookClickBuyRecordDao
.
insert
(
bookClickBuyRecord
);
}
catch
(
Exception
e
){
LOGGER
.
error
(
"新增点击购买链接记录"
+
bookClickBuyRecordParam
);
}
});
}
/**
/**
* 设置最近6月为空得书
* 设置最近6月为空得书
*/
*/
...
...
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/BookAuthInfoDao.java
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
dao
;
package
com
.
pcloud
.
book
.
copyright
.
dao
;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.entity.BookAuthInfo
;
import
com.pcloud.book.copyright.entity.BookAuthInfo
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.common.core.dao.BaseDao
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
/**
/**
* @author lily
* @author lily
* @date 2018/12/3 15:17
* @date 2018/12/3 15:17
...
@@ -35,4 +38,14 @@ public interface BookAuthInfoDao extends BaseDao<BookAuthInfo> {
...
@@ -35,4 +38,14 @@ public interface BookAuthInfoDao extends BaseDao<BookAuthInfo> {
* 更新图书版权基本信息
* 更新图书版权基本信息
*/
*/
void
updateBaseInfo
(
BookAuthInfo
bookAuthInfo
);
void
updateBaseInfo
(
BookAuthInfo
bookAuthInfo
);
/**
* 获取图书授权信息统计数据
*/
BookAuthInfoCountDTO
getBookAuthCount
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
/**
* 获取总的数量
*/
Integer
getTotalNum
(
List
<
Long
>
adviserIds
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/BookAuthUserDao.java
View file @
4a493dd9
...
@@ -35,4 +35,13 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> {
...
@@ -35,4 +35,13 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> {
*/
*/
Boolean
getIsHaveAuth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
wechatUserId
);
Boolean
getIsHaveAuth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
Long
wechatUserId
);
/**
* 根据月份获取授权用户信息
*/
BookAuthCodeUserVO
getAuthUserCountByMonth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
String
monthDate
);
/**
* 获取总的授权用户数据
*/
BookAuthCodeUserVO
getAuthUserTotalCount
(
List
<
Long
>
adviserIds
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/BookClickBuyRecordDao.java
0 → 100644
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
dao
;
import
com.pcloud.book.copyright.entity.BookClickBuyRecord
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
/**
* @author lily
* @date 2018/12/20 15:41
*/
public
interface
BookClickBuyRecordDao
extends
BaseDao
<
BookClickBuyRecord
>
{
Integer
getClickBuyRecordCount
(
List
<
Long
>
adviserIds
);
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/BookExportRecordDao.java
View file @
4a493dd9
...
@@ -10,22 +10,22 @@ import com.pcloud.common.core.dao.BaseDao;
...
@@ -10,22 +10,22 @@ import com.pcloud.common.core.dao.BaseDao;
public
interface
BookExportRecordDao
extends
BaseDao
<
BookExportRecord
>
{
public
interface
BookExportRecordDao
extends
BaseDao
<
BookExportRecord
>
{
/**
/**
*
更新导出记录
*
更新导出记录
*/
*/
void
updateRecordStatus
(
BookExportRecord
bookExportRecord
);
void
updateRecordStatus
(
BookExportRecord
bookExportRecord
);
/**
/**
*
获取是否有正在导出的数据
*
获取是否有正在导出的数据
*/
*/
Boolean
isHaveExport
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
Boolean
isHaveExport
(
Long
bookId
,
Long
channelId
,
Long
adviserId
);
/**
/**
*
更新导出记录
*
更新导出记录
*/
*/
void
updateRecord
(
BookExportRecord
bookExportRecord
);
void
updateRecord
(
BookExportRecord
bookExportRecord
);
/**
/**
*
处理导出
*
处理导出
*/
*/
void
handleExportFail
();
void
handleExportFail
();
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/impl/BookAuthInfoDaoImpl.java
View file @
4a493dd9
...
@@ -2,6 +2,7 @@ package com.pcloud.book.copyright.dao.impl;
...
@@ -2,6 +2,7 @@ package com.pcloud.book.copyright.dao.impl;
import
com.pcloud.book.base.enums.BookStatusEnum
;
import
com.pcloud.book.base.enums.BookStatusEnum
;
import
com.pcloud.book.copyright.dao.BookAuthInfoDao
;
import
com.pcloud.book.copyright.dao.BookAuthInfoDao
;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.entity.BookAuthInfo
;
import
com.pcloud.book.copyright.entity.BookAuthInfo
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.book.copyright.vo.BookAuthInfoVO
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
...
@@ -9,6 +10,7 @@ import org.springframework.stereotype.Component;
...
@@ -9,6 +10,7 @@ import org.springframework.stereotype.Component;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
/**
/**
...
@@ -55,4 +57,18 @@ public class BookAuthInfoDaoImpl extends BaseDaoImpl<BookAuthInfo> implements Bo
...
@@ -55,4 +57,18 @@ public class BookAuthInfoDaoImpl extends BaseDaoImpl<BookAuthInfo> implements Bo
public
void
updateBaseInfo
(
BookAuthInfo
bookAuthInfo
)
{
public
void
updateBaseInfo
(
BookAuthInfo
bookAuthInfo
)
{
this
.
getSqlSession
().
update
(
this
.
getStatement
(
"updateBaseInfo"
),
bookAuthInfo
);
this
.
getSqlSession
().
update
(
this
.
getStatement
(
"updateBaseInfo"
),
bookAuthInfo
);
}
}
@Override
public
BookAuthInfoCountDTO
getBookAuthCount
(
Long
bookId
,
Long
channelId
,
Long
adviserId
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"channelId"
,
channelId
);
paramMap
.
put
(
"adviserId"
,
adviserId
);
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getBookAuthCount"
),
paramMap
);
}
@Override
public
Integer
getTotalNum
(
List
<
Long
>
adviserIds
)
{
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getTotalNum"
),
adviserIds
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/impl/BookAuthUserDaoImpl.java
View file @
4a493dd9
...
@@ -6,6 +6,7 @@ import com.pcloud.book.copyright.vo.BookAuthCodeUserVO;
...
@@ -6,6 +6,7 @@ import com.pcloud.book.copyright.vo.BookAuthCodeUserVO;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
com.pcloud.common.utils.string.StringUtil
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.HashMap
;
...
@@ -50,4 +51,22 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo
...
@@ -50,4 +51,22 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo
paramMap
.
put
(
"wechatUserId"
,
wechatUserId
);
paramMap
.
put
(
"wechatUserId"
,
wechatUserId
);
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getIsHaveAuth"
),
paramMap
);
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getIsHaveAuth"
),
paramMap
);
}
}
@Override
public
BookAuthCodeUserVO
getAuthUserCountByMonth
(
Long
bookId
,
Long
channelId
,
Long
adviserId
,
String
monthDate
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"bookId"
,
bookId
);
paramMap
.
put
(
"channelId"
,
channelId
);
paramMap
.
put
(
"adviserId"
,
adviserId
);
if
(!
StringUtil
.
isEmpty
(
monthDate
)){
paramMap
.
put
(
"monthDate"
,
monthDate
);
}
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getAuthUserCountByMonth"
),
paramMap
);
}
@Override
public
BookAuthCodeUserVO
getAuthUserTotalCount
(
List
<
Long
>
adviserIds
)
{
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getAuthUserTotalCount"
),
adviserIds
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/dao/impl/BookClickBuyRecordDaoImpl.java
0 → 100644
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
dao
.
impl
;
import
com.pcloud.book.copyright.dao.BookClickBuyRecordDao
;
import
com.pcloud.book.copyright.entity.BookClickBuyRecord
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
/**
* @author lily
* @date 2018/12/20 15:42
*/
@Component
(
"bookClickBuyRecordDao"
)
public
class
BookClickBuyRecordDaoImpl
extends
BaseDaoImpl
<
BookClickBuyRecord
>
implements
BookClickBuyRecordDao
{
@Override
public
Integer
getClickBuyRecordCount
(
List
<
Long
>
adviserIds
)
{
return
this
.
getSqlSession
().
selectOne
(
this
.
getStatement
(
"getClickBuyRecordCount"
),
adviserIds
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/entity/BookClickBuyRecord.java
0 → 100644
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
/**
* @author lily
* @date 2018/12/20 15:38
*/
@ApiModel
public
class
BookClickBuyRecord
extends
BaseEntity
{
private
Long
id
;
private
Long
bookId
;
private
Long
channelId
;
private
Long
adviserId
;
private
Long
wechatUserId
;
@Override
public
Long
getId
()
{
return
id
;
}
@Override
public
void
setId
(
Long
id
)
{
this
.
id
=
id
;
}
public
Long
getBookId
()
{
return
bookId
;
}
public
void
setBookId
(
Long
bookId
)
{
this
.
bookId
=
bookId
;
}
public
Long
getChannelId
()
{
return
channelId
;
}
public
void
setChannelId
(
Long
channelId
)
{
this
.
channelId
=
channelId
;
}
public
Long
getAdviserId
()
{
return
adviserId
;
}
public
void
setAdviserId
(
Long
adviserId
)
{
this
.
adviserId
=
adviserId
;
}
public
Long
getWechatUserId
()
{
return
wechatUserId
;
}
public
void
setWechatUserId
(
Long
wechatUserId
)
{
this
.
wechatUserId
=
wechatUserId
;
}
@Override
public
String
toString
()
{
return
"BookClickBuyRecord{"
+
"id="
+
id
+
", bookId="
+
bookId
+
", channelId="
+
channelId
+
", adviserId="
+
adviserId
+
", wechatUserId="
+
wechatUserId
+
'}'
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/facade/BookAuthUserFacade.java
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
facade
;
package
com
.
pcloud
.
book
.
copyright
.
facade
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookClickBuyRecordParam
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.dto.ResponseDto
;
...
@@ -8,6 +9,9 @@ import com.pcloud.common.exceptions.BizException;
...
@@ -8,6 +9,9 @@ import com.pcloud.common.exceptions.BizException;
import
com.pcloud.common.permission.PermissionException
;
import
com.pcloud.common.permission.PermissionException
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.CookieValue
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestHeader
;
import
org.springframework.web.bind.annotation.RequestHeader
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
@@ -38,4 +42,9 @@ public interface BookAuthUserFacade {
...
@@ -38,4 +42,9 @@ public interface BookAuthUserFacade {
ResponseDto
<
List
<
SixMonthCountVO
>>
listSixMonth
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"bookId"
)
Long
bookId
,
@RequestParam
(
"channelId"
)
Long
channelId
)
ResponseDto
<
List
<
SixMonthCountVO
>>
listSixMonth
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"bookId"
)
Long
bookId
,
@RequestParam
(
"channelId"
)
Long
channelId
)
throws
PermissionException
,
BizException
;
throws
PermissionException
,
BizException
;
@PostMapping
(
"insertClickBuyRecord"
)
@ApiOperation
(
"新增点击购买链接记录"
)
ResponseDto
<?>
insertClickBuyRecord
(
@CookieValue
(
"userInfo"
)
String
userInfo
,
@RequestBody
BookClickBuyRecordParam
bookClickBuyRecordParam
)
throws
BizException
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/facade/impl/BookAuthUserFacadeImpl.java
View file @
4a493dd9
...
@@ -3,14 +3,19 @@ package com.pcloud.book.copyright.facade.impl;
...
@@ -3,14 +3,19 @@ package com.pcloud.book.copyright.facade.impl;
import
com.pcloud.book.copyright.biz.BookAuthUserBiz
;
import
com.pcloud.book.copyright.biz.BookAuthUserBiz
;
import
com.pcloud.book.copyright.facade.BookAuthUserFacade
;
import
com.pcloud.book.copyright.facade.BookAuthUserFacade
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookAuthCodeUserVO
;
import
com.pcloud.book.copyright.vo.BookClickBuyRecordParam
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.SixMonthCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.book.copyright.vo.ThirtyDayCountVO
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.permission.PermissionException
;
import
com.pcloud.common.permission.PermissionException
;
import
com.pcloud.common.utils.SessionUtil
;
import
com.pcloud.common.utils.SessionUtil
;
import
com.pcloud.common.utils.cookie.Cookie
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.CookieValue
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestHeader
;
import
org.springframework.web.bind.annotation.RequestHeader
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
...
@@ -54,4 +59,13 @@ public class BookAuthUserFacadeImpl implements BookAuthUserFacade {
...
@@ -54,4 +59,13 @@ public class BookAuthUserFacadeImpl implements BookAuthUserFacade {
List
<
SixMonthCountVO
>
sixMonthCountVOS
=
bookAuthUserBiz
.
listSixMonth
(
bookId
,
channelId
,
adviserId
);
List
<
SixMonthCountVO
>
sixMonthCountVOS
=
bookAuthUserBiz
.
listSixMonth
(
bookId
,
channelId
,
adviserId
);
return
new
ResponseDto
<>(
sixMonthCountVOS
);
return
new
ResponseDto
<>(
sixMonthCountVOS
);
}
}
@PostMapping
(
"insertClickBuyRecord"
)
public
ResponseDto
<?>
insertClickBuyRecord
(
@CookieValue
(
"userInfo"
)
String
userInfo
,
@RequestBody
BookClickBuyRecordParam
bookClickBuyRecordParam
)
throws
BizException
{
Long
channelId
=
Cookie
.
getId
(
userInfo
,
Cookie
.
_CHANNEL_ID
);
Long
wechatUserId
=
Cookie
.
getId
(
userInfo
,
Cookie
.
_WECHAT_USER_ID
);
bookAuthUserBiz
.
insertClickBuyRecord
(
bookClickBuyRecordParam
,
channelId
,
wechatUserId
);
return
new
ResponseDto
<>();
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/service/impl/BookAuthInfoServiceImpl.java
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
service
.
impl
;
package
com
.
pcloud
.
book
.
copyright
.
service
.
impl
;
import
com.pcloud.book.copyright.biz.BookAuthInfoBiz
;
import
com.pcloud.book.copyright.biz.BookAuthInfoBiz
;
import
com.pcloud.book.copyright.dto.BookAuthInfoCountDTO
;
import
com.pcloud.book.copyright.dto.BookAuthTotalCountDTO
;
import
com.pcloud.book.copyright.service.BookAuthInfoService
;
import
com.pcloud.book.copyright.service.BookAuthInfoService
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.utils.ResponseHandleUtil
;
import
com.pcloud.common.utils.ResponseHandleUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
/**
* @author lily
* @author lily
...
@@ -30,4 +34,25 @@ public class BookAuthInfoServiceImpl implements BookAuthInfoService {
...
@@ -30,4 +34,25 @@ public class BookAuthInfoServiceImpl implements BookAuthInfoService {
@RequestParam
(
"channelId"
)
Long
channelId
,
@RequestParam
(
"adviserId"
)
Long
adviserId
)
throws
BizException
{
@RequestParam
(
"channelId"
)
Long
channelId
,
@RequestParam
(
"adviserId"
)
Long
adviserId
)
throws
BizException
{
return
ResponseHandleUtil
.
toResponse
(
bookAuthInfoBiz
.
getBookAuthPrice
(
bookId
,
channelId
,
adviserId
));
return
ResponseHandleUtil
.
toResponse
(
bookAuthInfoBiz
.
getBookAuthPrice
(
bookId
,
channelId
,
adviserId
));
}
}
@Override
@RequestMapping
(
value
=
"/getBookAuthInfoCount"
,
method
=
RequestMethod
.
GET
)
public
ResponseEntity
<
ResponseDto
<
BookAuthInfoCountDTO
>>
getBookAuthInfoCount
(
@RequestParam
(
"bookId"
)
Long
bookId
,
@RequestParam
(
"channelId"
)
Long
channelId
,
@RequestParam
(
"adviserId"
)
Long
adviserId
,
@RequestParam
(
value
=
"monthDate"
,
required
=
false
)
String
monthDate
)
throws
BizException
{
BookAuthInfoCountDTO
bookAuthInfoCountDTO
=
bookAuthInfoBiz
.
getBookAuthInfoCount
(
bookId
,
channelId
,
adviserId
,
monthDate
);
return
ResponseHandleUtil
.
toResponse
(
bookAuthInfoCountDTO
);
}
@Override
@RequestMapping
(
value
=
"/getBookAuthTotalCount"
,
method
=
RequestMethod
.
GET
)
public
ResponseEntity
<
ResponseDto
<
BookAuthTotalCountDTO
>>
getBookAuthTotalCount
()
throws
BizException
{
BookAuthTotalCountDTO
bookAuthTotalCountDTO
=
bookAuthInfoBiz
.
getBookAuthTotalCount
(
null
);
return
ResponseHandleUtil
.
toResponse
(
bookAuthTotalCountDTO
);
}
@Override
@RequestMapping
(
value
=
"/getBookAuthTotalCount4Adviser"
,
method
=
RequestMethod
.
POST
)
public
ResponseEntity
<
ResponseDto
<
BookAuthTotalCountDTO
>>
getBookAuthTotalCount4Adviser
(
@RequestBody
List
<
Long
>
adviserIds
)
throws
BizException
{
BookAuthTotalCountDTO
bookAuthTotalCountDTO
=
bookAuthInfoBiz
.
getBookAuthTotalCount
(
adviserIds
);
return
ResponseHandleUtil
.
toResponse
(
bookAuthTotalCountDTO
);
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/copyright/vo/BookClickBuyRecordParam.java
0 → 100644
View file @
4a493dd9
package
com
.
pcloud
.
book
.
copyright
.
vo
;
/**
* @author lily
* @date 2018/12/20 15:52
*/
public
class
BookClickBuyRecordParam
{
private
Long
bookId
;
private
Long
adviserId
;
public
Long
getBookId
()
{
return
bookId
;
}
public
void
setBookId
(
Long
bookId
)
{
this
.
bookId
=
bookId
;
}
public
Long
getAdviserId
()
{
return
adviserId
;
}
public
void
setAdviserId
(
Long
adviserId
)
{
this
.
adviserId
=
adviserId
;
}
@Override
public
String
toString
()
{
return
"BookClickBuyRecordParam{"
+
"bookId="
+
bookId
+
", adviserId="
+
adviserId
+
'}'
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/mq/topic/GenuineListener.java
View file @
4a493dd9
...
@@ -3,7 +3,6 @@
...
@@ -3,7 +3,6 @@
*/
*/
package
com
.
pcloud
.
book
.
mq
.
topic
;
package
com
.
pcloud
.
book
.
mq
.
topic
;
import
com.pcloud.book.book.biz.BookProductBiz
;
import
com.pcloud.book.copyright.biz.BookAuthOrderBiz
;
import
com.pcloud.book.copyright.biz.BookAuthOrderBiz
;
import
com.pcloud.book.mq.config.MQTopicConumer
;
import
com.pcloud.book.mq.config.MQTopicConumer
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.aspect.ParamLog
;
...
...
pcloud-service-book/src/main/resources/mapper/copyright/BookAuthInfo.Mapper.xml
View file @
4a493dd9
...
@@ -152,4 +152,33 @@
...
@@ -152,4 +152,33 @@
WHERE
WHERE
ID = #{id}
ID = #{id}
</update>
</update>
<select
id=
"getBookAuthCount"
resultType=
"bookAuthInfoCountDTO"
parameterType=
"map"
>
SELECT
BOOK_ID bookId, CHANNEL_ID channelId, ADVISER_ID adviserId, OPEN_TIME openTime, CLOSE_TIME closeTime
FROM
BOOK_AUTH_INFO
WHERE
BOOK_ID = #{bookId, jdbcType=BIGINT}
AND
CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT}
</select>
<select
id=
"getTotalNum"
resultType=
"Integer"
>
SELECT
COUNT(1)
FROM
BOOK_AUTH_INFO
WHERE
BOOK_STATUS = 1
<if
test=
"list!=null"
>
AND ADVISER_ID in
<foreach
collection=
"list"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
</if>
</select>
</mapper>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/copyright/BookAuthUser.Mapper.xml
View file @
4a493dd9
...
@@ -24,6 +24,25 @@
...
@@ -24,6 +24,25 @@
ADVISER_ID = #{adviserId, jdbcType=BIGINT}
ADVISER_ID = #{adviserId, jdbcType=BIGINT}
</select>
</select>
<select
id=
"getAuthUserCountByMonth"
resultType=
"bookAuthCodeUserVO"
parameterType=
"map"
>
SELECT
COUNT(1) totalCount,
IFNULL(SUM(is_auth_code),0) payUserCount
FROM
BOOK_AUTH_USER
WHERE
BOOK_ID = #{bookId, jdbcType=BIGINT}
AND
CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT}
<if
test=
"monthDate!=null"
>
AND MONTHS = #{monthDate}
</if>
</select>
<select
id=
"getIsHaveAuth"
resultType=
"Boolean"
parameterType=
"map"
>
<select
id=
"getIsHaveAuth"
resultType=
"Boolean"
parameterType=
"map"
>
SELECT
SELECT
COUNT(1)
COUNT(1)
...
@@ -78,6 +97,18 @@
...
@@ -78,6 +97,18 @@
GROUP BY months
GROUP BY months
</select>
</select>
<select
id=
"getAuthUserTotalCount"
resultType=
"bookAuthCodeUserVO"
parameterType=
"list"
>
SELECT
COUNT(1) totalCount,
IFNULL(SUM(is_auth_code),0) payUserCount
FROM
BOOK_AUTH_USER
<if
test=
"list != null"
>
WHERE ADVISER_ID in
<foreach
collection=
"list"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
</if>
</select>
</mapper>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/copyright/BookClickBuyRecord.Mapper.xml
0 → 100644
View file @
4a493dd9
<?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.copyright.dao.impl.BookClickBuyRecordDaoImpl"
>
<insert
id=
"insert"
useGeneratedKeys=
"true"
parameterType=
"bookClickBuyRecord"
>
INSERT INTO BOOK_CLICK_BUY_RECORD(
BOOK_ID, CHANNEL_ID,ADVISER_ID, WECHAT_USER_ID, CREATED_USER, CREATED_DATE)
VALUES
(#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT},#{wechatUserId},
#{wechatUserId}, NOW())
</insert>
<select
id=
"getClickBuyRecordCount"
resultType=
"Integer"
parameterType=
"list"
>
SELECT
COUNT(distinct WECHAT_USER_ID)
FROM
BOOK_CLICK_BUY_RECORD
WHERE
1=1
<if
test=
"list!=null"
>
AND ADVISER_ID in
<foreach
collection=
"list"
item=
"item"
open=
"("
separator=
","
close=
")"
>
${item}
</foreach>
</if>
</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