From 0832f385234a8a2f3b69a5c3fc1e1c95e3c4849e Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期一, 09 六月 2025 17:48:20 +0800
Subject: [PATCH] zjh20250609

---
 ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java |   31 +++++++++++++++++++++++--------
 1 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java b/ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java
index 34d12c4..eba1b92 100644
--- a/ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java
+++ b/ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java
@@ -114,12 +114,14 @@
             redisCache.deleteObject(verifyKey);
             if (captcha == null)
             {
-                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")));
+                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"),hosp.getDbname()));
+//                AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"));
                 throw new CaptchaExpireException();
             }
             if (!code.equalsIgnoreCase(captcha))
             {
-                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")));
+                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error"),hosp.getDbname()));
+//                AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error"));
                 throw new CaptchaException();
             }
         }
@@ -139,16 +141,21 @@
             authentication = authenticationManager.authenticate(authenticationToken);
         } catch (Exception e) {
             if (e instanceof BadCredentialsException) {
-                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.not.match")));
+                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.not.match"),hosp.getDbname()));
+//                AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.not.match"));
                 throw new UserPasswordNotMatchException();
             } else {
-                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage()));
+                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage(),hosp.getDbname()));
+//                AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage());
                 throw new ServiceException(e.getMessage());
             }
         } finally {
             AuthenticationContextHolder.clearContext();
         }
-        AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
+//        AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
+//       AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"),hosp.getDbname());
+//       AsyncFactory.recordLogininforord(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"),hosp.getDbname());
+        AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"),hosp.getDbname()));
         LoginUser loginUser = (LoginUser) authentication.getPrincipal();
         loginUser.setHospDB(hosp.getDbname());
         loginUser.setHospId(hospId);
@@ -231,7 +238,14 @@
      * @param password 瀵嗙爜
      * @return 缁撴灉
      */
-    public String Cuslogin(String username,String sfzh, String password, Boolean type,String code,String uuid) {
+    public String Cuslogin(String username,String sfzh, String password, Boolean type,String code,String uuid, String hospId) {
+
+        DataSourceContextHolder.setDataSourceKey(DataSourceType.MASTER.name());
+        LambdaQueryWrapper<DictHosp> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(DictHosp::getCode,hospId);
+        DictHosp hosp = hospService.getOne(wrapper);
+
+        DataSourceContextHolder.setDataSourceKey(hosp.getDbname());
 
         String aSwitch = configService.selectConfigByKey("captcha_switch");
         if(null !=aSwitch && aSwitch.equalsIgnoreCase("Y")){
@@ -240,12 +254,13 @@
             redisCache.deleteObject(verifyKey);
             if (captcha == null)
             {
-                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire")));
+                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"),hosp.getDbname()));
+//                AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"));
                 throw new CaptchaExpireException();
             }
             if (!code.equalsIgnoreCase(captcha))
             {
-                AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error")));
+                AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error"),hosp.getDbname());
                 throw new CaptchaException();
             }
         }

--
Gitblit v1.8.0