package com.fdkankan.scene.controller; import com.fdkankan.common.constant.SceneInfoReqType; import com.fdkankan.scene.annotation.InitEditInfo; import com.fdkankan.scene.bean.ResultData; import com.fdkankan.scene.service.*; import com.fdkankan.scene.vo.*; 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; import java.io.IOException; /** * 场景编辑管理 */ @Log4j2 @RestController @RequestMapping("/service/scene/edit") public class SceneEditController{ // @Value("${spring.profiles.active}") // private String env; // @Autowired private ISceneProService sceneProService; @Autowired private SceneEditInfoService sceneEditInfoService; @Autowired private ISceneUploadService sceneUploadService; @Autowired private ISceneEditService sceneEditService; // @Autowired // private IDownloadTourVideoService downloadTourVideoService; // @Autowired // private ISurveillanceService surveillanceService; // @Autowired // private IBoxModelService boxModelService; // @Autowired // private IScenePlusService scenePlusService; // @Autowired // private ISceneAsynOperLogService sceneAsynOperLogService; @Autowired private SceneEditInfoExtService sceneEditInfoExtService; // @Autowired // private ICutModelService cutModelService; /** *

保存场景编辑数据 *

* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.web.response.ResultData **/ // @CheckPermit @PostMapping(value = "/base/save") public ResultData saveScene(@RequestBody @Validated SceneEditInfoParamVO param){ return ResultData.ok(sceneEditInfoService.saveScene(param)); } // // /** // *

// 发布场景数据 // *

// * @author dengsixing // * @date 2022/1/12 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/publicScene") // public ResultData publicScene(@RequestBody @Validated SceneEditInfoParamVO param) throws Exception { // return sceneEditInfoService.publicScene(param); // } /** *

保存初始页面 *

* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/saveInitialPage") public ResultData saveInitialPage(@RequestBody @Validated FileNameAndDataParamVO param) throws Exception { return sceneProService.saveInitialPage(param); } /** *

新增或修改场景热点 *

* @author dengsixing * @date 2022/1/12 * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/tag/save") public ResultData saveTag(@RequestBody @Validated SaveTagsParamVO param) throws Exception { return sceneProService.addOrUpdateTag(param); } /** *

删除热点 *

* @author dengsixing * @date 2022/2/16 * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/tag/delete") public ResultData deleteTag(@RequestBody @Validated DeleteHotParamVO param) throws Exception { return sceneProService.deleteTag(param); } /** *

热点列表 *

* @author dengsixing * @date 2022/8/1 * @param num * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/tag/list") public ResultData listTags(@RequestParam(value = "num") String num, @RequestParam(value = "subgroup", defaultValue = "0") Integer subgroup) throws Exception { return sceneProService.listTags(num, subgroup); } /** *

删除热点 *

* @author dengsixing * @date 2022/2/16 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/icons/delete") public ResultData deleteIcons(@RequestBody @Validated DeleteHotIconParamVO param) throws Exception { return sceneProService.deleteIcons(param); } /** *

保存漫游可行 *

* @author dengsixing * @date 2022/1/12 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/saveRoam") public ResultData saveRoam(@RequestBody @Validated BaseDataParamVO param) throws Exception { return sceneProService.saveRoam(param); } /** *

保存热点可见性的数据 *

* @author dengsixing * @date 2022/8/1 * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/saveTagsVisible") public ResultData saveTagsVisible(@RequestBody @Validated SaveTagsVisibleParamVO param) throws Exception { return sceneProService.saveTagsVisible(param); } // // /** // *

// 下载模型 // *

// * @author dengsixing // * @date 2022/8/1 // * @param num // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/downloadModel") // public ResultData downloadModel(@RequestParam("num") String num) throws Exception { // return sceneProService.downloadModel(num); // } // // /** // *

// 上传模型 // *

// * @author dengsixing // * @date 2022/8/1 // * @param num // * @param file // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/uploadModel") // public ResultData uploadModel(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception { // return sceneProService.uploadModel(num, file); // } // // /** // *

// 保存关联全景图 // *

// * @author dengsixing // * @date 2022/8/1 // * @param num // * @param sid // * @param fileName // * @param file // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/linkPan/upload") // public ResultData uploadLinkPan( // @RequestParam(value = "num") String num, // @RequestParam(value = "sid") String sid, // @RequestParam(value = "fileName") String fileName, // @RequestParam("file") MultipartFile file) throws Exception{ // return sceneEditInfoService.uploadLinkPan(num, sid, fileName, file); // } // // /** // *

// 保存关联全景图 // *

// * @author dengsixing // * @date 2022/8/1 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/linkPan/save") // public ResultData saveLinkPan(@RequestBody @Validated SaveLinkPanParamVO param) throws Exception{ // return sceneEditInfoService.saveLinkPan(param); // } // // /** // *

// 删除场景关联 // *

// * @author dengsixing // * @date 2022/8/1 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/linkPan/delete") // public ResultData deleteLinkPan(@RequestBody @Validated DeleteLinkPanParamVO param) throws Exception { // return sceneEditInfoService.deleteLinkPan(param); // } // // /** // *

// 删除场景关联图标 // *

// * @author dengsixing // * @date 2022/8/1 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/styles/delete") // public ResultData deleteStyles(@RequestBody @Validated DeleteStylesParamVO param) throws Exception { // return sceneEditInfoService.deleteStyles(param); // } /** *

场景关联列表 *

* @author dengsixing * @date 2022/8/1 * @param num * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/linkPan/list") public ResultData listLinkPan(@RequestParam(value = "num") String num, @RequestParam(value = "subgroup", defaultValue = "0") Integer subgroup) throws Exception { return sceneEditInfoService.listLinkPan(num, subgroup); } /** *

保存户型图 *

* @author dengsixing * @date 2022/1/20 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/cad/save") public ResultData saveCad(@RequestBody @Validated BaseDataParamVO param) throws Exception{ return sceneEditInfoService.saveCad(param); } // // /** // *

// 保存户型图 // *

// * @author dengsixing // * @date 2022/1/20 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @GetMapping(value = "/cad/dxf/download") // public ResultData saveCadDxf(@RequestParam String num) throws Exception{ // return sceneEditInfoService.downloadDxf(num); // } // // /** // *

// 保存户型图 // *

// * @author dengsixing // * @date 2022/1/20 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/cad/dxf/upload") // public ResultData uploadDxf(@RequestParam MultipartFile file, @RequestParam String num) throws Exception{ // return sceneEditInfoService.uploadDxf(file, num); // } /** *

重置户型图 *

* @author dengsixing * @date 2022/2/16 * @param num * @return **/ @PostMapping(value = "/cad/reset") public ResultData resetCad(@RequestParam(value = "num") String num, @RequestParam(value = "subgroup", defaultValue = "0") Integer subgroup) throws Exception { return sceneEditInfoService.resetCad(num, subgroup); } /** *

楼层户型重命名 *

* @author dengsixing * @date 2022/2/16 * @return **/ @PostMapping(value = "/cad/rename") public ResultData renameCad(@RequestBody @Validated RenameCadParamVO param) throws IOException { return sceneEditInfoService.renameCad(param); } /** *

获取场景详情 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.scene.vo.SceneInfoVO **/ @InitEditInfo @GetMapping(value = "/getInfo") public SceneInfoVO getInfo(@Validated SceneInfoParamVO param) throws Exception{ param.setReqType(SceneInfoReqType.EDIT.code()); return sceneEditInfoService.getSceneInfo(param); } // // /** // *

// 上传全景图 // *

// * @author dengsixing // * @date 2022/2/16 // * @param num // * @param file // * @return java.util.List // **/ // @CheckPermit // @PostMapping(value = "/uploadPanorama") // public ResultData uploadPanorama(@RequestParam(value = "num") String num, // @RequestParam("file") MultipartFile file) throws Exception { // return sceneEditInfoService.uploadPanorama(num, file); // } // // /** // *

// 下载全景图 // *

// * @author dengsixing // * @date 2022/2/16 // * @return java.util.List // **/ // @CheckPermit // @PostMapping(value = "/downloadPanorama") // public ResultData downloadPanorama(@RequestBody @Validated FileParamVO param) throws Exception { // return sceneEditInfoService.downloadPanorama(param); // } // // /** // *

// 保存视频盒子 // *

// * @author dengsixing // * @date 2022/2/18 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/video/box/save") // public ResultData saveVideoBox(@RequestBody @Validated FileNameAndDataParamVO param) throws Exception { // return sceneEditInfoService.saveVideoBox(param); // } // // /** // *

// 删除视频盒子 // *

// * @author dengsixing // * @date 2022/2/18 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/video/box/delete") // public ResultData deleteVideoBox(@RequestBody @Validated DeleteSidParamVO param) throws Exception { // return sceneEditInfoService.deleteVideoBox(param); // } // // /** // *

// 保存空间贴图 // *

// * @author dengsixing // * @date 2022/2/18 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/photo/box/save") // public ResultData savePhotoBox(@RequestBody @Validated BaseDataParamVO param) throws Exception { // return sceneEditInfoService.saveBoxPhoto(param); // } // // /** // *

// 删除空间贴图 // *

// * @author dengsixing // * @date 2022/2/18 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/photo/box/delete") // public ResultData deletePhotoBox(@RequestBody @Validated DeleteSidParamVO param) throws Exception { // return sceneEditInfoService.deleteBoxPhoto(param); // } // // // /** // *

// 下载视频 // *

// * @author dengsixing // * @date 2022/2/23 // * @param param // * @return com.fdkankan.scene.vo.DownloadVO // **/ // @CheckPermit // @PostMapping(value = "/downloadBallScreenVideo") // public DownloadVO downloadBallScreenVideo(@RequestBody @Validated BallScreenVideoParamVO param){ // return sceneEditInfoService.downloadBallScreenVideo(param); // } // // /** // *

// 上传视频 // *

// * @author dengsixing // * @date 2022/2/23 // * @param num // * @param fileName // * @param file // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/uploadBallScreenVideo") // public ResultData uploadBallScreenVideo( // @RequestParam("num") String num, // @RequestParam("fileName") String fileName, // @RequestParam("file") MultipartFile file) throws Exception { // return sceneEditInfoService.uploadBallScreenVideo(num, fileName, file); // } // @CheckPermit @RequestMapping(value = "/upload/files", method = RequestMethod.POST) public String uploads(@RequestParam(value = "base64",required = false) String base64, @RequestParam(value = "fileName",required = false) String fileName, @RequestParam(value = "bizType",required = false) String bizType, @RequestParam(value = "files",required = false) MultipartFile[] files, @RequestParam(value = "num",required = false) String num, @RequestParam(value = "type",required = false,defaultValue = "1") Integer type, @RequestParam(value = "uploadPath",required = false) String uploadPath, @RequestParam(value = "subgroup",defaultValue = "0") Integer subgroup) throws Exception { return sceneUploadService.uploads(base64,fileName,bizType,files,num,type,uploadPath, subgroup); } // /** // *

// 用户自定义上传文本内容上传 // *

// * @author dengsixing // * @date 2022/8/1 // * @param param // * @return java.lang.String // **/ // @RequestMapping(value = "/upload/content", method = RequestMethod.POST) // public String uploadContent(@RequestBody @Validated UploadContentParamVO param) throws Exception { // return sceneUploadService.uploadContent(param); // } // /** *

删除文件 *

* @author dengsixing * @date 2022/2/23 * @param paramVO * @return com.fdkankan.web.response.ResultData **/ @PostMapping("/delete/file") public ResultData delete(@RequestBody @Validated DeleteFileParamVO paramVO) throws Exception{ return sceneUploadService.delete(paramVO); } // // /** // *

// 场景同步 // *

// * @author dengsixing // * @date 2022/8/1 // * @param num // * @param type // * @param floorPlanJson // * @param ajkJson // * @param cameraJson // * @param files // * @return com.fdkankan.web.response.ResultData // **/ // @CheckPermit // @PostMapping(value = "/sceneSync") // public ResultData sceneSync( // @RequestParam("num") String num, // @RequestParam(value = "type", defaultValue = "ajk") String type, // @RequestParam("floorPlanJson") String floorPlanJson, // @RequestParam("ajkJson") String ajkJson, // @RequestParam("cameraJson") String cameraJson, // @RequestParam("files") MultipartFile[] files) throws Exception{ // return sceneEditInfoService.sceneSync(num, type, floorPlanJson, ajkJson, cameraJson, files); // } /** *

获取场景权限 *

* @author dengsixing * @date 2022/8/1 * @param num * @return com.fdkankan.scene.vo.SceneAuthVO **/ @PostMapping(value = "/getAuth") public SceneAuthVO getAuth(@RequestParam("num") String num, @RequestParam(value = "subgroup", defaultValue = 0)Integer subgroup) throws Exception{ return sceneEditService.getAuth(num, subgroup); } // // /** // *

// 上传国际化文件 // *

// * @author dengsixing // * @date 2022/4/11 // * @param param // * @return com.fdkankan.web.response.ResultData // **/ // @PostMapping(value = "/locales") // public ResultData locales(@RequestBody @Validated LocalesParamVO param) throws Exception { // if("pro".equals(env)){ // throw new BusinessException(ErrorCode.HAVE_NO_RIGHT); // } // return sceneEditService.locales(param); // } // /** *

保存导览 *

* @author dengsixing * @date 2022/8/1 * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/tour/save") public ResultData saveTour(@RequestBody @Validated BaseDataParamVO param) throws Exception{ return sceneEditService.saveTour(param); } /** *

删除导览 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/tour/delete") public ResultData deleteTour(@RequestBody @Validated BaseSceneParamVO param) throws Exception{ return sceneEditService.deleteTour(param); } // @PostMapping(value = "/tour/video/upload") // public ResultData uploadTourVideo(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception { // return downloadTourVideoService.uploadTourVideo(num, file); // } // // @PostMapping(value = "/tour/video/download") // public ResultData downloadTourVideo(@RequestParam("num") String num) throws Exception { // return downloadTourVideoService.downloadTourVideo(num); // } /** *

添加马赛克 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/mosaics/add") public ResultData addMosaics(@RequestBody @Validated BaseDataParamVO param) throws Exception{ return sceneEditInfoService.addMosaics(param); } /** *

删除马赛克 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/mosaics/delete") public ResultData deleteMosaics(@RequestBody @Validated DeleteMosaicParamVO param) throws Exception{ return sceneEditInfoService.deleteMosaics(param); } /** *

马赛克列表 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/mosaics/list") public ResultData getMosaicList(@RequestBody @Validated BaseSceneParamVO param) throws Exception{ return ResultData.ok(sceneEditInfoService.getMosaicList(param.getNum())); } /** *

添加水印 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/waterMark/add") public ResultData addWaterMark(@RequestBody @Validated BaseFileParamVO param) throws Exception{ return sceneEditInfoService.addWaterMark(param); } /** *

删除水印 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.web.response.ResultData **/ @PostMapping(value = "/waterMark/delete") public ResultData deleteWaterMark(@RequestBody @Validated BaseFileParamVO param) throws Exception{ return sceneEditInfoService.deleteWaterMark(param); } /** * 删除水印 * @param param * @return * @throws Exception */ @PostMapping(value = "/filter/save") public ResultData saveFilter(@RequestBody @Validated SaveFiltersParamVO param) throws Exception{ return sceneEditInfoService.saveFilter(param); } /** * 删除水印 * @param param * @return * @throws Exception */ @PostMapping(value = "/filter/list") public ResultData listFilter(@RequestBody @Validated BaseSceneParamVO param) throws Exception{ return sceneEditInfoService.listFilter(param); } // // /** // *

// 添加监控 // *

// * @author dengsixing // * @date 2022/9/20 // * @param param // * @return com.fdkankan.common.response.ResultData // **/ // @CheckPermit // @PostMapping("/surveillance/save") // ResultData saveSurveillance(@RequestBody @Validated SurveillanceParamVO param) throws Exception { // return surveillanceService.saveSurveillance(param); // } // // @CheckPermit // @PostMapping("/surveillance/delete") // public ResultData deleteSurveillance(@RequestBody @Validated BaseSidParamVO param) throws IOException { // return surveillanceService.deleteSurveillance(param); // } // // @CheckPermit // @PostMapping("/surveillance/list") // public ResultData listSurveillance(@RequestBody @Validated BaseSceneParamVO param){ // return ResultData.ok(surveillanceService.listSurveillance(param.getNum())); // } // // /** // *

// 上传空间模型 // *

// * @author dengsixing // * @date 2022/10/19 // * @param num // * @param sid // * @param file // * @return com.fdkankan.common.response.ResultData // **/ // @CheckPermit // @PostMapping("/model/box/upload") // public ResultData uploadBoxModel( // @RequestParam(value = "num") String num, // @RequestParam(value = "sid") String sid, // @RequestParam(value = "file") MultipartFile file) throws Exception { // return boxModelService.uploadBoxModel(num, sid, file); // } // // /** // *

// 保存空间模型 // *

// * @author dengsixing // * @date 2022/10/19 // * @param param // * @return com.fdkankan.common.response.ResultData // **/ // @CheckPermit // @PostMapping("/model/box/save") // public ResultData saveBoxModel(@RequestBody @Validated BaseJsonDataParamVO param) throws Exception { // return boxModelService.saveBoxModel(param); // } // // /** // *

// 删除空间模型 // *

// * @author dengsixing // * @date 2022/10/19 // * @param param // * @return com.fdkankan.common.response.ResultData // **/ // @CheckPermit // @PostMapping("/model/box/delete") // public ResultData delBoxModel(@RequestBody @Validated DeleteSidParamVO param) throws Exception { // return boxModelService.deleteBoxModel(param); // } // // /** // * 上传二维码和分享的logo // * @return // */ // @PostMapping(value = "/uploadShareLogo") // public ResultData uploadShareLogo(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception { // return scenePlusService.uploadShareLogo(num, file); // } // // /** // * 获取编辑器版本信息 // * @return // */ // @GetMapping("/getServiceUpTip") // public ResultData getServiceUpTip(){ // return sceneEditService.getServiceUpTip(); // } /** * 保存或者修改指示牌 * @return * @throws Exception */ @PostMapping("/billboards/save") public ResultData saveBillboards(@RequestBody @Validated BaseJsonArrayParamVO param) throws Exception { return sceneEditInfoExtService.saveBillboards(param); } /** * 删除指示牌 * @return * @throws Exception */ @PostMapping("/billboards/delete") public ResultData deleteBillboards(@RequestBody @Validated DeleteSidListParamVO param) throws Exception { return sceneEditInfoExtService.deleteBillboards(param); } /** * 获取指示牌列表 * @return * @throws Exception */ @PostMapping("/billboards/list") public ResultData deleteBillboards(@RequestBody @Validated BaseSceneParamVO param) throws Exception { return ResultData.ok(sceneEditInfoExtService.listBillboards(param)); } /** * 获取指示牌列表 * @param param * @return * @throws Exception */ @PostMapping("/billboards/styles/delete") public ResultData deleteBillboards(@RequestBody @Validated DeleteStylesParamVO param) throws Exception { return ResultData.ok(sceneEditInfoExtService.deleteBillboardsStyles(param)); } // // @CheckPermit // @PostMapping(value = "/cutModel/save") // public ResultData saveCutModel(@RequestBody @Validated BaseJsonArrayParamVO param) throws Exception { // return cutModelService.saveCutModel(param); // } // // @CheckPermit // @PostMapping(value = "/cutModel/list") // public ResultData listCutModel(@RequestBody @Validated BaseSceneParamVO param) throws Exception { // return ResultData.ok(cutModelService.listCutModel(param)); // } // // @CheckPermit // @PostMapping(value = "/cutModel/delete") // public ResultData deleteCutModel(@RequestBody @Validated DeleteSidListParamVO param) throws Exception { // return cutModelService.deleteCutModel(param); // } }