Commit 1afc74b9 by 田超

Merge branch 'feature/1003422' into 'master'

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

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