From 4172a409d945fd61ac7579b3032f1c7aea64cfea Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期三, 12 二月 2025 17:08:44 +0800
Subject: [PATCH] 登录bug修改

---
 medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppLoginController.java |   40 ++++++++++++++++++++++++++++++++++------
 1 files changed, 34 insertions(+), 6 deletions(-)

diff --git a/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppLoginController.java b/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppLoginController.java
index 42a86cb..138ad68 100644
--- a/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppLoginController.java
+++ b/medicalWaste-admin/src/main/java/com/sinata/web/controller/applet/AppLoginController.java
@@ -2,7 +2,6 @@
 
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.sinata.common.constant.Constants;
 import com.sinata.common.core.domain.AjaxResult;
@@ -12,6 +11,7 @@
 import com.sinata.common.core.domain.entity.SysUser;
 import com.sinata.common.core.domain.model.LoginBody;
 import com.sinata.common.core.domain.model.LoginUser;
+import com.sinata.common.core.redis.RedisCache;
 import com.sinata.common.utils.SecurityUtils;
 import com.sinata.common.utils.StringUtils;
 import com.sinata.framework.web.service.SysLoginService;
@@ -31,11 +31,13 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.util.CollectionUtils;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
-import java.time.LocalDateTime;
 import java.util.List;
 import java.util.Map;
 import java.util.Random;
@@ -72,6 +74,8 @@
     private AliSmsService aliSmsService;
     @Resource
     private ISysUserService userService;
+    @Autowired
+    private RedisCache redisCache;
 
 
     @PostMapping("/getCode")
@@ -79,11 +83,29 @@
     public AjaxResult getCode(String phone)
     {
         Random random = new Random();
-
+        List<SysUser> list = userService.lambdaQuery().eq(SysUser::getUserName, phone).list();
+        if (list.isEmpty()){
+            return AjaxResult.error("当前手机号没有对应用户,请联系管理员");
+        }
         int i = 100000 + random.nextInt(900000);
         aliSmsService.sendLoginCode(phone, String.valueOf(i));
+        redisCache.setCacheObject(String.valueOf(phone), String.valueOf(i));
         return AjaxResult.success();
     }
+
+
+    @PostMapping("/set/getCode")
+    @ApiOperation("获取验证码")
+    public AjaxResult setgetCode(String phone)
+    {
+        Random random = new Random();
+        int i = 100000 + random.nextInt(900000);
+        aliSmsService.sendLoginCode(phone, String.valueOf(i));
+        redisCache.setCacheObject(String.valueOf(phone), String.valueOf(i));
+        return AjaxResult.success();
+    }
+
+
     @Resource
     private WeChatUtil weChatUtil;
 
@@ -132,7 +154,13 @@
 //        }
 
         List<SysMenu> menus = roleService.roleInfoFromUserId(loginUser.getUserId());
-
+        String string = redisCache.getCacheObject(loginBody.getUsername()).toString();
+        if (StringUtils.isBlank(string)) {
+            return AjaxResult.error("验证码已失效");
+        }
+        if (!loginBody.getCode().equals(string)){
+            return AjaxResult.error("验证码错误,请重试");
+        }
 //        ajax.put("menus", menus);
         ajax.put("userInfo", loginUser);
         return ajax;

--
Gitblit v1.7.1