Просмотр исходного кода

修改场景状态接口,上传失败或者是计算失败,用户需要重传,提供一个内部接口 直接修改为可重传失败状态

dengsixing 1 неделя назад
Родитель
Сommit
0d8ec7efdf

+ 27 - 0
src/main/java/com/fdkankan/contro/controller/SceneFileController.java

@@ -4,10 +4,14 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.fdkankan.common.constant.ErrorCode;
+import com.fdkankan.common.constant.SceneStatus;
 import com.fdkankan.common.exception.BusinessException;
+import com.fdkankan.contro.entity.ScenePlus;
 import com.fdkankan.contro.service.ISceneFileBuildService;
+import com.fdkankan.contro.service.IScenePlusService;
 import com.fdkankan.contro.vo.ResponseSceneFile;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
+import com.fdkankan.model.constants.UploadFilePath;
 import com.fdkankan.web.response.ResultData;
 import lombok.extern.log4j.Log4j2;
 import org.apache.commons.lang3.StringUtils;
@@ -16,6 +20,7 @@ import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -132,4 +137,26 @@ public class SceneFileController{
                                        @RequestParam(value = "sourceBucket") String sourceBucket) throws Exception {
         return sceneFileBuildService.copyDataAndBuild(sourceBucket,dataSource ,sceneVer);
     }
+
+    @Autowired
+    private IScenePlusService scenePlusService;
+
+    @PostMapping("updateToFail/{num}")
+    public ResultData<Void> updateToFail(@PathVariable String num) throws Exception {
+        ScenePlus scenePlus = scenePlusService.getScenePlusByNum(num);
+        if(scenePlus == null){
+            throw new BusinessException(ErrorCode.FAILURE_CODE_5005);
+        }
+        scenePlus.setSceneStatus(500);
+        scenePlusService.updateById(scenePlus);
+
+        String statusJsonKey = String.format(UploadFilePath.DATA_VIEW_PATH, num) + "status.json";
+        String fileContent = fYunFileService.getFileContent(statusJsonKey);
+        JSONObject jsonObject = JSON.parseObject(fileContent);
+        jsonObject.put("status", -1);
+        fYunFileService.uploadFile(jsonObject.toJSONString().getBytes(StandardCharsets.UTF_8), statusJsonKey);
+        return ResultData.ok();
+    }
+
+
 }