Pu Zhibing
3 天以前 4c4dc127cdc9c41f2bfb3c138108529856e031b8
提交基础版本
5个文件已删除
11个文件已修改
590 ■■■■ 已修改文件
eureka/pom.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eureka/src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/pom.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/java/com/supersavedriving/user/config/RedisConfig.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/AppUserServiceImpl.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/util/AppUserUtil.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/util/RedisUtil.java 143 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/resources/application.yml 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user/guns-admin/src/main/resources/redis.properties 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/pom.xml 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/src/main/java/com/sinata/zuul/config/RedisConfig.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/src/main/java/com/sinata/zuul/controller/RedisController.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/src/main/java/com/sinata/zuul/util/RedisUtil.java 81 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/src/main/java/com/sinata/zuul/util/applets/WebSocketHandler.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/src/main/resources/application.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zuul/src/main/resources/redis.properties 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
eureka/pom.xml
@@ -9,8 +9,8 @@
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.sinata</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <artifactId>eureka</artifactId>
    <version>1.0.0</version>
    <name>eureka</name>
    <description>Eureka project for Spring Boot</description>
eureka/src/main/resources/application.yml
@@ -13,7 +13,7 @@
eureka:
  instance:
    hostname: 127.0.0.1 #注册中心地址
    hostname: 192.168.110.106 #注册中心地址
  client:
    service-url: #客户端调用地址
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
user/guns-admin/pom.xml
@@ -61,6 +61,10 @@
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
@@ -110,11 +114,6 @@
            <artifactId>ehcache</artifactId>
        </dependency>
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
        </dependency>
        <dependency>
            <groupId>com.github.penggle</groupId>
            <artifactId>kaptcha</artifactId>
user/guns-admin/src/main/java/com/supersavedriving/user/config/RedisConfig.java
File was deleted
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/AppUserServiceImpl.java
@@ -143,8 +143,8 @@
        if (passwordTrueFlag) {
            String token = JwtTokenUtil.generateToken(phone);
            String key = token;
            if(token.length() > 16){
                key = token.substring(token.length() - 16);
            if(token.length() > 32){
                key = token.substring(token.length() - 32);
            }
            redisUtil.setStrValue(key, appUser.getId().toString(), 94608000);
            redisUtil.setStrValue("USER_" + appUser.getPhone(), key, 94608000);
@@ -517,16 +517,38 @@
        ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
        HttpServletRequest request = servletRequestAttributes.getRequest();
        String requestHeader = request.getHeader(JwtConstants.AUTH_HEADER);
        String custom = request.getHeader("custom-header");
        if (ToolUtil.isNotEmpty(requestHeader) && requestHeader.startsWith("Bearer ")) {
            requestHeader = requestHeader.substring(requestHeader.indexOf(" ") + 1);
            String key = null;
            int length = requestHeader.length();
            if(length > 16){
                key = requestHeader.substring(length - 16);
            if(length > 32){
                key = requestHeader.substring(length - 32);
            }else{
                key = requestHeader;
            }
            String value = redisUtil.getValue(key);
            //从打车系统直接带过来的token
            if(ToolUtil.isNotEmpty(custom) && "1".equals(custom)){
                AppUser appUser = this.selectOne(new EntityWrapper<AppUser>().eq("taxiUserId", value));
                if(null != appUser){
                    value = appUser.getId().toString();
                }else{
                    String userPhone = AppUserUtil.getUserPhone(Integer.valueOf(value));
                    //创建新的用户
                    appUser = new AppUser();
                    appUser.setNickname("亲爱的用户");
                    appUser.setAvatar("https://csxdj.obs.cn-south-1.myhuaweicloud.com:443/9af2cadb5d0d42d5b9da37f0c6789a66.png");
                    appUser.setPhone(userPhone);
                    appUser.setAccountBalance(0D);
                    appUser.setStatus(1);
                    appUser.setCreateTime(new Date());
                    appUser.setIsException(1);
                    appUser.setTaxiUserId(Integer.valueOf(value));
                    this.insert(appUser);
                }
            }
            return null != value ? Integer.valueOf(value) : null;
        }else{
            return null;
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/util/AppUserUtil.java
@@ -13,7 +13,7 @@
@Slf4j
public class AppUserUtil {
    
    private static String url = "http://127.0.0.1:8080/user-server";
    private static String url = "http://221.182.45.100:5000/user-server";
    
    
    /**
@@ -72,4 +72,22 @@
        }
        return execute.body();
    }
    /**
     * 通过
     * @param id
     * @return
     * @throws Exception
     */
    public static String getUserPhone(Integer id) throws Exception{
        HttpRequest post = HttpUtil.createGet(url + "/base/user/getUserPhone/" + id);
        HttpResponse execute = post.execute();
        if(200 != execute.getStatus()){
            log.error("打车系统-查询用户失败:{}", execute.body());
            return null;
        }
        return execute.body();
    }
}
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/util/RedisUtil.java
@@ -2,14 +2,17 @@
import com.supersavedriving.user.core.util.ToolUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.Pipeline;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.*;
import java.util.concurrent.TimeUnit;
/**
@@ -18,10 +21,9 @@
@Component
public class RedisUtil {
    @Autowired
    private JedisPool jedisPool;
    @Resource
    private RedisTemplate<String, Object> redisTemplate;
    private Timer timer;
    /**
@@ -30,11 +32,7 @@
     * @param value
     */
    public void setStrValue(String key, String value){
        if(ToolUtil.isNotEmpty(key) && ToolUtil.isNotEmpty(value)){
            Jedis resource = jedisPool.getResource();
            String set = resource.set(key, value);
            closeJedis(resource);
        }
        redisTemplate.opsForValue().set(key, value);
    }
@@ -45,11 +43,7 @@
     * @param time 秒
     */
    public void setStrValue(String key, String value, int time){
        if(ToolUtil.isNotEmpty(key) && ToolUtil.isNotEmpty(value)){
            Jedis resource = jedisPool.getResource();
            String setex = resource.setex(key, time, value);
            closeJedis(resource);
        }
        redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);
    }
@@ -59,47 +53,9 @@
     * @return
     */
    public String getValue(String key){
        if(ToolUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            String data = resource.get(key);
            closeJedis(resource);
            return data;
        }
        return null;
        return (String) redisTemplate.opsForValue().get(key);
    }
    /**
     * 批量获取
     * @param kes
     * @return
     */
    public List<Object> getValues(List<String> kes){
        if(null != kes){
            Jedis resource = jedisPool.getResource();
            Pipeline pipelined = resource.pipelined();
            for(String key : kes){
                pipelined.get(key);
            }
            List<Object> list = pipelined.syncAndReturnAll();
            closeJedis(resource);
            pipelined.clear();
            try {
                pipelined.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            List<Object> data = new ArrayList<>();
            for(Object o : list){
                if(null != o){
                    data.add(o);
                }
            }
            return data;
        }
        return null;
    }
    /**
@@ -107,42 +63,10 @@
     * @param key
     */
    public void remove(String key){
        if(ToolUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            Long del = resource.del(key);
            closeJedis(resource);
        }
        redisTemplate.delete(key);
    }
    /**
     * 向集合key添加数据
     * @param key
     * @param members
     */
    public void addSetValue(String key, String...members){
        if(ToolUtil.isNotEmpty(key) && ToolUtil.isNotEmpty(members)){
            Jedis resource = jedisPool.getResource();
            Long sadd = resource.sadd(key, members);
            resource.close();
        }
    }
    /**
     * 返回Set集合数据
     * @param key
     * @return
     */
    public Set<String> getSetAllValue(String key){
        Set<String> smembers = new HashSet<>();
        if(ToolUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            smembers = resource.smembers(key);
            resource.close();
        }
        return smembers;
    }
    /**
@@ -151,23 +75,9 @@
     * @param members
     */
    public void delSetValue(String key, String...members){
        if(ToolUtil.isNotEmpty(key) && ToolUtil.isNotEmpty(members)){
            Jedis resource = jedisPool.getResource();
            Long sadd = resource.srem(key, members);
            resource.close();
        }
        redisTemplate.opsForSet().remove(key, members);
    }
    /**
     * 删除资源
     * @param jedis
     */
    public void closeJedis(Jedis jedis){
        if(null != jedis){
            jedis.close();
        }
    }
    /**
@@ -178,27 +88,8 @@
     * @return
     */
    public boolean lock(String key, String value, int time){
        if(!StringUtils.isEmpty(key)){
            key += "_lock";
            Jedis resource = jedisPool.getResource();
            String set = resource.set(key, value, "nx", "ex", time);
            if("OK".equals(set)){
                String finalKey = key;
                timer = new Timer();
                timer.schedule(new TimerTask() {
                    @Override
                    public void run() {
                        System.err.println("定时任务启动");
                        Jedis resource = jedisPool.getResource();
                        resource.setex(finalKey, time, value);
                        resource.close();
                    }
                }, 1000, 500);
            }
            resource.close();
            return "OK".equals(set) ? true : false;
        }
        return false;
        key += "_lock";
        return redisTemplate.opsForValue().setIfAbsent(key, value);
    }
    /**
@@ -251,15 +142,7 @@
     * @return
     */
    public boolean unlock(String key){
        if(!StringUtils.isEmpty(key)){
            key += "_lock";
            Jedis resource = jedisPool.getResource();
            timer.cancel();//取消定时任务
            Long del = resource.del(key);
            resource.close();
            return del != 0 ? true : false;
        }
        return false;
        return redisTemplate.delete(key);
    }
    /**
user/guns-admin/src/main/resources/application.yml
@@ -28,6 +28,10 @@
    multipart:
      max-request-size: 100MB
      max-file-size: 100MB
  redis:
    host: 192.168.110.80
    port: 6379
    password: 123456
mybatis-plus:
  typeAliasesPackage: com.supersavedriving.user.modular
@@ -44,7 +48,7 @@
eureka:
  client:
    service-url: #注册中心地址
      defaultZone: http://sinata:sinata@127.0.0.1:8000/eureka #启用身份验证的方式连接
      defaultZone: http://sinata:sinata@192.168.110.106:8000/eureka #启用身份验证的方式连接
    register-with-eureka: true #在注册中心进行注册
    fetch-registry: true #从Eureka中获取注册信息。
@@ -53,29 +57,12 @@
spring:
  datasource:
    url: jdbc:mysql://121.31.232.206:3306/ok_driving?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    url: jdbc:mysql://192.168.110.80:3306/qyt_driving?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: Xiwang2024!
    password: 123456
    db-name: guns #用来搜集数据库的所有表
    filters: wall,mergeStat
#  datasource:
#    url: jdbc:mysql://192.168.110.64:3306/ok_driving?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
#    username: root
#    password: root
#    db-name: guns #用来搜集数据库的所有表
#    filters: wall,mergeStat
#多数据源情况的配置
guns:
  muti-datasource:
    open: false
    url: jdbc:mysql://127.0.0.1:3306/guns_test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: root
    dataSourceNames:
      - dataSourceGuns
      - dataSourceBiz
user/guns-admin/src/main/resources/redis.properties
File was deleted
zuul/pom.xml
@@ -30,6 +30,11 @@
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <!--引入swagger-->
        <dependency>
@@ -37,25 +42,6 @@
            <artifactId>swagger-spring-boot-starter</artifactId>
            <version>1.7.0.RELEASE</version>
        </dependency>
        <!-- jedis -->
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>
        <!-- netty -->
        <dependency>
zuul/src/main/java/com/sinata/zuul/config/RedisConfig.java
File was deleted
zuul/src/main/java/com/sinata/zuul/controller/RedisController.java
File was deleted
zuul/src/main/java/com/sinata/zuul/util/RedisUtil.java
@@ -1,14 +1,10 @@
package com.sinata.zuul.util;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.Pipeline;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import java.util.concurrent.TimeUnit;
/**
@@ -17,8 +13,8 @@
@Component
public class RedisUtil {
    @Autowired
    private JedisPool jedisPool;
    @Resource
    private RedisTemplate<String, Object> redisTemplate;
    /**
@@ -27,11 +23,7 @@
     * @param value
     */
    public void setStrValue(String key, String value){
        if(StringUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            String set = resource.set(key, value);
            closeJedis(resource);
        }
        redisTemplate.opsForValue().set(key, value);
    }
@@ -42,11 +34,7 @@
     * @param time 秒
     */
    public void setStrValue(String key, String value, int time){
        if(StringUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            String setex = resource.setex(key, time, value);
            closeJedis(resource);
        }
        redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);
    }
@@ -56,47 +44,11 @@
     * @return
     */
    public String getValue(String key){
        if(StringUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            String data = resource.get(key);
            closeJedis(resource);
            return data;
        }
        return null;
        return (String) redisTemplate.opsForValue().get(key);
    }
    /**
     * 批量获取
     * @param kes
     * @return
     */
    public List<Object> getValues(List<String> kes){
        if(null != kes){
            Jedis resource = jedisPool.getResource();
            Pipeline pipelined = resource.pipelined();
            for(String key : kes){
                pipelined.get(key);
            }
            List<Object> list = pipelined.syncAndReturnAll();
            closeJedis(resource);
            pipelined.clear();
            try {
                pipelined.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            List<Object> data = new ArrayList<>();
            for(Object o : list){
                if(null != o){
                    data.add(o);
                }
            }
            return data;
        }
        return null;
    }
    /**
@@ -104,21 +56,8 @@
     * @param key
     */
    public void remove(String key){
        if(StringUtil.isNotEmpty(key)){
            Jedis resource = jedisPool.getResource();
            Long del = resource.del(key);
            closeJedis(resource);
        }
        redisTemplate.delete(key);
    }
    /**
     * 删除资源
     * @param jedis
     */
    public void closeJedis(Jedis jedis){
        if(null != jedis){
            jedis.close();
        }
    }
}
zuul/src/main/java/com/sinata/zuul/util/applets/WebSocketHandler.java
@@ -23,7 +23,7 @@
    //用于websocket握手的处理类
    private WebSocketServerHandshaker handshaker;
    private static final String WEB_SOCKET_URL = "wss://localhost:9090/websocket";
    private static final String WEB_SOCKET_URL = "ws://localhost:7878/websocket";
zuul/src/main/resources/application.yml
@@ -8,6 +8,10 @@
    multipart:
      max-request-size: 500MB
      max-file-size: 500MB
  redis:
    host: 192.168.110.80
    port: 6379
    password: 123456
eureka:
  client:
zuul/src/main/resources/redis.properties
File was deleted