TestController.java 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. package com.fdkankan.scene.controller;
  2. import cn.hutool.core.collection.ConcurrentHashSet;
  3. import com.alibaba.csp.sentinel.annotation.SentinelResource;
  4. import com.alibaba.druid.pool.DruidDataSource;
  5. import com.alibaba.fastjson.JSONObject;
  6. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  7. import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
  8. import com.fdkankan.common.constant.ConstantFilePath;
  9. import com.fdkankan.common.exception.BusinessException;
  10. import com.fdkankan.common.response.ResultData;
  11. import com.fdkankan.common.util.CreateObjUtil;
  12. import com.fdkankan.common.util.FileUtils;
  13. import com.fdkankan.common.util.MatrixToImageWriterUtil;
  14. import com.fdkankan.common.util.SpringUtil;
  15. import com.fdkankan.common.util.StrExtUtil;
  16. import com.fdkankan.mq.message.BuildSceneMqMessage;
  17. import com.fdkankan.mq.util.RocketMQProducer;
  18. import com.fdkankan.platform.api.feign.PlatformGoodsClient;
  19. import com.fdkankan.platform.api.feign.PlatformUserClient;
  20. import com.fdkankan.platform.api.vo.Camera;
  21. import com.fdkankan.platform.api.vo.Company;
  22. import com.fdkankan.platform.api.vo.User;
  23. import com.fdkankan.redis.constant.RedisKey;
  24. import com.fdkankan.redis.constant.RedisLockKey;
  25. import com.fdkankan.redis.util.RedisLockUtil;
  26. import com.fdkankan.redis.util.RedisUtil;
  27. import com.fdkankan.scene.entity.Folder;
  28. import com.fdkankan.scene.listener.TestListener;
  29. import com.fdkankan.scene.service.IFolderService;
  30. import com.fdkankan.scene.service.IScene3dNumService;
  31. import com.fdkankan.scene.service.ISceneService;
  32. import com.fdkankan.scene.vo.SceneVO;
  33. import com.google.common.collect.Lists;
  34. import java.util.concurrent.TimeUnit;
  35. import lombok.extern.slf4j.Slf4j;
  36. import org.springframework.beans.factory.annotation.Autowired;
  37. import org.springframework.beans.factory.annotation.Value;
  38. import org.springframework.cloud.context.config.annotation.RefreshScope;
  39. import org.springframework.data.redis.connection.RedisConnectionFactory;
  40. import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
  41. import org.springframework.data.redis.core.RedisTemplate;
  42. import org.springframework.transaction.annotation.Transactional;
  43. import org.springframework.web.bind.annotation.GetMapping;
  44. import org.springframework.web.bind.annotation.PostMapping;
  45. import org.springframework.web.bind.annotation.RequestMapping;
  46. import org.springframework.web.bind.annotation.RestController;
  47. import javax.sql.DataSource;
  48. import java.io.File;
  49. import java.sql.Connection;
  50. import java.sql.SQLException;
  51. import java.util.HashMap;
  52. import java.util.List;
  53. import java.util.Map;
  54. import java.util.UUID;
  55. @RefreshScope
  56. @RestController
  57. @RequestMapping("/api/scene/test")
  58. @Slf4j
  59. public class TestController {
  60. @Autowired
  61. RedisUtil redisUtil;
  62. @Autowired
  63. IFolderService folderService;
  64. @GetMapping("/testdb")
  65. public List testdb(){
  66. return folderService.list();
  67. }
  68. @Autowired
  69. private PlatformUserClient platformUserClient;
  70. @Autowired
  71. private PlatformGoodsClient platformGoodsClient;
  72. @Autowired
  73. private RocketMQProducer rocketMQProducer;
  74. @Autowired
  75. private IScene3dNumService scene3dNumService;
  76. @Autowired
  77. RedisTemplate redisTemplate;
  78. @Autowired
  79. RedisLockUtil redisLockUtil;
  80. @PostMapping("/test")
  81. public String test(String path, String buildType) throws Exception {
  82. // JSONObject dataJson = new JSONObject();
  83. // dataJson.put("obj2txt", true);
  84. // dataJson.put("split_type", "SPLIT_V6");
  85. // dataJson.put("data_describe", "double spherical");
  86. // dataJson.put("skybox_type", "SKYBOX_V5");
  87. // FileUtils.writeFile(path + "/data.json", dataJson.toString());
  88. //
  89. // if("V2".equals(buildType)){
  90. // CreateObjUtil.objToTxt(path , "1");
  91. // }
  92. // if("V3".equals(buildType)){
  93. // CreateObjUtil.build3dModel(path , "1");
  94. // }
  95. File file = new File(
  96. "/mnt/data/06f6aa555/851814909602693120/4898cab06133_202106081015476130_ajk/results/upload.json");
  97. log.info("文件="+file.getAbsolutePath());
  98. log.info("文件是否存在"+file.exists());
  99. return "123";
  100. }
  101. public static void main(String[] args) throws Exception {
  102. MatrixToImageWriterUtil.createQRCode("http://baidu.com" + "123123", ConstantFilePath.BASE_PATH + File.separator + "sceneQRcode/"+"123123"+".png",
  103. null);
  104. // MatrixToImageWriterUtil.createQRCode("http://baidu.com" + "123123", ConstantFilePath.BASE_PATH + File.separator + "sceneQRcode/"+"123123"+".png",
  105. // ConstantFilePath.SCENE_PATH + "images/images" + "123123" + "/QRShareLogo.png");
  106. }
  107. @GetMapping("/testSetStr")
  108. public void testSetStr() throws Exception {
  109. redisUtil.set("testIncr", "1");
  110. redisUtil.incr("testIncr",1);
  111. String testIncr = redisUtil.get("testIncr");
  112. System.out.println(testIncr);
  113. }
  114. @GetMapping("/testGetStr")
  115. public String testGetStr() throws Exception {
  116. boolean b = redisUtil.hasKey("90c82bdac_202201050951313830");
  117. String abc = (String)redisUtil.get("abc");
  118. return "123";
  119. }
  120. @GetMapping("/testSetObject")
  121. public boolean testSetObject() throws Exception {
  122. // User user = new User();
  123. // user.setCity("珠海");
  124. // user.setId(123l);
  125. //
  126. // String jsons = JSON.toJSONString(user);
  127. //
  128. // redisTemplate.opsForValue().set("test:66", jsons);
  129. // redisTemplate.opsForValue().set("test:67", jsons);
  130. ResultData<Camera> cameraById = platformGoodsClient.getCameraById(111L);
  131. Camera data = cameraById.getData();
  132. ResultData<Company> companyById = platformUserClient.getCompanyById(111L);
  133. return true;
  134. }
  135. //
  136. @GetMapping("/testGetObject")
  137. public User testGetObject() throws Exception {
  138. String test12 = redisUtil.get("test66");
  139. User user = JSONObject.parseObject(test12, User.class);
  140. return user;
  141. }
  142. @GetMapping("/testSetList")
  143. public boolean testSetList() throws Exception {
  144. List<String> users = Lists.newArrayList();
  145. users.add("sdfsdf");
  146. users.add("dfgdfg");
  147. return redisUtil.lRightPushAll("test5595jj", users);
  148. }
  149. @GetMapping("/testGetList")
  150. public List<String> testGetList() throws Exception {
  151. return redisUtil.lGet("test5595jj", 0, -1);
  152. }
  153. @GetMapping("/testSetMap")
  154. public boolean testSetMap() throws Exception {
  155. Map<String, User> userMap = new HashMap<>();
  156. User user1 = new User();
  157. user1.setCity("珠海");
  158. user1.setId(123l);
  159. User user2 = new User();
  160. user2.setCity("广州");
  161. user2.setId(124l);
  162. userMap.put("user1", user1);
  163. userMap.put("user2", user2);
  164. return redisUtil.hmset("userMap", userMap);
  165. }
  166. @GetMapping("/testGetMap")
  167. public Map<String ,User> testGetMap() throws Exception {
  168. return redisUtil.hmget("userMap");
  169. }
  170. @Autowired
  171. ISceneService sceneService;
  172. @GetMapping("/testSchedule")
  173. public void testSchedule(){
  174. sceneService.updatePv();
  175. }
  176. @Value("${rocketmq.build-scene.topicName.topic-modeling-a}")
  177. private String topicModelingA;
  178. @GetMapping("/testMQ")
  179. public void testMQ(int count){
  180. // SceneVO body = SceneVO.builder().buildType("123").childName("sdfsdfsdf").dataSource("sadfdhgf").id(1213L).build();
  181. for(int i = 1; i <= count; i++){
  182. rocketMQProducer.sendOneWay("test_topic_dsx", "消息体" + i);
  183. }
  184. }
  185. @GetMapping("/testAsynMQ")
  186. public void testAsynMQ(){
  187. SceneVO body = SceneVO.builder().buildType("123").childName("sdfsdfsdf").dataSource("sadfdhgf").id(1213L).build();
  188. rocketMQProducer.asyncSend("abc","tag3", UUID.randomUUID().toString(), body,null,5000l);
  189. }
  190. @GetMapping("/testsenOnway")
  191. public void testsenOnway(){
  192. SceneVO body = SceneVO.builder().buildType("123").childName("sdfsdfsdf").dataSource("sadfdhgf").id(1213L).build();
  193. rocketMQProducer.sendOneWay("qqq","tag6", UUID.randomUUID().toString(), body);
  194. }
  195. @RefreshScope
  196. @GetMapping("/testsenOnway1")
  197. public void testsenOnway1(){
  198. SceneVO body = SceneVO.builder().buildType("123").childName("sdfsdfsdf").dataSource("sadfdhgf").id(1213L).build();
  199. rocketMQProducer.sendOneWay(topicModelingA, null);
  200. }
  201. @RefreshScope
  202. @GetMapping("/testResult")
  203. public void testResult(){
  204. // rocketMQProducer.sendOneWay("topic_modeling_a_result", BuildSceneResultMqMessage.builder().buildSuccess(true).cameraType("3").build());
  205. String dsfsdf = (String) redisUtil.get("dsfsdf");
  206. System.out.println(2134);
  207. }
  208. @Autowired
  209. DataSource dataSource;
  210. @GetMapping("/testDatasource")
  211. public void testDatasource() throws SQLException {
  212. // Connection connection = dataSource.getConnection();
  213. // System.out.println(connection);
  214. System.out.println(dataSource.getClass());
  215. DruidDataSource druidDataSource = (DruidDataSource) dataSource;
  216. System.out.println(druidDataSource.getName());
  217. System.out.println("druidDataSource 数据源最大连接数:" + druidDataSource.getMaxActive());
  218. System.out.println("druidDataSource 数据源初始化连接数:" + druidDataSource.getInitialSize());
  219. // connection.close();
  220. }
  221. }