|
@@ -2,6 +2,7 @@ package com.fdkankan.scene.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.fdkankan.common.constant.ConstantFilePath;
|
|
|
import com.fdkankan.common.constant.ErrorCode;
|
|
@@ -9,6 +10,8 @@ import com.fdkankan.common.constant.TbStatus;
|
|
|
import com.fdkankan.common.exception.BusinessException;
|
|
|
import com.fdkankan.common.response.ResultData;
|
|
|
import com.fdkankan.fyun.oss.UploadToOssUtil;
|
|
|
+import com.fdkankan.redis.constant.RedisKey;
|
|
|
+import com.fdkankan.redis.util.RedisUtil;
|
|
|
import com.fdkankan.scene.bean.SceneJsonBean;
|
|
|
import com.fdkankan.scene.entity.SceneEditControls;
|
|
|
import com.fdkankan.scene.entity.SceneEditInfo;
|
|
@@ -26,6 +29,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.Calendar;
|
|
|
+import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
/**
|
|
@@ -45,6 +49,8 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
|
|
|
private ISceneProService sceneProService;
|
|
|
@Autowired
|
|
|
private UploadToOssUtil uploadToOssUtil;
|
|
|
+ @Autowired
|
|
|
+ RedisUtil redisUtil;
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -95,14 +101,14 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public ResultData publicScene(SceneEditParamVO sceneEditParamVO) throws Exception {
|
|
|
- String sceneNum = sceneEditParamVO.getSceneNum();
|
|
|
+ public ResultData publicScene(SceneEditInfoParamVO param) throws Exception {
|
|
|
+ String sceneNum = param.getNum();
|
|
|
if(StrUtil.isEmpty(sceneNum)){
|
|
|
throw new BusinessException(ErrorCode.PARAM_REQUIRED);
|
|
|
}
|
|
|
|
|
|
//根据场景码查询数据库
|
|
|
- ScenePro scenePro = sceneProService.findBySceneNum(sceneEditParamVO.getSceneNum());
|
|
|
+ ScenePro scenePro = sceneProService.findBySceneNum(sceneNum);
|
|
|
SceneEditInfo sceneEditInfo = this.getBySceneProId(scenePro.getId());
|
|
|
SceneEditControls sceneEditControls = sceneEditControlsService.getBySceneEditId(sceneEditInfo.getId());
|
|
|
|
|
@@ -110,19 +116,23 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
|
|
|
SceneJsonBean sceneJson = BeanUtil.copyProperties(sceneEditInfo, SceneJsonBean.class);
|
|
|
SceneEditControlsVO sceneEditControlsVO = BeanUtil.copyProperties(sceneEditControls, SceneEditControlsVO.class);
|
|
|
sceneJson.setControls(sceneEditControlsVO);
|
|
|
- sceneJson.setNum(sceneEditParamVO.getSceneNum());
|
|
|
+ sceneJson.setNum(sceneNum);
|
|
|
|
|
|
//上传sceneJson文件
|
|
|
-// String sceneJsonPath = String.format(ConstantFilePath.)
|
|
|
-// uploadToOssUtil.upload();
|
|
|
-
|
|
|
- //oss文件拷贝
|
|
|
-// uploadToOssUtil.copyFiles();
|
|
|
+ String sceneJsonPath = String.format("scene_edit_data/%s/data/scene.json", sceneNum);
|
|
|
+ uploadToOssUtil.upload(JSON.toJSONBytes(sceneJson), sceneJsonPath);
|
|
|
|
|
|
+ //删除发布数据中的user目录
|
|
|
+ String publicUserPath = String.format("scene_view_data/%s/user/", sceneNum);
|
|
|
+ uploadToOssUtil.deleteFile(publicUserPath);
|
|
|
|
|
|
- //删除没用文件
|
|
|
+ //复制编辑数据到发布目录
|
|
|
+ String editUserPath = String.format("scene_edit_data/%s/user/", sceneNum);
|
|
|
+ uploadToOssUtil.copyFiles(editUserPath,publicUserPath);
|
|
|
|
|
|
//sceneJson放入缓存
|
|
|
+ String key = String.format(RedisKey.SCENE_JSON, sceneNum);
|
|
|
+ redisUtil.set(key, JSON.toJSONString(sceneJson));
|
|
|
|
|
|
return ResultData.ok();
|
|
|
}
|