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

Commit c0700095 authored by anjiabin's avatar anjiabin

提交chime社交相关

parent 469c3d5f
......@@ -2,6 +2,7 @@ package com.liquidnet.service.feign.kylin.api;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.chime.config.SecuringRequestInterceptor;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import feign.hystrix.FallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
......@@ -9,6 +10,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.HashMap;
import java.util.List;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
......@@ -26,6 +28,10 @@ import java.util.HashMap;
fallback = FallbackFactory.Default.class,
configuration = SecuringRequestInterceptor.class)
public interface FeignKylinForChimeClient {
@GetMapping("myPerformance/performancesList")
ResponseDto<List<KylinPerformanceVo>> myPerformancesList();
@GetMapping("performance/localList")
ResponseDto<HashMap<String, Object>> localList(
@RequestParam(value = "cityName",defaultValue = "") String cityName,
......
......@@ -4,7 +4,9 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.chime.dto.PerformanceDto;
import com.liquidnet.service.chime.vo.mongo.ChimeUserTagsMappingVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
......@@ -45,4 +47,32 @@ public class ChimeUserBiz {
userTagList.stream().forEach(vo -> vo.setUserId(userId));
return userTagList;
}
/**
* 演出voList转换为DtoList
* @param performanceVoList
* @return
*/
public List<PerformanceDto> buildPerformanceDtoList(List<KylinPerformanceVo> performanceVoList){
List<PerformanceDto> performanceDtoList = new ArrayList<>();
for(KylinPerformanceVo performanceVo:performanceVoList){
PerformanceDto dto = PerformanceDto.getNew();
dto.setPerformancesId(performanceVo.getPerformancesId());
dto.setTitle(performanceVo.getTitle());
dto.setImgPoster(performanceVo.getImgPoster());
dto.setTimeStart(performanceVo.getTimeStart());
dto.setTimeEnd(performanceVo.getTimeEnd());
dto.setCityName(performanceVo.getCityName());
dto.setJoinUserCount(123);
List<String> imgList = new ArrayList<>();
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
dto.setAvatarImgList(imgList);
performanceDtoList.add(dto);
}
return performanceDtoList;
}
}
......@@ -2,11 +2,11 @@ package com.liquidnet.service.chime.controller;
import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.core.type.TypeReference;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.chime.biz.ChimeUserBiz;
import com.liquidnet.service.chime.dto.ChimeUserInfoDto;
import com.liquidnet.service.chime.dto.ChimeUserListQueryReqDto;
import com.liquidnet.service.chime.dto.PerformanceDto;
......@@ -25,7 +25,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -52,6 +51,9 @@ public class ChimePerformanceController {
@Autowired
private FeignKylinForChimeClient feignKylinForChimeClient;
@Autowired
private ChimeUserBiz chimeUserBiz;
@GetMapping("myPerformanceList")
@ApiOperation("已购票的演出")
@ApiImplicitParams({
......@@ -68,23 +70,26 @@ public class ChimePerformanceController {
@RequestParam(defaultValue = "") String orderBy,
@RequestParam(defaultValue = "") String sort
) {
List<PerformanceDto> performanceDtoList = new ArrayList<>();
for(int i=0;i<10;i++){
PerformanceDto dto = PerformanceDto.getNew();
dto.setPerformancesId(IDGenerator.get32UUID());
dto.setTitle("已购票演出00"+(i+1));
dto.setImgPoster("https://img.zhengzai.tv/other/2021/08/04/865b8c442e7c4fb6a9f3d9b17a8e5b80.jpg");
dto.setTimeStart("2021-09-08 12:00:00");
dto.setTimeEnd("2021-10-08 12:00:00");
dto.setCityName("北京");
dto.setJoinUserCount(123+(i*2));
performanceDtoList.add(dto);
// List<PerformanceDto> performanceDtoList = new ArrayList<>();
// for(int i=0;i<10;i++){
// PerformanceDto dto = PerformanceDto.getNew();
// dto.setPerformancesId(IDGenerator.get32UUID());
// dto.setTitle("已购票演出00"+(i+1));
// dto.setImgPoster("https://img.zhengzai.tv/other/2021/08/04/865b8c442e7c4fb6a9f3d9b17a8e5b80.jpg");
// dto.setTimeStart("2021-09-08 12:00:00");
// dto.setTimeEnd("2021-10-08 12:00:00");
// dto.setCityName("北京");
// dto.setJoinUserCount(123+(i*2));
// performanceDtoList.add(dto);
// }
ResponseDto<List<KylinPerformanceVo>> responseDto = feignKylinForChimeClient.myPerformancesList();
List<PerformanceDto> performanceDtoList = null;
if(StringUtil.isNotNull(responseDto.getData())){
List<KylinPerformanceVo> kylinPerformanceVoList = responseDto.getData();
performanceDtoList = chimeUserBiz.buildPerformanceDtoList(kylinPerformanceVoList);
}
// HashMap<String, Object> result = kylinPerformancesService.localList(
// days, cityName, type,
// isDiscount, isAdvance, isExclusive,
// orderBy, sort
// );
return ResponseDto.success(performanceDtoList);
}
......@@ -119,29 +124,10 @@ public class ChimePerformanceController {
ResponseDto<HashMap<String, Object>> responseDto = feignKylinForChimeClient.localList(cityName, days,type,isDiscount, isAdvance, isExclusive, orderBy, sort);
if(StringUtil.isNotNull(responseDto.getData())){
String jsonStr = JSON.toJSONString(responseDto.getData().get("list"));
List<KylinPerformanceVo> kylinPerformanceVoList = JsonUtils.fromJson(jsonStr, new TypeReference<List<KylinPerformanceVo>>() {});
List<PerformanceDto> performanceDtoList = new ArrayList<>();
for(KylinPerformanceVo performanceVo:kylinPerformanceVoList){
PerformanceDto dto = PerformanceDto.getNew();
dto.setPerformancesId(IDGenerator.get32UUID());
dto.setTitle(performanceVo.getTitle());
dto.setImgPoster(performanceVo.getImgPoster());
dto.setTimeStart(performanceVo.getTimeStart());
dto.setTimeEnd(performanceVo.getTimeEnd());
dto.setCityName(performanceVo.getCityName());
dto.setJoinUserCount(123);
List<String> imgList = new ArrayList<>();
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
imgList.add("https://img.zhengzai.tv/user/2021/07/27/a4cc2a4e6dcd44d1812dc60e079086b4.png");
dto.setAvatarImgList(imgList);
performanceDtoList.add(dto);
}
List<PerformanceDto> performanceDtoList = chimeUserBiz.buildPerformanceDtoList(kylinPerformanceVoList);;
responseDto.getData().put("list",performanceDtoList);
}
......
package com.liquidnet.service.kylin.controller;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.service.impl.KylinPerformancesServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: KylinMyPerformancesController
* @Package com.liquidnet.service.kylin.controller
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/9/12 13:34
*/
@Api(tags = "前端-演出")
@RestController
@RequestMapping("myPerformance")
@Slf4j
public class KylinMyPerformancesController {
@Autowired
private KylinPerformancesServiceImpl kylinPerformancesService;
@GetMapping("performancesList")
@ApiOperation("我的已购票演出列表")
public ResponseDto<List<KylinPerformanceVo>> performancesList() {
List<KylinPerformanceVo> result = kylinPerformancesService.myPerformancesList();
return ResponseDto.success(result);
}
}
......@@ -2,6 +2,7 @@ package com.liquidnet.service.kylin.service.impl;
import com.liquidnet.commons.lang.CommonConst;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.DistanceUtil;
import com.liquidnet.service.base.UserPathDto;
......@@ -530,4 +531,14 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService {
}
return isMemberStatus;
}
/**
* 获取我的已购票演出列表
* @return
*/
public List<KylinPerformanceVo> myPerformancesList() {
String userId = CurrentUtil.getCurrentUid();
List<KylinPerformanceVo> performanceVoList = dataUtils.myPerformancesList(userId);
return performanceVoList;
}
}
......@@ -521,4 +521,30 @@ public class DataUtils {
return (KylinOrderExpressVo) redisUtil.get(redisKey);
}
/**
* 获取我的演出列表
*/
public List<KylinPerformanceVo> myPerformancesList(String userId) {
Query queryNew = new Query();
queryNew.addCriteria(Criteria.where("userId").is(userId));
List<String> performanceIdList = mongoTemplate.findDistinct(queryNew, "performanceId", "KylinOrderTicketVo",KylinOrderTicketVo.class, String.class);
log.info("myPerformancesList performanceIdList.size:{}",performanceIdList.size());
// 固定条件
Query query = getCommonWhere();
// 不要查询的字段
query.fields().exclude("details");
query.fields().exclude("noticeImage");
query.fields().exclude("ticketTimeList");
query.fields().exclude("describeElectronic");
//
query.addCriteria(Criteria.where("performancesId").in(performanceIdList));
query.with(Sort.by(
Sort.Order.desc("timeStart")
));
List<KylinPerformanceVo> kylinPerformanceVoList = mongoTemplate.find(query, KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName());
return kylinPerformanceVoList;
}
}
package com.liquidnet.service.kylin;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.utils.DataUtils;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.List;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: TestDataUtil
* @Package com.liquidnet.service.kylin
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/9/12 14:37
*/
@Slf4j
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
public class TestDataUtil {
@Autowired
private DataUtils dataUtils;
@Test
public void myPerformancesList(){
List<KylinPerformanceVo> kylinPerformanceVoList = dataUtils.myPerformancesList("270788673588551684937456");
for(KylinPerformanceVo vo:kylinPerformanceVoList){
log.info("performanceid:{} ",vo.getPerformancesId());
log.info("title:{}",vo.getTitle());
}
}
}
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