新增其他绩效

parent 0042f9f3
...@@ -408,11 +408,26 @@ ...@@ -408,11 +408,26 @@
效率绩效人数 效率绩效人数
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeEmployee.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.ScoreAverageRate"> <member name="P:Performance.DtoModels.ComputeEmployee.ScoreAverageRate">
<summary> <summary>
考核得分率 考核得分率
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeEmployee.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.Attendance"> <member name="P:Performance.DtoModels.ComputeEmployee.Attendance">
<summary> <summary>
出勤率 出勤率
...@@ -485,7 +500,7 @@ ...@@ -485,7 +500,7 @@
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.PerforTotal"> <member name="P:Performance.DtoModels.ComputeResult.PerforTotal">
<summary> <summary>
绩效合计(来自科室经济测算表) 绩效合计 考核前(来自科室经济测算表)
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.Number"> <member name="P:Performance.DtoModels.ComputeResult.Number">
...@@ -525,12 +540,27 @@ ...@@ -525,12 +540,27 @@
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.PerforSumFee"> <member name="P:Performance.DtoModels.ComputeResult.PerforSumFee">
<summary> <summary>
绩效合计(需计算) 绩效合计 考核前(需计算)
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.ScoreAverageRate"> <member name="P:Performance.DtoModels.ComputeResult.ScoreAverageRate">
<summary> <summary>
考核对分率(来自人员名单) 考核得分率
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.Attendance"> <member name="P:Performance.DtoModels.ComputeResult.Attendance">
...@@ -555,7 +585,7 @@ ...@@ -555,7 +585,7 @@
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.GiveFee"> <member name="P:Performance.DtoModels.ComputeResult.GiveFee">
<summary> <summary>
应发绩效(需计算) 应发绩效 考核前(需计算)
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeResult.BaiscNormPerforTotal"> <member name="P:Performance.DtoModels.ComputeResult.BaiscNormPerforTotal">
...@@ -825,9 +855,9 @@ ...@@ -825,9 +855,9 @@
其他绩效1 其他绩效1
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.OtherPerfor2"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.AssessBeforeOtherFee">
<summary> <summary>
其他绩效2 考核前其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.MedicineExtra"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.MedicineExtra">
...@@ -850,11 +880,21 @@ ...@@ -850,11 +880,21 @@
考核对分率 考核对分率
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.AdjustFactor"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.AdjustFactor">
<summary> <summary>
调节系数 调节系数
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.Scale"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.Scale">
<summary> <summary>
规模绩效系数 规模绩效系数
...@@ -892,7 +932,12 @@ ...@@ -892,7 +932,12 @@
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.PerforTotal"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.PerforTotal">
<summary> <summary>
绩效合计 绩效合计 考核前
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.AssessLaterPerforTotal">
<summary>
绩效合计 考核后
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataAccountBaisc.Avg"> <member name="P:Performance.DtoModels.PerDataAccountBaisc.Avg">
...@@ -965,11 +1010,21 @@ ...@@ -965,11 +1010,21 @@
管理绩效发放系数 管理绩效发放系数
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.ScoreAverageRate"> <member name="P:Performance.DtoModels.PerDataClinicEmployee.ScoreAverageRate">
<summary> <summary>
考核得分率 考核得分率
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Attendance"> <member name="P:Performance.DtoModels.PerDataClinicEmployee.Attendance">
<summary> <summary>
出勤率 出勤率
...@@ -990,6 +1045,11 @@ ...@@ -990,6 +1045,11 @@
调节系数 调节系数
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.RowNumber"> <member name="P:Performance.DtoModels.PerDataClinicEmployee.RowNumber">
<summary> <summary>
行号 行号
...@@ -1050,11 +1110,21 @@ ...@@ -1050,11 +1110,21 @@
夜班费 夜班费
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataEmployee.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.ScoreAverageRate"> <member name="P:Performance.DtoModels.PerDataEmployee.ScoreAverageRate">
<summary> <summary>
考核得分率 考核得分率
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataEmployee.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.Attendance"> <member name="P:Performance.DtoModels.PerDataEmployee.Attendance">
<summary> <summary>
出勤率 出勤率
...@@ -1065,6 +1135,11 @@ ...@@ -1065,6 +1135,11 @@
调节系数 调节系数
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataEmployee.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.RowNumber"> <member name="P:Performance.DtoModels.PerDataEmployee.RowNumber">
<summary> <summary>
行号 行号
...@@ -1125,6 +1200,11 @@ ...@@ -1125,6 +1200,11 @@
其他绩效 其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.PerDataLogisticsEmployee.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataLogisticsEmployee.RowNumber"> <member name="P:Performance.DtoModels.PerDataLogisticsEmployee.RowNumber">
<summary> <summary>
行号 行号
......
...@@ -1962,79 +1962,29 @@ ...@@ -1962,79 +1962,29 @@
保底绩效系数 保底绩效系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseHeadNumber"> <member name="P:Performance.EntityModels.im_accountbasic.UpdateDate">
<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>
考核对分率
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.NurseAdjustFactor"> <member name="P:Performance.EntityModels.im_accountbasic.UpdateUser">
<summary> <summary>
调节系数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.WorkSlopeFactor"> <member name="P:Performance.EntityModels.im_accountbasic.AssessBeforeOtherFee">
<summary> <summary>
工作量倾斜系数 考核前其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.UpdateDate"> <member name="P:Performance.EntityModels.im_accountbasic.AssessLaterOtherFee">
<summary> <summary>
考核后其他绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_accountbasic.UpdateUser"> <member name="P:Performance.EntityModels.im_accountbasic.AdjustLaterOtherFee">
<summary> <summary>
调节后其他绩效
</summary> </summary>
</member> </member>
<member name="T:Performance.EntityModels.im_data"> <member name="T:Performance.EntityModels.im_data">
...@@ -2277,6 +2227,21 @@ ...@@ -2277,6 +2227,21 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="T:Performance.EntityModels.im_employee_clinic"> <member name="T:Performance.EntityModels.im_employee_clinic">
<summary> <summary>
...@@ -2422,6 +2387,21 @@ ...@@ -2422,6 +2387,21 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_clinic.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="T:Performance.EntityModels.im_employee_logistics"> <member name="T:Performance.EntityModels.im_employee_logistics">
<summary> <summary>
...@@ -2522,6 +2502,21 @@ ...@@ -2522,6 +2502,21 @@
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.im_employee_logistics.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_logistics.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_logistics.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="T:Performance.EntityModels.im_header"> <member name="T:Performance.EntityModels.im_header">
<summary> <summary>
...@@ -4087,6 +4082,26 @@ ...@@ -4087,6 +4082,26 @@
实发绩效 实发绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_account.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.AssessLaterPerforTotal">
<summary>
考核后绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_account.Remark"> <member name="P:Performance.EntityModels.res_account.Remark">
<summary> <summary>
备注 备注
...@@ -4552,6 +4567,21 @@ ...@@ -4552,6 +4567,21 @@
效率绩效人数 效率绩效人数
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_compute.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_compute.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="T:Performance.EntityModels.res_reserved"> <member name="T:Performance.EntityModels.res_reserved">
<summary> <summary>
...@@ -4812,6 +4842,26 @@ ...@@ -4812,6 +4842,26 @@
业绩总绩效 业绩总绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.res_specialunit.PerforTotal">
<summary>
考核前绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_specialunit.AssessBeforeOtherFee">
<summary>
考核前其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_specialunit.AssessLaterOtherFee">
<summary>
考核后其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.res_specialunit.AdjustLaterOtherFee">
<summary>
调节后其他绩效
</summary>
</member>
<member name="T:Performance.EntityModels.sys_extract"> <member name="T:Performance.EntityModels.sys_extract">
<summary> <summary>
医院数据提取脚本 医院数据提取脚本
......
...@@ -116,7 +116,7 @@ public AutoMapperConfigs() ...@@ -116,7 +116,7 @@ public AutoMapperConfigs()
.ForMember(dest => dest.DoctorBasicFactor, opt => opt.MapFrom(src => src.BasicFactor)) .ForMember(dest => dest.DoctorBasicFactor, opt => opt.MapFrom(src => src.BasicFactor))
//.ForMember(dest => dest.DoctorSlopeFactor, opt => opt.MapFrom(src => src.SlopeFactor)) //.ForMember(dest => dest.DoctorSlopeFactor, opt => opt.MapFrom(src => src.SlopeFactor))
.ForMember(dest => dest.DoctorOtherPerfor1, opt => opt.MapFrom(src => src.OtherPerfor1)) .ForMember(dest => dest.DoctorOtherPerfor1, opt => opt.MapFrom(src => src.OtherPerfor1))
.ForMember(dest => dest.DoctorOtherPerfor2, opt => opt.MapFrom(src => src.OtherPerfor2)) //.ForMember(dest => dest.DoctorOtherPerfor2, opt => opt.MapFrom(src => src.OtherPerfor2))
//.ForMember(dest => dest.DoctorExtra, opt => opt.MapFrom(src => src.Extra)) //.ForMember(dest => dest.DoctorExtra, opt => opt.MapFrom(src => src.Extra))
.ForMember(dest => dest.DoctorScoringAverage, opt => opt.MapFrom(src => src.ScoringAverage)) .ForMember(dest => dest.DoctorScoringAverage, opt => opt.MapFrom(src => src.ScoringAverage))
.ForMember(dest => dest.DoctorAdjustFactor, opt => opt.MapFrom(src => src.AdjustFactor)) .ForMember(dest => dest.DoctorAdjustFactor, opt => opt.MapFrom(src => src.AdjustFactor))
......
...@@ -82,11 +82,26 @@ public class ComputeEmployee ...@@ -82,11 +82,26 @@ public class ComputeEmployee
//public Nullable<DateTime> WorkTime { get; set; } //public Nullable<DateTime> WorkTime { get; set; }
/// <summary> /// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核得分率 /// 考核得分率
/// </summary> /// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; } public Nullable<decimal> ScoreAverageRate { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 出勤率 /// 出勤率
/// </summary> /// </summary>
public Nullable<decimal> Attendance { get; set; } public Nullable<decimal> Attendance { get; set; }
......
...@@ -36,7 +36,7 @@ public class ComputeResult ...@@ -36,7 +36,7 @@ public class ComputeResult
public string EmployeeName { get; set; } public string EmployeeName { get; set; }
/// <summary> /// <summary>
/// 绩效合计(来自科室经济测算表) /// 绩效合计 考核前(来自科室经济测算表)
/// </summary> /// </summary>
public Nullable<decimal> PerforTotal { get; set; } public Nullable<decimal> PerforTotal { get; set; }
...@@ -76,16 +76,31 @@ public class ComputeResult ...@@ -76,16 +76,31 @@ public class ComputeResult
public Nullable<decimal> ShouldGiveFee { get; set; } public Nullable<decimal> ShouldGiveFee { get; set; }
/// <summary> /// <summary>
/// 绩效合计(需计算) /// 绩效合计 考核前(需计算)
/// </summary> /// </summary>
public Nullable<decimal> PerforSumFee { get; set; } public Nullable<decimal> PerforSumFee { get; set; }
/// <summary> /// <summary>
/// 考核对分率(来自人员名单) /// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核得分率
/// </summary> /// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; } public Nullable<decimal> ScoreAverageRate { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 出勤率(来自人员名单) /// 出勤率(来自人员名单)
/// </summary> /// </summary>
public Nullable<decimal> Attendance { get; set; } public Nullable<decimal> Attendance { get; set; }
...@@ -106,7 +121,7 @@ public class ComputeResult ...@@ -106,7 +121,7 @@ public class ComputeResult
public Nullable<decimal> OtherPerfor { get; set; } public Nullable<decimal> OtherPerfor { get; set; }
/// <summary> /// <summary>
/// 应发绩效(需计算) /// 应发绩效 考核前(需计算)
/// </summary> /// </summary>
public Nullable<decimal> GiveFee { get; set; } public Nullable<decimal> GiveFee { get; set; }
......
...@@ -64,9 +64,14 @@ public class PerDataAccountBaisc : IPerData ...@@ -64,9 +64,14 @@ public class PerDataAccountBaisc : IPerData
public decimal OtherPerfor1 { get; set; } public decimal OtherPerfor1 { get; set; }
/// <summary> /// <summary>
/// 其他绩效2 /// 考核前其他绩效
/// </summary> /// </summary>
public decimal OtherPerfor2 { get; set; } public Nullable<decimal> AssessBeforeOtherFee { get; set; }
///// <summary>
///// 其他绩效2
///// </summary>
//public decimal OtherPerfor2 { get; set; }
/// <summary> /// <summary>
/// 药占比奖罚 /// 药占比奖罚
...@@ -89,11 +94,21 @@ public class PerDataAccountBaisc : IPerData ...@@ -89,11 +94,21 @@ public class PerDataAccountBaisc : IPerData
public decimal ScoringAverage { get; set; } public decimal ScoringAverage { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节系数 /// 调节系数
/// </summary> /// </summary>
public decimal AdjustFactor { get; set; } public decimal AdjustFactor { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 规模绩效系数 /// 规模绩效系数
/// </summary> /// </summary>
public decimal Scale { get; set; } public decimal Scale { get; set; }
...@@ -153,11 +168,16 @@ public class PerDataAccountBaisc : IPerData ...@@ -153,11 +168,16 @@ public class PerDataAccountBaisc : IPerData
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; }
/// <summary> /// <summary>
/// 绩效合计 考核后
/// </summary>
public Nullable<decimal> AssessLaterPerforTotal { get; set; }
/// <summary>
/// 人均绩效 /// 人均绩效
/// </summary> /// </summary>
public Nullable<decimal> Avg { get; set; } public Nullable<decimal> Avg { get; set; }
......
...@@ -77,11 +77,21 @@ public class PerDataClinicEmployee : IPerData ...@@ -77,11 +77,21 @@ public class PerDataClinicEmployee : IPerData
//public Nullable<DateTime> WorkTime { get; set; } //public Nullable<DateTime> WorkTime { get; set; }
/// <summary> /// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核得分率 /// 考核得分率
/// </summary> /// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; } public Nullable<decimal> ScoreAverageRate { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 出勤率 /// 出勤率
/// </summary> /// </summary>
public Nullable<decimal> Attendance { get; set; } public Nullable<decimal> Attendance { get; set; }
...@@ -112,6 +122,11 @@ public class PerDataClinicEmployee : IPerData ...@@ -112,6 +122,11 @@ public class PerDataClinicEmployee : IPerData
public Nullable<decimal> Adjust { get; set; } public Nullable<decimal> Adjust { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 行号 /// 行号
/// </summary> /// </summary>
public int RowNumber { get; set; } public int RowNumber { get; set; }
......
...@@ -67,11 +67,21 @@ public class PerDataEmployee : IPerData ...@@ -67,11 +67,21 @@ public class PerDataEmployee : IPerData
public Nullable<decimal> NightWorkPerfor { get; set; } public Nullable<decimal> NightWorkPerfor { get; set; }
/// <summary> /// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核得分率 /// 考核得分率
/// </summary> /// </summary>
public Nullable<decimal> ScoreAverageRate { get; set; } public Nullable<decimal> ScoreAverageRate { get; set; }
/// <summary> /// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 出勤率 /// 出勤率
/// </summary> /// </summary>
public Nullable<decimal> Attendance { get; set; } public Nullable<decimal> Attendance { get; set; }
...@@ -96,6 +106,11 @@ public class PerDataEmployee : IPerData ...@@ -96,6 +106,11 @@ public class PerDataEmployee : IPerData
/// </summary> /// </summary>
public Nullable<decimal> Adjust { get; set; } public Nullable<decimal> Adjust { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
///// <summary> ///// <summary>
///// 发放系数 ///// 发放系数
///// </summary> ///// </summary>
......
...@@ -62,6 +62,11 @@ public class PerDataLogisticsEmployee : IPerData ...@@ -62,6 +62,11 @@ public class PerDataLogisticsEmployee : IPerData
public Nullable<decimal> OthePerfor { get; set; } public Nullable<decimal> OthePerfor { get; set; }
/// <summary> /// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 行号 /// 行号
/// </summary> /// </summary>
public int RowNumber { get; set; } public int RowNumber { get; set; }
......
...@@ -182,5 +182,20 @@ public class ResComputeResponse ...@@ -182,5 +182,20 @@ public class ResComputeResponse
/// 医院其他绩效 /// 医院其他绩效
/// </summary> /// </summary>
public Nullable<decimal> OtherPerformance { get; set; } public Nullable<decimal> OtherPerformance { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -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>
/// ///
...@@ -215,5 +215,18 @@ public class im_accountbasic ...@@ -215,5 +215,18 @@ public class im_accountbasic
/// ///
/// </summary> /// </summary>
public Nullable<int> UpdateUser { get; set; } public Nullable<int> UpdateUser { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -145,5 +145,17 @@ public class im_employee ...@@ -145,5 +145,17 @@ public class im_employee
/// ///
/// </summary> /// </summary>
public Nullable<int> UpdateUser { get; set; } public Nullable<int> UpdateUser { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -155,5 +155,17 @@ public class im_employee_clinic ...@@ -155,5 +155,17 @@ public class im_employee_clinic
/// ///
/// </summary> /// </summary>
public Nullable<int> UpdateUser { get; set; } public Nullable<int> UpdateUser { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -140,5 +140,18 @@ public class im_employee_logistics ...@@ -140,5 +140,18 @@ public class im_employee_logistics
/// ///
/// </summary> /// </summary>
public Nullable<int> UpdateUser { get; set; } public Nullable<int> UpdateUser { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -160,7 +160,24 @@ public class res_account ...@@ -160,7 +160,24 @@ public class res_account
/// 实发绩效 /// 实发绩效
/// </summary> /// </summary>
public Nullable<decimal> RealGiveFee { get; set; } public Nullable<decimal> RealGiveFee { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
/// <summary>
/// 考核后绩效
/// </summary>
public Nullable<decimal> AssessLaterPerforTotal { get; set; }
/// <summary> /// <summary>
/// 备注 /// 备注
/// </summary> /// </summary>
......
...@@ -210,5 +210,18 @@ public class res_compute ...@@ -210,5 +210,18 @@ public class res_compute
/// 效率绩效人数 /// 效率绩效人数
/// </summary> /// </summary>
public Nullable<decimal> PermanentStaff { get; set; } public Nullable<decimal> PermanentStaff { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -115,5 +115,21 @@ public class res_specialunit ...@@ -115,5 +115,21 @@ public class res_specialunit
/// 业绩总绩效 /// 业绩总绩效
/// </summary> /// </summary>
public Nullable<decimal> ResultsTotalFee { get; set; } public Nullable<decimal> ResultsTotalFee { get; set; }
/// <summary>
/// 考核前绩效
/// </summary>
public Nullable<decimal> PerforTotal { get; set; }
/// <summary>
/// 考核前其他绩效
/// </summary>
public Nullable<decimal> AssessBeforeOtherFee { get; set; }
/// <summary>
/// 考核后其他绩效
/// </summary>
public Nullable<decimal> AssessLaterOtherFee { get; set; }
/// <summary>
/// 调节后其他绩效
/// </summary>
public Nullable<decimal> AdjustLaterOtherFee { get; set; }
} }
} }
...@@ -305,12 +305,16 @@ public void Save(List<PerSheet> perSheets, int allotId) ...@@ -305,12 +305,16 @@ public void Save(List<PerSheet> perSheets, int allotId)
dept.AdjustFactor = dept.AdjustFactor == 0m ? 1 : dept.AdjustFactor; dept.AdjustFactor = dept.AdjustFactor == 0m ? 1 : dept.AdjustFactor;
dept.Income = econDoctor?.CellValue ?? 0; dept.Income = econDoctor?.CellValue ?? 0;
dept.WorkloadFee = workDoctor?.CellValue ?? 0; dept.WorkloadFee = workDoctor?.CellValue ?? 0;
dept.AssessBeforeOtherFee = dept.AssessBeforeOtherFee ?? 0;
dept.AssessLaterOtherFee = dept.AssessLaterOtherFee ?? 0;
dept.AdjustLaterOtherFee = dept.AdjustLaterOtherFee ?? 0;
dept.Extra = (extra ?? 0); dept.Extra = (extra ?? 0);
dept.MedicineExtra = (drugExtra ?? 0); dept.MedicineExtra = (drugExtra ?? 0);
dept.MaterialsExtra = (materialsExtra ?? 0); dept.MaterialsExtra = (materialsExtra ?? 0);
dept.PerforFee = dept.Income * dept.BasicFactor; dept.PerforFee = dept.Income * dept.BasicFactor;
dept.PerforTotal = Math.Round((dept.PerforFee + dept.WorkloadFee + dept.OtherPerfor1) ?? 0); dept.PerforTotal = Math.Round((dept.PerforFee + dept.WorkloadFee + dept.OtherPerfor1 + dept.AssessBeforeOtherFee) ?? 0);
dept.RealGiveFee = Math.Round(((dept.PerforTotal * dept.ScoringAverage + dept.MedicineExtra + dept.MaterialsExtra + dept.OtherPerfor2 + (extra ?? 0)) * dept.AdjustFactor) ?? 0); dept.AssessLaterPerforTotal = Math.Round((dept.PerforTotal * dept.ScoringAverage + dept.MedicineExtra + dept.MaterialsExtra + dept.Extra + dept.AssessLaterOtherFee) ?? 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);
} }
...@@ -368,7 +372,7 @@ public void ComputeOffice(per_allot allot, PerExcel excel, IEnumerable<AccountUn ...@@ -368,7 +372,7 @@ public void ComputeOffice(per_allot allot, PerExcel excel, IEnumerable<AccountUn
dept.MaterialsExtra = 0;//(materialsExtra ?? 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((dept.PerforFee + (dept?.OtherPerfor1 ?? 0)) ?? 0); dept.PerforTotal = Math.Round((dept.PerforFee + (dept?.OtherPerfor1 ?? 0)) ?? 0);
dept.RealGiveFee = Math.Round(((dept.PerforTotal * dept.ScoringAverage + dept.MedicineExtra + dept.MaterialsExtra + dept.OtherPerfor2 + (extra ?? 0)) * dept.AdjustFactor) ?? 0); dept.RealGiveFee = Math.Round(((dept.PerforTotal * dept.ScoringAverage + dept.MedicineExtra + dept.MaterialsExtra + (extra ?? 0)) * dept.AdjustFactor) ?? 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;
......
...@@ -164,7 +164,6 @@ public class ResultComputeService : IAutoInjection ...@@ -164,7 +164,6 @@ public class ResultComputeService : IAutoInjection
}); });
var groupAdjust = isBudget ? adjust : (dept?.AdjustFactor ?? 0);
foreach (var item in accountDataList) foreach (var item in accountDataList)
{ {
//科室奖罚汇总结果 //科室奖罚汇总结果
...@@ -193,16 +192,20 @@ public class ResultComputeService : IAutoInjection ...@@ -193,16 +192,20 @@ public class ResultComputeService : IAutoInjection
QuantitativeIndicatorsValue = item.QuantitativeIndicatorsValue, QuantitativeIndicatorsValue = item.QuantitativeIndicatorsValue,
QuantitativeFee = item.Quantity * item.QuantitativeIndicatorsValue * headcount, QuantitativeFee = item.Quantity * item.QuantitativeIndicatorsValue * headcount,
//ScoringAverage = scoreAverage.HasValue ? scoreAverage : dept?.ScoringAverage, //ScoringAverage = scoreAverage.HasValue ? scoreAverage : dept?.ScoringAverage,
ScoringAverage = dept?.ScoringAverage, ScoringAverage = dept?.ScoringAverage ?? 0,
OtherPerfor = dept?.OtherPerfor1, OtherPerfor = dept?.OtherPerfor1,
Punishment = (extra ?? 0), Punishment = (extra ?? 0),
MedicineExtra = (drugExtra ?? 0), MedicineExtra = (drugExtra ?? 0),
MaterialsExtra = (materialsExtra ?? 0), MaterialsExtra = (materialsExtra ?? 0),
Adjust = (groupAdjust == 0) ? 1 : groupAdjust, Adjust = isBudget ? adjust : (dept?.AdjustFactor ?? 1),
};
res.GiveFee = Math.Round(sumValue ?? 0); AssessBeforeOtherFee = dept.AssessBeforeOtherFee ?? 0,
res.RealGiveFee = Math.Round(res.GiveFee * (res.ScoringAverage ?? 0) * (groupAdjust == 0 ? 1 : groupAdjust) + (extra ?? 0) ?? 0); AssessLaterOtherFee = dept.AssessLaterOtherFee ?? 0,
AdjustLaterOtherFee = dept.AdjustLaterOtherFee ?? 0,
};
res.PerforTotal = (sumValue ?? 0) + res.AssessBeforeOtherFee;
res.GiveFee = Math.Round(res.PerforTotal + res.AssessLaterOtherFee ?? 0);
res.RealGiveFee = Math.Round(res.GiveFee * res.ScoringAverage * res.Adjust + res.Punishment + res.AdjustLaterOtherFee ?? 0);
res.Avg = Math.Round((group.Number != 0 ? res.GiveFee / group.Number : null) ?? 0); res.Avg = Math.Round((group.Number != 0 ? res.GiveFee / group.Number : null) ?? 0);
res.ResultsTotalFee = Math.Round(sumValue ?? 0); res.ResultsTotalFee = Math.Round(sumValue ?? 0);
...@@ -233,14 +236,18 @@ public class ResultComputeService : IAutoInjection ...@@ -233,14 +236,18 @@ public class ResultComputeService : IAutoInjection
JobTitle = empolyee.JobTitle, JobTitle = empolyee.JobTitle,
ScoreAverageRate = empolyee.ScoreAverageRate, ScoreAverageRate = empolyee.ScoreAverageRate,
//Punishment = empolyee.Punishment, Punishment = extra ?? 0,
//OtherPerfor = empolyee.OtherPerfor, //OtherPerfor = empolyee.OtherPerfor,
OtherManagePerfor = empolyee.OtherManagePerfor, OtherManagePerfor = empolyee.OtherManagePerfor,
Number = group.Number, Number = group.Number,
PerforTotal = sumValue, PerforTotal = sumValue,
Avg = group.Number == 0 ? 0 : (sumValue / group.Number), Avg = group.Number == 0 ? 0 : (sumValue / group.Number),
Adjust = empolyeeAdjust, Adjust = empolyeeAdjust ?? 1m,
Grant = isBudget ? grant : empolyee.Management Grant = isBudget ? grant : empolyee.Management,
Attendance = empolyee.Attendance ?? 0,
AssessBeforeOtherFee = empolyee.AssessBeforeOtherFee ?? 0,
AssessLaterOtherFee = empolyee.AssessLaterOtherFee ?? 0,
AdjustLaterOtherFee = empolyee.AdjustLaterOtherFee ?? 0,
}; };
compute.Efficiency = compute.Avg * (empolyee.Efficiency ?? 1); compute.Efficiency = compute.Avg * (empolyee.Efficiency ?? 1);
...@@ -248,13 +255,13 @@ public class ResultComputeService : IAutoInjection ...@@ -248,13 +255,13 @@ public class ResultComputeService : IAutoInjection
//应发管理绩效 //应发管理绩效
compute.ShouldGiveFee = Math.Round((compute.Efficiency + compute.Scale) * compute.Grant ?? 0); compute.ShouldGiveFee = Math.Round((compute.Efficiency + compute.Scale) * compute.Grant ?? 0);
//绩效合计 //绩效合计
compute.PerforSumFee = Math.Round(compute.Avg + compute.ShouldGiveFee ?? 0); compute.PerforSumFee = Math.Round(compute.Avg + compute.ShouldGiveFee + compute.AssessBeforeOtherFee ?? 0);
//应发绩效 //应发绩效
//compute.GiveFee = compute.PerforSumFee; //compute.GiveFee = compute.PerforSumFee;
compute.GiveFee = Math.Round(compute.PerforSumFee * compute.ScoreAverageRate * (compute.Attendance ?? 0) + (extra ?? 0) ?? 0); compute.GiveFee = Math.Round(compute.PerforSumFee * compute.ScoreAverageRate * compute.Attendance + compute.Punishment + compute.AssessLaterOtherFee ?? 0);
//实发绩效 //实发绩效
//compute.RealGiveFee = (compute.GiveFee * compute.ScoreAverageRate + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0)) * (compute.Adjust ?? 1m); //compute.RealGiveFee = (compute.GiveFee * compute.ScoreAverageRate + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0)) * (compute.Adjust ?? 1m);
compute.RealGiveFee = Math.Round(compute.GiveFee * (compute.Adjust ?? 1m) ?? 0); compute.RealGiveFee = Math.Round(compute.GiveFee * compute.Adjust + compute.AdjustLaterOtherFee ?? 0);
// 参考基数专用绩效合计 // 参考基数专用绩效合计
compute.BaiscNormPerforTotal = compute.PerforSumFee; compute.BaiscNormPerforTotal = compute.PerforSumFee;
......
...@@ -183,7 +183,7 @@ private bool EditAccountBasic(int userId, OriginalRequest request) ...@@ -183,7 +183,7 @@ private bool EditAccountBasic(int userId, OriginalRequest request)
{ "核算单元人员数量", nameof(im_accountbasic.DoctorNumber) }, { "核算单元人员数量", nameof(im_accountbasic.DoctorNumber) },
{ "预算比例", nameof(im_accountbasic.DoctorBasicFactor) }, { "预算比例", nameof(im_accountbasic.DoctorBasicFactor) },
//{ "倾斜系数", nameof(im_accountbasic.DoctorSlopeFactor) }, //{ "倾斜系数", nameof(im_accountbasic.DoctorSlopeFactor) },
{ "工作量倾斜系数", nameof(im_accountbasic.WorkSlopeFactor) }, //{ "工作量倾斜系数", nameof(im_accountbasic.WorkSlopeFactor) },
{ "保底绩效参考标准", nameof(im_accountbasic.MinimumReference) }, { "保底绩效参考标准", nameof(im_accountbasic.MinimumReference) },
{ "保底绩效系数", nameof(im_accountbasic.MinimumFactor) }, { "保底绩效系数", nameof(im_accountbasic.MinimumFactor) },
{ "其他绩效1", nameof(im_accountbasic.DoctorOtherPerfor1) }, { "其他绩效1", nameof(im_accountbasic.DoctorOtherPerfor1) },
......
...@@ -379,21 +379,24 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS ...@@ -379,21 +379,24 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS
JobTitle = empolyee.JobTitle, JobTitle = empolyee.JobTitle,
JobNumber = empolyee.JobNumber, JobNumber = empolyee.JobNumber,
ScoreAverageRate = empolyee.ScoreAverageRate, AssessBeforeOtherFee = empolyee.AssessBeforeOtherFee ?? 0,
OtherPerfor = empolyee.OtherPerfor, ScoreAverageRate = empolyee.ScoreAverageRate ?? 0,
AssessLaterOtherFee = empolyee.AssessLaterOtherFee ?? 0,
AdjustLaterOtherFee = empolyee.AdjustLaterOtherFee ?? 0,
OtherPerfor = empolyee.OtherPerfor ?? 0,
OtherManagePerfor = empolyee.OtherManagePerfor ?? 0, OtherManagePerfor = empolyee.OtherManagePerfor ?? 0,
Number = resAccount.ManagerNumber + resAccount.Number, Number = resAccount.ManagerNumber + resAccount.Number,
PerforTotal = resAccount.PerforTotal, PerforTotal = resAccount.PerforTotal,
Avg = avg, Avg = avg,
Efficiency = effAvg * (empolyee.Efficiency ?? 0), Efficiency = effAvg * (empolyee.Efficiency ?? 0),
Scale = resAccount.PerforTotal * (empolyee.Scale ?? 0), Scale = resAccount.PerforTotal * (empolyee.Scale ?? 0),
Adjust = isBudget ? adjust : empolyee.Adjust, Adjust = (isBudget ? adjust : empolyee.Adjust) ?? 1m,
Remark = empolyees.Count() > 1 ? "特殊科室主任,共用核算单元" : "", Remark = empolyees.Count() > 1 ? "特殊科室主任,共用核算单元" : "",
Grant = isBudget ? grant : empolyee.Management, Grant = (isBudget ? grant : empolyee.Management) ?? 0,
ManagerNumber = resAccount.ManagerNumber, ManagerNumber = resAccount.ManagerNumber,
MedicalNumber = resAccount.Number, MedicalNumber = resAccount.Number,
PermanentStaff = empolyee.PermanentStaff, PermanentStaff = empolyee.PermanentStaff,
Attendance = empolyee.Attendance Attendance = empolyee.Attendance ?? 0,
}; };
var extra = employeeExtra?.Where(w => !string.IsNullOrEmpty(w.AccountingUnit) && !string.IsNullOrEmpty(w.UnitType) var extra = employeeExtra?.Where(w => !string.IsNullOrEmpty(w.AccountingUnit) && !string.IsNullOrEmpty(w.UnitType)
...@@ -403,15 +406,15 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS ...@@ -403,15 +406,15 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<PerS
compute.Punishment = extra ?? 0; compute.Punishment = extra ?? 0;
//应发管理绩效 //应发管理绩效
compute.ShouldGiveFee = Math.Round((compute.Efficiency + compute.Scale + compute.OtherManagePerfor) * (compute.Grant ?? 0) ?? 0); compute.ShouldGiveFee = Math.Round((compute.Efficiency + compute.Scale + compute.OtherManagePerfor) * compute.Grant ?? 0);
//绩效合计 //绩效合计
compute.PerforSumFee = Math.Round((compute.Avg * (empolyee.Basics ?? 0)) + compute.ShouldGiveFee ?? 0); compute.PerforSumFee = Math.Round((compute.Avg * (empolyee.Basics ?? 0)) + compute.ShouldGiveFee + compute.AssessBeforeOtherFee ?? 0);
//应发绩效 //应发绩效
//compute.GiveFee = compute.PerforSumFee; //compute.GiveFee = compute.PerforSumFee;
compute.GiveFee = Math.Round(compute.PerforSumFee * compute.ScoreAverageRate * (compute.Attendance ?? 0) + (extra ?? 0) ?? 0) + (compute.OtherPerfor ?? 0); compute.GiveFee = Math.Round(compute.PerforSumFee * compute.ScoreAverageRate * compute.Attendance + compute.Punishment + compute.OtherPerfor + compute.AssessLaterOtherFee ?? 0);
//实发绩效 //实发绩效
//compute.RealGiveFee = (compute.GiveFee * compute.ScoreAverageRate * (compute.Attendance ?? 0) + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0)) * (compute.Adjust ?? 1m); //compute.RealGiveFee = (compute.GiveFee * compute.ScoreAverageRate * (compute.Attendance ?? 0) + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0)) * (compute.Adjust ?? 1m);
compute.RealGiveFee = Math.Round(compute.GiveFee * (compute.Adjust ?? 1m) ?? 0); compute.RealGiveFee = Math.Round(compute.GiveFee * compute.Adjust + compute.AdjustLaterOtherFee ?? 0);
// 参考基数专用绩效合计 // 参考基数专用绩效合计
compute.BaiscNormPerforTotal = compute.PerforSumFee; compute.BaiscNormPerforTotal = compute.PerforSumFee;
...@@ -455,7 +458,6 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot ...@@ -455,7 +458,6 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot
.FirstOrDefault(w => w.AccountingUnit == item.AccountingUnit && w.UnitType == item.UnitType && w.JobNumber == item.JobNumber && w.EmployeeName == item.DoctorName) .FirstOrDefault(w => w.AccountingUnit == item.AccountingUnit && w.UnitType == item.UnitType && w.JobNumber == item.JobNumber && w.EmployeeName == item.DoctorName)
?.TotelValue; ?.TotelValue;
var itemAdjust = isBudget ? adjust : item.Adjust;
var compute = new ComputeResult var compute = new ComputeResult
{ {
AccountType = item.AccountType, AccountType = item.AccountType,
...@@ -470,12 +472,15 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot ...@@ -470,12 +472,15 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot
Attendance = item.Attendance, Attendance = item.Attendance,
ScoreAverageRate = item.ScoreAverageRate, ScoreAverageRate = item.ScoreAverageRate,
Punishment = extra ?? 0, Punishment = extra ?? 0,
OtherPerfor = item.OtherPerfor, OtherPerfor = item.OtherPerfor ?? 0,
JobTitle = item.JobTitle, JobTitle = item.JobTitle,
JobNumber = item.JobNumber, JobNumber = item.JobNumber,
Adjust = itemAdjust, Adjust = (isBudget ? adjust : item.Adjust) ?? 1m,
//Workload = item.Workload //Workload = item.Workload
AssessBeforeOtherFee = item.AssessBeforeOtherFee ?? 0,
AssessLaterOtherFee = item.AssessLaterOtherFee ?? 0,
AdjustLaterOtherFee = item.AdjustLaterOtherFee ?? 0,
}; };
decimal? baiscnorm = compute?.FitPeopleValue ?? 0; decimal? baiscnorm = compute?.FitPeopleValue ?? 0;
...@@ -497,17 +502,22 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot ...@@ -497,17 +502,22 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot
compute.BaiscNormValue = baiscnorm * (item.FitPeopleRatio ?? 0); compute.BaiscNormValue = baiscnorm * (item.FitPeopleRatio ?? 0);
//绩效合计 //绩效合计
compute.PerforTotal = compute.BaiscNormValue * compute.PostCoefficient * compute.Attendance; compute.PerforTotal = compute.BaiscNormValue * compute.PostCoefficient * compute.Attendance;
// 行政高层 行政中层 考核前其他绩效
if (AccountUnitType.行政高层.ToString() == involve || AccountUnitType.行政中层.ToString() == involve)
compute.PerforTotal = compute.PerforTotal + compute.AssessBeforeOtherFee;
//应发绩效 //应发绩效
compute.GiveFee = compute.BaiscNormValue * compute.PostCoefficient * compute.Attendance + compute.Punishment; compute.GiveFee = compute.BaiscNormValue * compute.PostCoefficient * compute.Attendance + compute.Punishment;
// 行政中高层 不需要其他绩效 行政工勤 不需要考核得分率 区分开计算 // 行政中高层 不需要其他绩效 行政工勤 不需要考核得分率 区分开计算
if (AccountUnitType.行政工勤.ToString() == involve) if (AccountUnitType.行政工勤.ToString() == involve)
compute.GiveFee = Math.Round(compute.GiveFee + (compute.OtherPerfor ?? 0) ?? 0); compute.GiveFee = Math.Round(compute.GiveFee + compute.OtherPerfor ?? 0);
else else
compute.GiveFee = Math.Round((compute.GiveFee * compute.ScoreAverageRate) ?? 0); compute.GiveFee = Math.Round((compute.GiveFee * compute.ScoreAverageRate + compute.AssessLaterOtherFee) ?? 0);
//实发绩效 //实发绩效
compute.RealGiveFee = Math.Round((compute.GiveFee * (itemAdjust ?? 1)) ?? 0); compute.RealGiveFee = Math.Round((compute.GiveFee * compute.Adjust + compute.AdjustLaterOtherFee) ?? 0);
computeList.Add(compute); computeList.Add(compute);
} }
} }
......
...@@ -20,9 +20,12 @@ public class ExcelReadConfig ...@@ -20,9 +20,12 @@ public class ExcelReadConfig
new ColumnInfo(nameof(PerDataEmployee.AccountType), "人员分类"), new ColumnInfo(nameof(PerDataEmployee.AccountType), "人员分类"),
new ColumnInfo(nameof(PerDataEmployee.PostCoefficient), "岗位系数", true), new ColumnInfo(nameof(PerDataEmployee.PostCoefficient), "岗位系数", true),
new ColumnInfo(nameof(PerDataEmployee.NightWorkPerfor), "夜班费"), new ColumnInfo(nameof(PerDataEmployee.NightWorkPerfor), "夜班费"),
new ColumnInfo(nameof(PerDataEmployee.AssessBeforeOtherFee), "考核前其他绩效", true),
new ColumnInfo(nameof(PerDataEmployee.ScoreAverageRate), "考核得分率", true), new ColumnInfo(nameof(PerDataEmployee.ScoreAverageRate), "考核得分率", true),
new ColumnInfo(nameof(PerDataEmployee.AssessLaterOtherFee), "考核后其他绩效", true),
new ColumnInfo(nameof(PerDataEmployee.Attendance), "出勤率", true), new ColumnInfo(nameof(PerDataEmployee.Attendance), "出勤率", true),
new ColumnInfo(nameof(PerDataEmployee.Adjust), "调节系数", true), new ColumnInfo(nameof(PerDataEmployee.Adjust), "调节系数", true),
new ColumnInfo(nameof(PerDataEmployee.AdjustLaterOtherFee), "调节后其他绩效", true),
}; };
...@@ -40,12 +43,15 @@ public class ExcelReadConfig ...@@ -40,12 +43,15 @@ public class ExcelReadConfig
new ColumnInfo(nameof(PerDataClinicEmployee.Efficiency), "效率绩效系数", true), new ColumnInfo(nameof(PerDataClinicEmployee.Efficiency), "效率绩效系数", true),
new ColumnInfo(nameof(PerDataClinicEmployee.Scale), "规模绩效系数", true), new ColumnInfo(nameof(PerDataClinicEmployee.Scale), "规模绩效系数", true),
new ColumnInfo(nameof(PerDataClinicEmployee.Management), "管理绩效发放系数", true), new ColumnInfo(nameof(PerDataClinicEmployee.Management), "管理绩效发放系数", true),
new ColumnInfo(nameof(PerDataClinicEmployee.AssessBeforeOtherFee), "考核前其他绩效", true),
new ColumnInfo(nameof(PerDataClinicEmployee.ScoreAverageRate), "考核得分率", true), new ColumnInfo(nameof(PerDataClinicEmployee.ScoreAverageRate), "考核得分率", true),
new ColumnInfo(nameof(PerDataClinicEmployee.AssessLaterOtherFee), "考核后其他绩效", true),
new ColumnInfo(nameof(PerDataClinicEmployee.Attendance), "出勤率", true), new ColumnInfo(nameof(PerDataClinicEmployee.Attendance), "出勤率", true),
new ColumnInfo(nameof(PerDataClinicEmployee.OtherManagePerfor), "其他管理绩效"), new ColumnInfo(nameof(PerDataClinicEmployee.OtherManagePerfor), "其他管理绩效"),
new ColumnInfo(nameof(PerDataClinicEmployee.OthePerfor), "其他绩效"), new ColumnInfo(nameof(PerDataClinicEmployee.OthePerfor), "其他绩效"),
//new ColumnInfo(nameof(PerDataClinicEmployee.NightWorkPerfor), "夜班费"), //new ColumnInfo(nameof(PerDataClinicEmployee.NightWorkPerfor), "夜班费"),
new ColumnInfo(nameof(PerDataClinicEmployee.Adjust), "调节系数", true), new ColumnInfo(nameof(PerDataClinicEmployee.Adjust), "调节系数", true),
new ColumnInfo(nameof(PerDataClinicEmployee.AdjustLaterOtherFee), "调节后其他绩效", true),
}; };
...@@ -62,6 +68,7 @@ public class ExcelReadConfig ...@@ -62,6 +68,7 @@ public class ExcelReadConfig
new ColumnInfo(nameof(PerDataLogisticsEmployee.PostCoefficient), "岗位系数", true), new ColumnInfo(nameof(PerDataLogisticsEmployee.PostCoefficient), "岗位系数", true),
new ColumnInfo(nameof(PerDataLogisticsEmployee.Attendance), "出勤率", true), new ColumnInfo(nameof(PerDataLogisticsEmployee.Attendance), "出勤率", true),
new ColumnInfo(nameof(PerDataLogisticsEmployee.OthePerfor), "其他绩效", true), new ColumnInfo(nameof(PerDataLogisticsEmployee.OthePerfor), "其他绩效", true),
new ColumnInfo(nameof(PerDataLogisticsEmployee.AdjustLaterOtherFee), "调节后其他绩效", true),
}; };
public static ColumnInfo[] AccountBaisc { get; set; } = new ColumnInfo[] public static ColumnInfo[] AccountBaisc { get; set; } = new ColumnInfo[]
...@@ -72,8 +79,11 @@ public class ExcelReadConfig ...@@ -72,8 +79,11 @@ public class ExcelReadConfig
new ColumnInfo(nameof(PerDataAccountBaisc.Number), "核算单元人员数量", true), new ColumnInfo(nameof(PerDataAccountBaisc.Number), "核算单元人员数量", true),
new ColumnInfo(nameof(PerDataAccountBaisc.BasicFactor), "预算比例", true), new ColumnInfo(nameof(PerDataAccountBaisc.BasicFactor), "预算比例", true),
new ColumnInfo(nameof(PerDataAccountBaisc.OtherPerfor1), "其他绩效1", true), new ColumnInfo(nameof(PerDataAccountBaisc.OtherPerfor1), "其他绩效1", true),
new ColumnInfo(nameof(PerDataAccountBaisc.AssessBeforeOtherFee), "考核前其他绩效", true),
new ColumnInfo(nameof(PerDataAccountBaisc.ScoringAverage), "考核得分率", true), new ColumnInfo(nameof(PerDataAccountBaisc.ScoringAverage), "考核得分率", true),
new ColumnInfo(nameof(PerDataAccountBaisc.AssessLaterOtherFee), "考核后其他绩效", true),
new ColumnInfo(nameof(PerDataAccountBaisc.AdjustFactor), "调节系数", true), new ColumnInfo(nameof(PerDataAccountBaisc.AdjustFactor), "调节系数", true),
new ColumnInfo(nameof(PerDataAccountBaisc.AdjustLaterOtherFee), "调节后其他绩效", true),
}; };
} }
......
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