Commit c5d7f4fc by 纪旭 韦

基本完成绩效汇总三个表

parent cdff00e8
......@@ -279,6 +279,7 @@ public ApiResponse TableSpecial([FromBody] ConditionRequest request)
#region 全院发放
/// <summary>
/// 全院绩效发放(视图)
/// </summary>
......@@ -347,8 +348,67 @@ public IActionResult AllComputeViewDownload([FromBody] BeginEndTimeDown request)
return File(memoryStream, memi, Path.GetFileName(fileInfo.Name));
}
/// <summary>
/// 全院绩效发放汇总表(视图)
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("wholehospital_grant_summary")]
[HttpPost]
public ApiResponse GetWholeHospitalGrantSummary([FromBody] HospitalGrantSummary request)
{
return new ApiResponse(ResponseType.OK, "ok", _computeService.GetPerformanceSummary(request, "view_allot_sign_emp"));
}
/// <summary>
/// 全院绩效发放汇总表(视图)下载
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("wholehospital_grant_summary/download")]
[HttpPost]
public IActionResult WholeHospitalGrantSummaryDownload([FromBody] HospitalGrantSummaryDown request)
{
if (request.HospitalId == 0)
throw new PerformanceException("医院ID不能为空");
DateTime bdate = DateTime.Now;
DateTime edate = DateTime.Now;
if (string.IsNullOrEmpty(request.BeginTime) || !DateTime.TryParse(request.BeginTime, out bdate) ||
string.IsNullOrEmpty(request.EndTime) || !DateTime.TryParse(request.EndTime, out edate))
throw new PerformanceException("请输入正确的时间");
var (a,list) = _computeService.GetAllComputeViewByDateAndTotal("view_allot_sign_emp", bdate, edate.AddMonths(1), request.GroupBy, request.SumBy);
if (null == list)
throw new PerformanceException("当前绩效记录不存在");
List<string> headlist = new List<string>();
foreach (var item in request.GroupBy.Union(request.SumBy).ToList())
{
headlist.Add(item.ToLower());
}
var filepath = downloadService.AllComputerViewReportByDate(request.HospitalId, list, "/report/wholehospital_grant_summary", "全院绩效发放", bdate, edate.AddMonths(1), headlist.ToArray());
var memoryStream = new MemoryStream();
using (var stream = new FileStream(filepath, FileMode.Open))
{
stream.CopyToAsync(memoryStream).Wait();
}
memoryStream.Seek(0, SeekOrigin.Begin);
var provider = new FileExtensionContentTypeProvider();
FileInfo fileInfo = new FileInfo(filepath);
var memi = provider.Mappings[".xlsx"];
return File(memoryStream, memi, Path.GetFileName(fileInfo.Name));
}
#endregion
#region 全院核算发放
/// <summary>
/// 全院核算绩效发放(视图)
/// </summary>
/// <param name="request"></param>
......@@ -380,58 +440,66 @@ public ApiResponse GethosdataView([FromBody] BeginEndTime request)
}
/// <summary>
/// 全院核算绩效发放汇总表(视图)
/// 全院核算绩效发放(视图) 下载
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("wholehospital_grant_summary")]
[Route("gethosdataView/download")]
[HttpPost]
public ApiResponse GetWholeHospitalGrantSummary([FromBody] HospitalGrantSummary request)
public IActionResult GethosdataView([FromBody] BeginEndTimeDown request)
{
if (request.HospitalId == 0)
throw new PerformanceException("医院ID不能为空");
DateTime bdate = DateTime.Now;
DateTime edate = DateTime.Now;
if (string.IsNullOrEmpty(request.BeginTime) || !DateTime.TryParse(request.BeginTime, out bdate) ||
string.IsNullOrEmpty(request.EndTime) || !DateTime.TryParse(request.EndTime, out edate))
throw new PerformanceException("请输入正确的时间");
var datas = _computeService.GetAllComputeViewByDateAndTotal("view_allot_sign_dept", bdate, edate.AddMonths(1),request.GroupBy,request.SumBy);
if (null == datas)
var list = _computeService.GetAllComputeViewByDate("view_allot_sign_dept", bdate, edate.AddMonths(1));
if (null == list)
throw new PerformanceException("当前绩效记录不存在");
var headlist = request.GroupBy.Union(request.SumBy).Select(t=>t.ToLower()).ToList();
var AllComputeView = ComputeConfig.AllComputeView.Where(t=> headlist.Contains(t.Name.ToLower())).ToList();
var filepath = downloadService.AllComputerViewReportByDate(request.HospitalId, list, "/report/wholehospital_accounting_grant", "全院核算绩效发放", bdate, edate.AddMonths(1));
List<Head> head = new List<Head>();
foreach (var item in AllComputeView)
{
Head head1 = new Head()
var memoryStream = new MemoryStream();
using (var stream = new FileStream(filepath, FileMode.Open))
{
Name = item.Name,
Alias = item.Alias
};
head.Add(head1);
stream.CopyToAsync(memoryStream).Wait();
}
memoryStream.Seek(0, SeekOrigin.Begin);
var provider = new FileExtensionContentTypeProvider();
FileInfo fileInfo = new FileInfo(filepath);
var memi = provider.Mappings[".xlsx"];
return File(memoryStream, memi, Path.GetFileName(fileInfo.Name));
}
var list = new QueryComputeByDateGetTotal
/// <summary>
/// 全院核算绩效发放汇总表(视图)
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("wholehospital_accounting_grant_summary")]
[HttpPost]
public ApiResponse GetWholeHospitalAccountingGrantSummary([FromBody] HospitalGrantSummary request)
{
Head = head,
Data = datas.ToList(),
TotalData = _computeService.SumDatas(datas),
};
return new ApiResponse(ResponseType.OK, "ok", list);
return new ApiResponse(ResponseType.OK, "ok", _computeService.GetPerformanceSummary(request, "view_allot_sign_dept"));
}
/// <summary>
/// 全院核算绩效发放(视图) 下载
/// 全院核算绩效发放汇总表(视图)下载
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("gethosdataView/download")]
[Route("wholehospital_accounting_grant_summary/download")]
[HttpPost]
public IActionResult GethosdataView([FromBody] BeginEndTimeDown request)
public IActionResult WholeHospitalAccountingGrantSummaryDownload([FromBody] HospitalGrantSummaryDown request)
{
if (request.HospitalId == 0)
throw new PerformanceException("医院ID不能为空");
......@@ -442,11 +510,19 @@ public IActionResult GethosdataView([FromBody] BeginEndTimeDown request)
string.IsNullOrEmpty(request.EndTime) || !DateTime.TryParse(request.EndTime, out edate))
throw new PerformanceException("请输入正确的时间");
var list = _computeService.GetAllComputeViewByDate("view_allot_sign_dept", bdate, edate.AddMonths(1));
var (a,list) = _computeService.GetAllComputeViewByDateAndTotal("view_allot_sign_dept", bdate, edate.AddMonths(1), request.GroupBy, request.SumBy);
if (null == list)
throw new PerformanceException("当前绩效记录不存在");
var filepath = downloadService.AllComputerViewReportByDate(request.HospitalId, list, "/report/wholehospital_accounting_grant", "全院核算绩效发放", bdate, edate.AddMonths(1));
List<string> headlist = new List<string>();
foreach (var item in request.GroupBy.Union(request.SumBy).ToList())
{
headlist.Add(item.ToLower());
}
var filepath = downloadService.AllComputerViewReportByDate(request.HospitalId, list, "/report/wholehospital_accounting_grant_summary", "全院绩效发放", bdate, edate.AddMonths(1), headlist.ToArray());
var memoryStream = new MemoryStream();
using (var stream = new FileStream(filepath, FileMode.Open))
......@@ -458,9 +534,12 @@ public IActionResult GethosdataView([FromBody] BeginEndTimeDown request)
FileInfo fileInfo = new FileInfo(filepath);
var memi = provider.Mappings[".xlsx"];
return File(memoryStream, memi, Path.GetFileName(fileInfo.Name));
}
#endregion
#region 全院财务发放
/// <summary>
/// 获取财务全院绩效列表(视图)
/// </summary>
......@@ -528,6 +607,66 @@ public IActionResult AllComputeByPMViewDownLoad([FromBody] BeginEndTimeDown requ
var memi = provider.Mappings[".xlsx"];
return File(memoryStream, memi, Path.GetFileName(fileInfo.Name));
}
/// <summary>
/// 财务全院绩效发放汇总表(视图)
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("wholehospital_finance_grant_summary")]
[HttpPost]
public ApiResponse GetWholeHospitalFinanceGrantSummary([FromBody] HospitalGrantSummary request)
{
return new ApiResponse(ResponseType.OK, "ok", _computeService.GetPerformanceSummary(request, "view_allot_sign_emp_finance"));
}
/// <summary>
/// 财务全院绩效发放汇总表(视图)下载
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("wholehospital_finance_grant_summary/download")]
[HttpPost]
public IActionResult WholeHospitalFinanceGrantSummaryDownload([FromBody] HospitalGrantSummaryDown request)
{
if (request.HospitalId == 0)
throw new PerformanceException("医院ID不能为空");
DateTime bdate = DateTime.Now;
DateTime edate = DateTime.Now;
if (string.IsNullOrEmpty(request.BeginTime) || !DateTime.TryParse(request.BeginTime, out bdate) ||
string.IsNullOrEmpty(request.EndTime) || !DateTime.TryParse(request.EndTime, out edate))
throw new PerformanceException("请输入正确的时间");
var (a, list) = _computeService.GetAllComputeViewByDateAndTotal("view_allot_sign_dept", bdate, edate.AddMonths(1), request.GroupBy, request.SumBy);
if (null == list)
throw new PerformanceException("当前绩效记录不存在");
List<string> headlist = new List<string>();
foreach (var item in request.GroupBy.Union(request.SumBy).ToList())
{
headlist.Add(item.ToLower());
}
var filepath = downloadService.AllComputerViewReportByDate(request.HospitalId, list, "/report/wholehospital_finance_grant", "全院绩效发放", bdate, edate.AddMonths(1), headlist.ToArray());
var memoryStream = new MemoryStream();
using (var stream = new FileStream(filepath, FileMode.Open))
{
stream.CopyToAsync(memoryStream).Wait();
}
memoryStream.Seek(0, SeekOrigin.Begin);
var provider = new FileExtensionContentTypeProvider();
FileInfo fileInfo = new FileInfo(filepath);
var memi = provider.Mappings[".xlsx"];
return File(memoryStream, memi, Path.GetFileName(fileInfo.Name));
}
#endregion
#endregion
}
}
\ No newline at end of file
......@@ -45,5 +45,6 @@ public static void Main(string[] args)
logging.SetMinimumLevel(LogLevel.Trace);
})
.UseNLog();
}
}
......@@ -1663,6 +1663,20 @@
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.GetWholeHospitalGrantSummary(Performance.DtoModels.HospitalGrantSummary)">
<summary>
全院绩效发放汇总表(视图)
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.WholeHospitalGrantSummaryDownload(Performance.DtoModels.HospitalGrantSummaryDown)">
<summary>
全院绩效发放汇总表(视图)下载
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.GethosdataView(Performance.DtoModels.BeginEndTime)">
<summary>
全院核算绩效发放(视图)
......@@ -1670,16 +1684,23 @@
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.GetWholeHospitalGrantSummary(Performance.DtoModels.HospitalGrantSummary)">
<member name="M:Performance.Api.Controllers.ReportController.GethosdataView(Performance.DtoModels.BeginEndTimeDown)">
<summary>
全院核算绩效发放(视图) 下载
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.GetWholeHospitalAccountingGrantSummary(Performance.DtoModels.HospitalGrantSummary)">
<summary>
全院核算绩效发放汇总表(视图)
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.GethosdataView(Performance.DtoModels.BeginEndTimeDown)">
<member name="M:Performance.Api.Controllers.ReportController.WholeHospitalAccountingGrantSummaryDownload(Performance.DtoModels.HospitalGrantSummaryDown)">
<summary>
全院核算绩效发放(视图) 下载
全院核算绩效发放汇总表(视图)下载
</summary>
<param name="request"></param>
<returns></returns>
......@@ -1698,6 +1719,20 @@
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.GetWholeHospitalFinanceGrantSummary(Performance.DtoModels.HospitalGrantSummary)">
<summary>
财务全院绩效发放汇总表(视图)
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportController.WholeHospitalFinanceGrantSummaryDownload(Performance.DtoModels.HospitalGrantSummaryDown)">
<summary>
财务全院绩效发放汇总表(视图)下载
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ReportGlobalController.GetAllReportGlobal(System.Int32)">
<summary>
获取报表配置信息
......
......@@ -73,25 +73,34 @@ public class HospitalGrantSummary : BeginEndTime
public List<string> GroupBy { get; set; }
public List<string> SumBy { get; set; }
}
public class HospitalGrantSummaryDown : HospitalGrantSummary
{
public int HospitalId { get; set; }
public string[] heads { get; set; }
}
public class QueryComputeByDateGetPage
public class QueryComputeByDateGetPage : GetPage
{
public List<dynamic> Data { get; set; }
public Dictionary<string, decimal> TotalData { get; set; }
}
public class GetPage
{
public int CurrentPage { get; set; }
public int TotalPages { get; set; }
public int PageSize { get; set; }
public int TotalCount { get; set; }
}
public class QueryComputeByDateGetTotal
public class QueryComputeByDateGetTotal: GetPage
{
public List<Head> Head { get; set; }
public List<dynamic> Data { get; set; }
public Dictionary<string, decimal> TotalData { get; set; }}
public decimal TotalData { get; set; }}
}
public class Head
{
public class Head
{
public string Name { get; set; }
public string Alias { get; set; }
}
}
......@@ -6,7 +6,7 @@ public class view_allot_sign_dept
public int AllotID { get; set; }
public int Year { get; set; }
public int Month { get; set; }
public int UnitName { get; set; }
public int UnitType { get; set; }
public int AccountingUnit { get; set; }
public int PerforFee { get; set; }
public int WorkloadFee { get; set; }
......
using Microsoft.EntityFrameworkCore;
using Dapper;
using Microsoft.EntityFrameworkCore;
using Performance.DtoModels;
using Performance.EntityModels;
using System;
......@@ -406,25 +407,43 @@ public List<dynamic> QueryComputeByDate(string viewName, DateTime beginTime, Dat
return DapperQuery<dynamic>(sql, new { beginTime = beginTime.ToString("yyyy-MM-dd"), endTime = endTime.ToString("yyyy-MM-dd") }).ToList();
}
public List<dynamic> QueryComputeByDateAndTotal(string viewName, DateTime beginTime, DateTime endTime,List<string> groupBy, List<string> sumBy)
{
string Groupby = "";
string Sumby = "";
foreach (var item in groupBy)
public (int count, List<dynamic> data) QueryComputeByDateAndTotal(string viewName, DateTime beginTime, DateTime endTime, List<string> groupBy, List<string> sumBy, int pageNumber, int pageSize)
{
Groupby += $@"{item},";
}
foreach (var item in sumBy)
if (!new string[] { "view_allot_sign_dept", "view_allot_sign_emp", "view_allot_sign_emp_finance" }.Contains(viewName)) return (0, new List<dynamic>());
var sql = $@" SELECT * FROM {viewName} where STR_TO_DATE(concat(Year,'-',Month,'-01'),'%Y-%m-%d') >= @beginTime
and STR_TO_DATE(concat(Year,'-',Month,'-01'),'%Y-%m-%d') < @endTime ";
Dictionary<string, List<string>> dict = new Dictionary<string, List<string>>
{
Sumby += $@"Sum({item}) {item},";
}
Groupby = Groupby.Substring(0,Groupby.Length - 1);
Sumby = Sumby.Substring(0,Sumby.Length - 1);
{ "view_allot_sign_dept_group", new List<string>{ "hospitalid", "allotid", "year", "month", "unittype", "accountingunit" } },
{ "view_allot_sign_dept_sum", new List<string>{ "perforfee", "workloadfee", "assessbeforeotherfee", "perfortotal", "scoringaverage", "extra", "medicineextra", "materialsextra", "assesslaterotherfee", "assesslaterperfortotal", "adjustfactor", "adjustlaterotherfee", "aprperforamount", "hideaprotherperforamount", "assesslatermanagementfee", "realgivefee" } },
{ "view_allot_sign_emp_group", new List<string>{ "hospitalid", "year", "month", "source", "allotid", "secondid", "states", "unittype", "accountingunit", "isshowmanage", "employeename", "jobnumber", "jobtitle", "emp_unittype", "emp_accountingunit", "bankcard", "batch", "jobcategory", "duty", "titleposition" } },
{ "view_allot_sign_emp_sum", new List<string>{ "perforsumfee", "performanagementfee", "nightworkperfor", "adjustlaterotherfee", "otherperfor", "hideotherperfor", "shouldgivefee", "reservedratiofee", "realgivefee" } },
{ "view_allot_sign_emp_finance_group", new List<string>{ "hospitalid", "year", "month", "allotid", "jobnumber", "employeename", "jobtitle", "unittype", "accountingunit", "bankcard", "jobcategory", "duty", "titleposition" } },
{ "view_allot_sign_emp_finance_sum", new List<string>{ "perforsumfee", "performanagementfee", "nightworkperfor", "adjustlaterotherfee", "otherperfor", "hideotherperfor", "shouldgivefee", "reservedratiofee", "realgivefee" } },
};
var sql = $@"SELECT {Groupby},{Sumby} FROM {viewName} where STR_TO_DATE(concat(Year,'-',Month,'-01'),'%Y-%m-%d') >= @beginTime
and STR_TO_DATE(concat(Year,'-',Month,'-01'),'%Y-%m-%d') < @endTime Group By {Groupby}";
if (groupBy == null || !groupBy.Any(t => !string.IsNullOrEmpty(t))) groupBy = dict[viewName + "_group"];
return DapperQuery<dynamic>(sql, new { beginTime = beginTime.ToString("yyyy-MM-dd"), endTime = endTime.ToString("yyyy-MM-dd") }).ToList();
if (sumBy == null || !sumBy.Any(t => !string.IsNullOrEmpty(t))) sumBy = dict[viewName + "_sum"];
sql = $"select {string.Join(",", groupBy)}, {string.Join(",", sumBy.Select(t => $"sum({t}) {t}"))} from ({sql}) tab group by {string.Join(",", groupBy)}";
sql = $@" select 0 as count;{sql}";
if (pageNumber != 0 && pageSize != 0)
sql = $@" select count(1) count from ({sql}) tab;
select * from ({sql}) tab limit {pageSize} offset {(pageNumber - 1) * pageSize};";
var queryMulti = context.Database.GetDbConnection().QueryMultiple(sql, new { beginTime, endTime });
var count = queryMulti.ReadFirstOrDefault<int>();
var data = queryMulti.Read<dynamic>()?.ToList();
return (count, data);
}
public CustonPagingData QueryCustom(CustomPagingRequest request, bool IsHead)
......
......@@ -1999,7 +1999,7 @@ private decimal GetDecimal(decimal? value, decimal _ = 0)
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public List<cof_alias> CustomColumnHeaders(int hospitalId, string route)
public List<cof_alias> CustomColumnHeaders(int hospitalId, string route,params string[] heads)
{
var init = new List<cof_alias>();
var alias = cofaliasRepository.GetEntities(t => t.HospitalId == hospitalId) ?? new List<cof_alias>();
......@@ -2016,6 +2016,11 @@ public List<cof_alias> CustomColumnHeaders(int hospitalId, string route)
{ "/report/wholehospital_grant" , ComputeConfig.AllComputeViewByDate },
{ "/report/wholehospital_accounting_grant" , ComputeConfig.AllComputeDepartmentViewByDate },
{ "/report/wholehospital_finance_grant" , ComputeConfig.AllComputePersonViewByDate },
{ "/report/wholehospital_grant_summary" , ComputeConfig.PerformanceTotal(route,heads) },
{ "/report/wholehospital_accounting_grant_summary" , ComputeConfig.PerformanceTotal(route,heads) },
{ "/report/wholehospital_finance_grant_summary" , ComputeConfig.PerformanceTotal(route,heads) },
};
init = pairs.ContainsKey(route.ToLower()) ? pairs[route.ToLower()] : new List<cof_alias>();
}
......@@ -2074,12 +2079,68 @@ public List<dynamic> GetAllComputeViewByDate(string viewName, DateTime beginTime
{
return reportRepository.QueryComputeByDate(viewName, beginTime, endTime);
}
public List<dynamic> GetAllComputeViewByDateAndTotal(string viewName, DateTime beginTime, DateTime endTime,List<string> groupBy,List<string> sumBy)
public (int count, List<dynamic> data) GetAllComputeViewByDateAndTotal(string viewName, DateTime beginTime, DateTime endTime,List<string> groupBy,List<string> sumBy,int pageNumber = 0,int pageSize = 0)
{
return reportRepository.QueryComputeByDateAndTotal(viewName, beginTime, endTime,groupBy,sumBy,pageNumber,pageSize);
}
public QueryComputeByDateGetTotal GetPerformanceSummary(HospitalGrantSummary request,string ViewName)
{
DateTime bdate = DateTime.Now;
DateTime edate = DateTime.Now;
if (string.IsNullOrEmpty(request.BeginTime) || !DateTime.TryParse(request.BeginTime, out bdate) ||
string.IsNullOrEmpty(request.EndTime) || !DateTime.TryParse(request.EndTime, out edate))
throw new PerformanceException("请输入正确的时间");
var headlist = request.GroupBy.Union(request.SumBy).Select(t => t.ToLower()).ToList();
List<cof_alias> AllComputeView = ComputeConfig.AllComputeView.ToList();
List<Head> head = new List<Head>();
if ((request.GroupBy != null && request.GroupBy.Any(t => !string.IsNullOrEmpty(t))) &&
(request.SumBy != null && request.SumBy.Any(t => !string.IsNullOrEmpty(t))))
AllComputeView = ComputeConfig.AllComputeView.Where(t => headlist.Contains(t.Name.ToLower())).ToList();
foreach (var item in AllComputeView)
{
Head head1 = new Head()
{
Name = item.Name,
Alias = item.Alias
};
head.Add(head1);
}
decimal TotalData = 0;
var(TotalCount, datas) = GetAllComputeViewByDateAndTotal(ViewName, bdate, edate.AddMonths(1), request.GroupBy, request.SumBy);
if (null == datas)
throw new PerformanceException("当前绩效记录不存在");
foreach (var item in SumDatas(datas))
{
TotalData += item.Value;
}
var list = new QueryComputeByDateGetTotal
{
return reportRepository.QueryComputeByDateAndTotal(viewName, beginTime, endTime,groupBy,sumBy);
Head = head,
Data = datas,
TotalData = TotalData,
TotalCount = TotalCount,
TotalPages = (int)Math.Ceiling((double)TotalCount / request.PageSize),
CurrentPage = request.CurrentPage,
PageSize = request.PageSize
};
return list;
}
/// <summary>
///
/// 合计数据
/// </summary>
/// <param name="datas"></param>
/// <returns></returns>
......@@ -2119,6 +2180,16 @@ public List<dynamic> GetAllComputeViewByDateAndTotal(string viewName, DateTime b
public class ComputeConfig
{
public static List<cof_alias> PerformanceTotal(string route,string[] heads)
{
if (route== "/report/wholehospital_grant_summary")
return AllComputeView.Where(t => heads.Contains(t.Name.ToLower())).ToList();
if (route == "/report/wholehospital_accounting_grant_summary")
return AllComputeDepartmentView.Where(t => heads.Contains(t.Name.ToLower())).ToList();
if (route == "/report/wholehospital_finance_grant_summary")
return AllComputePersonView.Where(t => heads.Contains(t.Name.ToLower())).ToList();
return null;
}
public static List<cof_alias> AllComputeView { get; } = new List<cof_alias>
{
new cof_alias{ Alias = "来源", Name = nameof(view_allot_sign_emp.Source), States = 1},
......@@ -2161,6 +2232,9 @@ public static List<cof_alias> AllComputeViewByDate
}
public static List<cof_alias> AllComputePersonView { get; } = new List<cof_alias>
{
new cof_alias{ Alias = "科室类别", Name = nameof(view_allot_sign_emp.UnitType), States = 1},
......@@ -2194,7 +2268,7 @@ public static List<cof_alias> AllComputePersonViewByDate
}
public static List<cof_alias> AllComputeDepartmentView { get; } = new List<cof_alias>
{
new cof_alias{ Alias = "核算群体", Name = nameof(view_allot_sign_dept.UnitName), States = 1},
new cof_alias{ Alias = "核算群体", Name = nameof(view_allot_sign_dept.UnitType), States = 1},
new cof_alias{ Alias = "核算单元", Name = nameof(view_allot_sign_dept.AccountingUnit), States = 1},
new cof_alias{ Alias = "业绩绩效", Name = nameof(view_allot_sign_dept.PerforFee), States = 1},
new cof_alias{ Alias = "工作量绩效", Name = nameof(view_allot_sign_dept.WorkloadFee), States = 1},
......
......@@ -191,18 +191,18 @@ public string AllComputerViewReport(int allotId, List<dynamic> dynamics, string
/// <param name="allData"></param>
/// <param name="isAll"></param>
/// <returns></returns>
public string AllComputerViewReportByDate(int hospitalId, List<dynamic> dynamics, string route, string name, DateTime beginTime, DateTime endTime)
public string AllComputerViewReportByDate(int hospitalId, List<dynamic> dynamics, string route, string name, DateTime beginTime, DateTime endTime,params string[] headlist)
{
var hospital = perforHospital.GetEntity(t => t.ID == hospitalId);
var title = (beginTime.AddMonths(1).Date == endTime.Date)
? $"{beginTime.ToString("yyyy年MM月")}{hospital.HosName}医院 --- {name}"
: $"{beginTime.ToString("yyyy年MM月")}{endTime.ToString("yyyy年MM月")}{hospital.HosName}医院 --- {name}";
return AllComputerDown(hospital, dynamics, route, title, name);
return AllComputerDown(hospital, dynamics, route, title, name, headlist);
}
public string AllComputerDown(sys_hospital hospital, List<dynamic> dynamics, string route, string title, string name)
public string AllComputerDown(sys_hospital hospital, List<dynamic> dynamics, string route, string title, string name, params string[] headlist)
{
var headList = _computeService.CustomColumnHeaders(hospital.ID, route).Where(w => w.States == 1).ToList();
var headList = _computeService.CustomColumnHeaders(hospital.ID, route, headlist).Where(w => w.States == 1).ToList();
var dpath = Path.Combine(evn.ContentRootPath, "Files", "PerformanceRelease", $"{hospital.ID}");
FileHelper.CreateDirectory(dpath);
string filepath = Path.Combine(dpath, $"{hospital.HosName}-{name}-{DateTime.Now:yyyyMMdd}");
......
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