package com.fdkankan.scene.controller; import com.fdkankan.common.constant.SceneInfoReqType; import com.fdkankan.common.controller.BaseController; import com.fdkankan.scene.service.ISceneEditInfoService; import com.fdkankan.scene.service.ISceneProService; import com.fdkankan.scene.vo.*; import com.fdkankan.common.response.ResultData; import java.util.List; import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; /** * 场景编辑管理 */ @Log4j2 @RestController @RequestMapping("/api/scene/edit") public class SceneEditController extends BaseController { @Autowired private ISceneProService sceneProService; @Autowired private ISceneEditInfoService sceneEditInfoService; /** *
保存编辑的数据 *
* @author dengsixing * @date 2022/1/12 * @param sceneEditParamVO * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveSceneInfo") public ResultData saveSceneInfo(@RequestBody SceneEditParamVO sceneEditParamVO) throws Exception { return sceneProService.saveSceneInfo(sceneEditParamVO); } /** *保存场景编辑数据 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveScene") public SceneEditInfoVO saveScene(@RequestBody @Validated SceneEditInfoParamVO param){ return sceneEditInfoService.saveScene(param); } /** *发布场景数据 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/publicScene") public ResultData publicScene(@RequestBody @Validated SceneEditInfoParamVO param) throws Exception { return sceneEditInfoService.publicScene(param); } /** *单独保存tourList *
* @author dengsixing * @date 2022/1/12 * @param sceneEditParamVO * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveTourList") public ResultData saveTourList(@RequestBody SceneEditParamVO sceneEditParamVO) throws Exception { return sceneProService.saveTourList(sceneEditParamVO); } /** *删除导览 *
* @author dengsixing * @date 2022/1/12 * @param sceneEditParamVO * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/deleteScreencap") public ResultData deleteScreencap(@RequestBody SceneEditParamVO sceneEditParamVO) throws Exception { return sceneProService.deleteScreencap(sceneEditParamVO); } /** *删除录屏音频文件 *
* @author dengsixing * @date 2022/1/12 * @param sceneEditParamVO * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/deleteScreencapVoiceNew") public ResultData deleteScreencapVoiceNew(@RequestBody SceneEditParamVO sceneEditParamVO) throws Exception { return sceneProService.deleteScreencapVoice(sceneEditParamVO); } /** *上传音频 *
* @author dengsixing * @date 2022/1/12 * @param param * @param file * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/uploadScreencapVoiceNew") public ResultData uploadScreencapVoice(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception { return sceneProService.uploadScreencapVoiceNew(param, file); } /** *上传音频 *
* @author dengsixing * @date 2022/1/12 * @param param * @param file * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/uploadScreencapVoiceNewV3") public ResultData uploadScreencapVoiceV3(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception { return sceneProService.uploadScreencapVoiceNewV3(param, file); } /** *删除音频 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/deleteScreencapVoicePart") public ResultData deleteScreencapVoicePart(@RequestBody @Validated FileParamVO param) throws Exception { return sceneProService.deleteScreencapVoicePart(param); } /** *获取录屏的文件名称 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/getScreencapVoice") public ResultData getScreencapVoice(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.getScreencapVoice(param); } /** *保存初始页面 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveInitialPage") public ResultData saveInitialPage(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveInitialPage(param); } /** *保存背景音乐(只是编辑页面生效) *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveBackgroundMusic") public ResultData saveBackgroundMusic(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveBackgroundMusic(param); } /** *保存地面logo *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveFloorLogo") public ResultData saveFloorLogo(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveFloorLogo(param); } /** *保存场景热点 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/tagSave") public ResultData tagSave(@RequestBody @Validated SaveHotParamVO param) throws Exception { return sceneProService.tagSave(param); } /** *保存场景热点 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveShopHot") public ResultData saveShopHot(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveShopHot(param); } /** *保存场景热点 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveOverlay") public ResultData saveOverlay(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveOverlay(param); } /** *保存导览静态数据 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveScreencapData") public ResultData saveScreencapData(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveScreencapData(param); } /** *修改场景秘钥 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveSceneKey") public ResultData saveSceneKey(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveSceneKey(param); } /** *增加热点媒体文件 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveScreencapFile") public ResultData saveScreencapFile(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.saveScreencapFile(param); } /** *上传场景的热点媒体文件 *
* @author dengsixing * @date 2022/1/12 * @param param * @param file * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/uploadHotMedia") public ResultData uploadHotMedia(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception { return sceneProService.uploadHotMedia(param, file); } /** *上传场景的Overlay媒体文件 *
* @author dengsixing * @date 2022/1/12 * @param param * @param file * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/uploadOverlayMedia") public ResultData uploadOverlayMedia(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception { return sceneProService.uploadOverlayMedia(param, file); } /** *增加热点媒体文件 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/addHotMediaInfo") public ResultData addHotMediaInfo(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.addHotMediaInfo(param); } /** *保存漫游可行 *
* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveRoam") public ResultData saveRoam(@RequestBody @Validated BaseDataParamVO param) throws Exception { return sceneProService.saveRoam(param); } /** * 保存热点可见性的数据 * @return */ @PostMapping(value = "/saveTagsVisible") public ResultData saveTagsVisible(@RequestBody @Validated SaveTagsVisibleParamVO param) throws Exception { return sceneProService.saveTagsVisible(param); } /** * 获取从浏览器的音频 */ @PostMapping(value = "/getRecordAudioFromBrowser") public ResultData getRecordAudioFromBrowser(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception{ return sceneProService.getRecordAudioFromBrowser(param, file); } /** * 新增画墙重建模型(钟文) */ @PostMapping(value = "/uploadFloorJson") public ResultData uploadFloorJson(@RequestBody SceneEditParamVO param) throws Exception{ return sceneProService.uploadFloorJson(param); } /** * 安居客 */ @PostMapping(value = "/uploadFloorJsonAjk") public ResultData uploadFloorJsonAjk(FileParamVO param, @RequestParam("file") MultipartFile[] file) throws Exception{ return sceneProService.uploadFloorJsonAjk(param, file); } /** * 重置画墙重建模型 * @return */ @PostMapping(value = "/resetUploadFloorJson") public ResultData resetUploadFloorJson(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.resetUploadFloorJson(param); } /** * 上传二维码和分享的logo * @return */ @RequestMapping(value = "/uploadShareLogo", method = RequestMethod.POST) public ResultData uploadShareLogo(@RequestParam("num") String sceneNum, @RequestParam("file") MultipartFile file) throws Exception { SceneEditParamVO base = new SceneEditParamVO(); base.setNum(sceneNum); return sceneProService.uploadShareLogo(base, file); } /** * 上传图片多媒体数据,直接到七牛云 * @param file * @return */ @PostMapping(value = "/uploadPic") public ResultData uploadPic(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception { return sceneProService.uploadPic(param, file); } /** * 直接上传hot.json到oss * @return */ @PostMapping(value = "/uploadHotJsonToOss") public ResultData uploadHotJsonToOss(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.uploadHotJsonToOss(param); } /** * 删除oss的数据 * @return */ @PostMapping(value = "/deleteOss") public ResultData deleteOss(@RequestBody FileParamVO param) throws Exception { return sceneProService.deleteOss(param); } /** * 上传图片多媒体数据,直接到七牛云 * @param file * @return */ @PostMapping(value = "/uploadFloorplanPng") public ResultData uploadFloorplanPng(FileParamVO param, @RequestParam("file") MultipartFile[] file) throws Exception { return sceneProService.uploadFloorplanPng(param, file); } /** * 检验视频网站url是否正确 * @return */ @PostMapping(value = "/checkVideoUrl") public ResultData checkVideoUrl(@RequestBody FileParamVO param){ return sceneProService.checkVideoUrl(param); } /** * 肖安需求,下载场景obj和贴图 */ @PostMapping(value = "/downloadTexData") public ResultData downloadTexData(@RequestBody SceneEditParamVO param) throws Exception { return sceneProService.downloadTexData(param); } /** * 肖安需求,上传修改后的obj和贴图 * @param file * @return */ // @SystemControllerLog(description = "上传修改后的obj和贴图") @PostMapping(value = "/uploadObjAndImg") public ResultData uploadObjAndImg(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception { return sceneProService.uploadObjAndImg(param, file); } /** * 修改logoBottom状态 * @param * @return */ @PostMapping(value = "/uploadLogoBottomStatus") public ResultData uploadLogoBottomStatus(@RequestBody FileParamVO param) throws Exception { return sceneProService.uploadLogoBottomStatus(param); } /** * 保存通用json数据 */ @PostMapping(value = "/saveJsonData") public ResultData saveJsonData(@RequestBody FileParamVO param) throws Exception{ return sceneProService.saveJsonData(param); } /** * 下载点位全景图或视频 */ @PostMapping(value = "/downloadPanoramaOrVideo") public ResultData downloadPanoramaOrVideo(@RequestBody FileParamVO param) throws Exception{ return sceneProService.downloadPanoramaOrVideo(param); } /** * 上传点位全景图或视频 */ @PostMapping(value = "/uploadPanoramaOrVideo") public ResultData uploadPanoramaOrVideo(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception{ return sceneProService.uploadPanoramaOrVideo(param, file); } /** * 上传绿幕抠图视频 */ @PostMapping(value = "/uploadROIVideo") public ResultData uploadROIVideo(FileParamVO param, @RequestParam(name = "file", required = false) MultipartFile file) throws Exception{ return sceneProService.uploadROIVideo(param, file); } /** * 删除绿幕抠图视频 */ @PostMapping(value = "/deleteROIVideo") public ResultData deleteROIVideo(@RequestBody FileParamVO param) throws Exception{ return sceneProService.deleteROIVideo(param); } /** * 上传场景背景音乐 */ @PostMapping(value = "/uploadBgMusic") public ResultData uploadBgMusic(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception{ return sceneProService.uploadBgMusic(param, file); } /** * 删除上传的场景背景音乐 */ @PostMapping(value = "/deleteUploadBgMusic") public ResultData deleteUploadBgMusic(@RequestBody FileParamVO param) throws Exception{ return sceneProService.deleteUploadBgMusic(param); } /** * 保存关联全景图 */ @PostMapping(value = "/savePanorama") public ResultData savePanorama(FileParamVO param, @RequestParam("file") MultipartFile file) throws Exception{ return sceneProService.savePanorama(param, file); } /** * 保存关联全景图 */ @PostMapping(value = "/savePanoramaJson") public ResultData savePanoramaJson(@RequestBody FileParamVO param) throws Exception{ return sceneProService.savePanoramaJson(param); } /** * 保存关联全景图json */ @PostMapping(value = "/copyAndUpdateFloorJson") public ResultData copyAndUpdateFloorJson(@RequestBody FileParamVO param) throws Exception{ return sceneProService.copyAndUpdateFloorJson(param); } /** * 保存关联全景图json */ @PostMapping(value = "/updateFloorJson") public ResultData updateFloorJson(@RequestBody FileParamVO param) throws Exception{ return sceneProService.updateFloorJson(param); } /** * 下载点位数据 */ @PostMapping(value = "/downloadVisionData") public ResultData downloadVisionData(@RequestBody SceneEditParamVO param) throws Exception{ return sceneProService.downloadVisionData(param); } /** * 下载全景图数据 */ @PostMapping(value = "/downloadPanoramaData") public ResultData downloadPanoramaData(@RequestBody SceneEditParamVO param) throws Exception{ return sceneProService.downloadPanoramaData(param); } /** *上传后保存 *
* @author dengsixing * @date 2022/1/20 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/saveUpload") public ResultData saveUpload(@RequestBody @Validated SaveUploadParamVO param) throws Exception{ return sceneEditInfoService.saveUpload(param); } /** *上传后保存 *
* @author dengsixing * @date 2022/1/20 * @param param * @return com.fdkankan.common.response.ResultData **/ @PostMapping(value = "/save/cad") public ResultData saveCad(@RequestBody @Validated BaseDataParamVO param) throws Exception{ return sceneEditInfoService.saveCad(param); } /** * 获取场景详情 */ @GetMapping(value = "/getInfo") public SceneInfoVO getInfo(@Validated SceneInfoParamVO param){ param.setReqType(SceneInfoReqType.EDIT.code()); return sceneEditInfoService.getSceneInfo(param); } /** *批量上传全景照片 *
* @author dengsixing * @date 2022/2/16 * @param num * @param file * @return java.util.List