Commit 1de8b8b5 by 郑永强

feat: [1003422] 近期关键告警数据导出优化(社群书判断是否配置书刊权益)

parent 5d217c23
......@@ -22,4 +22,10 @@ public class BookResourceStatisticsDTO {
@ApiModelProperty("二维码数量")
private Integer qrcodeCount;
@ApiModelProperty("权益数")
private Integer rightsCount;
@ApiModelProperty("服务总数量")
private Integer serveTotalCount;
}
......@@ -960,13 +960,14 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
qrCodeVO.setQrCodeName(bookGroupDTO.getGroupQrcodeName());
qrCodeVO.setQrCodeUrl(bookGroupDTO.getGroupQrcodeUrl());
qrCodeVO.setServeCount(0);
qrCodeVO.setRightsCount(0);
qrCodeVO.setJoinGroupType(bookGroupDTO.getJoinGroupType());
if(mapBookGroupServeCount!=null && !mapBookGroupServeCount.isEmpty()) {
BookGroupServeCountDTO bookGroupServeCountDTO = mapBookGroupServeCount.get("" + bookId + "_" + channelId + "_" + adviserId);
qrCodeVO.setServeCount(bookGroupServeCountDTO.getServeCount());
// 如果是小睿码,则显示权益数
// 如果是小睿码
if(JoinGroupTypeEnum.XIAORUI.getCode().equals(bookGroupServeCountDTO.getJoinGroupType())){
qrCodeVO.setServeCount(null == bookGroupServeCountDTO.getRightsCount() ? 0 : bookGroupServeCountDTO.getRightsCount());
qrCodeVO.setRightsCount(null == bookGroupServeCountDTO.getRightsCount() ? 0 : bookGroupServeCountDTO.getRightsCount());
}
}
if(mapBookGroupRobotServeCount!=null && !mapBookGroupRobotServeCount.isEmpty()){
......@@ -1067,12 +1068,7 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookResourceStatisticsDTO.setQrcodeCount(0);
bookResourceStatisticsDTO.setServeCount(0);
}
Integer serveCount = bookGroupServeCountDTO.getServeCount();
// 如果是小睿码,则显示权益数
if(JoinGroupTypeEnum.XIAORUI.getCode().equals(bookGroupServeCountDTO.getJoinGroupType())){
serveCount = null == bookGroupServeCountDTO.getRightsCount() ? 0 : bookGroupServeCountDTO.getRightsCount();
}
bookResourceStatisticsDTO.setServeCount(bookResourceStatisticsDTO.getServeCount() + serveCount);
bookResourceStatisticsDTO.setServeCount(bookResourceStatisticsDTO.getServeCount() + bookGroupServeCountDTO.getServeCount());
if(!added){
bookResourceStatisticsDTO.setQrcodeCount(bookResourceStatisticsDTO.getQrcodeCount() + bookGroupServeCountDTO.getQrcodeCount());
added = true;
......@@ -1099,6 +1095,14 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
added = true;
}
}
if(bookGroupServeCountDTO != null) {
// 如果是小睿码,则设置权益数
if (JoinGroupTypeEnum.XIAORUI.getCode().equals(bookGroupServeCountDTO.getJoinGroupType())) {
int rightsCount = null == bookGroupServeCountDTO.getRightsCount() ? 0 : bookGroupServeCountDTO.getRightsCount();
bookResourceStatisticsDTO.setRightsCount(rightsCount);
bookResourceStatisticsDTO.setServeTotalCount(bookResourceStatisticsDTO.getServeCount() + rightsCount);
}
}
mapBookResourceStatistics.put(bookChannelAdviserId, bookResourceStatisticsDTO);
}
return mapBookResourceStatistics;
......@@ -1108,8 +1112,10 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
public Map<String, BookDataStatisticsDTO> mapBookDataStatistics(List<Long> adviserIds, List<Long> bookIds, List<Long> channelIds) {
Map<String, BookDataStatisticsDTO> resultMap = new HashMap<>();
BookDataStatisticsDTO bookDataStatisticsDTO;
// 获取配置了书刊权益的书
Map<Long, RightsSettingDto> rightsMap = rightsSettingBiz.listByBookIds(bookIds);
// 获取社群统计数据
// 根据条件筛选出社群书数据
List<BookGroupDTO> bookGroupList = bookGroupDao.getDTOByBookIdsAdviserIdsChannelIds(bookIds, adviserIds, channelIds);
if(!CollectionUtils.isEmpty(bookGroupList)){
List<Long> bookGroupIds = bookGroupList.stream().map(x -> x.getId()).collect(Collectors.toList());
......@@ -1127,6 +1133,9 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookDataStatisticsDTO.setUserCount(groupUserCountDTO.getUserCount().longValue());
}
bookDataStatisticsDTO.setBookCategory("社群书");
if(rightsMap.containsKey(bookGroupDTO.getBookId())){
bookDataStatisticsDTO.setBookCategory("社群书(已配置书刊权益)");
}
resultMap.put(bookDataStatisticsDTO.getBookChannelAdviserId(), bookDataStatisticsDTO);
}
}
......@@ -1140,6 +1149,9 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookDataStatisticsDTO.setScanCount(bookDataStatisticsDTO.getScanCount() + browseCacheRecordDto.getScanCount());
bookDataStatisticsDTO.setUserCount(bookDataStatisticsDTO.getUserCount() + browseCacheRecordDto.getBrowserCounts());
bookDataStatisticsDTO.setBookCategory("现代纸书、社群书");
if(rightsMap.containsKey(browseCacheRecordDto.getJournalId())){
bookDataStatisticsDTO.setBookCategory("现代纸书、社群书(已配置书刊权益)");
}
continue;
}
bookDataStatisticsDTO = new BookDataStatisticsDTO();
......@@ -1147,8 +1159,8 @@ public class BookAdviserBizImpl implements BookAdviserBiz {
bookDataStatisticsDTO.setAdviserId(browseCacheRecordDto.getAdviserId());
bookDataStatisticsDTO.setBookId(browseCacheRecordDto.getJournalId());
bookDataStatisticsDTO.setChannelId(browseCacheRecordDto.getChannelId());
bookDataStatisticsDTO.setScanCount(browseCacheRecordDto.getCount());
bookDataStatisticsDTO.setUserCount(browseCacheRecordDto.getBrowseCounts());
bookDataStatisticsDTO.setScanCount(browseCacheRecordDto.getScanCount());
bookDataStatisticsDTO.setUserCount(browseCacheRecordDto.getBrowserCounts());
bookDataStatisticsDTO.setBookCategory("现代纸书");
resultMap.put(bookDataStatisticsDTO.getBookChannelAdviserId(), bookDataStatisticsDTO);
}
......
package com.pcloud.book.book.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
......@@ -11,5 +12,10 @@ public class QrCodeVO {
private Integer serveCount;
@ApiModelProperty("社群书刊类型")
private Integer joinGroupType;
@ApiModelProperty("权益数")
private Integer rightsCount;
}
......@@ -14,6 +14,7 @@ import com.pcloud.book.rightsSetting.entity.RightsSettingItem;
import com.pcloud.common.page.PageBeanNew;
import java.util.List;
import java.util.Map;
public interface RightsSettingBiz {
Long addRightsSetting(RightsSetting rightsSetting);
......@@ -137,4 +138,6 @@ public interface RightsSettingBiz {
* @param rightsSettingShowStateDTO
*/
void batchUpdateShowState(RightsSettingShowStateDTO rightsSettingShowStateDTO);
Map<Long, RightsSettingDto> listByBookIds(List<Long> bookIds);
}
......@@ -2611,4 +2611,12 @@ public class RightsSettingBizImpl implements RightsSettingBiz {
return appletNewsDTOS;
}
@Override
public Map<Long, RightsSettingDto> listByBookIds(List<Long> bookIds){
Map<Long, RightsSettingDto> rightsSettingDtoMap = rightsSettingDAO.listByBookIds(bookIds);
if(rightsSettingDtoMap == null){
return new HashMap<>();
}
return rightsSettingDtoMap;
}
}
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