This commit is contained in:
Jerry Yan 2025-03-01 13:42:13 +08:00
parent 8428907db4
commit be53dce5da
3 changed files with 24 additions and 9 deletions

View File

@ -1,5 +1,7 @@
package com.ycwl.basic.controller.extern;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.ycwl.basic.annotation.IgnoreToken;
import com.ycwl.basic.mapper.FaceMapper;
import com.ycwl.basic.mapper.MemberMapper;
@ -25,6 +27,7 @@ import com.ycwl.basic.utils.SnowFlakeUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@ -38,6 +41,7 @@ import java.util.Enumeration;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Slf4j
@ -61,6 +65,8 @@ public class LyCompatibleController {
private VideoMapper videoMapper;
@Autowired
private TaskTaskServiceImpl taskTaskServiceImpl;
@Autowired
private RedisTemplate<String, String> redisTemplate;
@PostMapping("sendPhoto")
@IgnoreToken
@ -149,7 +155,11 @@ public class LyCompatibleController {
case 1:
return R.ok().put("hasVideo", 1);
case 2:
if (taskStatusVO.getCutStatus() == 0) {
return R.ok().put("hasVideo", 3);
} else {
return R.ok().put("hasVideo", 1);
}
case 0:
case 3:
default:
@ -174,6 +184,9 @@ public class LyCompatibleController {
return R.error("请传入秘钥!");
}
String openId = headersMap.get("client");
if (redisTemplate.hasKey("ly:"+openId)) {
return JSON.parseObject(redisTemplate.opsForValue().get("ly:"+openId), R.class);
}
MemberRespVO member = memberMapper.getByOpenId(openId);
if (member == null) {
return R.error("用户不存在!");
@ -190,9 +203,10 @@ public class LyCompatibleController {
List<Map<String, Object>> videoList = collect.get(0).stream().map(contentPageVO -> {
Map<String, Object> map = new HashMap<>();
VideoEntity videoRespVO = videoRepository.getVideo(contentPageVO.getContentId());
map.put("id", videoRespVO.getId().toString());
map.put("template_cover_image", contentPageVO.getTemplateCoverUrl());
Date taskShotDate = taskTaskServiceImpl.getTaskShotDate(videoRespVO.getTaskId());
map.put("shoottime", taskShotDate);
map.put("shoottime", DateUtil.format(taskShotDate, "yyyy-MM-dd HH:mm"));
map.put("openid", openId);
map.put("scenicname", contentPageVO.getScenicName());
map.put("title", contentPageVO.getName());
@ -204,19 +218,20 @@ public class LyCompatibleController {
List<GoodsDetailVO> sourceGoodsList = goodsService.sourceGoodsList(member.getId(), goodsReqQuery);
List<Map<String, Object>> userVideoList = sourceGoodsList.stream().map(goodsDetailVO -> {
Map<String, Object> map = new HashMap<>();
map.put("id", goodsDetailVO.getGoodsId().toString());
map.put("openid", openId);
map.put("template_cover_image", goodsDetailVO.getUrl());
map.put("scenicname", goodsDetailVO.getScenicName());
map.put("shoottime", goodsDetailVO.getCreateTime());
map.put("shoottime", DateUtil.format(goodsDetailVO.getCreateTime(), "yyyy-MM-dd HH:mm"));
map.put("ossurldm", goodsDetailVO.getVideoUrl());
return map;
}).collect(Collectors.toList());
log.info("> {}", taskStatusVO);
log.info("> {}", videoList);
log.info("> {}", userVideoList);
return R.ok()
R put = R.ok()
.put("isgen", taskStatusVO.getStatus() == 1 ? 0 : 1)
.put("newvideo", videoList)
.put("newuservideo", userVideoList);
redisTemplate.opsForValue().set("ly:"+openId, JSON.toJSONString(put), 5, TimeUnit.SECONDS);
log.info("> {}", put);
return put;
}
}

View File

@ -150,7 +150,7 @@ public class GoodsServiceImpl implements GoodsService {
String goodsNamePrefix = "";
if (sourceType == 1) {
goodsNamePrefix = "视频";
goodsNamePrefix = "录像";
} else if (sourceType == 2) {
goodsNamePrefix = "图片";
} else {

View File

@ -125,7 +125,7 @@
limit 1
</select>
<select id="listUser" resultType="com.ycwl.basic.model.pc.source.resp.SourceRespVO">
select so.id, ms.scenic_id, device_id, url, so.create_time, so.update_time,sc.`name` as scenicName, ms.is_buy
select so.id, ms.scenic_id, device_id, url, so.create_time, so.update_time,sc.`name` as scenicName, ms.is_buy, video_url
from member_source ms
left join source so on ms.source_id = so.id
left join scenic sc on sc.id = so.scenic_id