package com.fdkankan.manage.controller; import com.alibaba.fastjson.JSONObject; import com.fdkankan.fyun.face.FYunFileServiceInterface; import com.fdkankan.manage.common.ResultCode; import com.fdkankan.manage.entity.*; import com.fdkankan.manage.exception.BusinessException; import com.fdkankan.manage.common.ResultData; import com.fdkankan.manage.httpClient.client.FdKKClient; import com.fdkankan.manage.service.*; import com.fdkankan.manage.vo.request.SceneParam; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.Arrays; import java.util.HashMap; /** * 相机场景管理 */ @RestController @RequestMapping("/service/manage/scene") @Slf4j public class SceneController { @Autowired ISceneProService sceneProService; @Autowired IScenePlusService scenePlusService; @Autowired IScenePlusExtService scenePlusExtService; @Autowired IDownService downService; @Autowired FdKKClient fdKKClient; @Autowired FYunFileServiceInterface fYunFileServiceInterface; @Autowired ISceneCopyLogService sceneCopyLogService; @PostMapping("/list") public ResultData list(@RequestBody SceneParam param){ return ResultData.ok(sceneProService.pageList(param)); } /** * 场景迁移 * num 迁移场景码 * snCode 迁移至相机snCode */ @PostMapping("/move") public ResultData move(@RequestBody SceneParam param){ if( StringUtils.isEmpty(param.getSnCode())){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } if(StringUtils.isEmpty(param.getNum()) && (param.getNumList()== null || param.getNumList().isEmpty())){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } Integer moveNum = sceneProService.move(param); HashMap map = new HashMap<>(); map.put("successNum",moveNum); return ResultData.ok(map); } /** * 场景复制 * num 场景码 */ @PostMapping("/copy") public ResultData copy(@RequestBody SceneParam param) throws Exception { if(StringUtils.isEmpty(param.getNum())){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } sceneProService.copy(param.getNum()); return ResultData.ok(); } /** * 场景删除 * num 场景码 */ @PostMapping("/delete") public ResultData delete(@RequestBody SceneParam param){ if(StringUtils.isEmpty(param.getNum())){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } sceneProService.deleteByNum(param.getNum()); return ResultData.ok(); } /** * 检查下载 * num 场景码 */ @GetMapping("/checkDownLoad") public ResultData checkDownLoad(@RequestParam(required = false) String num, @RequestParam(required = false,defaultValue = "0") Integer isObj){ return ResultData.ok(downService.checkDownLoad(num,isObj)); } /** * 下载场景 * num 场景码 */ @GetMapping("/downScene") public ResultData downScene(@RequestParam(required = false) String num, @RequestParam(required = false,defaultValue = "0") Integer isObj){ return ResultData.ok(downService.down(num,isObj)); } /** * 下载场景进度条 * num 场景码 */ @GetMapping("/downloadProcess") public ResultData downloadProcess(@RequestParam(required = false) String num, @RequestParam(required = false,defaultValue = "0") Integer isObj){ return ResultData.ok(downService.downloadProcess(num,isObj)); } /** * 场景重算 * num 场景码 */ @GetMapping("/rebuildScene") public ResultData rebuild(@RequestParam(required = false) String num,@RequestParam(required = false) String from){ sceneProService.rebuildScene(num,from); return ResultData.ok(); } /** * 解冻 * num 场景码 */ @GetMapping("/restStore") public ResultData restStore(@RequestParam(required = false) String num){ sceneProService.restStore(num); return ResultData.ok(); } /** * 获取解冻进度 * num 场景码 */ @GetMapping("/getRestStoreProcess") public ResultData getRestStoreProcess(@RequestParam(required = false) String num){ return ResultData.ok(sceneProService.getRestStoreProcess(num)); } }