|
@@ -1,10 +1,13 @@
|
|
|
package com.tzld.piaoquan.longarticle.service.local.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.tzld.piaoquan.longarticle.common.enums.ContentStatusEnum;
|
|
|
import com.tzld.piaoquan.longarticle.common.enums.PublishGzhPushTypeEnum;
|
|
|
import com.tzld.piaoquan.longarticle.dao.mapper.*;
|
|
|
import com.tzld.piaoquan.longarticle.model.bo.MatchContent;
|
|
|
+import com.tzld.piaoquan.longarticle.model.bo.PublishMiniprogramBo;
|
|
|
import com.tzld.piaoquan.longarticle.model.bo.VideoDetail;
|
|
|
import com.tzld.piaoquan.longarticle.model.dto.*;
|
|
|
import com.tzld.piaoquan.longarticle.model.po.*;
|
|
@@ -20,6 +23,7 @@ import com.tzld.piaoquan.longarticle.utils.LarkRobotUtil;
|
|
|
import com.tzld.piaoquan.longarticle.utils.TimeZoneUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -77,6 +81,9 @@ public class CoreServiceImpl implements CoreService {
|
|
|
@Autowired
|
|
|
private PublicContentServiceImpl publicContentService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private RootSourceServiceImpl rootSourceService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private RedisTemplate<String, Object> redisTemplate;
|
|
|
|
|
@@ -429,6 +436,8 @@ public class CoreServiceImpl implements CoreService {
|
|
|
sendIds.add(publishContent.getId());
|
|
|
//获取小程序
|
|
|
List<PublishMiniprogram> publishMiniprogramList = contentService.getPublishMiniprograms(publishArticleData);
|
|
|
+
|
|
|
+ //不存在则重新生成
|
|
|
if (CollectionUtils.isEmpty(publishMiniprogramList)) {
|
|
|
List<CrawlerVideo> contentVideos =
|
|
|
contentService.getContentMiniVideo(publishArticleData, planAccount);
|
|
@@ -468,31 +477,42 @@ public class CoreServiceImpl implements CoreService {
|
|
|
}
|
|
|
String ghId = planAccount.getGhId();
|
|
|
Long planAccountId = planAccount.getId();
|
|
|
- publishMiniprogramList = cardService.generateCards(planAccountId, ghId, videoDetails,
|
|
|
+ List<PublishMiniprogramBo> publishMiniprogramBoList = cardService.generateCards(planAccountId, ghId, videoDetails,
|
|
|
planAccount.getMiniprogramUseType(), publishContent.getPublishContentId());
|
|
|
- if (CollectionUtils.isEmpty(publishMiniprogramList) && publishMiniprogramList.size() < 2) {
|
|
|
+ if (CollectionUtils.isEmpty(publishMiniprogramBoList) && publishMiniprogramBoList.size() < 2) {
|
|
|
continue;
|
|
|
}
|
|
|
- for (PublishMiniprogram publishMiniprogram : publishMiniprogramList) {
|
|
|
- String videoCover = publishMiniprogram.getVideoCover();
|
|
|
- String wxUrl = aigcService.pushCover(videoCover, publishMiniprogram.getPublishContentId());
|
|
|
+ JSONArray jsonArray = new JSONArray();
|
|
|
+ for (PublishMiniprogramBo publishMiniprogramBo : publishMiniprogramBoList) {
|
|
|
+ String videoCover = publishMiniprogramBo.getVideoCover();
|
|
|
+ String wxUrl = aigcService.pushCover(videoCover, publishMiniprogramBo.getPublishContentId());
|
|
|
if (StringUtils.isEmpty(wxUrl)) {
|
|
|
continue;
|
|
|
}
|
|
|
- publishMiniprogram.setWxUrl(wxUrl);
|
|
|
- publishMiniprogram.setContentId(publishContent.getId());
|
|
|
- RootSource rootSource = new RootSource();
|
|
|
- rootSource.setAccountName(planAccount.getAccountName());
|
|
|
- rootSource.setRootSourceId(publishMiniprogram.getRootSourceId());
|
|
|
- rootSource.setGhId(planAccount.getGhId());
|
|
|
- rootSource.setRequestTime(Integer.valueOf(String.valueOf(System.currentTimeMillis() / 1000)));
|
|
|
- rootSource.setTraceId(publishMiniprogram.getTraceId());
|
|
|
- rootSource.setPushType(2);
|
|
|
- rootSource.setVideoId(publishMiniprogram.getVideoId());
|
|
|
- rootSource.setContentId(publishArticleData.getSourceId());
|
|
|
- rootSourceMapper.insertSelective(rootSource);
|
|
|
+ publishMiniprogramBo.setWxUrl(wxUrl);
|
|
|
+ publishMiniprogramBo.setContentId(publishContent.getId());
|
|
|
+ //插入rootSource
|
|
|
+ rootSourceService.addRootSource(publishMiniprogramBo, planAccount, publishArticleData);
|
|
|
+
|
|
|
+ //TODO 更新match表
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ jsonObject.put("uid", publishMiniprogramBo.getUid());
|
|
|
+ jsonObject.put("source", publishMiniprogramBo.getSource());
|
|
|
+ jsonObject.put("kimiTitle", publishMiniprogramBo.getVideoTitle());
|
|
|
+ jsonObject.put("videoId", publishMiniprogramBo.getVideoId());
|
|
|
+ jsonObject.put("videoCover", publishMiniprogramBo.getVideoCover());
|
|
|
+ jsonObject.put("videoPath", publishMiniprogramBo.getVideoPath());
|
|
|
+ jsonObject.put("videoOss", publishMiniprogramBo.getVideoPath());
|
|
|
+ jsonObject.put("rootSourceId", publishMiniprogramBo.getRootSourceId());
|
|
|
+ jsonArray.add(jsonObject);
|
|
|
+
|
|
|
+ PublishMiniprogram publishMiniprogram = new PublishMiniprogram();
|
|
|
+ BeanUtils.copyProperties(publishMiniprogram, publishMiniprogramBo);
|
|
|
publishMiniprogramMapper.insertSelective(publishMiniprogram);
|
|
|
+ publishMiniprogramList.add(publishMiniprogram);
|
|
|
}
|
|
|
+ String traceId = contentService.updateMatchContent(publishArticleData.getSourceId(), planAccount.getGhId(), jsonArray);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
List<PublishMiniprogramParam> publishCardList = new ArrayList<>();
|