Commit 8d04651f by lcx

Merge branch 'v2020morge' into v2020morge-graphql

# Conflicts:
#	performance/Performance.Api/Controllers/SecondAllotController.cs
#	performance/Performance.Api/wwwroot/Performance.EntityModels.xml
#	performance/Performance.EntityModels/Context/PerformanceDbContext.cs
parents 6dcaa653 e940a7c2
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Http.Internal;
using Microsoft.AspNetCore.Mvc;
using Performance.DtoModels;
using Performance.Infrastructure;
using Performance.Services;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO;
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
...@@ -10,10 +17,51 @@ namespace Performance.Api.Controllers ...@@ -10,10 +17,51 @@ namespace Performance.Api.Controllers
[Route("api/{hospitalId}/report/global")] [Route("api/{hospitalId}/report/global")]
public class ReportGlobalController : Controller public class ReportGlobalController : Controller
{ {
//private readonly private readonly IHostingEnvironment env;
private readonly AllotService allotService;
private readonly ReportGlobalService reportGlobalService;
public ReportGlobalController() public ReportGlobalController(
IHostingEnvironment env,
AllotService allotService,
ReportGlobalService reportGlobalService
)
{ {
this.env = env;
this.allotService = allotService;
this.reportGlobalService = reportGlobalService;
}
/// <summary>
/// 上传人员绩效文件
/// </summary>
/// <param name="hospitalId"></param>
/// <param name="form"></param>
/// <returns></returns>
[Route("import")]
[HttpPost]
public ApiResponse Import(int hospitalId, [FromForm] IFormCollection form)
{
var file = ((FormFileCollection)form.Files).FirstOrDefault();
if (file == null)
return new ApiResponse(ResponseType.Fail, "参数错误", "文件无效");
var name = FileHelper.GetFileNameNoExtension(file.FileName) + DateTime.Now.ToString("yyyyMMddHHmmssfff");
var ext = FileHelper.GetExtension(file.FileName);
var dpath = Path.Combine(env.ContentRootPath, "Files", $"{hospitalId}", $"ImportDataFiles");
FileHelper.CreateDirectory(dpath);
var path = Path.Combine(dpath, $"{name}{ext}");
using (var stream = file.OpenReadStream())
{
byte[] bytes = new byte[stream.Length];
stream.Read(bytes, 0, bytes.Length);
if (!FileHelper.CreateFile(path, bytes))
return new ApiResponse(ResponseType.Fail, $"{file.FileName}上传失败");
}
reportGlobalService.ImportAllotData(hospitalId, path);
return new ApiResponse(ResponseType.OK);
} }
} }
} }
...@@ -456,7 +456,6 @@ public ApiResponse DeptComputeDetail(int allotId) ...@@ -456,7 +456,6 @@ public ApiResponse DeptComputeDetail(int allotId)
var userId = claimService.GetUserId(); var userId = claimService.GetUserId();
//var data = secondAllotService.DeptComputeDetail(userId, allotId, out int isShowManage); //var data = secondAllotService.DeptComputeDetail(userId, allotId, out int isShowManage);
var data = secondAllotService.DeptComputeDetailList(userId, allotId, out int isShowManage); var data = secondAllotService.DeptComputeDetailList(userId, allotId, out int isShowManage);
return new ApiResponse(ResponseType.OK, new { isShowManage, data }); return new ApiResponse(ResponseType.OK, new { isShowManage, data });
} }
} }
......
...@@ -1094,6 +1094,14 @@ ...@@ -1094,6 +1094,14 @@
<param name="request"></param> <param name="request"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.ReportGlobalController.Import(System.Int32,Microsoft.AspNetCore.Http.IFormCollection)">
<summary>
上传人员绩效文件
</summary>
<param name="hospitalId"></param>
<param name="form"></param>
<returns></returns>
</member>
<member name="T:Performance.Api.Controllers.SecondAllotController"> <member name="T:Performance.Api.Controllers.SecondAllotController">
<summary> <summary>
二次绩效 二次绩效
......
...@@ -936,7 +936,7 @@ ...@@ -936,7 +936,7 @@
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.AccountingUnit"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.AccountingUnit">
<summary> <summary>
核算单元 核算单元
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.EmployeeName"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.EmployeeName">
...@@ -1044,6 +1044,11 @@ ...@@ -1044,6 +1044,11 @@
应发管理绩效 应发管理绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.Income"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.Income">
<summary> <summary>
科室业绩 科室业绩
......
...@@ -88,9 +88,6 @@ ...@@ -88,9 +88,6 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_workitem"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_workitem">
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_workloadtype">
<summary> 工作量分类 </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_workyear"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_workyear">
<summary> 工龄对应绩效系数配置 </summary> <summary> 工龄对应绩效系数配置 </summary>
</member> </member>
...@@ -101,7 +98,7 @@ ...@@ -101,7 +98,7 @@
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cust_script"> <member name="P:Performance.EntityModels.PerformanceDbContext.cust_script">
<summary> 自定义导出 </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.ex_item"> <member name="P:Performance.EntityModels.PerformanceDbContext.ex_item">
<summary> </summary> <summary> </summary>
...@@ -121,10 +118,7 @@ ...@@ -121,10 +118,7 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.ex_type"> <member name="P:Performance.EntityModels.PerformanceDbContext.ex_type">
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_data"> <member name="P:Performance.EntityModels.PerformanceDbContext.his_importdata">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_script">
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.hos_personfee"> <member name="P:Performance.EntityModels.PerformanceDbContext.hos_personfee">
...@@ -160,18 +154,6 @@ ...@@ -160,18 +154,6 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.mod_dic"> <member name="P:Performance.EntityModels.PerformanceDbContext.mod_dic">
<summary> 部分公共数据抽取SQL </summary> <summary> 部分公共数据抽取SQL </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.mod_extract">
<summary> 医院数据提取脚本 </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.mod_item">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.mod_module">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.mod_special">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.per_againallot"> <member name="P:Performance.EntityModels.PerformanceDbContext.per_againallot">
<summary> </summary> <summary> </summary>
</member> </member>
...@@ -220,21 +202,6 @@ ...@@ -220,21 +202,6 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.report_global"> <member name="P:Performance.EntityModels.PerformanceDbContext.report_global">
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_original_persontime">
<summary> 医院门诊住院人次 </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_original_stays">
<summary> 医院门诊住院人次 </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_original_surgery">
<summary> 医院手术人次 </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_original_workload">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_performance">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.res_account"> <member name="P:Performance.EntityModels.PerformanceDbContext.res_account">
<summary> 科室核算结果 </summary> <summary> 科室核算结果 </summary>
</member> </member>
...@@ -384,11 +351,6 @@ ...@@ -384,11 +351,6 @@
二次绩效ID 二次绩效ID
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_compute.UnitType">
<summary>
科室类型
</summary>
</member>
<member name="P:Performance.EntityModels.ag_compute.Department"> <member name="P:Performance.EntityModels.ag_compute.Department">
<summary> <summary>
科室 科室
...@@ -414,11 +376,6 @@ ...@@ -414,11 +376,6 @@
可分配绩效 可分配绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_compute.PerforManagementFee">
<summary>
管理绩效
</summary>
</member>
<member name="P:Performance.EntityModels.ag_compute.OthePerfor"> <member name="P:Performance.EntityModels.ag_compute.OthePerfor">
<summary> <summary>
医院其他绩效 医院其他绩效
...@@ -426,7 +383,7 @@ ...@@ -426,7 +383,7 @@
</member> </member>
<member name="P:Performance.EntityModels.ag_compute.NightWorkPerfor"> <member name="P:Performance.EntityModels.ag_compute.NightWorkPerfor">
<summary> <summary>
夜班工作量绩效 实发绩效工资金额
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_compute.RealGiveFee"> <member name="P:Performance.EntityModels.ag_compute.RealGiveFee">
...@@ -600,14 +557,14 @@ ...@@ -600,14 +557,14 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_fixatitem.ID"> <member name="P:Performance.EntityModels.ag_fixatitem.ID">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_fixatitem.AllotId"> <member name="P:Performance.EntityModels.ag_fixatitem.AllotId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_fixatitem.SecondId"> <member name="P:Performance.EntityModels.ag_fixatitem.SecondId">
<summary> <summary>
...@@ -615,9 +572,9 @@ ...@@ -615,9 +572,9 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_fixatitem.UnitType"> <member name="P:Performance.EntityModels.ag_fixatitem.UnitType">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_fixatitem.RowNumber"> <member name="P:Performance.EntityModels.ag_fixatitem.RowNumber">
<summary> <summary>
...@@ -879,26 +836,6 @@ ...@@ -879,26 +836,6 @@
科室实发金额 科室实发金额
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_secondallot.Efficiency">
<summary>
效率绩效
</summary>
</member>
<member name="P:Performance.EntityModels.ag_secondallot.Scale">
<summary>
规模绩效
</summary>
</member>
<member name="P:Performance.EntityModels.ag_secondallot.Grant">
<summary>
发放系数
</summary>
</member>
<member name="P:Performance.EntityModels.ag_secondallot.ShouldGiveFee">
<summary>
应发管理绩效
</summary>
</member>
<member name="P:Performance.EntityModels.ag_secondallot.Status"> <member name="P:Performance.EntityModels.ag_secondallot.Status">
<summary> <summary>
状态 1 未提交 2 等待审核 3 审核通过 4 驳回 状态 1 未提交 2 等待审核 3 审核通过 4 驳回
...@@ -929,6 +866,11 @@ ...@@ -929,6 +866,11 @@
备注 备注
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_secondallot.NursingDeptStatus">
<summary>
护理部审核状态 1 未提交 2 等待审核 3 审核通过 4 驳回
</summary>
</member>
<member name="P:Performance.EntityModels.ag_secondallot.NursingDeptAuditTime"> <member name="P:Performance.EntityModels.ag_secondallot.NursingDeptAuditTime">
<summary> <summary>
护理部审核时间 护理部审核时间
...@@ -944,11 +886,6 @@ ...@@ -944,11 +886,6 @@
护理部备注 护理部备注
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.ag_secondallot.NursingDeptStatus">
<summary>
护理部审核状态 2 等待审核 3 审核通过 4 驳回
</summary>
</member>
<member name="T:Performance.EntityModels.ag_temp"> <member name="T:Performance.EntityModels.ag_temp">
<summary> <summary>
二次绩效模板 二次绩效模板
...@@ -1529,36 +1466,6 @@ ...@@ -1529,36 +1466,6 @@
1. 药占比 2. CMI 1. 药占比 2. CMI
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.cof_workloadtype">
<summary>
工作量分类
</summary>
</member>
<member name="P:Performance.EntityModels.cof_workloadtype.ID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_workloadtype.AllotID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_workloadtype.SourceType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_workloadtype.Original">
<summary>
名称
</summary>
</member>
<member name="P:Performance.EntityModels.cof_workloadtype.Category">
<summary>
类别
</summary>
</member>
<member name="T:Performance.EntityModels.cof_workyear"> <member name="T:Performance.EntityModels.cof_workyear">
<summary> <summary>
工龄对应绩效系数配置 工龄对应绩效系数配置
...@@ -1591,7 +1498,7 @@ ...@@ -1591,7 +1498,7 @@
</member> </member>
<member name="T:Performance.EntityModels.collect_data"> <member name="T:Performance.EntityModels.collect_data">
<summary> <summary>
采集数据
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_data.ID"> <member name="P:Performance.EntityModels.collect_data.ID">
...@@ -1611,7 +1518,7 @@ ...@@ -1611,7 +1518,7 @@
</member> </member>
<member name="P:Performance.EntityModels.collect_data.UnitType"> <member name="P:Performance.EntityModels.collect_data.UnitType">
<summary> <summary>
核算单元类别 1 医生组 2护理组 3医技组
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_data.RowNumber"> <member name="P:Performance.EntityModels.collect_data.RowNumber">
...@@ -1631,17 +1538,17 @@ ...@@ -1631,17 +1538,17 @@
</member> </member>
<member name="P:Performance.EntityModels.collect_data.AccountingUnitTechnician"> <member name="P:Performance.EntityModels.collect_data.AccountingUnitTechnician">
<summary> <summary>
核算单元名称医技 核算单元名称 医技
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_data.AccountingUnitNurse"> <member name="P:Performance.EntityModels.collect_data.AccountingUnitNurse">
<summary> <summary>
核算单元名称护士 核算单元名称 护士
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_data.AccountingUnitDoctor"> <member name="P:Performance.EntityModels.collect_data.AccountingUnitDoctor">
<summary> <summary>
核算单元名称医生 核算单元名称 医生
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_data.Department"> <member name="P:Performance.EntityModels.collect_data.Department">
...@@ -1660,43 +1567,33 @@ ...@@ -1660,43 +1567,33 @@
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.collect_permission"> <member name="T:Performance.EntityModels.collect_permission">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.Id"> <member name="P:Performance.EntityModels.collect_permission.ID">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.HospitalId"> <member name="P:Performance.EntityModels.collect_permission.HospitalId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.UserId"> <member name="P:Performance.EntityModels.collect_permission.UserId">
<summary> <summary>
</summary>
</member>
<member name="P:Performance.EntityModels.collect_permission.SheetType">
<summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.SheetName"> <member name="P:Performance.EntityModels.collect_permission.SheetName">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.collect_permission.HeadName">
<summary> <summary>
列头名称 列头类型名称
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.Visible"> <member name="P:Performance.EntityModels.collect_permission.HeadName">
<summary> <summary>
0 可见 1 只读 列头名称
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.Readnoly"> <member name="P:Performance.EntityModels.collect_permission.Readnoly">
...@@ -1706,7 +1603,12 @@ ...@@ -1706,7 +1603,12 @@
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.AttachLast"> <member name="P:Performance.EntityModels.collect_permission.AttachLast">
<summary> <summary>
是否附带上次绩效 0 附带 1 不附带 是否附带上次绩效 0 不附带 1 附带
</summary>
</member>
<member name="P:Performance.EntityModels.collect_permission.Visible">
<summary>
0 可见 1 不可见
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.cust_script"> <member name="T:Performance.EntityModels.cust_script">
...@@ -1714,7 +1616,7 @@ ...@@ -1714,7 +1616,7 @@
自定义导出 自定义导出
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.cust_script.Id"> <member name="P:Performance.EntityModels.cust_script.ID">
<summary> <summary>
</summary> </summary>
...@@ -1734,16 +1636,6 @@ ...@@ -1734,16 +1636,6 @@
是否允许二次分配下载 1 允许 2 禁止 是否允许二次分配下载 1 允许 2 禁止
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.cust_script.Name">
<summary>
名称
</summary>
</member>
<member name="P:Performance.EntityModels.cust_script.Script">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cust_script.ConfigId"> <member name="P:Performance.EntityModels.cust_script.ConfigId">
<summary> <summary>
配置Id 配置Id
...@@ -2024,134 +1916,79 @@ ...@@ -2024,134 +1916,79 @@
来源 来源
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.his_data"> <member name="T:Performance.EntityModels.his_importdata">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.HospitalId"> <member name="P:Performance.EntityModels.his_importdata.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.AllotId"> <member name="P:Performance.EntityModels.his_importdata.HospitalId">
<summary> <summary>
医院ID
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.Year"> <member name="P:Performance.EntityModels.his_importdata.AllotId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.Month"> <member name="P:Performance.EntityModels.his_importdata.Year">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.HisDepartment"> <member name="P:Performance.EntityModels.his_importdata.Month">
<summary> <summary>
His科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.AccountingUnit"> <member name="P:Performance.EntityModels.his_importdata.AccountingUnit">
<summary> <summary>
核算单元 科室核算单元
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.Department"> <member name="P:Performance.EntityModels.his_importdata.Department">
<summary> <summary>
科室 科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.PersonnelName"> <member name="P:Performance.EntityModels.his_importdata.PersonnelName">
<summary> <summary>
医生姓名 医生姓名
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.PersonnelNumber"> <member name="P:Performance.EntityModels.his_importdata.PersonnelNumber">
<summary> <summary>
人员工号 人员工号
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_data.SourceType"> <member name="P:Performance.EntityModels.his_importdata.SourceType">
<summary>
来源
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.Category">
<summary>
费用类型
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.Original">
<summary>
原始分类
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.ItemName">
<summary>
标准分类
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.Value">
<summary>
费用
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="T:Performance.EntityModels.his_script">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_script.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_script.HospitalId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_script.SourceType"> <member name="P:Performance.EntityModels.his_importdata.Category">
<summary>
来源
</summary>
</member>
<member name="P:Performance.EntityModels.his_script.Category">
<summary>
费用类型
</summary>
</member>
<member name="P:Performance.EntityModels.his_script.ExecScript">
<summary> <summary>
执行sql 一级分类
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_script.DatabaseType"> <member name="P:Performance.EntityModels.his_importdata.Original">
<summary> <summary>
数据库类型1、Sql Server 2、Orcale 原始分类
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_script.ConfigId"> <member name="P:Performance.EntityModels.his_importdata.ItemName">
<summary> <summary>
配置Id 二级分类
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_script.IsEnable"> <member name="P:Performance.EntityModels.his_importdata.Value">
<summary> <summary>
是否可用 1 可用 2 不可用
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.hos_personfee"> <member name="T:Performance.EntityModels.hos_personfee">
...@@ -2369,24 +2206,24 @@ ...@@ -2369,24 +2206,24 @@
行号 行号
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_data.EmployeeName"> <member name="P:Performance.EntityModels.im_data.AccountingUnit">
<summary> <summary>
人员姓名 核算单元名称
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_data.JobNumber"> <member name="P:Performance.EntityModels.im_data.Department">
<summary> <summary>
人员工号 科室名称
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_data.AccountingUnit"> <member name="P:Performance.EntityModels.im_data.EmployeeName">
<summary> <summary>
核算单元名称 人员姓名
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_data.Department"> <member name="P:Performance.EntityModels.im_data.JobNumber">
<summary> <summary>
科室名称 人员工号
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_data.TypeName"> <member name="P:Performance.EntityModels.im_data.TypeName">
...@@ -2549,21 +2386,6 @@ ...@@ -2549,21 +2386,6 @@
其他绩效 其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee.OtherPerfor2">
<summary>
其他绩效2
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee.OtherPerfor3">
<summary>
其他绩效3
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee.OtherPerfor4">
<summary>
其他绩效4
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee.NightWorkPerfor"> <member name="P:Performance.EntityModels.im_employee.NightWorkPerfor">
<summary> <summary>
夜班费 夜班费
...@@ -2669,11 +2491,21 @@ ...@@ -2669,11 +2491,21 @@
基础绩效系数 基础绩效系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_clinic.FitPeopleValue">
<summary>
实际人均绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.PostCoefficient"> <member name="P:Performance.EntityModels.im_employee_clinic.PostCoefficient">
<summary> <summary>
岗位系数 岗位系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_clinic.PermanentStaff">
<summary>
效率绩效人数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Efficiency"> <member name="P:Performance.EntityModels.im_employee_clinic.Efficiency">
<summary> <summary>
效率绩效系数 效率绩效系数
...@@ -2689,6 +2521,11 @@ ...@@ -2689,6 +2521,11 @@
管理绩效发放系数 管理绩效发放系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_clinic.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.ScoreAverageRate"> <member name="P:Performance.EntityModels.im_employee_clinic.ScoreAverageRate">
<summary> <summary>
考核得分率 考核得分率
...@@ -2714,16 +2551,6 @@ ...@@ -2714,16 +2551,6 @@
其他绩效 其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_clinic.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.NightWorkPerfor">
<summary>
夜班费
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Punishment"> <member name="P:Performance.EntityModels.im_employee_clinic.Punishment">
<summary> <summary>
医院奖罚 医院奖罚
...@@ -2749,16 +2576,6 @@ ...@@ -2749,16 +2576,6 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_clinic.PermanentStaff">
<summary>
效率绩效人数
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.FitPeopleValue">
<summary>
实际人均绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.AssessBeforeOtherFee"> <member name="P:Performance.EntityModels.im_employee_clinic.AssessBeforeOtherFee">
<summary> <summary>
考核前其他绩效 考核前其他绩效
...@@ -2836,7 +2653,7 @@ ...@@ -2836,7 +2653,7 @@
</member> </member>
<member name="P:Performance.EntityModels.im_employee_logistics.DoctorName"> <member name="P:Performance.EntityModels.im_employee_logistics.DoctorName">
<summary> <summary>
姓名 医生姓名
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_logistics.JobTitle"> <member name="P:Performance.EntityModels.im_employee_logistics.JobTitle">
...@@ -3159,202 +2976,7 @@ ...@@ -3159,202 +2976,7 @@
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.mod_extract"> <member name="T:Performance.EntityModels.per_againallot">
<summary>
医院数据提取脚本
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.HospitalId">
<summary>
医院ID
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.EName">
<summary>
当前脚本提取内容名称
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.ExecuteScript">
<summary>
执行脚本
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.ExecuteType">
<summary>
当前脚本类型 1 收入整表 2 单项数据提取
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.SourceType">
<summary>
数据库来源类型 1 标准库 2 绩效库
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.Description">
<summary>
描述
</summary>
</member>
<member name="P:Performance.EntityModels.mod_extract.IsEnable">
<summary>
是否可用 1 可用 2 不可用
</summary>
</member>
<member name="T:Performance.EntityModels.mod_item">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.ModuleId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.ItemName">
<summary>
绩效考核项
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.FactorValue1">
<summary>
默认系数或医生系数
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.FactorValue2">
<summary>
护理系数
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.FactorValue3">
<summary>
医技系数
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.ExtractId">
<summary>
抽取绩效值SQL
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.ConfigId">
<summary>
数据库地址
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.SelectionRange">
<summary>
用户选定抽取范围
</summary>
</member>
<member name="P:Performance.EntityModels.mod_item.ReadOnly">
<summary>
只读 0、否 1、是
</summary>
</member>
<member name="T:Performance.EntityModels.mod_module">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.SheetType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.ModuleName">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.Description">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.ExtractId">
<summary>
提取脚本ID
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.ConfigId">
<summary>
数据库地址
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.ReadOnly">
<summary>
只读 0、否 1、是
</summary>
</member>
<member name="P:Performance.EntityModels.mod_module.IsGenerated">
<summary>
是否生成Item 0、否 1、是
</summary>
</member>
<member name="T:Performance.EntityModels.mod_special">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.Department">
<summary>
科室
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.Target">
<summary>
量化指标
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.TargetFactor">
<summary>
量化指标绩效分值
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.AdjustFactor">
<summary>
调节系数
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.ExtractId">
<summary>
抽取绩效值SQL
</summary>
</member>
<member name="P:Performance.EntityModels.mod_special.ConfigId">
<summary>
数据库地址
</summary>
</member>
<member name="T:Performance.EntityModels.per_againallot">
<summary> <summary>
</summary> </summary>
...@@ -3549,19 +3171,19 @@ ...@@ -3549,19 +3171,19 @@
审核人 审核人
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_apr_amount.CreateDate"> <member name="P:Performance.EntityModels.per_apr_amount.Remark">
<summary> <summary>
备注
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_apr_amount.CreateUser"> <member name="P:Performance.EntityModels.per_apr_amount.CreateDate">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_apr_amount.Remark"> <member name="P:Performance.EntityModels.per_apr_amount.CreateUser">
<summary> <summary>
备注
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.per_budget_amount"> <member name="T:Performance.EntityModels.per_budget_amount">
...@@ -4030,9 +3652,9 @@ ...@@ -4030,9 +3652,9 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_employee.Id"> <member name="P:Performance.EntityModels.per_employee.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_employee.HospitalId"> <member name="P:Performance.EntityModels.per_employee.HospitalId">
<summary> <summary>
...@@ -4086,7 +3708,7 @@ ...@@ -4086,7 +3708,7 @@
</member> </member>
<member name="P:Performance.EntityModels.per_employee.UnitType"> <member name="P:Performance.EntityModels.per_employee.UnitType">
<summary> <summary>
核算单元类别 人员类别
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_employee.Attendance"> <member name="P:Performance.EntityModels.per_employee.Attendance">
...@@ -4135,14 +3757,14 @@ ...@@ -4135,14 +3757,14 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_employee.CreateTime"> <member name="P:Performance.EntityModels.per_employee.CreateTime">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_employee.CreateUser"> <member name="P:Performance.EntityModels.per_employee.CreateUser">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.per_first"> <member name="T:Performance.EntityModels.per_first">
<summary> <summary>
...@@ -4216,13 +3838,13 @@ ...@@ -4216,13 +3838,13 @@
</member> </member>
<member name="T:Performance.EntityModels.report_global"> <member name="T:Performance.EntityModels.report_global">
<summary> <summary>
条件表
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.Id"> <member name="P:Performance.EntityModels.report_global.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.HospitalID"> <member name="P:Performance.EntityModels.report_global.HospitalID">
<summary> <summary>
...@@ -4234,27 +3856,27 @@ ...@@ -4234,27 +3856,27 @@
类别 类别
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.Year"> <member name="P:Performance.EntityModels.report_global.Type">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.Month"> <member name="P:Performance.EntityModels.report_global.InputName">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.Value"> <member name="P:Performance.EntityModels.report_global.InputType">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.report_original_persontime"> <member name="T:Performance.EntityModels.report_original_persontime">
<summary> <summary>
医院门诊住院人次
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_original_persontime.ID"> <member name="P:Performance.EntityModels.report_original_persontime.Id">
<summary> <summary>
</summary> </summary>
...@@ -4301,10 +3923,10 @@ ...@@ -4301,10 +3923,10 @@
</member> </member>
<member name="T:Performance.EntityModels.report_original_stays"> <member name="T:Performance.EntityModels.report_original_stays">
<summary> <summary>
医院门诊住院人次
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_original_stays.ID"> <member name="P:Performance.EntityModels.report_original_stays.Id">
<summary> <summary>
</summary> </summary>
...@@ -4351,10 +3973,10 @@ ...@@ -4351,10 +3973,10 @@
</member> </member>
<member name="T:Performance.EntityModels.report_original_surgery"> <member name="T:Performance.EntityModels.report_original_surgery">
<summary> <summary>
医院手术人次
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_original_surgery.ID"> <member name="P:Performance.EntityModels.report_original_surgery.Id">
<summary> <summary>
</summary> </summary>
...@@ -4464,91 +4086,6 @@ ...@@ -4464,91 +4086,6 @@
费用 费用
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.report_performance">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.Year">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.Month">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.PersonnelName">
<summary>
人员信息
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.PersonnelNumber">
<summary>
人员工号
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.AccountingUnit">
<summary>
核算单元
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.Department">
<summary>
医院科室
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.UnitType">
<summary>
核算单元类型
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.SourceType">
<summary>
统计分类
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.Category">
<summary>
统计大分类
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.ItemName">
<summary>
统计小分类
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.CurrentValue">
<summary>
本期
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.LastIssueValue">
<summary>
上期
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.SamePeriodValue">
<summary>
同期
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance.BudgetValue">
<summary>
预算
</summary>
</member>
<member name="T:Performance.EntityModels.rep_group"> <member name="T:Performance.EntityModels.rep_group">
<summary> <summary>
...@@ -4669,16 +4206,6 @@ ...@@ -4669,16 +4206,6 @@
报表标题 报表标题
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.rep_report.QueryName">
<summary>
查询方法名称
</summary>
</member>
<member name="P:Performance.EntityModels.rep_report.QueryArguments">
<summary>
查询参数
</summary>
</member>
<member name="P:Performance.EntityModels.rep_report.XTitle"> <member name="P:Performance.EntityModels.rep_report.XTitle">
<summary> <summary>
X轴标题 X轴标题
...@@ -4854,16 +4381,6 @@ ...@@ -4854,16 +4381,6 @@
是否带入平均计算 是 否 是否带入平均计算 是 否
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_account.PermanentStaff">
<summary>
定科人数
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.ManagerNumber">
<summary>
科主任/护士长数量
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.Number"> <member name="P:Performance.EntityModels.res_account.Number">
<summary> <summary>
核算单元医生数量 核算单元医生数量
...@@ -4964,16 +4481,6 @@ ...@@ -4964,16 +4481,6 @@
实发绩效 实发绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_account.Remark">
<summary>
备注
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.ChangeLog">
<summary>
变更日志
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.AssessBeforeOtherFee"> <member name="P:Performance.EntityModels.res_account.AssessBeforeOtherFee">
<summary> <summary>
考核前其他绩效 考核前其他绩效
...@@ -4994,6 +4501,16 @@ ...@@ -4994,6 +4501,16 @@
考核后绩效 考核后绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_account.Remark">
<summary>
备注
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.ChangeLog">
<summary>
变更日志
</summary>
</member>
<member name="T:Performance.EntityModels.res_accountdoctor"> <member name="T:Performance.EntityModels.res_accountdoctor">
<summary> <summary>
医生科室核算结果 医生科室核算结果
...@@ -5291,12 +4808,12 @@ ...@@ -5291,12 +4808,12 @@
</member> </member>
<member name="P:Performance.EntityModels.res_compute.FitPeopleValue"> <member name="P:Performance.EntityModels.res_compute.FitPeopleValue">
<summary> <summary>
绩效基础核算参考值
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_compute.FitPeopleRatio"> <member name="P:Performance.EntityModels.res_compute.FitPeopleRatio">
<summary> <summary>
绩效基数核算参考对象取值比例(如临床科室护士*95%)
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_compute.EmployeeName"> <member name="P:Performance.EntityModels.res_compute.EmployeeName">
...@@ -5329,11 +4846,6 @@ ...@@ -5329,11 +4846,6 @@
人均绩效(来自科室经济测算表) 人均绩效(来自科室经济测算表)
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_compute.Basics">
<summary>
基础绩效系数
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.Efficiency"> <member name="P:Performance.EntityModels.res_compute.Efficiency">
<summary> <summary>
效率绩效(需计算) 效率绩效(需计算)
...@@ -5379,26 +4891,6 @@ ...@@ -5379,26 +4891,6 @@
其他绩效(来自人员名单) 其他绩效(来自人员名单)
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_compute.OtherPerfor2">
<summary>
其他绩效2(来自人员名单)
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.OtherPerfor3">
<summary>
其他绩效3(来自人员名单)
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.OtherPerfor4">
<summary>
其他绩效4(来自人员名单)
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.OtherManagePerfor">
<summary>
其他管理绩效(来自人员名单)
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.NightWorkPerfor"> <member name="P:Performance.EntityModels.res_compute.NightWorkPerfor">
<summary> <summary>
夜班费 夜班费
...@@ -5459,6 +4951,11 @@ ...@@ -5459,6 +4951,11 @@
科主任/护士长人数 科主任/护士长人数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_compute.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.MedicalNumber"> <member name="P:Performance.EntityModels.res_compute.MedicalNumber">
<summary> <summary>
核算单元人员数量 核算单元人员数量
...@@ -5504,11 +5001,6 @@ ...@@ -5504,11 +5001,6 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_reserved.UnitType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.res_reserved.AccountingUnit"> <member name="P:Performance.EntityModels.res_reserved.AccountingUnit">
<summary> <summary>
核算单元 核算单元
......
...@@ -24,7 +24,7 @@ public class PerDataAccountBaisc : IPerData ...@@ -24,7 +24,7 @@ public class PerDataAccountBaisc : IPerData
public string UnitType { get; set; } public string UnitType { get; set; }
/// <summary> /// <summary>
/// 核算单元 /// 核算单元
/// </summary> /// </summary>
public string AccountingUnit { get; set; } public string AccountingUnit { get; set; }
...@@ -158,6 +158,11 @@ public class PerDataAccountBaisc : IPerData ...@@ -158,6 +158,11 @@ public class PerDataAccountBaisc : IPerData
/// </summary> /// </summary>
public decimal ShouldGiveFee { get; set; } public decimal ShouldGiveFee { get; set; }
/// <summary>
/// 其他管理绩效
/// </summary>
public decimal OtherManagePerfor { get; set; }
///// <summary> ///// <summary>
///// 保底绩效参考标准 ///// 保底绩效参考标准
///// </summary> ///// </summary>
...@@ -172,8 +177,8 @@ public class PerDataAccountBaisc : IPerData ...@@ -172,8 +177,8 @@ public class PerDataAccountBaisc : IPerData
///// 工作量倾斜系数 ///// 工作量倾斜系数
///// </summary> ///// </summary>
//public Nullable<decimal> WorkSlopeFactor { get; set; } //public Nullable<decimal> WorkSlopeFactor { get; set; }
#endregion
#endregion EXCEL读取
#region 由计算得出 #region 由计算得出
...@@ -227,6 +232,6 @@ public class PerDataAccountBaisc : IPerData ...@@ -227,6 +232,6 @@ public class PerDataAccountBaisc : IPerData
/// </summary> /// </summary>
public Nullable<decimal> RealGiveFee { get; set; } public Nullable<decimal> RealGiveFee { get; set; }
#endregion #endregion 由计算得出
} }
} }
...@@ -135,6 +135,10 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options) ...@@ -135,6 +135,10 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
public virtual DbSet<his_script> his_script { get; set; } public virtual DbSet<his_script> his_script { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<his_importdata> his_importdata { get; set; }
/// <summary> </summary>
public virtual DbSet<hos_personfee> hos_personfee { get; set; } public virtual DbSet<hos_personfee> hos_personfee { get; set; }
/// <summary> 科室核算导入信息 </summary> /// <summary> 科室核算导入信息 </summary>
......
//-----------------------------------------------------------------------
// <copyright file=" his_importdata.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("his_importdata")]
public class his_importdata
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
/// 医院ID
/// </summary>
public int HospitalId { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> AllotId { get; set; }
/// <summary>
/// 年
/// </summary>
public int Year { get; set; }
/// <summary>
/// 月
/// </summary>
public int Month { get; set; }
/// <summary>
/// 科室核算单元
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
/// 科室
/// </summary>
public string Department { get; set; }
/// <summary>
/// 医生姓名
/// </summary>
public string PersonnelName { get; set; }
/// <summary>
/// 人员工号
/// </summary>
public string PersonnelNumber { get; set; }
/// <summary>
///
/// </summary>
public string SourceType { get; set; }
/// <summary>
/// 一级分类
/// </summary>
public string Category { get; set; }
/// <summary>
/// 原始分类
/// </summary>
public string Original { get; set; }
/// <summary>
/// 二级分类
/// </summary>
public string ItemName { get; set; }
/// <summary>
/// 值
/// </summary>
public Nullable<decimal> Value { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_importdata.cs">
// * FileName: his_importdata.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// his_importdata Repository
/// </summary>
public partial class PerforHisimportdataRepository : PerforRepository<his_importdata>
{
public PerforHisimportdataRepository(PerformanceDbContext context) : base(context)
{
}
}
}
...@@ -6,6 +6,8 @@ ...@@ -6,6 +6,8 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
namespace Performance.Services namespace Performance.Services
...@@ -901,15 +903,20 @@ public DeptDataDetails<DetailModuleExtend> DeptDetail(int accountId) ...@@ -901,15 +903,20 @@ public DeptDataDetails<DetailModuleExtend> DeptDetail(int accountId)
private List<DetailModule> CommonDetailItems(List<im_data> basicData, List<im_header> headers, per_sheet sheet, UnitType type) private List<DetailModule> CommonDetailItems(List<im_data> basicData, List<im_header> headers, per_sheet sheet, UnitType type)
{ {
var items = basicData Expression<Func<im_data, bool>> exp = (t) => t.SheetID == sheet.ID && t.IsTotal != 1;
.Where(t => t.SheetID == sheet.ID && t.UnitType == (int)type && t.IsTotal != 1)
?.Select(t => new DetailModule if (sheet.SheetType == (int)SheetType.Workload && new int[] { (int)UnitType.医技组, (int)UnitType.其他医技组 }.Contains((int)type))
{ exp = exp.And(t => new int[] { (int)UnitType.医生组, (int)UnitType.医技组, (int)UnitType.其他医技组 }.Contains(t.UnitType.Value));
ItemName = t.TypeName, else
CellValue = t.CellValue, exp = exp.And(t => t.UnitType == (int)type);
Factor = sheet.SheetType == (int)SheetType.Workload ? t.FactorValue : t.FactorValue * 100,
ItemValue = t.IsFactor == 1 ? (t.CellValue * (t.FactorValue ?? 0)) : t.CellValue, var items = basicData.Where(exp.Compile())?.Select(t => new DetailModule
}).ToList(); {
ItemName = t.TypeName,
CellValue = t.CellValue,
Factor = sheet.SheetType == (int)SheetType.Workload ? t.FactorValue : t.FactorValue * 100,
ItemValue = t.IsFactor == 1 ? (t.CellValue * (t.FactorValue ?? 0)) : t.CellValue,
}).ToList();
if (items != null && items.Any()) if (items != null && items.Any())
{ {
...@@ -1252,35 +1259,43 @@ public DeptDataDetails GetDoctorDetail(int computeId) ...@@ -1252,35 +1259,43 @@ public DeptDataDetails GetDoctorDetail(int computeId)
//var allot = perforPerallotRepository.GetEntity(t => t.ID == resCompute.AllotID); //var allot = perforPerallotRepository.GetEntity(t => t.ID == resCompute.AllotID);
//if (allot == null) return new DeptDataDetails(); //if (allot == null) return new DeptDataDetails();
var employee = _perforImemployeeclinicRepository.GetEntity(t => t.AllotID == resCompute.AllotID && t.AccountingUnit == resCompute.AccountingUnit && t.UnitType == resCompute.UnitType && t.DoctorName == resCompute.EmployeeName); var employee = _perforImemployeeclinicRepository.GetEntity(t => t.AllotID == resCompute.AllotID && t.AccountingUnit == resCompute.AccountingUnit && t.UnitType == resCompute.UnitType && t.PersonnelNumber == resCompute.JobNumber);
DeptDataDetails doctorDetails = new DeptDataDetails DeptDataDetails doctorDetails = new DeptDataDetails
{ {
ShowFormula = 0, ShowFormula = 0,
Pandect = new PerDataAccountBaisc Pandect = new PerDataAccountBaisc
{ {
BasicFactor = employee?.Basics ?? 0, //基础绩效系数
Effic = employee.Efficiency ?? 0, //效率绩效系数
Scale = employee.Scale ?? 0, //规模绩效系数
Management = employee.Management,//管理绩效发放系数
AdjustFactor = employee?.Adjust ?? 1, //调节系数
AdjustLaterOtherFee = employee.AdjustLaterOtherFee, //调节后其他绩效
AccountingUnit = resCompute.AccountingUnit, AccountingUnit = resCompute.AccountingUnit,
EmployeeName = resCompute.EmployeeName, EmployeeName = resCompute.EmployeeName,
PerforTotal = resCompute.PerforTotal, //科室考核前绩效 PerforTotal = resCompute.PerforTotal, //科室考核前绩效
Number = resCompute.Number ?? 0, //核算人数 Number = resCompute.Number ?? 0, //核算人数
AvgPerfor = (resCompute.Number ?? 0) == 0 ? 0 : resCompute.PerforTotal / resCompute.Number, //人均绩效 AvgPerfor = (resCompute.Number ?? 0) == 0 ? 0 : resCompute.PerforTotal / resCompute.Number, //人均绩效
BasicFactor = employee?.Basics ?? 0, //基础绩效系数 Attendance = resCompute.Attendance ?? 1, //出勤率
Attendance = resCompute.Attendance, //出勤率
Avg = resCompute.Avg, //实际人均 Avg = resCompute.Avg, //实际人均
PermanentStaff = resCompute.PermanentStaff ?? 0, //效率绩效人数 PermanentStaff = resCompute.PermanentStaff ?? 0, //效率绩效人数
Effic = employee.Efficiency ?? 0, //效率绩效系数
EfficPerfor = resCompute.Efficiency ?? 0, //效率绩效 EfficPerfor = resCompute.Efficiency ?? 0, //效率绩效
Scale = employee.Scale ?? 0, //规模绩效系数
ScalePerfor = resCompute.Scale ?? 0, //规模绩效 ScalePerfor = resCompute.Scale ?? 0, //规模绩效
Management = employee.Management,//管理绩效发放系数 Extra = resCompute.Punishment ?? 0, //医院奖罚
OtherManagePerfor = resCompute.OtherManagePerfor ?? 0, //其他管理绩效
ShouldGiveFee = resCompute.ShouldGiveFee ?? 0, //考核前管理绩效 ShouldGiveFee = resCompute.ShouldGiveFee ?? 0, //考核前管理绩效
ScoringAverage = resCompute.ScoreAverageRate ?? 1, //考核得分率 ScoringAverage = resCompute.ScoreAverageRate ?? 1, //考核得分率
AssessLaterManagementFee = Math.Round(resCompute.ShouldGiveFee * resCompute.ScoreAverageRate * resCompute.Attendance + resCompute.Punishment ?? 0), //考核后管理绩效 AssessLaterManagementFee = Math.Round(resCompute.ShouldGiveFee * resCompute.ScoreAverageRate * resCompute.Attendance + resCompute.Punishment ?? 0), //考核后管理绩效
AdjustFactor = employee?.Adjust ?? 1, //调节系数
AdjustLaterOtherFee = employee.AdjustLaterOtherFee, //调节后其他绩效
RealGiveFee = resCompute.RealGiveFee //绩效合计 RealGiveFee = resCompute.RealGiveFee //绩效合计
}, },
Detail = new List<DetailDtos>() Detail = new List<DetailDtos>()
}; };
var isShowManage = IsShowManage(resCompute.AllotID.Value);
// 开启 显示管理绩效
if (isShowManage == 2)
doctorDetails.Pandect.RealGiveFee = doctorDetails.Pandect.AssessLaterManagementFee;
var sheets = _perforPerSheetRepository.GetEntities(t => t.AllotID == resCompute.AllotID && new int[] { (int)SheetType.PersonExtra, (int)SheetType.PersonAdjustLaterOtherFee }.Contains(t.SheetType.Value)); var sheets = _perforPerSheetRepository.GetEntities(t => t.AllotID == resCompute.AllotID && new int[] { (int)SheetType.PersonExtra, (int)SheetType.PersonAdjustLaterOtherFee }.Contains(t.SheetType.Value));
if (sheets == null || !sheets.Any()) return doctorDetails; if (sheets == null || !sheets.Any()) return doctorDetails;
...@@ -1312,4 +1327,4 @@ public DeptDataDetails GetDoctorDetail(int computeId) ...@@ -1312,4 +1327,4 @@ public DeptDataDetails GetDoctorDetail(int computeId)
return doctorDetails; return doctorDetails;
} }
} }
} }
\ No newline at end of file
using Performance.EntityModels; using Microsoft.Extensions.Logging;
using NPOI.SS.UserModel;
using Performance.DtoModels;
using Performance.EntityModels;
using Performance.Infrastructure;
using Performance.Repository; using Performance.Repository;
using Performance.Services.ExtractExcelService;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Text; using System.Text;
namespace Performance.Services namespace Performance.Services
{ {
public class ReportGlobalService : IAutoInjection public class ReportGlobalService : IAutoInjection
{ {
private readonly ILogger logger;
private readonly PerforPerallotRepository perallotRepository;
private readonly PerforReportglobalRepository reportglobalRepository; private readonly PerforReportglobalRepository reportglobalRepository;
private readonly PerforHisimportdataRepository hisimportdataRepository;
public ReportGlobalService(PerforReportglobalRepository reportglobalRepository) public ReportGlobalService(
ILogger<ReportGlobalService> logger,
PerforPerallotRepository perallotRepository,
PerforReportglobalRepository reportglobalRepository,
PerforHisimportdataRepository hisimportdataRepository
)
{ {
this.logger = logger;
this.perallotRepository = perallotRepository;
this.reportglobalRepository = reportglobalRepository; this.reportglobalRepository = reportglobalRepository;
this.hisimportdataRepository = hisimportdataRepository;
} }
public List<report_global> GetReportGlobals(int hospitalId) public List<report_global> GetReportGlobals(int hospitalId)
...@@ -20,5 +37,119 @@ public List<report_global> GetReportGlobals(int hospitalId) ...@@ -20,5 +37,119 @@ public List<report_global> GetReportGlobals(int hospitalId)
var globals = reportglobalRepository.GetEntities(t => t.HospitalID == hospitalId); var globals = reportglobalRepository.GetEntities(t => t.HospitalID == hospitalId);
return globals; return globals;
} }
#region ImportFile && SaveData
public void ImportAllotData(int hospitalId, string filePath)
{
IWorkbook workbook = null;
try
{
workbook = ExcelHelper.GetWorkbook(filePath);
if (workbook == null) throw new PerformanceException("文件读取失败");
var allots = perallotRepository.GetEntities(t => t.HospitalId == hospitalId);
for (int sheetIndex = 0; sheetIndex < workbook.NumberOfSheets; sheetIndex++)
{
var sheet = workbook.GetSheetAt(sheetIndex);
if (sheet == null) continue;
string sheetName = sheet.SheetName.NoBlank();
var columns = GetColumns(sheet, sheetName, out string sourceType);
if (columns == null || !columns.Any(t => !string.IsNullOrEmpty(t.NoBlank()))) continue;
var data = new List<his_importdata>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
his_importdata importdata = new his_importdata
{
Year = GetCellValue<int>(row, columns, nameof(his_importdata.Year)),
Month = GetCellValue<int>(row, columns, nameof(his_importdata.Month)),
AccountingUnit = GetCellValue<string>(row, columns, nameof(his_importdata.AccountingUnit)),
Department = GetCellValue<string>(row, columns, nameof(his_importdata.Department)),
PersonnelNumber = GetCellValue<string>(row, columns, nameof(his_importdata.PersonnelNumber)),
PersonnelName = GetCellValue<string>(row, columns, nameof(his_importdata.PersonnelName)),
Original = GetCellValue<string>(row, columns, nameof(his_importdata.Original)),
Value = GetCellValue<decimal>(row, columns, nameof(his_importdata.Value)),
};
data.Add(importdata);
}
if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return;
data.ForEach(t =>
{
t.HospitalId = hospitalId;
t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID;
t.SourceType = sourceType;
t.Category = sheetName;
});
var years = data.Select(t => t.Year).Distinct();
var months = data.Select(t => t.Month).Distinct();
var historyData = hisimportdataRepository.GetEntities(t => t.HospitalId == hospitalId && years.Contains(t.Year) && months.Contains(t.Month) && t.Category == sheetName);
if (historyData != null && historyData.Any()) hisimportdataRepository.RemoveRange(historyData.ToArray());
hisimportdataRepository.AddRange(data.Where(t => t.Year != 0 && t.Month != 0).ToArray());
}
}
catch (Exception ex)
{
logger.LogError(ex.ToString());
}
}
private List<string> GetColumns(ISheet sheet, string sheetName, out string sourceType)
{
sourceType = "";
foreach (var item in sourceTypes)
{
if (item.Value.Contains(sheetName))
{
sourceType = item.Key;
break;
}
}
if (string.IsNullOrEmpty(sourceType)) return new List<string>(); ;
var columnRow = sheet.GetOrCreate(0);
return columnRow.GetCellValues();
}
private T GetCellValue<T>(IRow row, List<string> columns, string key)
{
var value = hisImportdataDict[key];
if (columns.Contains(value) && row.GetCell(columns.IndexOf(value)) != null)
return row.GetCell(columns.IndexOf(value)).GetCellValue<T>();
return default;
}
private readonly Dictionary<string, string[]> sourceTypes = new Dictionary<string, string[]>
{
{ "收入", new string[] { "门诊收入", "住院收入" } },
{ "医生工作量", new string[] { "门诊人次", "出院人次", "手术概况", "住院天数", "实际开放总床日数" } },
{ "医技工作量", new string[] { "医技工作量" } },
};
private readonly Dictionary<string, string> hisImportdataDict = new Dictionary<string, string>
{
{ nameof(his_importdata.Year), "年份" },
{ nameof(his_importdata.Month), "月份" },
{ nameof(his_importdata.AccountingUnit), "核算单元" },
{ nameof(his_importdata.Department), "科室" },
{ nameof(his_importdata.PersonnelNumber), "工号" },
{ nameof(his_importdata.PersonnelName), "医生姓名" },
{ nameof(his_importdata.Original), "类别" },
{ nameof(his_importdata.Value), "值" },
};
#endregion ImportFile && SaveData
} }
} }
...@@ -394,7 +394,7 @@ private List<BodyItem> GetEmployees(List<per_employee> employees, ag_secondallot ...@@ -394,7 +394,7 @@ private List<BodyItem> GetEmployees(List<per_employee> employees, ag_secondallot
var list = new List<BodyItem>(); var list = new List<BodyItem>();
//var employees = personService.GetPersons(allotId, userId); //var employees = personService.GetPersons(allotId, userId);
//if (employees == null || !employees.Any(t => t.UnitType == unittype)) return list; if (employees == null || !employees.Any()) return list;
var hospital = hospitalRepository.GetEntity(t => t.ID == employees.First().HospitalId); var hospital = hospitalRepository.GetEntity(t => t.ID == employees.First().HospitalId);
if (hospital == null) return list; if (hospital == null) return list;
......
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