Commit 36c8511d by 郑永强

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

parent 8c72979a
...@@ -229,6 +229,12 @@ ...@@ -229,6 +229,12 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.pcloud.data</groupId>
<artifactId>pcloud-data-api</artifactId>
<version>${pcloud-facade3.version}</version>
</dependency>
<dependency>
<groupId>fakepath</groupId> <groupId>fakepath</groupId>
<artifactId>jbarcode</artifactId> <artifactId>jbarcode</artifactId>
<version>0.2.8</version> <version>0.2.8</version>
......
...@@ -906,7 +906,7 @@ public class BookBizImpl implements BookBiz { ...@@ -906,7 +906,7 @@ public class BookBizImpl implements BookBiz {
} }
// 填充渠道基础信息 // 填充渠道基础信息
bookSet.setChannelInfoList(pageBean.getRecordList()); bookSet.setChannelInfoList(pageBean.getRecordList());
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 填充模板信息 // 填充模板信息
bookSet.setTemplateName(pageBean.getRecordList()); bookSet.setTemplateName(pageBean.getRecordList());
// 设置是否被冻结 // 设置是否被冻结
...@@ -939,7 +939,7 @@ public class BookBizImpl implements BookBiz { ...@@ -939,7 +939,7 @@ public class BookBizImpl implements BookBiz {
if (!ListUtils.isEmpty(bookDtos)) { if (!ListUtils.isEmpty(bookDtos)) {
// 填充渠道基础信息 // 填充渠道基础信息
bookSet.setChannelInfoList(Lists.newArrayList(bookDtos)); bookSet.setChannelInfoList(Lists.newArrayList(bookDtos));
bookSet.setBookSvUvPv4Object(Lists.newArrayList(bookDtos)); bookSet.setBookSvUvPv4Object(Lists.newArrayList(bookDtos), adviserId);
// 填充模板信息 // 填充模板信息
bookSet.setTemplateName(Lists.newArrayList(bookDtos)); bookSet.setTemplateName(Lists.newArrayList(bookDtos));
// 设置是否被冻结 // 设置是否被冻结
...@@ -970,7 +970,7 @@ public class BookBizImpl implements BookBiz { ...@@ -970,7 +970,7 @@ public class BookBizImpl implements BookBiz {
// 填充渠道基础信息 // 填充渠道基础信息
bookSet.setPageDetailInfo4Wechat(pageBean.getRecordList(), adviserId); bookSet.setPageDetailInfo4Wechat(pageBean.getRecordList(), adviserId);
// 设置图书扫码量读者量浏览量 // 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 填充模板信息 // 填充模板信息
bookSet.setTemplateName(pageBean.getRecordList()); bookSet.setTemplateName(pageBean.getRecordList());
// 设置冻结状态 // 设置冻结状态
...@@ -1195,7 +1195,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1195,7 +1195,7 @@ public class BookBizImpl implements BookBiz {
// 设置是否加入书架 // 设置是否加入书架
bookSet.setIsHaveAddBookcase(pageBean.getRecordList(), wechatUserId); bookSet.setIsHaveAddBookcase(pageBean.getRecordList(), wechatUserId);
// 设置图书扫码量读者量浏览量 // 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), null);
// 设置模板名称(图书类型) // 设置模板名称(图书类型)
bookSet.setTemplateName(pageBean.getRecordList()); bookSet.setTemplateName(pageBean.getRecordList());
return pageBean; return pageBean;
...@@ -1235,7 +1235,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1235,7 +1235,7 @@ public class BookBizImpl implements BookBiz {
// 填充渠道基础信息 // 填充渠道基础信息
bookSet.setChannelInfoList(books); bookSet.setChannelInfoList(books);
// 设置图书扫码量读者量浏览量 // 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(books); bookSet.setBookSvUvPv4Object(books, adviserId);
// 设置模板名称(图书类型) // 设置模板名称(图书类型)
bookSet.setTemplateName(books); bookSet.setTemplateName(books);
return books; return books;
...@@ -1263,7 +1263,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1263,7 +1263,7 @@ public class BookBizImpl implements BookBiz {
// 设置模板名称(图书类型) // 设置模板名称(图书类型)
bookSet.setTemplateName(pageBean.getRecordList()); bookSet.setTemplateName(pageBean.getRecordList());
// 设置图书扫码量读者量浏览量 // 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 设置基金状态 // 设置基金状态
bookSet.setFreezeStatus(pageBean.getRecordList()); bookSet.setFreezeStatus(pageBean.getRecordList());
return pageBean; return pageBean;
...@@ -1291,7 +1291,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1291,7 +1291,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称 // 设置编辑名称
bookSet.setAdviserName4BookDto(pageBean.getRecordList()); bookSet.setAdviserName4BookDto(pageBean.getRecordList());
// 设置图书扫码量读者量浏览量 // 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), null);
// 设置冻结状态 // 设置冻结状态
bookSet.setFreezeStatus(pageBean.getRecordList()); bookSet.setFreezeStatus(pageBean.getRecordList());
// 设置模板名称(图书类型) // 设置模板名称(图书类型)
...@@ -1381,7 +1381,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1381,7 +1381,7 @@ public class BookBizImpl implements BookBiz {
// 填充渠道基础信息 // 填充渠道基础信息
bookSet.setChannelInfoList(pageBean.getRecordList()); bookSet.setChannelInfoList(pageBean.getRecordList());
// 设置图书扫码量读者量浏览量 // 设置图书扫码量读者量浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), adviserId);
// 设置图书类型 // 设置图书类型
bookSet.setTemplateName(pageBean.getRecordList()); bookSet.setTemplateName(pageBean.getRecordList());
return pageBean; return pageBean;
...@@ -1479,7 +1479,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1479,7 +1479,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称,手机号 // 设置编辑名称,手机号
bookSet.setAdviserInfo4BookDto(pageBean.getRecordList()); bookSet.setAdviserInfo4BookDto(pageBean.getRecordList());
// 设置图书读者量、扫码量、浏览量 // 设置图书读者量、扫码量、浏览量
bookSet.setBookSvUvPv4Object(pageBean.getRecordList()); bookSet.setBookSvUvPv4Object(pageBean.getRecordList(), null);
// 设置书刊分类 // 设置书刊分类
bookSet.setTemplateNameNew(pageBean.getRecordList()); bookSet.setTemplateNameNew(pageBean.getRecordList());
// 设置运营平台名称 // 设置运营平台名称
...@@ -1560,7 +1560,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1560,7 +1560,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称 // 设置编辑名称
bookSet.setAdviserName4BookDto(partPlatformBook); bookSet.setAdviserName4BookDto(partPlatformBook);
// 设置图书读者量、扫码量、浏览量 // 设置图书读者量、扫码量、浏览量
bookSet.setBookSvUvPv4Object(partPlatformBook); bookSet.setBookSvUvPv4Object(partPlatformBook, null);
// 设置书刊分类 // 设置书刊分类
bookSet.setTemplateName(partPlatformBook); bookSet.setTemplateName(partPlatformBook);
// 设置运营平台名称 // 设置运营平台名称
...@@ -1579,7 +1579,7 @@ public class BookBizImpl implements BookBiz { ...@@ -1579,7 +1579,7 @@ public class BookBizImpl implements BookBiz {
// 设置编辑名称 // 设置编辑名称
bookSet.setAdviserName4BookDto(partPlatformBook); bookSet.setAdviserName4BookDto(partPlatformBook);
// 设置图书读者量、扫码量、浏览量 // 设置图书读者量、扫码量、浏览量
bookSet.setBookSvUvPv4Object(partPlatformBook); bookSet.setBookSvUvPv4Object(partPlatformBook, null);
// 设置书刊分类 // 设置书刊分类
bookSet.setTemplateName(partPlatformBook); bookSet.setTemplateName(partPlatformBook);
// 设置运营平台名称 // 设置运营平台名称
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
*/ */
package com.pcloud.book.book.set; package com.pcloud.book.book.set;
import cn.hutool.core.util.ObjectUtil;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -40,8 +41,10 @@ import com.pcloud.book.consumer.analysisengine.BrowseRecordConsr; ...@@ -40,8 +41,10 @@ import com.pcloud.book.consumer.analysisengine.BrowseRecordConsr;
import com.pcloud.book.consumer.app.AppConsr; import com.pcloud.book.consumer.app.AppConsr;
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;
import com.pcloud.book.consumer.common.CommonConsr;
import com.pcloud.book.consumer.common.ExportConsr; import com.pcloud.book.consumer.common.ExportConsr;
import com.pcloud.book.consumer.content.ResourceConsr; 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.erp.ErpConsr;
import com.pcloud.book.consumer.message.MessageConsr; import com.pcloud.book.consumer.message.MessageConsr;
import com.pcloud.book.consumer.resource.ProductConsr; import com.pcloud.book.consumer.resource.ProductConsr;
...@@ -79,7 +82,10 @@ import com.pcloud.common.utils.ListUtils; ...@@ -79,7 +82,10 @@ import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.ResponseHandleUtil; import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.common.utils.number.AmountUtil; import com.pcloud.common.utils.number.AmountUtil;
import com.pcloud.common.utils.string.StringUtil; import com.pcloud.common.utils.string.StringUtil;
import com.pcloud.commoncenter.whitelist.entity.AdviserWhitelist;
import com.pcloud.contentcenter.resource.dto.ResourceDTO; 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.labelcenter.label.service.LabelService;
import com.pcloud.resourcecenter.product.dto.ProductDto; import com.pcloud.resourcecenter.product.dto.ProductDto;
import com.pcloud.resourcecenter.product.dto.ProductTypeDto; import com.pcloud.resourcecenter.product.dto.ProductTypeDto;
...@@ -198,6 +204,10 @@ public class BookSet { ...@@ -198,6 +204,10 @@ public class BookSet {
private ResourcePageBiz resourcePageBiz; private ResourcePageBiz resourcePageBiz;
@Autowired @Autowired
private ErpConsr erpConsr; private ErpConsr erpConsr;
@Autowired
private DataConsr dataConsr;
@Autowired
private CommonConsr commonConsr;
/** /**
* 检验书号是否合法,包括ISSN,ISBN,CSSN * 检验书号是否合法,包括ISSN,ISBN,CSSN
...@@ -1306,7 +1316,7 @@ public class BookSet { ...@@ -1306,7 +1316,7 @@ public class BookSet {
* @param bookList * @param bookList
*/ */
@ParamLog(value = "设置图书读者量、扫码量、浏览量", isBefore = false) @ParamLog(value = "设置图书读者量、扫码量、浏览量", isBefore = false)
public void setBookSvUvPv4Object(List<Object> bookList) { public void setBookSvUvPv4Object(List<Object> bookList, Long adviserId) {
if (ListUtils.isEmpty(bookList)) { if (ListUtils.isEmpty(bookList)) {
return; return;
} }
...@@ -1322,6 +1332,26 @@ public class BookSet { ...@@ -1322,6 +1332,26 @@ public class BookSet {
List<Long> channelIds = Lists.newArrayList(channelIdsMap.values()); List<Long> channelIds = Lists.newArrayList(channelIdsMap.values());
List<Long> adviserIds = Lists.newArrayList(adviserIdsMap.values()); List<Long> adviserIds = Lists.newArrayList(adviserIdsMap.values());
List<Long> bookIds = Lists.newArrayList(bookIdsMap.values()); List<Long> bookIds = Lists.newArrayList(bookIdsMap.values());
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, Map<String, BrowseCacheRecordDto> bookScanAndUv = browseRecordConsr.getBookScanAndUv(adviserIds, channelIds,
bookIds); bookIds);
if (bookScanAndUv == null) { if (bookScanAndUv == null) {
...@@ -1338,6 +1368,7 @@ public class BookSet { ...@@ -1338,6 +1368,7 @@ public class BookSet {
} }
} }
} }
}
/** /**
* 冻结状态 * 冻结状态
......
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