Explorar o código

redis token 兼容v4

wuweihao %!s(int64=2) %!d(string=hai) anos
pai
achega
05c9b8efcc

+ 105 - 0
720yun_fd_manage/gis_application/src/main/resources/application-locPro.properties

@@ -0,0 +1,105 @@
+
+#DB
+spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
+spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
+
+
+#pro
+spring.datasource.druid.url=jdbc:mysql://8.129.209.131:3306/${project.name}?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
+spring.datasource.druid.username=root
+spring.datasource.druid.password=4dkk2020cuikuan%
+
+
+# \u521D\u59CB\u8FDE\u63A5\u6570
+spring.datasource.druid.initial-size=5
+# \u6700\u5C0F\u8FDE\u63A5\u6C60\u6570\u91CF
+spring.datasource.druid.min-idle=10
+# \u6700\u5927\u8FDE\u63A5\u6C60\u6570\u91CF
+spring.datasource.druid.max-active=20
+# \u914D\u7F6E\u83B7\u53D6\u8FDE\u63A5\u7B49\u5F85\u8D85\u65F6\u7684\u65F6\u95F4
+spring.datasource.druid.max-wait=60000
+# \u914D\u7F6E\u95F4\u9694\u591A\u4E45\u624D\u8FDB\u884C\u4E00\u6B21\u68C0\u6D4B\uFF0C\u68C0\u6D4B\u9700\u8981\u5173\u95ED\u7684\u7A7A\u95F2\u8FDE\u63A5\uFF0C\u5355\u4F4D\u662F\u6BEB\u79D2
+spring.datasource.druid.time-between-eviction-runs-millis=60000
+# \u914D\u7F6E\u4E00\u4E2A\u8FDE\u63A5\u5728\u6C60\u4E2D\u6700\u5C0F\u751F\u5B58\u7684\u65F6\u95F4\uFF0C\u5355\u4F4D\u662F\u6BEB\u79D2
+spring.datasource.druid.min-evictable-idle-time-millis=30000
+# \u914D\u7F6E\u4E00\u4E2A\u8FDE\u63A5\u5728\u6C60\u4E2D\u6700\u5927\u751F\u5B58\u7684\u65F6\u95F4\uFF0C\u5355\u4F4D\u662F\u6BEB\u79D2
+spring.datasource.druid.max-evictable-idle-time-millis=90000
+# \u914D\u7F6E\u68C0\u6D4B\u8FDE\u63A5\u662F\u5426\u6709\u6548
+spring.datasource.druid.validation-query=SELECT 1 FROM DUAL
+spring.datasource.druid.test-while-idle=true
+spring.datasource.druid.test-on-borrow=false
+spring.datasource.druid.test-on-return=false
+spring.datasource.druid.web-stat-filter.enabled=true
+spring.datasource.druid.stat-view-servlet.enabled=true
+
+
+# Redis\u6570\u636E\u5E93\u7D22\u5F15\uFF08\u9ED8\u8BA4\u4E3A0\uFF09
+spring.redis.database=0
+#spring.redis.host=127.0.0.1
+spring.redis.host=8.129.209.131
+
+spring.redis.port=6379
+spring.redis.password=
+# \u8FDE\u63A5\u8D85\u65F6\u65F6\u95F4 \u5355\u4F4D ms\uFF08\u6BEB\u79D2\uFF09
+spring.redis.timeout=3000ms
+# \u8FDE\u63A5\u6C60\u4E2D\u7684\u6700\u5927\u7A7A\u95F2\u8FDE\u63A5\uFF0C\u9ED8\u8BA4\u503C\u4E5F\u662F8\u3002
+spring.redis.jedis.pool.max-idle=8
+#\u8FDE\u63A5\u6C60\u4E2D\u7684\u6700\u5C0F\u7A7A\u95F2\u8FDE\u63A5\uFF0C\u9ED8\u8BA4\u503C\u4E5F\u662F0\u3002
+spring.redis.jedis.pool.min-idle=0
+# \u5982\u679C\u8D4B\u503C\u4E3A-1\uFF0C\u5219\u8868\u793A\u4E0D\u9650\u5236\uFF1B\u5982\u679Cpool\u5DF2\u7ECF\u5206\u914D\u4E86maxActive\u4E2Ajedis\u5B9E\u4F8B\uFF0C\u5219\u6B64\u65F6pool\u7684\u72B6\u6001\u4E3Aexhausted(\u8017\u5C3D)\u3002
+spring.redis.jedis.pool.max-active=8
+# \u7B49\u5F85\u53EF\u7528\u8FDE\u63A5\u7684\u6700\u5927\u65F6\u95F4\uFF0C\u5355\u4F4D\u6BEB\u79D2\uFF0C\u9ED8\u8BA4\u503C\u4E3A-1\uFF0C\u8868\u793A\u6C38\u4E0D\u8D85\u65F6\u3002\u5982\u679C\u8D85\u8FC7\u7B49\u5F85\u65F6\u95F4\uFF0C\u5219\u76F4\u63A5\u629B\u51FAJedisConnectionException
+spring.redis.jedis.pool.max-wait=-1ms
+
+
+# rabbitmq \u96C6\u7FA4\u6A21\u5F0F
+spring.rabbitmq.address=120.25.146.52:5672
+spring.rabbitmq.username=guest
+spring.rabbitmq.password=guest
+spring.rabbitmq.virtual-host=/
+spring.rabbitmq.connection-timeout=15000
+# confirm\u0123\u02BD
+spring.rabbitmq.publisher-confirms=true
+# return\uFFFD\uFFFD\uFFFD\uFFFD
+spring.rabbitmq.publisher-returns=true
+# \uFFFD\uFFFDreturn\uFFFD\uFFFD\uFFFD\u01BD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u00F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD
+spring.rabbitmq.template.mandatory=true
+
+
+# pro oss info
+oss.point=http://oss-cn-shenzhen.aliyuncs.com
+oss.key=LTAIUrvuHqj8pvry
+oss.secrecy=JLOVl0k8Ke0aaM8nLMMiUAZ3EiiqI4
+oss.bucket=4dkankan
+oss.type=oss
+oss.file.path=${project.name}/
+# \u56DB\u7EF4\u770B\u770Boss cdn\u57DF\u540D
+oss.domain=https://4dkk.4dage.com/
+
+
+# swagger2 \u8BBE\u7F6E\u5168\u5C40\u5B57\u4F53\u683C\u5F0F\u4E3Autf-8
+swagger.package=com.gis.web.controller
+swagger.title=\u5168\u666F\u770B\u770B-locPro
+swagger.description=${swagger.title}
+swagger.version=1.0
+
+
+#log
+logging.path=E:/log/${project.name}_log
+logging.config=classpath:logback-spring.xml
+logging.level.com.gis=debug
+
+
+# file info
+server.file.path=E:\\data\\${project.name}_data\\
+server.domain=
+
+
+domain.4dkk=https://www.4dkankan.com
+
+# \u6307\u5B9Atomcat\u6587\u4EF6\u4E0A\u4F20\u7684\u4E34\u65F6\u76EE\u5F55,\u4E0A\u4F20\u5B8C\u4F1A\u628A\u6587\u4EF6\u5220\u9664\uFF0C\u4F46\u8FD9\u4E2A\u65B9\u6CD5\u4E0D\u4F1A\u4E3B\u52A8\u521B\u5EFA\u76EE\u5F55, \u9ED8\u8BA4\u5728/tmp/tomcat.XXX, \u8FD9\u4E2A\u76EE\u5F55\u4F1A\u5728\u6E05\u695Atmp\u6587\u4EF6\u65F6\u5220\u9664\uFF0C\u5BFC\u81F4\u51FA\u9519
+spring.servlet.multipart.location=F:\\test
+
+
+
+

+ 1 - 1
720yun_fd_manage/gis_application/src/main/resources/application.properties

@@ -1,6 +1,6 @@
 server.port=8001
 
-spring.profiles.active=locSit
+spring.profiles.active=locPro
 
 
 # \uFFFD\uFFFD\u013F\uFFFD\uFFFD\uFFFD\uFFFD

+ 8 - 19
720yun_fd_manage/gis_common/src/main/java/com/gis/common/shiro/MyRealm.java

@@ -2,6 +2,7 @@ package com.gis.common.shiro;
 
 import com.gis.common.exception.JwtAuthenticationException;
 import lombok.extern.log4j.Log4j2;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.authc.AuthenticationException;
 import org.apache.shiro.authc.AuthenticationInfo;
@@ -15,13 +16,12 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
-//import com.gis.domain.entity.SysUserEntity;
-//import com.gis.service.SysUserService;
+
 
 /**
  * 配置不校验的话,是不会走这个方法的
  */
-@Log4j2
+@Slf4j
 @Service
 public class MyRealm extends AuthorizingRealm {
 
@@ -31,8 +31,6 @@ public class MyRealm extends AuthorizingRealm {
     private RedisTemplate<String, String> redisTemplate;
 
 
-//    @Autowired
-//    private SysUserService userService;
 
 
 
@@ -82,8 +80,11 @@ public class MyRealm extends AuthorizingRealm {
 
         // 这里redis的key是token, value是用户信息,所以只要有返回结果,就算是验证通过
         String tokenKey = "token#" + token;
-        String redisToken = redisTemplate.opsForValue().get(tokenKey);
-        if (redisToken == null) {
+        // String redisToken = redisTemplate.opsForValue().get(tokenKey);
+//        Boolean aBoolean = redisTemplate.hasKey(tokenKey);
+
+        // 2022-11-04 四维看看v4 用户登录key:token#token  , value: 用户信息jsonStr
+        if (!redisTemplate.hasKey(tokenKey)) {
             log.error("redis token is null");
             throw new JwtAuthenticationException(5001, "redis token is null");
 
@@ -97,19 +98,7 @@ public class MyRealm extends AuthorizingRealm {
             throw new JwtAuthenticationException(5001, "token invalid");
         }
 
-//        SysUserEntity userEntity = userService.findByUserName(username);
-//        if (userEntity == null) {
-//            log.error("error token userEntity");
-//            throw new JwtAuthenticationException(5001, "User didn't existed!");
-//        }
-
-
-
 
-//        if (! JwtUtil.isVerify(token, username)) {
-//            log.error("error token username or password");
-//            throw new JwtAuthenticationException(5001, "token invalid");
-//        }
 
         return new SimpleAuthenticationInfo(token, token, "my_realm");
     }

+ 6 - 1
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/TestServiceImpl.java

@@ -309,6 +309,7 @@ public class TestServiceImpl implements TestService {
         // 2.下载对应的tour.xml
         String basePath = configConstant.serverBasePath;
         int n = 0;
+        List<String> errTours = new ArrayList<>();
         for (FodderEntity fodderEntity : list) {
             n ++;
             String tour = fodderEntity.getTour();
@@ -324,6 +325,10 @@ public class TestServiceImpl implements TestService {
                 HttpUtil.downloadFile(tourPath, locPath);
                 String tourXmlScene = getTourXmlScene(sceneCode);
 
+                if (!tourXmlScene.contains("CURRENTXML")){
+                    errTours.add(sceneCode);
+                }
+
                 fodderEntity.setTour(tourXmlScene);
                 fodderEntity.setUpdateTime(new Date());
                 fodderService.update(fodderEntity);
@@ -332,7 +337,6 @@ public class TestServiceImpl implements TestService {
 
 
             } catch (Exception e) {
-//                e.printStackTrace();
                 // 遇到oss没有tour.xml 直接跳过, 不用更新此场景
                 log.error("此场景不存在, 执行第:{} 个, 场景码:{}, oss路径:{}", n, sceneCode, tourPath);
                 continue;
@@ -347,6 +351,7 @@ public class TestServiceImpl implements TestService {
 
 
         }
+        log.warn("tour数据异常的数量:{}", errTours.size());
 
 
 

+ 1 - 1
720yun_fd_manage/gis_web/src/main/java/com/gis/web/controller/TestController.java

@@ -239,7 +239,7 @@ public class TestController extends BaseController {
      * 2.查询作品表,再oss里找出对应的someData.json文件,查找出对应的场景, 把绑定场景的tour值封装好一个全局的tour.xml
      */
     @GetMapping("updatePanoTourXml")
-    @ApiOperation(value = "批量更新全景图Tour", notes = "isAll:不传为更新1个, 传1为更新全部")
+    @ApiOperation(value = "v1.2-批量更新全景图Tour", notes = "isAll:不传为更新1个, 传1为更新全部")
     public Result updatePanoTourXml(String isAll){
         return testService.updatePanoTourXml(isAll);
     }

+ 18 - 0
720yun_fd_manage/remark-m.md

@@ -59,6 +59,8 @@
     #2022-3-19 使用自动部署
     
     
+    
+    
 # pro 用四维看看正式服务器
     2021-11-29
     rabbitMQ: http://8.129.209.131:15672/ guest  guest    
@@ -70,6 +72,20 @@
     2022-2-14 V1.1.0
         1. 更新someData.json 默认一级分类
         2. 更新错误提示
+        
+        
+    2022-11-03 v1.2
+         1. consumer, tour.xml改用相对地址   
+         2. 需要将dev-1.2弄一个pro-1.2版本
+         3. 数据库tb_fodder加一个tour字段
+         4. 全景图历史数据
+            4.1 全景图历史数据tour.xml需要加入tour.xml
+            4.2 dev环境链接生产数据库,更新历史数据
+            4.3 每个作品创建tour.xml
+         5. 上传素材前, 先校验用户空间
+         6. 注意四维看看接口需要过滤激光点云、obj数据
+         7. 提供四维看看管理后台获取作品数据,请求接口需要appId, 不需要token
+            
     
  
 # 交换状态逻辑
@@ -87,6 +103,8 @@
 # deploy 注意
  2022-3-22  修改workId 使用雪花id, 需要更新数据库字段, sit已更新
  
+
+ 
  
  # 错误码汇总:
  0: 请求成功