记得上下班打卡 | git大法好,push需谨慎

Commit a5f79d27 authored by anjiabin's avatar anjiabin

提交chime社交相关

parent e88f59e0
......@@ -77,6 +77,8 @@ public class ChimeUserBiz {
dto.setTimeStart(performanceVo.getTimeStart());
dto.setTimeEnd(performanceVo.getTimeEnd());
dto.setCityName(performanceVo.getCityName());
//初始化
dto.setJoinUserCount(0);
if(StringUtil.isNotEmpty(joinUserCountDtoList)){
joinUserCountDtoList.stream().forEach(joinUserCountDto -> {
if(joinUserCountDto.getPerformancesId().equalsIgnoreCase(performanceVo.getPerformancesId())){
......
package com.liquidnet.service.chime.utils;
import com.alibaba.fastjson.JSONObject;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.chime.constant.ChimeConstant;
import com.liquidnet.service.chime.dto.ChimeJoinUserCountDto;
import com.liquidnet.service.chime.dto.ChimeUserInfoDto;
......@@ -24,7 +22,6 @@ import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
......@@ -116,6 +113,7 @@ public class DataUtils {
Aggregation.match(Criteria.where("joinPerformanceId").in(performanceIdList)),
// 分组条件,设置分组字段
Aggregation.group("joinPerformanceId")
.first("joinPerformanceId").as("joinPerformanceId")
.addToSet("avatar").as("avatarArray")
.count().as("totalCount"),
// 排序(根据某字段排序 倒序)
......@@ -123,18 +121,18 @@ public class DataUtils {
// 重新挑选字段
Aggregation.project("joinPerformanceId","totalCount","avatarArray")
);
AggregationResults<JSONObject> results = mongoTemplate.aggregate(agg, ChimeUserInfoVo.class.getSimpleName(), JSONObject.class);
List<JSONObject> mappedResultsList= results.getMappedResults();
AggregationResults<Document> results = mongoTemplate.aggregate(agg, ChimeUserInfoVo.class.getSimpleName(), Document.class);
List<Document> mappedResultsList= results.getMappedResults();
//拼装返回结果
List<ChimeJoinUserCountDto> joinUserCountDtoList = new ArrayList<>();
mappedResultsList.stream().forEach(jsonObject -> {
mappedResultsList.stream().forEach(document -> {
ChimeJoinUserCountDto dto = ChimeJoinUserCountDto.getNew();
dto.setPerformancesId((String)jsonObject.get("joinPerformanceId"));
dto.setCount((Integer)jsonObject.get("totalCount"));
if(StringUtil.isNotNull(jsonObject.get("avatarArray"))){
dto.setAvatarImgList(Arrays.asList(jsonObject.get("avatarArray").toString().split(",")));
}
dto.setPerformancesId(document.getString("joinPerformanceId"));
dto.setCount(document.getInteger("totalCount"));
List<String> ppl2 = document.getList("avatarArray",String.class);
dto.setAvatarImgList(ppl2);
joinUserCountDtoList.add(dto);
});
log.debug("排序后的code列表2:[{}]",results);
......
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