Commit 1f20e689 by lihao

社群书版权保护

缺失字段修改4

获取社群书版权保护内部接口

'fixbug'

fixbug 授权人数
parent a1670ff6
package com.pcloud.book.copyright.dto;
import com.pcloud.common.dto.BaseDto;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* @author lihao
* @date 2019/9/3 17:02
*/
@ApiModel
public class CheckUserAuthDTO extends BaseDto {
private static final long serialVersionUID = -2646713544720373882L;
@ApiModelProperty("图书标识")
private Long bookId;
@ApiModelProperty("运营标识")
private Long channelId;
@ApiModelProperty("编辑标识")
private Long adviserId;
@ApiModelProperty("微信用户列表")
private List<Long> wechatUserIds;
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 List<Long> getWechatUserIds() {
return wechatUserIds;
}
public void setWechatUserIds(List<Long> wechatUserIds) {
this.wechatUserIds = wechatUserIds;
}
@Override
public String toString() {
return "CheckUserAuthDTO{" +
"bookId=" + bookId +
", channelId=" + channelId +
", adviserId=" + adviserId +
", wechatUserIds=" + wechatUserIds +
'}';
}
}
...@@ -2,6 +2,7 @@ package com.pcloud.book.copyright.service; ...@@ -2,6 +2,7 @@ package com.pcloud.book.copyright.service;
import com.pcloud.book.copyright.dto.BookAuthInfoCountDTO; import com.pcloud.book.copyright.dto.BookAuthInfoCountDTO;
import com.pcloud.book.copyright.dto.BookAuthTotalCountDTO; import com.pcloud.book.copyright.dto.BookAuthTotalCountDTO;
import com.pcloud.book.copyright.dto.CheckUserAuthDTO;
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;
...@@ -26,13 +27,13 @@ public interface BookAuthInfoService { ...@@ -26,13 +27,13 @@ public interface BookAuthInfoService {
@ApiOperation(value = "获取图书授权金价格", httpMethod = "GET") @ApiOperation(value = "获取图书授权金价格", httpMethod = "GET")
@RequestMapping(value = "/getBookAuthPrice", method = RequestMethod.GET) @RequestMapping(value = "/getBookAuthPrice", method = RequestMethod.GET)
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,
throws BizException; @RequestParam("adviserId")Long adviserId) throws BizException;
@ApiOperation(value = "获取图书授权统计信息", httpMethod = "GET") @ApiOperation(value = "获取图书授权统计信息", httpMethod = "GET")
@RequestMapping(value = "/getBookAuthInfoCount", method = RequestMethod.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) ResponseEntity<ResponseDto<BookAuthInfoCountDTO>> getBookAuthInfoCount(@RequestParam("bookId") Long bookId, @RequestParam("channelId")Long channelId,
throws BizException; @RequestParam("adviserId")Long adviserId, @RequestParam("monthDate") String monthDate) throws BizException;
@ApiOperation(value = "获取图书授权总统计信息", httpMethod = "GET") @ApiOperation(value = "获取图书授权总统计信息", httpMethod = "GET")
@RequestMapping(value = "/getBookAuthTotalCount", method = RequestMethod.GET) @RequestMapping(value = "/getBookAuthTotalCount", method = RequestMethod.GET)
...@@ -41,4 +42,15 @@ public interface BookAuthInfoService { ...@@ -41,4 +42,15 @@ public interface BookAuthInfoService {
@ApiOperation(value = "根据获取图书授权总统计信息", httpMethod = "POST") @ApiOperation(value = "根据获取图书授权总统计信息", httpMethod = "POST")
@RequestMapping(value = "/getBookAuthTotalCount4Adviser", method = RequestMethod.POST) @RequestMapping(value = "/getBookAuthTotalCount4Adviser", method = RequestMethod.POST)
ResponseEntity<ResponseDto<BookAuthTotalCountDTO>> getBookAuthTotalCount4Adviser(@RequestBody List<Long> adviserIds) throws BizException; ResponseEntity<ResponseDto<BookAuthTotalCountDTO>> getBookAuthTotalCount4Adviser(@RequestBody List<Long> adviserIds) throws BizException;
@ApiOperation(value = "校验用户是否授权过(进群)", httpMethod = "POST")
@RequestMapping(value = "/checkUserIsHaveAuth", method = RequestMethod.POST)
ResponseEntity<ResponseDto<Boolean>> checkUserIsHaveAuth(@RequestBody CheckUserAuthDTO checkUserAuthDTO) throws BizException;
@ApiOperation(value = "获取社群书授权金价格", httpMethod = "GET")
@RequestMapping(value = "/getGroupBookAuthPrice", method = RequestMethod.GET)
ResponseEntity<ResponseDto<BigDecimal>> getGroupBookAuthPrice(@RequestParam("bookId") Long bookId, @RequestParam("channelId")Long channelId,
@RequestParam("adviserId")Long adviserId) throws BizException;
} }
...@@ -12,6 +12,7 @@ import com.pcloud.book.book.dto.BookInfoAnalysicsDTO; ...@@ -12,6 +12,7 @@ import com.pcloud.book.book.dto.BookInfoAnalysicsDTO;
import com.pcloud.book.book.dto.BookInfoAndAuthStatusDTO; import com.pcloud.book.book.dto.BookInfoAndAuthStatusDTO;
import com.pcloud.book.book.entity.Book; import com.pcloud.book.book.entity.Book;
import com.pcloud.book.book.vo.ListNoAuthBookParam; import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
import com.pcloud.common.exceptions.BizException; import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBean; import com.pcloud.common.page.PageBean;
import com.pcloud.common.page.PageBeanNew; import com.pcloud.common.page.PageBeanNew;
...@@ -550,6 +551,14 @@ public interface BookBiz { ...@@ -550,6 +551,14 @@ public interface BookBiz {
PageBeanNew listNoAuthBook(ListNoAuthBookParam listNoAuthBookParam, Long adviserId); PageBeanNew listNoAuthBook(ListNoAuthBookParam listNoAuthBookParam, Long adviserId);
/** /**
* 获取未设置授权的社群书
* @param listNoAuthGroupBookParam
* @param adviserId
* @return
*/
PageBeanNew listNoAuthGroupBook(ListNoAuthGroupBookParam listNoAuthGroupBookParam, Long adviserId);
/**
* 获取图书基本信息与授权状态 * 获取图书基本信息与授权状态
*/ */
BookInfoAndAuthStatusDTO getBaseAndAuthStatus(Long bookId, Long channelId, Long adviserId); BookInfoAndAuthStatusDTO getBaseAndAuthStatus(Long bookId, Long channelId, Long adviserId);
......
...@@ -39,6 +39,7 @@ import com.pcloud.book.book.entity.BookAdviser; ...@@ -39,6 +39,7 @@ import com.pcloud.book.book.entity.BookAdviser;
import com.pcloud.book.book.set.BookSet; import com.pcloud.book.book.set.BookSet;
import com.pcloud.book.book.tools.BookTools; import com.pcloud.book.book.tools.BookTools;
import com.pcloud.book.book.vo.ListNoAuthBookParam; import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
import com.pcloud.book.consumer.analysisengine.SceneRecordConsr; import com.pcloud.book.consumer.analysisengine.SceneRecordConsr;
import com.pcloud.book.consumer.app.AssistTempletConsr; import com.pcloud.book.consumer.app.AssistTempletConsr;
import com.pcloud.book.consumer.channel.QrcodeSceneConsr; import com.pcloud.book.consumer.channel.QrcodeSceneConsr;
...@@ -1673,6 +1674,28 @@ public class BookBizImpl implements BookBiz { ...@@ -1673,6 +1674,28 @@ public class BookBizImpl implements BookBiz {
} }
@Override @Override
@ParamLog("未设置版权保护的社群书")
public PageBeanNew listNoAuthGroupBook(ListNoAuthGroupBookParam listNoAuthGroupBookParam, Long adviserId) {
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("adviserId", adviserId);
paramMap.put("channelId", listNoAuthGroupBookParam.getChannelId());
paramMap.put("name", listNoAuthGroupBookParam.getName() != null && "".equals(listNoAuthGroupBookParam.getName().trim()) ? null : listNoAuthGroupBookParam.getName());
paramMap.put("typeCode", listNoAuthGroupBookParam.getTypeCode() != null && "".equals(listNoAuthGroupBookParam.getTypeCode().trim()) ? null : listNoAuthGroupBookParam.getTypeCode());
paramMap.put("templetId", listNoAuthGroupBookParam.getTempletId());
paramMap.put("secondTempletIds", Optional.ofNullable(listNoAuthGroupBookParam.getSecondTempletId()).map(Lists::newArrayList).orElse(Lists.newArrayList()));
PageParam pageParam = new PageParam(listNoAuthGroupBookParam.getCurrentPage(), listNoAuthGroupBookParam.getNumPerPage());
PageBeanNew pageBean = bookDao.listPageNew(pageParam, paramMap, "listNoAuthGroupBook");
if (pageBean == null || ListUtils.isEmpty(pageBean.getRecordList())) {
return new PageBeanNew(listNoAuthGroupBookParam.getCurrentPage(), listNoAuthGroupBookParam.getNumPerPage(), new ArrayList<>());
}
//设置类型名称
bookSet.setTempletNames(pageBean.getRecordList());
//设置运营平台名称
bookSet.setChannelName(pageBean.getRecordList());
return pageBean;
}
@Override
@ParamLog("获取图书基本信息与授权状态") @ParamLog("获取图书基本信息与授权状态")
public BookInfoAndAuthStatusDTO getBaseAndAuthStatus(Long bookId, Long channelId, Long adviserId) { public BookInfoAndAuthStatusDTO getBaseAndAuthStatus(Long bookId, Long channelId, Long adviserId) {
BookDto book = getBaseById(bookId); BookDto book = getBaseById(bookId);
...@@ -1683,7 +1706,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1683,7 +1706,7 @@ public class BookBizImpl implements BookBiz {
BookInfoAndAuthStatusDTO bookInfoAndAuthStatusDTO = new BookInfoAndAuthStatusDTO(); BookInfoAndAuthStatusDTO bookInfoAndAuthStatusDTO = new BookInfoAndAuthStatusDTO();
BeanUtils.copyProperties(book, bookInfoAndAuthStatusDTO); BeanUtils.copyProperties(book, bookInfoAndAuthStatusDTO);
//获取授权状态 //获取授权状态
BookAuthInfoVO infoByBook = bookAuthInfoBiz.getInfoByBook(bookId, channelId, adviserId); BookAuthInfoVO infoByBook = bookAuthInfoBiz.getInfoByBook(bookId, channelId, adviserId, null);
if (infoByBook != null) { if (infoByBook != null) {
BeanUtils.copyProperties(infoByBook, bookInfoAndAuthStatusDTO); BeanUtils.copyProperties(infoByBook, bookInfoAndAuthStatusDTO);
} }
......
...@@ -7,6 +7,7 @@ import com.pcloud.book.book.dto.BookAssocCount; ...@@ -7,6 +7,7 @@ import com.pcloud.book.book.dto.BookAssocCount;
import com.pcloud.book.book.dto.BookDto; import com.pcloud.book.book.dto.BookDto;
import com.pcloud.book.book.entity.Book; import com.pcloud.book.book.entity.Book;
import com.pcloud.book.book.vo.ListNoAuthBookParam; import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
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.page.PageBean; import com.pcloud.common.page.PageBean;
...@@ -560,4 +561,9 @@ public interface BookFacade { ...@@ -560,4 +561,9 @@ public interface BookFacade {
@ApiOperation(value = "获取未设置正版授权的图书", httpMethod = "POST") @ApiOperation(value = "获取未设置正版授权的图书", httpMethod = "POST")
ResponseDto<PageBeanNew> listNoAuthBook(@RequestHeader("token") String token, ResponseDto<PageBeanNew> listNoAuthBook(@RequestHeader("token") String token,
@RequestBody ListNoAuthBookParam listNoAuthBookParam) throws PermissionException; @RequestBody ListNoAuthBookParam listNoAuthBookParam) throws PermissionException;
@RequestMapping(value = "listNoAuthGroupBook", method = RequestMethod.POST)
@ApiOperation(value = "获取未设置正版授权的社群书", httpMethod = "POST")
ResponseDto<PageBeanNew> listNoAuthGroupBook(@RequestHeader("token") String token,
@RequestBody ListNoAuthGroupBookParam listNoAuthGroupBookParam) throws PermissionException;
} }
...@@ -11,6 +11,7 @@ import com.pcloud.book.book.dto.BookDto; ...@@ -11,6 +11,7 @@ import com.pcloud.book.book.dto.BookDto;
import com.pcloud.book.book.entity.Book; import com.pcloud.book.book.entity.Book;
import com.pcloud.book.book.facade.BookFacade; import com.pcloud.book.book.facade.BookFacade;
import com.pcloud.book.book.vo.ListNoAuthBookParam; import com.pcloud.book.book.vo.ListNoAuthBookParam;
import com.pcloud.book.book.vo.ListNoAuthGroupBookParam;
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.page.PageBean; import com.pcloud.common.page.PageBean;
...@@ -746,4 +747,14 @@ public class BookFacadeImpl implements BookFacade { ...@@ -746,4 +747,14 @@ public class BookFacadeImpl implements BookFacade {
PageBeanNew pageBeanNew = bookBiz.listNoAuthBook(listNoAuthBookParam, adviserId); PageBeanNew pageBeanNew = bookBiz.listNoAuthBook(listNoAuthBookParam, adviserId);
return new ResponseDto<PageBeanNew>(null == pageBeanNew ? new PageBeanNew():pageBeanNew); return new ResponseDto<PageBeanNew>(null == pageBeanNew ? new PageBeanNew():pageBeanNew);
} }
@Override
@RequestMapping(value = "listNoAuthGroupBook", method = RequestMethod.POST)
public ResponseDto<PageBeanNew> listNoAuthGroupBook(@RequestHeader("token") String token,
@RequestBody ListNoAuthGroupBookParam listNoAuthGroupBookParam)
throws BizException, PermissionException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
PageBeanNew pageBeanNew = bookBiz.listNoAuthGroupBook(listNoAuthGroupBookParam, adviserId);
return new ResponseDto<PageBeanNew>(null == pageBeanNew ? new PageBeanNew():pageBeanNew);
}
} }
package com.pcloud.book.book.vo;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* @author lily
* @date 2018/12/3 20:35
*/
@ApiModel
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ListNoAuthGroupBookParam implements Serializable {
@ApiModelProperty("isbn/issn/图书名称")
private String name;
@ApiModelProperty("运营标识")
private Long channelId;
@ApiModelProperty("图书类型标识")
private Long templetId;
@ApiModelProperty("图书类型标识")
private Long secondTempletId;
@ApiModelProperty("当前页")
private Integer currentPage;
@ApiModelProperty("每页条数")
private Integer numPerPage;
@ApiModelProperty("类型")
private String typeCode;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Long getChannelId() {
return channelId;
}
public void setChannelId(Long channelId) {
this.channelId = channelId;
}
public Long getTempletId() {
return templetId;
}
public Long getSecondTempletId() {
return secondTempletId;
}
public void setSecondTempletId(Long secondTempletId) {
this.secondTempletId = secondTempletId;
}
public void setTempletId(Long templetId) {
this.templetId = templetId;
}
public Integer getCurrentPage() {
return currentPage;
}
public void setCurrentPage(Integer currentPage) {
this.currentPage = currentPage;
}
public Integer getNumPerPage() {
return numPerPage;
}
public void setNumPerPage(Integer numPerPage) {
this.numPerPage = numPerPage;
}
public String getTypeCode() {
return typeCode;
}
public void setTypeCode(String typeCode) {
this.typeCode = typeCode;
}
@Override
public String toString() {
return "ListNoAuthBookParam{" +
"name='" + name + '\'' +
", channelId=" + channelId +
", templetId=" + templetId +
", secondTempletId=" + secondTempletId +
", currentPage=" + currentPage +
", numPerPage=" + numPerPage +
", typeCode='" + typeCode + '\'' +
'}';
}
}
...@@ -28,7 +28,7 @@ public interface BookAuthCodeBiz { ...@@ -28,7 +28,7 @@ public interface BookAuthCodeBiz {
/** /**
* 获取最大批次号 * 获取最大批次号
*/ */
Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId); Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 校验验证码 * 校验验证码
...@@ -53,7 +53,7 @@ public interface BookAuthCodeBiz { ...@@ -53,7 +53,7 @@ public interface BookAuthCodeBiz {
* @Desr:获取导入记录 * @Desr:获取导入记录
* @Date:2019/5/22 18:02 * @Date:2019/5/22 18:02
*/ */
PageBeanNew<ImportRecordVO> importCodeRecord(Long bookId, Long channelId, Long adviserId, Integer currentPage, Integer numPerPage); PageBeanNew<ImportRecordVO> importCodeRecord(Long bookId, Long channelId, Long adviserId, Integer authBookType, Integer currentPage, Integer numPerPage);
/** /**
* 获取正版授权码 * 获取正版授权码
...@@ -64,7 +64,7 @@ public interface BookAuthCodeBiz { ...@@ -64,7 +64,7 @@ public interface BookAuthCodeBiz {
* @param pageParam * @param pageParam
* @return * @return
*/ */
PageBeanNew<BookAuthCodeDTO> getCodeList(Long bookId, Long channelId, Long adviserId, String keyword, Integer state, PageParam pageParam); PageBeanNew<BookAuthCodeDTO> getCodeList(Long bookId, Long channelId, Long adviserId, String keyword, Integer state, Integer authBookType, PageParam pageParam);
/** /**
* 批量删除正版授权码 * 批量删除正版授权码
...@@ -82,5 +82,5 @@ public interface BookAuthCodeBiz { ...@@ -82,5 +82,5 @@ public interface BookAuthCodeBiz {
* @param partyId * @param partyId
* @return * @return
*/ */
Map<String, Object> getCodeExcel(Long bookId, String codeIds, Long channelId, Long status, String systemCode, Long partyId); Map<String, Object> getCodeExcel(Long bookId, String codeIds, Long channelId, Long status, String systemCode, Long partyId, Integer authBookType);
} }
...@@ -7,6 +7,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO; ...@@ -7,6 +7,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO;
import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO; import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO;
import com.pcloud.book.copyright.vo.GetAuthInfoParam; import com.pcloud.book.copyright.vo.GetAuthInfoParam;
import com.pcloud.book.copyright.vo.ListHaveAuthBookParam; import com.pcloud.book.copyright.vo.ListHaveAuthBookParam;
import com.pcloud.book.copyright.vo.ListHaveAuthGroupBookParam;
import com.pcloud.book.copyright.vo.SetAuthStatusParam; import com.pcloud.book.copyright.vo.SetAuthStatusParam;
import com.pcloud.book.copyright.vo.SetAuthOpenParam; import com.pcloud.book.copyright.vo.SetAuthOpenParam;
import com.pcloud.book.copyright.vo.SetLocationDescVO; import com.pcloud.book.copyright.vo.SetLocationDescVO;
...@@ -44,12 +45,12 @@ public interface BookAuthInfoBiz { ...@@ -44,12 +45,12 @@ public interface BookAuthInfoBiz {
/** /**
* 获取图书正版授权基本信息 * 获取图书正版授权基本信息
*/ */
BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId); BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 获取图书正版授权基本信息 * 获取图书正版授权基本信息
*/ */
BookAuthInfoAndServesVO getInfoAndServesByBook(Long bookId, Long channelId, Long adviserId); BookAuthInfoAndServesVO getInfoAndServesByBook(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 获取设置够正版授权图书信息 * 获取设置够正版授权图书信息
...@@ -58,9 +59,15 @@ public interface BookAuthInfoBiz { ...@@ -58,9 +59,15 @@ public interface BookAuthInfoBiz {
PageBeanNew listHaveSetAuthBook(ListHaveAuthBookParam listHaveAuthBookParam, Long adviserId); PageBeanNew listHaveSetAuthBook(ListHaveAuthBookParam listHaveAuthBookParam, Long adviserId);
/** /**
* 获取设置够正版授权社群书信息
* @return
*/
PageBeanNew listHaveSetAuthGroupBook(ListHaveAuthGroupBookParam listHaveAuthGroupBookParam, Long adviserId);
/**
* 获取正版授权金价格 * 获取正版授权金价格
*/ */
BigDecimal getBookAuthPrice(Long bookId, Long channelId, Long adviserId); BigDecimal getBookAuthPrice(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 获取图书授权信息 * 获取图书授权信息
...@@ -70,7 +77,7 @@ public interface BookAuthInfoBiz { ...@@ -70,7 +77,7 @@ public interface BookAuthInfoBiz {
/** /**
* 获取图书授权基本信息 * 获取图书授权基本信息
*/ */
BookAuthInfoVO getAuthBookInfo(Long bookId, Long channelId, Long adviserId, Long sceneId); BookAuthInfoVO getAuthBookInfo(Long bookId, Long channelId, Long adviserId, Long sceneId, Integer authBookType);
/** /**
* 获取图书授权统计 * 获取图书授权统计
......
package com.pcloud.book.copyright.biz; package com.pcloud.book.copyright.biz;
import com.pcloud.book.copyright.dto.CheckUserAuthDTO;
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.BookClickBuyRecordParam;
...@@ -17,7 +18,7 @@ public interface BookAuthUserBiz { ...@@ -17,7 +18,7 @@ public interface BookAuthUserBiz {
/** /**
* 获取授权用户数量 * 获取授权用户数量
*/ */
BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId); BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 根据月份获取授权用户数量 * 根据月份获取授权用户数量
...@@ -27,12 +28,12 @@ public interface BookAuthUserBiz { ...@@ -27,12 +28,12 @@ public interface BookAuthUserBiz {
/** /**
* 最近30天趋势图 * 最近30天趋势图
*/ */
List<ThirtyDayCountVO> listThirtyDay(Long bookId, Long channelId, Long adviserId, String province); List<ThirtyDayCountVO> listThirtyDay(Long bookId, Long channelId, Long adviserId, String province, Integer authBookType);
/** /**
* 最近6个月趋势图 * 最近6个月趋势图
*/ */
List<SixMonthCountVO> listSixMonth(Long bookId, Long channelId, Long adviserId, String province); List<SixMonthCountVO> listSixMonth(Long bookId, Long channelId, Long adviserId, String province, Integer authBookType);
/** /**
* 新增用户授权记录 * 新增用户授权记录
...@@ -42,7 +43,7 @@ public interface BookAuthUserBiz { ...@@ -42,7 +43,7 @@ public interface BookAuthUserBiz {
/** /**
* 校验用户是否已经授权 * 校验用户是否已经授权
*/ */
Boolean checkIsHaveAuth(Long bookId, Long channelId, Long adviserId, Long wechatUserId); Boolean checkIsHaveAuth(Long bookId, Long channelId, Long adviserId, Long wechatUserId, Integer authBookType);
/** /**
* 获取授权信息总的统计数据 * 获取授权信息总的统计数据
...@@ -58,4 +59,9 @@ public interface BookAuthUserBiz { ...@@ -58,4 +59,9 @@ public interface BookAuthUserBiz {
* 省份排名前10 * 省份排名前10
*/ */
List<ProvinceTop10VO> listTop10ByBook(Long bookId, Long channelId, Long adviserId, Integer type); List<ProvinceTop10VO> listTop10ByBook(Long bookId, Long channelId, Long adviserId, Integer type);
/**
* 校验用户是否授权(进群)
*/
Boolean checkUserIsHaveAuth(CheckUserAuthDTO checkUserAuthDTO);
} }
...@@ -20,6 +20,7 @@ import com.pcloud.book.copyright.dto.BookAuthCodeDTO; ...@@ -20,6 +20,7 @@ import com.pcloud.book.copyright.dto.BookAuthCodeDTO;
import com.pcloud.book.copyright.entity.BookAuthCode; import com.pcloud.book.copyright.entity.BookAuthCode;
import com.pcloud.book.copyright.entity.BookAuthCodeImportRecord; import com.pcloud.book.copyright.entity.BookAuthCodeImportRecord;
import com.pcloud.book.copyright.entity.BookAuthUser; import com.pcloud.book.copyright.entity.BookAuthUser;
import com.pcloud.book.copyright.enums.AuthBookTypeEnum;
import com.pcloud.book.copyright.tools.ExcelUtil; import com.pcloud.book.copyright.tools.ExcelUtil;
import com.pcloud.book.copyright.vo.BookAuthInfoVO; import com.pcloud.book.copyright.vo.BookAuthInfoVO;
import com.pcloud.book.copyright.vo.CheckCodeParam; import com.pcloud.book.copyright.vo.CheckCodeParam;
...@@ -128,8 +129,8 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -128,8 +129,8 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
} }
@Override @Override
public Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId) { public Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
Integer batchNum = bookAuthCodeDao.getMaxBatchNum(bookId, channelId, adviserId); Integer batchNum = bookAuthCodeDao.getMaxBatchNum(bookId, channelId, adviserId, authBookType);
return batchNum; return batchNum;
} }
...@@ -137,29 +138,30 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -137,29 +138,30 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Integer checkCode(CheckCodeParam checkCodeParam, Long channelId, Long wechatUserId) { public Integer checkCode(CheckCodeParam checkCodeParam, Long channelId, Long wechatUserId) {
String code = checkCodeParam.getCode(); String code = checkCodeParam.getCode();
Integer authBookType = checkCodeParam.getAuthBookType();
if (StringUtils.isEmpty(code) || code.length() != 15) { if (StringUtils.isEmpty(code) || code.length() != 15) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "此码错误,请重新验证"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "此码错误,请重新验证");
} }
BookAuthInfoVO authBookInfo = bookAuthInfoBiz.getAuthBookInfo(checkCodeParam.getBookId(), channelId, checkCodeParam.getAdviserId(), checkCodeParam.getSceneId()); BookAuthInfoVO authBookInfo = bookAuthInfoBiz.getAuthBookInfo(checkCodeParam.getBookId(), channelId, checkCodeParam.getAdviserId(), checkCodeParam.getSceneId(), authBookType);
if (authBookInfo == null || BookStatusEnum.NO_SET.value.equals(authBookInfo.getBookStatus())) { if (authBookInfo == null || BookStatusEnum.NO_SET.value.equals(authBookInfo.getBookStatus())) {
return BookStatusEnum.CodeUseTypeEnum.RIGHT.value; return BookStatusEnum.CodeUseTypeEnum.RIGHT.value;
} }
Long bookId = authBookInfo.getBookId(); Long bookId = authBookInfo.getBookId();
Long adviserId = authBookInfo.getAdviserId(); Long adviserId = authBookInfo.getAdviserId();
//校验用户是否已经授权过 //校验用户是否已经授权过
Boolean isHaveAuth = bookAuthUserBiz.checkIsHaveAuth(bookId, channelId, adviserId, wechatUserId); Boolean isHaveAuth = bookAuthUserBiz.checkIsHaveAuth(bookId, channelId, adviserId, wechatUserId, authBookType);
if (isHaveAuth) { if (isHaveAuth) {
return BookStatusEnum.CodeUseTypeEnum.RIGHT.value; return BookStatusEnum.CodeUseTypeEnum.RIGHT.value;
} }
Boolean isHaveCode = bookAuthCodeDao.getIsHaveCode(bookId, channelId, adviserId, code); Boolean isHaveCode = bookAuthCodeDao.getIsHaveCode(bookId, channelId, adviserId, code, authBookType);
Integer count = bookAuthCodeDao.updateUseCount(bookId, channelId, adviserId, code, authBookInfo.getCodeUseCount()); Integer count = bookAuthCodeDao.updateUseCount(bookId, channelId, adviserId, code, authBookInfo.getCodeUseCount(), authBookType);
if (count < 1 && isHaveCode) { if (count < 1 && isHaveCode) {
return BookStatusEnum.CodeUseTypeEnum.HAVE_USE.value; return BookStatusEnum.CodeUseTypeEnum.HAVE_USE.value;
} else if (count < 1 && !isHaveCode) { } else if (count < 1 && !isHaveCode) {
return BookStatusEnum.CodeUseTypeEnum.NOT_RIGHT.value; return BookStatusEnum.CodeUseTypeEnum.NOT_RIGHT.value;
} else { } else {
//新增一条校验成功记录 //新增一条校验成功记录
addUserRecord(bookId, channelId, adviserId, wechatUserId); addUserRecord(bookId, channelId, adviserId, wechatUserId, authBookType);
return BookStatusEnum.CodeUseTypeEnum.RIGHT.value; return BookStatusEnum.CodeUseTypeEnum.RIGHT.value;
} }
} }
...@@ -173,7 +175,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -173,7 +175,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "请选择要进入的服务"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "请选择要进入的服务");
} }
//校验图书是否开启保护 //校验图书是否开启保护
BookAuthInfoVO authBookInfo = bookAuthInfoBiz.getAuthBookInfo(checkIsAuthServeParam.getBookId(), channelId, checkIsAuthServeParam.getAdviserId(), checkIsAuthServeParam.getSceneId()); BookAuthInfoVO authBookInfo = bookAuthInfoBiz.getAuthBookInfo(checkIsAuthServeParam.getBookId(), channelId, checkIsAuthServeParam.getAdviserId(), checkIsAuthServeParam.getSceneId(),null);
if (authBookInfo == null || BookStatusEnum.NO_SET.value.equals(authBookInfo.getBookStatus())) { if (authBookInfo == null || BookStatusEnum.NO_SET.value.equals(authBookInfo.getBookStatus())) {
return false; return false;
} }
...@@ -191,7 +193,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -191,7 +193,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
return false; return false;
} }
//校验用户是否已经授权过 //校验用户是否已经授权过
Boolean isHaveAuth = bookAuthUserBiz.checkIsHaveAuth(bookId, channelId, adviserId, wechatUserId); Boolean isHaveAuth = bookAuthUserBiz.checkIsHaveAuth(bookId, channelId, adviserId, wechatUserId,null);
if (isHaveAuth) { if (isHaveAuth) {
return false; return false;
} else { } else {
...@@ -210,6 +212,14 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -210,6 +212,14 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
bookAuthCodeImportRecord.setCreateUser(adviserId); bookAuthCodeImportRecord.setCreateUser(adviserId);
bookAuthCodeImportRecord.setFileName(fileVO.getFileName()); bookAuthCodeImportRecord.setFileName(fileVO.getFileName());
bookAuthCodeImportRecord.setFileUrl(fileVO.getFileUrl()); bookAuthCodeImportRecord.setFileUrl(fileVO.getFileUrl());
Integer authBookType = fileVO.getAuthBookType();
if(authBookType == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
bookAuthCodeImportRecord.setIsPaperBook(1);
bookAuthCodeImportRecord.setIsGroupBook(0);
} else {
bookAuthCodeImportRecord.setIsPaperBook(0);
bookAuthCodeImportRecord.setIsGroupBook(1);
}
bookAuthCodeImportRecordDao.insert(bookAuthCodeImportRecord); bookAuthCodeImportRecordDao.insert(bookAuthCodeImportRecord);
ThreadPoolUtils.EXPORT_THREAD_POOL.execute(() -> { ThreadPoolUtils.EXPORT_THREAD_POOL.execute(() -> {
Integer isFinish = 1; Integer isFinish = 1;
...@@ -219,6 +229,13 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -219,6 +229,13 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
List<BookAuthCode> bookAuthCodes = new ArrayList<>(); List<BookAuthCode> bookAuthCodes = new ArrayList<>();
for (int i = 0, size = data.length; i < size; i++) { for (int i = 0, size = data.length; i < size; i++) {
BookAuthCode bookAuthCode = new BookAuthCode(); BookAuthCode bookAuthCode = new BookAuthCode();
if(authBookType == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
bookAuthCode.setIsPaperBook(1);
bookAuthCode.setIsGroupBook(0);
} else {
bookAuthCode.setIsPaperBook(0);
bookAuthCode.setIsGroupBook(1);
}
bookAuthCode.setBookId(fileVO.getBookId()); bookAuthCode.setBookId(fileVO.getBookId());
bookAuthCode.setChannelId(fileVO.getChannelId()); bookAuthCode.setChannelId(fileVO.getChannelId());
bookAuthCode.setAdviserId(adviserId); bookAuthCode.setAdviserId(adviserId);
...@@ -272,17 +289,22 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -272,17 +289,22 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
@Override @Override
@ParamLog("导入记录") @ParamLog("导入记录")
public PageBeanNew<ImportRecordVO> importCodeRecord(Long bookId, Long channelId, Long adviserId, Integer currentPage, Integer numPerPage) { public PageBeanNew<ImportRecordVO> importCodeRecord(Long bookId, Long channelId, Long adviserId, Integer authBookType, Integer currentPage, Integer numPerPage) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId); paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId", adviserId); paramMap.put("adviserId", adviserId);
if(null == authBookType || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)){
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
PageParam pageParam = new PageParam(currentPage, numPerPage); PageParam pageParam = new PageParam(currentPage, numPerPage);
return bookAuthCodeImportRecordDao.listPageNew(pageParam, paramMap, "importCodeRecord"); return bookAuthCodeImportRecordDao.listPageNew(pageParam, paramMap, "importCodeRecord");
} }
@ParamLog("新增一条授权成功记录") @ParamLog("新增一条授权成功记录")
private void addUserRecord(Long bookId, Long channelId, Long adviserId, Long wechatUserId) { private void addUserRecord(Long bookId, Long channelId, Long adviserId, Long wechatUserId, Integer authBookType) {
BookAuthUser bookAuthUser = new BookAuthUser(); BookAuthUser bookAuthUser = new BookAuthUser();
bookAuthUser.setBookId(bookId); bookAuthUser.setBookId(bookId);
bookAuthUser.setChannelId(channelId); bookAuthUser.setChannelId(channelId);
...@@ -292,6 +314,13 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -292,6 +314,13 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
WechatUser wechatUser = readerConsr.getWechatUser(wechatUserId); WechatUser wechatUser = readerConsr.getWechatUser(wechatUserId);
bookAuthUser.setProvince(wechatUser == null || StringUtil.isEmpty(wechatUser.getWechatUserProvince()) ? "未知" : wechatUser.getWechatUserProvince()); bookAuthUser.setProvince(wechatUser == null || StringUtil.isEmpty(wechatUser.getWechatUserProvince()) ? "未知" : wechatUser.getWechatUserProvince());
bookAuthUser.setCity(wechatUser == null || StringUtil.isEmpty(wechatUser.getWechatUserCity()) ? "未知" : wechatUser.getWechatUserCity()); bookAuthUser.setCity(wechatUser == null || StringUtil.isEmpty(wechatUser.getWechatUserCity()) ? "未知" : wechatUser.getWechatUserCity());
if(authBookType == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
bookAuthUser.setIsPaperBook(1);
bookAuthUser.setIsGroupBook(0);
} else {
bookAuthUser.setIsGroupBook(1);
bookAuthUser.setIsPaperBook(0);
}
bookAuthUserBiz.insert(bookAuthUser); bookAuthUserBiz.insert(bookAuthUser);
} }
...@@ -306,13 +335,18 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -306,13 +335,18 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
*/ */
@Override @Override
@ParamLog("获取正版授权码") @ParamLog("获取正版授权码")
public PageBeanNew<BookAuthCodeDTO> getCodeList(Long bookId, Long channelId, Long adviserId, String keyword, Integer state, PageParam pageParam) { public PageBeanNew<BookAuthCodeDTO> getCodeList(Long bookId, Long channelId, Long adviserId, String keyword, Integer state, Integer authBookType, PageParam pageParam) {
Map<String,Object> paramMap = new HashMap<>(); Map<String,Object> paramMap = new HashMap<>();
paramMap.put("bookId",bookId); paramMap.put("bookId",bookId);
paramMap.put("channelId",channelId); paramMap.put("channelId",channelId);
paramMap.put("adviserId",adviserId); paramMap.put("adviserId",adviserId);
paramMap.put("keyword",StringUtil.isEmpty(keyword)?null:keyword); paramMap.put("keyword",StringUtil.isEmpty(keyword)?null:keyword);
paramMap.put("state",state); paramMap.put("state",state);
if(null == authBookType || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)){
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
return bookAuthCodeDao.listPageNew(pageParam,paramMap,"getCodeList"); return bookAuthCodeDao.listPageNew(pageParam,paramMap,"getCodeList");
} }
...@@ -328,7 +362,8 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -328,7 +362,8 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
@Override @Override
@ParamLog("导出授权码") @ParamLog("导出授权码")
public Map<String, Object> getCodeExcel(Long bookId, String codeIds, Long channelId, Long status, String systemCode, Long partyId) { public Map<String, Object> getCodeExcel(Long bookId, String codeIds, Long channelId, Long status,
String systemCode, Long partyId, Integer authBookType) {
//获取书的基本信息 //获取书的基本信息
BookDto bookDto = bookBiz.getBaseById(bookId); BookDto bookDto = bookBiz.getBaseById(bookId);
if (null == bookDto || null == bookDto.getBookId()){ if (null == bookDto || null == bookDto.getBookId()){
...@@ -342,7 +377,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -342,7 +377,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
//不管是全部导出还是导出部分,都使用异步处理 //不管是全部导出还是导出部分,都使用异步处理
if (status == 0) { if (status == 0) {
EXECUTOR_SERVICE.execute(() -> { EXECUTOR_SERVICE.execute(() -> {
String filePath = this.exportAllFreeCode(finalTitle, rowsName, bookId, channelId, partyId); String filePath = this.exportAllFreeCode(finalTitle, rowsName, bookId, channelId, partyId, authBookType);
//发送站内信 //发送站内信
SendNotifyDto sendNotifyDto = new SendNotifyDto(); SendNotifyDto sendNotifyDto = new SendNotifyDto();
sendNotifyDto.setCreatedTime(new Date()); sendNotifyDto.setCreatedTime(new Date());
...@@ -432,7 +467,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -432,7 +467,7 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
* @param partyId * @param partyId
* @return * @return
*/ */
private String exportAllFreeCode(String title, String[] rowsName, Long bookId, Long channelId, Long partyId) { private String exportAllFreeCode(String title, String[] rowsName, Long bookId, Long channelId, Long partyId, Integer authBookType) {
SXSSFWorkbook wb = new SXSSFWorkbook(200); SXSSFWorkbook wb = new SXSSFWorkbook(200);
int columnNum = rowsName.length; int columnNum = rowsName.length;
int rowIndex = 0; int rowIndex = 0;
...@@ -463,6 +498,11 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -463,6 +498,11 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
paramMap.put("bookId", bookId); paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId", partyId); paramMap.put("adviserId", partyId);
if(authBookType == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
int k = 1; int k = 1;
//分批导出 //分批导出
......
...@@ -23,6 +23,7 @@ import com.pcloud.book.copyright.dto.BookAuthTotalCountDTO; ...@@ -23,6 +23,7 @@ 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.enums.AuthBookTypeEnum;
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.BookAuthInfoAndServesVO; import com.pcloud.book.copyright.vo.BookAuthInfoAndServesVO;
...@@ -30,6 +31,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO; ...@@ -30,6 +31,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO;
import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO; import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO;
import com.pcloud.book.copyright.vo.GetAuthInfoParam; import com.pcloud.book.copyright.vo.GetAuthInfoParam;
import com.pcloud.book.copyright.vo.ListHaveAuthBookParam; import com.pcloud.book.copyright.vo.ListHaveAuthBookParam;
import com.pcloud.book.copyright.vo.ListHaveAuthGroupBookParam;
import com.pcloud.book.copyright.vo.ServeVO; import com.pcloud.book.copyright.vo.ServeVO;
import com.pcloud.book.copyright.vo.SetAuthOpenParam; import com.pcloud.book.copyright.vo.SetAuthOpenParam;
import com.pcloud.book.copyright.vo.SetAuthStatusParam; import com.pcloud.book.copyright.vo.SetAuthStatusParam;
...@@ -107,10 +109,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -107,10 +109,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void setBookAuthOpen(SetAuthOpenParam setAuthOpenParam, Long adviserId) { public void setBookAuthOpen(SetAuthOpenParam setAuthOpenParam, Long adviserId) {
checkIsCanExport(setAuthOpenParam, adviserId); checkIsCanExport(setAuthOpenParam, adviserId);
BookAuthInfoVO bookAuthInfoVO = bookAuthInfoDao.getInfoByBook(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId); BookAuthInfoVO bookAuthInfoVO = bookAuthInfoDao.getInfoByBook(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId,
setAuthOpenParam.getAuthBookType());
BookAuthInfo bookAuthInfo = new BookAuthInfo(); BookAuthInfo bookAuthInfo = new BookAuthInfo();
BeanUtils.copyProperties(setAuthOpenParam, bookAuthInfo); BeanUtils.copyProperties(setAuthOpenParam, bookAuthInfo);
if (bookAuthInfoVO == null) { if (bookAuthInfoVO == null) {
this.setAuthBookType(bookAuthInfo, setAuthOpenParam.getAuthBookType());
bookAuthInfo.setAdviserId(adviserId); bookAuthInfo.setAdviserId(adviserId);
try { try {
bookAuthInfoDao.insert(bookAuthInfo); bookAuthInfoDao.insert(bookAuthInfo);
...@@ -123,12 +127,15 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -123,12 +127,15 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
bookAuthInfo.setAdviserId(adviserId); bookAuthInfo.setAdviserId(adviserId);
bookAuthInfoDao.updateBaseInfo(bookAuthInfo); bookAuthInfoDao.updateBaseInfo(bookAuthInfo);
} }
//设置图书服务 if(setAuthOpenParam.getAuthBookType() == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(setAuthOpenParam.getAuthBookType())) {
bookAuthServeBiz.setBookAuthServes(setAuthOpenParam.getServes(), setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId); //设置图书服务(现代纸书)
bookAuthServeBiz.setBookAuthServes(setAuthOpenParam.getServes(), setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId);
}
//异步生成条形码并导出 //异步生成条形码并导出
asynExport(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId, setAuthOpenParam.getCodeCount(), setAuthOpenParam.getIsHaveBarCode()); asynExport(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId, setAuthOpenParam.getCodeCount(), setAuthOpenParam.getIsHaveBarCode(),setAuthOpenParam.getAuthBookType());
String key = CopyrightConstants.BOOK_AUTH_INFO + bookAuthInfo.getBookId() + "-" + bookAuthInfo.getChannelId() + "-" + adviserId; Integer authBookType = setAuthOpenParam.getAuthBookType() == null ? 0 : setAuthOpenParam.getAuthBookType();
BookAuthInfoVO bookAuth = bookAuthInfoDao.getInfoByBook(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId); String key = CopyrightConstants.BOOK_AUTH_INFO + bookAuthInfo.getBookId() + "-" + bookAuthInfo.getChannelId() + "-" + adviserId + "-" + authBookType;
BookAuthInfoVO bookAuth = bookAuthInfoDao.getInfoByBook(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId, setAuthOpenParam.getAuthBookType());
JedisClusterUtils.setJson(key, bookAuth); JedisClusterUtils.setJson(key, bookAuth);
} }
...@@ -140,14 +147,14 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -140,14 +147,14 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
if (codeCount == null || codeCount == 0) { if (codeCount == null || codeCount == 0) {
return; return;
} }
Boolean isHaveExport = isHaveExport(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId); Boolean isHaveExport = isHaveExport(setAuthOpenParam.getBookId(), setAuthOpenParam.getChannelId(), adviserId);// TODO
if (isHaveExport) { if (isHaveExport) {
throw new BookBizException(BookBizException.ERROR, "您有正在导出的授权码,请不要重复点击导出。导出之后系统会有站内信通知,请留意下右上角的消息中心!"); throw new BookBizException(BookBizException.ERROR, "您有正在导出的授权码,请不要重复点击导出。导出之后系统会有站内信通知,请留意下右上角的消息中心!");
} }
} }
@ParamLog("异步导出") @ParamLog("异步导出")
private void asynExport(Long bookId, Long channelId, Long adviserId, Integer codeCount, Integer isHaveBarCode) { private void asynExport(Long bookId, Long channelId, Long adviserId, Integer codeCount, Integer isHaveBarCode, Integer authBookType) {
ThreadPoolUtils.EXPORT_THREAD_POOL.execute(() -> { ThreadPoolUtils.EXPORT_THREAD_POOL.execute(() -> {
String commitTime = DateUtils.formatDate(new Date()); String commitTime = DateUtils.formatDate(new Date());
String num = ""; String num = "";
...@@ -156,7 +163,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -156,7 +163,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
return; return;
} }
//获取批次号 //获取批次号
Integer batchNum = bookAuthCodeBiz.getMaxBatchNum(bookId, channelId, adviserId); Integer batchNum = bookAuthCodeBiz.getMaxBatchNum(bookId, channelId, adviserId, authBookType);// TODO
num = String.format("%04d", batchNum); num = String.format("%04d", batchNum);
//新增导出记录 //新增导出记录
insertExportRecord(bookId, channelId, adviserId, num); insertExportRecord(bookId, channelId, adviserId, num);
...@@ -170,6 +177,13 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -170,6 +177,13 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
List<BookAuthCode> bookAuthCodes = new ArrayList<>(); List<BookAuthCode> bookAuthCodes = new ArrayList<>();
for (String uuid : uuids) { for (String uuid : uuids) {
BookAuthCode bookAuthCode = new BookAuthCode(); BookAuthCode bookAuthCode = new BookAuthCode();
if(authBookType == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
bookAuthCode.setIsPaperBook(1);
bookAuthCode.setIsGroupBook(0);
} else {
bookAuthCode.setIsPaperBook(0);
bookAuthCode.setIsGroupBook(1);
}
bookAuthCode.setAdviserId(adviserId); bookAuthCode.setAdviserId(adviserId);
bookAuthCode.setChannelId(channelId); bookAuthCode.setChannelId(channelId);
bookAuthCode.setBookId(bookId); bookAuthCode.setBookId(bookId);
...@@ -201,7 +215,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -201,7 +215,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
LOGGER.info("url" + noticeUrl); LOGGER.info("url" + noticeUrl);
} catch (Exception e) { } catch (Exception e) {
LOGGER.error("导出条形码失败" + e.getMessage(), e); LOGGER.error("导出条形码失败" + e.getMessage(), e);
updateExportRecord(bookId, channelId, adviserId, num, BookStatusEnum.BookExportStatus.FAIL.value); updateExportRecord(bookId, channelId, adviserId, num, BookStatusEnum.BookExportStatus.FAIL.value); //TODO
} }
}); });
} }
...@@ -348,16 +362,20 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -348,16 +362,20 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
Long bookId = setAuthStatusParam.getBookId(); Long bookId = setAuthStatusParam.getBookId();
Long channelId = setAuthStatusParam.getChannelId(); Long channelId = setAuthStatusParam.getChannelId();
Integer bookStatus = setAuthStatusParam.getBookStatus(); Integer bookStatus = setAuthStatusParam.getBookStatus();
Integer authBookType = setAuthStatusParam.getAuthBookType();
if (bookId == null || channelId == null || adviserId == null) { if (bookId == null || channelId == null || adviserId == null) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书不存在"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书不存在");
} }
BookAuthInfoVO bookAuthInfo = bookAuthInfoDao.getInfoByBook(bookId, channelId, adviserId); BookAuthInfoVO bookAuthInfo = bookAuthInfoDao.getInfoByBook(bookId, channelId, adviserId, authBookType);
if (bookAuthInfo == null) { if (bookAuthInfo == null) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书未开启版权保护"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书未开启版权保护");
} }
bookAuthInfo.setBookStatus(bookStatus); bookAuthInfo.setBookStatus(bookStatus);
bookAuthInfoDao.updateBookStatus(bookAuthInfo.getId(), bookStatus, adviserId); bookAuthInfoDao.updateBookStatus(bookAuthInfo.getId(), bookStatus, adviserId);
String key = CopyrightConstants.BOOK_AUTH_INFO + bookAuthInfo.getBookId() + "-" + bookAuthInfo.getChannelId() + "-" + adviserId; if(authBookType == null) {
authBookType = 0;
}
String key = CopyrightConstants.BOOK_AUTH_INFO + bookAuthInfo.getBookId() + "-" + bookAuthInfo.getChannelId() + "-" + adviserId + "-" + authBookType;
JedisClusterUtils.setJson(key, bookAuthInfo); JedisClusterUtils.setJson(key, bookAuthInfo);
} }
...@@ -366,10 +384,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -366,10 +384,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
public void setBookLocationDesc(SetLocationDescVO setLocationDesc, Long adviserId) { public void setBookLocationDesc(SetLocationDescVO setLocationDesc, Long adviserId) {
BookAuthInfo bookAuthInfo = new BookAuthInfo(); BookAuthInfo bookAuthInfo = new BookAuthInfo();
BeanUtils.copyProperties(setLocationDesc, bookAuthInfo); BeanUtils.copyProperties(setLocationDesc, bookAuthInfo);
this.setAuthBookType(bookAuthInfo, setLocationDesc.getAuthBookType());
bookAuthInfo.setAdviserId(adviserId); bookAuthInfo.setAdviserId(adviserId);
bookAuthInfoDao.updateLocationDesc(bookAuthInfo); bookAuthInfoDao.updateLocationDesc(bookAuthInfo);
String key = CopyrightConstants.BOOK_AUTH_INFO + bookAuthInfo.getBookId() + "-" + bookAuthInfo.getChannelId() + "-" + adviserId; Integer authBookType = setLocationDesc.getAuthBookType() == null ? 0 : setLocationDesc.getAuthBookType();
BookAuthInfoVO bookAuthInfoVO = bookAuthInfoDao.getInfoByBook(bookAuthInfo.getBookId(), bookAuthInfo.getChannelId(), adviserId); String key = CopyrightConstants.BOOK_AUTH_INFO + bookAuthInfo.getBookId() + "-" + bookAuthInfo.getChannelId() + "-" + adviserId + "-" + authBookType;
BookAuthInfoVO bookAuthInfoVO = bookAuthInfoDao.getInfoByBook(bookAuthInfo.getBookId(), bookAuthInfo.getChannelId(), adviserId, setLocationDesc.getAuthBookType());
JedisClusterUtils.setJson(key, bookAuthInfoVO); JedisClusterUtils.setJson(key, bookAuthInfoVO);
} }
...@@ -382,27 +402,31 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -382,27 +402,31 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
@Override @Override
@ParamLog("获取正版授权书基本信息(REDIS)") @ParamLog("获取正版授权书基本信息(REDIS)")
public BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId) { public BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
String key = CopyrightConstants.BOOK_AUTH_INFO + bookId + "-" + channelId + "-" + adviserId; if(authBookType == null) {
authBookType = 0;
}
String key = CopyrightConstants.BOOK_AUTH_INFO + bookId + "-" + channelId + "-" + adviserId + "-" + authBookType;
BookAuthInfoVO bookAuthInfoVO = JedisClusterUtils.getJson(key, BookAuthInfoVO.class); BookAuthInfoVO bookAuthInfoVO = JedisClusterUtils.getJson(key, BookAuthInfoVO.class);
if (bookAuthInfoVO == null) { if (bookAuthInfoVO == null) {
bookAuthInfoVO = bookAuthInfoDao.getInfoByBook(bookId, channelId, adviserId); bookAuthInfoVO = bookAuthInfoDao.getInfoByBook(bookId, channelId, adviserId, authBookType);
JedisClusterUtils.setJson(key, bookAuthInfoVO); JedisClusterUtils.setJson(key, bookAuthInfoVO);
} }
return bookAuthInfoVO; return bookAuthInfoVO;
} }
@Override @Override
@ParamLog("获取正版授权书基本信息与服务") @ParamLog("获取正版授权书基本信息与服务")
public BookAuthInfoAndServesVO getInfoAndServesByBook(Long bookId, Long channelId, Long adviserId) { public BookAuthInfoAndServesVO getInfoAndServesByBook(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
BookAuthInfoVO bookAuthInfoVO = getInfoByBook(bookId, channelId, adviserId); BookAuthInfoVO bookAuthInfoVO = getInfoByBook(bookId, channelId, adviserId, authBookType);
BookAuthInfoAndServesVO bookAuthInfoAndServesVO = new BookAuthInfoAndServesVO(); BookAuthInfoAndServesVO bookAuthInfoAndServesVO = new BookAuthInfoAndServesVO();
BeanUtils.copyProperties(bookAuthInfoVO, bookAuthInfoAndServesVO); BeanUtils.copyProperties(bookAuthInfoVO, bookAuthInfoAndServesVO);
//获取配置得服务 if(authBookType == null || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
List<ServeVO> serves = bookAuthServeBiz.listServesByBook(bookId, channelId, adviserId); //获取配置得服务
removeNotInbook(serves, bookId, channelId, adviserId); List<ServeVO> serves = bookAuthServeBiz.listServesByBook(bookId, channelId, adviserId);
bookAuthInfoAndServesVO.setServes(serves); removeNotInbook(serves, bookId, channelId, adviserId);
bookAuthInfoAndServesVO.setServes(serves);
}
return bookAuthInfoAndServesVO; return bookAuthInfoAndServesVO;
} }
...@@ -436,6 +460,10 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -436,6 +460,10 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
paramMap.put("isFundSupport", listHaveAuthBookParam.getIsFundSupport()); paramMap.put("isFundSupport", listHaveAuthBookParam.getIsFundSupport());
paramMap.put("channelId", listHaveAuthBookParam.getChannelId()); paramMap.put("channelId", listHaveAuthBookParam.getChannelId());
paramMap.put("name", listHaveAuthBookParam.getName() != null && "".equals(listHaveAuthBookParam.getName().trim()) ? null : listHaveAuthBookParam.getName()); paramMap.put("name", listHaveAuthBookParam.getName() != null && "".equals(listHaveAuthBookParam.getName().trim()) ? null : listHaveAuthBookParam.getName());
if(!StringUtil.isEmpty(listHaveAuthBookParam.getName())){
String [] nameList = listHaveAuthBookParam.getName().trim().split("\\s+");
paramMap.put("nameList", Lists.newArrayList(nameList));
}
paramMap.put("typeCode", listHaveAuthBookParam.getTypeCode() != null && "".equals(listHaveAuthBookParam.getTypeCode().trim()) ? null : listHaveAuthBookParam.getTypeCode()); paramMap.put("typeCode", listHaveAuthBookParam.getTypeCode() != null && "".equals(listHaveAuthBookParam.getTypeCode().trim()) ? null : listHaveAuthBookParam.getTypeCode());
paramMap.put("templetId", listHaveAuthBookParam.getTempletId()); paramMap.put("templetId", listHaveAuthBookParam.getTempletId());
paramMap.put("secondTempletIds", Optional.ofNullable(listHaveAuthBookParam.getSecondTempletId()).map(Lists::newArrayList).orElse(Lists.newArrayList())); paramMap.put("secondTempletIds", Optional.ofNullable(listHaveAuthBookParam.getSecondTempletId()).map(Lists::newArrayList).orElse(Lists.newArrayList()));
...@@ -448,8 +476,29 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -448,8 +476,29 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
} }
@Override @Override
public BigDecimal getBookAuthPrice(Long bookId, Long channelId, Long adviserId) { @ParamLog("获取设置过正版授权的社群书")
BookAuthInfoVO authInfoVO = bookAuthInfoDao.getInfoByBook(bookId, channelId, adviserId); public PageBeanNew listHaveSetAuthGroupBook(ListHaveAuthGroupBookParam listHaveAuthGroupBookParam, Long adviserId) {
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("adviserId", adviserId);
paramMap.put("bookStatus", listHaveAuthGroupBookParam.getBookStatus());
paramMap.put("channelId", listHaveAuthGroupBookParam.getChannelId());
paramMap.put("name", listHaveAuthGroupBookParam.getName() != null && "".equals(listHaveAuthGroupBookParam.getName().trim()) ? null : listHaveAuthGroupBookParam.getName());
paramMap.put("typeCode", listHaveAuthGroupBookParam.getTypeCode() != null && "".equals(listHaveAuthGroupBookParam.getTypeCode().trim()) ? null : listHaveAuthGroupBookParam.getTypeCode());
paramMap.put("templetId", listHaveAuthGroupBookParam.getTempletId());
paramMap.put("secondTempletIds", Optional.ofNullable(listHaveAuthGroupBookParam.getSecondTempletId()).map(Lists::newArrayList).orElse(Lists.newArrayList()));
PageParam pageParam = new PageParam(listHaveAuthGroupBookParam.getCurrentPage(), listHaveAuthGroupBookParam.getNumPerPage());
PageBeanNew pageBean = bookAuthInfoDao.listPageNew(pageParam, paramMap, "listHaveSetAuthGroupBook");
if (pageBean == null || ListUtils.isEmpty(pageBean.getRecordList())) {
return new PageBeanNew(listHaveAuthGroupBookParam.getCurrentPage(), listHaveAuthGroupBookParam.getNumPerPage(), new ArrayList<>());
}
return pageBean;
}
@Override
@ParamLog("获取设置过版权保护书刊的价格")
public BigDecimal getBookAuthPrice(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
BookAuthInfoVO authInfoVO = bookAuthInfoDao.getInfoByBook(bookId, channelId, adviserId, authBookType);
if (authInfoVO != null) { if (authInfoVO != null) {
return authInfoVO.getPrice(); return authInfoVO.getPrice();
} }
...@@ -457,12 +506,13 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -457,12 +506,13 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
} }
@Override @Override
@ParamLog("获取授权图书信息(客户端)")
public BookAuthInfoWechatVO getInfoByBook4Wechat(GetAuthInfoParam getAuthInfoParam, Long channelId) { public BookAuthInfoWechatVO getInfoByBook4Wechat(GetAuthInfoParam getAuthInfoParam, Long channelId) {
BookAuthInfoWechatVO bookAuthInfoWechatVO = new BookAuthInfoWechatVO(); BookAuthInfoWechatVO bookAuthInfoWechatVO = new BookAuthInfoWechatVO();
Long bookId =getAuthInfoParam.getBookId(); Long bookId =getAuthInfoParam.getBookId();
Long adviserId = getAuthInfoParam.getAdviserId(); Long adviserId = getAuthInfoParam.getAdviserId();
Long sceneId = getAuthInfoParam.getSceneId(); Long sceneId = getAuthInfoParam.getSceneId();
BookAuthInfoVO authBookInfo = getAuthBookInfo(bookId, channelId, adviserId, sceneId); BookAuthInfoVO authBookInfo = getAuthBookInfo(bookId, channelId, adviserId, sceneId, getAuthInfoParam.getAuthBookType());
if (authBookInfo != null) { if (authBookInfo != null) {
BeanUtils.copyProperties(authBookInfo, bookAuthInfoWechatVO); BeanUtils.copyProperties(authBookInfo, bookAuthInfoWechatVO);
//获取图书基本信息 //获取图书基本信息
...@@ -475,7 +525,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -475,7 +525,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
@Override @Override
@ParamLog("获取授权图书信息") @ParamLog("获取授权图书信息")
public BookAuthInfoVO getAuthBookInfo(Long bookId, Long channelId, Long adviserId, Long sceneId){ public BookAuthInfoVO getAuthBookInfo(Long bookId, Long channelId, Long adviserId, Long sceneId, Integer authBookType){
if(bookId == null && adviserId == null && sceneId == null){ if(bookId == null && adviserId == null && sceneId == null){
throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书不存在"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书不存在");
} }
...@@ -491,13 +541,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -491,13 +541,12 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
if(bookId == null){ if(bookId == null){
return null; return null;
} }
BookAuthInfoVO infoByBook = getInfoByBook(bookId, channelId, adviserId); return getInfoByBook(bookId, channelId, adviserId, authBookType);
return infoByBook;
} }
@Override @Override
public BookAuthInfoCountDTO getBookAuthInfoCount(Long bookId, Long channelId, Long adviserId, String monthDate) { public BookAuthInfoCountDTO getBookAuthInfoCount(Long bookId, Long channelId, Long adviserId, String monthDate) {
BookAuthInfoCountDTO bookAuthInfoCountDTO = bookAuthInfoDao.getBookAuthCount(bookId, channelId, adviserId); BookAuthInfoCountDTO bookAuthInfoCountDTO = bookAuthInfoDao.getBookAuthCount(bookId, channelId, adviserId); //TODO
if (bookAuthInfoCountDTO == null) { if (bookAuthInfoCountDTO == null) {
return null; return null;
} }
...@@ -509,7 +558,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -509,7 +558,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
} }
@Override @Override
public BookAuthTotalCountDTO getBookAuthTotalCount(List<Long> adviserIds) { public BookAuthTotalCountDTO getBookAuthTotalCount(List<Long> adviserIds) { //TODO
//获取出版社下的编辑 //获取出版社下的编辑
PartyIdListVO partyIdList4Test = partyConsr.getPartyIdList4Test(); PartyIdListVO partyIdList4Test = partyConsr.getPartyIdList4Test();
List<Long> removeAdviserIds = partyIdList4Test == null ? null : partyIdList4Test.getAdviserIds(); List<Long> removeAdviserIds = partyIdList4Test == null ? null : partyIdList4Test.getAdviserIds();
...@@ -535,7 +584,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -535,7 +584,7 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
@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);//TODO
return isCanExport; return isCanExport;
} }
...@@ -546,4 +595,14 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz { ...@@ -546,4 +595,14 @@ public class BookAuthInfoBizImpl implements BookAuthInfoBiz {
bookAuthTotalCountDTO.setTotalCount(0); bookAuthTotalCountDTO.setTotalCount(0);
bookAuthTotalCountDTO.setClickBuyCount(0); bookAuthTotalCountDTO.setClickBuyCount(0);
} }
private void setAuthBookType(BookAuthInfo bookAuthInfo, Integer authBookType) {
if(null == authBookType || AuthBookTypeEnum.PAPER_BOOK.value.equals(authBookType)) {
bookAuthInfo.setIsPaperBook(1);
bookAuthInfo.setIsGroupBook(0);
} else {
bookAuthInfo.setIsPaperBook(0);
bookAuthInfo.setIsGroupBook(1);
}
}
} }
...@@ -52,6 +52,13 @@ public class BookAuthOrderBizImpl implements BookAuthOrderBiz { ...@@ -52,6 +52,13 @@ public class BookAuthOrderBizImpl implements BookAuthOrderBiz {
bookAuthOrder.setMoney(genuine.getMoney()); bookAuthOrder.setMoney(genuine.getMoney());
bookAuthOrder.setAccountSettingId(genuine.getOfficialAccountId()); bookAuthOrder.setAccountSettingId(genuine.getOfficialAccountId());
bookAuthOrder.setOrderNum(genuine.getOrderFormMainId().toString()); bookAuthOrder.setOrderNum(genuine.getOrderFormMainId().toString());
if(genuine.getIsGroupBook() != null && genuine.getIsGroupBook() .equals(1)) {
bookAuthOrder.setIsGroupBook(1);
bookAuthOrder.setIsPaperBook(0);
} else {
bookAuthOrder.setIsGroupBook(0);
bookAuthOrder.setIsPaperBook(1);
}
bookAuthOrderDao.insert(bookAuthOrder); bookAuthOrderDao.insert(bookAuthOrder);
//新增用户授权记录 //新增用户授权记录
BookAuthUser bookAuthUser = new BookAuthUser(); BookAuthUser bookAuthUser = new BookAuthUser();
......
...@@ -4,9 +4,11 @@ import com.pcloud.book.base.exception.BookBizException; ...@@ -4,9 +4,11 @@ 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.copyright.dao.BookAuthUserDao; import com.pcloud.book.copyright.dao.BookAuthUserDao;
import com.pcloud.book.copyright.dao.BookClickBuyRecordDao; import com.pcloud.book.copyright.dao.BookClickBuyRecordDao;
import com.pcloud.book.copyright.dto.CheckUserAuthDTO;
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.entity.BookClickBuyRecord;
import com.pcloud.book.copyright.enums.AuthBookTypeEnum;
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.BookClickBuyRecordParam;
...@@ -47,11 +49,11 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz { ...@@ -47,11 +49,11 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
@ParamLog(value = "获取授权用户数量") @ParamLog(value = "获取授权用户数量")
@Override @Override
public BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId) { public BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
if (bookId == null || channelId == null || adviserId == null) { if (bookId == null || channelId == null || adviserId == null) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书不存在"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "图书不存在");
} }
BookAuthCodeUserVO bookAuthCodeUserVO = bookAuthUserDao.getAuthUserCount(bookId, channelId, adviserId); BookAuthCodeUserVO bookAuthCodeUserVO = bookAuthUserDao.getAuthUserCount(bookId, channelId, adviserId, authBookType);
if (bookAuthCodeUserVO != null) { if (bookAuthCodeUserVO != null) {
bookAuthCodeUserVO.setCodeUserCount(bookAuthCodeUserVO.getTotalCount() - bookAuthCodeUserVO.getPayUserCount()); bookAuthCodeUserVO.setCodeUserCount(bookAuthCodeUserVO.getTotalCount() - bookAuthCodeUserVO.getPayUserCount());
} else { } else {
...@@ -75,7 +77,7 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz { ...@@ -75,7 +77,7 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
} }
@Override @Override
public List<ThirtyDayCountVO> listThirtyDay(Long bookId, Long channelId, Long adviserId, String province) { public List<ThirtyDayCountVO> listThirtyDay(Long bookId, Long channelId, Long adviserId, String province, Integer authBookType) {
DateDTO date = CopyrightTools.getDateByType(30L); DateDTO date = CopyrightTools.getDateByType(30L);
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("startDate", date.getStartTime()); paramMap.put("startDate", date.getStartTime());
...@@ -84,6 +86,11 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz { ...@@ -84,6 +86,11 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId", adviserId); paramMap.put("adviserId", adviserId);
paramMap.put("province", province); paramMap.put("province", province);
if(authBookType == null || authBookType.equals(AuthBookTypeEnum.PAPER_BOOK.value)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
List<ThirtyDayCountVO> thirtyDayCountVOS = bookAuthUserDao.listThirtyDay(paramMap); List<ThirtyDayCountVO> thirtyDayCountVOS = bookAuthUserDao.listThirtyDay(paramMap);
setZoreRecord(thirtyDayCountVOS, date.getStartTime(), date.getEndTime()); setZoreRecord(thirtyDayCountVOS, date.getStartTime(), date.getEndTime());
return thirtyDayCountVOS; return thirtyDayCountVOS;
...@@ -118,13 +125,18 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz { ...@@ -118,13 +125,18 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
} }
@Override @Override
public List<SixMonthCountVO> listSixMonth(Long bookId, Long channelId, Long adviserId, String province) { public List<SixMonthCountVO> listSixMonth(Long bookId, Long channelId, Long adviserId, String province, Integer authBookType) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId); paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId", adviserId); paramMap.put("adviserId", adviserId);
paramMap.put("province", province); paramMap.put("province", province);
paramMap.put("months", CopyrightTools.getLast6Months()); paramMap.put("months", CopyrightTools.getLast6Months());
if(authBookType == null || authBookType.equals(AuthBookTypeEnum.PAPER_BOOK.value)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
List<SixMonthCountVO> sixMonthCountVOS = bookAuthUserDao.listSixMonth(paramMap); List<SixMonthCountVO> sixMonthCountVOS = bookAuthUserDao.listSixMonth(paramMap);
setZoreRecord(sixMonthCountVOS); setZoreRecord(sixMonthCountVOS);
return sixMonthCountVOS; return sixMonthCountVOS;
...@@ -139,8 +151,8 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz { ...@@ -139,8 +151,8 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
@Override @Override
@ParamLog("校验用户是否已经授权") @ParamLog("校验用户是否已经授权")
public Boolean checkIsHaveAuth(Long bookId, Long channelId, Long adviserId, Long wechatUserId) { public Boolean checkIsHaveAuth(Long bookId, Long channelId, Long adviserId, Long wechatUserId, Integer authBookType) {
return bookAuthUserDao.getIsHaveAuth(bookId, channelId, adviserId, wechatUserId); return bookAuthUserDao.getIsHaveAuth(bookId, channelId, adviserId, wechatUserId, authBookType);
} }
@Override @Override
...@@ -194,6 +206,25 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz { ...@@ -194,6 +206,25 @@ public class BookAuthUserBizImpl implements BookAuthUserBiz {
return top10ByBook; return top10ByBook;
} }
@Override
@ParamLog("校验用户是否授权(进群)")
public Boolean checkUserIsHaveAuth(CheckUserAuthDTO checkUserAuthDTO) {
Long bookId = checkUserAuthDTO.getBookId();
Long channelId = checkUserAuthDTO.getChannelId();
Long adviserId = checkUserAuthDTO.getAdviserId();
List<Long> wechatUserIds = checkUserAuthDTO.getWechatUserIds();
if(null == bookId || null == channelId || null == adviserId || ListUtils.isEmpty(wechatUserIds)) {
LOGGER.error("参数缺失!");
return false;
}
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId);
paramMap.put("adviserId", adviserId);
paramMap.put("wechatUserIds", wechatUserIds);
return bookAuthUserDao.checkUserIsHaveAuth(paramMap);
}
/** /**
* 设置最近6月为空得书 * 设置最近6月为空得书
*/ */
......
...@@ -17,17 +17,17 @@ public interface BookAuthCodeDao extends BaseDao<BookAuthCode> { ...@@ -17,17 +17,17 @@ public interface BookAuthCodeDao extends BaseDao<BookAuthCode> {
/** /**
* 获取最大批次号 * 获取最大批次号
*/ */
Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId); Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 更新使用次数 * 更新使用次数
*/ */
Integer updateUseCount(Long bookId, Long channelId, Long adviserId, String code, Integer codeUseCount); Integer updateUseCount(Long bookId, Long channelId, Long adviserId, String code, Integer codeUseCount, Integer authBookType);
/** /**
* 获取码数量 * 获取码数量
*/ */
Boolean getIsHaveCode(Long bookId, Long channelId, Long adviserId, String code); Boolean getIsHaveCode(Long bookId, Long channelId, Long adviserId, String code, Integer authBookType);
/** /**
* 批量删除正版授权码 * 批量删除正版授权码
......
...@@ -27,7 +27,7 @@ public interface BookAuthInfoDao extends BaseDao<BookAuthInfo> { ...@@ -27,7 +27,7 @@ public interface BookAuthInfoDao extends BaseDao<BookAuthInfo> {
/** /**
* 获取图书正版授权信息 * 获取图书正版授权信息
*/ */
BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId); BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 更新图书版权状态 * 更新图书版权状态
......
...@@ -18,7 +18,7 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> { ...@@ -18,7 +18,7 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> {
/** /**
* 获取授权用户总数 * 获取授权用户总数
*/ */
BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId); BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId, Integer authBookType);
/** /**
* 30天趋势图 * 30天趋势图
...@@ -34,7 +34,7 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> { ...@@ -34,7 +34,7 @@ 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, Integer authBookType);
/** /**
* 根据月份获取授权用户信息 * 根据月份获取授权用户信息
...@@ -50,4 +50,9 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> { ...@@ -50,4 +50,9 @@ public interface BookAuthUserDao extends BaseDao<BookAuthUser> {
* 获取top10的图书 * 获取top10的图书
*/ */
List<ProvinceTop10VO> listTop10ByBook(Map<String, Object> paramMap); List<ProvinceTop10VO> listTop10ByBook(Map<String, Object> paramMap);
/**
* 校验用户是否授权
*/
Boolean checkUserIsHaveAuth(Map<String, Object> paramMap);
} }
...@@ -19,32 +19,47 @@ import java.util.Map; ...@@ -19,32 +19,47 @@ import java.util.Map;
public class BookAuthCodeDaoImpl extends BaseDaoImpl<BookAuthCode> implements BookAuthCodeDao { public class BookAuthCodeDaoImpl extends BaseDaoImpl<BookAuthCode> implements BookAuthCodeDao {
@Override @Override
public Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId) { public Integer getMaxBatchNum(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
Map<String,Object> paramMap = new HashMap<>(); Map<String,Object> paramMap = new HashMap<>();
paramMap.put("bookId",bookId); paramMap.put("bookId",bookId);
paramMap.put("channelId",channelId); paramMap.put("channelId",channelId);
paramMap.put("adviserId",adviserId); paramMap.put("adviserId",adviserId);
if(authBookType == null || authBookType.equals(0)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
return this.getSqlSession().selectOne(this.getStatement("getMaxBatchNum"), paramMap); return this.getSqlSession().selectOne(this.getStatement("getMaxBatchNum"), paramMap);
} }
@Override @Override
public Integer updateUseCount(Long bookId, Long channelId, Long adviserId, String code, Integer codeUseCount) { public Integer updateUseCount(Long bookId, Long channelId, Long adviserId, String code, Integer codeUseCount, Integer authBookType) {
Map<String,Object> paramMap = new HashMap<>(); Map<String,Object> paramMap = new HashMap<>();
paramMap.put("bookId",bookId); paramMap.put("bookId",bookId);
paramMap.put("channelId",channelId); paramMap.put("channelId",channelId);
paramMap.put("adviserId",adviserId); paramMap.put("adviserId",adviserId);
paramMap.put("codeUseCount",codeUseCount); paramMap.put("codeUseCount",codeUseCount);
paramMap.put("code",code); paramMap.put("code",code);
if(authBookType == null || authBookType.equals(0)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
return this.getSqlSession().update(this.getStatement("updateUseCount"), paramMap); return this.getSqlSession().update(this.getStatement("updateUseCount"), paramMap);
} }
@Override @Override
public Boolean getIsHaveCode(Long bookId, Long channelId, Long adviserId, String code) { public Boolean getIsHaveCode(Long bookId, Long channelId, Long adviserId, String code, Integer authBookType) {
Map<String,Object> paramMap = new HashMap<>(); Map<String,Object> paramMap = new HashMap<>();
paramMap.put("bookId",bookId); paramMap.put("bookId",bookId);
paramMap.put("channelId",channelId); paramMap.put("channelId",channelId);
paramMap.put("adviserId",adviserId); paramMap.put("adviserId",adviserId);
paramMap.put("code",code); paramMap.put("code",code);
if(authBookType == null || authBookType.equals(0)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
return this.getSqlSession().selectOne(this.getStatement("getIsHaveCode"), paramMap); return this.getSqlSession().selectOne(this.getStatement("getIsHaveCode"), paramMap);
} }
......
...@@ -31,11 +31,18 @@ public class BookAuthInfoDaoImpl extends BaseDaoImpl<BookAuthInfo> implements Bo ...@@ -31,11 +31,18 @@ public class BookAuthInfoDaoImpl extends BaseDaoImpl<BookAuthInfo> implements Bo
} }
@Override @Override
public BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId) { public BookAuthInfoVO getInfoByBook(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId); paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId", adviserId); paramMap.put("adviserId", adviserId);
if(authBookType == null || authBookType.equals(0)) {
paramMap.put("isPaperBook", 1);
paramMap.put("isGroupBook", 0);
} else {
paramMap.put("isPaperBook", 0);
paramMap.put("isGroupBook", 1);
}
return this.getSqlSession().selectOne(this.getStatement("getInfoByBook"), paramMap); return this.getSqlSession().selectOne(this.getStatement("getInfoByBook"), paramMap);
} }
......
...@@ -25,11 +25,16 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo ...@@ -25,11 +25,16 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo
* 根据类型获取授权用户总数 * 根据类型获取授权用户总数
*/ */
@Override @Override
public BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId) { public BookAuthCodeUserVO getAuthUserCount(Long bookId, Long channelId, Long adviserId, Integer authBookType) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId); paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId",adviserId); paramMap.put("adviserId",adviserId);
if(authBookType == null || authBookType.equals(0)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
return this.getSqlSession().selectOne(this.getStatement("getAuthUserCount"), paramMap); return this.getSqlSession().selectOne(this.getStatement("getAuthUserCount"), paramMap);
} }
...@@ -44,12 +49,17 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo ...@@ -44,12 +49,17 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo
} }
@Override @Override
public Boolean getIsHaveAuth(Long bookId, Long channelId, Long adviserId, Long wechatUserId) { public Boolean getIsHaveAuth(Long bookId, Long channelId, Long adviserId, Long wechatUserId, Integer authBookType) {
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("bookId", bookId); paramMap.put("bookId", bookId);
paramMap.put("channelId", channelId); paramMap.put("channelId", channelId);
paramMap.put("adviserId",adviserId); paramMap.put("adviserId",adviserId);
paramMap.put("wechatUserId",wechatUserId); paramMap.put("wechatUserId",wechatUserId);
if(authBookType == null || authBookType.equals(0)) {
paramMap.put("isPaperBook", 1);
} else {
paramMap.put("isGroupBook", 1);
}
return this.getSqlSession().selectOne(this.getStatement("getIsHaveAuth"), paramMap); return this.getSqlSession().selectOne(this.getStatement("getIsHaveAuth"), paramMap);
} }
...@@ -78,4 +88,9 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo ...@@ -78,4 +88,9 @@ public class BookAuthUserDaoImpl extends BaseDaoImpl<BookAuthUser> implements Bo
return this.getSqlSession().selectList(this.getStatement("listTop10ByBook"), paramMap); return this.getSqlSession().selectList(this.getStatement("listTop10ByBook"), paramMap);
} }
@Override
public Boolean checkUserIsHaveAuth(Map<String, Object> paramMap) {
return this.getSqlSession().selectOne(this.getStatement("checkUserIsHaveAuth"), paramMap);
}
} }
...@@ -51,6 +51,12 @@ public class BookAuthCode extends BaseEntity { ...@@ -51,6 +51,12 @@ public class BookAuthCode extends BaseEntity {
@ApiModelProperty("最后修改时间") @ApiModelProperty("最后修改时间")
private Date lastModifiedDate; private Date lastModifiedDate;
@ApiModelProperty("是否是现代纸书")
private Integer isPaperBook;
@ApiModelProperty("是否是社群书")
private Integer isGroupBook;
public String getFullCode() { public String getFullCode() {
return fullCode; return fullCode;
} }
...@@ -157,6 +163,22 @@ public class BookAuthCode extends BaseEntity { ...@@ -157,6 +163,22 @@ public class BookAuthCode extends BaseEntity {
this.lastModifiedDate = lastModifiedDate; this.lastModifiedDate = lastModifiedDate;
} }
public Integer getIsPaperBook() {
return isPaperBook;
}
public void setIsPaperBook(Integer isPaperBook) {
this.isPaperBook = isPaperBook;
}
public Integer getIsGroupBook() {
return isGroupBook;
}
public void setIsGroupBook(Integer isGroupBook) {
this.isGroupBook = isGroupBook;
}
@Override @Override
public String toString() { public String toString() {
return "BookAuthCode{" + return "BookAuthCode{" +
...@@ -173,6 +195,8 @@ public class BookAuthCode extends BaseEntity { ...@@ -173,6 +195,8 @@ public class BookAuthCode extends BaseEntity {
", createdDate=" + createdDate + ", createdDate=" + createdDate +
", lastModifiedUser=" + lastModifiedUser + ", lastModifiedUser=" + lastModifiedUser +
", lastModifiedDate=" + lastModifiedDate + ", lastModifiedDate=" + lastModifiedDate +
", isPaperBook=" + isPaperBook +
", isGroupBook=" + isGroupBook +
'}'; '}';
} }
} }
...@@ -4,6 +4,8 @@ import com.pcloud.common.entity.BaseEntity; ...@@ -4,6 +4,8 @@ import com.pcloud.common.entity.BaseEntity;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import io.swagger.annotations.ApiModelProperty;
/** /**
* @author lily * @author lily
* @date 2019/5/21 17:39 * @date 2019/5/21 17:39
...@@ -24,6 +26,12 @@ public class BookAuthCodeImportRecord extends BaseEntity { ...@@ -24,6 +26,12 @@ public class BookAuthCodeImportRecord extends BaseEntity {
private Long createUser; private Long createUser;
@ApiModelProperty("是否是现代纸书")
private Integer isPaperBook;
@ApiModelProperty("是否是社群书")
private Integer isGroupBook;
public Long getBookId() { public Long getBookId() {
return bookId; return bookId;
} }
...@@ -82,6 +90,22 @@ public class BookAuthCodeImportRecord extends BaseEntity { ...@@ -82,6 +90,22 @@ public class BookAuthCodeImportRecord extends BaseEntity {
this.id = id; this.id = id;
} }
public Integer getIsPaperBook() {
return isPaperBook;
}
public void setIsPaperBook(Integer isPaperBook) {
this.isPaperBook = isPaperBook;
}
public Integer getIsGroupBook() {
return isGroupBook;
}
public void setIsGroupBook(Integer isGroupBook) {
this.isGroupBook = isGroupBook;
}
@Override @Override
public String toString() { public String toString() {
return "BookAuthCodeImportRecord{" + return "BookAuthCodeImportRecord{" +
...@@ -92,6 +116,8 @@ public class BookAuthCodeImportRecord extends BaseEntity { ...@@ -92,6 +116,8 @@ public class BookAuthCodeImportRecord extends BaseEntity {
", fileName='" + fileName + '\'' + ", fileName='" + fileName + '\'' +
", fileUrl='" + fileUrl + '\'' + ", fileUrl='" + fileUrl + '\'' +
", createUser=" + createUser + ", createUser=" + createUser +
", isPaperBook=" + isPaperBook +
", isGroupBook=" + isGroupBook +
'}'; '}';
} }
} }
...@@ -60,6 +60,13 @@ public class BookAuthInfo extends BaseEntity { ...@@ -60,6 +60,13 @@ public class BookAuthInfo extends BaseEntity {
@ApiModelProperty("最近关闭时间") @ApiModelProperty("最近关闭时间")
private Date closeTime; private Date closeTime;
@ApiModelProperty("是否是现代纸书")
private Integer isPaperBook;
@ApiModelProperty("是否是社群书")
private Integer isGroupBook;
@Override @Override
public Long getId() { public Long getId() {
return id; return id;
...@@ -190,6 +197,22 @@ public class BookAuthInfo extends BaseEntity { ...@@ -190,6 +197,22 @@ public class BookAuthInfo extends BaseEntity {
this.closeTime = closeTime; this.closeTime = closeTime;
} }
public Integer getIsPaperBook() {
return isPaperBook;
}
public void setIsPaperBook(Integer isPaperBook) {
this.isPaperBook = isPaperBook;
}
public Integer getIsGroupBook() {
return isGroupBook;
}
public void setIsGroupBook(Integer isGroupBook) {
this.isGroupBook = isGroupBook;
}
@Override @Override
public String toString() { public String toString() {
return "BookAuthInfo{" + return "BookAuthInfo{" +
...@@ -209,6 +232,8 @@ public class BookAuthInfo extends BaseEntity { ...@@ -209,6 +232,8 @@ public class BookAuthInfo extends BaseEntity {
", lastModifiedDate=" + lastModifiedDate + ", lastModifiedDate=" + lastModifiedDate +
", openTime=" + openTime + ", openTime=" + openTime +
", closeTime=" + closeTime + ", closeTime=" + closeTime +
", isPaperBook=" + isPaperBook +
", isGroupBook=" + isGroupBook +
'}'; '}';
} }
} }
...@@ -45,6 +45,12 @@ public class BookAuthOrder extends BaseEntity { ...@@ -45,6 +45,12 @@ public class BookAuthOrder extends BaseEntity {
@ApiModelProperty("创建时间") @ApiModelProperty("创建时间")
private Date createdDate; private Date createdDate;
@ApiModelProperty("是否是现代纸书")
private Integer isPaperBook;
@ApiModelProperty("是否是社群书")
private Integer isGroupBook;
@Override @Override
public Long getId() { public Long getId() {
return id; return id;
...@@ -135,6 +141,22 @@ public class BookAuthOrder extends BaseEntity { ...@@ -135,6 +141,22 @@ public class BookAuthOrder extends BaseEntity {
this.paymentSource = paymentSource; this.paymentSource = paymentSource;
} }
public Integer getIsPaperBook() {
return isPaperBook;
}
public void setIsPaperBook(Integer isPaperBook) {
this.isPaperBook = isPaperBook;
}
public Integer getIsGroupBook() {
return isGroupBook;
}
public void setIsGroupBook(Integer isGroupBook) {
this.isGroupBook = isGroupBook;
}
@Override @Override
public String toString() { public String toString() {
return "BookAuthOrder{" + return "BookAuthOrder{" +
...@@ -149,6 +171,8 @@ public class BookAuthOrder extends BaseEntity { ...@@ -149,6 +171,8 @@ public class BookAuthOrder extends BaseEntity {
", paymentSource=" + paymentSource + ", paymentSource=" + paymentSource +
", createdUser=" + createdUser + ", createdUser=" + createdUser +
", createdDate=" + createdDate + ", createdDate=" + createdDate +
", isPaperBook=" + isPaperBook +
", isGroupBook=" + isGroupBook +
'}'; '}';
} }
} }
...@@ -54,6 +54,12 @@ public class BookAuthUser extends BaseEntity { ...@@ -54,6 +54,12 @@ public class BookAuthUser extends BaseEntity {
@ApiModelProperty("最后修改时间") @ApiModelProperty("最后修改时间")
private Date lastModifiedDate; private Date lastModifiedDate;
@ApiModelProperty("是否是现代纸书")
private Integer isPaperBook;
@ApiModelProperty("是否是社群书")
private Integer isGroupBook;
@Override @Override
public Long getId() { public Long getId() {
return id; return id;
...@@ -168,6 +174,22 @@ public class BookAuthUser extends BaseEntity { ...@@ -168,6 +174,22 @@ public class BookAuthUser extends BaseEntity {
this.city = city; this.city = city;
} }
public Integer getIsPaperBook() {
return isPaperBook;
}
public void setIsPaperBook(Integer isPaperBook) {
this.isPaperBook = isPaperBook;
}
public Integer getIsGroupBook() {
return isGroupBook;
}
public void setIsGroupBook(Integer isGroupBook) {
this.isGroupBook = isGroupBook;
}
@Override @Override
public String toString() { public String toString() {
return "BookAuthUser{" + return "BookAuthUser{" +
...@@ -185,6 +207,8 @@ public class BookAuthUser extends BaseEntity { ...@@ -185,6 +207,8 @@ public class BookAuthUser extends BaseEntity {
", createdDate=" + createdDate + ", createdDate=" + createdDate +
", lastModifiedUser=" + lastModifiedUser + ", lastModifiedUser=" + lastModifiedUser +
", lastModifiedDate=" + lastModifiedDate + ", lastModifiedDate=" + lastModifiedDate +
", isPaperBook=" + isPaperBook +
", isGroupBook=" + isGroupBook +
'}'; '}';
} }
} }
package com.pcloud.book.copyright.enums;
public enum AuthBookTypeEnum {
/**
* 现代纸书
*/
PAPER_BOOK(0),
/**
* 社群书
*/
GROUP_BOOK(1);
public final Integer value;
AuthBookTypeEnum(Integer value) {
this.value = value;
}
}
...@@ -49,7 +49,9 @@ public interface BookAuthCodeFacade { ...@@ -49,7 +49,9 @@ public interface BookAuthCodeFacade {
@ApiOperation(value = "授权码导入记录", httpMethod = "GET") @ApiOperation(value = "授权码导入记录", httpMethod = "GET")
@RequestMapping(value = "importCodeRecord", method = RequestMethod.GET) @RequestMapping(value = "importCodeRecord", method = RequestMethod.GET)
ResponseDto<PageBeanNew<ImportRecordVO>> importCodeRecord(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId, @RequestParam("currentPage") Integer currenPage, @RequestParam("numPerPage") Integer numPerPage) ResponseDto<PageBeanNew<ImportRecordVO>> importCodeRecord(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "authBookType", required = false) Integer authBookType,
@RequestParam("currentPage") Integer currenPage, @RequestParam("numPerPage") Integer numPerPage)
throws PermissionException, BizException; throws PermissionException, BizException;
@ApiOperation(value = "获取授权码列表", httpMethod = "GET") @ApiOperation(value = "获取授权码列表", httpMethod = "GET")
...@@ -59,6 +61,7 @@ public interface BookAuthCodeFacade { ...@@ -59,6 +61,7 @@ public interface BookAuthCodeFacade {
@RequestParam("channelId") Long channelId, @RequestParam("channelId") Long channelId,
@RequestParam(required = false,value = "keyword")String keyword, @RequestParam(required = false,value = "keyword")String keyword,
@RequestParam(required = false,value = "state")Integer state, @RequestParam(required = false,value = "state")Integer state,
@RequestParam(required = false,value = "authBookType")Integer authBookType,
@RequestParam("currentPage") Integer currentPage, @RequestParam("currentPage") Integer currentPage,
@RequestParam("numPerPage") Integer numPerPage) @RequestParam("numPerPage") Integer numPerPage)
throws PermissionException, BizException; throws PermissionException, BizException;
...@@ -95,6 +98,7 @@ public interface BookAuthCodeFacade { ...@@ -95,6 +98,7 @@ public interface BookAuthCodeFacade {
@RequestParam(required = false, value ="bookId") Long bookId, @RequestParam(required = false, value ="bookId") Long bookId,
@RequestParam(required = false, value ="codeIds") String codeIds, @RequestParam(required = false, value ="codeIds") String codeIds,
@RequestParam(required = false, value ="channelId") Long channelId, @RequestParam(required = false, value ="channelId") Long channelId,
@RequestParam(required = false, value ="status") Long status ) @RequestParam(required = false, value ="status") Long status,
@RequestParam(required = false,value = "authBookType")Integer authBookType)
throws PermissionException, JsonParseException,BizException; throws PermissionException, JsonParseException,BizException;
} }
...@@ -5,6 +5,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO; ...@@ -5,6 +5,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO;
import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO; import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO;
import com.pcloud.book.copyright.vo.GetAuthInfoParam; import com.pcloud.book.copyright.vo.GetAuthInfoParam;
import com.pcloud.book.copyright.vo.ListHaveAuthBookParam; import com.pcloud.book.copyright.vo.ListHaveAuthBookParam;
import com.pcloud.book.copyright.vo.ListHaveAuthGroupBookParam;
import com.pcloud.book.copyright.vo.SetAuthStatusParam; import com.pcloud.book.copyright.vo.SetAuthStatusParam;
import com.pcloud.book.copyright.vo.SetAuthOpenParam; import com.pcloud.book.copyright.vo.SetAuthOpenParam;
import com.pcloud.book.copyright.vo.SetLocationDescVO; import com.pcloud.book.copyright.vo.SetLocationDescVO;
...@@ -50,7 +51,8 @@ public interface BookAuthInfoFacade { ...@@ -50,7 +51,8 @@ public interface BookAuthInfoFacade {
@ApiOperation(value = "获取正版授权信息", httpMethod = "GET") @ApiOperation(value = "获取正版授权信息", httpMethod = "GET")
@RequestMapping(value = "getInfoByBook", method = RequestMethod.GET) @RequestMapping(value = "getInfoByBook", method = RequestMethod.GET)
ResponseDto<BookAuthInfoVO> getInfoByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) ResponseDto<BookAuthInfoVO> getInfoByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId,
@RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException; throws PermissionException, BizException;
@ApiOperation(value = "获取正版授权信息(客户端)", httpMethod = "POST") @ApiOperation(value = "获取正版授权信息(客户端)", httpMethod = "POST")
...@@ -60,7 +62,8 @@ public interface BookAuthInfoFacade { ...@@ -60,7 +62,8 @@ public interface BookAuthInfoFacade {
@ApiOperation(value = "获取正版授权信息", httpMethod = "GET") @ApiOperation(value = "获取正版授权信息", httpMethod = "GET")
@RequestMapping(value = "getInfoAndServesByBook", method = RequestMethod.GET) @RequestMapping(value = "getInfoAndServesByBook", method = RequestMethod.GET)
ResponseDto<BookAuthInfoAndServesVO> getInfoAndServesByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) ResponseDto<BookAuthInfoAndServesVO> getInfoAndServesByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException; throws PermissionException, BizException;
...@@ -69,9 +72,15 @@ public interface BookAuthInfoFacade { ...@@ -69,9 +72,15 @@ public interface BookAuthInfoFacade {
ResponseDto<PageBeanNew> listHaveSetAuthBook(@RequestHeader("token") String token, @RequestBody ListHaveAuthBookParam listHaveAuthBookParam) ResponseDto<PageBeanNew> listHaveSetAuthBook(@RequestHeader("token") String token, @RequestBody ListHaveAuthBookParam listHaveAuthBookParam)
throws PermissionException, BizException; throws PermissionException, BizException;
@ApiOperation(value = "获取设置过的版权保护社群书信息", httpMethod = "POST")
@RequestMapping(value = "listHaveSetAuthGroupBook", method = RequestMethod.POST)
ResponseDto<PageBeanNew> listHaveSetAuthGroupBook(@RequestHeader("token") String token, @RequestBody ListHaveAuthGroupBookParam listHaveAuthGroupBookParam)
throws PermissionException, BizException;
@ApiOperation(value = "是否有可以导出的", httpMethod = "GET") @ApiOperation(value = "是否有可以导出的", httpMethod = "GET")
@RequestMapping(value = "isHaveExport", method = RequestMethod.GET) @RequestMapping(value = "isHaveExport", method = RequestMethod.GET)
ResponseDto<Boolean> isHaveExport(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) ResponseDto<Boolean> isHaveExport(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId)
throws PermissionException, BizException; throws PermissionException, BizException;
} }
...@@ -2,14 +2,14 @@ package com.pcloud.book.copyright.facade; ...@@ -2,14 +2,14 @@ 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.BookClickBuyRecordParam;
import com.pcloud.book.copyright.vo.CheckUserParam;
import com.pcloud.book.copyright.vo.ProvinceTop10VO; import com.pcloud.book.copyright.vo.ProvinceTop10VO;
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 io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.CookieValue; import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
...@@ -20,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestParam; ...@@ -20,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestParam;
import java.util.List; import java.util.List;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/** /**
* @author lily * @author lily
* @date 2018/12/3 10:59 * @date 2018/12/3 10:59
...@@ -29,23 +32,28 @@ public interface BookAuthUserFacade { ...@@ -29,23 +32,28 @@ public interface BookAuthUserFacade {
@ApiOperation(value = "获取正版授权总人数", httpMethod = "GET") @ApiOperation(value = "获取正版授权总人数", httpMethod = "GET")
@RequestMapping(value = "getAuthUserCount", method = RequestMethod.GET) @RequestMapping(value = "getAuthUserCount", method = RequestMethod.GET)
ResponseDto<BookAuthCodeUserVO> getAuthUserCount(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) ResponseDto<BookAuthCodeUserVO> getAuthUserCount(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException; throws PermissionException, BizException;
@ApiOperation(value = "获取30天趋势图", httpMethod = "GET") @ApiOperation(value = "获取30天趋势图", httpMethod = "GET")
@RequestMapping(value = "listThirtyDay", method = RequestMethod.GET) @RequestMapping(value = "listThirtyDay", method = RequestMethod.GET)
ResponseDto<List<ThirtyDayCountVO>> listThirtyDay(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId, @RequestParam(value = "province", required = false) String province) ResponseDto<List<ThirtyDayCountVO>> listThirtyDay(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "province", required = false) String province,
@RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException; throws PermissionException, BizException;
@ApiOperation(value = "6个月趋势图", httpMethod = "GET") @ApiOperation(value = "6个月趋势图", httpMethod = "GET")
@RequestMapping(value = "listSixMonth", method = RequestMethod.GET) @RequestMapping(value = "listSixMonth", method = RequestMethod.GET)
ResponseDto<List<SixMonthCountVO>> listSixMonth(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId, @RequestParam(value = "province", required = false) String province) ResponseDto<List<SixMonthCountVO>> listSixMonth(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId,
@RequestParam(value = "province", required = false) String province, @RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException; throws PermissionException, BizException;
@ApiOperation(value = "省份排名前10(6个月/30天)", httpMethod = "GET") @ApiOperation(value = "省份排名前10(6个月/30天)", httpMethod = "GET")
@RequestMapping(value = "listTop10ByBook", method = RequestMethod.GET) @RequestMapping(value = "listTop10ByBook", method = RequestMethod.GET)
ResponseDto<List<ProvinceTop10VO>> listTop10ByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId, @RequestParam(value = "type", required = false) Integer type) ResponseDto<List<ProvinceTop10VO>> listTop10ByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId,
@RequestParam(value = "type", required = false) Integer type)
throws PermissionException, BizException; throws PermissionException, BizException;
...@@ -53,4 +61,9 @@ public interface BookAuthUserFacade { ...@@ -53,4 +61,9 @@ public interface BookAuthUserFacade {
@ApiOperation("新增点击购买链接记录") @ApiOperation("新增点击购买链接记录")
ResponseDto<?> insertClickBuyRecord(@CookieValue("userInfo") String userInfo, @RequestBody BookClickBuyRecordParam bookClickBuyRecordParam) ResponseDto<?> insertClickBuyRecord(@CookieValue("userInfo") String userInfo, @RequestBody BookClickBuyRecordParam bookClickBuyRecordParam)
throws BizException; throws BizException;
@PostMapping("checkIsHaveAuth")
@ApiOperation("校验用户是否授权过")
ResponseDto<?> checkIsHaveAuth(@CookieValue("userInfo") String userInfo, @RequestBody CheckUserParam checkUserParam)
throws BizException;
} }
...@@ -81,9 +81,11 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade { ...@@ -81,9 +81,11 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade {
@Override @Override
@GetMapping("importCodeRecord") @GetMapping("importCodeRecord")
public ResponseDto<PageBeanNew<ImportRecordVO>> importCodeRecord(@RequestHeader("token")String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId, @RequestParam("currentPage") Integer currenPage, @RequestParam("numPerPage") Integer numPerPage) throws PermissionException, BizException { public ResponseDto<PageBeanNew<ImportRecordVO>> importCodeRecord(@RequestHeader("token")String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "authBookType", required = false) Integer authBookType,
@RequestParam("currentPage") Integer currenPage, @RequestParam("numPerPage") Integer numPerPage) throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
PageBeanNew<ImportRecordVO> pageBean = bookAuthCodeBiz.importCodeRecord(bookId, channelId, adviserId, currenPage, numPerPage); PageBeanNew<ImportRecordVO> pageBean = bookAuthCodeBiz.importCodeRecord(bookId, channelId, adviserId, authBookType, currenPage, numPerPage);
return new ResponseDto<>(pageBean); return new ResponseDto<>(pageBean);
} }
...@@ -94,6 +96,7 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade { ...@@ -94,6 +96,7 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade {
@RequestParam(required = false,value = "channelId")Long channelId, @RequestParam(required = false,value = "channelId")Long channelId,
@RequestParam(required = false,value = "keyword")String keyword, @RequestParam(required = false,value = "keyword")String keyword,
@RequestParam(required = false,value = "state")Integer state, @RequestParam(required = false,value = "state")Integer state,
@RequestParam(required = false,value = "authBookType")Integer authBookType,
@RequestParam(required = false,value = "currentPage")Integer currentPage, @RequestParam(required = false,value = "currentPage")Integer currentPage,
@RequestParam(required = false,value = "numPerPage")Integer numPerPage) throws PermissionException, BizException { @RequestParam(required = false,value = "numPerPage")Integer numPerPage) throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
...@@ -104,7 +107,7 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade { ...@@ -104,7 +107,7 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade {
throw new BookBizException(BookBizException.PARAM_IS_ERROR,"参数有误!"); throw new BookBizException(BookBizException.PARAM_IS_ERROR,"参数有误!");
} }
PageParam pageParam = new PageParam(currentPage,numPerPage); PageParam pageParam = new PageParam(currentPage,numPerPage);
return new ResponseDto<>(bookAuthCodeBiz.getCodeList(bookId,channelId,adviserId,keyword,state,pageParam)); return new ResponseDto<>(bookAuthCodeBiz.getCodeList(bookId,channelId,adviserId,keyword,state, authBookType, pageParam));
} }
/** /**
...@@ -131,7 +134,8 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade { ...@@ -131,7 +134,8 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade {
@RequestParam(required = false, value ="bookId") Long bookId, @RequestParam(required = false, value ="bookId") Long bookId,
@RequestParam(required = false, value ="codeIds") String codeIds, @RequestParam(required = false, value ="codeIds") String codeIds,
@RequestParam(required = false, value ="channelId") Long channelId, @RequestParam(required = false, value ="channelId") Long channelId,
@RequestParam(required = false, value ="status") Long status ) @RequestParam(required = false, value ="status") Long status,
@RequestParam(required = false,value = "authBookType")Integer authBookType)
throws PermissionException, JsonParseException, BizException { throws PermissionException, JsonParseException, BizException {
String systemCode = (String) SessionUtil.getVlaue(token, SessionUtil.SYSTEM_CODE); String systemCode = (String) SessionUtil.getVlaue(token, SessionUtil.SYSTEM_CODE);
Long partyId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long partyId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
...@@ -139,7 +143,7 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade { ...@@ -139,7 +143,7 @@ public class BookAuthCodeFacadeImpl implements BookAuthCodeFacade {
if (null == status || null == bookId || null == channelId) { if (null == status || null == bookId || null == channelId) {
throw new BookBizException(BookBizException.PARAM_IS_ERROR, "参数错误"); throw new BookBizException(BookBizException.PARAM_IS_ERROR, "参数错误");
} }
Map<String, Object> map = bookAuthCodeBiz.getCodeExcel(bookId,codeIds, channelId, status, systemCode, partyId); Map<String, Object> map = bookAuthCodeBiz.getCodeExcel(bookId,codeIds, channelId, status, systemCode, partyId, authBookType);
return new ResponseDto<>(map); return new ResponseDto<>(map);
} }
} }
...@@ -7,6 +7,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO; ...@@ -7,6 +7,7 @@ import com.pcloud.book.copyright.vo.BookAuthInfoVO;
import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO; import com.pcloud.book.copyright.vo.BookAuthInfoWechatVO;
import com.pcloud.book.copyright.vo.GetAuthInfoParam; import com.pcloud.book.copyright.vo.GetAuthInfoParam;
import com.pcloud.book.copyright.vo.ListHaveAuthBookParam; import com.pcloud.book.copyright.vo.ListHaveAuthBookParam;
import com.pcloud.book.copyright.vo.ListHaveAuthGroupBookParam;
import com.pcloud.book.copyright.vo.SetAuthStatusParam; import com.pcloud.book.copyright.vo.SetAuthStatusParam;
import com.pcloud.book.copyright.vo.SetAuthOpenParam; import com.pcloud.book.copyright.vo.SetAuthOpenParam;
import com.pcloud.book.copyright.vo.SetLocationDescVO; import com.pcloud.book.copyright.vo.SetLocationDescVO;
...@@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.PostMapping; ...@@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; 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.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -71,9 +73,10 @@ public class BookAuthInfoFacadeImpl implements BookAuthInfoFacade { ...@@ -71,9 +73,10 @@ public class BookAuthInfoFacadeImpl implements BookAuthInfoFacade {
@Override @Override
@GetMapping("getInfoByBook") @GetMapping("getInfoByBook")
public ResponseDto<BookAuthInfoVO> getInfoByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) throws PermissionException, BizException { public ResponseDto<BookAuthInfoVO> getInfoByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId,
@RequestParam(value = "authBookType", required = false) Integer authBookType) throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
BookAuthInfoVO bookAuthInfoVO = bookAuthInfoBiz.getInfoByBook(bookId, channelId, adviserId); BookAuthInfoVO bookAuthInfoVO = bookAuthInfoBiz.getInfoByBook(bookId, channelId, adviserId, authBookType);
return new ResponseDto<>(bookAuthInfoVO); return new ResponseDto<>(bookAuthInfoVO);
} }
...@@ -87,9 +90,10 @@ public class BookAuthInfoFacadeImpl implements BookAuthInfoFacade { ...@@ -87,9 +90,10 @@ public class BookAuthInfoFacadeImpl implements BookAuthInfoFacade {
@Override @Override
@GetMapping("getInfoAndServesByBook") @GetMapping("getInfoAndServesByBook")
public ResponseDto<BookAuthInfoAndServesVO> getInfoAndServesByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) throws PermissionException, BizException { public ResponseDto<BookAuthInfoAndServesVO> getInfoAndServesByBook(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "authBookType", required = false) Integer authBookType) throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
BookAuthInfoAndServesVO bookAuthInfoAndServesVO = bookAuthInfoBiz.getInfoAndServesByBook(bookId, channelId, adviserId); BookAuthInfoAndServesVO bookAuthInfoAndServesVO = bookAuthInfoBiz.getInfoAndServesByBook(bookId, channelId, adviserId, authBookType);
return new ResponseDto<>(bookAuthInfoAndServesVO); return new ResponseDto<>(bookAuthInfoAndServesVO);
} }
...@@ -103,6 +107,15 @@ public class BookAuthInfoFacadeImpl implements BookAuthInfoFacade { ...@@ -103,6 +107,15 @@ public class BookAuthInfoFacadeImpl implements BookAuthInfoFacade {
} }
@Override @Override
@RequestMapping(value = "listHaveSetAuthGroupBook", method = RequestMethod.POST)
public ResponseDto<PageBeanNew> listHaveSetAuthGroupBook(@RequestHeader("token") String token, @RequestBody ListHaveAuthGroupBookParam listHaveAuthGroupBookParam)
throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
PageBeanNew pageBeanNew = bookAuthInfoBiz.listHaveSetAuthGroupBook(listHaveAuthGroupBookParam, adviserId) ;
return new ResponseDto<>(pageBeanNew);
}
@Override
@GetMapping("isHaveExport") @GetMapping("isHaveExport")
public ResponseDto<Boolean> isHaveExport(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) public ResponseDto<Boolean> isHaveExport(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId)
throws PermissionException, BizException { throws PermissionException, BizException {
......
...@@ -4,6 +4,7 @@ import com.pcloud.book.copyright.biz.BookAuthUserBiz; ...@@ -4,6 +4,7 @@ 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.BookClickBuyRecordParam;
import com.pcloud.book.copyright.vo.CheckUserParam;
import com.pcloud.book.copyright.vo.ProvinceTop10VO; import com.pcloud.book.copyright.vo.ProvinceTop10VO;
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;
...@@ -38,28 +39,30 @@ public class BookAuthUserFacadeImpl implements BookAuthUserFacade { ...@@ -38,28 +39,30 @@ public class BookAuthUserFacadeImpl implements BookAuthUserFacade {
@Override @Override
@ApiOperation(value = "获取正版授权总人数", httpMethod = "GET") @ApiOperation(value = "获取正版授权总人数", httpMethod = "GET")
@RequestMapping(value = "getAuthUserCount", method = RequestMethod.GET) @RequestMapping(value = "getAuthUserCount", method = RequestMethod.GET)
public ResponseDto<BookAuthCodeUserVO> getAuthUserCount(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId) throws PermissionException, BizException { public ResponseDto<BookAuthCodeUserVO> getAuthUserCount(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId,
@RequestParam("channelId") Long channelId, @RequestParam(value = "authBookType", required = false) Integer authBookType) throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
BookAuthCodeUserVO bookAuthCodeUserVO = bookAuthUserBiz.getAuthUserCount(bookId, channelId, adviserId); BookAuthCodeUserVO bookAuthCodeUserVO = bookAuthUserBiz.getAuthUserCount(bookId, channelId, adviserId, authBookType);
return new ResponseDto<>(bookAuthCodeUserVO); return new ResponseDto<>(bookAuthCodeUserVO);
} }
@Override @Override
@RequestMapping(value = "listThirtyDay", method = RequestMethod.GET) @RequestMapping(value = "listThirtyDay", method = RequestMethod.GET)
public ResponseDto<List<ThirtyDayCountVO>> listThirtyDay(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId public ResponseDto<List<ThirtyDayCountVO>> listThirtyDay(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId
, @RequestParam(value = "province", required = false) String province) throws PermissionException, BizException { , @RequestParam(value = "province", required = false) String province, @RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException {
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
List<ThirtyDayCountVO> thirtyDayCountVOS = bookAuthUserBiz.listThirtyDay(bookId, channelId, adviserId, province); List<ThirtyDayCountVO> thirtyDayCountVOS = bookAuthUserBiz.listThirtyDay(bookId, channelId, adviserId, province, authBookType);
return new ResponseDto<>(thirtyDayCountVOS); return new ResponseDto<>(thirtyDayCountVOS);
} }
@Override @Override
@RequestMapping(value = "listSixMonth", method = RequestMethod.GET) @RequestMapping(value = "listSixMonth", method = RequestMethod.GET)
public ResponseDto<List<SixMonthCountVO>> listSixMonth(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId public ResponseDto<List<SixMonthCountVO>> listSixMonth(@RequestHeader("token") String token, @RequestParam("bookId") Long bookId, @RequestParam("channelId") Long channelId
, @RequestParam(value = "province", required = false) String province) , @RequestParam(value = "province", required = false) String province, @RequestParam(value = "authBookType", required = false) Integer authBookType)
throws PermissionException, BizException{ throws PermissionException, BizException{
Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID); Long adviserId = (Long) SessionUtil.getVlaue(token, SessionUtil.PARTY_ID);
List<SixMonthCountVO> sixMonthCountVOS = bookAuthUserBiz.listSixMonth(bookId, channelId, adviserId, province); List<SixMonthCountVO> sixMonthCountVOS = bookAuthUserBiz.listSixMonth(bookId, channelId, adviserId, province, authBookType);
return new ResponseDto<>(sixMonthCountVOS); return new ResponseDto<>(sixMonthCountVOS);
} }
...@@ -79,4 +82,18 @@ public class BookAuthUserFacadeImpl implements BookAuthUserFacade { ...@@ -79,4 +82,18 @@ public class BookAuthUserFacadeImpl implements BookAuthUserFacade {
bookAuthUserBiz.insertClickBuyRecord(bookClickBuyRecordParam, channelId, wechatUserId); bookAuthUserBiz.insertClickBuyRecord(bookClickBuyRecordParam, channelId, wechatUserId);
return new ResponseDto<>(); return new ResponseDto<>();
} }
@PostMapping("checkIsHaveAuth")
public ResponseDto<?> checkIsHaveAuth(@CookieValue("userInfo") String userInfo, @RequestBody CheckUserParam checkUserParam)
throws BizException{
Long bookId = checkUserParam.getBookId();
Long adviserId = checkUserParam.getAdviserId();
Long channelId = checkUserParam.getChannelId();
if(null == channelId) {
channelId = Cookie.getId(userInfo, Cookie._CHANNEL_ID);
}
Long wechatUserId = Cookie.getId(userInfo, Cookie._WECHAT_USER_ID);
Boolean result = bookAuthUserBiz.checkIsHaveAuth(bookId, channelId, adviserId, wechatUserId, 1);
return new ResponseDto<>(result);
}
} }
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.biz.BookAuthUserBiz;
import com.pcloud.book.copyright.dto.BookAuthInfoCountDTO; import com.pcloud.book.copyright.dto.BookAuthInfoCountDTO;
import com.pcloud.book.copyright.dto.BookAuthTotalCountDTO; import com.pcloud.book.copyright.dto.BookAuthTotalCountDTO;
import com.pcloud.book.copyright.dto.CheckUserAuthDTO;
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;
...@@ -27,17 +29,20 @@ import java.util.List; ...@@ -27,17 +29,20 @@ import java.util.List;
public class BookAuthInfoServiceImpl implements BookAuthInfoService { public class BookAuthInfoServiceImpl implements BookAuthInfoService {
@Autowired @Autowired
private BookAuthInfoBiz bookAuthInfoBiz; private BookAuthInfoBiz bookAuthInfoBiz;
@Autowired
private BookAuthUserBiz bookAuthUserBiz;
@Override @Override
@RequestMapping(value = "/getBookAuthPrice", method = RequestMethod.GET) @RequestMapping(value = "/getBookAuthPrice", method = RequestMethod.GET)
public ResponseEntity<ResponseDto<BigDecimal>> getBookAuthPrice(@RequestParam("bookId") Long bookId, public ResponseEntity<ResponseDto<BigDecimal>> getBookAuthPrice(@RequestParam("bookId") Long bookId,
@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, null));
} }
@Override @Override
@RequestMapping(value = "/getBookAuthInfoCount", method = RequestMethod.GET) @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 { 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); BookAuthInfoCountDTO bookAuthInfoCountDTO = bookAuthInfoBiz.getBookAuthInfoCount(bookId, channelId, adviserId, monthDate);
return ResponseHandleUtil.toResponse(bookAuthInfoCountDTO); return ResponseHandleUtil.toResponse(bookAuthInfoCountDTO);
} }
...@@ -55,4 +60,17 @@ public class BookAuthInfoServiceImpl implements BookAuthInfoService { ...@@ -55,4 +60,17 @@ public class BookAuthInfoServiceImpl implements BookAuthInfoService {
BookAuthTotalCountDTO bookAuthTotalCountDTO = bookAuthInfoBiz.getBookAuthTotalCount(adviserIds); BookAuthTotalCountDTO bookAuthTotalCountDTO = bookAuthInfoBiz.getBookAuthTotalCount(adviserIds);
return ResponseHandleUtil.toResponse(bookAuthTotalCountDTO); return ResponseHandleUtil.toResponse(bookAuthTotalCountDTO);
} }
@Override
@RequestMapping(value = "/checkUserIsHaveAuth", method = RequestMethod.POST)
public ResponseEntity<ResponseDto<Boolean>> checkUserIsHaveAuth(@RequestBody CheckUserAuthDTO checkUserAuthDTO) throws BizException {
return ResponseHandleUtil.toResponse(bookAuthUserBiz.checkUserIsHaveAuth(checkUserAuthDTO));
}
@Override
@RequestMapping(value = "/getGroupBookAuthPrice", method = RequestMethod.GET)
public ResponseEntity<ResponseDto<BigDecimal>> getGroupBookAuthPrice(@RequestParam("bookId") Long bookId,
@RequestParam("channelId")Long channelId, @RequestParam("adviserId")Long adviserId) throws BizException {
return ResponseHandleUtil.toResponse(bookAuthInfoBiz.getBookAuthPrice(bookId, channelId, adviserId, 1));
}
} }
...@@ -30,6 +30,9 @@ public class CheckCodeParam implements Serializable { ...@@ -30,6 +30,9 @@ public class CheckCodeParam implements Serializable {
@ApiModelProperty("运营标识") @ApiModelProperty("运营标识")
private Long channelId; private Long channelId;
@ApiModelProperty("书刊类型:0-现代纸书 1-社群书")
private Integer authBookType;
public Long getChannelId() { public Long getChannelId() {
return channelId; return channelId;
} }
...@@ -69,6 +72,14 @@ public class CheckCodeParam implements Serializable { ...@@ -69,6 +72,14 @@ public class CheckCodeParam implements Serializable {
this.adviserId = adviserId; this.adviserId = adviserId;
} }
public Integer getAuthBookType() {
return authBookType;
}
public void setAuthBookType(Integer authBookType) {
this.authBookType = authBookType;
}
@Override @Override
public String toString() { public String toString() {
return "CheckCodeParam{" + return "CheckCodeParam{" +
...@@ -76,6 +87,8 @@ public class CheckCodeParam implements Serializable { ...@@ -76,6 +87,8 @@ public class CheckCodeParam implements Serializable {
", sceneId=" + sceneId + ", sceneId=" + sceneId +
", bookId=" + bookId + ", bookId=" + bookId +
", adviserId=" + adviserId + ", adviserId=" + adviserId +
", channelId=" + channelId +
", authBookType=" + authBookType +
'}'; '}';
} }
} }
package com.pcloud.book.copyright.vo;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* @author lily
* @date 2018/12/5 14:08
*/
@ApiModel
@JsonInclude(JsonInclude.Include.NON_NULL)
public class CheckUserParam implements Serializable {
@ApiModelProperty("图书标识")
private Long bookId;
@ApiModelProperty("编辑标识")
private Long adviserId;
@ApiModelProperty("运营标识")
private Long channelId;
public Long getChannelId() {
return channelId;
}
public void setChannelId(Long channelId) {
this.channelId = channelId;
}
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 "CheckCodeParam{" +
", bookId=" + bookId +
", adviserId=" + adviserId +
", channelId=" + channelId +
'}';
}
}
...@@ -15,6 +15,8 @@ public class FileVO implements Serializable { ...@@ -15,6 +15,8 @@ public class FileVO implements Serializable {
private String fileName; private String fileName;
private Integer authBookType;
public String getFileName() { public String getFileName() {
return fileName; return fileName;
} }
...@@ -47,12 +49,22 @@ public class FileVO implements Serializable { ...@@ -47,12 +49,22 @@ public class FileVO implements Serializable {
this.fileUrl = fileUrl; this.fileUrl = fileUrl;
} }
public Integer getAuthBookType() {
return authBookType;
}
public void setAuthBookType(Integer authBookType) {
this.authBookType = authBookType;
}
@Override @Override
public String toString() { public String toString() {
return "FileVO{" + return "FileVO{" +
"fileUrl='" + fileUrl + '\'' + "fileUrl='" + fileUrl + '\'' +
", bookId=" + bookId + ", bookId=" + bookId +
", channelId=" + channelId + ", channelId=" + channelId +
", fileName='" + fileName + '\'' +
", authBookType=" + authBookType +
'}'; '}';
} }
} }
...@@ -22,6 +22,9 @@ public class GetAuthInfoParam implements Serializable { ...@@ -22,6 +22,9 @@ public class GetAuthInfoParam implements Serializable {
@ApiModelProperty("编辑标识") @ApiModelProperty("编辑标识")
private Long adviserId; private Long adviserId;
@ApiModelProperty("书刊类型:0-现代纸书 1-社群书")
private Integer authBookType;
public Long getSceneId() { public Long getSceneId() {
return sceneId; return sceneId;
} }
...@@ -46,12 +49,21 @@ public class GetAuthInfoParam implements Serializable { ...@@ -46,12 +49,21 @@ public class GetAuthInfoParam implements Serializable {
this.adviserId = adviserId; this.adviserId = adviserId;
} }
public Integer getAuthBookType() {
return authBookType;
}
public void setAuthBookType(Integer authBookType) {
this.authBookType = authBookType;
}
@Override @Override
public String toString() { public String toString() {
return "GetAuthInfoParam{" + return "GetAuthInfoParam{" +
"sceneId=" + sceneId + "sceneId=" + sceneId +
", bookId=" + bookId + ", bookId=" + bookId +
", adviserId=" + adviserId + ", adviserId=" + adviserId +
", authBookType=" + authBookType +
'}'; '}';
} }
} }
package com.pcloud.book.copyright.vo;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* @author lihao
* @date 2018/8/26 14:27
*/
@ApiModel
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ListHaveAuthGroupBookParam implements Serializable {
@ApiModelProperty("isbn/issn/图书名称")
private String name;
@ApiModelProperty("运营标识")
private Long channelId;
@ApiModelProperty("图书类型标识")
private Long templetId;
@ApiModelProperty("第二级图书类型标识")
private Long secondTempletId;
@ApiModelProperty("当前页")
private Integer currentPage;
@ApiModelProperty("每页条数")
private Integer numPerPage;
@ApiModelProperty("类型")
private String typeCode;
@ApiModelProperty("社群书状态")
private Integer bookStatus;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Long getChannelId() {
return channelId;
}
public void setChannelId(Long channelId) {
this.channelId = channelId;
}
public Long getTempletId() {
return templetId;
}
public void setTempletId(Long templetId) {
this.templetId = templetId;
}
public Long getSecondTempletId() {
return secondTempletId;
}
public void setSecondTempletId(Long secondTempletId) {
this.secondTempletId = secondTempletId;
}
public Integer getCurrentPage() {
return currentPage;
}
public void setCurrentPage(Integer currentPage) {
this.currentPage = currentPage;
}
public Integer getNumPerPage() {
return numPerPage;
}
public void setNumPerPage(Integer numPerPage) {
this.numPerPage = numPerPage;
}
public String getTypeCode() {
return typeCode;
}
public void setTypeCode(String typeCode) {
this.typeCode = typeCode;
}
public Integer getBookStatus() {
return bookStatus;
}
public void setBookStatus(Integer bookStatus) {
this.bookStatus = bookStatus;
}
@Override
public String toString() {
return "ListHaveAuthGroupBookParam{" +
"name='" + name + '\'' +
", channelId=" + channelId +
", templetId=" + templetId +
", secondTempletId=" + secondTempletId +
", currentPage=" + currentPage +
", numPerPage=" + numPerPage +
", typeCode='" + typeCode + '\'' +
", bookStatus=" + bookStatus +
'}';
}
}
...@@ -46,6 +46,9 @@ public class SetAuthOpenParam implements Serializable { ...@@ -46,6 +46,9 @@ public class SetAuthOpenParam implements Serializable {
@ApiModelProperty("是否包含条形码 C1001121 添加二维码,故该字段2为二维码") @ApiModelProperty("是否包含条形码 C1001121 添加二维码,故该字段2为二维码")
private Integer isHaveBarCode; private Integer isHaveBarCode;
@ApiModelProperty("书刊类型:0-现代纸书 1-社群书")
private Integer authBookType;
public List<ServeVO> getServes() { public List<ServeVO> getServes() {
return serves; return serves;
} }
...@@ -126,9 +129,17 @@ public class SetAuthOpenParam implements Serializable { ...@@ -126,9 +129,17 @@ public class SetAuthOpenParam implements Serializable {
this.isHaveBarCode = isHaveBarCode; this.isHaveBarCode = isHaveBarCode;
} }
public Integer getAuthBookType() {
return authBookType;
}
public void setAuthBookType(Integer authBookType) {
this.authBookType = authBookType;
}
@Override @Override
public String toString() { public String toString() {
return "SetAuthOpenVO{" + return "SetAuthOpenParam{" +
"bookId=" + bookId + "bookId=" + bookId +
", channelId=" + channelId + ", channelId=" + channelId +
", price=" + price + ", price=" + price +
...@@ -138,6 +149,8 @@ public class SetAuthOpenParam implements Serializable { ...@@ -138,6 +149,8 @@ public class SetAuthOpenParam implements Serializable {
", bookStatus=" + bookStatus + ", bookStatus=" + bookStatus +
", checkType=" + checkType + ", checkType=" + checkType +
", serves=" + serves + ", serves=" + serves +
", isHaveBarCode=" + isHaveBarCode +
", authBookType=" + authBookType +
'}'; '}';
} }
} }
...@@ -25,6 +25,9 @@ public class SetAuthStatusParam implements Serializable { ...@@ -25,6 +25,9 @@ public class SetAuthStatusParam implements Serializable {
@ApiModelProperty("图书状态") @ApiModelProperty("图书状态")
private Integer bookStatus; private Integer bookStatus;
@ApiModelProperty("书刊类型:0-现代纸书 1-社群书")
private Integer authBookType;
public Integer getBookStatus() { public Integer getBookStatus() {
return bookStatus; return bookStatus;
} }
...@@ -49,12 +52,21 @@ public class SetAuthStatusParam implements Serializable { ...@@ -49,12 +52,21 @@ public class SetAuthStatusParam implements Serializable {
this.channelId = channelId; this.channelId = channelId;
} }
public Integer getAuthBookType() {
return authBookType;
}
public void setAuthBookType(Integer authBookType) {
this.authBookType = authBookType;
}
@Override @Override
public String toString() { public String toString() {
return "SetAuthStatusParam{" + return "SetAuthStatusParam{" +
"bookId=" + bookId + "bookId=" + bookId +
", channelId=" + channelId + ", channelId=" + channelId +
", bookStatus=" + bookStatus + ", bookStatus=" + bookStatus +
", authBookType=" + authBookType +
'}'; '}';
} }
} }
...@@ -23,6 +23,9 @@ public class SetLocationDescVO implements Serializable { ...@@ -23,6 +23,9 @@ public class SetLocationDescVO implements Serializable {
@ApiModelProperty("位置描述") @ApiModelProperty("位置描述")
private String locationDesc; private String locationDesc;
@ApiModelProperty("书刊类型:0-现代纸书 1-社群书")
private Integer authBookType;
public Long getBookId() { public Long getBookId() {
return bookId; return bookId;
} }
...@@ -47,12 +50,21 @@ public class SetLocationDescVO implements Serializable { ...@@ -47,12 +50,21 @@ public class SetLocationDescVO implements Serializable {
this.locationDesc = locationDesc; this.locationDesc = locationDesc;
} }
public Integer getAuthBookType() {
return authBookType;
}
public void setAuthBookType(Integer authBookType) {
this.authBookType = authBookType;
}
@Override @Override
public String toString() { public String toString() {
return "SetLocationDesc{" + return "SetLocationDescVO{" +
"bookId=" + bookId + "bookId=" + bookId +
", channelId=" + channelId + ", channelId=" + channelId +
", locationDesc='" + locationDesc + '\'' + ", locationDesc='" + locationDesc + '\'' +
", authBookType=" + authBookType +
'}'; '}';
} }
} }
...@@ -10,6 +10,7 @@ import com.pcloud.book.consumer.resource.ProductConsr; ...@@ -10,6 +10,7 @@ import com.pcloud.book.consumer.resource.ProductConsr;
import com.pcloud.book.consumer.settlement.SettlementConsr; import com.pcloud.book.consumer.settlement.SettlementConsr;
import com.pcloud.book.consumer.trade.TradeConsr; import com.pcloud.book.consumer.trade.TradeConsr;
import com.pcloud.book.consumer.wechatgroup.WechatGroupConsr; import com.pcloud.book.consumer.wechatgroup.WechatGroupConsr;
import com.pcloud.book.copyright.biz.BookAuthUserBiz;
import com.pcloud.book.group.biz.BookGroupBiz; import com.pcloud.book.group.biz.BookGroupBiz;
import com.pcloud.book.group.biz.BookGroupClassifyBiz; import com.pcloud.book.group.biz.BookGroupClassifyBiz;
import com.pcloud.book.group.biz.GroupAnnouncementBiz; import com.pcloud.book.group.biz.GroupAnnouncementBiz;
...@@ -146,6 +147,9 @@ public class BookGroupClassifyBizImpl implements BookGroupClassifyBiz { ...@@ -146,6 +147,9 @@ public class BookGroupClassifyBizImpl implements BookGroupClassifyBiz {
@Autowired @Autowired
private JoinGroupCipherDao joinGroupCipherDao; private JoinGroupCipherDao joinGroupCipherDao;
@Autowired
private BookAuthUserBiz bookAuthUserBiz;
@Override @Override
@ParamLog("新增分类") @ParamLog("新增分类")
...@@ -544,10 +548,14 @@ public class BookGroupClassifyBizImpl implements BookGroupClassifyBiz { ...@@ -544,10 +548,14 @@ public class BookGroupClassifyBizImpl implements BookGroupClassifyBiz {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "社群码不存在,请刷新后重试"); throw new BookBizException(BookBizException.PARAM_IS_NULL, "社群码不存在,请刷新后重试");
} }
if (new BigDecimal(0).compareTo(classify.getPrice()) < 0) { if (new BigDecimal(0).compareTo(classify.getPrice()) < 0) {
//校验用户是否购买 //校验用户是否正版授权
Boolean isBuy = bookClassifyBuyRecordDao.checkUserBuy(wechatUserId, classifyId); Boolean isAuth = bookAuthUserBiz.checkIsHaveAuth(classify.getBookId(), classify.getChannelId(), classify.getCreateUser(), wechatUserId, 1);
if (!isBuy) { if(!isAuth) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "您还未购买,请购买后使用!"); //校验用户是否购买
Boolean isBuy = bookClassifyBuyRecordDao.checkUserBuy(wechatUserId, classifyId);
if (!isBuy) {
throw new BookBizException(BookBizException.PARAM_IS_NULL, "您还未购买,请购买后使用!");
}
} }
} }
......
...@@ -51,6 +51,9 @@ public class ClassifyVO implements Serializable { ...@@ -51,6 +51,9 @@ public class ClassifyVO implements Serializable {
@ApiModelProperty("排序") @ApiModelProperty("排序")
private Integer rank; private Integer rank;
@ApiModelProperty("创建人")
private Long createUser;
public Integer getRank() { public Integer getRank() {
return rank; return rank;
} }
...@@ -147,6 +150,14 @@ public class ClassifyVO implements Serializable { ...@@ -147,6 +150,14 @@ public class ClassifyVO implements Serializable {
this.productSpecId = productSpecId; this.productSpecId = productSpecId;
} }
public Long getCreateUser() {
return createUser;
}
public void setCreateUser(Long createUser) {
this.createUser = createUser;
}
@Override @Override
public String toString() { public String toString() {
return "ClassifyVO{" + return "ClassifyVO{" +
...@@ -162,6 +173,7 @@ public class ClassifyVO implements Serializable { ...@@ -162,6 +173,7 @@ public class ClassifyVO implements Serializable {
", productId=" + productId + ", productId=" + productId +
", productSpecId=" + productSpecId + ", productSpecId=" + productSpecId +
", rank=" + rank + ", rank=" + rank +
", createUser=" + createUser +
'}'; '}';
} }
} }
...@@ -1640,7 +1640,7 @@ ...@@ -1640,7 +1640,7 @@
LEFT JOIN LEFT JOIN
BOOK_FUND BF ON BF.BOOK_ID = A.BOOK_ID AND BF.END_TIME <![CDATA[ > ]]> NOW() AND BF.START_TIME <![CDATA[ < ]]> NOW() BOOK_FUND BF ON BF.BOOK_ID = A.BOOK_ID AND BF.END_TIME <![CDATA[ > ]]> NOW() AND BF.START_TIME <![CDATA[ < ]]> NOW()
</if> </if>
LEFT JOIN book_auth_info I ON I.BOOK_ID = B.BOOK_ID AND I.ADVISER_ID = #{adviserId} LEFT JOIN book_auth_info I ON I.BOOK_ID = B.BOOK_ID AND I.ADVISER_ID = #{adviserId} AND I.is_paper_book = 1
WHERE WHERE
I.ID IS NULL I.ID IS NULL
<if test="typeCode!=null"> <if test="typeCode!=null">
...@@ -1679,4 +1679,59 @@ ...@@ -1679,4 +1679,59 @@
A.LAST_MODIFIED_DATE DESC , A.BOOK_ADVISER_ID DESC A.LAST_MODIFIED_DATE DESC , A.BOOK_ADVISER_ID DESC
</select> </select>
<select id="listNoAuthGroupBook" resultType="noAuthBookVO" parameterType="map">
SELECT
A.book_id AS bookId,
A.channel_id AS channelId,
A.adviser_id AS adviserId,
B.type_code AS typeCode,
T.type_name AS typeName,
B.isbn,
B.book_name AS bookName,
B.cover_img AS coverImg,
B.serial_number AS serialNumber,
A.templet_id AS templetId
FROM
book_group G
INNER JOIN book B ON G.book_id = B.book_id
AND G.create_user = #{adviserId}
AND G.is_delete = 0
AND B.is_delete = 0
INNER JOIN BOOK_ADVISER A ON A.BOOK_ID = B.BOOK_ID
AND A.ADVISER_ID = #{adviserId}
AND A.IS_DELETE = 0
AND B.IS_DELETE = 0
LEFT JOIN BOOK_TYPE T ON B.TYPE_CODE = T.TYPE_CODE
LEFT JOIN book_auth_info I ON I.BOOK_ID = B.BOOK_ID
AND I.ADVISER_ID = #{adviserId} AND I.is_group_book = 1
WHERE
I.ID IS NULL
AND
<if test="typeCode!=null">
AND
B.TYPE_CODE = #{typeCode}
</if>
<if test="channelId!=null">
AND
G.CHANNEL_ID = #{channelId}
</if>
<if test="name != null">
AND
(B.BOOK_NAME LIKE CONCAT('%', #{name}, '%') OR B.ISBN LIKE CONCAT(#{name},'%'))
</if>
<if test="templetId != null">
AND
A.TEMPLET_ID = #{templetId}
</if>
<if test="secondTempletIds!=null and secondTempletIds.size()>0">
AND
A.SECOND_TEMPLET_ID in
<foreach collection="secondTempletIds" item="item" open="(" separator="," close=")">
${item}
</foreach>
</if>
GROUP BY G.book_id, G.channel_id
ORDER BY
G.update_time DESC , G.id DESC
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -4,13 +4,14 @@ ...@@ -4,13 +4,14 @@
<insert id="batchInsert" useGeneratedKeys="true" parameterType="java.util.List"> <insert id="batchInsert" useGeneratedKeys="true" parameterType="java.util.List">
INSERT INTO BOOK_AUTH_CODE ( INSERT INTO BOOK_AUTH_CODE (
BOOK_ID, CHANNEL_ID,ADVISER_ID,BATCH_NUM,AUTH_CODE,FULL_CODE,CREATE_TYPE,CREATED_USER, CREATED_DATE BOOK_ID, CHANNEL_ID,ADVISER_ID,BATCH_NUM,AUTH_CODE,FULL_CODE,CREATE_TYPE,CREATED_USER, CREATED_DATE,IS_PAPER_BOOK,IS_GROUP_BOOK
) )
VALUES VALUES
<foreach collection="list" item="item" index="index" separator="," > <foreach collection="list" item="item" index="index" separator="," >
(#{item.bookId,jdbcType=BIGINT}, #{item.channelId,jdbcType=BIGINT}, #{item.adviserId,jdbcType=BIGINT}, (#{item.bookId,jdbcType=BIGINT}, #{item.channelId,jdbcType=BIGINT}, #{item.adviserId,jdbcType=BIGINT},
#{item.batchNum,jdbcType=VARCHAR},#{item.authCode,jdbcType=VARCHAR},#{item.fullCode,jdbcType=VARCHAR}, #{item.batchNum,jdbcType=VARCHAR},#{item.authCode,jdbcType=VARCHAR},#{item.fullCode,jdbcType=VARCHAR},
#{item.createType,jdbcType=TINYINT},#{item.adviserId,jdbcType=BIGINT}, NOW()) #{item.createType,jdbcType=TINYINT},#{item.adviserId,jdbcType=BIGINT}, NOW(),#{item.isPaperBook,jdbcType=TINYINT},
#{item.isGroupBook,jdbcType=TINYINT})
</foreach> </foreach>
</insert> </insert>
...@@ -26,6 +27,14 @@ ...@@ -26,6 +27,14 @@
CHANNEL_ID = #{channelId, jdbcType=BIGINT} CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</select> </select>
<update id="updateUseCount" parameterType="map" flushCache="true"> <update id="updateUseCount" parameterType="map" flushCache="true">
...@@ -44,6 +53,14 @@ ...@@ -44,6 +53,14 @@
FULL_CODE = #{code} FULL_CODE = #{code}
AND AND
use_count <![CDATA[ < ]]> #{codeUseCount} use_count <![CDATA[ < ]]> #{codeUseCount}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</update> </update>
<select id="getIsHaveCode" resultType="Boolean" parameterType="map"> <select id="getIsHaveCode" resultType="Boolean" parameterType="map">
...@@ -59,6 +76,14 @@ ...@@ -59,6 +76,14 @@
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
AND AND
FULL_CODE = #{code} FULL_CODE = #{code}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</select> </select>
<select id="getCodeList" parameterType="map" resultType="com.pcloud.book.copyright.dto.BookAuthCodeDTO"> <select id="getCodeList" parameterType="map" resultType="com.pcloud.book.copyright.dto.BookAuthCodeDTO">
...@@ -92,6 +117,14 @@ ...@@ -92,6 +117,14 @@
</otherwise> </otherwise>
</choose> </choose>
</if> </if>
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
order by created_date desc order by created_date desc
</select> </select>
...@@ -117,6 +150,14 @@ ...@@ -117,6 +150,14 @@
created_date createdDate created_date createdDate
from book_auth_code from book_auth_code
where book_id= #{bookId,jdbcType=BIGINT} and channel_id = #{channelId} and adviser_id = #{adviserId} where book_id= #{bookId,jdbcType=BIGINT} and channel_id = #{channelId} and adviser_id = #{adviserId}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
LIMIT #{currentPage},#{numPerPage} LIMIT #{currentPage},#{numPerPage}
</select> </select>
......
...@@ -4,12 +4,12 @@ ...@@ -4,12 +4,12 @@
<insert id="insert" useGeneratedKeys="true" keyProperty="id" parameterType="BookAuthCodeImportRecord"> <insert id="insert" useGeneratedKeys="true" keyProperty="id" parameterType="BookAuthCodeImportRecord">
INSERT INTO BOOK_AUTH_CODE_IMPORT_RECORD ( INSERT INTO BOOK_AUTH_CODE_IMPORT_RECORD (
BOOK_ID, CHANNEL_ID,ADVISER_ID,FILE_NAME,FILE_URL,CREATE_USER, CREATE_TIME BOOK_ID, CHANNEL_ID,ADVISER_ID,FILE_NAME,FILE_URL,CREATE_USER, CREATE_TIME, is_paper_book, is_group_book
) )
VALUES VALUES
(#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT}, (#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT},
#{fileName,jdbcType=VARCHAR},#{fileUrl,jdbcType=VARCHAR},#{createUser,jdbcType=BIGINT}, #{fileName,jdbcType=VARCHAR},#{fileUrl,jdbcType=VARCHAR},#{createUser,jdbcType=BIGINT},
NOW()) NOW(), #{isPaperBook}, #{isGroupBook})
</insert> </insert>
<select id="importCodeRecord" resultType="importRecordVO" parameterType="map"> <select id="importCodeRecord" resultType="importRecordVO" parameterType="map">
...@@ -23,6 +23,14 @@ ...@@ -23,6 +23,14 @@
CHANNEL_ID = #{channelId, jdbcType=BIGINT} CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</select> </select>
<update id="updateState" parameterType="map"> <update id="updateState" parameterType="map">
......
...@@ -17,12 +17,14 @@ ...@@ -17,12 +17,14 @@
<insert id="insert" useGeneratedKeys="true" parameterType="bookAuthInfo"> <insert id="insert" useGeneratedKeys="true" parameterType="bookAuthInfo">
INSERT INTO BOOK_AUTH_INFO( INSERT INTO BOOK_AUTH_INFO(
BOOK_ID, CHANNEL_ID,ADVISER_ID,PRICE,CODE_USE_COUNT,BUY_URL,CHECK_TYPE, CREATED_USER, CREATED_DATE,LAST_MODIFIED_DATE,OPEN_TIME BOOK_ID, CHANNEL_ID,ADVISER_ID,PRICE,CODE_USE_COUNT,BUY_URL,CHECK_TYPE, CREATED_USER, CREATED_DATE,LAST_MODIFIED_DATE,OPEN_TIME,
is_paper_book, is_group_book
) )
VALUES VALUES
(#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT}, (#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT},
#{price}, #{codeUseCount,jdbcType=BIGINT}, #{buyUrl}, #{checkType}, #{price}, #{codeUseCount,jdbcType=BIGINT}, #{buyUrl}, #{checkType},
#{adviserId,jdbcType=BIGINT}, NOW(), NOW(), NOW()) #{adviserId,jdbcType=BIGINT}, NOW(), NOW(), NOW(),
#{isPaperBook}, #{isGroupBook})
</insert> </insert>
<select id="getInfoByBook" resultMap="BookAuthInfoMap" parameterType="map"> <select id="getInfoByBook" resultMap="BookAuthInfoMap" parameterType="map">
...@@ -36,6 +38,14 @@ ...@@ -36,6 +38,14 @@
CHANNEL_ID = #{channelId, jdbcType=BIGINT} CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</select> </select>
<select id="getIsHaveAuthBook" resultType="Boolean" parameterType="Long"> <select id="getIsHaveAuthBook" resultType="Boolean" parameterType="Long">
...@@ -49,6 +59,7 @@ ...@@ -49,6 +59,7 @@
ADVISER_ID = #{_parameter, jdbcType=BIGINT} ADVISER_ID = #{_parameter, jdbcType=BIGINT}
</select> </select>
<!-- 获取设置过正版授权的图书 -->
<select id="listHaveSetAuthBook" resultType="haveSetAuthBook" parameterType="map"> <select id="listHaveSetAuthBook" resultType="haveSetAuthBook" parameterType="map">
SELECT SELECT
I.ID,A.BOOK_ID as bookId, I.ID,A.BOOK_ID as bookId,
...@@ -68,7 +79,7 @@ ...@@ -68,7 +79,7 @@
<if test="isFundSupport != null"> <if test="isFundSupport != null">
LEFT JOIN BOOK_FUND BF ON BF.BOOK_ID = A.BOOK_ID AND BF.END_TIME <![CDATA[ > ]]> NOW() AND BF.START_TIME <![CDATA[ < ]]> NOW() LEFT JOIN BOOK_FUND BF ON BF.BOOK_ID = A.BOOK_ID AND BF.END_TIME <![CDATA[ > ]]> NOW() AND BF.START_TIME <![CDATA[ < ]]> NOW()
</if> </if>
WHERE 1=1 WHERE I.is_paper_book = 1
<if test="typeCode!=null"> <if test="typeCode!=null">
AND AND
B.TYPE_CODE = #{typeCode} B.TYPE_CODE = #{typeCode}
...@@ -83,7 +94,14 @@ ...@@ -83,7 +94,14 @@
</if> </if>
<if test="name != null"> <if test="name != null">
AND AND
(B.BOOK_NAME LIKE CONCAT('%', #{name}, '%') OR B.ISBN LIKE CONCAT(#{name},'%')) ((B.BOOK_NAME LIKE CONCAT('%', #{name}, '%') OR B.ISBN LIKE CONCAT(#{name},'%'))
<if test="nameList != null and nameList.size > 0">
<foreach collection="nameList" close=" " separator=" " open=" " item="item">
OR
(B.BOOK_NAME LIKE CONCAT('%', '${item}', '%') OR B.ISBN LIKE CONCAT('${item}','%'))
</foreach>
</if>
)
</if> </if>
<if test="isMainEditor != null"> <if test="isMainEditor != null">
AND AND
...@@ -108,6 +126,65 @@ ...@@ -108,6 +126,65 @@
I.LAST_MODIFIED_DATE DESC I.LAST_MODIFIED_DATE DESC
</select> </select>
<!-- 获取设置过正版授权的社群书 -->
<select id="listHaveSetAuthGroupBook" resultType="haveSetAuthBook" parameterType="map">
SELECT
I.id,
I.book_id AS bookId,
I.channel_id AS channelId,
I.price,
I.adviser_id AS adviserId,
I.book_status AS bookStatus,
B.isbn,
B.book_name AS bookName,
B.cover_img AS coverImg,
B.serial_number AS serialNumber
FROM
book_auth_info I
INNER JOIN book_adviser A ON A.book_id = I.book_id
AND A.channel_id = I.channel_id
AND A.created_user = I.adviser_id
AND A.is_delete = 0
INNER JOIN book_group G ON G.book_id = I.book_id
AND G.channel_id = I.channel_id
AND G.create_user = I.adviser_id
AND G.is_delete = 0
INNER JOIN book B ON I.book_id = B.book_id
AND B.is_delete = 0
WHERE I.is_group_book = 1
AND I.adviser_id = #{adviserId}
<if test="typeCode!=null">
AND
B.type_code = #{typeCode}
</if>
<if test="bookStatus!=null">
AND
I.book_status = #{bookStatus}
</if>
<if test="channelId!=null">
AND
I.channel_id = #{channelId}
</if>
<if test="name != null">
AND
(B.BOOK_NAME LIKE CONCAT('%', #{name}, '%') OR B.ISBN LIKE CONCAT(#{name},'%'))
</if>
<if test="templetId != null">
AND
A.TEMPLET_ID = #{templetId}
</if>
<if test="secondTempletIds != null and secondTempletIds.size() > 0">
AND
A.SECOND_TEMPLET_ID in
<foreach collection="secondTempletIds" item="item" open="(" separator="," close=")">
${item}
</foreach>
</if>
GROUP BY A.BOOK_ID, A.CHANNEL_ID
ORDER BY
I.LAST_MODIFIED_DATE DESC
</select>
<update id="updateBookStatus" parameterType="map" flushCache="true"> <update id="updateBookStatus" parameterType="map" flushCache="true">
UPDATE BOOK_AUTH_INFO UPDATE BOOK_AUTH_INFO
SET SET
...@@ -131,7 +208,18 @@ ...@@ -131,7 +208,18 @@
LAST_MODIFIED_DATE = NOW(), LAST_MODIFIED_DATE = NOW(),
LAST_MODIFIED_USER = #{adviserId} LAST_MODIFIED_USER = #{adviserId}
WHERE WHERE
BOOK_ID = #{bookId} AND CHANNEL_ID = #{channelId} AND ADVISER_ID = #{adviserId} BOOK_ID = #{bookId}
AND CHANNEL_ID = #{channelId}
AND ADVISER_ID = #{adviserId}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</update> </update>
<update id="updateBaseInfo" parameterType="bookAuthInfo" flushCache="true"> <update id="updateBaseInfo" parameterType="bookAuthInfo" flushCache="true">
UPDATE BOOK_AUTH_INFO UPDATE BOOK_AUTH_INFO
...@@ -167,6 +255,8 @@ ...@@ -167,6 +255,8 @@
CHANNEL_ID = #{channelId, jdbcType=BIGINT} CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
AND
is_paper_book = 1
</select> </select>
<select id="getTotalNum" resultType="Integer" parameterType="map"> <select id="getTotalNum" resultType="Integer" parameterType="map">
......
...@@ -4,9 +4,9 @@ ...@@ -4,9 +4,9 @@
<insert id="insert" useGeneratedKeys="true" parameterType="bookAuthOrder"> <insert id="insert" useGeneratedKeys="true" parameterType="bookAuthOrder">
INSERT INTO BOOK_AUTH_ORDER( INSERT INTO BOOK_AUTH_ORDER(
BOOK_ID, CHANNEL_ID,ADVISER_ID,WECHAT_USER_ID,MONEY,ACCOUNT_SETTING_ID,ORDER_NUM,PAYMENT_SOURCE, CREATED_USER, CREATED_DATE) BOOK_ID, CHANNEL_ID,ADVISER_ID,WECHAT_USER_ID,MONEY,ACCOUNT_SETTING_ID,ORDER_NUM,PAYMENT_SOURCE, CREATED_USER, CREATED_DATE, is_paper_book, is_group_book)
VALUES VALUES
(#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT}, (#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT},
#{wechatUserId}, #{money}, #{accountSettingId}, #{orderNum}, #{paymentSource}, #{adviserId}, NOW()) #{wechatUserId}, #{money}, #{accountSettingId}, #{orderNum}, #{paymentSource}, #{adviserId}, NOW(), #{isPaperBook}, #{isGroupBook})
</insert> </insert>
</mapper> </mapper>
\ No newline at end of file
...@@ -4,10 +4,10 @@ ...@@ -4,10 +4,10 @@
<insert id="insert" useGeneratedKeys="true" parameterType="bookAuthUser"> <insert id="insert" useGeneratedKeys="true" parameterType="bookAuthUser">
INSERT INTO BOOK_AUTH_USER( INSERT INTO BOOK_AUTH_USER(
BOOK_ID, CHANNEL_ID,ADVISER_ID,WECHAT_USER_ID,MONTHS,province,city,IS_AUTH_CODE, CREATED_DATE,CREATED_USER, CREATED_TIME) BOOK_ID, CHANNEL_ID,ADVISER_ID,WECHAT_USER_ID,MONTHS,province,city,IS_AUTH_CODE, CREATED_DATE,CREATED_USER, CREATED_TIME, is_paper_book, is_group_book)
VALUES VALUES
(#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT}, (#{bookId,jdbcType=BIGINT}, #{channelId,jdbcType=BIGINT}, #{adviserId,jdbcType=BIGINT},
#{wechatUserId}, #{months}, #{province}, #{city}, #{isAuthCode},NOW(), #{adviserId}, NOW()) #{wechatUserId}, #{months}, #{province}, #{city}, #{isAuthCode},NOW(), #{adviserId}, NOW(), #{isPaperBook}, #{isGroupBook})
</insert> </insert>
<select id="getAuthUserCount" resultType="bookAuthCodeUserVO" parameterType="map"> <select id="getAuthUserCount" resultType="bookAuthCodeUserVO" parameterType="map">
...@@ -22,6 +22,14 @@ ...@@ -22,6 +22,14 @@
CHANNEL_ID = #{channelId, jdbcType=BIGINT} CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</select> </select>
<select id="getAuthUserCountByMonth" resultType="bookAuthCodeUserVO" parameterType="map"> <select id="getAuthUserCountByMonth" resultType="bookAuthCodeUserVO" parameterType="map">
...@@ -39,7 +47,6 @@ ...@@ -39,7 +47,6 @@
<if test="monthDate!=null"> <if test="monthDate!=null">
AND MONTHS = #{monthDate} AND MONTHS = #{monthDate}
</if> </if>
</select> </select>
...@@ -56,6 +63,14 @@ ...@@ -56,6 +63,14 @@
ADVISER_ID = #{adviserId, jdbcType=BIGINT} ADVISER_ID = #{adviserId, jdbcType=BIGINT}
AND AND
WECHAT_USER_ID = #{wechatUserId} WECHAT_USER_ID = #{wechatUserId}
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
</select> </select>
...@@ -76,6 +91,14 @@ ...@@ -76,6 +91,14 @@
<if test="province!=null"> <if test="province!=null">
AND PROVINCE = #{province} AND PROVINCE = #{province}
</if> </if>
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
GROUP BY created_date GROUP BY created_date
</select> </select>
...@@ -146,7 +169,35 @@ ...@@ -146,7 +169,35 @@
<if test="province!=null"> <if test="province!=null">
AND PROVINCE = #{province} AND PROVINCE = #{province}
</if> </if>
<if test="isPaperBook != null">
AND
is_paper_book = #{isPaperBook}
</if>
<if test="isGroupBook!=null">
AND
is_group_book = #{isGroupBook}
</if>
GROUP BY months GROUP BY months
</select> </select>
<select id="checkUserIsHaveAuth" resultType="Boolean" parameterType="map">
SELECT
COUNT(1)
FROM
BOOK_AUTH_USER
WHERE
is_group_book = 1
AND
BOOK_ID = #{bookId, jdbcType=BIGINT}
AND
CHANNEL_ID = #{channelId, jdbcType=BIGINT}
AND
ADVISER_ID = #{adviserId, jdbcType=BIGINT}
AND
WECHAT_USER_ID IN
<foreach collection="wechatUserIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -176,7 +176,7 @@ ...@@ -176,7 +176,7 @@
classify_introduce classifyIntroduce, classify_introduce classifyIntroduce,
price, price,
change_number changeNumber, change_number changeNumber,
create_user create_user createUser
from from
book_group_classify book_group_classify
where where
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment