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

Commit c0700095 authored by anjiabin's avatar anjiabin

提交chime社交相关

parent 469c3d5f
...@@ -2,6 +2,7 @@ package com.liquidnet.service.feign.kylin.api; ...@@ -2,6 +2,7 @@ package com.liquidnet.service.feign.kylin.api;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.chime.config.SecuringRequestInterceptor; import com.liquidnet.service.chime.config.SecuringRequestInterceptor;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import feign.hystrix.FallbackFactory; import feign.hystrix.FallbackFactory;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -9,6 +10,7 @@ import org.springframework.web.bind.annotation.GetMapping; ...@@ -9,6 +10,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
/** /**
* @author AnJiabin <anjiabin@zhengzai.tv> * @author AnJiabin <anjiabin@zhengzai.tv>
...@@ -26,6 +28,10 @@ import java.util.HashMap; ...@@ -26,6 +28,10 @@ import java.util.HashMap;
fallback = FallbackFactory.Default.class, fallback = FallbackFactory.Default.class,
configuration = SecuringRequestInterceptor.class) configuration = SecuringRequestInterceptor.class)
public interface FeignKylinForChimeClient { public interface FeignKylinForChimeClient {
@GetMapping("myPerformance/performancesList")
ResponseDto<List<KylinPerformanceVo>> myPerformancesList();
@GetMapping("performance/localList") @GetMapping("performance/localList")
ResponseDto<HashMap<String, Object>> localList( ResponseDto<HashMap<String, Object>> localList(
@RequestParam(value = "cityName",defaultValue = "") String cityName, @RequestParam(value = "cityName",defaultValue = "") String cityName,
......
...@@ -4,7 +4,9 @@ import com.fasterxml.jackson.core.JsonProcessingException; ...@@ -4,7 +4,9 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.liquidnet.commons.lang.util.StringUtil; 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.chime.vo.mongo.ChimeUserTagsMappingVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -45,4 +47,32 @@ public class ChimeUserBiz { ...@@ -45,4 +47,32 @@ public class ChimeUserBiz {
userTagList.stream().forEach(vo -> vo.setUserId(userId)); userTagList.stream().forEach(vo -> vo.setUserId(userId));
return userTagList; 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; ...@@ -2,11 +2,11 @@ package com.liquidnet.service.chime.controller;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.core.type.TypeReference; 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.JsonUtils;
import com.liquidnet.commons.lang.util.StringUtil; import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.base.PagedResult; import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.base.ResponseDto; 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.ChimeUserInfoDto;
import com.liquidnet.service.chime.dto.ChimeUserListQueryReqDto; import com.liquidnet.service.chime.dto.ChimeUserListQueryReqDto;
import com.liquidnet.service.chime.dto.PerformanceDto; import com.liquidnet.service.chime.dto.PerformanceDto;
...@@ -25,7 +25,6 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -25,7 +25,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -52,6 +51,9 @@ public class ChimePerformanceController { ...@@ -52,6 +51,9 @@ public class ChimePerformanceController {
@Autowired @Autowired
private FeignKylinForChimeClient feignKylinForChimeClient; private FeignKylinForChimeClient feignKylinForChimeClient;
@Autowired
private ChimeUserBiz chimeUserBiz;
@GetMapping("myPerformanceList") @GetMapping("myPerformanceList")
@ApiOperation("已购票的演出") @ApiOperation("已购票的演出")
@ApiImplicitParams({ @ApiImplicitParams({
...@@ -68,23 +70,26 @@ public class ChimePerformanceController { ...@@ -68,23 +70,26 @@ public class ChimePerformanceController {
@RequestParam(defaultValue = "") String orderBy, @RequestParam(defaultValue = "") String orderBy,
@RequestParam(defaultValue = "") String sort @RequestParam(defaultValue = "") String sort
) { ) {
List<PerformanceDto> performanceDtoList = new ArrayList<>(); // List<PerformanceDto> performanceDtoList = new ArrayList<>();
for(int i=0;i<10;i++){ // for(int i=0;i<10;i++){
PerformanceDto dto = PerformanceDto.getNew(); // PerformanceDto dto = PerformanceDto.getNew();
dto.setPerformancesId(IDGenerator.get32UUID()); // dto.setPerformancesId(IDGenerator.get32UUID());
dto.setTitle("已购票演出00"+(i+1)); // dto.setTitle("已购票演出00"+(i+1));
dto.setImgPoster("https://img.zhengzai.tv/other/2021/08/04/865b8c442e7c4fb6a9f3d9b17a8e5b80.jpg"); // dto.setImgPoster("https://img.zhengzai.tv/other/2021/08/04/865b8c442e7c4fb6a9f3d9b17a8e5b80.jpg");
dto.setTimeStart("2021-09-08 12:00:00"); // dto.setTimeStart("2021-09-08 12:00:00");
dto.setTimeEnd("2021-10-08 12:00:00"); // dto.setTimeEnd("2021-10-08 12:00:00");
dto.setCityName("北京"); // dto.setCityName("北京");
dto.setJoinUserCount(123+(i*2)); // dto.setJoinUserCount(123+(i*2));
performanceDtoList.add(dto); // 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); return ResponseDto.success(performanceDtoList);
} }
...@@ -119,29 +124,10 @@ public class ChimePerformanceController { ...@@ -119,29 +124,10 @@ public class ChimePerformanceController {
ResponseDto<HashMap<String, Object>> responseDto = feignKylinForChimeClient.localList(cityName, days,type,isDiscount, isAdvance, isExclusive, orderBy, sort); ResponseDto<HashMap<String, Object>> responseDto = feignKylinForChimeClient.localList(cityName, days,type,isDiscount, isAdvance, isExclusive, orderBy, sort);
if(StringUtil.isNotNull(responseDto.getData())){ if(StringUtil.isNotNull(responseDto.getData())){
String jsonStr = JSON.toJSONString(responseDto.getData().get("list")); String jsonStr = JSON.toJSONString(responseDto.getData().get("list"));
List<KylinPerformanceVo> kylinPerformanceVoList = JsonUtils.fromJson(jsonStr, new TypeReference<List<KylinPerformanceVo>>() {}); List<KylinPerformanceVo> kylinPerformanceVoList = JsonUtils.fromJson(jsonStr, new TypeReference<List<KylinPerformanceVo>>() {});
List<PerformanceDto> performanceDtoList = new ArrayList<>(); List<PerformanceDto> performanceDtoList = chimeUserBiz.buildPerformanceDtoList(kylinPerformanceVoList);;
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);
}
responseDto.getData().put("list",performanceDtoList); 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; ...@@ -2,6 +2,7 @@ package com.liquidnet.service.kylin.service.impl;
import com.liquidnet.commons.lang.CommonConst; import com.liquidnet.commons.lang.CommonConst;
import com.liquidnet.commons.lang.util.CollectionUtil; 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.DateUtil;
import com.liquidnet.commons.lang.util.DistanceUtil; import com.liquidnet.commons.lang.util.DistanceUtil;
import com.liquidnet.service.base.UserPathDto; import com.liquidnet.service.base.UserPathDto;
...@@ -530,4 +531,14 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService { ...@@ -530,4 +531,14 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService {
} }
return isMemberStatus; 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 { ...@@ -521,4 +521,30 @@ public class DataUtils {
return (KylinOrderExpressVo) redisUtil.get(redisKey); 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