Commit 36c8511d by 郑永强

bug: [1031444] 小蓝书统计-统一书刊统计

parent 8c72979a
......@@ -229,6 +229,12 @@
</dependency>
<dependency>
<groupId>com.pcloud.data</groupId>
<artifactId>pcloud-data-api</artifactId>
<version>${pcloud-facade3.version}</version>
</dependency>
<dependency>
<groupId>fakepath</groupId>
<artifactId>jbarcode</artifactId>
<version>0.2.8</version>
......
......@@ -906,7 +906,7 @@ public class BookBizImpl implements BookBiz {
}
// 填充渠道基础信息
bookSet.setChannelInfoList(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 填充模板信息
bookSet.setTemplateName(pageBean.getRecordList());
// 设置是否被冻结
......@@ -939,7 +939,7 @@ public class BookBizImpl implements BookBiz {
if (!ListUtils.isEmpty(bookDtos)) {
// 填充渠道基础信息
bookSet.setChannelInfoList(Lists.newArrayList(bookDtos));
bookSet.setBookSvUvPv4Object(Lists.newArrayList(bookDtos));
bookSet.setBookSvUvPv4Object(Lists.newArrayList(bookDtos), adviserId);
// 填充模板信息
bookSet.setTemplateName(Lists.newArrayList(bookDtos));
// 设置是否被冻结
......@@ -970,7 +970,7 @@ public class BookBizImpl implements BookBiz {
// 填充渠道基础信息
bookSet.setPageDetailInfo4Wechat(pageBean.getRecordList(), adviserId);
// 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 填充模板信息
bookSet.setTemplateName(pageBean.getRecordList());
// 设置冻结状态
......@@ -1195,7 +1195,7 @@ public class BookBizImpl implements BookBiz {
// 设置是否加入书架
bookSet.setIsHaveAddBookcase(pageBean.getRecordList(), wechatUserId);
// 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), null);
// 设置模板名称(图书类型)
bookSet.setTemplateName(pageBean.getRecordList());
return pageBean;
......@@ -1235,7 +1235,7 @@ public class BookBizImpl implements BookBiz {
// 填充渠道基础信息
bookSet.setChannelInfoList(books);
// 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(books);
bookSet.setBookSvUvPv4Object(books, adviserId);
// 设置模板名称(图书类型)
bookSet.setTemplateName(books);
return books;
......@@ -1263,7 +1263,7 @@ public class BookBizImpl implements BookBiz {
// 设置模板名称(图书类型)
bookSet.setTemplateName(pageBean.getRecordList());
// 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 设置基金状态
bookSet.setFreezeStatus(pageBean.getRecordList());
return pageBean;
......@@ -1291,7 +1291,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称
bookSet.setAdviserName4BookDto(pageBean.getRecordList());
// 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), null);
// 设置冻结状态
bookSet.setFreezeStatus(pageBean.getRecordList());
// 设置模板名称(图书类型)
......@@ -1381,7 +1381,7 @@ public class BookBizImpl implements BookBiz {
// 填充渠道基础信息
bookSet.setChannelInfoList(pageBean.getRecordList());
// 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 设置图书类型
bookSet.setTemplateName(pageBean.getRecordList());
return pageBean;
......@@ -1479,7 +1479,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称,手机号
bookSet.setAdviserInfo4BookDto(pageBean.getRecordList());
// 设置图书读者量、扫码量、浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), null);
// 设置书刊分类
bookSet.setTemplateNameNew(pageBean.getRecordList());
// 设置运营平台名称
......@@ -1560,7 +1560,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称
bookSet.setAdviserName4BookDto(partPlatformBook);
// 设置图书读者量、扫码量、浏览量
bookSet.setBookSvUvPv4Object(partPlatformBook);
bookSet.setBookSvUvPv4Object(partPlatformBook, null);
// 设置书刊分类
bookSet.setTemplateName(partPlatformBook);
// 设置运营平台名称
......@@ -1579,7 +1579,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称
bookSet.setAdviserName4BookDto(partPlatformBook);
// 设置图书读者量、扫码量、浏览量
bookSet.setBookSvUvPv4Object(partPlatformBook);
bookSet.setBookSvUvPv4Object(partPlatformBook, null);
// 设置书刊分类
bookSet.setTemplateName(partPlatformBook);
// 设置运营平台名称
......
......@@ -3,6 +3,7 @@
*/
package com.pcloud.book.book.set;
import cn.hutool.core.util.ObjectUtil;
import com.google.common.collect.Lists;
import com.alibaba.fastjson.JSONObject;
......@@ -40,8 +41,10 @@ import com.pcloud.book.consumer.analysisengine.BrowseRecordConsr;
import com.pcloud.book.consumer.app.AppConsr;
import com.pcloud.book.consumer.app.AssistTempletConsr;
import com.pcloud.book.consumer.channel.QrcodeSceneConsr;
import com.pcloud.book.consumer.common.CommonConsr;
import com.pcloud.book.consumer.common.ExportConsr;
import com.pcloud.book.consumer.content.ResourceConsr;
import com.pcloud.book.consumer.data.DataConsr;
import com.pcloud.book.consumer.erp.ErpConsr;
import com.pcloud.book.consumer.message.MessageConsr;
import com.pcloud.book.consumer.resource.ProductConsr;
......@@ -79,7 +82,10 @@ import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.common.utils.number.AmountUtil;
import com.pcloud.common.utils.string.StringUtil;
import com.pcloud.commoncenter.whitelist.entity.AdviserWhitelist;
import com.pcloud.contentcenter.resource.dto.ResourceDTO;
import com.pcloud.data.domain.enums.YesNoEnum;
import com.pcloud.data.domain.vo.AllAdviserBookStatisVO;
import com.pcloud.labelcenter.label.service.LabelService;
import com.pcloud.resourcecenter.product.dto.ProductDto;
import com.pcloud.resourcecenter.product.dto.ProductTypeDto;
......@@ -198,6 +204,10 @@ public class BookSet {
private ResourcePageBiz resourcePageBiz;
@Autowired
private ErpConsr erpConsr;
@Autowired
private DataConsr dataConsr;
@Autowired
private CommonConsr commonConsr;
/**
* 检验书号是否合法,包括ISSN,ISBN,CSSN
......@@ -1306,7 +1316,7 @@ public class BookSet {
* @param bookList
*/
@ParamLog(value = "设置图书读者量、扫码量、浏览量", isBefore = false)
public void setBookSvUvPv4Object(List<Object> bookList) {
public void setBookSvUvPv4Object(List<Object> bookList, Long adviserId) {
if (ListUtils.isEmpty(bookList)) {
return;
}
......@@ -1322,19 +1332,40 @@ public class BookSet {
List<Long> channelIds = Lists.newArrayList(channelIdsMap.values());
List<Long> adviserIds = Lists.newArrayList(adviserIdsMap.values());
List<Long> bookIds = Lists.newArrayList(bookIdsMap.values());
Map<String, BrowseCacheRecordDto> bookScanAndUv = browseRecordConsr.getBookScanAndUv(adviserIds, channelIds,
bookIds);
if (bookScanAndUv == null) {
return;
}
for (Object object : bookList) {
BookDto bookDto = (BookDto) object;
String key = bookDto.getBookId() + "-" + bookDto.getAdviserId() + "-" + bookDto.getChannelId();
BrowseCacheRecordDto browseCacheRecordDto = bookScanAndUv.get(key);
if (browseCacheRecordDto != null) {
bookDto.setBrowseCounts(browseCacheRecordDto.getBrowseCounts());
bookDto.setBrowserCounts(browseCacheRecordDto.getBrowserCounts());
bookDto.setScanCount(browseCacheRecordDto.getScanCount());
AdviserWhitelist adviserWhitelist = commonConsr.getByAdviserId(adviserId);
if(ObjectUtil.equal(YesNoEnum.YES.value, adviserWhitelist.getEnableNewDataStatistics())){
// 开启了新版统计
Map<String, AllAdviserBookStatisVO> bookStatisMap = dataConsr.getBookStatisByBookIds(bookIds, adviserIds, channelIds);
if (CollUtil.isEmpty(bookStatisMap)) {
return;
}
for (Object object : bookList) {
BookDto bookDto = (BookDto) object;
String key = bookDto.getBookId() + "-" + bookDto.getAdviserId() + "-" + bookDto.getChannelId();
AllAdviserBookStatisVO vo = bookStatisMap.get(key);
if (vo != null) {
bookDto.setBrowseCounts(vo.getBrowses());
bookDto.setBrowserCounts(vo.getReader());
bookDto.setScanCount(vo.getScans());
}
}
} else{
// 旧版统计
Map<String, BrowseCacheRecordDto> bookScanAndUv = browseRecordConsr.getBookScanAndUv(adviserIds, channelIds,
bookIds);
if (bookScanAndUv == null) {
return;
}
for (Object object : bookList) {
BookDto bookDto = (BookDto) object;
String key = bookDto.getBookId() + "-" + bookDto.getAdviserId() + "-" + bookDto.getChannelId();
BrowseCacheRecordDto browseCacheRecordDto = bookScanAndUv.get(key);
if (browseCacheRecordDto != null) {
bookDto.setBrowseCounts(browseCacheRecordDto.getBrowseCounts());
bookDto.setBrowserCounts(browseCacheRecordDto.getBrowserCounts());
bookDto.setScanCount(browseCacheRecordDto.getScanCount());
}
}
}
}
......
package com.pcloud.book.consumer.common;
import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.commoncenter.whitelist.entity.AdviserWhitelist;
import com.pcloud.commoncenter.whitelist.service.AdviserWhitelistService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Component;
@Component
public class CommonConsr {
private static final Logger LOGGER = LoggerFactory.getLogger(CommonConsr.class);
@Autowired
private AdviserWhitelistService adviserWhitelistService;
/**
* 是否开启了新版数据统计
*/
public AdviserWhitelist getByAdviserId(Long adviserId) {
try {
ResponseEntity<ResponseDto<AdviserWhitelist>> response = adviserWhitelistService.getByAdviserId(adviserId);
AdviserWhitelist adviserWhitelist = ResponseHandleUtil.parseResponse(response, AdviserWhitelist.class);
return adviserWhitelist;
} catch (Exception e) {
LOGGER.error("Excel导出失败[exportService.exportExcel]>>>>>" + e.getMessage(), e);
}
return new AdviserWhitelist();
}
}
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