SceneEditController.java 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991
  1. package com.fdkankan.scene.controller;
  2. import com.fdkankan.common.constant.ErrorCode;
  3. import com.fdkankan.common.constant.SceneInfoReqType;
  4. import com.fdkankan.common.exception.BusinessException;
  5. import com.fdkankan.scene.annotation.CheckPermit;
  6. import com.fdkankan.scene.annotation.SaveLog;
  7. import com.fdkankan.scene.service.*;
  8. import com.fdkankan.scene.vo.*;
  9. import com.fdkankan.web.controller.BaseController;
  10. import com.fdkankan.web.response.ResultData;
  11. import lombok.extern.log4j.Log4j2;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.beans.factory.annotation.Value;
  14. import org.springframework.validation.annotation.Validated;
  15. import org.springframework.web.bind.annotation.*;
  16. import org.springframework.web.multipart.MultipartFile;
  17. import java.io.IOException;
  18. /**
  19. * 场景编辑管理
  20. */
  21. @Log4j2
  22. @RestController
  23. @RequestMapping("/service/scene/edit")
  24. public class SceneEditController extends JmgaBaseController {
  25. @Value("${spring.profiles.active}")
  26. private String env;
  27. @Autowired
  28. private ISceneProService sceneProService;
  29. @Autowired
  30. private ISceneEditInfoService sceneEditInfoService;
  31. @Autowired
  32. private ISceneUploadService sceneUploadService;
  33. @Autowired
  34. private ISceneEditService sceneEditService;
  35. @Autowired
  36. private IDownloadTourVideoService downloadTourVideoService;
  37. @Autowired
  38. private ISurveillanceService surveillanceService;
  39. @Autowired
  40. private IBoxModelService boxModelService;
  41. @Autowired
  42. private IScenePlusService scenePlusService;
  43. @Autowired
  44. private ISceneAsynOperLogService sceneAsynOperLogService;
  45. @Autowired
  46. private ISceneEditInfoExtService sceneEditInfoExtService;
  47. @Autowired
  48. private ICutModelService cutModelService;
  49. @Autowired
  50. private IVisionService visionService;
  51. /**
  52. * <p>
  53. 保存场景编辑数据
  54. * </p>
  55. * @author dengsixing
  56. * @date 2022/1/12
  57. * @param param
  58. * @return com.fdkankan.web.response.ResultData
  59. **/
  60. @SaveLog
  61. @CheckPermit
  62. @PostMapping(value = "/base/save")
  63. public SceneEditInfoVO saveScene(@RequestBody @Validated SceneEditInfoParamVO param){
  64. return sceneEditInfoService.saveScene(param);
  65. }
  66. /**
  67. * <p>
  68. 发布场景数据
  69. * </p>
  70. * @author dengsixing
  71. * @date 2022/1/12
  72. * @param param
  73. * @return com.fdkankan.web.response.ResultData
  74. **/
  75. @SaveLog
  76. @CheckPermit
  77. @PostMapping(value = "/publicScene")
  78. public ResultData publicScene(@RequestBody @Validated SceneEditInfoParamVO param) throws Exception {
  79. return sceneEditInfoService.publicScene(param);
  80. }
  81. /**
  82. * <p>
  83. 保存初始页面
  84. * </p>
  85. * @author dengsixing
  86. * @date 2022/1/12
  87. * @param param
  88. * @return com.fdkankan.web.response.ResultData
  89. **/
  90. @SaveLog
  91. @CheckPermit
  92. @PostMapping(value = "/saveInitialPage")
  93. public ResultData saveInitialPage(@RequestBody @Validated FileNameAndDataParamVO param) throws Exception {
  94. return sceneProService.saveInitialPage(param);
  95. }
  96. /**
  97. * <p>
  98. 新增或修改场景热点
  99. * </p>
  100. * @author dengsixing
  101. * @date 2022/1/12
  102. * @param param
  103. * @return com.fdkankan.web.response.ResultData
  104. **/
  105. @SaveLog
  106. @CheckPermit
  107. @PostMapping(value = "/tag/save")
  108. public ResultData saveTag(@RequestBody @Validated SaveTagsParamVO param) throws Exception {
  109. return sceneProService.addOrUpdateTag(param);
  110. }
  111. /**
  112. * <p>
  113. 删除热点
  114. * </p>
  115. * @author dengsixing
  116. * @date 2022/2/16
  117. * @param param
  118. * @return com.fdkankan.web.response.ResultData
  119. **/
  120. @SaveLog
  121. @CheckPermit
  122. @PostMapping(value = "/tag/delete")
  123. public ResultData deleteTag(@RequestBody @Validated DeleteHotParamVO param) throws Exception {
  124. return sceneProService.deleteTag(param);
  125. }
  126. /**
  127. * <p>
  128. 热点列表
  129. * </p>
  130. * @author dengsixing
  131. * @date 2022/8/1
  132. * @param num
  133. * @return com.fdkankan.web.response.ResultData
  134. **/
  135. @CheckPermit
  136. @PostMapping(value = "/tag/list")
  137. public ResultData listTags(@RequestParam(value = "num") String num) throws Exception {
  138. return sceneProService.listTags(num);
  139. }
  140. /**
  141. * <p>
  142. 删除热点
  143. * </p>
  144. * @author dengsixing
  145. * @date 2022/2/16
  146. * @param param
  147. * @return com.fdkankan.web.response.ResultData
  148. **/
  149. @SaveLog
  150. @CheckPermit
  151. @PostMapping(value = "/icons/delete")
  152. public ResultData deleteIcons(@RequestBody @Validated DeleteHotIconParamVO param) throws Exception {
  153. return sceneProService.deleteIcons(param);
  154. }
  155. /**
  156. * <p>
  157. 保存漫游可行
  158. * </p>
  159. * @author dengsixing
  160. * @date 2022/1/12
  161. * @param param
  162. * @return com.fdkankan.web.response.ResultData
  163. **/
  164. @SaveLog
  165. @CheckPermit
  166. @PostMapping(value = "/saveRoam")
  167. public ResultData saveRoam(@RequestBody @Validated BaseDataParamVO param) throws Exception {
  168. return sceneProService.saveRoam(param);
  169. }
  170. /**
  171. * <p>
  172. 保存热点可见性的数据
  173. * </p>
  174. * @author dengsixing
  175. * @date 2022/8/1
  176. * @param param
  177. * @return com.fdkankan.web.response.ResultData
  178. **/
  179. @SaveLog
  180. @CheckPermit
  181. @PostMapping(value = "/saveTagsVisible")
  182. public ResultData saveTagsVisible(@RequestBody @Validated SaveTagsVisibleParamVO param) throws Exception {
  183. return sceneProService.saveTagsVisible(param);
  184. }
  185. /**
  186. * <p>
  187. 下载模型
  188. * </p>
  189. * @author dengsixing
  190. * @date 2022/8/1
  191. * @param num
  192. * @return com.fdkankan.web.response.ResultData
  193. **/
  194. @CheckPermit
  195. @PostMapping(value = "/downloadModel")
  196. public ResultData downloadModel(@RequestParam("num") String num) throws Exception {
  197. return sceneProService.downloadModel(num);
  198. }
  199. /**
  200. * <p>
  201. 上传模型
  202. * </p>
  203. * @author dengsixing
  204. * @date 2022/8/1
  205. * @param num
  206. * @param file
  207. * @return com.fdkankan.web.response.ResultData
  208. **/
  209. @SaveLog
  210. @CheckPermit
  211. @PostMapping(value = "/uploadModel")
  212. public ResultData uploadModel(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception {
  213. return sceneProService.uploadModel(num, file);
  214. }
  215. /**
  216. * <p>
  217. 保存关联全景图
  218. * </p>
  219. * @author dengsixing
  220. * @date 2022/8/1
  221. * @param num
  222. * @param sid
  223. * @param fileName
  224. * @param file
  225. * @return com.fdkankan.web.response.ResultData
  226. **/
  227. @SaveLog
  228. @CheckPermit
  229. @PostMapping(value = "/linkPan/upload")
  230. public ResultData uploadLinkPan(
  231. @RequestParam(value = "num") String num,
  232. @RequestParam(value = "sid") String sid,
  233. @RequestParam(value = "fileName") String fileName,
  234. @RequestParam("file") MultipartFile file) throws Exception{
  235. return sceneEditInfoService.uploadLinkPan(num, sid, fileName, file);
  236. }
  237. /**
  238. * <p>
  239. 保存关联全景图
  240. * </p>
  241. * @author dengsixing
  242. * @date 2022/8/1
  243. * @param param
  244. * @return com.fdkankan.web.response.ResultData
  245. **/
  246. @SaveLog
  247. @CheckPermit
  248. @PostMapping(value = "/linkPan/save")
  249. public ResultData saveLinkPan(@RequestBody @Validated SaveLinkPanParamVO param) throws Exception{
  250. return sceneEditInfoService.saveLinkPan(param);
  251. }
  252. /**
  253. * <p>
  254. 删除场景关联
  255. * </p>
  256. * @author dengsixing
  257. * @date 2022/8/1
  258. * @param param
  259. * @return com.fdkankan.web.response.ResultData
  260. **/
  261. @SaveLog
  262. @CheckPermit
  263. @PostMapping(value = "/linkPan/delete")
  264. public ResultData deleteLinkPan(@RequestBody @Validated DeleteLinkPanParamVO param) throws Exception {
  265. return sceneEditInfoService.deleteLinkPan(param);
  266. }
  267. /**
  268. * <p>
  269. 删除场景关联图标
  270. * </p>
  271. * @author dengsixing
  272. * @date 2022/8/1
  273. * @param param
  274. * @return com.fdkankan.web.response.ResultData
  275. **/
  276. @SaveLog
  277. @CheckPermit
  278. @PostMapping(value = "/styles/delete")
  279. public ResultData deleteStyles(@RequestBody @Validated DeleteStylesParamVO param) throws Exception {
  280. return sceneEditInfoService.deleteStyles(param);
  281. }
  282. /**
  283. * <p>
  284. 场景关联列表
  285. * </p>
  286. * @author dengsixing
  287. * @date 2022/8/1
  288. * @param num
  289. * @return com.fdkankan.web.response.ResultData
  290. **/
  291. @CheckPermit
  292. @PostMapping(value = "/linkPan/list")
  293. public ResultData listLinkPan(@RequestParam(value = "num") String num) throws Exception {
  294. return sceneEditInfoService.listLinkPan(num);
  295. }
  296. /**
  297. * <p>
  298. 保存户型图
  299. * </p>
  300. * @author dengsixing
  301. * @date 2022/1/20
  302. * @param param
  303. * @return com.fdkankan.web.response.ResultData
  304. **/
  305. @SaveLog
  306. @CheckPermit
  307. @PostMapping(value = "/cad/save")
  308. public ResultData saveCad(@RequestBody @Validated BaseDataParamVO param) throws Exception{
  309. return sceneEditInfoService.saveCad(param);
  310. }
  311. /**
  312. * <p>
  313. 保存户型图
  314. * </p>
  315. * @author dengsixing
  316. * @date 2022/1/20
  317. * @param param
  318. * @return com.fdkankan.web.response.ResultData
  319. **/
  320. @CheckPermit
  321. @GetMapping(value = "/cad/dxf/download")
  322. public ResultData saveCadDxf(@RequestParam String num) throws Exception{
  323. return sceneEditInfoService.downloadDxf(num);
  324. }
  325. /**
  326. * <p>
  327. 保存户型图
  328. * </p>
  329. * @author dengsixing
  330. * @date 2022/1/20
  331. * @param param
  332. * @return com.fdkankan.web.response.ResultData
  333. **/
  334. @CheckPermit
  335. @PostMapping(value = "/cad/dxf/upload")
  336. public ResultData uploadDxf(@RequestParam MultipartFile file, @RequestParam String num) throws Exception{
  337. return sceneEditInfoService.uploadDxf(file, num);
  338. }
  339. /**
  340. * <p>
  341. 重置户型图
  342. * </p>
  343. * @author dengsixing
  344. * @date 2022/2/16
  345. * @param num
  346. * @return
  347. **/
  348. @SaveLog
  349. @CheckPermit
  350. @PostMapping(value = "/cad/reset")
  351. public ResultData resetCad(@RequestParam(value = "num") String num) throws Exception {
  352. return sceneEditInfoService.resetCad(num);
  353. }
  354. /**
  355. * <p>
  356. 楼层户型重命名
  357. * </p>
  358. * @author dengsixing
  359. * @date 2022/2/16
  360. * @return
  361. **/
  362. @SaveLog
  363. @CheckPermit
  364. @PostMapping(value = "/cad/rename")
  365. public ResultData renameCad(@RequestBody @Validated RenameCadParamVO param) throws IOException {
  366. return sceneEditInfoService.renameCad(param);
  367. }
  368. /**
  369. * <p>
  370. 获取场景详情
  371. * </p>
  372. * @author dengsixing
  373. * @date 2022/8/1
  374. * @param param
  375. * @return com.fdkankan.scene.vo.SceneInfoVO
  376. **/
  377. @CheckPermit
  378. @GetMapping(value = "/getInfo")
  379. public SceneInfoVO getInfo(@Validated SceneInfoParamVO param) throws Exception{
  380. param.setReqType(SceneInfoReqType.EDIT.code());
  381. return sceneEditInfoService.getSceneInfo(param, request);
  382. }
  383. /**
  384. * <p>
  385. 上传全景图
  386. * </p>
  387. * @author dengsixing
  388. * @date 2022/2/16
  389. * @param num
  390. * @param file
  391. * @return java.util.List<java.lang.String>
  392. **/
  393. @SaveLog
  394. @CheckPermit
  395. @PostMapping(value = "/uploadPanorama")
  396. public ResultData uploadPanorama(@RequestParam(value = "num") String num,
  397. @RequestParam("file") MultipartFile file) throws Exception {
  398. return sceneEditInfoService.uploadPanorama(num, file);
  399. }
  400. /**
  401. * <p>
  402. 下载全景图
  403. * </p>
  404. * @author dengsixing
  405. * @date 2022/2/16
  406. * @return java.util.List<java.lang.String>
  407. **/
  408. @CheckPermit
  409. @PostMapping(value = "/downloadPanorama")
  410. public ResultData downloadPanorama(@RequestBody @Validated FileParamVO param) throws Exception {
  411. return sceneEditInfoService.downloadPanorama(param);
  412. }
  413. /**
  414. * <p>
  415. 保存视频盒子
  416. * </p>
  417. * @author dengsixing
  418. * @date 2022/2/18
  419. * @param param
  420. * @return com.fdkankan.web.response.ResultData
  421. **/
  422. @SaveLog
  423. @CheckPermit
  424. @PostMapping(value = "/video/box/save")
  425. public ResultData saveVideoBox(@RequestBody @Validated FileNameAndDataParamVO param) throws Exception {
  426. return sceneEditInfoService.saveVideoBox(param);
  427. }
  428. /**
  429. * <p>
  430. 删除视频盒子
  431. * </p>
  432. * @author dengsixing
  433. * @date 2022/2/18
  434. * @param param
  435. * @return com.fdkankan.web.response.ResultData
  436. **/
  437. @SaveLog
  438. @CheckPermit
  439. @PostMapping(value = "/video/box/delete")
  440. public ResultData deleteVideoBox(@RequestBody @Validated DeleteSidParamVO param) throws Exception {
  441. return sceneEditInfoService.deleteVideoBox(param);
  442. }
  443. /**
  444. * <p>
  445. 保存空间贴图
  446. * </p>
  447. * @author dengsixing
  448. * @date 2022/2/18
  449. * @param param
  450. * @return com.fdkankan.web.response.ResultData
  451. **/
  452. @SaveLog
  453. @CheckPermit
  454. @PostMapping(value = "/photo/box/save")
  455. public ResultData savePhotoBox(@RequestBody @Validated BaseDataParamVO param) throws Exception {
  456. return sceneEditInfoService.saveBoxPhoto(param);
  457. }
  458. /**
  459. * <p>
  460. 删除空间贴图
  461. * </p>
  462. * @author dengsixing
  463. * @date 2022/2/18
  464. * @param param
  465. * @return com.fdkankan.web.response.ResultData
  466. **/
  467. @SaveLog
  468. @CheckPermit
  469. @PostMapping(value = "/photo/box/delete")
  470. public ResultData deletePhotoBox(@RequestBody @Validated DeleteSidParamVO param) throws Exception {
  471. return sceneEditInfoService.deleteBoxPhoto(param);
  472. }
  473. /**
  474. * <p>
  475. 下载视频
  476. * </p>
  477. * @author dengsixing
  478. * @date 2022/2/23
  479. * @param param
  480. * @return com.fdkankan.scene.vo.DownloadVO
  481. **/
  482. @CheckPermit
  483. @PostMapping(value = "/downloadBallScreenVideo")
  484. public DownloadVO downloadBallScreenVideo(@RequestBody @Validated BallScreenVideoParamVO param){
  485. return sceneEditInfoService.downloadBallScreenVideo(param);
  486. }
  487. /**
  488. * <p>
  489. 上传视频
  490. * </p>
  491. * @author dengsixing
  492. * @date 2022/2/23
  493. * @param num
  494. * @param fileName
  495. * @param file
  496. * @return com.fdkankan.web.response.ResultData
  497. **/
  498. @SaveLog
  499. @CheckPermit
  500. @PostMapping(value = "/uploadBallScreenVideo")
  501. public ResultData uploadBallScreenVideo(
  502. @RequestParam("num") String num,
  503. @RequestParam("fileName") String fileName,
  504. @RequestParam("file") MultipartFile file) throws Exception {
  505. return sceneEditInfoService.uploadBallScreenVideo(num, fileName, file);
  506. }
  507. /**
  508. * <p>
  509. 上传文件
  510. * </p>
  511. * @author dengsixing
  512. * @date 2022/8/1
  513. * @param base64
  514. * @param fileName
  515. * @param bizType
  516. * @param files
  517. * @param num
  518. * @param type
  519. * @param uploadPath
  520. * @return java.lang.String
  521. **/
  522. @CheckPermit
  523. @RequestMapping(value = "/upload/files", method = RequestMethod.POST)
  524. public String uploads(@RequestParam(value = "base64",required = false) String base64,
  525. @RequestParam(value = "fileName",required = false) String fileName,
  526. @RequestParam(value = "bizType",required = false) String bizType,
  527. @RequestParam(value = "files",required = false) MultipartFile[] files,
  528. @RequestParam(value = "num",required = false) String num,
  529. @RequestParam(value = "type",required = false,defaultValue = "1") Integer type,
  530. @RequestParam(value = "uploadPath",required = false) String uploadPath) throws Exception {
  531. return sceneUploadService.uploads(base64,fileName,bizType,files,num,type,getToken(),uploadPath);
  532. }
  533. /**
  534. * <p>
  535. 用户自定义上传文本内容上传
  536. * </p>
  537. * @author dengsixing
  538. * @date 2022/8/1
  539. * @param param
  540. * @return java.lang.String
  541. **/
  542. @RequestMapping(value = "/upload/content", method = RequestMethod.POST)
  543. public String uploadContent(@RequestBody @Validated UploadContentParamVO param) throws Exception {
  544. return sceneUploadService.uploadContent(param);
  545. }
  546. /**
  547. * <p>
  548. 删除文件
  549. * </p>
  550. * @author dengsixing
  551. * @date 2022/2/23
  552. * @param paramVO
  553. * @return com.fdkankan.web.response.ResultData
  554. **/
  555. @SaveLog
  556. @CheckPermit
  557. @PostMapping("/delete/file")
  558. public ResultData delete(@RequestBody @Validated DeleteFileParamVO paramVO) throws Exception{
  559. return sceneUploadService.delete(paramVO);
  560. }
  561. /**
  562. * <p>
  563. 场景同步
  564. * </p>
  565. * @author dengsixing
  566. * @date 2022/8/1
  567. * @param num
  568. * @param type
  569. * @param floorPlanJson
  570. * @param ajkJson
  571. * @param cameraJson
  572. * @param files
  573. * @return com.fdkankan.web.response.ResultData
  574. **/
  575. @CheckPermit
  576. @PostMapping(value = "/sceneSync")
  577. public ResultData sceneSync(
  578. @RequestParam("num") String num,
  579. @RequestParam(value = "type", defaultValue = "ajk") String type,
  580. @RequestParam("floorPlanJson") String floorPlanJson,
  581. @RequestParam("ajkJson") String ajkJson,
  582. @RequestParam("cameraJson") String cameraJson,
  583. @RequestParam("files") MultipartFile[] files) throws Exception{
  584. return sceneEditInfoService.sceneSync(num, type, floorPlanJson, ajkJson, cameraJson, files);
  585. }
  586. /**
  587. * <p>
  588. 获取场景权限
  589. * </p>
  590. * @author dengsixing
  591. * @date 2022/8/1
  592. * @param num
  593. * @return com.fdkankan.scene.vo.SceneAuthVO
  594. **/
  595. @CheckPermit
  596. @PostMapping(value = "/getAuth")
  597. public SceneAuthVO getAuth(@RequestParam("num") String num) throws Exception{
  598. SceneAuthVO sceneAuthVO = sceneEditService.getAuth(num, this.getSsoUser());
  599. sceneAuthVO.setIsVip(true);
  600. sceneAuthVO.setSourceExpired(false);
  601. sceneAuthVO.setIsExpired(false);
  602. return sceneAuthVO;
  603. }
  604. /**
  605. * <p>
  606. 上传国际化文件
  607. * </p>
  608. * @author dengsixing
  609. * @date 2022/4/11
  610. * @param param
  611. * @return com.fdkankan.web.response.ResultData
  612. **/
  613. @PostMapping(value = "/locales")
  614. public ResultData locales(@RequestBody @Validated LocalesParamVO param) throws Exception {
  615. if("pro".equals(env)){
  616. throw new BusinessException(ErrorCode.HAVE_NO_RIGHT);
  617. }
  618. return sceneEditService.locales(param);
  619. }
  620. /**
  621. * <p>
  622. 保存导览
  623. * </p>
  624. * @author dengsixing
  625. * @date 2022/8/1
  626. * @param param
  627. * @return com.fdkankan.web.response.ResultData
  628. **/
  629. @SaveLog
  630. @CheckPermit
  631. @PostMapping(value = "/tour/save")
  632. public ResultData saveTour(@RequestBody @Validated BaseDataParamVO param) throws Exception{
  633. return sceneEditService.saveTour(param);
  634. }
  635. /**
  636. * <p>
  637. 删除导览
  638. * </p>
  639. * @author dengsixing
  640. * @date 2022/8/1
  641. * @param param
  642. * @return com.fdkankan.web.response.ResultData
  643. **/
  644. @SaveLog
  645. @CheckPermit
  646. @PostMapping(value = "/tour/delete")
  647. public ResultData deleteTour(@RequestBody @Validated BaseSceneParamVO param) throws Exception{
  648. return sceneEditService.deleteTour(param);
  649. }
  650. @SaveLog
  651. @CheckPermit
  652. @PostMapping(value = "/tour/video/upload")
  653. public ResultData uploadTourVideo(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception {
  654. return downloadTourVideoService.uploadTourVideo(num, file);
  655. }
  656. @CheckPermit
  657. @PostMapping(value = "/tour/video/download")
  658. public ResultData downloadTourVideo(@RequestParam("num") String num) throws Exception {
  659. return downloadTourVideoService.downloadTourVideo(num);
  660. }
  661. /**
  662. * <p>
  663. 添加马赛克
  664. * </p>
  665. * @author dengsixing
  666. * @date 2022/8/1
  667. * @param param
  668. * @return com.fdkankan.web.response.ResultData
  669. **/
  670. @SaveLog
  671. @CheckPermit
  672. @PostMapping(value = "/mosaics/add")
  673. public ResultData addMosaics(@RequestBody @Validated BaseDataParamVO param) throws Exception{
  674. return sceneEditInfoService.addMosaics(param);
  675. }
  676. /**
  677. * <p>
  678. 删除马赛克
  679. * </p>
  680. * @author dengsixing
  681. * @date 2022/8/1
  682. * @param param
  683. * @return com.fdkankan.web.response.ResultData
  684. **/
  685. @SaveLog
  686. @CheckPermit
  687. @PostMapping(value = "/mosaics/delete")
  688. public ResultData deleteMosaics(@RequestBody @Validated DeleteMosaicParamVO param) throws Exception{
  689. return sceneEditInfoService.deleteMosaics(param);
  690. }
  691. /**
  692. * <p>
  693. 马赛克列表
  694. * </p>
  695. * @author dengsixing
  696. * @date 2022/8/1
  697. * @param param
  698. * @return com.fdkankan.web.response.ResultData
  699. **/
  700. @CheckPermit
  701. @PostMapping(value = "/mosaics/list")
  702. public ResultData getMosaicList(@RequestBody @Validated BaseSceneParamVO param) throws Exception{
  703. return ResultData.ok(sceneEditInfoService.getMosaicList(param.getNum()));
  704. }
  705. /**
  706. * <p>
  707. 添加水印
  708. * </p>
  709. * @author dengsixing
  710. * @date 2022/8/1
  711. * @param param
  712. * @return com.fdkankan.web.response.ResultData
  713. **/
  714. @SaveLog
  715. @CheckPermit
  716. @PostMapping(value = "/waterMark/add")
  717. public ResultData addWaterMark(@RequestBody @Validated BaseFileParamVO param) throws Exception{
  718. return sceneEditInfoService.addWaterMark(param);
  719. }
  720. /**
  721. * <p>
  722. 删除水印
  723. * </p>
  724. * @author dengsixing
  725. * @date 2022/8/1
  726. * @param param
  727. * @return com.fdkankan.web.response.ResultData
  728. **/
  729. @SaveLog
  730. @CheckPermit
  731. @PostMapping(value = "/waterMark/delete")
  732. public ResultData deleteWaterMark(@RequestBody @Validated BaseFileParamVO param) throws Exception{
  733. return sceneEditInfoService.deleteWaterMark(param);
  734. }
  735. /**
  736. * 删除水印
  737. * @param param
  738. * @return
  739. * @throws Exception
  740. */
  741. @SaveLog
  742. @CheckPermit
  743. @PostMapping(value = "/filter/save")
  744. public ResultData saveFilter(@RequestBody @Validated SaveFiltersParamVO param) throws Exception{
  745. return sceneEditInfoService.saveFilter(param);
  746. }
  747. /**
  748. * 删除水印
  749. * @param param
  750. * @return
  751. * @throws Exception
  752. */
  753. @CheckPermit
  754. @PostMapping(value = "/filter/list")
  755. public ResultData listFilter(@RequestBody @Validated BaseSceneParamVO param) throws Exception{
  756. return sceneEditInfoService.listFilter(param);
  757. }
  758. /**
  759. * <p>
  760. 添加监控
  761. * </p>
  762. * @author dengsixing
  763. * @date 2022/9/20
  764. * @param param
  765. * @return com.fdkankan.common.response.ResultData
  766. **/
  767. @SaveLog
  768. @CheckPermit
  769. @PostMapping("/surveillance/save")
  770. ResultData saveSurveillance(@RequestBody @Validated SurveillanceParamVO param) throws Exception {
  771. return surveillanceService.saveSurveillance(param);
  772. }
  773. @SaveLog
  774. @CheckPermit
  775. @PostMapping("/surveillance/delete")
  776. public ResultData deleteSurveillance(@RequestBody @Validated BaseSidParamVO param) throws IOException {
  777. return surveillanceService.deleteSurveillance(param);
  778. }
  779. @CheckPermit
  780. @PostMapping("/surveillance/list")
  781. public ResultData listSurveillance(@RequestBody @Validated BaseSceneParamVO param){
  782. return ResultData.ok(surveillanceService.listSurveillance(param.getNum()));
  783. }
  784. /**
  785. * <p>
  786. 上传空间模型
  787. * </p>
  788. * @author dengsixing
  789. * @date 2022/10/19
  790. * @param num
  791. * @param sid
  792. * @param file
  793. * @return com.fdkankan.common.response.ResultData
  794. **/
  795. @SaveLog
  796. @CheckPermit
  797. @PostMapping("/model/box/upload")
  798. public ResultData uploadBoxModel(
  799. @RequestParam(value = "num") String num,
  800. @RequestParam(value = "sid") String sid,
  801. @RequestParam(value = "file") MultipartFile file) throws Exception {
  802. return boxModelService.uploadBoxModel(num, sid, file);
  803. }
  804. /**
  805. * <p>
  806. 保存空间模型
  807. * </p>
  808. * @author dengsixing
  809. * @date 2022/10/19
  810. * @param param
  811. * @return com.fdkankan.common.response.ResultData
  812. **/
  813. @SaveLog
  814. @CheckPermit
  815. @PostMapping("/model/box/save")
  816. public ResultData saveBoxModel(@RequestBody @Validated BaseJsonDataParamVO param) throws Exception {
  817. return boxModelService.saveBoxModel(param);
  818. }
  819. /**
  820. * <p>
  821. 删除空间模型
  822. * </p>
  823. * @author dengsixing
  824. * @date 2022/10/19
  825. * @param param
  826. * @return com.fdkankan.common.response.ResultData
  827. **/
  828. @SaveLog
  829. @CheckPermit
  830. @PostMapping("/model/box/delete")
  831. public ResultData delBoxModel(@RequestBody @Validated DeleteSidParamVO param) throws Exception {
  832. return boxModelService.deleteBoxModel(param);
  833. }
  834. /**
  835. * 上传二维码和分享的logo
  836. * @return
  837. */
  838. @SaveLog
  839. @CheckPermit
  840. @PostMapping(value = "/uploadShareLogo")
  841. public ResultData uploadShareLogo(@RequestParam("num") String num, @RequestParam("file") MultipartFile file) throws Exception {
  842. return scenePlusService.uploadShareLogo(num, file);
  843. }
  844. /**
  845. * 获取编辑器版本信息
  846. * @return
  847. */
  848. @GetMapping("/getServiceUpTip")
  849. public ResultData getServiceUpTip(){
  850. return sceneEditService.getServiceUpTip();
  851. }
  852. /**
  853. * 保存或者修改指示牌
  854. * @param param
  855. * @return
  856. * @throws Exception
  857. */
  858. @SaveLog
  859. @CheckPermit
  860. @PostMapping("/billboards/save")
  861. public ResultData saveBillboards(@RequestBody @Validated BaseJsonArrayParamVO param) throws Exception {
  862. return sceneEditInfoExtService.saveBillboards(param);
  863. }
  864. /**
  865. * 删除指示牌
  866. * @param param
  867. * @return
  868. * @throws Exception
  869. */
  870. @SaveLog
  871. @CheckPermit
  872. @PostMapping("/billboards/delete")
  873. public ResultData deleteBillboards(@RequestBody @Validated DeleteSidListParamVO param) throws Exception {
  874. return sceneEditInfoExtService.deleteBillboards(param);
  875. }
  876. /**
  877. * 获取指示牌列表
  878. * @param param
  879. * @return
  880. * @throws Exception
  881. */
  882. @CheckPermit
  883. @PostMapping("/billboards/list")
  884. public ResultData deleteBillboards(@RequestBody @Validated BaseSceneParamVO param) throws Exception {
  885. return ResultData.ok(sceneEditInfoExtService.listBillboards(param));
  886. }
  887. /**
  888. * 获取指示牌列表
  889. * @param param
  890. * @return
  891. * @throws Exception
  892. */
  893. @SaveLog
  894. @CheckPermit
  895. @PostMapping("/billboards/styles/delete")
  896. public ResultData deleteBillboards(@RequestBody @Validated DeleteStylesParamVO param) throws Exception {
  897. return ResultData.ok(sceneEditInfoExtService.deleteBillboardsStyles(param));
  898. }
  899. @CheckPermit
  900. @PostMapping(value = "/cutModel/save")
  901. public ResultData saveCutModel(@RequestBody @Validated BaseJsonArrayParamVO param) throws Exception {
  902. return cutModelService.saveCutModel(param);
  903. }
  904. @CheckPermit
  905. @PostMapping(value = "/cutModel/list")
  906. public ResultData listCutModel(@RequestBody @Validated BaseSceneParamVO param) throws Exception {
  907. return ResultData.ok(cutModelService.listCutModel(param));
  908. }
  909. @CheckPermit
  910. @PostMapping(value = "/cutModel/delete")
  911. public ResultData deleteCutModel(@RequestBody @Validated DeleteSidListParamVO param) throws Exception {
  912. return cutModelService.deleteCutModel(param);
  913. }
  914. @CheckPermit
  915. @GetMapping(value = "/point/getLatAndLon")
  916. public ResultData getPointLatAndLon(@RequestParam String num) throws Exception {
  917. return ResultData.ok(visionService.getPointLatAndLon(num));
  918. }
  919. }