From b7f0fb8eda40b6761b35a37f72eb5e8a3c836bed Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期五, 21 三月 2025 11:00:39 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ltkj-framework/src/main/java/com/ltkj/framework/interceptor/DBChangeInterceptor.java | 24 +++++++++++++++++------- 1 files changed, 17 insertions(+), 7 deletions(-) diff --git a/ltkj-framework/src/main/java/com/ltkj/framework/interceptor/DBChangeInterceptor.java b/ltkj-framework/src/main/java/com/ltkj/framework/interceptor/DBChangeInterceptor.java index fc7c7f0..37f872e 100644 --- a/ltkj-framework/src/main/java/com/ltkj/framework/interceptor/DBChangeInterceptor.java +++ b/ltkj-framework/src/main/java/com/ltkj/framework/interceptor/DBChangeInterceptor.java @@ -1,11 +1,14 @@ package com.ltkj.framework.interceptor; import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.google.gson.Gson; import com.ltkj.db.DataSourceConfig; import com.ltkj.db.DataSourceContextHolder; +import com.ltkj.framework.config.DruidConfig; import com.ltkj.hosp.domain.DictHosp; import com.ltkj.hosp.service.IDictHospService; import org.springframework.beans.factory.annotation.Autowired; @@ -23,13 +26,15 @@ * @Date: 2025/2/7 11:07 */ @Component -@Order(2) +@Order(1) public class DBChangeInterceptor implements HandlerInterceptor { @Autowired private IDictHospService dictHospService; @Autowired private DataSourceConfig dataSourceConfig; +// @Autowired +// private DruidConfig druidConfig; @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws IOException { @@ -37,26 +42,31 @@ if (StrUtil.isBlank(hospId)){ response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); response.setContentType("application/json;charset=UTF-8"); - response.getWriter().write("{\"message\":\"401锛氭壘涓嶅埌闄㈠尯缂栧彿\"}"); + JSONObject object = JSONUtil.createObj(); + object.putOpt("code",401); + object.putOpt("msg","鎵句笉鍒伴櫌鍖虹紪鍙�"); + response.getWriter().write(JSONUtil.toJsonStr(object)); return false; } - DictHosp hosp = null; +// DictHosp hosp = null; try { DataSourceContextHolder.setDataSourceKey("default"); LambdaQueryWrapper<DictHosp> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(DictHosp::getCode,hospId); - hosp = dictHospService.getOne(wrapper); - if (hosp == null || hosp.getDatabase() == null || hosp.getDatabase().trim().isEmpty()) { + DictHosp hosp = dictHospService.getOne(wrapper); + if (hosp == null || hosp.getDbname() == null || hosp.getDbname().trim().isEmpty()) { response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); response.setContentType("application/json;charset=UTF-8"); response.getWriter().write("{\"message\":\"401锛氭壘涓嶅埌闄㈠尯鏁版嵁\"}"); return false; } - dataSourceConfig.addDataSource(hosp.getDatabase()); + dataSourceConfig.addDataSource(hosp.getDbname()); +// druidConfig.addDataSource(hosp.getDbname()); + DataSourceContextHolder.setDataSourceKey(hosp.getDbname()); } catch (IOException e) { return false; } - DataSourceContextHolder.setDataSourceKey(hosp.getDatabase()); + return true; } -- Gitblit v1.8.0