Sfoglia il codice sorgente

1. 捕捉token is null 异常
2. 添加了访问需要项目名称

wuweihao 5 anni fa
parent
commit
36899676ce

+ 3 - 0
xiaoan-application/src/main/resources/application.properties

@@ -1,5 +1,8 @@
 server.port=8011
 
+#访问项目名
+server.servlet.context-path=/xiaoan
+
 spring.profiles.active=dev
 
 #mybatis

+ 2 - 1
xiaoan-web/src/main/java/com/xiaoan/web/backend/ExceptionController.java

@@ -27,7 +27,8 @@ public class ExceptionController {
     @ResponseStatus(HttpStatus.UNAUTHORIZED)
     @ExceptionHandler(ShiroException.class)
     public ResultJson handle401(ShiroException e) {
-        return new ResultJson(5003, e.getMessage());
+        return new ResultJson(5001, e.getMessage());
+//        return new ResultJson(5003, e.getMessage());
     }
 
 //    @ResponseStatus(HttpStatus.UNAUTHORIZED)

+ 29 - 4
xiaoan-web/src/main/java/com/xiaoan/web/backend/PersonalCenterController.java

@@ -1,12 +1,12 @@
 package com.xiaoan.web.backend;
 
-import cn.hutool.core.util.StrUtil;
 import com.github.pagehelper.PageInfo;
 import com.xiaoan.common.constant.MsgCode;
 import com.xiaoan.common.model.PageDto;
 import com.xiaoan.common.util.ResultJson;
 import com.xiaoan.domain.backend.CameraDetailEntity;
 import com.xiaoan.domain.backend.CameraEntity;
+import com.xiaoan.domain.backend.DepartmentEntity;
 import com.xiaoan.domain.backend.SceneProEntity;
 import com.xiaoan.domain.dto.request.CameraRequest;
 import com.xiaoan.domain.dto.request.SceneProRequest;
@@ -24,6 +24,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
+import tk.mybatis.mapper.entity.Condition;
 
 import java.util.Date;
 import java.util.List;
@@ -140,19 +141,38 @@ public class PersonalCenterController extends BaseController {
     public ResultJson save(@RequestBody CameraRequest param){
 
         String wifiName = param.getWifiName();
+        wifiName = StringUtils.upperCase(wifiName);
 
+        // 校验wifiName
         if (StringUtils.isBlank(wifiName)) {
             log.error("相机sn码不能为空");
             return new ResultJson(MsgCode.e_COMMON_3001, "相机sn码不能为空");
         }
 
-        if (!wifiName.contains("_")) {
+        if (!wifiName.contains("4DKKPRO_")) {
             log.error("相机sn码有误");
             return new ResultJson(MsgCode.e_COMMON_3001, "相机sn码有误");
         }
 
         String snCode = StringUtils.substringAfter(wifiName, "_");
 
+        if (snCode.length() != 9) {
+            log.error("相机sn码有误");
+            return new ResultJson(MsgCode.e_COMMON_3001, "相机sn码有误");
+        }
+
+        // wifiName查重
+        Condition condition = new Condition(CameraEntity.class);
+        condition.and().andEqualTo("wifiName", wifiName);
+        List<CameraEntity> cameraList = cameraService.findAll(condition);
+
+        if (cameraList.size() > 0) {
+            log.error("相机sn码已注册");
+            return new ResultJson(MsgCode.e_COMMON_3001, "相机sn码已注册");
+        }
+
+
+
         CameraEntity cameraEntity = null;
         if (param.getId() == null) {
 
@@ -196,9 +216,14 @@ public class PersonalCenterController extends BaseController {
 
 
     public static void main(String[] args) {
-        String a = "dkkkk?123456";
+        String a = "dkkkk_1aa4567891";
         System.out.println(StringUtils.substringAfter(a, "_"));
-        System.out.println(a.contains("_"));
+
+        String s = StringUtils.substringAfter(a, "_");
+        if (s.length() != 9) {
+            System.out.println("不等于9");
+        }
+        System.out.println(StringUtils.upperCase(a));
     }
 
 }

+ 12 - 3
xiaoan-web/src/main/java/com/xiaoan/web/shiro/JWTFilter.java

@@ -36,12 +36,21 @@ public class JWTFilter extends BasicHttpAuthenticationFilter {
         String authorization = req.getHeader("Authorization");
 
         if (StringUtils.isEmpty(authorization)) {
-            log.info("error Authorization is null");
+            log.error("Authorization is null");
 
             // 先这样抛出异常,这个种不是接口的形式
-            throw new AuthenticationException("token is null");
-//            throw new JwtAuthenticationException(5001, "Authorization is null");
+//            throw new AuthenticationException("token is null");
+//            throw new JwtAuthenticationException(5008, "Authorization is null 123");
 //            throw new BaseRuntimeException(5001, "token is null");
+
+            // 直接返回Response信息
+//            JSONObject jsonObject = new JSONObject();
+//            jsonObject.put("status", 5001);
+//            jsonObject.put("message", "Authorization is null 123");
+//            this.writeResponse(response, jsonObject);
+
+            // 直接返回false, ExceptionController的ShiroException.class是能捕捉到5003那个异常的
+            return false;
         }
 
         return true;