Commit 9182833f by lcx

Merge branch 'v2020morge' into v2020morge-signalr

# Conflicts:
#	performance/Performance.Api/wwwroot/Performance.Api.xml
#	performance/Performance.Api/wwwroot/Performance.EntityModels.xml
#	performance/Performance.EntityModels/Context/PerformanceDbContext.cs
#	performance/Performance.Services/AllotService.cs
parents 448ab2e4 85bc3234
...@@ -263,6 +263,16 @@ public ApiResponse Generate([CustomizeValidator(RuleSet = "Delete"), FromBody] A ...@@ -263,6 +263,16 @@ public ApiResponse Generate([CustomizeValidator(RuleSet = "Delete"), FromBody] A
////BackgroundJob.Enqueue(() => _allotService.Generate(allot, email)); ////BackgroundJob.Enqueue(() => _allotService.Generate(allot, email));
return new ApiResponse(ResponseType.OK); return new ApiResponse(ResponseType.OK);
} }
/*
[Route("recalculation")]
[HttpPost]
public ApiResponse Recalculation([FromBody] RecalculationRequest request)
{
if (request.Money.HasValue && request.Money.Value > 0)
_allotService.Recalculation(request.AllotId, request.Money.Value);
return new ApiResponse(ResponseType.OK);
}
*/
/// <summary> /// <summary>
/// 重新计算院领导绩效 /// 重新计算院领导绩效
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
using System.Linq; using System.Linq;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using System.Threading.Tasks; using System.Threading.Tasks;
using Performance.DtoModels.Request;
namespace Performance.Api.Controllers namespace Performance.Api.Controllers
{ {
...@@ -22,12 +23,15 @@ public class ComputeController : Controller ...@@ -22,12 +23,15 @@ public class ComputeController : Controller
private ComputeService _computeService; private ComputeService _computeService;
private AllotService _allotService; private AllotService _allotService;
private ClaimService _claim; private ClaimService _claim;
private EmployeeService _employeeService;
public ComputeController(AllotService allotService, public ComputeController(AllotService allotService,
ComputeService computeService, ComputeService computeService,
EmployeeService employeeService,
ClaimService claim) ClaimService claim)
{ {
_allotService = allotService; _allotService = allotService;
_computeService = computeService; _computeService = computeService;
_employeeService = employeeService;
_claim = claim; _claim = claim;
} }
...@@ -253,7 +257,7 @@ public ApiResponse AllComputeAvg([FromBody] ComputerRequest request) ...@@ -253,7 +257,7 @@ public ApiResponse AllComputeAvg([FromBody] ComputerRequest request)
// ? 0 : Math.Round(gc.Sum(s => s.RealGiveFee) / gc.Select(p => new { p.JobNumber, p.EmployeeName }).Distinct().Count() ?? 0) // ? 0 : Math.Round(gc.Sum(s => s.RealGiveFee) / gc.Select(p => new { p.JobNumber, p.EmployeeName }).Distinct().Count() ?? 0)
// })); // }));
return new ApiResponse(ResponseType.OK, "ok", avgs.Select(w => new { w.PositionName, w.TotelNumber, w.TotelValue, w.AvgValue })); return new ApiResponse(ResponseType.OK, "ok", avgs.Select(w => new {w.ID, w.PositionName, w.TotelNumber, w.TotelValue, w.AvgValue }));
} }
/// <summary> /// <summary>
...@@ -366,5 +370,45 @@ public ApiResponse DoctorDetail(int computeId) ...@@ -366,5 +370,45 @@ public ApiResponse DoctorDetail(int computeId)
var result = _computeService.GetDoctorDetail(computeId); var result = _computeService.GetDoctorDetail(computeId);
return new ApiResponse(ResponseType.OK, result); return new ApiResponse(ResponseType.OK, result);
} }
#region 人均绩效修改
/// <summary>
/// 编辑全院绩效平均
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("EditHospitalAvg")]
[HttpPost]
public ApiResponse<res_baiscnorm> EditHospitalAvg([FromBody] ComputerAvgRequest request)
{
var allot = _allotService.GetAllot(request.AllotId);
if (null == allot)
throw new PerformanceException("当前绩效记录不存在");
var result = _computeService.EditHospitalAvg(request);
return new ApiResponse<res_baiscnorm>(ResponseType.OK, result);
}
#endregion
#region 其他绩效统计
/// <summary>
/// 其他医院绩效统计
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("OtherPerStats/{allotId}")]
[HttpPost]
public ApiResponse OtherPerStats(int allotId)
{
var employee = _employeeService.GetAprList(allotId, _claim.GetUserId());
var relust= _computeService.GetOtherPerStats(employee);
return new ApiResponse(ResponseType.OK,relust);
}
#endregion
} }
} }
\ No newline at end of file
...@@ -535,5 +535,44 @@ public ApiResponse WorkHeader([CustomizeValidator(RuleSet = "Select"), FromBody] ...@@ -535,5 +535,44 @@ public ApiResponse WorkHeader([CustomizeValidator(RuleSet = "Select"), FromBody]
var list = _configService.WorkHeader(request.AllotID); var list = _configService.WorkHeader(request.AllotID);
return new ApiResponse(ResponseType.OK, "ok", list); return new ApiResponse(ResponseType.OK, "ok", list);
} }
#region HRP人员科室
/// <summary>
/// 获取HRP人员科室
/// </summary>
/// <param name="hospitalId"></param>
/// <param name="allotId"></param>
/// <returns></returns>
[Route("hrpdepthands/{hospitalId}/allot/{allotId}")]
[HttpPost]
public ApiResponse GetHrpDeptHands([FromRoute] int hospitalId, int allotId)
{
if (hospitalId <= 0)
return new ApiResponse(ResponseType.Fail, "参数错误", "HospitalId无效");
if (allotId <= 0)
return new ApiResponse(ResponseType.Fail, "参数错误", "allotid无效");
var relust = _configService.GetHrpDeptHands(hospitalId, allotId);
return new ApiResponse(ResponseType.OK, relust);
}
/// <summary>
/// 保存HRP人员科室
/// </summary>
/// <param name=""></param>
/// <returns></returns>
[Route("savehrpdept/{hospitalId}/allot/{allotId}")]
[HttpPost]
public ApiResponse SaveHrpDept(int hospitalId, int allotId, [FromBody] SaveCollectData request)
{
if (hospitalId <= 0)
return new ApiResponse(ResponseType.Fail, "参数错误", "HospitalId无效");
if (allotId <= 0)
return new ApiResponse(ResponseType.Fail, "参数错误", "allotid无效");
_configService.SaveDepttypeHands(hospitalId, allotId, request);
return new ApiResponse(ResponseType.OK);
}
#endregion
} }
} }
\ No newline at end of file
...@@ -466,5 +466,20 @@ public ApiResponse<List<TitleValue>> GetPerforTypeDict([FromRoute] int allotId) ...@@ -466,5 +466,20 @@ public ApiResponse<List<TitleValue>> GetPerforTypeDict([FromRoute] int allotId)
var result = employeeService.GetPerforTypeDict(allotId); var result = employeeService.GetPerforTypeDict(allotId);
return new ApiResponse<List<TitleValue>>(ResponseType.OK, "绩效类型字典", result); return new ApiResponse<List<TitleValue>>(ResponseType.OK, "绩效类型字典", result);
} }
/// <summary>
/// 材料科室考核
/// </summary>
/// <returns></returns>
[Route("deptAssessment/{allotId}")]
[HttpPost]
public ApiResponse GetDeptAssessment(int allotId)
{
if (allotId<=0)
return new ApiResponse(ResponseType.ParameterError, "参数AllotId无效!");
var result=employeeService.GetDeptAssessment(allotId);
return new ApiResponse(ResponseType.OK,result);
}
} }
} }
...@@ -401,11 +401,11 @@ public ApiResponse NursingDeptAuditResult([FromBody] SecondAuditRequest request) ...@@ -401,11 +401,11 @@ public ApiResponse NursingDeptAuditResult([FromBody] SecondAuditRequest request)
[HttpPost] [HttpPost]
public ApiResponse OtherList([FromBody] AgOtherRequest request) public ApiResponse OtherList([FromBody] AgOtherRequest request)
{ {
//var result = secondAllotService.OtherList(request.SecondId, claimService.GetUserId()); var result = secondAllotDetails.GetOtherTempDetails(claimService.GetUserId(), request.SecondId, request.IsArchive, request.EmployeeSource);
var result = secondAllotDetails.GetOtherTempData(claimService.GetUserId(), request.SecondId, request.IsArchive, request.EmployeeSource, out decimal? realAmount); //var result = secondAllotDetails.GetOtherTempData(claimService.GetUserId(), request.SecondId, request.IsArchive, request.EmployeeSource, out decimal? realAmount);
var obj = new var obj = new
{ {
header = secondAllotService.OtherListHeader(request.SecondId, realAmount), header = secondAllotService.OtherListHeader(request.SecondId, result?.Sum(t=>t.RealAmount)),
body = result, body = result,
}; };
return new ApiResponse(ResponseType.OK, obj); return new ApiResponse(ResponseType.OK, obj);
......
...@@ -7,8 +7,8 @@ ...@@ -7,8 +7,8 @@
} }
}, },
"AppConnection": { "AppConnection": {
"PerformanceConnectionString": "server=112.124.13.17;database=db_performance;uid=suvalue;pwd=suvalue2016;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;", //"PerformanceConnectionString": "server=112.124.13.17;database=db_performance;uid=suvalue;pwd=suvalue2016;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;",
//"PerformanceConnectionString": "server=192.168.18.166;database=db_yubei;uid=root;pwd=1234qwer;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;", "PerformanceConnectionString": "server=192.168.18.166;database=db_performance_screen;uid=root;pwd=1234qwer;pooling=true;charset=utf8;convert zero datetime=true;port=3306;connection timeout=120;max pool size=512;allow user variables=true;",
"HangfireConnectionString": "server=192.168.18.166;database=db_hangfire;uid=root;pwd=1234qwer;port=3306;allow user variables=true;", "HangfireConnectionString": "server=192.168.18.166;database=db_hangfire;uid=root;pwd=1234qwer;port=3306;allow user variables=true;",
"RedisConnectionString": "116.62.245.55:6379,defaultDatabase=2" "RedisConnectionString": "116.62.245.55:6379,defaultDatabase=2"
}, },
......
...@@ -208,7 +208,7 @@ ...@@ -208,7 +208,7 @@
<summary> <summary>
上传文件 上传文件
</summary> </summary>
<param name="allotId"></param> <param name="form"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.AllotController.Generate(Performance.DtoModels.AllotRequest)"> <member name="M:Performance.Api.Controllers.AllotController.Generate(Performance.DtoModels.AllotRequest)">
...@@ -467,6 +467,20 @@ ...@@ -467,6 +467,20 @@
<param name="computeId"></param> <param name="computeId"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.ComputeController.EditHospitalAvg(Performance.DtoModels.Request.ComputerAvgRequest)">
<summary>
编辑全院绩效平均
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ComputeController.OtherPerStats(System.Int32)">
<summary>
其他医院绩效统计
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ConfigController.GetDrugtypeList(Performance.DtoModels.DrugpropRequest)"> <member name="M:Performance.Api.Controllers.ConfigController.GetDrugtypeList(Performance.DtoModels.DrugpropRequest)">
<summary> <summary>
获取 药占比类型信息列表 获取 药占比类型信息列表
...@@ -756,6 +770,12 @@ ...@@ -756,6 +770,12 @@
<param name="allotId"></param> <param name="allotId"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.EmployeeController.GetDeptAssessment(System.Int32)">
<summary>
材料科室考核
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ExConfigController.Extract(Performance.DtoModels.ModModuleRequest)"> <member name="M:Performance.Api.Controllers.ExConfigController.Extract(Performance.DtoModels.ModModuleRequest)">
<summary> <summary>
绩效数据抽取模板 绩效数据抽取模板
......
...@@ -1169,6 +1169,11 @@ ...@@ -1169,6 +1169,11 @@
是否需要二次分配 是否需要二次分配
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.NightShiftWorkPerforFee">
<summary>
夜班绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.UnitType"> <member name="P:Performance.DtoModels.PerDataClinicEmployee.UnitType">
<summary> <summary>
核算单元分类 核算单元分类
...@@ -1823,6 +1828,26 @@ ...@@ -1823,6 +1828,26 @@
<member name="P:Performance.DtoModels.AprAmountAuditRequest.Remark"> <member name="P:Performance.DtoModels.AprAmountAuditRequest.Remark">
<summary> 备注 </summary> <summary> 备注 </summary>
</member> </member>
<member name="P:Performance.DtoModels.Request.ComputerAvgRequest.PositionName">
<summary>
绩效核算人群
</summary>
</member>
<member name="P:Performance.DtoModels.Request.ComputerAvgRequest.TotelValue">
<summary>
绩效总额
</summary>
</member>
<member name="P:Performance.DtoModels.Request.ComputerAvgRequest.AvgValue">
<summary>
人均绩效
</summary>
</member>
<member name="P:Performance.DtoModels.Request.ComputerAvgRequest.TotelNumber">
<summary>
总人数
</summary>
</member>
<member name="P:Performance.DtoModels.Request.SmsCodeRequest.Type"> <member name="P:Performance.DtoModels.Request.SmsCodeRequest.Type">
<summary> <summary>
短信验证类型 1 手机号登录 2 其他 短信验证类型 1 手机号登录 2 其他
...@@ -3026,7 +3051,7 @@ ...@@ -3026,7 +3051,7 @@
</member> </member>
<member name="P:Performance.DtoModels.DeptResponse.PerforTotal"> <member name="P:Performance.DtoModels.DeptResponse.PerforTotal">
<summary> <summary>
绩效合计 考核前绩效合计
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.DeptResponse.Avg"> <member name="P:Performance.DtoModels.DeptResponse.Avg">
......
...@@ -67,18 +67,27 @@ ...@@ -67,18 +67,27 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_check"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_check">
<summary> 上传excel文件校验配置 </summary> <summary> 上传excel文件校验配置 </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_cmi">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_depttype"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_depttype">
<summary> 科室类型 </summary> <summary> 科室类型 </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_director"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_director">
<summary> 规模绩效、效率绩效计算系数配置 </summary> <summary> 规模绩效、效率绩效计算系数配置 </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_drugprop">
<summary> 工作量门诊药占比系数 </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_drugtype"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_drugtype">
<summary> 药占比费用列头名称 </summary> <summary> 药占比费用列头名称 </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_guarantee"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_guarantee">
<summary> 保底科室配置 </summary> <summary> 保底科室配置 </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_hrp_department">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.cof_income"> <member name="P:Performance.EntityModels.PerformanceDbContext.cof_income">
<summary> ICU医生护士有效收入汇总计算系数 </summary> <summary> ICU医生护士有效收入汇总计算系数 </summary>
</member> </member>
...@@ -88,6 +97,9 @@ ...@@ -88,6 +97,9 @@
<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>
...@@ -98,7 +110,7 @@ ...@@ -98,7 +110,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>
...@@ -118,6 +130,21 @@ ...@@ -118,6 +130,21 @@
<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">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_import_account">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_import_baiscnorm">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_import_clinic">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_import_summary">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.his_importdata"> <member name="P:Performance.EntityModels.PerformanceDbContext.his_importdata">
<summary> </summary> <summary> </summary>
</member> </member>
...@@ -151,12 +178,21 @@ ...@@ -151,12 +178,21 @@
<member name="P:Performance.EntityModels.PerformanceDbContext.log_dbug"> <member name="P:Performance.EntityModels.PerformanceDbContext.log_dbug">
<summary> </summary> <summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.PerformanceDbContext.log_signalr">
<summary> </summary>
</member>
<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>
...@@ -205,6 +241,27 @@ ...@@ -205,6 +241,27 @@
<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_category">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_performance_person_tags">
<summary> </summary>
</member>
<member name="P:Performance.EntityModels.PerformanceDbContext.report_performance_tags">
<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>
...@@ -354,6 +411,11 @@ ...@@ -354,6 +411,11 @@
二次绩效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>
科室 科室
...@@ -379,6 +441,11 @@ ...@@ -379,6 +441,11 @@
可分配绩效 可分配绩效
</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>
医院其他绩效 医院其他绩效
...@@ -386,7 +453,7 @@ ...@@ -386,7 +453,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">
...@@ -854,6 +921,26 @@ ...@@ -854,6 +921,26 @@
科室实发金额 科室实发金额
</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 驳回
...@@ -884,11 +971,6 @@ ...@@ -884,11 +971,6 @@
备注 备注
</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>
护理部审核时间 护理部审核时间
...@@ -904,6 +986,11 @@ ...@@ -904,6 +986,11 @@
护理部备注 护理部备注
</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>
二次绩效模板 二次绩效模板
...@@ -1274,6 +1361,36 @@ ...@@ -1274,6 +1361,36 @@
单元格列头名称 单元格列头名称
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.cof_cmi">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_cmi.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_cmi.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_cmi.UnitType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_cmi.AccountingUnit">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_cmi.Value">
<summary>
</summary>
</member>
<member name="T:Performance.EntityModels.cof_depttype"> <member name="T:Performance.EntityModels.cof_depttype">
<summary> <summary>
科室类型 科室类型
...@@ -1334,6 +1451,36 @@ ...@@ -1334,6 +1451,36 @@
绩效系数 绩效系数
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.cof_drugprop">
<summary>
工作量门诊药占比系数
</summary>
</member>
<member name="P:Performance.EntityModels.cof_drugprop.ID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_drugprop.AllotID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_drugprop.MaxRange">
<summary>
药占比最大范围(小于)
</summary>
</member>
<member name="P:Performance.EntityModels.cof_drugprop.MinRange">
<summary>
药占比最小范围(大于等于)
</summary>
</member>
<member name="P:Performance.EntityModels.cof_drugprop.Value">
<summary>
药占比对应系数
</summary>
</member>
<member name="T:Performance.EntityModels.cof_drugtype"> <member name="T:Performance.EntityModels.cof_drugtype">
<summary> <summary>
药占比费用列头名称 药占比费用列头名称
...@@ -1394,6 +1541,36 @@ ...@@ -1394,6 +1541,36 @@
保底来源科室 保底来源科室
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.cof_hrp_department">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_hrp_department.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_hrp_department.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_hrp_department.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.cof_hrp_department.HRPDepartment">
<summary>
HRP人员科室
</summary>
</member>
<member name="P:Performance.EntityModels.cof_hrp_department.AccountingUnit">
<summary>
核算单元
</summary>
</member>
<member name="T:Performance.EntityModels.cof_income"> <member name="T:Performance.EntityModels.cof_income">
<summary> <summary>
ICU医生护士有效收入汇总计算系数 ICU医生护士有效收入汇总计算系数
...@@ -1484,6 +1661,36 @@ ...@@ -1484,6 +1661,36 @@
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>
工龄对应绩效系数配置 工龄对应绩效系数配置
...@@ -1516,7 +1723,7 @@ ...@@ -1516,7 +1723,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">
...@@ -1536,7 +1743,7 @@ ...@@ -1536,7 +1743,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">
...@@ -1556,17 +1763,17 @@ ...@@ -1556,17 +1763,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">
...@@ -1589,7 +1796,7 @@ ...@@ -1589,7 +1796,7 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.ID"> <member name="P:Performance.EntityModels.collect_permission.Id">
<summary> <summary>
</summary> </summary>
...@@ -1604,9 +1811,14 @@ ...@@ -1604,9 +1811,14 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.SheetType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.collect_permission.SheetName"> <member name="P:Performance.EntityModels.collect_permission.SheetName">
<summary> <summary>
列头类型名称
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.HeadName"> <member name="P:Performance.EntityModels.collect_permission.HeadName">
...@@ -1614,19 +1826,19 @@ ...@@ -1614,19 +1826,19 @@
列头名称 列头名称
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.Readnoly"> <member name="P:Performance.EntityModels.collect_permission.Visible">
<summary> <summary>
0 可读可写 1 只读 0 可 1 只读
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.AttachLast"> <member name="P:Performance.EntityModels.collect_permission.Readnoly">
<summary> <summary>
是否附带上次绩效 0 不附带 1 附带 0 可读可写 1 只读
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.collect_permission.Visible"> <member name="P:Performance.EntityModels.collect_permission.AttachLast">
<summary> <summary>
0 可见 1 不可见 是否附带上次绩效 0 附带 1 不附带
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.cust_script"> <member name="T:Performance.EntityModels.cust_script">
...@@ -1634,7 +1846,7 @@ ...@@ -1634,7 +1846,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>
...@@ -1654,6 +1866,16 @@ ...@@ -1654,6 +1866,16 @@
是否允许二次分配下载 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
...@@ -1934,142 +2156,457 @@ ...@@ -1934,142 +2156,457 @@
来源 来源
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.his_importdata"> <member name="T:Performance.EntityModels.his_data">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Id"> <member name="P:Performance.EntityModels.his_data.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.HospitalId"> <member name="P:Performance.EntityModels.his_data.HospitalId">
<summary> <summary>
医院ID
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.AllotId"> <member name="P:Performance.EntityModels.his_data.AllotId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Year"> <member name="P:Performance.EntityModels.his_data.Year">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Month"> <member name="P:Performance.EntityModels.his_data.Month">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.AccountingUnit"> <member name="P:Performance.EntityModels.his_data.HisDepartment">
<summary> <summary>
科室核算单元 His科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Department"> <member name="P:Performance.EntityModels.his_data.AccountingUnit">
<summary>
核算单元
</summary>
</member>
<member name="P:Performance.EntityModels.his_data.Department">
<summary> <summary>
科室 科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.PersonnelName"> <member name="P:Performance.EntityModels.his_data.PersonnelName">
<summary> <summary>
医生姓名 医生姓名
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.PersonnelNumber"> <member name="P:Performance.EntityModels.his_data.PersonnelNumber">
<summary> <summary>
人员工号 人员工号
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.SourceType"> <member name="P:Performance.EntityModels.his_data.SourceType">
<summary> <summary>
来源
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Category"> <member name="P:Performance.EntityModels.his_data.Category">
<summary> <summary>
一级分类 费用类型
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Original"> <member name="P:Performance.EntityModels.his_data.Original">
<summary> <summary>
原始分类 原始分类
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.ItemName"> <member name="P:Performance.EntityModels.his_data.ItemName">
<summary> <summary>
二级分类 标准分类
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.his_importdata.Value"> <member name="P:Performance.EntityModels.his_data.Value">
<summary> <summary>
费用
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.hos_personfee"> <member name="P:Performance.EntityModels.his_data.CreateTime">
<summary> <summary>
创建时间
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.Id"> <member name="T:Performance.EntityModels.his_importdata">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.HospitalId"> <member name="P:Performance.EntityModels.his_importdata.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.Year"> <member name="P:Performance.EntityModels.his_importdata.HospitalId">
<summary> <summary>
医院ID
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.Month"> <member name="P:Performance.EntityModels.his_importdata.AllotId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.Source"> <member name="P:Performance.EntityModels.his_importdata.Year">
<summary> <summary>
来源 门诊 住院
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.DeptName"> <member name="P:Performance.EntityModels.his_importdata.Month">
<summary> <summary>
开单科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.Category"> <member name="P:Performance.EntityModels.his_importdata.AccountingUnit">
<summary> <summary>
费用类型 科室核算单元
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.PersonTime"> <member name="P:Performance.EntityModels.his_importdata.Department">
<summary> <summary>
人次 科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.hos_personfee.Fee"> <member name="P:Performance.EntityModels.his_importdata.PersonnelName">
<summary> <summary>
费用 医生姓名
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.im_accountbasic"> <member name="P:Performance.EntityModels.his_importdata.PersonnelNumber">
<summary> <summary>
科室核算导入信息 人员工号
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.ID"> <member name="P:Performance.EntityModels.his_importdata.SourceType">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.AllotID"> <member name="P:Performance.EntityModels.his_importdata.Category">
<summary>
一级分类
</summary>
</member>
<member name="P:Performance.EntityModels.his_importdata.Original">
<summary>
原始分类
</summary>
</member>
<member name="P:Performance.EntityModels.his_importdata.ItemName">
<summary>
二级分类
</summary>
</member>
<member name="P:Performance.EntityModels.his_importdata.Value">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_importdata.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="T:Performance.EntityModels.his_import_account">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.HospitalId">
<summary>
医院ID
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.Year">
<summary>
绩效发放年
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.Month">
<summary>
绩效发放月
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.UnitType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.AccountingUnit">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.Number">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.RealGiveFee">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_account.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="T:Performance.EntityModels.his_import_baiscnorm">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.Year">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.Month">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.PositionName">
<summary>
绩效核算人群
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.TotelValue">
<summary>
绩效总额
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.AvgValue">
<summary>
人均绩效
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.TotelNumber">
<summary>
总人数
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_baiscnorm.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="T:Performance.EntityModels.his_import_clinic">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.HospitalId">
<summary>
医院ID
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.AllotId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.Year">
<summary>
绩效发放年
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.Month">
<summary>
绩效发放月
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.UnitType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.AccountType">
<summary>
核算单元类型(医技科室、临床科室等)
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.AccountingUnit">
<summary>
核算单元
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.JobNumber">
<summary>
工号
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.EmployeeName">
<summary>
人员姓名
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.Basics">
<summary>
基础绩效系数
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.RealGiveFee">
<summary>
实发绩效
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_clinic.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="T:Performance.EntityModels.his_import_summary">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.HospitalId">
<summary>
医院ID
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.AllotId">
<summary>
ID
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.Year">
<summary>
绩效发放年
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.Month">
<summary>
绩效发放月
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.AccountingUnit">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.RealGiveFee">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.his_import_summary.CreateTime">
<summary>
创建时间
</summary>
</member>
<member name="T:Performance.EntityModels.hos_personfee">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.Year">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.Month">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.Source">
<summary>
来源 门诊 住院
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.DeptName">
<summary>
开单科室
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.Category">
<summary>
费用类型
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.PersonTime">
<summary>
人次
</summary>
</member>
<member name="P:Performance.EntityModels.hos_personfee.Fee">
<summary>
费用
</summary>
</member>
<member name="T:Performance.EntityModels.im_accountbasic">
<summary>
科室核算导入信息
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.ID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.AllotID">
<summary> <summary>
</summary> </summary>
...@@ -2089,9 +2626,14 @@ ...@@ -2089,9 +2626,14 @@
核算单元(医生组) 核算单元(医生组)
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseAccountingUnit"> <member name="P:Performance.EntityModels.im_accountbasic.NurseAccountingUnit">
<summary>
核算单元(护理组)
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.Department">
<summary> <summary>
核算单元(护理组) 科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.IncludeAvgCalculate"> <member name="P:Performance.EntityModels.im_accountbasic.IncludeAvgCalculate">
...@@ -2104,6 +2646,11 @@ ...@@ -2104,6 +2646,11 @@
定科人数 定科人数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.DoctorDirectorNumber">
<summary>
科主任数量
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.DoctorNumber"> <member name="P:Performance.EntityModels.im_accountbasic.DoctorNumber">
<summary> <summary>
核算单元医生数量 核算单元医生数量
...@@ -2114,6 +2661,11 @@ ...@@ -2114,6 +2661,11 @@
医生基础系数 医生基础系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.DoctorSlopeFactor">
<summary>
倾斜系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.DoctorScale"> <member name="P:Performance.EntityModels.im_accountbasic.DoctorScale">
<summary> <summary>
规模绩效系数 规模绩效系数
...@@ -2149,6 +2701,11 @@ ...@@ -2149,6 +2701,11 @@
材料占比奖罚 材料占比奖罚
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.DoctorExtra">
<summary>
医院奖罚
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.DoctorScoringAverage"> <member name="P:Performance.EntityModels.im_accountbasic.DoctorScoringAverage">
<summary> <summary>
考核对分率 考核对分率
...@@ -2169,6 +2726,71 @@ ...@@ -2169,6 +2726,71 @@
保底绩效系数 保底绩效系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseHeadNumber">
<summary>
护士长人数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseNumber">
<summary>
护士人数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseBasicFactor">
<summary>
护理基础系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseSlopeFactor">
<summary>
倾斜系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseScale">
<summary>
规模绩效系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseEffic">
<summary>
效率绩效系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseGrant">
<summary>
发放系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseOtherPerfor1">
<summary>
其他绩效1
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseOtherPerfor2">
<summary>
其他绩效2
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseExtra">
<summary>
医院奖罚
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseScoringAverage">
<summary>
考核对分率
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseAdjustFactor">
<summary>
调节系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.WorkSlopeFactor">
<summary>
工作量倾斜系数
</summary>
</member>
<member name="P:Performance.EntityModels.im_accountbasic.UpdateDate"> <member name="P:Performance.EntityModels.im_accountbasic.UpdateDate">
<summary> <summary>
...@@ -2224,24 +2846,24 @@ ...@@ -2224,24 +2846,24 @@
行号 行号
</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.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.TypeName"> <member name="P:Performance.EntityModels.im_data.TypeName">
...@@ -2404,6 +3026,21 @@ ...@@ -2404,6 +3026,21 @@
其他绩效 其他绩效
</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>
夜班费 夜班费
...@@ -2509,21 +3146,11 @@ ...@@ -2509,21 +3146,11 @@
基础绩效系数 基础绩效系数
</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>
效率绩效系数 效率绩效系数
...@@ -2539,11 +3166,6 @@ ...@@ -2539,11 +3166,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.ScoreAverageRate"> <member name="P:Performance.EntityModels.im_employee_clinic.ScoreAverageRate">
<summary> <summary>
考核得分率 考核得分率
...@@ -2569,6 +3191,16 @@ ...@@ -2569,6 +3191,16 @@
其他绩效 其他绩效
</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>
医院奖罚 医院奖罚
...@@ -2594,6 +3226,16 @@ ...@@ -2594,6 +3226,16 @@
</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>
考核前其他绩效 考核前其他绩效
...@@ -2671,7 +3313,7 @@ ...@@ -2671,7 +3313,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">
...@@ -2894,164 +3536,304 @@ ...@@ -2894,164 +3536,304 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_check.AllotID"> <member name="P:Performance.EntityModels.log_check.AllotID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_check.CreateTime">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_check.Type">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_check.Level">
<summary>
1、信息(info)2、警告(warn)3、错误(error)
</summary>
</member>
<member name="P:Performance.EntityModels.log_check.Titile">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_check.Message">
<summary>
</summary>
</member>
<member name="T:Performance.EntityModels.log_dbug">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.ID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.AllotID">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.CreateTime">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.Title">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.Message">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.Level">
<summary>
1、信息(info)2、警告(warn)3、错误(error)4、异常(exception)5、成功(success)
</summary>
</member>
<member name="P:Performance.EntityModels.log_dbug.Type">
<summary>
1、绩效生成日志 2、绩效提取日志 3、绩效提取进度
</summary>
</member>
<member name="T:Performance.EntityModels.mod_dic">
<summary>
部分公共数据抽取SQL
</summary>
</member>
<member name="P:Performance.EntityModels.mod_dic.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_dic.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_dic.Type">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_dic.Content">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_dic.ConfigId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.mod_dic.Remark">
<summary>
</summary>
</member>
<member name="T:Performance.EntityModels.mod_extract">
<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>
描述
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_check.CreateTime"> <member name="P:Performance.EntityModels.mod_extract.IsEnable">
<summary> <summary>
是否可用 1 可用 2 不可用
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_check.Type"> <member name="T:Performance.EntityModels.mod_item">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_check.Level"> <member name="P:Performance.EntityModels.mod_item.Id">
<summary> <summary>
1、信息(info)2、警告(warn)3、错误(error)
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_check.Titile"> <member name="P:Performance.EntityModels.mod_item.ModuleId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_check.Message"> <member name="P:Performance.EntityModels.mod_item.ItemName">
<summary> <summary>
绩效考核项
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.log_dbug"> <member name="P:Performance.EntityModels.mod_item.FactorValue1">
<summary> <summary>
默认系数或医生系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.ID"> <member name="P:Performance.EntityModels.mod_item.FactorValue2">
<summary> <summary>
护理系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.AllotID"> <member name="P:Performance.EntityModels.mod_item.FactorValue3">
<summary> <summary>
医技系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.CreateTime"> <member name="P:Performance.EntityModels.mod_item.ExtractId">
<summary> <summary>
抽取绩效值SQL
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.Title"> <member name="P:Performance.EntityModels.mod_item.ConfigId">
<summary> <summary>
数据库地址
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.Message"> <member name="P:Performance.EntityModels.mod_item.SelectionRange">
<summary> <summary>
用户选定抽取范围
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.Level"> <member name="P:Performance.EntityModels.mod_item.ReadOnly">
<summary> <summary>
1、信息(info)2、警告(warn)3、错误(error)4、异常(exception)5、成功(success) 只读 0、否 1、是
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_dbug.Type"> <member name="T:Performance.EntityModels.mod_module">
<summary> <summary>
1、绩效生成日志 2、绩效提取日志 3、绩效提取进度
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.log_signalr"> <member name="P:Performance.EntityModels.mod_module.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.Id"> <member name="P:Performance.EntityModels.mod_module.HospitalId">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.HospitalId"> <member name="P:Performance.EntityModels.mod_module.SheetType">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.AllotId"> <member name="P:Performance.EntityModels.mod_module.ModuleName">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.Classify"> <member name="P:Performance.EntityModels.mod_module.Description">
<summary> <summary>
分类
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.TypeValue"> <member name="P:Performance.EntityModels.mod_module.ExtractId">
<summary> <summary>
类型值 提取脚本ID
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.Type"> <member name="P:Performance.EntityModels.mod_module.ConfigId">
<summary> <summary>
类型 数据库地址
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.Title"> <member name="P:Performance.EntityModels.mod_module.ReadOnly">
<summary> <summary>
标题 只读 0、否 1、是
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.Message"> <member name="P:Performance.EntityModels.mod_module.IsGenerated">
<summary> <summary>
消息 是否生成Item 0、否 1、是
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.Percentage"> <member name="T:Performance.EntityModels.mod_special">
<summary> <summary>
百分比
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.log_signalr.CreateTime"> <member name="P:Performance.EntityModels.mod_special.Id">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.mod_dic"> <member name="P:Performance.EntityModels.mod_special.HospitalId">
<summary> <summary>
部分公共数据抽取SQL
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.mod_dic.Id"> <member name="P:Performance.EntityModels.mod_special.Department">
<summary> <summary>
科室
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.mod_dic.HospitalId"> <member name="P:Performance.EntityModels.mod_special.Target">
<summary> <summary>
量化指标
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.mod_dic.Type"> <member name="P:Performance.EntityModels.mod_special.TargetFactor">
<summary> <summary>
量化指标绩效分值
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.mod_dic.Content"> <member name="P:Performance.EntityModels.mod_special.AdjustFactor">
<summary> <summary>
调节系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.mod_dic.ConfigId"> <member name="P:Performance.EntityModels.mod_special.ExtractId">
<summary> <summary>
抽取绩效值SQL
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.mod_dic.Remark"> <member name="P:Performance.EntityModels.mod_special.ConfigId">
<summary> <summary>
数据库地址
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.per_againallot"> <member name="T:Performance.EntityModels.per_againallot">
...@@ -3249,11 +4031,6 @@ ...@@ -3249,11 +4031,6 @@
审核人 审核人
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_apr_amount.Remark">
<summary>
备注
</summary>
</member>
<member name="P:Performance.EntityModels.per_apr_amount.CreateDate"> <member name="P:Performance.EntityModels.per_apr_amount.CreateDate">
<summary> <summary>
...@@ -3264,6 +4041,11 @@ ...@@ -3264,6 +4041,11 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_apr_amount.Remark">
<summary>
备注
</summary>
</member>
<member name="T:Performance.EntityModels.per_budget_amount"> <member name="T:Performance.EntityModels.per_budget_amount">
<summary> <summary>
预算管理金额 预算管理金额
...@@ -3916,7 +4698,7 @@ ...@@ -3916,7 +4698,7 @@
</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">
...@@ -3936,12 +4718,12 @@ ...@@ -3936,12 +4718,12 @@
</member> </member>
<member name="P:Performance.EntityModels.report_global.Year"> <member name="P:Performance.EntityModels.report_global.Year">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.Month"> <member name="P:Performance.EntityModels.report_global.Month">
<summary> <summary>
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.report_global.Value"> <member name="P:Performance.EntityModels.report_global.Value">
...@@ -3951,10 +4733,10 @@ ...@@ -3951,10 +4733,10 @@
</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>
...@@ -4001,10 +4783,10 @@ ...@@ -4001,10 +4783,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>
...@@ -4051,10 +4833,10 @@ ...@@ -4051,10 +4833,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>
...@@ -4164,6 +4946,151 @@ ...@@ -4164,6 +4946,151 @@
费用 费用
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.report_performance_category">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_category.Category">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_category.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_category.Original">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_category.ItemName">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_category.Year">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_category.Month">
<summary>
</summary>
</member>
<member name="T:Performance.EntityModels.report_performance_person_tags">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.UnitType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.AccountingUnit">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.PersonnelNumber">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.PersonnelName">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.Tag1">
<summary>
绩效发放情况
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.Tag2">
<summary>
当月绩效权重
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.Tag3">
<summary>
重点群体对比1
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.Tag4">
<summary>
重点群体对比2
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_person_tags.Tag5">
<summary>
重点群体对比5
</summary>
</member>
<member name="T:Performance.EntityModels.report_performance_tags">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.Id">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.HospitalId">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.UnitType">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.AccountingUnit">
<summary>
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.Tag1">
<summary>
绩效发放情况
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.Tag2">
<summary>
当月绩效权重
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.Tag3">
<summary>
重点群体对比1
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.Tag4">
<summary>
重点群体对比2
</summary>
</member>
<member name="P:Performance.EntityModels.report_performance_tags.Tag5">
<summary>
重点群体对比5
</summary>
</member>
<member name="T:Performance.EntityModels.rep_group"> <member name="T:Performance.EntityModels.rep_group">
<summary> <summary>
...@@ -4284,6 +5211,16 @@ ...@@ -4284,6 +5211,16 @@
报表标题 报表标题
</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轴标题
...@@ -4459,6 +5396,16 @@ ...@@ -4459,6 +5396,16 @@
是否带入平均计算 是 否 是否带入平均计算 是 否
</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>
核算单元医生数量 核算单元医生数量
...@@ -4559,6 +5506,16 @@ ...@@ -4559,6 +5506,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="P:Performance.EntityModels.res_account.AssessBeforeOtherFee"> <member name="P:Performance.EntityModels.res_account.AssessBeforeOtherFee">
<summary> <summary>
考核前其他绩效 考核前其他绩效
...@@ -4579,19 +5536,14 @@ ...@@ -4579,19 +5536,14 @@
考核后绩效 考核后绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_account.Remark"> <member name="P:Performance.EntityModels.res_account.NeedSecondAllot">
<summary>
备注
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.ChangeLog">
<summary> <summary>
变更日志 是否需要二次分配
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_account.NeedSecondAllot"> <member name="P:Performance.EntityModels.res_account.NightShiftWorkPerforFee">
<summary> <summary>
是否需要二次分配 夜班绩效
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.res_accountdoctor"> <member name="T:Performance.EntityModels.res_accountdoctor">
...@@ -4891,12 +5843,12 @@ ...@@ -4891,12 +5843,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">
...@@ -4929,6 +5881,11 @@ ...@@ -4929,6 +5881,11 @@
人均绩效(来自科室经济测算表) 人均绩效(来自科室经济测算表)
</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>
效率绩效(需计算) 效率绩效(需计算)
...@@ -4974,6 +5931,26 @@ ...@@ -4974,6 +5931,26 @@
其他绩效(来自人员名单) 其他绩效(来自人员名单)
</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>
夜班费 夜班费
...@@ -5034,11 +6011,6 @@ ...@@ -5034,11 +6011,6 @@
科主任/护士长人数 科主任/护士长人数
</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>
核算单元人员数量 核算单元人员数量
...@@ -5066,7 +6038,7 @@ ...@@ -5066,7 +6038,7 @@
</member> </member>
<member name="P:Performance.EntityModels.res_compute.NeedSecondAllot"> <member name="P:Performance.EntityModels.res_compute.NeedSecondAllot">
<summary> <summary>
是否需要二次分配 是 否 是否需要二次分配
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.res_reserved"> <member name="T:Performance.EntityModels.res_reserved">
...@@ -5089,6 +6061,11 @@ ...@@ -5089,6 +6061,11 @@
</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>
核算单元 核算单元
...@@ -5349,6 +6326,11 @@ ...@@ -5349,6 +6326,11 @@
调节后其他绩效 调节后其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_specialunit.NightShiftWorkPerforFee">
<summary>
夜班绩效
</summary>
</member>
<member name="T:Performance.EntityModels.sys_extract"> <member name="T:Performance.EntityModels.sys_extract">
<summary> <summary>
医院数据提取脚本 医院数据提取脚本
...@@ -5474,6 +6456,11 @@ ...@@ -5474,6 +6456,11 @@
是否显示二次绩效科主任1 启用 2 禁用 是否显示二次绩效科主任1 启用 2 禁用
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.sys_hospital.IsOpenLogisticsSecondAllot">
<summary>
是否开启行政后勤二次绩效分配 1 启用 2 禁用
</summary>
</member>
<member name="P:Performance.EntityModels.sys_hospital.IsSingleProject"> <member name="P:Performance.EntityModels.sys_hospital.IsSingleProject">
<summary> <summary>
抽取项目是否在同一环境 1 是 2 否 抽取项目是否在同一环境 1 是 2 否
......
...@@ -237,6 +237,11 @@ public class PerDataAccountBaisc : IPerData ...@@ -237,6 +237,11 @@ public class PerDataAccountBaisc : IPerData
/// </summary> /// </summary>
public string NeedSecondAllot { get; set; } public string NeedSecondAllot { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
public Nullable<decimal> NightShiftWorkPerforFee { get; set; }
#endregion 由计算得出 #endregion 由计算得出
} }
} }
using System;
using System.Collections.Generic;
using System.Text;
using FluentValidation;
namespace Performance.DtoModels.Request
{
public class ComputerAvgRequest
{
public int Id { get; set; }
public int AllotId { get; set; }
public int SheetId { get; set; }
/// <summary>
/// 绩效核算人群
/// </summary>
public string PositionName { get; set; }
/// <summary>
/// 绩效总额
/// </summary>
public decimal TotelValue { get; set; }
/// <summary>
/// 人均绩效
/// </summary>
public decimal AvgValue { get; set; }
/// <summary>
/// 总人数
/// </summary>
public decimal TotelNumber { get; set; }
}
public class ComputerRequestValidator : AbstractValidator<ComputerAvgRequest>
{
public ComputerRequestValidator()
{
RuleFor(x => x.Id).NotNull();
RuleFor(x => x.AllotId).NotNull().GreaterThan(0);
RuleFor(x => x.PositionName).NotNull().NotEmpty();
RuleFor(x => x.TotelNumber).NotNull();
RuleFor(x => x.TotelValue).NotNull();
RuleFor(x => x.AvgValue).NotNull();
}
}
}
...@@ -129,7 +129,7 @@ public class DeptResponse ...@@ -129,7 +129,7 @@ public class DeptResponse
public Nullable<decimal> WorkloadFee { get; set; } public Nullable<decimal> WorkloadFee { get; set; }
/// <summary> /// <summary>
/// 绩效合计 /// 考核前绩效合计
/// </summary> /// </summary>
public Nullable<decimal> PerforTotal { get; set; } public Nullable<decimal> PerforTotal { get; set; }
......
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Metadata;
using System; using System;
...@@ -13,274 +14,211 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options) ...@@ -13,274 +14,211 @@ public PerformanceDbContext(DbContextOptions<PerformanceDbContext> options)
/// <summary> 二次分配概览 </summary> /// <summary> 二次分配概览 </summary>
public virtual DbSet<ag_againsituation> ag_againsituation { get; set; } public virtual DbSet<ag_againsituation> ag_againsituation { get; set; }
/// <summary> 二次绩效结果表 </summary> /// <summary> 二次绩效结果表 </summary>
public virtual DbSet<ag_compute> ag_compute { get; set; } public virtual DbSet<ag_compute> ag_compute { get; set; }
/// <summary> 二次分配不固定数据 </summary> /// <summary> 二次分配不固定数据 </summary>
public virtual DbSet<ag_data> ag_data { get; set; } public virtual DbSet<ag_data> ag_data { get; set; }
/// <summary> 二次分配人员名单 </summary> /// <summary> 二次分配人员名单 </summary>
public virtual DbSet<ag_employee> ag_employee { get; set; } public virtual DbSet<ag_employee> ag_employee { get; set; }
/// <summary> 二次绩效固定项 </summary> /// <summary> 二次绩效固定项 </summary>
public virtual DbSet<ag_fixatitem> ag_fixatitem { get; set; } public virtual DbSet<ag_fixatitem> ag_fixatitem { get; set; }
/// <summary> 二次分配不固定列头数据 </summary> /// <summary> 二次分配不固定列头数据 </summary>
public virtual DbSet<ag_header> ag_header { get; set; } public virtual DbSet<ag_header> ag_header { get; set; }
/// <summary> 科室二次绩效录入内容 </summary> /// <summary> 科室二次绩效录入内容 </summary>
public virtual DbSet<ag_itemvalue> ag_itemvalue { get; set; } public virtual DbSet<ag_itemvalue> ag_itemvalue { get; set; }
/// <summary> 二次绩效其他绩效来源 </summary> /// <summary> 二次绩效其他绩效来源 </summary>
public virtual DbSet<ag_othersource> ag_othersource { get; set; } public virtual DbSet<ag_othersource> ag_othersource { get; set; }
/// <summary> 二次绩效列表 </summary> /// <summary> 二次绩效列表 </summary>
public virtual DbSet<ag_secondallot> ag_secondallot { get; set; } public virtual DbSet<ag_secondallot> ag_secondallot { get; set; }
/// <summary> 二次绩效模板 </summary> /// <summary> 二次绩效模板 </summary>
public virtual DbSet<ag_temp> ag_temp { get; set; } public virtual DbSet<ag_temp> ag_temp { get; set; }
/// <summary> 二次绩效模板项 </summary> /// <summary> 二次绩效模板项 </summary>
public virtual DbSet<ag_tempitem> ag_tempitem { get; set; } public virtual DbSet<ag_tempitem> ag_tempitem { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ag_usetemp> ag_usetemp { get; set; } public virtual DbSet<ag_usetemp> ag_usetemp { get; set; }
/// <summary> 二次绩效工作量绩效 </summary> /// <summary> 二次绩效工作量绩效 </summary>
public virtual DbSet<ag_workload> ag_workload { get; set; } public virtual DbSet<ag_workload> ag_workload { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ag_workload_type> ag_workload_type { get; set; } public virtual DbSet<ag_workload_type> ag_workload_type { get; set; }
/// <summary> 考核类别 </summary> /// <summary> 考核类别 </summary>
public virtual DbSet<as_assess> as_assess { get; set; } public virtual DbSet<as_assess> as_assess { get; set; }
/// <summary> 考核列头 </summary> /// <summary> 考核列头 </summary>
public virtual DbSet<as_columns> as_columns { get; set; } public virtual DbSet<as_columns> as_columns { get; set; }
/// <summary> 考核数据 </summary> /// <summary> 考核数据 </summary>
public virtual DbSet<as_data> as_data { get; set; } public virtual DbSet<as_data> as_data { get; set; }
/// <summary> 考核类别 </summary> /// <summary> 考核类别 </summary>
public virtual DbSet<as_tempassess> as_tempassess { get; set; } public virtual DbSet<as_tempassess> as_tempassess { get; set; }
/// <summary> 考核列头 </summary> /// <summary> 考核列头 </summary>
public virtual DbSet<as_tempcolumns> as_tempcolumns { get; set; } public virtual DbSet<as_tempcolumns> as_tempcolumns { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<cof_again> cof_again { get; set; } public virtual DbSet<cof_again> cof_again { get; set; }
/// <summary> 上传excel文件校验配置 </summary> /// <summary> 上传excel文件校验配置 </summary>
public virtual DbSet<cof_check> cof_check { get; set; } public virtual DbSet<cof_check> cof_check { get; set; }
/// <summary> </summary>
///// <summary> </summary> public virtual DbSet<cof_cmi> cof_cmi { get; set; }
//public virtual DbSet<cof_cmi> cof_cmi { get; set; }
/// <summary> 科室类型 </summary> /// <summary> 科室类型 </summary>
public virtual DbSet<cof_depttype> cof_depttype { get; set; } public virtual DbSet<cof_depttype> cof_depttype { get; set; }
/// <summary> 规模绩效、效率绩效计算系数配置 </summary> /// <summary> 规模绩效、效率绩效计算系数配置 </summary>
public virtual DbSet<cof_director> cof_director { get; set; } public virtual DbSet<cof_director> cof_director { get; set; }
/// <summary> 工作量门诊药占比系数 </summary>
///// <summary> 工作量门诊药占比系数 </summary> public virtual DbSet<cof_drugprop> cof_drugprop { get; set; }
//public virtual DbSet<cof_drugprop> cof_drugprop { get; set; }
/// <summary> 药占比费用列头名称 </summary> /// <summary> 药占比费用列头名称 </summary>
public virtual DbSet<cof_drugtype> cof_drugtype { get; set; } public virtual DbSet<cof_drugtype> cof_drugtype { get; set; }
/// <summary> 保底科室配置 </summary> /// <summary> 保底科室配置 </summary>
public virtual DbSet<cof_guarantee> cof_guarantee { get; set; } public virtual DbSet<cof_guarantee> cof_guarantee { get; set; }
/// <summary> </summary>
public virtual DbSet<cof_hrp_department> cof_hrp_department { get; set; }
/// <summary> ICU医生护士有效收入汇总计算系数 </summary> /// <summary> ICU医生护士有效收入汇总计算系数 </summary>
public virtual DbSet<cof_income> cof_income { get; set; } public virtual DbSet<cof_income> cof_income { get; set; }
/// <summary> 特殊绩效项指标 </summary> /// <summary> 特殊绩效项指标 </summary>
public virtual DbSet<cof_singlefactor> cof_singlefactor { get; set; } public virtual DbSet<cof_singlefactor> cof_singlefactor { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<cof_workitem> cof_workitem { get; set; } public virtual DbSet<cof_workitem> cof_workitem { get; set; }
/// <summary> 工作量分类 </summary>
public virtual DbSet<cof_workloadtype> cof_workloadtype { get; set; }
/// <summary> 工龄对应绩效系数配置 </summary> /// <summary> 工龄对应绩效系数配置 </summary>
public virtual DbSet<cof_workyear> cof_workyear { get; set; } public virtual DbSet<cof_workyear> cof_workyear { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<collect_data> collect_data { get; set; } public virtual DbSet<collect_data> collect_data { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<collect_permission> collect_permission { get; set; } public virtual DbSet<collect_permission> collect_permission { get; set; }
/// <summary> 自定义导出 </summary>
/// <summary> </summary>
public virtual DbSet<cust_script> cust_script { get; set; } public virtual DbSet<cust_script> cust_script { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ex_item> ex_item { get; set; } public virtual DbSet<ex_item> ex_item { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ex_module> ex_module { get; set; } public virtual DbSet<ex_module> ex_module { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ex_result> ex_result { get; set; } public virtual DbSet<ex_result> ex_result { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ex_script> ex_script { get; set; } public virtual DbSet<ex_script> ex_script { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ex_special> ex_special { get; set; } public virtual DbSet<ex_special> ex_special { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<ex_type> ex_type { get; set; } public virtual DbSet<ex_type> ex_type { get; set; }
/// <summary> </summary>
public virtual DbSet<his_data> his_data { get; set; }
/// <summary> </summary>
public virtual DbSet<his_import_account> his_import_account { get; set; }
/// <summary> </summary>
public virtual DbSet<his_import_baiscnorm> his_import_baiscnorm { get; set; }
/// <summary> </summary>
public virtual DbSet<his_import_clinic> his_import_clinic { get; set; }
/// <summary> </summary>
public virtual DbSet<his_import_summary> his_import_summary { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<his_importdata> his_importdata { get; set; } public virtual DbSet<his_importdata> his_importdata { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<hos_personfee> hos_personfee { get; set; } public virtual DbSet<hos_personfee> hos_personfee { get; set; }
/// <summary> 科室核算导入信息 </summary> /// <summary> 科室核算导入信息 </summary>
public virtual DbSet<im_accountbasic> im_accountbasic { get; set; } public virtual DbSet<im_accountbasic> im_accountbasic { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<im_data> im_data { get; set; } public virtual DbSet<im_data> im_data { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<im_employee> im_employee { get; set; } public virtual DbSet<im_employee> im_employee { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<im_employee_clinic> im_employee_clinic { get; set; } public virtual DbSet<im_employee_clinic> im_employee_clinic { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<im_employee_logistics> im_employee_logistics { get; set; } public virtual DbSet<im_employee_logistics> im_employee_logistics { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<im_header> im_header { get; set; } public virtual DbSet<im_header> im_header { get; set; }
/// <summary> 特殊科室核算 </summary> /// <summary> 特殊科室核算 </summary>
public virtual DbSet<im_specialunit> im_specialunit { get; set; } public virtual DbSet<im_specialunit> im_specialunit { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<log_check> log_check { get; set; } public virtual DbSet<log_check> log_check { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<log_dbug> log_dbug { get; set; } public virtual DbSet<log_dbug> log_dbug { get; set; }
/// <summary> </summary>
public virtual DbSet<log_signalr> log_signalr { get; set; }
/// <summary> 部分公共数据抽取SQL </summary> /// <summary> 部分公共数据抽取SQL </summary>
public virtual DbSet<mod_dic> mod_dic { get; set; } public virtual DbSet<mod_dic> mod_dic { get; set; }
/// <summary> 医院数据提取脚本 </summary>
///// <summary> 医院数据提取脚本 </summary> public virtual DbSet<mod_extract> mod_extract { get; set; }
// public virtual DbSet<mod_extract> mod_extract { get; set; } /// <summary> </summary>
///// <summary> </summary> public virtual DbSet<mod_item> mod_item { get; set; }
// public virtual DbSet<mod_item> mod_item { get; set; } /// <summary> </summary>
///// <summary> </summary> public virtual DbSet<mod_module> mod_module { get; set; }
// public virtual DbSet<mod_module> mod_module { get; set; } /// <summary> </summary>
///// <summary> </summary> public virtual DbSet<mod_special> mod_special { get; set; }
// public virtual DbSet<mod_special> mod_special { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<per_againallot> per_againallot { get; set; } public virtual DbSet<per_againallot> per_againallot { get; set; }
/// <summary> 医院绩效分配 </summary> /// <summary> 医院绩效分配 </summary>
public virtual DbSet<per_allot> per_allot { get; set; } public virtual DbSet<per_allot> per_allot { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<per_apr_amount> per_apr_amount { get; set; } public virtual DbSet<per_apr_amount> per_apr_amount { get; set; }
/// <summary> 预算管理金额 </summary> /// <summary> 预算管理金额 </summary>
public virtual DbSet<per_budget_amount> per_budget_amount { get; set; } public virtual DbSet<per_budget_amount> per_budget_amount { get; set; }
/// <summary> 预算管理占比 </summary> /// <summary> 预算管理占比 </summary>
public virtual DbSet<per_budget_ratio> per_budget_ratio { get; set; } public virtual DbSet<per_budget_ratio> per_budget_ratio { get; set; }
/// <summary> 预算控制年度合计 </summary> /// <summary> 预算控制年度合计 </summary>
public virtual DbSet<per_budget_result> per_budget_result { get; set; } public virtual DbSet<per_budget_result> per_budget_result { get; set; }
/// <summary> 科室字典表 </summary> /// <summary> 科室字典表 </summary>
public virtual DbSet<per_dept_dic> per_dept_dic { get; set; } public virtual DbSet<per_dept_dic> per_dept_dic { get; set; }
/// <summary> 绩效人员表 </summary> /// <summary> 绩效人员表 </summary>
public virtual DbSet<per_employee> per_employee { get; set; } public virtual DbSet<per_employee> per_employee { get; set; }
/// <summary> 首次上传文件地址(当医院存在标准库时,首次上传用户提交固定格式的excel,开发人员配置SQL脚本) </summary> /// <summary> 首次上传文件地址(当医院存在标准库时,首次上传用户提交固定格式的excel,开发人员配置SQL脚本) </summary>
public virtual DbSet<per_first> per_first { get; set; } public virtual DbSet<per_first> per_first { get; set; }
/// <summary> 上传数据解析 </summary> /// <summary> 上传数据解析 </summary>
public virtual DbSet<per_sheet> per_sheet { get; set; } public virtual DbSet<per_sheet> per_sheet { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<rep_group> rep_group { get; set; } public virtual DbSet<rep_group> rep_group { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<rep_group_selection> rep_group_selection { get; set; } public virtual DbSet<rep_group_selection> rep_group_selection { get; set; }
/// <summary> 导入报表SQL配置 </summary> /// <summary> 导入报表SQL配置 </summary>
public virtual DbSet<rep_importconfig> rep_importconfig { get; set; } public virtual DbSet<rep_importconfig> rep_importconfig { get; set; }
/// <summary> 报表配置表 </summary> /// <summary> 报表配置表 </summary>
public virtual DbSet<rep_report> rep_report { get; set; } public virtual DbSet<rep_report> rep_report { get; set; }
/// <summary> 条件表 </summary> /// <summary> 条件表 </summary>
public virtual DbSet<rep_selection> rep_selection { get; set; } public virtual DbSet<rep_selection> rep_selection { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<report_global> report_global { get; set; } public virtual DbSet<report_global> report_global { get; set; }
/// <summary> 医院门诊住院人次 </summary>
public virtual DbSet<report_original_surgery> report_original_surgery { get; set; }
public virtual DbSet<report_original_stays> report_original_stays { get; set; }
public virtual DbSet<report_original_persontime> report_original_persontime { get; set; } public virtual DbSet<report_original_persontime> report_original_persontime { get; set; }
/// <summary> 医院门诊住院人次 </summary>
public virtual DbSet<report_original_stays> report_original_stays { get; set; }
/// <summary> 医院手术人次 </summary>
public virtual DbSet<report_original_surgery> report_original_surgery { get; set; }
/// <summary> </summary>
public virtual DbSet<report_original_workload> report_original_workload { get; set; }
/// <summary> </summary>
public virtual DbSet<report_performance_category> report_performance_category { get; set; }
/// <summary> </summary>
public virtual DbSet<report_performance_person_tags> report_performance_person_tags { get; set; }
/// <summary> </summary>
public virtual DbSet<report_performance_tags> report_performance_tags { get; set; }
/// <summary> 科室核算结果 </summary> /// <summary> 科室核算结果 </summary>
public virtual DbSet<res_account> res_account { get; set; } public virtual DbSet<res_account> res_account { get; set; }
/// <summary> 医生科室核算结果 </summary> /// <summary> 医生科室核算结果 </summary>
public virtual DbSet<res_accountdoctor> res_accountdoctor { get; set; } public virtual DbSet<res_accountdoctor> res_accountdoctor { get; set; }
/// <summary> 护理科室核算结果 </summary> /// <summary> 护理科室核算结果 </summary>
public virtual DbSet<res_accountnurse> res_accountnurse { get; set; } public virtual DbSet<res_accountnurse> res_accountnurse { get; set; }
/// <summary> 核算基础标准 </summary> /// <summary> 核算基础标准 </summary>
public virtual DbSet<res_baiscnorm> res_baiscnorm { get; set; } public virtual DbSet<res_baiscnorm> res_baiscnorm { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<res_compute> res_compute { get; set; } public virtual DbSet<res_compute> res_compute { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<res_reserved> res_reserved { get; set; } public virtual DbSet<res_reserved> res_reserved { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<res_specialunit> res_specialunit { get; set; } public virtual DbSet<res_specialunit> res_specialunit { get; set; }
/// <summary> 医院数据提取脚本 </summary> /// <summary> 医院数据提取脚本 </summary>
public virtual DbSet<sys_extract> sys_extract { get; set; } public virtual DbSet<sys_extract> sys_extract { get; set; }
/// <summary> 医院信息 </summary> /// <summary> 医院信息 </summary>
public virtual DbSet<sys_hospital> sys_hospital { get; set; } public virtual DbSet<sys_hospital> sys_hospital { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<sys_hospitalconfig> sys_hospitalconfig { get; set; } public virtual DbSet<sys_hospitalconfig> sys_hospitalconfig { get; set; }
/// <summary> 菜单表 </summary> /// <summary> 菜单表 </summary>
public virtual DbSet<sys_menu> sys_menu { get; set; } public virtual DbSet<sys_menu> sys_menu { get; set; }
/// <summary> 角色表 </summary> /// <summary> 角色表 </summary>
public virtual DbSet<sys_role> sys_role { get; set; } public virtual DbSet<sys_role> sys_role { get; set; }
/// <summary> 角色菜单关联表 </summary> /// <summary> 角色菜单关联表 </summary>
public virtual DbSet<sys_role_menu> sys_role_menu { get; set; } public virtual DbSet<sys_role_menu> sys_role_menu { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<sys_sms> sys_sms { get; set; } public virtual DbSet<sys_sms> sys_sms { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<sys_task> sys_task { get; set; } public virtual DbSet<sys_task> sys_task { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<sys_user> sys_user { get; set; } public virtual DbSet<sys_user> sys_user { get; set; }
/// <summary> </summary> /// <summary> </summary>
public virtual DbSet<sys_user_hospital> sys_user_hospital { get; set; } public virtual DbSet<sys_user_hospital> sys_user_hospital { get; set; }
/// <summary> 用户角色关联表 </summary> /// <summary> 用户角色关联表 </summary>
public virtual DbSet<sys_user_role> sys_user_role { get; set; } public virtual DbSet<sys_user_role> sys_user_role { get; set; }
} }
......
...@@ -30,6 +30,10 @@ public class ag_compute ...@@ -30,6 +30,10 @@ public class ag_compute
/// 二次绩效ID /// 二次绩效ID
/// </summary> /// </summary>
public Nullable<int> SecondId { get; set; } public Nullable<int> SecondId { get; set; }
/// <summary>
/// 科室类型
/// </summary>
public string UnitType { get; set; } public string UnitType { get; set; }
/// <summary> /// <summary>
...@@ -58,12 +62,17 @@ public class ag_compute ...@@ -58,12 +62,17 @@ public class ag_compute
public Nullable<decimal> PerforSumFee { get; set; } public Nullable<decimal> PerforSumFee { get; set; }
/// <summary> /// <summary>
/// 管理绩效
/// </summary>
public Nullable<decimal> PerforManagementFee { get; set; }
/// <summary>
/// 医院其他绩效 /// 医院其他绩效
/// </summary> /// </summary>
public Nullable<decimal> OthePerfor { get; set; } public Nullable<decimal> OthePerfor { get; set; }
/// <summary> /// <summary>
/// 实发绩效工资金额 /// 夜班工作量绩效
/// </summary> /// </summary>
public Nullable<decimal> NightWorkPerfor { get; set; } public Nullable<decimal> NightWorkPerfor { get; set; }
......
...@@ -57,6 +57,26 @@ public class ag_secondallot ...@@ -57,6 +57,26 @@ public class ag_secondallot
public Nullable<decimal> RealGiveFee { get; set; } public Nullable<decimal> RealGiveFee { get; set; }
/// <summary> /// <summary>
/// 效率绩效
/// </summary>
public Nullable<decimal> Efficiency { get; set; }
/// <summary>
/// 规模绩效
/// </summary>
public Nullable<decimal> Scale { get; set; }
/// <summary>
/// 发放系数
/// </summary>
public Nullable<decimal> Grant { get; set; }
/// <summary>
/// 应发管理绩效
/// </summary>
public Nullable<decimal> ShouldGiveFee { get; set; }
/// <summary>
/// 状态 1 未提交 2 等待审核 3 审核通过 4 驳回 /// 状态 1 未提交 2 等待审核 3 审核通过 4 驳回
/// </summary> /// </summary>
public Nullable<int> Status { get; set; } public Nullable<int> Status { get; set; }
...@@ -87,11 +107,6 @@ public class ag_secondallot ...@@ -87,11 +107,6 @@ public class ag_secondallot
public string Remark { get; set; } public string Remark { get; set; }
/// <summary> /// <summary>
/// 护理部审核状态 1 未提交 2 等待审核 3 审核通过 4 驳回
/// </summary>
public Nullable<int> NursingDeptStatus { get; set; }
/// <summary>
/// 护理部审核时间 /// 护理部审核时间
/// </summary> /// </summary>
public Nullable<DateTime> NursingDeptAuditTime { get; set; } public Nullable<DateTime> NursingDeptAuditTime { get; set; }
...@@ -105,5 +120,14 @@ public class ag_secondallot ...@@ -105,5 +120,14 @@ public class ag_secondallot
/// 护理部备注 /// 护理部备注
/// </summary> /// </summary>
public string NursingDeptRemark { get; set; } public string NursingDeptRemark { get; set; }
/// <summary>
/// 护理部审核状态 2 等待审核 3 审核通过 4 驳回
/// </summary>
public Nullable<int> NursingDeptStatus { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
public decimal? NightShiftWorkPerforFee { get; set; }
} }
} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" cof_cmi.cs"> // <copyright file=" cof_cmi.cs">
//// * FileName: .cs // * FileName: .cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
//using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
//namespace Performance.EntityModels namespace Performance.EntityModels
//{ {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Table("cof_cmi")] [Table("cof_cmi")]
// public class cof_cmi public class cof_cmi
// { {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Key] [Key]
// public int Id { get; set; } public int Id { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public int AllotId { get; set; } public int AllotId { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public int UnitType { get; set; } public int UnitType { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public string AccountingUnit { get; set; } public string AccountingUnit { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public Nullable<decimal> Value { get; set; } public Nullable<decimal> Value { get; set; }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" cof_drugprop.cs"> // <copyright file=" cof_drugprop.cs">
//// * FileName: 工作量门诊药占比系数.cs // * FileName: 工作量门诊药占比系数.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
//using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
//namespace Performance.EntityModels namespace Performance.EntityModels
//{ {
// /// <summary> /// <summary>
// /// 工作量门诊药占比系数 /// 工作量门诊药占比系数
// /// </summary> /// </summary>
// [Table("cof_drugprop")] [Table("cof_drugprop")]
// public class cof_drugprop public class cof_drugprop
// { {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Key] [Key]
// public int ID { get; set; } public int ID { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public Nullable<int> AllotID { get; set; } public Nullable<int> AllotID { get; set; }
// /// <summary> /// <summary>
// /// 药占比最大范围(小于) /// 药占比最大范围(小于)
// /// </summary> /// </summary>
// public Nullable<decimal> MaxRange { get; set; } public Nullable<decimal> MaxRange { get; set; }
// /// <summary> /// <summary>
// /// 药占比最小范围(大于等于) /// 药占比最小范围(大于等于)
// /// </summary> /// </summary>
// public Nullable<decimal> MinRange { get; set; } public Nullable<decimal> MinRange { get; set; }
// /// <summary> /// <summary>
// /// 药占比对应系数 /// 药占比对应系数
// /// </summary> /// </summary>
// public Nullable<decimal> Value { get; set; } public Nullable<decimal> Value { get; set; }
// } }
//} }
//-----------------------------------------------------------------------
// <copyright file=" cof_hrp_department.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("cof_hrp_department")]
public class cof_hrp_department
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int HospitalId { get; set; }
/// <summary>
///
/// </summary>
public int AllotId { get; set; }
/// <summary>
/// HRP人员科室
/// </summary>
public string HRPDepartment { get; set; }
/// <summary>
/// 核算单元
/// </summary>
public string AccountingUnit { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" cof_workloadtype.cs">
// * FileName: 工作量分类.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
/// 工作量分类
/// </summary>
[Table("cof_workloadtype")]
public class cof_workloadtype
{
/// <summary>
///
/// </summary>
[Key]
public int ID { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> AllotID { get; set; }
/// <summary>
///
/// </summary>
public string SourceType { get; set; }
/// <summary>
/// 名称
/// </summary>
public string Original { get; set; }
/// <summary>
/// 类别
/// </summary>
public string Category { get; set; }
}
}
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_data.cs"> // <copyright file=" collect_data.cs">
// * FileName: 二次分配不固定数据.cs // * FileName: .cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
namespace Performance.EntityModels namespace Performance.EntityModels
{ {
/// <summary> /// <summary>
/// 采集数据 ///
/// </summary> /// </summary>
[Table("collect_data")] [Table("collect_data")]
public class collect_data public class collect_data
...@@ -32,7 +32,7 @@ public class collect_data ...@@ -32,7 +32,7 @@ public class collect_data
public string SheetName { get; set; } public string SheetName { get; set; }
/// <summary> /// <summary>
/// /// 核算单元类别 1 医生组 2护理组 3医技组
/// </summary> /// </summary>
public string UnitType { get; set; } public string UnitType { get; set; }
...@@ -45,30 +45,37 @@ public class collect_data ...@@ -45,30 +45,37 @@ public class collect_data
/// 人员姓名 /// 人员姓名
/// </summary> /// </summary>
public string EmployeeName { get; set; } public string EmployeeName { get; set; }
/// <summary> /// <summary>
/// 人员工号 /// 人员工号
/// </summary> /// </summary>
public string JobNumber { get; set; } public string JobNumber { get; set; }
/// <summary> /// <summary>
/// 核算单元名称 医技 /// 核算单元名称医技
/// </summary> /// </summary>
public string AccountingUnitTechnician { get; set; } public string AccountingUnitTechnician { get; set; }
/// <summary> /// <summary>
/// 核算单元名称 护士 /// 核算单元名称护士
/// </summary> /// </summary>
public string AccountingUnitNurse { get; set; } public string AccountingUnitNurse { get; set; }
/// <summary> /// <summary>
/// 核算单元名称 医生 /// 核算单元名称医生
/// </summary> /// </summary>
public string AccountingUnitDoctor { get; set; } public string AccountingUnitDoctor { get; set; }
/// <summary> /// <summary>
/// 科室名称 /// 科室名称
/// </summary> /// </summary>
public string Department { get; set; } public string Department { get; set; }
/// <summary> /// <summary>
/// 列头类型名称 /// 列头类型名称
/// </summary> /// </summary>
public string TypeName { get; set; } public string TypeName { get; set; }
/// <summary> /// <summary>
/// 单元格value /// 单元格value
/// </summary> /// </summary>
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_data.cs"> // <copyright file=" collect_permission.cs">
// * FileName: 二次分配不固定数据.cs // * FileName: .cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -19,7 +19,7 @@ public class collect_permission ...@@ -19,7 +19,7 @@ public class collect_permission
/// ///
/// </summary> /// </summary>
[Key] [Key]
public int ID { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// ///
...@@ -32,7 +32,12 @@ public class collect_permission ...@@ -32,7 +32,12 @@ public class collect_permission
public int UserId { get; set; } public int UserId { get; set; }
/// <summary> /// <summary>
/// 列头类型名称 ///
/// </summary>
public int SheetType { get; set; }
/// <summary>
///
/// </summary> /// </summary>
public string SheetName { get; set; } public string SheetName { get; set; }
...@@ -42,18 +47,18 @@ public class collect_permission ...@@ -42,18 +47,18 @@ public class collect_permission
public string HeadName { get; set; } public string HeadName { get; set; }
/// <summary> /// <summary>
/// 0 可读可写 1 只读 /// 0 可 1 只读
/// </summary> /// </summary>
public int? Readnoly { get; set; } public int Visible { get; set; }
/// <summary> /// <summary>
/// 是否附带上次绩效 0 不附带 1 附带 /// 0 可读可写 1 只读
/// </summary> /// </summary>
public int AttachLast { get; set; } public int Readnoly { get; set; }
public int SheetType { get; set; }
/// <summary> /// <summary>
/// 0 可见 1 不可见 /// 是否附带上次绩效 0 附带 1 不附带
/// </summary> /// </summary>
public int Visible { get; set; } public int AttachLast { get; set; }
} }
} }
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file="cust_script.cs"> // <copyright file=" cust_script.cs">
// * FileName: cust_script.cs // * FileName: 自定义导出.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -19,26 +19,38 @@ public class cust_script ...@@ -19,26 +19,38 @@ public class cust_script
/// ///
/// </summary> /// </summary>
[Key] [Key]
public int ID { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 医院ID /// 医院ID
/// </summary> /// </summary>
public int HospitalId { get; set; } public int HospitalId { get; set; }
/// <summary> /// <summary>
/// 是否允许一次分配下载 1 允许 2 禁止 /// 是否允许一次分配下载 1 允许 2 禁止
/// </summary> /// </summary>
public int IsOnceAllot { get; set; } public int IsOnceAllot { get; set; }
/// <summary> /// <summary>
/// 是否允许二次分配下载 1 允许 2 禁止 /// 是否允许二次分配下载 1 允许 2 禁止
/// </summary> /// </summary>
public int IsSecondAllot { get; set; } public int IsSecondAllot { get; set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; } public string Name { get; set; }
/// <summary>
///
/// </summary>
public string Script { get; set; } public string Script { get; set; }
/// <summary> /// <summary>
/// 配置Id /// 配置Id
/// </summary> /// </summary>
public int ConfigId { get; set; } public int ConfigId { get; set; }
/// <summary> /// <summary>
/// 是否可用 1 可用 2 不可用 /// 是否可用 1 可用 2 不可用
/// </summary> /// </summary>
......
//-----------------------------------------------------------------------
// <copyright file=" his_data.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("his_data")]
public class his_data
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int HospitalId { get; set; }
/// <summary>
///
/// </summary>
public int AllotId { get; set; }
/// <summary>
///
/// </summary>
public int Year { get; set; }
/// <summary>
///
/// </summary>
public int Month { get; set; }
/// <summary>
/// His科室
/// </summary>
public string HisDepartment { 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; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_account.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("his_import_account")]
public class his_import_account
{
/// <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 UnitType { get; set; }
/// <summary>
///
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
///
/// </summary>
public Nullable<decimal> Number { get; set; }
/// <summary>
///
/// </summary>
public Nullable<decimal> RealGiveFee { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_baiscnorm.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("his_import_baiscnorm")]
public class his_import_baiscnorm
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> HospitalId { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> AllotId { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> Year { get; set; }
/// <summary>
///
/// </summary>
public Nullable<int> Month { get; set; }
/// <summary>
/// 绩效核算人群
/// </summary>
public string PositionName { get; set; }
/// <summary>
/// 绩效总额
/// </summary>
public Nullable<decimal> TotelValue { get; set; }
/// <summary>
/// 人均绩效
/// </summary>
public Nullable<decimal> AvgValue { get; set; }
/// <summary>
/// 总人数
/// </summary>
public Nullable<decimal> TotelNumber { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_clinic.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("his_import_clinic")]
public class his_import_clinic
{
/// <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 UnitType { get; set; }
/// <summary>
/// 核算单元类型(医技科室、临床科室等)
/// </summary>
public string AccountType { get; set; }
/// <summary>
/// 核算单元
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
/// 工号
/// </summary>
public string JobNumber { get; set; }
/// <summary>
/// 人员姓名
/// </summary>
public string EmployeeName { get; set; }
/// <summary>
/// 基础绩效系数
/// </summary>
public Nullable<decimal> Basics { get; set; }
/// <summary>
/// 实发绩效
/// </summary>
public Nullable<decimal> RealGiveFee { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_summary.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("his_import_summary")]
public class his_import_summary
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
/// 医院ID
/// </summary>
public int HospitalId { get; set; }
/// <summary>
/// ID
/// </summary>
public 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 Nullable<decimal> RealGiveFee { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
...@@ -85,5 +85,10 @@ public class his_importdata ...@@ -85,5 +85,10 @@ public class his_importdata
/// 值 /// 值
/// </summary> /// </summary>
public Nullable<decimal> Value { get; set; } public Nullable<decimal> Value { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
} }
} }
...@@ -46,10 +46,10 @@ public class im_accountbasic ...@@ -46,10 +46,10 @@ public class im_accountbasic
/// </summary> /// </summary>
public string NurseAccountingUnit { get; set; } public string NurseAccountingUnit { get; set; }
///// <summary> /// <summary>
///// 科室 /// 科室
///// </summary> /// </summary>
//public string Department { get; set; } public string Department { get; set; }
/// <summary> /// <summary>
/// 是否带入平均计算 是 否 /// 是否带入平均计算 是 否
...@@ -61,10 +61,10 @@ public class im_accountbasic ...@@ -61,10 +61,10 @@ public class im_accountbasic
/// </summary> /// </summary>
public Nullable<decimal> PermanentStaff { get; set; } public Nullable<decimal> PermanentStaff { get; set; }
///// <summary> /// <summary>
///// 科主任数量 /// 科主任数量
///// </summary> /// </summary>
//public Nullable<decimal> DoctorDirectorNumber { get; set; } public Nullable<decimal> DoctorDirectorNumber { get; set; }
/// <summary> /// <summary>
/// 核算单元医生数量 /// 核算单元医生数量
...@@ -76,10 +76,10 @@ public class im_accountbasic ...@@ -76,10 +76,10 @@ public class im_accountbasic
/// </summary> /// </summary>
public Nullable<decimal> DoctorBasicFactor { get; set; } public Nullable<decimal> DoctorBasicFactor { get; set; }
///// <summary> /// <summary>
///// 倾斜系数 /// 倾斜系数
///// </summary> /// </summary>
//public Nullable<decimal> DoctorSlopeFactor { get; set; } public Nullable<decimal> DoctorSlopeFactor { get; set; }
/// <summary> /// <summary>
/// 规模绩效系数 /// 规模绩效系数
...@@ -116,9 +116,9 @@ public class im_accountbasic ...@@ -116,9 +116,9 @@ public class im_accountbasic
/// </summary> /// </summary>
public Nullable<decimal> MaterialsExtra { get; set; } public Nullable<decimal> MaterialsExtra { get; set; }
///// <summary> /// <summary>
///// 医院奖罚 /// 医院奖罚
///// </summary> /// </summary>
public Nullable<decimal> DoctorExtra { get; set; } public Nullable<decimal> DoctorExtra { get; set; }
/// <summary> /// <summary>
...@@ -141,70 +141,70 @@ public class im_accountbasic ...@@ -141,70 +141,70 @@ public class im_accountbasic
/// </summary> /// </summary>
public Nullable<decimal> MinimumFactor { get; set; } public Nullable<decimal> MinimumFactor { get; set; }
///// <summary> /// <summary>
///// 护士长人数 /// 护士长人数
///// </summary> /// </summary>
//public Nullable<decimal> NurseHeadNumber { get; set; } public Nullable<decimal> NurseHeadNumber { get; set; }
///// <summary> /// <summary>
///// 护士人数 /// 护士人数
///// </summary> /// </summary>
//public Nullable<decimal> NurseNumber { get; set; } public Nullable<decimal> NurseNumber { get; set; }
///// <summary> /// <summary>
///// 护理基础系数 /// 护理基础系数
///// </summary> /// </summary>
//public Nullable<decimal> NurseBasicFactor { get; set; } public Nullable<decimal> NurseBasicFactor { get; set; }
///// <summary> /// <summary>
///// 倾斜系数 /// 倾斜系数
///// </summary> /// </summary>
//public Nullable<decimal> NurseSlopeFactor { get; set; } public Nullable<decimal> NurseSlopeFactor { get; set; }
///// <summary> /// <summary>
///// 规模绩效系数 /// 规模绩效系数
///// </summary> /// </summary>
//public Nullable<decimal> NurseScale { get; set; } public Nullable<decimal> NurseScale { get; set; }
///// <summary> /// <summary>
///// 效率绩效系数 /// 效率绩效系数
///// </summary> /// </summary>
//public Nullable<decimal> NurseEffic { get; set; } public Nullable<decimal> NurseEffic { get; set; }
///// <summary> /// <summary>
///// 发放系数 /// 发放系数
///// </summary> /// </summary>
//public Nullable<decimal> NurseGrant { get; set; } public Nullable<decimal> NurseGrant { get; set; }
///// <summary> /// <summary>
///// 其他绩效1 /// 其他绩效1
///// </summary> /// </summary>
//public Nullable<decimal> NurseOtherPerfor1 { get; set; } public Nullable<decimal> NurseOtherPerfor1 { get; set; }
///// <summary> /// <summary>
///// 其他绩效2 /// 其他绩效2
///// </summary> /// </summary>
//public Nullable<decimal> NurseOtherPerfor2 { get; set; } public Nullable<decimal> NurseOtherPerfor2 { get; set; }
///// <summary> /// <summary>
///// 医院奖罚 /// 医院奖罚
///// </summary> /// </summary>
//public Nullable<decimal> NurseExtra { get; set; } public Nullable<decimal> NurseExtra { get; set; }
///// <summary> /// <summary>
///// 考核对分率 /// 考核对分率
///// </summary> /// </summary>
//public Nullable<decimal> NurseScoringAverage { get; set; } public Nullable<decimal> NurseScoringAverage { get; set; }
///// <summary> /// <summary>
///// 调节系数 /// 调节系数
///// </summary> /// </summary>
//public Nullable<decimal> NurseAdjustFactor { get; set; } public Nullable<decimal> NurseAdjustFactor { get; set; }
///// <summary> /// <summary>
///// 工作量倾斜系数 /// 工作量倾斜系数
///// </summary> /// </summary>
//public Nullable<decimal> WorkSlopeFactor { get; set; } public Nullable<decimal> WorkSlopeFactor { get; set; }
/// <summary> /// <summary>
/// ///
...@@ -220,10 +220,12 @@ public class im_accountbasic ...@@ -220,10 +220,12 @@ public class im_accountbasic
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
......
...@@ -42,23 +42,24 @@ public class im_data ...@@ -42,23 +42,24 @@ public class im_data
public Nullable<int> RowNumber { get; set; } public Nullable<int> RowNumber { get; set; }
/// <summary> /// <summary>
/// 核算单元名称 /// 人员姓名
/// </summary> /// </summary>
public string AccountingUnit { get; set; } public string EmployeeName { get; set; }
/// <summary> /// <summary>
/// 科室名称 /// 人员工号
/// </summary> /// </summary>
public string Department { get; set; } public string JobNumber { get; set; }
/// <summary> /// <summary>
/// 人员姓名 /// 核算单元名称
/// </summary> /// </summary>
public string EmployeeName { get; set; } public string AccountingUnit { get; set; }
/// <summary> /// <summary>
/// 人员工号 /// 科室名称
/// </summary> /// </summary>
public string JobNumber { get; set; } public string Department { get; set; }
/// <summary> /// <summary>
/// 列头类型名称 /// 列头类型名称
......
...@@ -117,6 +117,21 @@ public class im_employee ...@@ -117,6 +117,21 @@ public class im_employee
public Nullable<decimal> OtherPerfor { get; set; } public Nullable<decimal> OtherPerfor { get; set; }
/// <summary> /// <summary>
/// 其他绩效2
/// </summary>
public Nullable<decimal> OtherPerfor2 { get; set; }
/// <summary>
/// 其他绩效3
/// </summary>
public Nullable<decimal> OtherPerfor3 { get; set; }
/// <summary>
/// 其他绩效4
/// </summary>
public Nullable<decimal> OtherPerfor4 { get; set; }
/// <summary>
/// 夜班费 /// 夜班费
/// </summary> /// </summary>
public Nullable<decimal> NightWorkPerfor { get; set; } public Nullable<decimal> NightWorkPerfor { get; set; }
...@@ -145,14 +160,17 @@ public class im_employee ...@@ -145,14 +160,17 @@ public class im_employee
/// ///
/// </summary> /// </summary>
public Nullable<int> UpdateUser { get; set; } public Nullable<int> UpdateUser { get; set; }
/// <summary> /// <summary>
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
......
...@@ -72,21 +72,11 @@ public class im_employee_clinic ...@@ -72,21 +72,11 @@ public class im_employee_clinic
public Nullable<decimal> Basics { get; set; } public Nullable<decimal> Basics { get; set; }
/// <summary> /// <summary>
/// 实际人均绩效
/// </summary>
public Nullable<decimal> FitPeopleValue { get; set; }
/// <summary>
/// 岗位系数 /// 岗位系数
/// </summary> /// </summary>
public Nullable<decimal> PostCoefficient { get; set; } public Nullable<decimal> PostCoefficient { get; set; }
/// <summary> /// <summary>
/// 效率绩效人数
/// </summary>
public Nullable<decimal> PermanentStaff { get; set; }
/// <summary>
/// 效率绩效系数 /// 效率绩效系数
/// </summary> /// </summary>
public Nullable<decimal> Efficiency { get; set; } public Nullable<decimal> Efficiency { get; set; }
...@@ -102,11 +92,6 @@ public class im_employee_clinic ...@@ -102,11 +92,6 @@ public class im_employee_clinic
public Nullable<decimal> Management { get; set; } public Nullable<decimal> Management { get; set; }
/// <summary> /// <summary>
/// 其他管理绩效
/// </summary>
public Nullable<decimal> OtherManagePerfor { get; set; }
/// <summary>
/// 考核得分率 /// 考核得分率
/// </summary> /// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; } public Nullable<decimal> ScoreAverageRate { get; set; }
...@@ -132,6 +117,16 @@ public class im_employee_clinic ...@@ -132,6 +117,16 @@ public class im_employee_clinic
public Nullable<decimal> OtherPerfor { get; set; } public Nullable<decimal> OtherPerfor { get; set; }
/// <summary> /// <summary>
/// 其他管理绩效
/// </summary>
public Nullable<decimal> OtherManagePerfor { get; set; }
/// <summary>
/// 夜班费
/// </summary>
public Nullable<decimal> NightWorkPerfor { get; set; }
/// <summary>
/// 医院奖罚 /// 医院奖罚
/// </summary> /// </summary>
public Nullable<decimal> Punishment { get; set; } public Nullable<decimal> Punishment { get; set; }
...@@ -155,14 +150,27 @@ public class im_employee_clinic ...@@ -155,14 +150,27 @@ public class im_employee_clinic
/// ///
/// </summary> /// </summary>
public Nullable<int> UpdateUser { get; set; } public Nullable<int> UpdateUser { get; set; }
/// <summary>
/// 效率绩效人数
/// </summary>
public Nullable<decimal> PermanentStaff { get; set; }
/// <summary>
/// 实际人均绩效
/// </summary>
public Nullable<decimal> FitPeopleValue { get; set; }
/// <summary> /// <summary>
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" im_employee_clinic.cs"> // <copyright file=" im_employee_logistics.cs">
// * FileName: .cs // * FileName: .cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
...@@ -72,7 +72,7 @@ public class im_employee_logistics ...@@ -72,7 +72,7 @@ public class im_employee_logistics
public string PersonnelNumber { get; set; } public string PersonnelNumber { get; set; }
/// <summary> /// <summary>
/// 医生姓名 /// 姓名
/// </summary> /// </summary>
public string DoctorName { get; set; } public string DoctorName { get; set; }
...@@ -86,11 +86,6 @@ public class im_employee_logistics ...@@ -86,11 +86,6 @@ public class im_employee_logistics
/// </summary> /// </summary>
public Nullable<decimal> PostCoefficient { get; set; } public Nullable<decimal> PostCoefficient { get; set; }
///// <summary>
///// 参加工作时间
///// </summary>
//public Nullable<DateTime> WorkTime { get; set; }
/// <summary> /// <summary>
/// 考核得分率 /// 考核得分率
/// </summary> /// </summary>
...@@ -101,36 +96,11 @@ public class im_employee_logistics ...@@ -101,36 +96,11 @@ public class im_employee_logistics
/// </summary> /// </summary>
public Nullable<decimal> Attendance { get; set; } public Nullable<decimal> Attendance { get; set; }
///// <summary>
///// 核算单元医生数
///// </summary>
//public Nullable<int> PeopleNumber { get; set; }
///// <summary>
///// 工作量绩效
///// </summary>
//public Nullable<decimal> Workload { get; set; }
/// <summary> /// <summary>
/// 其他绩效 /// 其他绩效
/// </summary> /// </summary>
public Nullable<decimal> OtherPerfor { get; set; } public Nullable<decimal> OtherPerfor { get; set; }
///// <summary>
///// 医院奖罚
///// </summary>
//public Nullable<decimal> Punishment { get; set; }
///// <summary>
///// 调节系数
///// </summary>
//public Nullable<decimal> Adjust { get; set; }
///// <summary>
///// 发放系数
///// </summary>
//public Nullable<decimal> Grant { get; set; }
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
...@@ -145,10 +115,12 @@ public class im_employee_logistics ...@@ -145,10 +115,12 @@ public class im_employee_logistics
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
......
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_extract.cs"> // <copyright file=" mod_extract.cs">
//// * FileName: 医院数据提取脚本.cs // * FileName: 医院数据提取脚本.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
//using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
//namespace Performance.EntityModels namespace Performance.EntityModels
//{ {
// /// <summary> /// <summary>
// /// 医院数据提取脚本 /// 医院数据提取脚本
// /// </summary> /// </summary>
// [Table("mod_extract")] [Table("mod_extract")]
// public class mod_extract public class mod_extract
// { {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Key] [Key]
// public int Id { get; set; } public int Id { get; set; }
// /// <summary> /// <summary>
// /// 医院ID /// 医院ID
// /// </summary> /// </summary>
// public Nullable<int> HospitalId { get; set; } public Nullable<int> HospitalId { get; set; }
// /// <summary> /// <summary>
// /// 当前脚本提取内容名称 /// 当前脚本提取内容名称
// /// </summary> /// </summary>
// public string EName { get; set; } public string EName { get; set; }
// /// <summary> /// <summary>
// /// 执行脚本 /// 执行脚本
// /// </summary> /// </summary>
// public string ExecuteScript { get; set; } public string ExecuteScript { get; set; }
// /// <summary> /// <summary>
// /// 当前脚本类型 1 收入整表 2 单项数据提取 /// 当前脚本类型 1 收入整表 2 单项数据提取
// /// </summary> /// </summary>
// public Nullable<int> ExecuteType { get; set; } public Nullable<int> ExecuteType { get; set; }
// /// <summary> /// <summary>
// /// 数据库来源类型 1 标准库 2 绩效库 /// 数据库来源类型 1 标准库 2 绩效库
// /// </summary> /// </summary>
// public Nullable<int> SourceType { get; set; } public Nullable<int> SourceType { get; set; }
// /// <summary> /// <summary>
// /// 描述 /// 描述
// /// </summary> /// </summary>
// public string Description { get; set; } public string Description { get; set; }
// /// <summary> /// <summary>
// /// 是否可用 1 可用 2 不可用 /// 是否可用 1 可用 2 不可用
// /// </summary> /// </summary>
// public Nullable<int> IsEnable { get; set; } public Nullable<int> IsEnable { get; set; }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_item.cs"> // <copyright file=" mod_item.cs">
//// * FileName: .cs // * FileName: .cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
//using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
//namespace Performance.EntityModels namespace Performance.EntityModels
//{ {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Table("mod_item")] [Table("mod_item")]
// public class mod_item public class mod_item
// { {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Key] [Key]
// public int Id { get; set; } public int Id { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public Nullable<int> ModuleId { get; set; } public Nullable<int> ModuleId { get; set; }
// /// <summary> /// <summary>
// /// 绩效考核项 /// 绩效考核项
// /// </summary> /// </summary>
// public string ItemName { get; set; } public string ItemName { get; set; }
// /// <summary> /// <summary>
// /// 默认系数或医生系数 /// 默认系数或医生系数
// /// </summary> /// </summary>
// public Nullable<decimal> FactorValue1 { get; set; } public Nullable<decimal> FactorValue1 { get; set; }
// /// <summary> /// <summary>
// /// 护理系数 /// 护理系数
// /// </summary> /// </summary>
// public Nullable<decimal> FactorValue2 { get; set; } public Nullable<decimal> FactorValue2 { get; set; }
// /// <summary> /// <summary>
// /// 医技系数 /// 医技系数
// /// </summary> /// </summary>
// public Nullable<decimal> FactorValue3 { get; set; } public Nullable<decimal> FactorValue3 { get; set; }
// /// <summary> /// <summary>
// /// 抽取绩效值SQL /// 抽取绩效值SQL
// /// </summary> /// </summary>
// public Nullable<int> ExtractId { get; set; } public Nullable<int> ExtractId { get; set; }
// /// <summary> /// <summary>
// /// 数据库地址 /// 数据库地址
// /// </summary> /// </summary>
// public Nullable<int> ConfigId { get; set; } public Nullable<int> ConfigId { get; set; }
// /// <summary> /// <summary>
// /// 用户选定抽取范围 /// 用户选定抽取范围
// /// </summary> /// </summary>
// public string SelectionRange { get; set; } public string SelectionRange { get; set; }
// /// <summary> /// <summary>
// /// 只读 0、否 1、是 /// 只读 0、否 1、是
// /// </summary> /// </summary>
// public Nullable<int> ReadOnly { get; set; } public Nullable<int> ReadOnly { get; set; }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_module.cs"> // <copyright file=" mod_module.cs">
//// * FileName: .cs // * FileName: .cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
//using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
//namespace Performance.EntityModels namespace Performance.EntityModels
//{ {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Table("mod_module")] [Table("mod_module")]
// public class mod_module public class mod_module
// { {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Key] [Key]
// public int Id { get; set; } public int Id { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public Nullable<int> HospitalId { get; set; } public Nullable<int> HospitalId { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public Nullable<int> SheetType { get; set; } public Nullable<int> SheetType { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public string ModuleName { get; set; } public string ModuleName { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public string Description { get; set; } public string Description { get; set; }
// /// <summary> /// <summary>
// /// 提取脚本ID /// 提取脚本ID
// /// </summary> /// </summary>
// public Nullable<int> ExtractId { get; set; } public Nullable<int> ExtractId { get; set; }
// /// <summary> /// <summary>
// /// 数据库地址 /// 数据库地址
// /// </summary> /// </summary>
// public Nullable<int> ConfigId { get; set; } public Nullable<int> ConfigId { get; set; }
// /// <summary> /// <summary>
// /// 只读 0、否 1、是 /// 只读 0、否 1、是
// /// </summary> /// </summary>
// public Nullable<int> ReadOnly { get; set; } public Nullable<int> ReadOnly { get; set; }
// /// <summary> /// <summary>
// /// 是否生成Item 0、否 1、是 /// 是否生成Item 0、否 1、是
// /// </summary> /// </summary>
// public Nullable<int> IsGenerated { get; set; } public Nullable<int> IsGenerated { get; set; }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_special.cs"> // <copyright file=" mod_special.cs">
//// * FileName: .cs // * FileName: .cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
//using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
//namespace Performance.EntityModels namespace Performance.EntityModels
//{ {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Table("mod_special")] [Table("mod_special")]
// public class mod_special public class mod_special
// { {
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// [Key] [Key]
// public int Id { get; set; } public int Id { get; set; }
// /// <summary> /// <summary>
// /// ///
// /// </summary> /// </summary>
// public Nullable<int> HospitalId { get; set; } public Nullable<int> HospitalId { get; set; }
// /// <summary> /// <summary>
// /// 科室 /// 科室
// /// </summary> /// </summary>
// public string Department { get; set; } public string Department { get; set; }
// /// <summary> /// <summary>
// /// 量化指标 /// 量化指标
// /// </summary> /// </summary>
// public string Target { get; set; } public string Target { get; set; }
// /// <summary> /// <summary>
// /// 量化指标绩效分值 /// 量化指标绩效分值
// /// </summary> /// </summary>
// public Nullable<decimal> TargetFactor { get; set; } public Nullable<decimal> TargetFactor { get; set; }
// /// <summary> /// <summary>
// /// 调节系数 /// 调节系数
// /// </summary> /// </summary>
// public Nullable<decimal> AdjustFactor { get; set; } public Nullable<decimal> AdjustFactor { get; set; }
// /// <summary> /// <summary>
// /// 抽取绩效值SQL /// 抽取绩效值SQL
// /// </summary> /// </summary>
// public Nullable<int> ExtractId { get; set; } public Nullable<int> ExtractId { get; set; }
// /// <summary> /// <summary>
// /// 数据库地址 /// 数据库地址
// /// </summary> /// </summary>
// public Nullable<int> ConfigId { get; set; } public Nullable<int> ConfigId { get; set; }
// } }
//} }
...@@ -59,7 +59,7 @@ public class per_apr_amount ...@@ -59,7 +59,7 @@ public class per_apr_amount
/// <summary> /// <summary>
/// 状态 1 未提交 2 等待审核 3 审核通过 4 驳回 /// 状态 1 未提交 2 等待审核 3 审核通过 4 驳回
/// </summary> /// </summary>
public int Status { get; set; } public Nullable<int> Status { get; set; }
/// <summary> /// <summary>
/// 审核时间 /// 审核时间
...@@ -72,11 +72,6 @@ public class per_apr_amount ...@@ -72,11 +72,6 @@ public class per_apr_amount
public Nullable<int> AuditUser { get; set; } public Nullable<int> AuditUser { get; set; }
/// <summary> /// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// ///
/// </summary> /// </summary>
public Nullable<DateTime> CreateDate { get; set; } public Nullable<DateTime> CreateDate { get; set; }
...@@ -85,5 +80,10 @@ public class per_apr_amount ...@@ -85,5 +80,10 @@ public class per_apr_amount
/// ///
/// </summary> /// </summary>
public Nullable<int> CreateUser { get; set; } public Nullable<int> CreateUser { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
} }
} }
...@@ -42,6 +42,16 @@ public class rep_report ...@@ -42,6 +42,16 @@ public class rep_report
public string Title { get; set; } public string Title { get; set; }
/// <summary> /// <summary>
/// 查询方法名称
/// </summary>
public string QueryName { get; set; }
/// <summary>
/// 查询参数
/// </summary>
public string QueryArguments { get; set; }
/// <summary>
/// X轴标题 /// X轴标题
/// </summary> /// </summary>
public string XTitle { get; set; } public string XTitle { get; set; }
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" report_global.cs"> // <copyright file=" report_global.cs">
// * FileName: 条件表.cs // * FileName: .cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
namespace Performance.EntityModels namespace Performance.EntityModels
{ {
/// <summary> /// <summary>
/// 条件表 ///
/// </summary> /// </summary>
[Table("report_global")] [Table("report_global")]
public class report_global public class report_global
...@@ -32,12 +32,12 @@ public class report_global ...@@ -32,12 +32,12 @@ public class report_global
public string Category { get; set; } public string Category { get; set; }
/// <summary> /// <summary>
/// 年 /// 年
/// </summary> /// </summary>
public Nullable<int> Year { get; set; } public Nullable<int> Year { get; set; }
/// <summary> /// <summary>
/// 月 /// 月
/// </summary> /// </summary>
public Nullable<int> Month { get; set; } public Nullable<int> Month { get; set; }
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" report_original_workload.cs"> // <copyright file=" report_original_persontime.cs">
// * FileName: .cs // * FileName: 医院门诊住院人次.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
namespace Performance.EntityModels namespace Performance.EntityModels
{ {
/// <summary> /// <summary>
/// /// 医院门诊住院人次
/// </summary> /// </summary>
[Table("report_original_persontime")] [Table("report_original_persontime")]
public class report_original_persontime public class report_original_persontime
...@@ -19,7 +19,7 @@ public class report_original_persontime ...@@ -19,7 +19,7 @@ public class report_original_persontime
/// ///
/// </summary> /// </summary>
[Key] [Key]
public int Id { get; set; } public int ID { get; set; }
/// <summary> /// <summary>
/// ///
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" report_original_workload.cs"> // <copyright file=" report_original_stays.cs">
// * FileName: .cs // * FileName: 医院门诊住院人次.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
namespace Performance.EntityModels namespace Performance.EntityModels
{ {
/// <summary> /// <summary>
/// /// 医院门诊住院人次
/// </summary> /// </summary>
[Table("report_original_stays")] [Table("report_original_stays")]
public class report_original_stays public class report_original_stays
...@@ -19,7 +19,7 @@ public class report_original_stays ...@@ -19,7 +19,7 @@ public class report_original_stays
/// ///
/// </summary> /// </summary>
[Key] [Key]
public int Id { get; set; } public int ID { get; set; }
/// <summary> /// <summary>
/// ///
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" report_original_workload.cs"> // <copyright file=" report_original_surgery.cs">
// * FileName: .cs // * FileName: 医院手术人次.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
namespace Performance.EntityModels namespace Performance.EntityModels
{ {
/// <summary> /// <summary>
/// /// 医院手术人次
/// </summary> /// </summary>
[Table("report_original_surgery")] [Table("report_original_surgery")]
public class report_original_surgery public class report_original_surgery
...@@ -19,7 +19,7 @@ public class report_original_surgery ...@@ -19,7 +19,7 @@ public class report_original_surgery
/// ///
/// </summary> /// </summary>
[Key] [Key]
public int Id { get; set; } public int ID { get; set; }
/// <summary> /// <summary>
/// ///
......
//-----------------------------------------------------------------------
// <copyright file=" report_performance_category.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("report_performance_category")]
public class report_performance_category
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int HospitalId { get; set; }
/// <summary>
///
/// </summary>
public int Year { get; set; }
/// <summary>
///
/// </summary>
public int Month { get; set; }
/// <summary>
///
/// </summary>
public string Category { get; set; }
/// <summary>
///
/// </summary>
public string Original { get; set; }
/// <summary>
///
/// </summary>
public string ItemName { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" report_performance_person_tags.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("report_performance_person_tags")]
public class report_performance_person_tags
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int HospitalId { get; set; }
/// <summary>
///
/// </summary>
public string UnitType { get; set; }
/// <summary>
///
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
///
/// </summary>
public string PersonnelNumber { get; set; }
/// <summary>
///
/// </summary>
public string PersonnelName { get; set; }
/// <summary>
/// 绩效发放情况
/// </summary>
public string Tag1 { get; set; }
/// <summary>
/// 当月绩效权重
/// </summary>
public string Tag2 { get; set; }
/// <summary>
/// 重点群体对比1
/// </summary>
public string Tag3 { get; set; }
/// <summary>
/// 重点群体对比2
/// </summary>
public string Tag4 { get; set; }
/// <summary>
/// 重点群体对比5
/// </summary>
public string Tag5 { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
//-----------------------------------------------------------------------
// <copyright file=" report_performance_tags.cs">
// * FileName: .cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Performance.EntityModels
{
/// <summary>
///
/// </summary>
[Table("report_performance_tags")]
public class report_performance_tags
{
/// <summary>
///
/// </summary>
[Key]
public int Id { get; set; }
/// <summary>
///
/// </summary>
public int HospitalId { get; set; }
/// <summary>
///
/// </summary>
public string UnitType { get; set; }
/// <summary>
///
/// </summary>
public string AccountingUnit { get; set; }
/// <summary>
/// 绩效发放情况
/// </summary>
public string Tag1 { get; set; }
/// <summary>
/// 当月绩效权重
/// </summary>
public string Tag2 { get; set; }
/// <summary>
/// 重点群体对比1
/// </summary>
public string Tag3 { get; set; }
/// <summary>
/// 重点群体对比2
/// </summary>
public string Tag4 { get; set; }
/// <summary>
/// 重点群体对比5
/// </summary>
public string Tag5 { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public Nullable<DateTime> CreateTime { get; set; }
}
}
...@@ -51,15 +51,15 @@ public class res_account ...@@ -51,15 +51,15 @@ public class res_account
/// </summary> /// </summary>
public string IncludeAvgCalculate { get; set; } public string IncludeAvgCalculate { get; set; }
///// <summary> /// <summary>
///// 定科人数 /// 定科人数
///// </summary> /// </summary>
//public Nullable<decimal> PermanentStaff { get; set; } public Nullable<decimal> PermanentStaff { get; set; }
///// <summary> /// <summary>
///// 科主任/护士长数量 /// 科主任/护士长数量
///// </summary> /// </summary>
//public Nullable<decimal> ManagerNumber { get; set; } public Nullable<decimal> ManagerNumber { get; set; }
/// <summary> /// <summary>
/// 核算单元医生数量 /// 核算单元医生数量
...@@ -162,35 +162,42 @@ public class res_account ...@@ -162,35 +162,42 @@ public class res_account
public Nullable<decimal> RealGiveFee { get; set; } public Nullable<decimal> RealGiveFee { get; set; }
/// <summary> /// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 变更日志
/// </summary>
public string ChangeLog { get; set; }
/// <summary>
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; } public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后绩效 /// 考核后绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterPerforTotal { get; set; } public Nullable<decimal> AssessLaterPerforTotal { get; set; }
/// <summary> /// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 变更日志
/// </summary>
public string ChangeLog { get; set; }
/// <summary>
/// 是否需要二次分配 /// 是否需要二次分配
/// </summary> /// </summary>
public string NeedSecondAllot { get; set; } public string NeedSecondAllot { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
public Nullable<decimal> NightShiftWorkPerforFee { get; set; }
} }
} }
...@@ -52,12 +52,12 @@ public class res_compute ...@@ -52,12 +52,12 @@ public class res_compute
public string FitPeople { get; set; } public string FitPeople { get; set; }
/// <summary> /// <summary>
/// 绩效基础核算参考值 ///
/// </summary> /// </summary>
public Nullable<decimal> FitPeopleValue { get; set; } public Nullable<decimal> FitPeopleValue { get; set; }
/// <summary> /// <summary>
/// 绩效基数核算参考对象取值比例(如临床科室护士*95%) ///
/// </summary> /// </summary>
public Nullable<decimal> FitPeopleRatio { get; set; } public Nullable<decimal> FitPeopleRatio { get; set; }
...@@ -92,6 +92,11 @@ public class res_compute ...@@ -92,6 +92,11 @@ public class res_compute
public Nullable<decimal> Avg { get; set; } public Nullable<decimal> Avg { get; set; }
/// <summary> /// <summary>
/// 基础绩效系数
/// </summary>
public Nullable<decimal> Basics { get; set; }
/// <summary>
/// 效率绩效(需计算) /// 效率绩效(需计算)
/// </summary> /// </summary>
public Nullable<decimal> Efficiency { get; set; } public Nullable<decimal> Efficiency { get; set; }
...@@ -137,6 +142,26 @@ public class res_compute ...@@ -137,6 +142,26 @@ public class res_compute
public Nullable<decimal> OtherPerfor { get; set; } public Nullable<decimal> OtherPerfor { get; set; }
/// <summary> /// <summary>
/// 其他绩效2(来自人员名单)
/// </summary>
public Nullable<decimal> OtherPerfor2 { get; set; }
/// <summary>
/// 其他绩效3(来自人员名单)
/// </summary>
public Nullable<decimal> OtherPerfor3 { get; set; }
/// <summary>
/// 其他绩效4(来自人员名单)
/// </summary>
public Nullable<decimal> OtherPerfor4 { get; set; }
/// <summary>
/// 其他管理绩效(来自人员名单)
/// </summary>
public Nullable<decimal> OtherManagePerfor { get; set; }
/// <summary>
/// 夜班费 /// 夜班费
/// </summary> /// </summary>
public Nullable<decimal> NightWorkPerfor { get; set; } public Nullable<decimal> NightWorkPerfor { get; set; }
...@@ -197,11 +222,6 @@ public class res_compute ...@@ -197,11 +222,6 @@ public class res_compute
public Nullable<decimal> ManagerNumber { get; set; } public Nullable<decimal> ManagerNumber { get; set; }
/// <summary> /// <summary>
/// 其他管理绩效
/// </summary>
public Nullable<decimal> OtherManagePerfor { get; set; }
/// <summary>
/// 核算单元人员数量 /// 核算单元人员数量
/// </summary> /// </summary>
public Nullable<decimal> MedicalNumber { get; set; } public Nullable<decimal> MedicalNumber { get; set; }
...@@ -215,16 +235,19 @@ public class res_compute ...@@ -215,16 +235,19 @@ public class res_compute
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; } public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 是否需要二次分配 是 否 /// 是否需要二次分配
/// </summary> /// </summary>
public string NeedSecondAllot { get; set; } public string NeedSecondAllot { get; set; }
} }
......
...@@ -31,6 +31,9 @@ public class res_reserved ...@@ -31,6 +31,9 @@ public class res_reserved
/// </summary> /// </summary>
public int Year { get; set; } public int Year { get; set; }
/// <summary>
///
/// </summary>
public string UnitType { get; set; } public string UnitType { get; set; }
/// <summary> /// <summary>
......
...@@ -115,21 +115,29 @@ public class res_specialunit ...@@ -115,21 +115,29 @@ public class res_specialunit
/// 业绩总绩效 /// 业绩总绩效
/// </summary> /// </summary>
public Nullable<decimal> ResultsTotalFee { get; set; } public Nullable<decimal> ResultsTotalFee { get; set; }
/// <summary> /// <summary>
/// 考核前绩效 /// 考核前绩效
/// </summary> /// </summary>
public Nullable<decimal> PerforTotal { get; set; } public Nullable<decimal> PerforTotal { get; set; }
/// <summary> /// <summary>
/// 考核前其他绩效 /// 考核前其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效 /// 考核后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; } public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效 /// 调节后其他绩效
/// </summary> /// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; } public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 夜班绩效
/// </summary>
public Nullable<decimal> NightShiftWorkPerforFee { get; set; }
} }
} }
...@@ -101,10 +101,10 @@ public class sys_hospital ...@@ -101,10 +101,10 @@ public class sys_hospital
/// </summary> /// </summary>
public Nullable<int> IsShowSecondDirector { get; set; } public Nullable<int> IsShowSecondDirector { get; set; }
///// <summary> /// <summary>
///// 是否开启行政后勤二次绩效分配 1 启用 2 禁用 /// 是否开启行政后勤二次绩效分配 1 启用 2 禁用
///// </summary> /// </summary>
//public Nullable<int> IsOpenLogisticsSecondAllot { get; set; } public Nullable<int> IsOpenLogisticsSecondAllot { get; set; }
/// <summary> /// <summary>
/// 抽取项目是否在同一环境 1 是 2 否 /// 抽取项目是否在同一环境 1 是 2 否
......
using System;
using System.Collections.Generic;
using System.Text;
using Performance.EntityModels;
namespace Performance.Repository.Repository
{
public partial class PerforCofHrpDeptRepository:PerforRepository<cof_hrp_department>
{
public PerforCofHrpDeptRepository(PerformanceDbContext context) : base(context)
{
}
}
}
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" cof_cmi.cs"> // <copyright file=" cof_cmi.cs">
//// * FileName: cof_cmi.cs // * FileName: cof_cmi.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using Performance.EntityModels; using Performance.EntityModels;
//namespace Performance.Repository namespace Performance.Repository
//{ {
// /// <summary> /// <summary>
// /// cof_cmi Repository /// cof_cmi Repository
// /// </summary> /// </summary>
// public partial class PerforCofcmiRepository : PerforRepository<cof_cmi> public partial class PerforCofcmiRepository : PerforRepository<cof_cmi>
// { {
// public PerforCofcmiRepository(PerformanceDbContext context) : base(context) public PerforCofcmiRepository(PerformanceDbContext context) : base(context)
// { {
// } }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" cof_drugprop.cs"> // <copyright file=" cof_drugprop.cs">
//// * FileName: cof_drugprop.cs // * FileName: cof_drugprop.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using Performance.EntityModels; using Performance.EntityModels;
//namespace Performance.Repository namespace Performance.Repository
//{ {
// /// <summary> /// <summary>
// /// cof_drugprop Repository /// cof_drugprop Repository
// /// </summary> /// </summary>
// public partial class PerforCofdrugpropRepository : PerforRepository<cof_drugprop> public partial class PerforCofdrugpropRepository : PerforRepository<cof_drugprop>
// { {
// public PerforCofdrugpropRepository(PerformanceDbContext context) : base(context) public PerforCofdrugpropRepository(PerformanceDbContext context) : base(context)
// { {
// } }
// } }
//} }
//-----------------------------------------------------------------------
// <copyright file=" cof_hrp_department.cs">
// * FileName: cof_hrp_department.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// cof_hrp_department Repository
/// </summary>
public partial class PerforCofhrpdepartmentRepository : PerforRepository<cof_hrp_department>
{
public PerforCofhrpdepartmentRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" cof_workloadtype.cs">
// * FileName: cof_workloadtype.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// cof_workloadtype Repository
/// </summary>
public partial class PerforCofworkloadtypeRepository : PerforRepository<cof_workloadtype>
{
public PerforCofworkloadtypeRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_data.cs">
// * FileName: his_data.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// his_data Repository
/// </summary>
public partial class PerforHisdataRepository : PerforRepository<his_data>
{
public PerforHisdataRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_account.cs">
// * FileName: his_import_account.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// his_import_account Repository
/// </summary>
public partial class PerforHisimportaccountRepository : PerforRepository<his_import_account>
{
public PerforHisimportaccountRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_baiscnorm.cs">
// * FileName: his_import_baiscnorm.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// his_import_baiscnorm Repository
/// </summary>
public partial class PerforHisimportbaiscnormRepository : PerforRepository<his_import_baiscnorm>
{
public PerforHisimportbaiscnormRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_clinic.cs">
// * FileName: his_import_clinic.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// his_import_clinic Repository
/// </summary>
public partial class PerforHisimportclinicRepository : PerforRepository<his_import_clinic>
{
public PerforHisimportclinicRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" his_import_summary.cs">
// * FileName: his_import_summary.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// his_import_summary Repository
/// </summary>
public partial class PerforHisimportsummaryRepository : PerforRepository<his_import_summary>
{
public PerforHisimportsummaryRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" im_employee_clinic.cs"> // <copyright file=" im_employee_logistics.cs">
// * FileName: im_employee_clinic.cs // * FileName: im_employee_logistics.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
namespace Performance.Repository namespace Performance.Repository
{ {
/// <summary> /// <summary>
/// im_employee_clinic Repository /// im_employee_logistics Repository
/// </summary> /// </summary>
public partial class PerforImemployeelogisticsRepository : PerforRepository<im_employee_logistics> public partial class PerforImemployeelogisticsRepository : PerforRepository<im_employee_logistics>
{ {
......
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_extract.cs"> // <copyright file=" mod_extract.cs">
//// * FileName: mod_extract.cs // * FileName: mod_extract.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using Performance.EntityModels; using Performance.EntityModels;
//namespace Performance.Repository namespace Performance.Repository
//{ {
// /// <summary> /// <summary>
// /// mod_extract Repository /// mod_extract Repository
// /// </summary> /// </summary>
// public partial class PerforModextractRepository : PerforRepository<mod_extract> public partial class PerforModextractRepository : PerforRepository<mod_extract>
// { {
// public PerforModextractRepository(PerformanceDbContext context) : base(context) public PerforModextractRepository(PerformanceDbContext context) : base(context)
// { {
// } }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_item.cs"> // <copyright file=" mod_item.cs">
//// * FileName: mod_item.cs // * FileName: mod_item.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using Performance.EntityModels; using Performance.EntityModels;
//namespace Performance.Repository namespace Performance.Repository
//{ {
// /// <summary> /// <summary>
// /// mod_item Repository /// mod_item Repository
// /// </summary> /// </summary>
// public partial class PerforModitemRepository : PerforRepository<mod_item> public partial class PerforModitemRepository : PerforRepository<mod_item>
// { {
// public PerforModitemRepository(PerformanceDbContext context) : base(context) public PerforModitemRepository(PerformanceDbContext context) : base(context)
// { {
// } }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_module.cs"> // <copyright file=" mod_module.cs">
//// * FileName: mod_module.cs // * FileName: mod_module.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using Performance.EntityModels; using Performance.EntityModels;
//namespace Performance.Repository namespace Performance.Repository
//{ {
// /// <summary> /// <summary>
// /// mod_module Repository /// mod_module Repository
// /// </summary> /// </summary>
// public partial class PerforModmoduleRepository : PerforRepository<mod_module> public partial class PerforModmoduleRepository : PerforRepository<mod_module>
// { {
// public PerforModmoduleRepository(PerformanceDbContext context) : base(context) public PerforModmoduleRepository(PerformanceDbContext context) : base(context)
// { {
// } }
// } }
//} }
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//// <copyright file=" mod_special.cs"> // <copyright file=" mod_special.cs">
//// * FileName: mod_special.cs // * FileName: mod_special.cs
//// </copyright> // </copyright>
////----------------------------------------------------------------------- //-----------------------------------------------------------------------
//using System; using System;
//using Performance.EntityModels; using Performance.EntityModels;
//namespace Performance.Repository namespace Performance.Repository
//{ {
// /// <summary> /// <summary>
// /// mod_special Repository /// mod_special Repository
// /// </summary> /// </summary>
// public partial class PerforModspecialRepository : PerforRepository<mod_special> public partial class PerforModspecialRepository : PerforRepository<mod_special>
// { {
// public PerforModspecialRepository(PerformanceDbContext context) : base(context) public PerforModspecialRepository(PerformanceDbContext context) : base(context)
// { {
// } }
// } }
//} }
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
using System.Collections.Generic;
using Performance.EntityModels; using Performance.EntityModels;
namespace Performance.Repository namespace Performance.Repository
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_header.cs"> // <copyright file=" report_original_persontime.cs">
// * FileName: ag_header.cs // * FileName: report_original_persontime.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_header.cs"> // <copyright file=" report_original_stays.cs">
// * FileName: ag_header.cs // * FileName: report_original_stays.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System;
using Performance.EntityModels; using Performance.EntityModels;
namespace Performance.Repository namespace Performance.Repository
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_header.cs"> // <copyright file=" report_original_surgery.cs">
// * FileName: ag_header.cs // * FileName: report_original_surgery.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System;
using Performance.EntityModels; using Performance.EntityModels;
namespace Performance.Repository namespace Performance.Repository
......
//-----------------------------------------------------------------------
// <copyright file=" report_performance_category.cs">
// * FileName: report_performance_category.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// report_performance_category Repository
/// </summary>
public partial class PerforReportperformancecategoryRepository : PerforRepository<report_performance_category>
{
public PerforReportperformancecategoryRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" report_performance_person_tags.cs">
// * FileName: report_performance_person_tags.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// report_performance_person_tags Repository
/// </summary>
public partial class PerforReportperformancepersontagsRepository : PerforRepository<report_performance_person_tags>
{
public PerforReportperformancepersontagsRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//-----------------------------------------------------------------------
// <copyright file=" report_performance_tags.cs">
// * FileName: report_performance_tags.cs
// </copyright>
//-----------------------------------------------------------------------
using System;
using Performance.EntityModels;
namespace Performance.Repository
{
/// <summary>
/// report_performance_tags Repository
/// </summary>
public partial class PerforReportperformancetagsRepository : PerforRepository<report_performance_tags>
{
public PerforReportperformancetagsRepository(PerformanceDbContext context) : base(context)
{
}
}
}
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_againsituation.cs"> // <copyright file=" collect_data.cs">
// * FileName: ag_againsituation.cs // * FileName: collect_data.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using Performance.EntityModels;
using System; using System;
using Performance.EntityModels;
namespace Performance.Repository namespace Performance.Repository
{ {
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_againsituation.cs"> // <copyright file=" collect_permission.cs">
// * FileName: ag_againsituation.cs // * FileName: collect_permission.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using Performance.EntityModels;
using System; using System;
using Performance.EntityModels;
namespace Performance.Repository namespace Performance.Repository
{ {
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" ag_againsituation.cs"> // <copyright file=" cust_script.cs">
// * FileName: ag_againsituation.cs // * FileName: cust_script.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using Performance.EntityModels;
using System; using System;
using Performance.EntityModels;
namespace Performance.Repository namespace Performance.Repository
{ {
/// <summary> /// <summary>
/// collect_data Repository /// cust_script Repository
/// </summary> /// </summary>
public partial class PerforcustscriptRepository : PerforRepository<cust_script> public partial class PerforCustscriptRepository : PerforRepository<cust_script>
{ {
public PerforcustscriptRepository(PerformanceDbContext context) : base(context) public PerforCustscriptRepository(PerformanceDbContext context) : base(context)
{ {
} }
} }
......
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
// <copyright file=" cof_guarantee.cs"> // <copyright file=" res_reserved.cs">
// * FileName: cof_guarantee.cs // * FileName: res_reserved.cs
// </copyright> // </copyright>
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
using System; using System;
...@@ -9,11 +9,11 @@ ...@@ -9,11 +9,11 @@
namespace Performance.Repository namespace Performance.Repository
{ {
/// <summary> /// <summary>
/// cof_guarantee Repository /// res_reserved Repository
/// </summary> /// </summary>
public partial class PerforresreservedRepository : PerforRepository<res_reserved> public partial class PerforResreservedRepository : PerforRepository<res_reserved>
{ {
public PerforresreservedRepository(PerformanceDbContext context) : base(context) public PerforResreservedRepository(PerformanceDbContext context) : base(context)
{ {
} }
} }
......
...@@ -268,6 +268,7 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet, per_allot ...@@ -268,6 +268,7 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet, per_allot
var economicData = perSheet.FirstOrDefault(t => t.SheetType == SheetType.ComputeEconomic)?.PerData?.Select(t => (PerData)t); var economicData = perSheet.FirstOrDefault(t => t.SheetType == SheetType.ComputeEconomic)?.PerData?.Select(t => (PerData)t);
var doctorWorkloadData = perSheet.FirstOrDefault(t => t.SheetType == SheetType.ComputeDoctorWorkload)?.PerData?.Select(t => (PerData)t); var doctorWorkloadData = perSheet.FirstOrDefault(t => t.SheetType == SheetType.ComputeDoctorWorkload)?.PerData?.Select(t => (PerData)t);
var nurseWorkloadData = perSheet.FirstOrDefault(t => t.SheetType == SheetType.ComputeNurseWorkload)?.PerData?.Select(t => (PerData)t); var nurseWorkloadData = perSheet.FirstOrDefault(t => t.SheetType == SheetType.ComputeNurseWorkload)?.PerData?.Select(t => (PerData)t);
var accountExtraData = excel.PerSheet.FirstOrDefault(t => t.SheetType == SheetType.AccountExtra)?.PerData?.Select(t => (PerData)t);
var pairs = new[] var pairs = new[]
{ {
...@@ -301,7 +302,10 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet, per_allot ...@@ -301,7 +302,10 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet, per_allot
} }
if (UnitType.医技组 == unitType && workDoctor == null) if (UnitType.医技组 == unitType && workDoctor == null)
workDoctor = info.Data.FirstOrDefault(t => t.UnitType == UnitType.医生组.ToString() && t.AccountingUnit == dept.AccountingUnit); workDoctor = info.Data.FirstOrDefault(t => t.UnitType == UnitType.医生组.ToString() && t.AccountingUnit == dept.AccountingUnit);
// 夜班绩效 从医院奖罚的明细项中获取
var nightShift = accountExtraData.FirstOrDefault(w => w.UnitType == dept.UnitType && w.AccountingUnit == dept.AccountingUnit && w.TypeName?.Trim() == "夜班绩效")?.CellValue ?? 0;
dept.NightShiftWorkPerforFee = nightShift;
//dept.MedicineFactor = workDoctor?.MedicineFactor; //dept.MedicineFactor = workDoctor?.MedicineFactor;
//dept.ScoringAverage = scoreAverage.HasValue ? scoreAverage ?? 0 : dept.ScoringAverage; //dept.ScoringAverage = scoreAverage.HasValue ? scoreAverage ?? 0 : dept.ScoringAverage;
dept.ScoringAverage = dept.ScoringAverage; dept.ScoringAverage = dept.ScoringAverage;
...@@ -325,6 +329,7 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet, per_allot ...@@ -325,6 +329,7 @@ public List<PerSheet> Compute(PerExcel excel, List<PerSheet> perSheet, per_allot
dept.RealGiveFee = Math.Round((dept.AssessLaterPerforTotal * dept.AdjustFactor + dept.AdjustLaterOtherFee) ?? 0); dept.RealGiveFee = Math.Round((dept.AssessLaterPerforTotal * dept.AdjustFactor + dept.AdjustLaterOtherFee) ?? 0);
//dept.Avg = dept.ManagerNumber + dept.Number == 0 ? 0 : dept.PerforTotal / (dept.ManagerNumber + dept.Number); //dept.Avg = dept.ManagerNumber + dept.Number == 0 ? 0 : dept.PerforTotal / (dept.ManagerNumber + dept.Number);
dept.Avg = dept.Number == 0 ? 0 : dept.PerforTotal / dept.Number; dept.Avg = dept.Number == 0 ? 0 : dept.PerforTotal / dept.Number;
} }
sheet.PerData.AddRange(atDataList); sheet.PerData.AddRange(atDataList);
...@@ -370,28 +375,46 @@ public void ComputeOffice(per_allot allot, PerExcel excel) ...@@ -370,28 +375,46 @@ public void ComputeOffice(per_allot allot, PerExcel excel)
//var materialsExtra = materialsExtras.FirstOrDefault(w => w.UnitType == account.AccountType.ToString() && w.AccountingUnit == resAccount.AccountingUnit)?.TotelValue; //var materialsExtra = materialsExtras.FirstOrDefault(w => w.UnitType == account.AccountType.ToString() && w.AccountingUnit == resAccount.AccountingUnit)?.TotelValue;
var dept = new PerDataAccountBaisc(); var dept = new PerDataAccountBaisc();
//dept.ManagerNumber = resAccount?.ManagerNumber ?? 0;
dept.Number = empolyees.Count(); dept.Number = empolyees.Count();
dept.AccountingUnit = account.AccountingUnit; dept.AccountingUnit = account.AccountingUnit;
dept.UnitType = account.AccountType; dept.UnitType = account.AccountType;
dept.ScoringAverage = resAccount?.ScoringAverage == null ? 0 : resAccount.ScoringAverage;
dept.AdjustFactor = (isBudget ? adjust : resAccount?.AdjustFactor) ?? 1;
dept.Income = empolyees.Sum(w => w.PerforTotal ?? 0); dept.Income = empolyees.Sum(w => w.PerforTotal ?? 0);
dept.NeedSecondAllot = empolyees.Any(w => w.NeedSecondAllot == "是") ? "是" : "否"; dept.NeedSecondAllot = empolyees.Any(w => w.NeedSecondAllot == "是") ? "是" : "否";
//dept.Extra = (extra ?? 0);
//dept.MedicineExtra = 0;// (drugExtra ?? 0); if (resAccount?.UnitType == UnitType.行政后勤.ToString() && resAccount?.NeedSecondAllot == "是")
//dept.MaterialsExtra = 0;//(materialsExtra ?? 0); {
dept.ScoringAverage = resAccount?.ScoringAverage == null ? 0 : resAccount.ScoringAverage;
dept.AdjustFactor = (isBudget ? adjust : resAccount?.AdjustFactor) ?? 1;
dept.Extra = resAccount?.Extra ?? 0; dept.Extra = resAccount?.Extra ?? 0;
dept.MedicineExtra = resAccount?.MedicineExtra ?? 0;// (drugExtra ?? 0); dept.MedicineExtra = resAccount?.MedicineExtra ?? 0;// (drugExtra ?? 0);
dept.MaterialsExtra = resAccount?.MaterialsExtra ?? 0;//(materialsExtra ?? 0); dept.MaterialsExtra = resAccount?.MaterialsExtra ?? 0;//(materialsExtra ?? 0);
dept.AssessBeforeOtherFee = resAccount?.AssessBeforeOtherFee ?? 0; dept.AssessBeforeOtherFee = resAccount?.AssessBeforeOtherFee ?? 0;
dept.AssessLaterOtherFee = resAccount?.AssessLaterOtherFee ?? 0; dept.AssessLaterOtherFee = resAccount?.AssessLaterOtherFee ?? 0;
dept.AdjustLaterOtherFee = resAccount?.AdjustLaterOtherFee ?? 0; // 行政后勤 没有 调节后其他绩效
//dept.AdjustLaterOtherFee = resAccount?.AdjustLaterOtherFee ?? 0;
}
else
{
dept.ScoringAverage = 1;
dept.AdjustFactor = 1;
dept.Extra = empolyees?.Sum(w => w.Punishment) ?? 0;
dept.MedicineExtra = 0;// (drugExtra ?? 0);
dept.MaterialsExtra = 0;//(materialsExtra ?? 0);
dept.AssessBeforeOtherFee = empolyees?.Sum(w => w.AssessBeforeOtherFee) ?? 0;
dept.AssessLaterOtherFee = empolyees?.Sum(w => w.AssessLaterOtherFee) ?? 0;
dept.AdjustLaterOtherFee = empolyees?.Sum(w => w.AdjustLaterOtherFee) ?? 0;
}
//dept.Extra = (extra ?? 0);
//dept.MedicineExtra = 0;// (drugExtra ?? 0);
//dept.MaterialsExtra = 0;//(materialsExtra ?? 0);
dept.PerforFee = empolyees.Sum(w => w.PerforTotal ?? 0); dept.PerforFee = empolyees.Sum(w => w.PerforTotal ?? 0);
dept.PerforTotal = Math.Round(empolyees.Sum(w => w.GiveFee ?? 0)); dept.PerforTotal = Math.Round(empolyees.Sum(w => w.GiveFee ?? 0));
dept.RealGiveFee = Math.Round(((dept.PerforTotal * dept.ScoringAverage + dept.MedicineExtra + dept.MaterialsExtra + dept.Extra) * dept.AdjustFactor) ?? 0); dept.RealGiveFee = Math.Round(((dept.PerforTotal * dept.ScoringAverage + dept.MedicineExtra + dept.MaterialsExtra + dept.Extra) * dept.AdjustFactor + dept.AdjustLaterOtherFee) ?? 0);
//dept.Avg = dept.ManagerNumber + dept.Number == 0 ? 0 : dept.PerforTotal / (dept.ManagerNumber + dept.Number); //dept.Avg = dept.ManagerNumber + dept.Number == 0 ? 0 : dept.PerforTotal / (dept.ManagerNumber + dept.Number);
dept.Avg = dept.Number == 0 ? 0 : dept.PerforTotal / dept.Number; dept.Avg = dept.Number == 0 ? 0 : dept.PerforTotal / dept.Number;
......
...@@ -22,7 +22,7 @@ public class ResultComputeService : IAutoInjection ...@@ -22,7 +22,7 @@ public class ResultComputeService : IAutoInjection
private readonly PerforPerallotRepository perforPerallotRepository; private readonly PerforPerallotRepository perforPerallotRepository;
private readonly PerforAgcomputeRepository perforAgcomputeRepository; private readonly PerforAgcomputeRepository perforAgcomputeRepository;
private readonly PerforAgsecondallotRepository perforAgsecondallotRepository; private readonly PerforAgsecondallotRepository perforAgsecondallotRepository;
private readonly PerforresreservedRepository perforresreservedRepository; private readonly PerforResreservedRepository perforresreservedRepository;
private readonly PerforHospitalRepository hospitalRepository; private readonly PerforHospitalRepository hospitalRepository;
private readonly PerforImemployeeRepository perforImEmployeeRepository; private readonly PerforImemployeeRepository perforImEmployeeRepository;
private readonly PerforRescomputeRepository perforRescomputeRepository; private readonly PerforRescomputeRepository perforRescomputeRepository;
...@@ -48,7 +48,7 @@ public class ResultComputeService : IAutoInjection ...@@ -48,7 +48,7 @@ public class ResultComputeService : IAutoInjection
PerforPerallotRepository perforPerallotRepository, PerforPerallotRepository perforPerallotRepository,
PerforAgcomputeRepository perforAgcomputeRepository, PerforAgcomputeRepository perforAgcomputeRepository,
PerforAgsecondallotRepository perforAgsecondallotRepository, PerforAgsecondallotRepository perforAgsecondallotRepository,
PerforresreservedRepository perforresreservedRepository, PerforResreservedRepository perforresreservedRepository,
PerforImemployeeclinicRepository perforImemployeeclinicRepository, PerforImemployeeclinicRepository perforImemployeeclinicRepository,
PerforImemployeelogisticsRepository perforImemployeelogisticsRepository) PerforImemployeelogisticsRepository perforImemployeelogisticsRepository)
{ {
...@@ -136,6 +136,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno ...@@ -136,6 +136,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno
//取出科室 //取出科室
var accountList = excel.PerSheet.FirstOrDefault(t => t.SheetType == SheetType.AccountBasic)?.PerData?.Select(t => (PerDataAccountBaisc)t); var accountList = excel.PerSheet.FirstOrDefault(t => t.SheetType == SheetType.AccountBasic)?.PerData?.Select(t => (PerDataAccountBaisc)t);
var accountExtraData = excel.PerSheet.FirstOrDefault(t => t.SheetType == SheetType.AccountExtra)?.PerData?.Select(t => (PerData)t);
List<res_specialunit> resDataList = new List<res_specialunit>(); List<res_specialunit> resDataList = new List<res_specialunit>();
...@@ -173,6 +174,9 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno ...@@ -173,6 +174,9 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno
//var materialsExtra = materialsExtras?.FirstOrDefault(w => w.UnitType == UnitType.特殊核算组.ToString() && w.AccountingUnit == dept?.AccountingUnit)?.TotelValue; //var materialsExtra = materialsExtras?.FirstOrDefault(w => w.UnitType == UnitType.特殊核算组.ToString() && w.AccountingUnit == dept?.AccountingUnit)?.TotelValue;
//var scoreAverage = accountScoreAverages?.FirstOrDefault(w => w.UnitType == UnitType.特殊核算组.ToString() && w.AccountingUnit == dept?.AccountingUnit)?.TotelValue; //var scoreAverage = accountScoreAverages?.FirstOrDefault(w => w.UnitType == UnitType.特殊核算组.ToString() && w.AccountingUnit == dept?.AccountingUnit)?.TotelValue;
// 夜班绩效 从医院奖罚的明细项中获取
var nightShift = accountExtraData.FirstOrDefault(w => w.UnitType == dept.UnitType && w.AccountingUnit == dept.AccountingUnit && w.TypeName?.Trim() == "夜班绩效")?.CellValue ?? 0;
decimal? headcount = null; decimal? headcount = null;
if (typeList.Any(o => o.Description == item.QuantitativeIndicators)) if (typeList.Any(o => o.Description == item.QuantitativeIndicators))
headcount = group.Number; headcount = group.Number;
...@@ -207,6 +211,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno ...@@ -207,6 +211,7 @@ public void SpecialUnitCompute(PerExcel excel, per_allot allot, List<res_baiscno
AssessBeforeOtherFee = dept?.AssessBeforeOtherFee ?? 0, AssessBeforeOtherFee = dept?.AssessBeforeOtherFee ?? 0,
AssessLaterOtherFee = dept?.AssessLaterOtherFee ?? 0, AssessLaterOtherFee = dept?.AssessLaterOtherFee ?? 0,
AdjustLaterOtherFee = dept?.AdjustLaterOtherFee ?? 0, AdjustLaterOtherFee = dept?.AdjustLaterOtherFee ?? 0,
NightShiftWorkPerforFee = nightShift,
}; };
res.PerforTotal = (sumValue ?? 0) + res.AssessBeforeOtherFee; res.PerforTotal = (sumValue ?? 0) + res.AssessBeforeOtherFee;
res.GiveFee = Math.Round(res.PerforTotal + res.AssessLaterOtherFee ?? 0); res.GiveFee = Math.Round(res.PerforTotal + res.AssessLaterOtherFee ?? 0);
...@@ -541,6 +546,7 @@ public void GenerateSecondAllot(per_allot allot) ...@@ -541,6 +546,7 @@ public void GenerateSecondAllot(per_allot allot)
Month = allot.Month, Month = allot.Month,
UnitType = ((UnitType)item.UnitType).ToString(), UnitType = ((UnitType)item.UnitType).ToString(),
Department = item.AccountingUnit, Department = item.AccountingUnit,
NightShiftWorkPerforFee = item.NightShiftWorkPerforFee,
RealGiveFee = item.RealGiveFee, RealGiveFee = item.RealGiveFee,
}); });
} }
...@@ -548,7 +554,7 @@ public void GenerateSecondAllot(per_allot allot) ...@@ -548,7 +554,7 @@ public void GenerateSecondAllot(per_allot allot)
} }
if (specialList != null) if (specialList != null)
{ {
foreach (var item in specialList.Select(w => new { w.AccountingUnit, w.RealGiveFee }).Distinct()) foreach (var item in specialList.Select(w => new { w.AccountingUnit, w.NightShiftWorkPerforFee, w.RealGiveFee }).Distinct())
{ {
if (!tempSecond.Any(f => f.UnitType == UnitType.特殊核算组.ToString() && f.Department == item.AccountingUnit)) if (!tempSecond.Any(f => f.UnitType == UnitType.特殊核算组.ToString() && f.Department == item.AccountingUnit))
{ {
...@@ -559,6 +565,7 @@ public void GenerateSecondAllot(per_allot allot) ...@@ -559,6 +565,7 @@ public void GenerateSecondAllot(per_allot allot)
Month = allot.Month, Month = allot.Month,
UnitType = UnitType.特殊核算组.ToString(), UnitType = UnitType.特殊核算组.ToString(),
Department = item.AccountingUnit, Department = item.AccountingUnit,
NightShiftWorkPerforFee = item.NightShiftWorkPerforFee,
RealGiveFee = item.RealGiveFee, RealGiveFee = item.RealGiveFee,
}); });
} }
...@@ -580,13 +587,16 @@ public void GenerateSecondAllot(per_allot allot) ...@@ -580,13 +587,16 @@ public void GenerateSecondAllot(per_allot allot)
UnitType = item.UnitType, UnitType = item.UnitType,
Department = item.Department, Department = item.Department,
RealGiveFee = item.RealGiveFee, RealGiveFee = item.RealGiveFee,
NightShiftWorkPerforFee = item.NightShiftWorkPerforFee,
Status = 1, Status = 1,
NursingDeptStatus = 1, NursingDeptStatus = 1,
}); });
} }
else else
{ {
if (Math.Abs((second.RealGiveFee ?? 0) - (item.RealGiveFee ?? 0)) >= 0.5m && second.Status > 1) var backResult = Math.Abs((second.RealGiveFee ?? 0) - (item.RealGiveFee ?? 0)) >= 0.5m
|| Math.Abs((second.NightShiftWorkPerforFee ?? 0) - (item.NightShiftWorkPerforFee ?? 0)) >= 0.5m;
if (backResult && second.Status > 1)
{ {
second.Status = 4; second.Status = 4;
second.Remark = "科室绩效结果发生变更,需要重新提交"; second.Remark = "科室绩效结果发生变更,需要重新提交";
......
...@@ -20,95 +20,93 @@ namespace Performance.Services ...@@ -20,95 +20,93 @@ namespace Performance.Services
{ {
public class AllotService : IAutoInjection public class AllotService : IAutoInjection
{ {
private readonly IHostingEnvironment _evn; private BaiscNormService baiscNormService;
private readonly ILogger<AllotService> _logger; private CheckDataService checkDataService;
private ImportDataService importDataService;
private ProcessComputService processComputService;
private ResultComputeService resultComputeService;
private PerforLogdbugRepository logdbug;
private readonly PerforResreservedRepository perforresreservedRepository;
private ConfigService configService;
private IHostingEnvironment _evn;
private ILogger<AllotService> _logger;
private PerforPerallotRepository _allotRepository;
private IEmailService emailService;
private readonly IOptions<Application> options; private readonly IOptions<Application> options;
private readonly ComputeDirector _computeDirector; private readonly ComputeDirector _computeDirector;
private readonly PerforPeragainallotRepository _againallotRepository;
private readonly PerforPerallotRepository _allotRepository;
private readonly PerforImemployeeRepository _perforImEmployeeRepository;
private readonly PerforRescomputeRepository _perforRescomputeRepository; private readonly PerforRescomputeRepository _perforRescomputeRepository;
private readonly PerforLogdbugRepository logdbug; private readonly PerforImemployeeRepository _perforImEmployeeRepository;
private readonly PerforresreservedRepository perforresreservedRepository; private PerforPeragainallotRepository _againallotRepository;
private readonly PerforCofdirectorRepository perforCofdirectorRepository; private PerforLogcheckRepository perforLogcheckRepository;
private readonly PerforHospitalRepository perforHospitalRepository; private readonly PerforHospitalRepository perforHospitalRepository;
private readonly PerforHospitalconfigRepository perforHospitalconfigRepository;
private readonly PerforLogcheckRepository perforLogcheckRepository;
private readonly PerforResbaiscnormRepository perforResbaiscnormRepository; private readonly PerforResbaiscnormRepository perforResbaiscnormRepository;
private readonly BaiscNormService baiscNormService; private PerforHospitalconfigRepository perforHospitalconfigRepository;
private readonly CheckDataService checkDataService;
private readonly ConfigService configService;
private readonly IEmailService emailService;
private readonly ImportDataService importDataService;
//private readonly LogManageService logManageService;
private readonly NotificationsService notificationsService;
private readonly ProcessComputService processComputService;
private readonly QueryDataService queryDataService;
private readonly ReportService reportService;
private readonly ResultComputeService resultComputeService;
private readonly RoleService roleService; private readonly RoleService roleService;
private readonly UserService userService; private readonly UserService userService;
private PerforCofdirectorRepository perforCofdirectorRepository;
//private readonly IHubContext<AllotLogHub> hubContext;
private readonly LogManageService logManageService;
public AllotService( private readonly ReportService reportService;
IHostingEnvironment evn, private readonly QueryDataService queryDataService;
ILogger<AllotService> logger,
IOptions<Application> options, public AllotService(PerforPerallotRepository allotRepository,
ComputeDirector computeDirector,
PerforPeragainallotRepository againallotRepository,
PerforPerallotRepository allotRepository,
PerforImemployeeRepository perforImEmployeeRepository,
PerforRescomputeRepository perforRescomputeRepository,
PerforLogdbugRepository logdbug,
PerforresreservedRepository perforresreservedRepository,
PerforCofdirectorRepository perforCofdirectorRepository,
PerforHospitalRepository perforHospitalRepository,
PerforHospitalconfigRepository perforHospitalconfigRepository,
PerforLogcheckRepository perforLogcheckRepository,
PerforResbaiscnormRepository perforResbaiscnormRepository,
BaiscNormService baiscNormService, BaiscNormService baiscNormService,
CheckDataService checkDataService, CheckDataService checkDataService,
ConfigService configService,
IEmailService emailService,
ImportDataService importDataService, ImportDataService importDataService,
//LogManageService logManageService,
NotificationsService notificationsService,
ProcessComputService processComputService, ProcessComputService processComputService,
QueryDataService queryDataService,
ReportService reportService,
ResultComputeService resultComputeService, ResultComputeService resultComputeService,
ConfigService configService,
PerforLogdbugRepository logdbug,
PerforResreservedRepository perforresreservedRepository,
IHostingEnvironment evn, ILogger<AllotService> logger,
IEmailService emailService,
IOptions<Application> options,
ComputeDirector computeDirector,
PerforRescomputeRepository perforRescomputeRepository,
PerforImemployeeRepository perforImEmployeeRepository,
PerforPeragainallotRepository againallotRepository,
PerforLogcheckRepository perforLogcheckRepository,
PerforHospitalRepository perforHospitalRepository,
PerforResbaiscnormRepository perforResbaiscnormRepository,
PerforHospitalconfigRepository perforHospitalconfigRepository,
//IHubContext<AllotLogHub> hubContext
RoleService roleService, RoleService roleService,
UserService userService UserService userService,
) LogManageService logManageService,
ReportService reportService,
PerforCofdirectorRepository perforCofdirectorRepository,
QueryDataService queryDataService)
{ {
this._evn = evn; _allotRepository = allotRepository;
this._logger = logger; _againallotRepository = againallotRepository;
this.options = options; _logger = logger;
this._computeDirector = computeDirector; _evn = evn;
this._againallotRepository = againallotRepository;
this._allotRepository = allotRepository;
this._perforImEmployeeRepository = perforImEmployeeRepository;
this._perforRescomputeRepository = perforRescomputeRepository;
this.logdbug = logdbug;
this.perforresreservedRepository = perforresreservedRepository;
this.perforCofdirectorRepository = perforCofdirectorRepository;
this.perforHospitalRepository = perforHospitalRepository;
this.perforHospitalconfigRepository = perforHospitalconfigRepository;
this.perforLogcheckRepository = perforLogcheckRepository;
this.perforResbaiscnormRepository = perforResbaiscnormRepository;
this.baiscNormService = baiscNormService; this.baiscNormService = baiscNormService;
this.checkDataService = checkDataService; this.checkDataService = checkDataService;
this.configService = configService;
this.emailService = emailService;
this.importDataService = importDataService; this.importDataService = importDataService;
//this.logManageService = logManageService;
this.notificationsService = notificationsService;
this.processComputService = processComputService; this.processComputService = processComputService;
this.queryDataService = queryDataService;
this.reportService = reportService;
this.resultComputeService = resultComputeService; this.resultComputeService = resultComputeService;
this.emailService = emailService;
this.options = options;
_computeDirector = computeDirector;
_perforRescomputeRepository = perforRescomputeRepository;
_perforImEmployeeRepository = perforImEmployeeRepository;
this.configService = configService;
this.logdbug = logdbug;
this.perforresreservedRepository = perforresreservedRepository;
this.perforLogcheckRepository = perforLogcheckRepository;
this.perforHospitalRepository = perforHospitalRepository;
this.perforResbaiscnormRepository = perforResbaiscnormRepository;
this.perforHospitalconfigRepository = perforHospitalconfigRepository;
this.roleService = roleService; this.roleService = roleService;
this.userService = userService; this.userService = userService;
//this.hubContext = hubContext;
this.logManageService = logManageService;
this.reportService = reportService;
this.perforCofdirectorRepository = perforCofdirectorRepository;
this.queryDataService = queryDataService;
} }
#region 基础功能 #region 基础功能
...@@ -305,27 +303,25 @@ public per_allot UpdateAllotShowFormula(int allotId) ...@@ -305,27 +303,25 @@ public per_allot UpdateAllotShowFormula(int allotId)
/// </summary> /// </summary>
/// <param name="allot"></param> /// <param name="allot"></param>
/// <param name="user"></param> /// <param name="user"></param>
/// <param name="uuid"></param> public void Generate(per_allot allot, string mail)
/// <param name="userId"></param>
public void Generate(per_allot allot, string mail, string uuid, int userId)
{ {
DateTime time = DateTime.Now; DateTime time = DateTime.Now;
try try
{ {
notificationsService.SendGenerateMessage(userId, allot.ID, $"正在生成{allot.Year}-{allot.Month.ToString().PadLeft(2, '0')}月份绩效!"); logManageService.WriteMsg("绩效开始执行", $"正在生成{allot.Year}-{allot.Month.ToString().PadLeft(2, '0')}月份绩效!", 1, allot.ID, "ReceiveMessage", true);
var excel = new PerExcel(); var excel = new PerExcel();
int generate = allot.Generate; int generate = allot.Generate;
if (new int[] { (int)AllotGenerate.OriginalDataEdited, (int)AllotGenerate.PersonnelOffice }.Contains(allot.Generate)) if (new int[] { (int)AllotGenerate.OriginalDataEdited, (int)AllotGenerate.PersonnelOffice }.Contains(allot.Generate))
{ {
notificationsService.SendGenerateMessage(userId, allot.ID, "绩效开始生成,数据来源:生成成功后被修改的原数据。"); logManageService.WriteMsg("绩效开始执行", $"数据来源:生成成功后被修改的原数据。", 1, allot.ID, "ReceiveMessage", true);
generate = (int)AllotGenerate.Success; generate = (int)AllotGenerate.Success;
configService.ClearResData(allot.ID); configService.ClearResData(allot.ID);
excel = queryDataService.QueryDataAndHeader(allot); excel = queryDataService.QueryDataAndHeader(allot);
} }
else else
{ {
notificationsService.SendGenerateMessage(userId, allot.ID, "绩效开始生成,数据来源:用户上传的Excel。"); logManageService.WriteMsg("绩效开始执行", $"数据来源:用户上传的Excel。", 1, allot.ID, "ReceiveMessage", true);
configService.Clear(allot.ID); configService.Clear(allot.ID);
// 关闭筛选功能 // 关闭筛选功能
...@@ -352,7 +348,7 @@ public void Generate(per_allot allot, string mail, string uuid, int userId) ...@@ -352,7 +348,7 @@ public void Generate(per_allot allot, string mail, string uuid, int userId)
//根据当前业绩绩效核算出最终绩效结果 //根据当前业绩绩效核算出最终绩效结果
//科室经济核算汇总、工作量汇总 //科室经济核算汇总、工作量汇总
notificationsService.SendGenerateMessage(userId, allot.ID, "科室业绩汇总,正在生成科室收入支出汇总、工作量汇总"); logManageService.WriteMsg("科室业绩汇总", "正在生成科室收入支出汇总、工作量汇总", 1, allot.ID, "ReceiveMessage", true);
var (list, mergeSheets) = processComputService.MergeCompute(excel, allot.ID); var (list, mergeSheets) = processComputService.MergeCompute(excel, allot.ID);
processComputService.Save(list, allot.ID); processComputService.Save(list, allot.ID);
...@@ -408,11 +404,11 @@ public void Generate(per_allot allot, string mail, string uuid, int userId) ...@@ -408,11 +404,11 @@ public void Generate(per_allot allot, string mail, string uuid, int userId)
#endregion 注释 #endregion 注释
//重新计算科室业绩(含所有提供保底金额) //重新计算科室业绩(含所有提供保底金额)
notificationsService.SendGenerateMessage(userId, allot.ID, $"计算科室业绩分值"); logManageService.WriteMsg("正在生成绩效", "计算科室业绩分", 1, allot.ID, "ReceiveMessage", true);
var sheetLast = processComputService.Compute(excel, mergeSheets, allot); var sheetLast = processComputService.Compute(excel, mergeSheets, allot);
//保存计算过程数据 //保存计算过程数据
notificationsService.SendGenerateMessage(userId, allot.ID, "保存科室业绩结果及计算过程中产生的数据"); logManageService.WriteMsg("正在生成绩效", "保存科室业绩结果及计算过程中产生的数据", 1, allot.ID, "ReceiveMessage", true);
processComputService.Save(sheetLast, allot.ID); processComputService.Save(sheetLast, allot.ID);
////业务中层行政中高层医院奖罚 ////业务中层行政中高层医院奖罚
...@@ -420,23 +416,23 @@ public void Generate(per_allot allot, string mail, string uuid, int userId) ...@@ -420,23 +416,23 @@ public void Generate(per_allot allot, string mail, string uuid, int userId)
//var employeeExtra = processComputService.GetEmployeeExtra(excel); //var employeeExtra = processComputService.GetEmployeeExtra(excel);
// 计算最总数据 // 计算最总数据
notificationsService.SendGenerateMessage(userId, allot.ID, "计算并保存最终绩效数据"); logManageService.WriteMsg("正在生成绩效", "计算最终绩效数据", 1, allot.ID, "ReceiveMessage", true);
var baiscnormList = resultComputeService.Compute(allot, sheetLast); var baiscnormList = resultComputeService.Compute(allot, sheetLast);
// 计算行政科室绩效 // 计算行政科室绩效
processComputService.ComputeOffice(allot, excel); processComputService.ComputeOffice(allot, excel);
// 计算特殊科室 // 计算特殊科室
notificationsService.SendGenerateMessage(userId, allot.ID, "计算最终特殊科室绩效数据"); logManageService.WriteMsg("正在生成绩效", "计算最终特殊科室绩效数据", 1, allot.ID, "ReceiveMessage", true);
resultComputeService.SpecialUnitCompute(excel, allot, baiscnormList); resultComputeService.SpecialUnitCompute(excel, allot, baiscnormList);
notificationsService.SendGenerateMessage(userId, allot.ID, "保存最终特殊科室绩效数据"); logManageService.WriteMsg("正在生成绩效", "保存最终特殊科室绩效数据", 1, allot.ID, "ReceiveMessage", true);
//保存 绩效人均参考标准 //保存 绩效人均参考标准
notificationsService.SendGenerateMessage(userId, allot.ID, "保存绩效人均参考标准"); logManageService.WriteMsg("正在生成绩效", "保存绩效人均参考标准", 1, allot.ID, "ReceiveMessage", true);
perforResbaiscnormRepository.AddRange(baiscnormList.ToArray()); perforResbaiscnormRepository.AddRange(baiscnormList.ToArray());
// 保存预留绩效 // 保存预留绩效
notificationsService.SendGenerateMessage(userId, allot.ID, "保存预留绩效金额"); logManageService.WriteMsg("正在生成绩效", "保存预留绩效金额", 1, allot.ID, "ReceiveMessage", true);
resultComputeService.SaveReserved(allot); resultComputeService.SaveReserved(allot);
// 科室下发 // 科室下发
...@@ -445,20 +441,20 @@ public void Generate(per_allot allot, string mail, string uuid, int userId) ...@@ -445,20 +441,20 @@ public void Generate(per_allot allot, string mail, string uuid, int userId)
UpdateAllotStates(allot.ID, (int)AllotStates.GenerateAccomplish, EnumHelper.GetDescription(AllotStates.GenerateAccomplish), generate); UpdateAllotStates(allot.ID, (int)AllotStates.GenerateAccomplish, EnumHelper.GetDescription(AllotStates.GenerateAccomplish), generate);
perforCofdirectorRepository.SupplementaryData(allot.ID); perforCofdirectorRepository.SupplementaryData(allot.ID);
notificationsService.SendGenerateMessage(userId, allot.ID, "正在生成报表数据"); logManageService.WriteMsg("正在生成报表数据", "正在生成报表数据", 1, allot.ID, "ReceiveMessage", true);
var res = reportService.ImportData(allot); var res = reportService.ImportData(allot);
var flag = reportService.UpdateData(allot); var flag = reportService.UpdateData(allot);
notificationsService.SendGenerateMessage(userId, allot.ID, "报表数据生成完成,受影响:{res}行"); logManageService.WriteMsg("正在生成报表数据", $"报表数据生成完成;受影响:{res}行", 1, allot.ID, "ReceiveMessage", true);
////发送邮件 ////发送邮件
//logManageService.WriteMsg("正在发送邮件", "正在发送邮件", 1, allot.ID, "ReceiveMessage", true); //logManageService.WriteMsg("正在发送邮件", "正在发送邮件", 1, allot.ID, "ReceiveMessage", true);
//SendEmail(allot, mail, 1, time); //SendEmail(allot, mail, 1, time);
//logdbug.Add(allot.ID, "绩效开始执行", "绩效生成成功"); //logdbug.Add(allot.ID, "绩效开始执行", "绩效生成成功");
notificationsService.SendGenerateMessage(userId, allot.ID, "绩效生成成功", ComponentType.success); logManageService.WriteMsg("绩效生成结束", "绩效生成成功", 5, allot.ID, "ReceiveMessage", true);
} }
catch (Exception ex) catch (Exception ex)
{ {
notificationsService.SendGenerateMessage(userId, allot.ID, "绩效生成失败", ComponentType.error); logManageService.WriteMsg("绩效生成失败", ex.Message, 4, allot.ID, "ReceiveMessage");
logdbug.Add(allot.ID, "绩效生成失败", ex.ToString(), 4, 1); logdbug.Add(allot.ID, "绩效生成失败", ex.ToString(), 4, 1);
UpdateAllotStates(allot.ID, (int)AllotStates.GenerateFail, EnumHelper.GetDescription(AllotStates.GenerateFail)); UpdateAllotStates(allot.ID, (int)AllotStates.GenerateFail, EnumHelper.GetDescription(AllotStates.GenerateFail));
//SendEmail(allot, mail, 2, time); //SendEmail(allot, mail, 2, time);
......
...@@ -125,7 +125,7 @@ into emppmss ...@@ -125,7 +125,7 @@ into emppmss
SheetName = sh.SheetName, SheetName = sh.SheetName,
SheetType = sh.SheetType.Value, SheetType = sh.SheetType.Value,
HeadName = sh.HeadName, HeadName = sh.HeadName,
PermissionId = item?.ID, PermissionId = item?.Id,
Readnoly = item?.Readnoly ?? 0, Readnoly = item?.Readnoly ?? 0,
AttachLast = item?.AttachLast ?? 0, AttachLast = item?.AttachLast ?? 0,
Visible = item?.Visible ?? 0 Visible = item?.Visible ?? 0
...@@ -160,7 +160,7 @@ public void SetPermission(int userid, IEnumerable<CollectPermission> collects) ...@@ -160,7 +160,7 @@ public void SetPermission(int userid, IEnumerable<CollectPermission> collects)
if (data3 != null) if (data3 != null)
{ {
var ids = data3.Select(t => t.PermissionId).ToList(); var ids = data3.Select(t => t.PermissionId).ToList();
var deletes = perforcollectpermissionRepository.GetEntities(w => ids.Contains(w.ID)); var deletes = perforcollectpermissionRepository.GetEntities(w => ids.Contains(w.Id));
if (deletes != null) if (deletes != null)
perforcollectpermissionRepository.RemoveRange(deletes.ToArray()); perforcollectpermissionRepository.RemoveRange(deletes.ToArray());
} }
...@@ -170,14 +170,14 @@ public void SetPermission(int userid, IEnumerable<CollectPermission> collects) ...@@ -170,14 +170,14 @@ public void SetPermission(int userid, IEnumerable<CollectPermission> collects)
if (data1 != null) if (data1 != null)
{ {
var ids = data1.Select(t => t.PermissionId).ToList(); var ids = data1.Select(t => t.PermissionId).ToList();
var updates = perforcollectpermissionRepository.GetEntities(w => ids.Contains(w.ID)); var updates = perforcollectpermissionRepository.GetEntities(w => ids.Contains(w.Id));
if (updates != null) if (updates != null)
{ {
foreach (var item in updates) foreach (var item in updates)
{ {
item.AttachLast = data1.FirstOrDefault(w => w.PermissionId == item.ID).AttachLast; item.AttachLast = data1.FirstOrDefault(w => w.PermissionId == item.Id).AttachLast;
item.Readnoly = data1.FirstOrDefault(w => w.PermissionId == item.ID).Readnoly; item.Readnoly = data1.FirstOrDefault(w => w.PermissionId == item.Id).Readnoly;
item.Visible = data1.FirstOrDefault(w => w.PermissionId == item.ID).Visible; item.Visible = data1.FirstOrDefault(w => w.PermissionId == item.Id).Visible;
} }
perforcollectpermissionRepository.UpdateRange(updates.ToArray()); perforcollectpermissionRepository.UpdateRange(updates.ToArray());
} }
......
...@@ -9,6 +9,8 @@ ...@@ -9,6 +9,8 @@
using System.Linq.Expressions; using System.Linq.Expressions;
using System.Text; using System.Text;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using Performance.DtoModels.Request;
using Performance.DtoModels.Response;
namespace Performance.Services namespace Performance.Services
{ {
...@@ -210,8 +212,15 @@ public List<res_baiscnorm> AllComputeAvg(int allotId, List<ComputeResponse> list ...@@ -210,8 +212,15 @@ public List<res_baiscnorm> AllComputeAvg(int allotId, List<ComputeResponse> list
List<res_baiscnorm> avgs = new List<res_baiscnorm>(); List<res_baiscnorm> avgs = new List<res_baiscnorm>();
var emps = perforPeremployeeRepository.GetEntities(w => w.AllotId == allotId); var emps = perforPeremployeeRepository.GetEntities(w => w.AllotId == allotId);
var jobCategory = emps?.Select(w => string.IsNullOrEmpty(w.JobCategory) ? "未知" : w.JobCategory).Distinct() ?? new List<string>(); var jobCategory = emps?.Select(w => string.IsNullOrEmpty(w.JobCategory) ? "未知" : w.JobCategory).Distinct() ?? new List<string>();
var basicnorm = perforResbaiscnormRepository.GetEntities(t => t.AllotID == allotId);
var position = basicnorm?.Select(t => string.IsNullOrEmpty(t.PositionName) ? "" : t.PositionName).Distinct() ?? new List<string>();
foreach (var item in jobCategory) foreach (var item in jobCategory)
{ {
if (position.Contains(item))
{
avgs.Add(basicnorm.First(t => t.PositionName == item));
continue;
}
var sumfee = (from com in list var sumfee = (from com in list
join emp in emps?.Where(w => w.JobCategory == item) join emp in emps?.Where(w => w.JobCategory == item)
on com.JobNumber equals emp.PersonnelNumber on com.JobNumber equals emp.PersonnelNumber
...@@ -302,6 +311,154 @@ public List<DeptResponse> GetOfficePerformance(int allotId) ...@@ -302,6 +311,154 @@ public List<DeptResponse> GetOfficePerformance(int allotId)
return other; return other;
} }
///// <summary>
///// 返回院领导、中层、工勤组绩效
///// </summary>
///// <param name="allotId">绩效ID</param>
///// <returns></returns>
//public List<DeptResponse> GetAdminPerformance(int allotId)
//{
// var result = new List<DeptResponse>();
// var resData = perforResaccountRepository.GetEntities(t => t.AllotID == allotId);
// if (resData != null && resData.Any())
// {
// result.AddRange(Mapper.Map<List<DeptResponse>>(resData));
// result.ForEach(t =>
// {
// t.UnitName = ((UnitType)t.UnitType).ToString();
// t.AssessLaterPerforTotal = Math.Round((t.PerforTotal * t.ScoringAverage + (t.MedicineExtra ?? 0) + (t.MaterialsExtra ?? 0) + (t.Extra ?? 0) + (t.AssessLaterOtherFee ?? 0)) ?? 0);
// });
// result = result.OrderBy(t => t.UnitType).ThenBy(t => t.AccountingUnit).ToList();
// }
// var list = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId);
// if (list == null || !list.Any()) return result;
// var isShowManage = IsShowManage(allotId);
// Dictionary<string, string> dict = new Dictionary<string, string>
// {
// { "科主任", "医生组" },
// { "护士长", "护理组" },
// { AccountUnitType.行政高层.ToString(), AccountUnitType.行政高层.ToString() },
// { AccountUnitType.行政中层.ToString(), AccountUnitType.行政中层.ToString() },
// { AccountUnitType.行政工勤.ToString(), AccountUnitType.行政工勤.ToString() }
// };
// var doctors = new string[] { "医生组", "护理组", "医技组" };
// List<DeptResponse> adminPerfor = list.GroupBy(t => new { t.AccountingUnit, t.AccountType, t.UnitType }).Select(t =>
// {
// string unitName = !string.IsNullOrEmpty(t.Key.UnitType) ? t.Key.UnitType : result.Where(w => !dict.Values.Contains(w.UnitName)).FirstOrDefault(w => w.AccountingUnit == t.Key.AccountingUnit)?.UnitName ?? "";
// var data = new DeptResponse
// {
// UnitName = !dict.Values.Contains(unitName) && !string.IsNullOrEmpty(unitName) ? unitName : dict.ContainsKey(t.Key.AccountType) ? dict[t.Key.AccountType] : "未知",
// AccountingUnit = t.Key.AccountingUnit,
// Department = t.Key.AccountingUnit,
// Number = t.Count(),
// };
// if (doctors.Contains(data.UnitName))
// {
// data.AssessLaterManagementFee = isShowManage == 1
// ? t.Sum(group => group.RealGiveFee ?? 0) + t.Sum(group => group.OtherPerfor ?? 0) //实发绩效
// : Math.Round((t.Max(m => m.ShouldGiveFee) * t.Max(m => m.ScoreAverageRate) * t.Max(m => m.Attendance) ?? 0.0M) + t.Max(m => m.Punishment ?? 0.0M)); //考核后管理绩效
// }
// return data;
// }).ToList();
// result.AddRange(adminPerfor);
// var aprAmounts = perapramountRepository.GetEntities(t => t.AllotId == allotId && t.Status == 3) ?? new List<per_apr_amount>();
// var employees = perforPeremployeeRepository.GetEntities(t => t.AllotId == allotId) ?? new List<per_employee>();
// var otherPerformances = aprAmounts.Join(employees,
// outer => new { outer.AccountingUnit, outer.PersonnelNumber },
// inner => new { inner.AccountingUnit, inner.PersonnelNumber },
// (outer, inner) => new
// {
// AccountingUnit = outer.AccountingUnit,
// UnitType = inner.UnitType,
// PersonnelNumber = inner.PersonnelNumber,
// PersonnelName = outer.DoctorName,
// Amount = outer.Amount
// })?.GroupBy(t => new { t.AccountingUnit, t.UnitType }).Select(t => new
// {
// AccountingUnit = t.Key.AccountingUnit,
// UnitType = t.Key.UnitType,
// Amount = t.Sum(s => s.Amount)
// });
// result = result.GroupBy(t => new { t.AccountingUnit, t.UnitName }).Select(t => new DeptResponse
// {
// UnitName = t.Key.UnitName,
// AccountingUnit = t.Key.AccountingUnit,
// Department = t.Key.AccountingUnit,
// PerforFee = t.Sum(group => group.PerforFee),
// WorkloadFee = t.Sum(group => group.WorkloadFee),
// AssessBeforeOtherFee = t.Sum(group => group.AssessBeforeOtherFee),
// ScoringAverage = t.Sum(group => group.ScoringAverage),
// MedicineExtra = t.Sum(group => group.MedicineExtra),
// Extra = t.Sum(group => group.Extra),
// AssessLaterOtherFee = t.Sum(group => group.AssessLaterOtherFee),
// AdjustFactor = t.Max(group => group.AdjustFactor),
// AdjustLaterOtherFee = t.Sum(group => group.AdjustLaterOtherFee),
// PerforTotal = t.Sum(group => group.PerforTotal),
// AssessLaterPerforTotal = t.Sum(group => group.AssessLaterPerforTotal),
// AssessLaterManagementFee = t.Sum(group => group.AssessLaterManagementFee),
// AprPerforAmount = otherPerformances?.FirstOrDefault(w => w.AccountingUnit == t.Key.AccountingUnit && w.UnitType == t.Key.UnitName)?.Amount ?? 0,
// RealGiveFee = t.Sum(group => group.RealGiveFee) + t.Sum(group => group.AssessLaterManagementFee)
// + (otherPerformances?.FirstOrDefault(w => w.AccountingUnit == t.Key.AccountingUnit && w.UnitType == t.Key.UnitName)?.Amount ?? 0),
// }).ToList();
// var specialData = _perforResspecialunitRepository.GetEntities(t => t.AllotID == allotId);
// if (specialData != null && specialData.Any())
// {
// result.AddRange(specialData.GroupBy(t => new { t.AccountingUnit, t.Department }).Select(t =>
// {
// var data = new DeptResponse
// {
// UnitName = "特殊核算组",
// AccountingUnit = t.Key.AccountingUnit,
// Department = t.Key.Department,
// PerforFee = t.Max(max => max.GiveFee),
// WorkloadFee = 0,
// AssessBeforeOtherFee = t.Max(max => max.AssessBeforeOtherFee),
// PerforTotal = t.Max(max => max.PerforTotal),
// ScoringAverage = t.Max(max => max.ScoringAverage),
// MedicineExtra = t.Max(max => max.MedicineExtra),
// MaterialsExtra = t.Max(max => max.MaterialsExtra),
// Extra = 0,
// AssessLaterOtherFee = t.Max(max => max.AssessLaterOtherFee),
// AdjustFactor = t.Max(max => max.Adjust),
// AdjustLaterOtherFee = t.Max(max => max.AdjustLaterOtherFee),
// AssessLaterManagementFee = 0,
// AprPerforAmount = 0,
// RealGiveFee = t.Max(max => max.RealGiveFee),
// };
// data.AssessLaterPerforTotal = Math.Round(((data.PerforTotal * data.ScoringAverage) ?? 0) + (data.MedicineExtra ?? 0) + (data.MaterialsExtra ?? 0) + (data.AssessLaterOtherFee ?? 0));
// return data;
// }));
// }
// var enumItems = EnumHelper.GetItems<AccountUnitType>();
// result = result.OrderBy(t => enumItems.FirstOrDefault(e => e.Name == t.UnitName)?.Value)/*.ThenBy(t => t.AccountingUnit)*/.ToList();
// return result;
//}
/// <summary> /// <summary>
/// 返回院领导、中层、工勤组绩效 /// 返回院领导、中层、工勤组绩效
/// </summary> /// </summary>
...@@ -310,58 +467,10 @@ public List<DeptResponse> GetOfficePerformance(int allotId) ...@@ -310,58 +467,10 @@ public List<DeptResponse> GetOfficePerformance(int allotId)
public List<DeptResponse> GetAdminPerformance(int allotId) public List<DeptResponse> GetAdminPerformance(int allotId)
{ {
var result = new List<DeptResponse>(); var result = new List<DeptResponse>();
var amounts = perapramountRepository.GetEntities(t => t.AllotId == allotId && t.Status == 3) ?? new List<per_apr_amount>();
var resData = perforResaccountRepository.GetEntities(t => t.AllotID == allotId);
if (resData != null && resData.Any())
{
result.AddRange(Mapper.Map<List<DeptResponse>>(resData));
result.ForEach(t =>
{
t.UnitName = ((UnitType)t.UnitType).ToString();
t.AssessLaterPerforTotal = Math.Round((t.PerforTotal * t.ScoringAverage + t.MedicineExtra + t.MaterialsExtra + t.Extra + t.AssessLaterOtherFee) ?? 0);
});
result = result.OrderBy(t => t.UnitType).ThenBy(t => t.AccountingUnit).ToList();
}
var list = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId);
if (list == null || !list.Any()) return result;
var isShowManage = IsShowManage(allotId);
Dictionary<string, string> dict = new Dictionary<string, string>
{
{ "科主任", "医生组" },
{ "护士长", "护理组" },
{ AccountUnitType.行政高层.ToString(), AccountUnitType.行政高层.ToString() },
{ AccountUnitType.行政中层.ToString(), AccountUnitType.行政中层.ToString() },
{ AccountUnitType.行政工勤.ToString(), AccountUnitType.行政工勤.ToString() }
};
var doctors = new string[] { "医生组", "护理组", "医技组" };
List<DeptResponse> adminPerfor = list.GroupBy(t => new { t.AccountingUnit, t.AccountType }).Select(t =>
{
string unitName = result.Where(w => !dict.Values.Contains(w.UnitName)).FirstOrDefault(w => w.AccountingUnit == t.Key.AccountingUnit)?.UnitName ?? "";
var data = new DeptResponse
{
UnitName = !dict.Values.Contains(unitName) && !string.IsNullOrEmpty(unitName) ? unitName : dict.ContainsKey(t.Key.AccountType) ? dict[t.Key.AccountType] : "未知",
AccountingUnit = t.Key.AccountingUnit,
Department = t.Key.AccountingUnit,
Number = t.Count(),
};
if (doctors.Contains(data.UnitName))
{
data.AssessLaterManagementFee = isShowManage == 1
? t.Sum(group => group.RealGiveFee ?? 0) + t.Sum(group => group.OtherPerfor ?? 0) //实发绩效
: Math.Round((t.Max(m => m.ShouldGiveFee) * t.Max(m => m.ScoreAverageRate) * t.Max(m => m.Attendance) ?? 0.0M) + t.Max(m => m.Punishment ?? 0.0M)); //考核后管理绩效
}
return data;
}).ToList();
result.AddRange(adminPerfor);
var aprAmounts = perapramountRepository.GetEntities(t => t.AllotId == allotId && t.Status == 3) ?? new List<per_apr_amount>();
var employees = perforPeremployeeRepository.GetEntities(t => t.AllotId == allotId) ?? new List<per_employee>(); var employees = perforPeremployeeRepository.GetEntities(t => t.AllotId == allotId) ?? new List<per_employee>();
// 获取各科室 医院其他绩效
var otherPerformances = aprAmounts.Join(employees, var otherPerformances = amounts.Join(employees,
outer => new { outer.AccountingUnit, outer.PersonnelNumber }, outer => new { outer.AccountingUnit, outer.PersonnelNumber },
inner => new { inner.AccountingUnit, inner.PersonnelNumber }, inner => new { inner.AccountingUnit, inner.PersonnelNumber },
(outer, inner) => new (outer, inner) => new
...@@ -378,64 +487,111 @@ public List<DeptResponse> GetAdminPerformance(int allotId) ...@@ -378,64 +487,111 @@ public List<DeptResponse> GetAdminPerformance(int allotId)
Amount = t.Sum(s => s.Amount) Amount = t.Sum(s => s.Amount)
}); });
result = result.GroupBy(t => new { t.AccountingUnit, t.UnitName }).Select(t => new DeptResponse var clinicalTypes = new UnitType[] { UnitType.医生组, UnitType.其他医生组, UnitType.医技组, UnitType.其他医技组, UnitType.护理组, UnitType.其他护理组, UnitType.特殊核算组 };
var clinicalTypesString = clinicalTypes.Select(w => w.ToString()).ToList();
var clinicalTypesInt = clinicalTypes.Select(w => (int)w).ToList();
var clinicalComputes = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId && clinicalTypesString.Contains(t.UnitType)) ?? new List<res_compute>();
var clinicalEmployees = _perforImemployeeclinicRepository.GetEntities(t => t.AllotID == allotId && clinicalTypesString.Contains(t.UnitType));
var isShowManage = IsShowManage(allotId);
// 计算 科主任/护士长 管理绩效
clinicalComputes?.ForEach(t =>
{
if (isShowManage == 2)
{
var employee = clinicalEmployees.FirstOrDefault(e => e.PersonnelNumber == t.JobNumber && e.AccountingUnit == t.AccountingUnit);
var scoreAverageRate = t.ScoreAverageRate ?? employee.ScoreAverageRate ?? 1;
var attendance = t.Attendance ?? employee.Attendance ?? 0;
t.GiveFee = (t.ShouldGiveFee ?? 0) * scoreAverageRate * attendance + (t.OtherPerfor ?? 0) + (t.Punishment ?? 0) + (t.AssessLaterOtherFee ?? 0);
t.RealGiveFee = t.GiveFee * (t.Adjust ?? 1m) + (t.AdjustLaterOtherFee ?? 0);
}
});
// 临床科室
var accounts = perforResaccountRepository.GetEntities(t => t.AllotID == allotId && clinicalTypesInt.Contains(t.UnitType.Value)) ?? new List<res_account>();
var clinicalResult = accounts.Select(t => new DeptResponse
{
UnitName = ((UnitType)t.UnitType).ToString(),
AccountingUnit = t.AccountingUnit,
Department = t.AccountingUnit,
PerforFee = t.PerforFee,
WorkloadFee = t.WorkloadFee,
AssessBeforeOtherFee = t.AssessBeforeOtherFee,
PerforTotal = t.PerforTotal,
ScoringAverage = t.ScoringAverage,
Extra = t.Extra,
MedicineExtra = t.MedicineExtra,
MaterialsExtra = t.MaterialsExtra,
AssessLaterOtherFee = t.AssessLaterOtherFee,
AssessLaterPerforTotal = t.AssessLaterPerforTotal,
AdjustFactor = t.AdjustFactor,
AdjustLaterOtherFee = t.AdjustLaterOtherFee,
AssessLaterManagementFee = clinicalComputes?.Where(w => w.AccountingUnit == t.AccountingUnit && w.UnitType == ((UnitType)t.UnitType).ToString())?.Sum(c => c.RealGiveFee),
RealGiveFee = t.RealGiveFee,
});
result.AddRange(clinicalResult);
// 特殊核算组科室
var specialunits = _perforResspecialunitRepository.GetEntities(t => t.AllotID == allotId) ?? new List<res_specialunit>();
var specialResult = specialunits.GroupBy(t => new { t.AccountingUnit }).Select(t => new DeptResponse
{ {
UnitName = t.Key.UnitName, UnitName = UnitType.特殊核算组.ToString(),
AccountingUnit = t.Key.AccountingUnit, AccountingUnit = t.Key.AccountingUnit,
Department = t.Key.AccountingUnit, Department = t.Key.AccountingUnit,
PerforFee = t.Sum(group => group.PerforFee), PerforFee = t.Max(w => w.ResultsTotalFee),
WorkloadFee = t.Sum(group => group.WorkloadFee), WorkloadFee = 0,
AssessBeforeOtherFee = t.Sum(group => group.AssessBeforeOtherFee), AssessBeforeOtherFee = t.Max(w => w.AssessBeforeOtherFee),
ScoringAverage = t.Sum(group => group.ScoringAverage), PerforTotal = t.Max(w => w.PerforTotal),
MedicineExtra = t.Sum(group => group.MedicineExtra), ScoringAverage = t.Max(w => w.ScoringAverage),
Extra = t.Sum(group => group.Extra), Extra = t.Max(w => w.Punishment),
AssessLaterOtherFee = t.Sum(group => group.AssessLaterOtherFee), MedicineExtra = t.Max(w => w.MedicineExtra),
AdjustFactor = t.Max(group => group.AdjustFactor), MaterialsExtra = t.Max(w => w.MaterialsExtra),
AdjustLaterOtherFee = t.Sum(group => group.AdjustLaterOtherFee), AssessLaterOtherFee = t.Max(w => w.AssessLaterOtherFee),
PerforTotal = t.Sum(group => group.PerforTotal), AssessLaterPerforTotal = Math.Round((t.Max(w => w.PerforTotal) * t.Max(w => w.ScoringAverage) + t.Max(w => w.MedicineExtra) + t.Max(w => w.MaterialsExtra) + t.Max(w => w.Punishment) + t.Max(w => w.AssessLaterOtherFee)) ?? 0),
AssessLaterPerforTotal = t.Sum(group => group.AssessLaterPerforTotal), AdjustFactor = t.Max(w => w.Adjust),
AssessLaterManagementFee = t.Sum(group => group.AssessLaterManagementFee), AdjustLaterOtherFee = t.Max(w => w.AdjustLaterOtherFee),
AprPerforAmount = otherPerformances?.FirstOrDefault(w => w.AccountingUnit == t.Key.AccountingUnit && w.UnitType == t.Key.UnitName)?.Amount ?? 0, AssessLaterManagementFee = clinicalComputes?.Where(w => w.AccountingUnit == t.Key.AccountingUnit && w.UnitType == UnitType.特殊核算组.ToString())?.Sum(c => c.RealGiveFee),
RealGiveFee = t.Sum(group => group.RealGiveFee) + t.Sum(group => group.AssessLaterManagementFee) RealGiveFee = t.Max(w => w.RealGiveFee),
+ (otherPerformances?.FirstOrDefault(w => w.AccountingUnit == t.Key.AccountingUnit && w.UnitType == t.Key.UnitName)?.Amount ?? 0), }).Distinct();
}).ToList(); result.AddRange(specialResult);
var specialData = _perforResspecialunitRepository.GetEntities(t => t.AllotID == allotId); var officeTypes = new List<string> { "行政工勤", "行政高层", "行政中层" };
if (specialData != null && specialData.Any()) var computes = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId && officeTypes.Contains(t.AccountType)) ?? new List<res_compute>();
{
result.AddRange(specialData.GroupBy(t => new { t.AccountingUnit, t.Department }).Select(t => var officeResult = computes.GroupBy(t => new { t.AccountingUnit, t.AccountType, t.UnitType }).Select(t => new DeptResponse
{
var data = new DeptResponse
{ {
UnitName = "特殊核算组", UnitName = t.Key.AccountType == "行政后勤" ? "行政工勤" : t.Key.AccountType,
AccountingUnit = t.Key.AccountingUnit, AccountingUnit = t.Key.AccountingUnit,
Department = t.Key.Department, Department = t.Key.AccountingUnit,
PerforFee = t.Max(max => max.GiveFee), PerforFee = 0,
WorkloadFee = 0, WorkloadFee = 0,
AssessBeforeOtherFee = t.Max(max => max.AssessBeforeOtherFee), AssessBeforeOtherFee = 0,
PerforTotal = t.Max(max => max.PerforTotal), PerforTotal = t.Sum(w => w.PerforTotal),
ScoringAverage = t.Max(max => max.ScoringAverage), ScoringAverage = 1,
MedicineExtra = t.Max(max => max.MedicineExtra),
MaterialsExtra = t.Max(max => max.MaterialsExtra),
Extra = 0, Extra = 0,
AssessLaterOtherFee = t.Max(max => max.AssessLaterOtherFee), MedicineExtra = 0,
AdjustFactor = t.Max(max => max.Adjust), MaterialsExtra = 0,
AdjustLaterOtherFee = t.Max(max => max.AdjustLaterOtherFee), AssessLaterOtherFee = 0,
AssessLaterManagementFee = 0, AssessLaterPerforTotal = t.Sum(w => w.GiveFee),
AprPerforAmount = 0, AdjustFactor = t.FirstOrDefault()?.Adjust ?? 1,
RealGiveFee = t.Max(max => max.RealGiveFee), AdjustLaterOtherFee = t.Sum(w => w.AdjustLaterOtherFee),
}; RealGiveFee = t.Sum(w => w.RealGiveFee),
data.AssessLaterPerforTotal = Math.Round(((data.PerforTotal * data.ScoringAverage) ?? 0) + (data.MedicineExtra ?? 0) + (data.MaterialsExtra ?? 0) + (data.AssessLaterOtherFee ?? 0)); }); ;
return data; result.AddRange(officeResult);
})); // 医院其他绩效、科主任护士长管理绩效、合并实发
foreach (var item in result)
{
item.AprPerforAmount = otherPerformances?.Where(w => w.AccountingUnit == item.AccountingUnit && w.UnitType == item.UnitName)?.Sum(w => w.Amount) ?? 0;
item.AssessLaterManagementFee = item.AssessLaterManagementFee ?? 0;
item.RealGiveFee = (item.RealGiveFee ?? 0) + item.AssessLaterManagementFee + item.AprPerforAmount;
} }
var enumItems = EnumHelper.GetItems<AccountUnitType>(); var enumItems = EnumHelper.GetItems<AccountUnitType>();
result = result.OrderBy(t => enumItems.FirstOrDefault(e => e.Name == t.UnitName)?.Value)/*.ThenBy(t => t.AccountingUnit)*/.ToList(); result = result.OrderBy(t => enumItems.FirstOrDefault(e => e.Name == t.UnitName)?.Value)/*.ThenBy(t => t.AccountingUnit)*/.ToList();
return result; return result;
} }
/// <summary> /// <summary>
/// 查看科室绩效 /// 查看科室绩效
/// </summary> /// </summary>
...@@ -598,7 +754,7 @@ private List<ComputeResponse> GetAllotPerformance(int allotId, int hospitalId, i ...@@ -598,7 +754,7 @@ private List<ComputeResponse> GetAllotPerformance(int allotId, int hospitalId, i
//// 业务中层人员信息 //// 业务中层人员信息
//var empolyeeList = _perforImemployeeclinicRepository.GetEntities(t => t.AllotID == allotId); //var empolyeeList = _perforImemployeeclinicRepository.GetEntities(t => t.AllotID == allotId);
// 一次绩效 获取特定人员绩效结果 // 一次绩效 获取特定人员绩效结果
var allot = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId && mTypes.Contains(t.AccountType))?.OrderByDescending(t => t.AccountingUnit); var allot = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId && mTypes.Contains(t.AccountType) && t.NeedSecondAllot == "否")?.OrderByDescending(t => t.AccountingUnit);
//var apramounts = perapramountRepository.GetEntities(t => t.AllotId == allotId); //var apramounts = perapramountRepository.GetEntities(t => t.AllotId == allotId);
return allot?.Select(t => return allot?.Select(t =>
...@@ -984,7 +1140,7 @@ public DeptDataDetails<DetailModuleExtend> DeptDetail(int accountId) ...@@ -984,7 +1140,7 @@ public DeptDataDetails<DetailModuleExtend> DeptDetail(int accountId)
if (pairs.Contains((SheetType)sheet.SheetType)) if (pairs.Contains((SheetType)sheet.SheetType))
{ {
sheettype = 5; sheettype = 5;
amount = basicData.Where(t => t.SheetID == sheet.ID && t.UnitType == (int)type && t.IsTotal == 1)?.FirstOrDefault()?.CellValue ?? 0; amount = basicData?.Where(t => t.SheetID == sheet.ID && t.UnitType == (int)type && t.IsTotal == 1)?.FirstOrDefault()?.CellValue ?? 0;
if (sheet.SheetType != (int)SheetType.BudgetRatio) if (sheet.SheetType != (int)SheetType.BudgetRatio)
amount = Math.Round(amount, 0); amount = Math.Round(amount, 0);
} }
...@@ -1416,5 +1572,70 @@ public DeptDataDetails GetDoctorDetail(int computeId) ...@@ -1416,5 +1572,70 @@ public DeptDataDetails GetDoctorDetail(int computeId)
} }
return doctorDetails; return doctorDetails;
} }
public res_baiscnorm EditHospitalAvg(ComputerAvgRequest request)
{
if (request.Id == 0)
{
var baiscnorm = Mapper.Map<res_baiscnorm>(request);
if (!perforResbaiscnormRepository.Add(baiscnorm))
throw new PerformanceException("保存失败");
return Mapper.Map<res_baiscnorm>(baiscnorm);
}
else
{
var baiscnorm = perforResbaiscnormRepository.GetEntity(t => t.ID == request.Id);
if (baiscnorm == null)
throw new PerformanceException($"ID不存在 :{request.Id}");
baiscnorm.TotelNumber = request.TotelNumber;
baiscnorm.TotelValue = request.TotelValue;
baiscnorm.AvgValue = request.AvgValue;
//var baiscnorm = Mapper.Map<res_baiscnorm>(request);
if (!perforResbaiscnormRepository.Update(baiscnorm))
throw new PerformanceException("保存失败");
return Mapper.Map<res_baiscnorm>(baiscnorm);
}
}
public List<Dictionary<string, string>> GetOtherPerStats(List<per_apr_amount> employees)
{
var others = new List<Dictionary<string, string>>();
if (employees == null)
return others;
var perForType = employees.Where(c => c.Status == 3).Select(t => t.PerforType).Distinct();
var doctorNum = employees.Where(c => c.Status == 3).Select(t => t.PersonnelNumber).Distinct().ToList();
if (!doctorNum.Any())
return others;
foreach (var num in doctorNum)
{
var dicData = new Dictionary<string, string>();
var amount = employees.Find(t => t.PersonnelNumber == num);
if (amount == null)
continue;
dicData.Add("核算单元", amount?.AccountingUnit ?? "");
dicData.Add("工号", amount?.PersonnelNumber ?? "");
dicData.Add("人员姓名", amount?.DoctorName ?? "");
foreach (var type in perForType)
{
var emp = employees.Where(t => t.PerforType == type && t.PersonnelNumber == num)?.ToList();
if (!emp.Any())
dicData.Add(type, "0");
else
dicData.Add(type, Math.Round(Convert.ToDecimal(emp?.First()?.Amount), 0).ToString());
}
var sum = employees.Where(c => c.PersonnelNumber == num)?.Sum(t => t.Amount);
dicData.Add("合计", Math.Round(Convert.ToDecimal(sum), 0).ToString());
others.Add(dicData);
}
return others;
}
} }
} }
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using Performance.Repository.Repository;
namespace Performance.Services namespace Performance.Services
{ {
...@@ -27,6 +28,7 @@ public class ConfigService : IAutoInjection ...@@ -27,6 +28,7 @@ public class ConfigService : IAutoInjection
private PerforCofdepttypeRepository perforCofdepttypeRepository; private PerforCofdepttypeRepository perforCofdepttypeRepository;
private PerforPerapramountRepository perapramountRepository; private PerforPerapramountRepository perapramountRepository;
//private PerforCofcmiRepository perforCofcmiRepository; //private PerforCofcmiRepository perforCofcmiRepository;
private PerforCofHrpDeptRepository perforCofHrpDeptRepository;
private PersonService personService; private PersonService personService;
private LogManageService logManageService; private LogManageService logManageService;
private ILogger<ConfigService> logger; private ILogger<ConfigService> logger;
...@@ -43,6 +45,7 @@ public class ConfigService : IAutoInjection ...@@ -43,6 +45,7 @@ public class ConfigService : IAutoInjection
PerforCofdepttypeRepository perforCofdepttypeRepository, PerforCofdepttypeRepository perforCofdepttypeRepository,
PerforPerapramountRepository perapramountRepository, PerforPerapramountRepository perapramountRepository,
//PerforCofcmiRepository perforCofcmiRepository, //PerforCofcmiRepository perforCofcmiRepository,
PerforCofHrpDeptRepository perforCofHrpDeptRepository,
PersonService personService, PersonService personService,
LogManageService logManageService, LogManageService logManageService,
ILogger<ConfigService> logger) ILogger<ConfigService> logger)
...@@ -59,6 +62,7 @@ public class ConfigService : IAutoInjection ...@@ -59,6 +62,7 @@ public class ConfigService : IAutoInjection
this.perforCofdepttypeRepository = perforCofdepttypeRepository; this.perforCofdepttypeRepository = perforCofdepttypeRepository;
this.perapramountRepository = perapramountRepository; this.perapramountRepository = perapramountRepository;
//this.perforCofcmiRepository = perforCofcmiRepository; //this.perforCofcmiRepository = perforCofcmiRepository;
this.perforCofHrpDeptRepository = perforCofHrpDeptRepository;
this.personService = personService; this.personService = personService;
this.logManageService = logManageService; this.logManageService = logManageService;
this.logger = logger; this.logger = logger;
...@@ -834,6 +838,95 @@ private void CopyAprData(int prevAllotId, int allotId) ...@@ -834,6 +838,95 @@ private void CopyAprData(int prevAllotId, int allotId)
} }
} }
public HandsonTable GetHrpDeptHands(int HospitalId,int AllotId)
{
var result = new HandsonTable((int)SheetType.Unidentifiable, HrpDept.Select(t => t.Value).ToArray(), HrpDept.Select(t => new collect_permission
{
HeadName = t.Value,
Visible = 1
}).ToList());
var data = perforCofHrpDeptRepository.GetEntities(t => t.HospitalId == HospitalId && t.AllotId == AllotId);
if (data == null)
return result;
List<HandsonRowData> rowDatas = new List<HandsonRowData>();
int i = 1;
foreach (var item in data)
{
var json = JsonHelper.Serialize(item);
var firstDic = JsonHelper.Deserialize<Dictionary<string, string>>(json);
var cells = (from conf in HrpDept join fst in firstDic on conf.Key.ToUpper() equals fst.Key.ToUpper() select new HandsonCellData(conf.Value, fst.Value)).ToList();
rowDatas.Add(new HandsonRowData(i, cells));
i++;
}
result.SetRowData(rowDatas, rowDatas != null);
return result;
}
public void SaveDepttypeHands(int hospitalId, int allotId,SaveCollectData request)
{
var dicData = CreateDataRow(hospitalId,allotId, request, HrpDept);
List<cof_hrp_department> depts = new List<cof_hrp_department>();
foreach (var item in dicData)
{
var json = JsonHelper.Serialize(item);
var data = JsonHelper.Deserialize<cof_hrp_department>(json);
if (!string.IsNullOrEmpty(data.HRPDepartment) && !string.IsNullOrEmpty(data.AccountingUnit))
{
data.HospitalId = hospitalId;
data.AllotId = allotId;
depts.Add(data);
}
}
perforCofHrpDeptRepository.Execute("delete from cof_hrp_department where HospitalId=@hospitalId and allotid = @allotid"
, new {hospitalId, allotId });
perforCofHrpDeptRepository.AddRange(depts.ToArray());
}
private List<Dictionary<string, string>> CreateDataRow(int hospitalId, int allotId, SaveCollectData request, Dictionary<string, string> config)
{
List<Dictionary<string, string>> allData = new List<Dictionary<string, string>>();
for (int r = 0; r < request.Data.Length; r++)
{
// 创建固定数据列
Dictionary<string, string> baseData = CreateBaseData(request, config, r);
baseData.Add(nameof(cof_hrp_department.AllotId), allotId.ToString());
baseData.Add(nameof(cof_hrp_department.HospitalId),hospitalId.ToString());
allData.Add(baseData);
}
return allData;
}
private Dictionary<string, string> CreateBaseData(SaveCollectData request, Dictionary<string, string> config, int rownumber)
{
Dictionary<string, string> result = new Dictionary<string, string>();
for (int c = 0; c < request.ColHeaders.Length; c++)
{
var header = request.ColHeaders[c];
var first = config.FirstOrDefault(w => w.Value == header);
if (!default(KeyValuePair<string, string>).Equals(first)
&& !result.ContainsKey(header)
&& request.Data[rownumber].Length > c)
{
result.Add(first.Key, request.Data[rownumber][c]);
}
}
return result;
}
public static Dictionary<string, string> HrpDept { get; } = new Dictionary<string, string>
{
{nameof(cof_hrp_department.HRPDepartment), "hrp人员科室"},
{nameof(cof_hrp_department.AccountingUnit), "核算单元"},
};
///// <summary> ///// <summary>
///// CMI值 ///// CMI值
///// </summary> ///// </summary>
......
...@@ -25,7 +25,7 @@ public class CustomExtractService : IAutoInjection ...@@ -25,7 +25,7 @@ public class CustomExtractService : IAutoInjection
private readonly PerforPerallotRepository _perallotRepository; private readonly PerforPerallotRepository _perallotRepository;
private readonly PerforPerdeptdicRepository _perforPerdeptdicRepository; private readonly PerforPerdeptdicRepository _perforPerdeptdicRepository;
private readonly PerforHospitalconfigRepository _perforHospitalconfigRepository; private readonly PerforHospitalconfigRepository _perforHospitalconfigRepository;
private readonly PerforcustscriptRepository _perforcustscriptRepository; private readonly PerforCustscriptRepository _perforcustscriptRepository;
public CustomExtractService( public CustomExtractService(
ILogger<CustomExtractService> logger, ILogger<CustomExtractService> logger,
...@@ -35,7 +35,7 @@ public class CustomExtractService : IAutoInjection ...@@ -35,7 +35,7 @@ public class CustomExtractService : IAutoInjection
PerforPerallotRepository perallotRepository, PerforPerallotRepository perallotRepository,
PerforPerdeptdicRepository perforPerdeptdicRepository, PerforPerdeptdicRepository perforPerdeptdicRepository,
PerforHospitalconfigRepository perforHospitalconfigRepository, PerforHospitalconfigRepository perforHospitalconfigRepository,
PerforcustscriptRepository perforcustscriptRepository) PerforCustscriptRepository perforcustscriptRepository)
{ {
_logger = logger; _logger = logger;
_options = options; _options = options;
......
...@@ -635,7 +635,7 @@ private void SupplyHeaderByWorkItem(int hospitalId, SecondResponse result, ag_se ...@@ -635,7 +635,7 @@ private void SupplyHeaderByWorkItem(int hospitalId, SecondResponse result, ag_se
public HandsonTable GetOtherTempData(int userId, int secondId, int isArchive, int employeeSource, out decimal? realAmount) public HandsonTable GetOtherTempData(int userId, int secondId, int isArchive, int employeeSource, out decimal? realAmount)
{ {
string[] workNumbers = new string[] { }; string[] workNumbers = new string[] { };
var details = GetOtherTempDetails(userId, secondId, isArchive, employeeSource, ref workNumbers); var details = GetOtherTempDetails(userId, secondId, isArchive, employeeSource);
var secondAllot = agsecondallotRepository.GetEntity(t => t.Id == secondId); var secondAllot = agsecondallotRepository.GetEntity(t => t.Id == secondId);
...@@ -689,7 +689,7 @@ public HandsonTable GetOtherTempData(int userId, int secondId, int isArchive, in ...@@ -689,7 +689,7 @@ public HandsonTable GetOtherTempData(int userId, int secondId, int isArchive, in
return result; return result;
} }
public List<ag_othersource> GetOtherTempDetails(int userId, int secondId, int isArchive, int employeeSource, ref string[] workNumbers) public List<ag_othersource> GetOtherTempDetails(int userId, int secondId, int isArchive, int employeeSource)
{ {
var secondAllot = agsecondallotRepository.GetEntity(t => t.Id == secondId); var secondAllot = agsecondallotRepository.GetEntity(t => t.Id == secondId);
if (secondAllot == null) throw new PerformanceException("二次绩效信息无效!"); if (secondAllot == null) throw new PerformanceException("二次绩效信息无效!");
...@@ -780,7 +780,6 @@ public List<ag_othersource> GetOtherTempDetails(int userId, int secondId, int is ...@@ -780,7 +780,6 @@ public List<ag_othersource> GetOtherTempDetails(int userId, int secondId, int is
} }
} }
var originalEmployees = personService.GetPerEmployee(secondAllot.AllotId.Value); var originalEmployees = personService.GetPerEmployee(secondAllot.AllotId.Value);
workNumbers = originalEmployees?.Select(t => t.PersonnelNumber).Distinct().ToArray();
SupplementSecondDetail(secondAllot, originalEmployees, result, isSupplementTitlePerformance); SupplementSecondDetail(secondAllot, originalEmployees, result, isSupplementTitlePerformance);
return result; return result;
...@@ -864,7 +863,7 @@ private void SupplementSecondDetail(ag_secondallot second, List<per_employee> em ...@@ -864,7 +863,7 @@ private void SupplementSecondDetail(ag_secondallot second, List<per_employee> em
foreach (var item in groupData) foreach (var item in groupData)
{ {
if (employees.Any(t => t.PersonnelNumber == item.WorkNumber) if (employees != null && employees.Any(t => t.PersonnelNumber == item.WorkNumber)
&& employees.FirstOrDefault(t => t.PersonnelNumber == item.WorkNumber) is per_employee employee && employees.FirstOrDefault(t => t.PersonnelNumber == item.WorkNumber) is per_employee employee
&& employee.UnitType == second.UnitType) && employee.UnitType == second.UnitType)
{ {
......
...@@ -21,6 +21,7 @@ public class EmployeeService : IAutoInjection ...@@ -21,6 +21,7 @@ public class EmployeeService : IAutoInjection
{ {
private PerforImemployeeRepository perforImemployeeRepository; private PerforImemployeeRepository perforImemployeeRepository;
private PerforPersheetRepository perforPersheetRepository; private PerforPersheetRepository perforPersheetRepository;
private PerforImdataRepository perforImdataRepository;
private PerforPerallotRepository perforPerallotRepository; private PerforPerallotRepository perforPerallotRepository;
private PerforImemployeeclinicRepository perforImemployeeclinicRepository; private PerforImemployeeclinicRepository perforImemployeeclinicRepository;
private PerforUserhospitalRepository perforUserhospitalRepository; private PerforUserhospitalRepository perforUserhospitalRepository;
...@@ -34,6 +35,7 @@ public class EmployeeService : IAutoInjection ...@@ -34,6 +35,7 @@ public class EmployeeService : IAutoInjection
public EmployeeService(PerforImemployeeRepository perforImemployeeRepository, public EmployeeService(PerforImemployeeRepository perforImemployeeRepository,
PerforPersheetRepository perforPersheetRepository, PerforPersheetRepository perforPersheetRepository,
PerforImdataRepository perforImdataRepository,
PerforPerallotRepository perforPerallotRepository, PerforPerallotRepository perforPerallotRepository,
PerforImemployeeclinicRepository perforImemployeeclinicRepository, PerforImemployeeclinicRepository perforImemployeeclinicRepository,
PerforUserhospitalRepository perforUserhospitalRepository, PerforUserhospitalRepository perforUserhospitalRepository,
...@@ -47,6 +49,7 @@ public class EmployeeService : IAutoInjection ...@@ -47,6 +49,7 @@ public class EmployeeService : IAutoInjection
{ {
this.perforImemployeeRepository = perforImemployeeRepository; this.perforImemployeeRepository = perforImemployeeRepository;
this.perforPersheetRepository = perforPersheetRepository; this.perforPersheetRepository = perforPersheetRepository;
this.perforImdataRepository = perforImdataRepository;
this.perforPerallotRepository = perforPerallotRepository; this.perforPerallotRepository = perforPerallotRepository;
this.perforImemployeeclinicRepository = perforImemployeeclinicRepository; this.perforImemployeeclinicRepository = perforImemployeeclinicRepository;
this.perforUserhospitalRepository = perforUserhospitalRepository; this.perforUserhospitalRepository = perforUserhospitalRepository;
...@@ -637,5 +640,55 @@ public List<TitleValue> GetPerforTypeDict(int allotId) ...@@ -637,5 +640,55 @@ public List<TitleValue> GetPerforTypeDict(int allotId)
Value = t Value = t
}).ToList(); }).ToList();
} }
#region 科室考核
public List<Dictionary<string, string>> GetDeptAssessment(int allotId)
{
var sheet = perforPersheetRepository.GetEntity(t => t.AllotID == allotId && t.SheetName == "5.4 科室材料考核2");
if (sheet == null)
return new List<Dictionary<string, string>>();
var imData = perforImdataRepository.GetEntities(t => t.AllotID == allotId && t.SheetID == sheet.ID);
var headers = imData.OrderByDescending(c=>c.IsTotal).Select(t => t.TypeName).Distinct();
var dataNum = imData.Select(t => t.RowNumber)?.OrderBy(c => c.Value).Distinct().ToList();
if (!dataNum.Any())
return new List<Dictionary<string, string>>();
var rowData = new List<Dictionary<string, string>>();
foreach (var num in dataNum)
{
var dicData = new Dictionary<string, string>();
var fisHeader = false;
foreach (var header in headers)
{
var headData = imData.Find(t => t.RowNumber == num && t.TypeName == header)?.CellValue;
dicData.Add(header, Math.Round((decimal)headData * 100) + "%");
if (!fisHeader)
{
var data = imData?.First(t => t.RowNumber == num);
switch (data.UnitType)
{
case (int)UnitType.医技组:
dicData.Add("核算单元类型", "医技组");
break;
case (int)UnitType.医生组:
dicData.Add("核算单元类型", "医生组");
break;
case (int)UnitType.护理组:
dicData.Add("核算单元类型", "护理组");
break;
}
dicData.Add("核算单元", data.AccountingUnit);
fisHeader = true;
}
}
rowData.Add(dicData);
}
return rowData;
}
#endregion
} }
} }
...@@ -17,5 +17,9 @@ public class SpecialUnitColumns ...@@ -17,5 +17,9 @@ public class SpecialUnitColumns
public const string TargetFactor = "量化指标绩效分值"; public const string TargetFactor = "量化指标绩效分值";
public const string AdjustFactor = "调节系数"; public const string AdjustFactor = "调节系数";
public const string AssessBefore = "考核前绩效";
public const string Avg = "人均";
} }
} }
...@@ -144,6 +144,7 @@ private void WriteDataToFile(IWorkbook workbook, per_allot allot, Dictionary<ExD ...@@ -144,6 +144,7 @@ private void WriteDataToFile(IWorkbook workbook, per_allot allot, Dictionary<ExD
for (int sheetIndex = 0; sheetIndex < workbook.NumberOfSheets; sheetIndex++) for (int sheetIndex = 0; sheetIndex < workbook.NumberOfSheets; sheetIndex++)
{ {
var sheet = workbook.GetSheetAt(sheetIndex); var sheet = workbook.GetSheetAt(sheetIndex);
string sheetName = sheet.SheetName.NoBlank();
ratio += 40m / workbook.NumberOfSheets; ratio += 40m / workbook.NumberOfSheets;
var sheetType = perSheetService.GetSheetType(sheet.SheetName); var sheetType = perSheetService.GetSheetType(sheet.SheetName);
...@@ -156,13 +157,14 @@ private void WriteDataToFile(IWorkbook workbook, per_allot allot, Dictionary<ExD ...@@ -156,13 +157,14 @@ private void WriteDataToFile(IWorkbook workbook, per_allot allot, Dictionary<ExD
if (sheetType == SheetType.OtherWorkload) point = PerSheetDataFactory.GetDataRead(SheetType.Workload)?.Point; if (sheetType == SheetType.OtherWorkload) point = PerSheetDataFactory.GetDataRead(SheetType.Workload)?.Point;
if (types.Contains(sheetType) && point != null && point.DataFirstCellNum.HasValue) if (types.Contains(sheetType) && point != null && point.DataFirstCellNum.HasValue)
{
logger.LogInformation($"{sheetName}开始清除历史数据。point:{JsonHelper.Serialize(point)}");
ExtractHelper.ClearSheetPartialData(sheet, point, sheetType); ExtractHelper.ClearSheetPartialData(sheet, point, sheetType);
}
var customer = factory.GetWriteData(sheetType, logger); var customer = factory.GetWriteData(sheetType, logger);
if (customer != null) if (customer != null)
{ {
string sheetName = sheet.SheetName.NoBlank();
var collects = collectData?.Where(t => t.SheetName.NoBlank() == sheetName).ToList(); var collects = collectData?.Where(t => t.SheetName.NoBlank() == sheetName).ToList();
customer.WriteCollectData(sheet, point, sheetType, style, collects, exdict); customer.WriteCollectData(sheet, point, sheetType, style, collects, exdict);
......
...@@ -188,10 +188,13 @@ private void SupplySpecialQuantity(ISheet sheet, ExcelStyle style, List<SpecialD ...@@ -188,10 +188,13 @@ private void SupplySpecialQuantity(ISheet sheet, ExcelStyle style, List<SpecialD
if (special != null) if (special != null)
{ {
var cell = row.GetOrCreate(quantityIndex); var cell = row.GetOrCreate(quantityIndex);
if (cell.CellType != CellType.Formula)
{
cell.SetCellType(CellType.Numeric); cell.SetCellType(CellType.Numeric);
cell.SetCellValue<double>(special.Quantity); cell.SetCellValue<double>(special.Quantity);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
}
specials.Remove(special); specials.Remove(special);
} }
dataFirstRowNum = rowIndex + 1; dataFirstRowNum = rowIndex + 1;
...@@ -320,7 +323,14 @@ private void AddMergedRegion(ISheet sheet, List<SpecialCellRange> ranges, List<s ...@@ -320,7 +323,14 @@ private void AddMergedRegion(ISheet sheet, List<SpecialCellRange> ranges, List<s
if (columns == null || !columns.Any()) return; if (columns == null || !columns.Any()) return;
if (ranges == null || !ranges.Any()) return; if (ranges == null || !ranges.Any()) return;
var columnIndexs = new string[] { SpecialUnitColumns.Department, SpecialUnitColumns.PeopleNumber, SpecialUnitColumns.AdjustFactor }.Select(t => columns.IndexOf(t)); var columnIndexs = new string[]
{
SpecialUnitColumns.Department,
SpecialUnitColumns.PeopleNumber,
SpecialUnitColumns.AdjustFactor,
SpecialUnitColumns.AssessBefore,
SpecialUnitColumns.Avg
}.Select(t => columns.IndexOf(t));
if (columnIndexs == null || !columnIndexs.Any(t => t > -1)) return; if (columnIndexs == null || !columnIndexs.Any(t => t > -1)) return;
foreach (var index in columnIndexs.Where(t => t > -1)) foreach (var index in columnIndexs.Where(t => t > -1))
......
...@@ -74,7 +74,7 @@ public static string GetValue(this ICell cell) ...@@ -74,7 +74,7 @@ public static string GetValue(this ICell cell)
return cell?.StringCellValue.ToString(); return cell?.StringCellValue.ToString();
case CellType.Formula: case CellType.Formula:
cell?.SetCellType(CellType.String); cell?.SetCellType(CellType.String);
return cell?.StringCellValue.ToString(); return cell?.StringCellValue?.ToString();
case CellType.Boolean: case CellType.Boolean:
return cell?.BooleanCellValue.ToString(); return cell?.BooleanCellValue.ToString();
case CellType.Unknown: case CellType.Unknown:
......
...@@ -19,18 +19,36 @@ public class ReportGlobalService : IAutoInjection ...@@ -19,18 +19,36 @@ public class ReportGlobalService : IAutoInjection
private readonly PerforPerallotRepository perallotRepository; private readonly PerforPerallotRepository perallotRepository;
private readonly PerforReportglobalRepository reportglobalRepository; private readonly PerforReportglobalRepository reportglobalRepository;
private readonly PerforHisimportdataRepository hisimportdataRepository; private readonly PerforHisimportdataRepository hisimportdataRepository;
private readonly PerforHisimportsummaryRepository hisimportsummaryRepository;
private readonly PerforHisimportaccountRepository hisimportaccountRepository;
private readonly PerforHisimportclinicRepository hisimportclinicRepository;
private readonly PerforHisimportbaiscnormRepository hisimportbaiscnormRepository;
private readonly PerforReportperformancetagsRepository reportperformancetagsRepository;
private readonly PerforReportperformancepersontagsRepository reportperformancepersontagsRepository;
public ReportGlobalService( public ReportGlobalService(
ILogger<ReportGlobalService> logger, ILogger<ReportGlobalService> logger,
PerforPerallotRepository perallotRepository, PerforPerallotRepository perallotRepository,
PerforReportglobalRepository reportglobalRepository, PerforReportglobalRepository reportglobalRepository,
PerforHisimportdataRepository hisimportdataRepository PerforHisimportdataRepository hisimportdataRepository,
PerforHisimportsummaryRepository hisimportsummaryRepository,
PerforHisimportaccountRepository hisimportaccountRepository,
PerforHisimportclinicRepository hisimportclinicRepository,
PerforHisimportbaiscnormRepository hisimportbaiscnormRepository,
PerforReportperformancetagsRepository reportperformancetagsRepository,
PerforReportperformancepersontagsRepository reportperformancepersontagsRepository
) )
{ {
this.logger = logger; this.logger = logger;
this.perallotRepository = perallotRepository; this.perallotRepository = perallotRepository;
this.reportglobalRepository = reportglobalRepository; this.reportglobalRepository = reportglobalRepository;
this.hisimportdataRepository = hisimportdataRepository; this.hisimportdataRepository = hisimportdataRepository;
this.hisimportsummaryRepository = hisimportsummaryRepository;
this.hisimportaccountRepository = hisimportaccountRepository;
this.hisimportclinicRepository = hisimportclinicRepository;
this.hisimportbaiscnormRepository = hisimportbaiscnormRepository;
this.reportperformancetagsRepository = reportperformancetagsRepository;
this.reportperformancepersontagsRepository = reportperformancepersontagsRepository;
} }
#region Report_Global #region Report_Global
...@@ -170,10 +188,52 @@ public void ImportAllotData(int hospitalId, string filePath) ...@@ -170,10 +188,52 @@ public void ImportAllotData(int hospitalId, string filePath)
if (sheet == null) continue; if (sheet == null) continue;
string sheetName = sheet.SheetName.NoBlank(); string sheetName = sheet.SheetName.NoBlank();
logger.LogInformation($"正在读取{sheetName}的数据");
var columns = GetColumns(sheet, sheetName, out string sourceType); var columns = GetColumns(sheet, sheetName, out string sourceType);
if (columns == null || !columns.Any(t => !string.IsNullOrEmpty(t.NoBlank()))) continue; if (columns == null || !columns.Any(t => !string.IsNullOrEmpty(t.NoBlank()))) continue;
switch (sheetName)
{
case "科室总绩效":
ImporSummaryData(sheet, columns, hospitalId, allots);
break;
case "临床科室绩效":
ImporAccountData(sheet, columns, hospitalId, allots);
break;
case "科室标签":
ImporAccountTag(sheet, columns, hospitalId);
break;
case "科主任护士长绩效":
ImporClinicData(sheet, columns, hospitalId, allots);
break;
case "科主任护士长标签":
ImporClinicTag(sheet, columns, hospitalId);
break;
case "人均绩效":
ImporBasicnormData(sheet, columns, hospitalId, allots);
break;
default:
ImportBasicData(sheet, columns, hospitalId, allots, sheetName, sourceType);
break;
}
logger.LogInformation($"{sheetName}读取已结束");
}
}
catch (Exception ex)
{
logger.LogError(ex.ToString());
}
}
private void ImportBasicData(ISheet sheet, List<string> columns, int hospitalId, List<per_allot> allots, string sheetName, string sourceType)
{
var data = new List<his_importdata>(); var data = new List<his_importdata>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++) for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{ {
...@@ -182,38 +242,248 @@ public void ImportAllotData(int hospitalId, string filePath) ...@@ -182,38 +242,248 @@ public void ImportAllotData(int hospitalId, string filePath)
his_importdata importdata = new his_importdata his_importdata importdata = new his_importdata
{ {
Year = GetCellValue<int>(row, columns, nameof(his_importdata.Year)), Year = GetCellValue<int>(row, columns, "年份"),
Month = GetCellValue<int>(row, columns, nameof(his_importdata.Month)), Month = GetCellValue<int>(row, columns, "月份"),
AccountingUnit = GetCellValue<string>(row, columns, nameof(his_importdata.AccountingUnit)), AccountingUnit = GetCellValue<string>(row, columns, "核算单元"),
Department = GetCellValue<string>(row, columns, nameof(his_importdata.Department)), Department = GetCellValue<string>(row, columns, "科室"),
PersonnelNumber = GetCellValue<string>(row, columns, nameof(his_importdata.PersonnelNumber)), PersonnelNumber = GetCellValue<string>(row, columns, "工号"),
PersonnelName = GetCellValue<string>(row, columns, nameof(his_importdata.PersonnelName)), PersonnelName = GetCellValue<string>(row, columns, "医生姓名"),
Original = GetCellValue<string>(row, columns, nameof(his_importdata.Original)), Original = GetCellValue<string>(row, columns, "类别"),
Value = GetCellValue<decimal>(row, columns, nameof(his_importdata.Value)), Value = GetCellValue<decimal>(row, columns, "值"),
}; };
data.Add(importdata); data.Add(importdata);
} }
if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return; if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return;
var dateTime = DateTime.Now;
data.ForEach(t => data.ForEach(t =>
{ {
t.HospitalId = hospitalId; t.HospitalId = hospitalId;
t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID; t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID;
t.SourceType = sourceType; t.SourceType = sourceType;
t.Category = sheetName; t.Category = sheetName;
t.CreateTime = dateTime;
}); });
var years = data.Select(t => t.Year).Distinct(); var yearMonths = data.Select(t => $"{t.Year}-{t.Month}").Distinct();
var months = data.Select(t => t.Month).Distinct();
hisimportdataRepository.DeleteFromQuery(t => t.HospitalId == hospitalId && years.Contains(t.Year) && months.Contains(t.Month) && t.Category == sheetName); hisimportdataRepository.DeleteFromQuery(t => t.HospitalId == hospitalId && yearMonths.Contains($"{t.Year}-{t.Month}") && t.Category == sheetName);
hisimportdataRepository.BulkInsert(data.Where(t => t.Year != 0 && t.Month != 0)); hisimportdataRepository.BulkInsert(data.Where(t => t.Year != 0 && t.Month != 0));
} }
private void ImporSummaryData(ISheet sheet, List<string> columns, int hospitalId, List<per_allot> allots)
{
var data = new List<his_import_summary>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
his_import_summary importdata = new his_import_summary
{
Year = GetCellValue<int>(row, columns, "年份"),
Month = GetCellValue<int>(row, columns, "月份"),
AccountingUnit = GetCellValue<string>(row, columns, "核算单元"),
RealGiveFee = GetCellValue<decimal>(row, columns, "实发绩效"),
};
data.Add(importdata);
} }
catch (Exception ex) logger.LogInformation($"{sheet.SheetName}共有{sheet.LastRowNum}行数据,读取到{data.Count}条记录");
if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return;
var dateTime = DateTime.Now;
data.ForEach(t =>
{ {
logger.LogError(ex.ToString()); t.HospitalId = hospitalId;
t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID ?? 0;
t.CreateTime = dateTime;
});
var yearMonths = data.Select(t => $"{t.Year}-{t.Month}").Distinct();
hisimportsummaryRepository.DeleteFromQuery(t => t.HospitalId == hospitalId && yearMonths.Contains($"{t.Year}-{t.Month}"));
hisimportsummaryRepository.BulkInsert(data.Where(t => t.Year != 0 && t.Month != 0));
} }
private void ImporAccountData(ISheet sheet, List<string> columns, int hospitalId, List<per_allot> allots)
{
var data = new List<his_import_account>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
his_import_account importdata = new his_import_account
{
Year = GetCellValue<int>(row, columns, "年份"),
Month = GetCellValue<int>(row, columns, "月份"),
UnitType = GetCellValue<string>(row, columns, "核算单元类型"),
AccountingUnit = GetCellValue<string>(row, columns, "核算单元"),
Number = GetCellValue<decimal>(row, columns, "核算单元人员数量"),
RealGiveFee = GetCellValue<decimal>(row, columns, "实发绩效"),
};
data.Add(importdata);
}
logger.LogInformation($"{sheet.SheetName}共有{sheet.LastRowNum}行数据,读取到{data.Count}条记录");
if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return;
var dateTime = DateTime.Now;
data.ForEach(t =>
{
t.HospitalId = hospitalId;
t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID ?? 0;
t.CreateTime = dateTime;
});
var yearMonths = data.Select(t => $"{t.Year}-{t.Month}").Distinct();
hisimportaccountRepository.DeleteFromQuery(t => t.HospitalId == hospitalId && yearMonths.Contains($"{t.Year}-{t.Month}"));
hisimportaccountRepository.BulkInsert(data.Where(t => t.Year != 0 && t.Month != 0));
}
private void ImporAccountTag(ISheet sheet, List<string> columns, int hospitalId)
{
var data = new List<report_performance_tags>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
report_performance_tags importdata = new report_performance_tags
{
UnitType = GetCellValue<string>(row, columns, "核算单元类型"),
AccountingUnit = GetCellValue<string>(row, columns, "核算单元"),
Tag1 = GetCellValue<string>(row, columns, "Tag1"),
Tag2 = GetCellValue<string>(row, columns, "Tag2"),
Tag3 = GetCellValue<string>(row, columns, "Tag3"),
Tag4 = GetCellValue<string>(row, columns, "Tag4"),
Tag5 = GetCellValue<string>(row, columns, "Tag5"),
};
data.Add(importdata);
}
logger.LogInformation($"{sheet.SheetName}共有{sheet.LastRowNum}行数据,读取到{data.Count}条记录");
if (data == null || !data.Any(t => !string.IsNullOrEmpty(t.UnitType) && !string.IsNullOrEmpty(t.AccountingUnit))) return;
var dateTime = DateTime.Now;
data.ForEach(t =>
{
t.HospitalId = hospitalId;
t.CreateTime = dateTime;
});
reportperformancetagsRepository.DeleteFromQuery(t => t.HospitalId == hospitalId);
reportperformancetagsRepository.BulkInsert(data.Where(t => !string.IsNullOrEmpty(t.UnitType) && !string.IsNullOrEmpty(t.AccountingUnit)));
}
private void ImporClinicData(ISheet sheet, List<string> columns, int hospitalId, List<per_allot> allots)
{
var data = new List<his_import_clinic>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
his_import_clinic importdata = new his_import_clinic
{
Year = GetCellValue<int>(row, columns, "年份"),
Month = GetCellValue<int>(row, columns, "月份"),
UnitType = GetCellValue<string>(row, columns, "核算单元类型"),
AccountingUnit = GetCellValue<string>(row, columns, "核算单元"),
AccountType = GetCellValue<string>(row, columns, "职称"),
JobNumber = GetCellValue<string>(row, columns, "工号"),
EmployeeName = GetCellValue<string>(row, columns, "姓名"),
Basics = GetCellValue<decimal>(row, columns, "基础绩效系数"),
RealGiveFee = GetCellValue<decimal>(row, columns, "实发绩效"),
};
data.Add(importdata);
}
logger.LogInformation($"{sheet.SheetName}共有{sheet.LastRowNum}行数据,读取到{data.Count}条记录");
if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return;
var dateTime = DateTime.Now;
data.ForEach(t =>
{
t.HospitalId = hospitalId;
t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID ?? 0;
t.CreateTime = dateTime;
});
var yearMonths = data.Select(t => $"{t.Year}-{t.Month}").Distinct();
hisimportclinicRepository.DeleteFromQuery(t => t.HospitalId == hospitalId && yearMonths.Contains($"{t.Year}-{t.Month}"));
hisimportclinicRepository.BulkInsert(data.Where(t => t.Year != 0 && t.Month != 0));
}
private void ImporClinicTag(ISheet sheet, List<string> columns, int hospitalId)
{
var data = new List<report_performance_person_tags>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
report_performance_person_tags importdata = new report_performance_person_tags
{
UnitType = GetCellValue<string>(row, columns, "核算单元类型"),
AccountingUnit = GetCellValue<string>(row, columns, "核算单元"),
PersonnelName = GetCellValue<string>(row, columns, "工号"),
PersonnelNumber = GetCellValue<string>(row, columns, "姓名"),
Tag1 = GetCellValue<string>(row, columns, "Tag1"),
Tag2 = GetCellValue<string>(row, columns, "Tag2"),
Tag3 = GetCellValue<string>(row, columns, "Tag3"),
Tag4 = GetCellValue<string>(row, columns, "Tag4"),
Tag5 = GetCellValue<string>(row, columns, "Tag5"),
};
data.Add(importdata);
}
logger.LogInformation($"{sheet.SheetName}共有{sheet.LastRowNum}行数据,读取到{data.Count}条记录");
if (data == null || !data.Any(t => !string.IsNullOrEmpty(t.UnitType) && !string.IsNullOrEmpty(t.AccountingUnit))) return;
var dateTime = DateTime.Now;
data.ForEach(t =>
{
t.HospitalId = hospitalId;
t.CreateTime = dateTime;
});
reportperformancepersontagsRepository.DeleteFromQuery(t => t.HospitalId == hospitalId);
reportperformancepersontagsRepository.BulkInsert(data.Where(t => !string.IsNullOrEmpty(t.PersonnelName) && !string.IsNullOrEmpty(t.PersonnelNumber)));
}
private void ImporBasicnormData(ISheet sheet, List<string> columns, int hospitalId, List<per_allot> allots)
{
var data = new List<his_import_baiscnorm>();
for (int rowIndex = 1; rowIndex < sheet.LastRowNum + 1; rowIndex++)
{
var row = sheet.GetRow(rowIndex);
if (row == null) continue;
his_import_baiscnorm importdata = new his_import_baiscnorm
{
Year = GetCellValue<int>(row, columns, "年份"),
Month = GetCellValue<int>(row, columns, "月份"),
PositionName = GetCellValue<string>(row, columns, "绩效核算人群"),
TotelValue = GetCellValue<decimal>(row, columns, "总绩效"),
AvgValue = GetCellValue<decimal>(row, columns, "总人数"),
TotelNumber = GetCellValue<decimal>(row, columns, "人均绩效"),
};
data.Add(importdata);
}
logger.LogInformation($"{sheet.SheetName}共有{sheet.LastRowNum}行数据,读取到{data.Count}条记录");
if (data == null || !data.Any(t => t.Year != 0 && t.Month != 0)) return;
var dateTime = DateTime.Now;
data.ForEach(t =>
{
t.HospitalId = hospitalId;
t.AllotId = allots?.FirstOrDefault(w => w.Year == t.Year && t.Month == w.Month)?.ID ?? 0;
t.CreateTime = dateTime;
});
var yearMonths = data.Select(t => $"{t.Year}-{t.Month}").Distinct();
hisimportbaiscnormRepository.DeleteFromQuery(t => t.HospitalId == hospitalId && yearMonths.Contains($"{t.Year}-{t.Month}"));
hisimportbaiscnormRepository.BulkInsert(data.Where(t => t.Year != 0 && t.Month != 0));
} }
private List<string> GetColumns(ISheet sheet, string sheetName, out string sourceType) private List<string> GetColumns(ISheet sheet, string sheetName, out string sourceType)
...@@ -236,9 +506,8 @@ private List<string> GetColumns(ISheet sheet, string sheetName, out string sourc ...@@ -236,9 +506,8 @@ private List<string> GetColumns(ISheet sheet, string sheetName, out string sourc
private T GetCellValue<T>(IRow row, List<string> columns, string key) private T GetCellValue<T>(IRow row, List<string> columns, string key)
{ {
var value = hisImportdataDict[key]; if (columns.Contains(key) && row.GetCell(columns.IndexOf(key)) != null)
if (columns.Contains(value) && row.GetCell(columns.IndexOf(value)) != null) return row.GetCell(columns.IndexOf(key)).GetCellValue<T>();
return row.GetCell(columns.IndexOf(value)).GetCellValue<T>();
return default; return default;
} }
...@@ -248,18 +517,7 @@ private T GetCellValue<T>(IRow row, List<string> columns, string key) ...@@ -248,18 +517,7 @@ private T GetCellValue<T>(IRow row, List<string> columns, string key)
{ "收入", new string[] { "门诊收入", "住院收入" } }, { "收入", new string[] { "门诊收入", "住院收入" } },
{ "医生工作量", new string[] { "门诊人次", "出院人次", "手术概况", "住院天数", "实际开放总床日数" } }, { "医生工作量", new 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 #endregion ImportFile && SaveData
......
...@@ -62,10 +62,10 @@ public List<RoleResponse> GetUsersRole(int userid) ...@@ -62,10 +62,10 @@ public List<RoleResponse> GetUsersRole(int userid)
var ParentUser = _userRepository.GetEntities(c => c.ParentID == userid); var ParentUser = _userRepository.GetEntities(c => c.ParentID == userid);
if (user.ParentID!=null || user.ParentID==0) if (user.ParentID!=null || user.ParentID==0)
{ {
ParentUser=_userRepository.GetEntities(c => c.ID == user.ParentID); ParentUser=_userRepository.GetEntities(c => c.ParentID == user.ParentID);
} }
if (user != null) if (ParentUser != null)
{ {
foreach (var sysUser in ParentUser) foreach (var sysUser in ParentUser)
{ {
......
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