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