Browse Source

修改bug

westt 2 years ago
parent
commit
1ab9a1d5ad

+ 1 - 1
src/main/java/com/example/onlinejudge/config/SaTokenConfigure.java

@@ -22,7 +22,7 @@ public class SaTokenConfigure implements WebMvcConfigurer {
                 // 指定一条 match 规则
                 SaRouter
                         .match("/**")
-                        .notMatch("/api/login/**")
+                        .notMatch("/api/user/login/**")
                         .check(r -> StpUtil.checkLogin());
         })).addPathPatterns("/**");
     }

+ 1 - 1
src/main/java/com/example/onlinejudge/controller/JudgeController.java

@@ -12,7 +12,7 @@ import org.springframework.web.bind.annotation.*;
 
 @Api(tags = "提交判题")
 @RestController
-@RequestMapping("/judge")
+@RequestMapping("/api/judge")
 @Slf4j
 public class JudgeController {
     @Autowired

+ 5 - 7
src/main/java/com/example/onlinejudge/controller/UserController.java

@@ -6,15 +6,13 @@ import com.example.onlinejudge.model.entity.result.Result;
 import com.example.onlinejudge.service.UserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.*;
 
 /**
  * 用户Controller层
  */
 @Controller
+@RequestMapping("/api/user")
 public class UserController {
     @Autowired
     private UserService userService;
@@ -26,7 +24,7 @@ public class UserController {
      * @param password 用户密码
      * @return 用户bean
      */
-    @GetMapping("/api/login/{username}/{password}")
+    @PostMapping("/login/{username}/{password}")
     @ResponseBody
     public Result login(@PathVariable("username") String username,
                         @PathVariable("password") String password) {
@@ -38,7 +36,7 @@ public class UserController {
      *
      * @return 字符串
      */
-    @RequestMapping("/api/isLogin")
+    @GetMapping("/isLogin")
     @ResponseBody
     public String isLogin() {
         return "当前会话登录了";
@@ -48,7 +46,7 @@ public class UserController {
      * 测试注销
      * @return LinkedHashMap
      */
-    @RequestMapping("/api/logout")
+    @GetMapping("/logout")
     @ResponseBody
     public Result logout() {
         StpUtil.logout();

+ 1 - 1
src/main/java/com/example/onlinejudge/service/impl/QuestionServiceImpl.java

@@ -74,7 +74,7 @@ public class QuestionServiceImpl implements QuestionService {
     @Override
     public boolean checkIsSubmitValid(Long userId, Long questionID) {
         QueryWrapper<QuestionSubmit> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("user_id", userId).orderByDesc("create_time").last("limit 1");
+        queryWrapper.eq("user_id", userId).eq("question_id", questionID).orderByDesc("create_time").last("limit 1");
         QuestionSubmit record = questionSubmitMapper.selectOne(queryWrapper);
         System.out.println(record);
         if (record == null) {

+ 4 - 10
src/main/java/com/example/onlinejudge/service/impl/UserServiceImpl.java

@@ -3,6 +3,7 @@ package com.example.onlinejudge.service.impl;
 import cn.dev33.satoken.stp.SaTokenInfo;
 import cn.dev33.satoken.stp.StpUtil;
 import cn.dev33.satoken.util.SaResult;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.example.onlinejudge.model.entity.User;
 import com.example.onlinejudge.mapper.UserMapper;
@@ -11,6 +12,7 @@ import com.example.onlinejudge.model.entity.result.ResultCode;
 import com.example.onlinejudge.service.UserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import sun.security.krb5.internal.PAData;
 
 import java.util.LinkedHashMap;
 
@@ -31,16 +33,8 @@ public class UserServiceImpl implements UserService {
      */
     @Override
     public Result login(String username, String password) {
-        if (username == null || password == null) {
-            return Result.error(ResultCode.PARAM_IS_BLANK);
-        }
-        username = username.trim();
-        if (username.length() == 0) {
-            return Result.error(ResultCode.PARAM_IS_BLANK.getCode(), "用户名长度不能为0");
-        }
-        if (password.length() == 0) {
-            return Result.error(ResultCode.PARAM_IS_BLANK.getCode(), "密码长度不能为0");
-        }
+        if (StrUtil.isBlank(username) || StrUtil.isBlank(password))
+            return Result.error(ResultCode.PARAM_IS_BLANK.getCode(), "用户名或密码不能为空");
         QueryWrapper<User> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("username", username).eq("password", password);
         User user = userMapper.selectOne(queryWrapper);