package com.fdkankan.fusion.controller; import com.alibaba.fastjson.JSONObject; import com.fdkankan.fusion.common.ResultCode; import com.fdkankan.fusion.common.ResultData; import com.fdkankan.fusion.common.util.CameraUtil; import com.fdkankan.fusion.entity.*; import com.fdkankan.fusion.entity.jsonEntity.Transform; import com.fdkankan.fusion.exception.BusinessException; import com.fdkankan.fusion.request.FusionParam; import com.fdkankan.fusion.response.FusionNumVo; import com.fdkankan.fusion.response.SceneVo; import com.fdkankan.fusion.service.*; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.stream.Collectors; /** *
* 前端控制器 *
* * @author * @since 2022-08-04 */ @RestController @RequestMapping("/caseFusion") public class CaseFusionController extends BaseController{ @Autowired ICaseFusionService caseFusionService; @Autowired IFusionNumService fusionNumService; @Autowired IFusionMeterService fusionMeterService; @Autowired ICaseTagPointService caseTagPointService; @Autowired IModelService modelService; @Autowired IScenePlusService scenePlusService; @Autowired IScenePlusExtService scenePlusExtService; @GetMapping("/list") public ResultData allList(@RequestParam(required = false) Integer fusionId){ return ResultData.ok(getSceneListVo(fusionId)); } @GetMapping("/info") public ResultData info(@RequestParam(required = false) Integer fusionId){ CaseFusion caseFusion = caseFusionService.getById(fusionId); if(caseFusion == null){ throw new BusinessException(ResultCode.RECORD_NOT_EXIST); } return ResultData.ok(caseFusion); } @PostMapping("/add") public ResultData add(@RequestBody FusionParam param){ if( param.getFusionId() == null ){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } if((param.getIsObj() == null || StringUtils.isBlank(param.getNum())) && param.getUploadId() == null){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } ScenePlus scenePlus = scenePlusService.getByNum(param.getNum()); ScenePlusExt scenePlusExt = scenePlusExtService.getByPlusId(scenePlus.getId()); scenePlus.setScenePlusExt(scenePlusExt); return ResultData.ok(fusionNumService.add(param,scenePlus,param.getIsObj())); } @PostMapping("/updateInfo") public ResultData updateInfo(@RequestBody CaseFusion caseFusion){ if(caseFusion.getFusionId() == null){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } caseFusion.setUpdateTime(null); caseFusionService.updateById(caseFusion); return ResultData.ok(); } @PostMapping("/delFusion") public ResultData delFusion(@RequestBody CaseFusion caseFusion){ if(caseFusion.getFusionId() == null){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } caseFusionService.removeById(caseFusion.getFusionId()); return ResultData.ok(); } /** * 修改模型相关信息 */ @PostMapping("/update") public ResultData update(@RequestBody FusionParam param){ fusionNumService.updateModel(param); return ResultData.ok(); } @PostMapping("/delete") public ResultData delete(@RequestBody FusionParam param){ if(param.getFusionNumId() == null){ throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS); } fusionNumService.deleteById(param.getFusionNumId()); return ResultData.ok(); } private List