ソースを参照

Merge remote-tracking branch 'origin/master'

523096025 4 年 前
コミット
9bcd1ce4a7

+ 53 - 0
huimv-mobile-video/huimv-gateway/pom.xml

@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>2.4.5</version>
+        <relativePath/> <!-- lookup parent from repository -->
+    </parent>
+    <groupId>com.huimv</groupId>
+    <artifactId>huimv-gateway</artifactId>
+    <version>0.0.1-SNAPSHOT</version>
+    <name>huimv-gateway</name>
+    <description>Demo project for Gateway</description>
+    <properties>
+        <java.version>1.8</java.version>
+        <spring-cloud.version>2020.0.2</spring-cloud.version>
+    </properties>
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-gateway</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>org.springframework.cloud</groupId>
+                <artifactId>spring-cloud-dependencies</artifactId>
+                <version>${spring-cloud.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

+ 13 - 0
huimv-mobile-video/huimv-gateway/src/main/java/com/huimv/gateway/HuimvGatewayApplication.java

@@ -0,0 +1,13 @@
+package com.huimv.gateway;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class HuimvGatewayApplication {
+
+    public static void main(String[] args) {
+        SpringApplication.run(HuimvGatewayApplication.class, args);
+    }
+
+}

+ 32 - 0
huimv-mobile-video/huimv-gateway/src/main/resources/application-dev.yml

@@ -0,0 +1,32 @@
+server:
+  port: 8088
+
+spring:
+  application:
+    name: huimv-gateway
+
+  cloud:
+
+    gateway:
+      globalcors:
+        cors-configurations:
+          '[/**]':
+            allowedHeaders: "*"
+            allowedOrigins: "*"
+#            allowCredentials: true
+            allowedMethods:
+              - GET
+              - POST
+              - DELETE
+              - PUT
+              - OPTION
+            maxAge: 1800
+      routes:
+        - id: huimv-manager
+          uri: http://192.168.1.57:9105/
+          predicates:
+            - Path=/manager/**
+          filters:
+            - RewritePath=/manager/(?<segment>/?.*), /$\{segment}
+
+

+ 1 - 0
huimv-mobile-video/huimv-gateway/src/main/resources/application.properties

@@ -0,0 +1 @@
+spring.profiles.active=dev

+ 13 - 0
huimv-mobile-video/huimv-gateway/src/test/java/com/huimv/gateway/HuimvGatewayApplicationTests.java

@@ -0,0 +1,13 @@
+package com.huimv.gateway;
+
+import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest
+class HuimvGatewayApplicationTests {
+
+    @Test
+    void contextLoads() {
+    }
+
+}

+ 2 - 2
huimv-mobile-video/huimv-manager/src/main/java/com/huimv/manager/enums/AuthExceptionEnum.java

@@ -17,12 +17,12 @@ public enum AuthExceptionEnum implements AbstractBaseExceptionEnum {
     /**
      * 账号或密码为空
      */
-    ACCOUNT_PWD_EMPTY(1, "账号或密码为空,请检查account或password参数"),
+    ACCOUNT_PWD_EMPTY(1, "账号或密码为空!"),
 
     /**
      * 账号密码错误
      */
-    ACCOUNT_PWD_ERROR(2, "账号或密码错误,请检查account或password参数"),
+    ACCOUNT_PWD_ERROR(2, "账号或密码错误!"),
 
     /**
      * 验证码错误

+ 7 - 1
huimv-mobile-video/huimv-manager/src/main/java/com/huimv/manager/interceptor/JWTInterceptor.java

@@ -46,7 +46,13 @@ public class JWTInterceptor implements HandlerInterceptor {
             return false;
         }
 
-        Claims claims = JwtUtils.getClaims(token);
+        Claims claims = null;
+        try {
+            claims = JwtUtils.getClaims(token);
+        } catch (Exception e) {
+            response.getWriter().write(JSONObject.toJSONString(R.error(419,"token信息有误,请检查!")));
+            return false;
+        }
         Integer id = claims.get("id", Integer.class);
         if (mobileUserService == null) {
 

+ 4 - 0
huimv-mobile-video/huimv-manager/src/main/java/com/huimv/manager/modular/entity/MobileUnit.java

@@ -47,4 +47,8 @@ public class MobileUnit implements Serializable {
     private String api;
 
 
+    @Column(name = "fid")
+    @ApiModelProperty("fid")
+    private Integer fid;
+
 }

+ 1 - 1
huimv-mobile-video/huimv-manager/src/main/java/com/huimv/manager/modular/repository/MobileUserRepository.java

@@ -14,7 +14,7 @@ public interface MobileUserRepository extends JpaRepository<MobileUser, Integer>
     MobileUser findByAccount(String account);
 
 
-    @Query(nativeQuery = true ,value = "select * from mobile_user where user_name like %?1% limit ?2 , ?3")
+    @Query(nativeQuery = true ,value = "select * from mobile_user where user_name like %?1% and grant_class != 1 limit ?2 , ?3")
     List<MobileUser> findAll(String name, Integer startPage, Integer pageSize);
 
     @Query(nativeQuery = true ,value = "select MAX(id) from mobile_user")

+ 21 - 9
huimv-mobile-video/huimv-manager/src/main/java/com/huimv/manager/modular/service/impl/MobileUserServiceImpl.java

@@ -75,26 +75,38 @@ public class MobileUserServiceImpl implements MobileUserService {
 
     @Override
     public Result add(MobileUser entity){
+
+
         if (entity == null){
             return new Result(10002, ResultStatus.addNull);
         }
+
+        String account = entity.getAccount();
+        MobileUser mobileUser = mobileUserRepository.findByAccount(account);
+        if (mobileUser != null) {
+            return new Result(10001,"账号已存在,添加失败!");
+        }
         try {
             String ycgApi = mobileUnitRepository.findByShortNameLike("油车港").get(0).getApi();
             String wyApi = mobileUnitRepository.findByShortNameLike("武义").get(0).getApi();
             String wjjApi = mobileUnitRepository.findByShortNameLike("王江泾").get(0).getApi();
 
+            entity.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()));
+            mobileUserRepository.save(entity);
 
             RestTemplate restTemplate  = new RestTemplate();
             Integer id = mobileUserRepository.findID();
             Integer grantClass = entity.getGrantClass();
-            entity.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()));
+
             if (grantClass ==null){
                 return new Result(10000,"msg");
             }
-            restTemplate.getForEntity(ycgApi+"/video/mobileUser/register?id="+(id+1)+"&password=123456",null);
-            restTemplate.getForEntity(wyApi+"/video/mobileUser/register?id="+(id+1)+"&password=123456",null);
-            restTemplate.getForEntity(wjjApi+"/video/mobileUser/register?id="+(id+1)+"&password=123456",null);
-            mobileUserRepository.save(entity);
+            Long start = System.currentTimeMillis();
+
+            restTemplate.getForEntity(ycgApi+"/video/mobileUser/register?account="+start+"&id="+id+"&password=123456",null);
+            restTemplate.getForEntity(wyApi+"/video/mobileUser/register?account="+start+"&id="+id+"&password=123456",null);
+            restTemplate.getForEntity(wjjApi+"/video/mobileUser/register?account="+start+"&id="+id+"&password=123456",null);
+
             return new Result(10000,ResultStatus.addSuccess);
         }catch (Exception e){
             log.error(e.getMessage(),e);
@@ -112,10 +124,10 @@ public class MobileUserServiceImpl implements MobileUserService {
         String wjjApi = mobileUnitRepository.findByShortNameLike("王江泾").get(0).getApi();
 
 
-        RestTemplate restTemplate  = new RestTemplate();
-        restTemplate.getForEntity(wjjApi+"/video/mobileUser/remove?ids="+ids,null);
-        restTemplate.getForEntity(wyApi+"/video/mobileUser/remove?ids="+ids,null);
-        restTemplate.getForEntity(ycgApi+"/video/mobileUser/remove?ids="+ids,null);
+//        RestTemplate restTemplate  = new RestTemplate();
+//        restTemplate.getForEntity(wjjApi+"/video/mobileUser/remove?ids="+ids,null);
+//        restTemplate.getForEntity(wyApi+"/video/mobileUser/remove?ids="+ids,null);
+//        restTemplate.getForEntity(ycgApi+"/video/mobileUser/remove?ids="+ids,null);
 
 
         try {

+ 14 - 22
huimv-mobile-video/huimv-manager/src/main/java/com/huimv/manager/util/JwtUtils.java

@@ -1,10 +1,12 @@
 package com.huimv.manager.util;
 
 import io.jsonwebtoken.*;
-import org.springframework.util.DigestUtils;
 import org.springframework.util.StringUtils;
 
+import javax.crypto.SecretKey;
+import javax.crypto.spec.SecretKeySpec;
 import javax.servlet.http.HttpServletRequest;
+import java.util.Base64;
 import java.util.Date;
 
 /**
@@ -13,7 +15,16 @@ import java.util.Date;
  */
 public class JwtUtils {
 
-    private static final long EXPIRE = 1000 * 60 * 60 * 24;
+//    /**
+//     * 一天
+//     */
+//    private static final long EXPIRE = 1000 * 60 * 60 * 24;
+
+    /**
+     * 一小时
+     */
+    private static final long EXPIRE = 1000 * 60 * 60;
+
     private static final String APP_SECRET = "ukc8BDbRigUDaY6pZFfWus2jZWLPHO";
     private static final int REFRESH_TIME = 300;
 
@@ -89,20 +100,6 @@ public class JwtUtils {
         return (Integer) claims.get("id");
     }
 
-    /**
-     * 根据token获取会员nickname
-     *
-     * @param request
-     * @return
-     */
-    public static String getMemberNicknameByJwtToken(HttpServletRequest request) {
-        String jwtToken = request.getHeader("token");
-        if (StringUtils.isEmpty(jwtToken)) {
-            return "";
-        }
-        Claims claims = getClaims(jwtToken);
-        return (String) claims.get("nickname");
-    }
 
     /**
      * 获取claims对象
@@ -129,7 +126,7 @@ public class JwtUtils {
             claims.getExpiration()
                     .before(new Date());
             // 需要自动刷新TOKEN
-            if ((claims.getExpiration().getTime() - System.currentTimeMillis()) > REFRESH_TIME * 1000) {
+            if ((claims.getExpiration().getTime() - System.currentTimeMillis()) < REFRESH_TIME * 1000) {
                 return -1;
             } else {
                 return 0;
@@ -140,9 +137,4 @@ public class JwtUtils {
             return 2;
         }
     }
-
-    public static void main(String[] args) {
-        System.out.println(DigestUtils.md5DigestAsHex("123456".getBytes()));
-//        System.out.println(JwtUtils.getJwtToken(10));
-    }
 }