jinxia.mo пре 1 месец
родитељ
комит
0b48c15907

+ 1 - 1
ie-admin/src/main/java/com/ruoyi/web/controller/front/UserController.java

@@ -205,7 +205,7 @@ public class UserController extends BaseController {
     public AjaxResult userLogin(@RequestBody LoginBody loginBody)
     {
         // 生成令牌
-        AjaxResult ajax = loginService.login(loginBody.getMobile(), loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid());
+        AjaxResult ajax = loginService.login(loginBody.getMobile(), loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid(),AccessFromType.frontApp.name());
         return ajax;
     }
 

+ 5 - 5
ie-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java

@@ -29,7 +29,7 @@ import javax.servlet.http.HttpServletRequest;
 
 /**
  * 登录验证
- * 
+ *
  * @author ruoyi
  */
 @Api(tags = "系统-登陆")
@@ -59,7 +59,7 @@ public class SysLoginController
 
     /**
      * 登录方法
-     * 
+     *
      * @param loginBody 登录信息
      * @return 结果
      */
@@ -68,13 +68,13 @@ public class SysLoginController
     public AjaxResult login(@RequestBody LoginBody loginBody)
     {
         // 生成令牌
-        AjaxResult ajax = loginService.login(loginBody.getMobile(), loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid());
+        AjaxResult ajax = loginService.login(loginBody.getMobile(), loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid(),AccessFromType.back.name());
         return ajax;
     }
 
     /**
      * 获取用户信息
-     * 
+     *
      * @return 用户信息
      */
     @GetMapping("getInfo")
@@ -114,7 +114,7 @@ public class SysLoginController
 
     /**
      * 获取路由信息
-     * 
+     *
      * @return 路由信息
      */
     @GetMapping("getRouters")

+ 15 - 12
ie-admin/src/main/java/com/ruoyi/web/service/SysLoginService.java

@@ -5,6 +5,7 @@ import javax.annotation.Resource;
 import com.google.common.collect.Maps;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.enums.AccessFromType;
 import com.ruoyi.common.enums.ErrorCodes;
 import com.ruoyi.common.exception.ErrorException;
 import com.ruoyi.common.utils.PhoneUtils;
@@ -85,7 +86,7 @@ public class SysLoginService
      * @param uuid
      * @return
      */
-    public AjaxResult login(String mobile, String username, String password, String code, String uuid) {
+    public AjaxResult login(String mobile, String username, String password, String code, String uuid,String type) {
         if (StringUtils.isNotBlank(mobile)) {
             //手机验证码登录:{code: "9", uuid: "cc94320c3fce4db5898213b727ac1dc0", mobile: "18774924158", password: "1234"}
             if (!shortMessageService.checkCode(mobile, password)) {
@@ -101,17 +102,19 @@ public class SysLoginService
             validateCaptcha(username, code, uuid);
             // 登录前置校验
             loginPreCheck(username, password);
-            //卡密登录时,要将卡的密码转换为用户的密码
-            DzCards card = cardsService.selectDzCardsByCardNo(username);
-            if (null==card){
-                return AjaxResult.error("卡不存在");
-            }
-            if (!password.trim().equalsIgnoreCase(card.getPassword())){
-                return AjaxResult.error("密码错误");
-            }
-            String dbPwd = userService.selectPasswordByCardId(card.getCardId());
-            if (StringUtils.isNotEmpty(dbPwd)){
-                password = dbPwd;
+            if(AccessFromType.isFrontApp(type)||AccessFromType.isH5(type)||AccessFromType.isWechat(type)){
+                //卡密登录时,要将卡的密码转换为用户的密码。手机号的密码与卡的密码分开
+                DzCards card = cardsService.selectDzCardsByCardNo(username);
+                if (null==card){
+                    return AjaxResult.error("卡不存在");
+                }
+                if (!password.trim().equalsIgnoreCase(card.getPassword())){
+                    return AjaxResult.error("密码错误");
+                }
+                String dbPwd = userService.selectPasswordByCardId(card.getCardId());
+                if (StringUtils.isNotEmpty(dbPwd)){
+                    password = dbPwd;
+                }
             }
         }
         // 用户验证