LaserService.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. package com.fdkankan.fusion.httpClient;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import com.alibaba.fastjson.JSONArray;
  4. import com.alibaba.fastjson.JSONObject;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.fdkankan.fusion.httpClient.client.LaserClient;
  7. import com.fdkankan.fusion.httpClient.request.SSDownSceneParam;
  8. import com.fdkankan.fusion.httpClient.request.SSDownSceneParamLocal;
  9. import com.fdkankan.fusion.httpClient.response.FdkkResponse;
  10. import com.fdkankan.fusion.httpClient.response.SSDownSceneVo;
  11. import com.fdkankan.redis.util.RedisUtil;
  12. import com.google.common.collect.Lists;
  13. import lombok.extern.slf4j.Slf4j;
  14. import org.apache.commons.lang3.StringUtils;
  15. import org.springframework.beans.BeanUtils;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.beans.factory.annotation.Value;
  18. import org.springframework.http.HttpStatus;
  19. import org.springframework.stereotype.Service;
  20. import java.io.File;
  21. import java.util.*;
  22. import java.util.stream.Collectors;
  23. @Service
  24. @Slf4j
  25. public class LaserService {
  26. @Autowired
  27. LaserClient laserClient;
  28. public SSDownSceneVo downOfflineSceneStatus(String num) {
  29. try {
  30. SSDownSceneVo vo ;
  31. SSDownSceneParam param = new SSDownSceneParam();
  32. param.setSceneCode(num);
  33. FdkkResponse responseEntity = laserClient.downOfflineSceneStatus(param);
  34. if( responseEntity.getCode() != HttpStatus.OK.value()){
  35. log.error("downOfflineSceneStatus-根据场景码获取激光转台下载状态失败:{}",responseEntity);
  36. return null;
  37. }
  38. vo = JSONObject.parseObject(JSONObject.toJSONString(responseEntity.getData()), SSDownSceneVo.class);
  39. return vo;
  40. }catch (Exception e){
  41. log.error("downOfflineSceneStatus-根据场景码获取激光转台下载状态失败!",e);
  42. }
  43. return null ;
  44. }
  45. public SSDownSceneVo downOfflineScene(String num) {
  46. try {
  47. SSDownSceneVo vo ;
  48. SSDownSceneParam param = new SSDownSceneParam();
  49. param.setSceneCode(num);
  50. FdkkResponse responseEntity = laserClient.downOfflineScene(param);
  51. if( responseEntity.getCode() != HttpStatus.OK.value()){
  52. log.error("downOfflineScene-根据场景码获取激光转台下载失败:{}",responseEntity);
  53. return null;
  54. }
  55. vo = JSONObject.parseObject(JSONObject.toJSONString(responseEntity.getData()), SSDownSceneVo.class);
  56. return vo ;
  57. }catch (Exception e){
  58. log.error("downOfflineScene-根据场景码获取激光转台下载状态失败!",e);
  59. }
  60. return null ;
  61. }
  62. public FdkkResponse getSceneInfo(String num) {
  63. try {
  64. return laserClient.getSceneInfo(num);
  65. }catch (Exception e){
  66. log.info("获取激光场景信息失败getSceneInfo-error:{}",num,e);
  67. }
  68. return null;
  69. }
  70. public FdkkResponse sceneLocInfo(String num) {
  71. try {
  72. return laserClient.sceneLocInfo(num,new HashMap<>());
  73. }catch (Exception e){
  74. log.info("获取激光场景信息失败getSceneInfo-error:{}",num,e);
  75. }
  76. return null;
  77. }
  78. public FdkkResponse getSceneInfoQuery(String num,String id) {
  79. try {
  80. return laserClient.getSceneInfoQuery(num,id);
  81. }catch (Exception e){
  82. log.info("获取激光场景信息失败getSceneInfo-error:{}",num,e);
  83. }
  84. return null;
  85. }
  86. public void rebuildOffline(String buildPath,Boolean isLaser,Integer id) {
  87. try {
  88. SSDownSceneParamLocal param = new SSDownSceneParamLocal();
  89. param.setId(id);
  90. param.setResultPath(buildPath+ File.separator);
  91. param.setOfflineType(isLaser ? 1 :2);
  92. param.setFusion(true);
  93. laserClient.downOfflineSceneNew(param);
  94. }catch (Exception e){
  95. log.info("获取激光场景信息失败rebuildOffline-error:{},{},{}",buildPath,isLaser,id,e);
  96. }
  97. }
  98. public FdkkResponse getDataSetAndControlPoint(String num) {
  99. try {
  100. return laserClient.getDataSetAndControlPoint(num);
  101. }catch (Exception e){
  102. log.info("获取激光场景信息失败getSceneInfo-error:{}",num,e);
  103. }
  104. return null;
  105. }
  106. }