SceneServiceImpl.java 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package com.fdkankan.tk.service.impl;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.fdkankan.tk.common.PageInfo;
  6. import com.fdkankan.tk.common.ResultCode;
  7. import com.fdkankan.tk.common.util.JwtUtil;
  8. import com.fdkankan.tk.exception.BusinessException;
  9. import com.fdkankan.tk.httpClient.client.FdKKClient;
  10. import com.fdkankan.tk.httpClient.response.FdkkResponse;
  11. import com.fdkankan.tk.request.SceneParam;
  12. import com.fdkankan.tk.response.SceneProEntityVo;
  13. import com.fdkankan.tk.response.SceneVo;
  14. import com.fdkankan.tk.service.IScenePlusService;
  15. import com.fdkankan.tk.service.ISceneService;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.stereotype.Service;
  18. import javax.annotation.Resource;
  19. import java.util.ArrayList;
  20. import java.util.List;
  21. @Service
  22. public class SceneServiceImpl implements ISceneService {
  23. @Resource
  24. FdKKClient fdKKClient;
  25. @Autowired
  26. IScenePlusService scenePlusService;
  27. @Override
  28. public List<SceneVo> getListByNumList(List<String> numList) {
  29. SceneParam param = new SceneParam();
  30. param.setPageSize(99999);
  31. param.setNumList(numList);
  32. Page<SceneVo> voPage = scenePlusService.pageList(param);
  33. for (SceneVo vo : voPage.getRecords()) {
  34. vo.setStatus( setLaserStatus(vo.getStatus(), vo.getPayStatus()));
  35. }
  36. return voPage.getRecords();
  37. }
  38. private JSONArray fdkkList(SceneParam param ){
  39. FdkkResponse fdkkResponse = fdKKClient.sceneList(param);
  40. if (fdkkResponse.getCode() != 0) {
  41. return new JSONArray();
  42. }
  43. PageInfo pageInfo = JSONObject.parseObject(JSONObject.toJSONString(fdkkResponse.getData()), PageInfo.class);
  44. return JSONArray.parseArray(JSONObject.toJSONString(pageInfo.getList()));
  45. }
  46. @Override
  47. public PageInfo pageList(SceneParam param, String token) {
  48. String userName = JwtUtil.getUserName(token);
  49. param.setUserName(userName);
  50. Page<SceneVo> voPage = scenePlusService.pageList(param);
  51. for (SceneVo vo : voPage.getRecords()) {
  52. vo.setStatus( setLaserStatus(vo.getStatus(), vo.getPayStatus()));
  53. }
  54. return PageInfo.PageInfo(voPage);
  55. }
  56. /**
  57. * 四维看看返回数据格式转换
  58. */
  59. private List<SceneVo> overSceneVo(JSONArray list) {
  60. List<SceneVo> sceneVoList = new ArrayList<>();
  61. for (Object obj : list) {
  62. String res = JSONObject.toJSONString(obj);
  63. SceneProEntityVo fdkkScenePlusVo = JSONObject.parseObject(res, SceneProEntityVo.class);
  64. SceneVo sceneVo = new SceneVo();
  65. sceneVo.setId(fdkkScenePlusVo.getId());
  66. sceneVo.setBuildObjStatus(0);
  67. sceneVo.setCreateTime(fdkkScenePlusVo.getCreateTime());
  68. sceneVo.setName(fdkkScenePlusVo.getSceneName());
  69. sceneVo.setNum(fdkkScenePlusVo.getNum());
  70. sceneVo.setPayStatus(1);
  71. sceneVo.setSceneName(fdkkScenePlusVo.getSceneName());
  72. sceneVo.setSnCode(fdkkScenePlusVo.getSnCode());
  73. sceneVo.setStatus(setLaserStatus(fdkkScenePlusVo.getStatus(), fdkkScenePlusVo.getPayStatus()));
  74. sceneVo.setThumb(fdkkScenePlusVo.getThumb());
  75. sceneVo.setTitle(fdkkScenePlusVo.getSceneName());
  76. sceneVo.setViewCount(fdkkScenePlusVo.getViewCount());
  77. sceneVo.setIsLaser(false);
  78. sceneVo.setType(fdkkScenePlusVo.getSceneType());
  79. if (fdkkScenePlusVo.getUserId() == null) {
  80. sceneVo.setBind(false);
  81. }
  82. sceneVoList.add(sceneVo);
  83. }
  84. return sceneVoList;
  85. }
  86. private Integer setLaserStatus(Integer status,Integer payStatus){
  87. //深时状态,-1:场景被删 0:计算中 1计算失败 2计算成功 3封存 4生成OBJ中
  88. if(payStatus != 1){ //封存
  89. return 3;
  90. }
  91. if(status == -1){
  92. return 1;
  93. }
  94. if(status == -2){
  95. return 2;
  96. }
  97. if(status == 1){
  98. return 2;
  99. }
  100. return status;
  101. }
  102. }