Commit df772f7e by Licx

数据库连接方式修改(提取数据)

parent 33f085c7
...@@ -94,7 +94,7 @@ public List<ex_result> Handler(int hospitalId, per_allot allot, string groupName ...@@ -94,7 +94,7 @@ public List<ex_result> Handler(int hospitalId, per_allot allot, string groupName
logService.ReturnTheLog(allot.ID, groupName, 2, "提取数据", $"开始提取数据", isSingle: isSingle); logService.ReturnTheLog(allot.ID, groupName, 2, "提取数据", $"开始提取数据", isSingle: isSingle);
scripts = exscriptRepository.GetEntities(t => t.TypeId.HasValue && extypeIds.Contains(t.TypeId.Value)); scripts = exscriptRepository.GetEntities(t => t.TypeId.HasValue && extypeIds.Contains(t.TypeId.Value));
if (scripts != null && scripts.Any()) if (scripts != null && scripts.Any())
{ {
var allmodules = dict[ExDataDict.ExModule] as List<ex_module>; var allmodules = dict[ExDataDict.ExModule] as List<ex_module>;
...@@ -429,13 +429,9 @@ public IEnumerable<T> QueryData<T>(sys_hospitalconfig config, string execsql, pe ...@@ -429,13 +429,9 @@ public IEnumerable<T> QueryData<T>(sys_hospitalconfig config, string execsql, pe
execsql = Regex.Replace(execsql, item.Key, item.Value, RegexOptions.IgnoreCase); execsql = Regex.Replace(execsql, item.Key, item.Value, RegexOptions.IgnoreCase);
} }
IDbConnection connection = null; using IDbConnection connection = ConnectionBuilder.Create((DatabaseType)config.DataBaseType, config.DbSource, config.DbName, config.DbUser, config.DbPassword);
try try
{ {
if (!pools.ContainsKey(config.Id))
pools.Add(config.Id, ConnectionBuilder.Create((DatabaseType)config.DataBaseType, config.DbSource, config.DbName, config.DbUser, config.DbPassword));
connection = pools[config.Id];
if (connection == null) return Enumerable.Empty<T>(); if (connection == null) return Enumerable.Empty<T>();
if (connection.State != ConnectionState.Open) if (connection.State != ConnectionState.Open)
...@@ -444,10 +440,10 @@ public IEnumerable<T> QueryData<T>(sys_hospitalconfig config, string execsql, pe ...@@ -444,10 +440,10 @@ public IEnumerable<T> QueryData<T>(sys_hospitalconfig config, string execsql, pe
catch catch
{ {
logService.ReturnTheLog(allot.ID, allot.ID.ToString(), 2, "数据库连接", $"数据库“{config.DbName}”连接失败", 3, isSingle); logService.ReturnTheLog(allot.ID, allot.ID.ToString(), 2, "数据库连接", $"数据库“{config.DbName}”连接失败", 3, isSingle);
throw;
} }
try try
{ {
logger.LogInformation($"提取绩效数据SQL脚本{execsql}"); logger.LogInformation($"提取绩效数据SQL脚本{execsql}");
var result = connection.Query<T>(execsql, commandTimeout: 60 * 60 * 5); var result = connection.Query<T>(execsql, commandTimeout: 60 * 60 * 5);
logger.LogInformation($"提取绩效数据执行脚本获取数据{result?.Count() ?? 0}条记录"); logger.LogInformation($"提取绩效数据执行脚本获取数据{result?.Count() ?? 0}条记录");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment