Commit 8dce0149 by lcx

HRP

parent 2143eb5b
...@@ -69,9 +69,9 @@ public void Handler(int hospitalId, per_allot allot, string groupName, bool isSi ...@@ -69,9 +69,9 @@ public void Handler(int hospitalId, per_allot allot, string groupName, bool isSi
{ {
logService.ReturnTheLog(allot.ID, groupName, 2, "提取数据", $"提取人员信息数据", isSingle: isSingle); logService.ReturnTheLog(allot.ID, groupName, 2, "提取数据", $"提取人员信息数据", isSingle: isSingle);
var typeIds = types.Where(t => t.Source == (int)SheetType.Employee).Select(t => t.Id); var typeIds = types.Where(t => t.Source == (int)SheetType.Employee).Select(t => t.Id);
var script = scripts.FirstOrDefault(t => typeIds.Contains(t.TypeId)); var script = scripts.Where(t => typeIds.Contains(t.TypeId));
if (script != null) if (script != null)
Employee(allot, configs.FirstOrDefault(t => t.Id == script.ConfigId), script.ExecScript); Employee(allot, configs, scripts);
} }
if (types.Any(t => t.Source == (int)SheetType.OnlyExtract)) //不写入Excel的提取数据 if (types.Any(t => t.Source == (int)SheetType.OnlyExtract)) //不写入Excel的提取数据
{ {
...@@ -106,13 +106,17 @@ public void Handler(int hospitalId, per_allot allot, string groupName, bool isSi ...@@ -106,13 +106,17 @@ public void Handler(int hospitalId, per_allot allot, string groupName, bool isSi
} }
} }
private void Employee(per_allot allot, sys_hospitalconfig config, string sql) private void Employee(per_allot allot, List<sys_hospitalconfig> configs, IEnumerable<ex_script> scripts)
{ {
try try
{ {
foreach (var script in scripts)
{
var config = configs.FirstOrDefault(w => w.Id == script.ConfigId);
var sql = script.ExecScript;
if (config == null || string.IsNullOrEmpty(sql)) return; if (config == null || string.IsNullOrEmpty(sql)) return;
var limitData = queryService.QueryData<dynamic>(config, allot, $"select * from ({sql}) t limit 1;"); var limitData = queryService.QueryData<dynamic>(config, allot, sql);
if (limitData == null || !limitData.Any()) return; if (limitData == null || !limitData.Any()) return;
var columns = ((IDictionary<string, object>)limitData.ElementAt(0)).Select(t => t.Key.ToLower()).ToList(); var columns = ((IDictionary<string, object>)limitData.ElementAt(0)).Select(t => t.Key.ToLower()).ToList();
...@@ -158,6 +162,7 @@ private void Employee(per_allot allot, sys_hospitalconfig config, string sql) ...@@ -158,6 +162,7 @@ private void Employee(per_allot allot, sys_hospitalconfig config, string sql)
JudgeDataEqual(columns, needUpdateData.ToList(), data); JudgeDataEqual(columns, needUpdateData.ToList(), data);
} }
} }
}
catch (Exception ex) catch (Exception ex)
{ {
logger.LogError("获取人员名单时发生异常:" + ex.ToString()); logger.LogError("获取人员名单时发生异常:" + ex.ToString());
......
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