package com.fdkankan.scene.controller; import com.fdkankan.common.constant.SceneInfoReqType; import com.fdkankan.common.util.ESAPIUtil; import com.fdkankan.scene.annotation.CheckToken; 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 extends BaseController{ // @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){ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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 { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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 { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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 { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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) throws Exception { Integer subgroup = this.getSubgroup(); String upTime = this.getUpTime(); return sceneProService.listTags(num, subgroup, upTime); } /** *

删除热点 *

* @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 { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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 { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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 { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneProService.saveTagsVisible(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) throws Exception { Integer subgroup = this.getSubgroup(); String upTime = this.getUpTime(); return sceneEditInfoService.listLinkPan(num, subgroup, upTime); } /** *

保存户型图 *

* @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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.saveCad(param); } /** *

重置户型图 *

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

楼层户型重命名 *

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

获取场景详情 *

* @author dengsixing * @date 2022/8/1 * @param param * @return com.fdkankan.scene.vo.SceneInfoVO **/ @CheckToken @InitEditInfo @GetMapping(value = "/getInfo") public SceneInfoVO getInfo(@Validated SceneInfoParamVO param) throws Exception{ param.setReqType(SceneInfoReqType.EDIT.code()); response.setHeader("Set-Cookie","cookiename=cookievalue; path=/; Domain=domainvaule; Max-age=seconds; HttpOnly"); return sceneEditInfoService.getSceneInfo(param.getNum(), param.getSubgroup(), param.getUpTimeKey(), (byte)2); } /** *

上传全景图 *

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

下载全景图 *

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

// 下载模型 // *

// * @author dengsixing // * @param num // * @return com.fdkankan.web.response.ResultData // **/ // @PostMapping(value = "/downloadModel") // public ResultData downloadModel(@RequestParam("num") String num) throws Exception { // return sceneProService.downloadModel(num, this.getSubgroup(), this.getUpTime()); // } // /** // *

// 上传模型 // *

// * @author dengsixing // * @param num // * @param file // * @return com.fdkankan.web.response.ResultData // **/ // @PostMapping(value = "/uploadModel") // public ResultData uploadModel(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception { // return sceneProService.uploadModel(num, this.getSubgroup(), this.getUpTime(), file); // } @RequestMapping(value = "/upload/files", method = RequestMethod.POST) public String uploads(@RequestParam(value = "base64",required = false) String imgStr, @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) throws Exception { Integer subgroup = this.getSubgroup(); String upTime = this.getUpTime(); response.setHeader("Set-Cookie","cookiename=cookievalue; path=/; Domain=domainvaule; Max-age=seconds; HttpOnly"); return sceneUploadService.uploads(imgStr,fileName,bizType,files,num,type,uploadPath, subgroup, upTime); } /** *

删除文件 *

* @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{ paramVO.setSubgroup(this.getSubgroup()); paramVO.setUpTimeKey(this.getUpTime()); return sceneUploadService.delete(paramVO); } /** *

获取场景权限 *

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

保存导览 *

* @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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditService.deleteTour(param); } /** *

添加马赛克 *

* @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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return ResultData.ok(sceneEditInfoService.getMosaicList(param.getNum(), param.getSubgroup(), param.getUpTimeKey())); } /** *

添加水印 *

* @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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); 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{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.deleteWaterMark(param); } /** * 删除水印 * @param param * @return * @throws Exception */ @PostMapping(value = "/filter/save") public ResultData saveFilter(@RequestBody @Validated SaveFiltersParamVO param) throws Exception{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.saveFilter(param); } /** * 删除水印 * @param param * @return * @throws Exception */ @PostMapping(value = "/filter/list") public ResultData listFilter(@RequestBody @Validated BaseSceneParamVO param) throws Exception{ param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.listFilter(param); } /** *

上传空间模型 *

* @author dengsixing * @param num * @param sid * @param file * @return com.fdkankan.common.response.ResultData **/ // @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, this.getSubgroup(), this.getUpTime(), sid, file); // } /** * 保存空间模型 **/ // @PostMapping("/model/box/save") // public ResultData saveBoxModel(@RequestBody @Validated BaseJsonDataParamVO param) throws Exception { // param.setSubgroup(this.getSubgroup()); // param.setUpTimeKey(this.getUpTime()); // return boxModelService.saveBoxModel(param); // } /** * 删除空间模型 **/ // @PostMapping("/model/box/delete") // public ResultData delBoxModel(@RequestBody @Validated DeleteSidParamVO param) throws Exception { // param.setSubgroup(this.getSubgroup()); // param.setUpTimeKey(this.getUpTime()); // return boxModelService.deleteBoxModel(param); // } /** * 保存或者修改指示牌 * @return * @throws Exception */ @PostMapping("/billboards/save") public ResultData saveBillboards(@RequestBody @Validated BaseJsonArrayParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoExtService.saveBillboards(param); } /** * 删除指示牌 * @return * @throws Exception */ @PostMapping("/billboards/delete") public ResultData deleteBillboards(@RequestBody @Validated DeleteSidListParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoExtService.deleteBillboards(param); } /** * 获取指示牌列表 * @return * @throws Exception */ @PostMapping("/billboards/list") public ResultData deleteBillboards(@RequestBody @Validated BaseSceneParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return ResultData.ok(sceneEditInfoExtService.listBillboards(param)); } /** * 获取指示牌列表 * @param param * @return * @throws Exception */ @PostMapping("/billboards/styles/delete") public ResultData deleteBillboards(@RequestBody @Validated DeleteStylesParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return ResultData.ok(sceneEditInfoExtService.deleteBillboardsStyles(param)); } /** *

保存视频盒子 *

* @author dengsixing **/ @PostMapping(value = "/video/box/save") public ResultData saveVideoBox(@RequestBody @Validated FileNameAndDataParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.saveVideoBox(param); } /** *

删除视频盒子 *

**/ @PostMapping(value = "/video/box/delete") public ResultData deleteVideoBox(@RequestBody @Validated DeleteSidParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.deleteVideoBox(param); } /** *

保存空间贴图 *

**/ @PostMapping(value = "/photo/box/save") public ResultData savePhotoBox(@RequestBody @Validated BaseDataParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.saveBoxPhoto(param); } /** *

删除空间贴图 *

**/ @PostMapping(value = "/photo/box/delete") public ResultData deletePhotoBox(@RequestBody @Validated DeleteSidParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return sceneEditInfoService.deleteBoxPhoto(param); } /** * 保存裁剪模型 */ @PostMapping(value = "/cutModel/save") public ResultData saveCutModel(@RequestBody @Validated BaseJsonArrayParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return cutModelService.saveCutModel(param); } /** * 裁剪模型列表 */ @PostMapping(value = "/cutModel/list") public ResultData listCutModel(@RequestBody @Validated BaseSceneParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return ResultData.ok(cutModelService.listCutModel(param)); } /** * 删除裁剪模型 */ @PostMapping(value = "/cutModel/delete") public ResultData deleteCutModel(@RequestBody @Validated DeleteSidListParamVO param) throws Exception { param.setSubgroup(this.getSubgroup()); param.setUpTimeKey(this.getUpTime()); return cutModelService.deleteCutModel(param); } }