历史

parent 87fe4451
...@@ -66,24 +66,12 @@ public enum PerformanceType ...@@ -66,24 +66,12 @@ public enum PerformanceType
/// <summary> </summary> /// <summary> </summary>
[Description("")] [Description("")]
Null = 0, Null = 0,
/// <summary> 绩效基数临床科室主任(专门用来计算科主任绩效,由此产生=>>临床科室主任人均绩效)</summary>
[Description("绩效基数临床科室主任")]
StandardDirector = 1,
/// <summary> 绩效基数临床科室副主任(专门用来计算科主任绩效,由此产生=>>临床科室副主任人均绩效) </summary>
[Description("绩效基数临床科室副主任")]
StandardDeputyDirector = 2,
/// <summary> 绩效基数临床科室护士长(专门用来计算科主任绩效,由此产生=>>临床科室护士长人均绩效) </summary>
[Description("绩效基数临床科室护士长")]
StandardNurse = 3,
/// <summary> 临床科室主任人均绩效 (绩效标准取 科室主任人均绩效) </summary> /// <summary> 临床科室主任人均绩效 (绩效标准取 科室主任人均绩效) </summary>
[Description("临床科室主任人均绩效")] [Description("临床科室主任人均绩效")]
ReferenceDirector = 4, ReferenceDirector = 4,
/// <summary> 临床科室中层人均绩效 (绩效标准取 科室主任/护士长/科室副主任/医技主任 平均值) </summary> /// <summary> 临床科室中层人均绩效 (绩效标准取 科室主任/护士长/科室副主任/医技主任 平均值) </summary>
[Description("临床科室中层人均绩效")] [Description("临床科室中层人均绩效")]
ReferenceDirectorAvg = 5, ReferenceDirectorAvg = 5,
/// <summary> 临床科室护士长人均绩效 (绩效标准取 护士长 平均值)</summary> /// <summary> 临床科室护士长人均绩效 (绩效标准取 护士长 平均值)</summary>
[Description("临床科室护士长人均绩效")] [Description("临床科室护士长人均绩效")]
ReferenceHeadNurse = 7, ReferenceHeadNurse = 7,
...@@ -99,5 +87,53 @@ public enum PerformanceType ...@@ -99,5 +87,53 @@ public enum PerformanceType
/// <summary> 行政工勤人均绩效 </summary> /// <summary> 行政工勤人均绩效 </summary>
[Description("行政工勤人均绩效")] [Description("行政工勤人均绩效")]
LogisticsWorker = 11, LogisticsWorker = 11,
/// <summary> 行政中层人均绩效 </summary>
[Description("行政中层人均绩效")]
MiddleManager = 12,
/// <summary> 行政高层人均绩效 </summary>
[Description("行政高层人均绩效")]
TopManager = 13,
/// <summary> 绩效基数临床科室主任(专门用来计算科主任绩效,由此产生=>>临床科室主任人均绩效)</summary>
[Description("绩效基数临床科室主任")]
临床科主任 = 14,
/// <summary> 绩效基数临床科室副主任(专门用来计算科主任绩效,由此产生=>>临床科室副主任人均绩效) </summary>
[Description("绩效基数临床科室副主任")]
临床科副主任 = 15,
/// <summary> 绩效基数临床科室护士长(专门用来计算科主任绩效,由此产生=>>临床科室护士长人均绩效) </summary>
[Description("绩效基数临床科室护士长")]
临床护士长 = 16,
/// <summary> 绩效基数医技科室主任(专门用来计算科主任绩效,由此产生=>>临床科室副主任人均绩效) </summary>
[Description("绩效基数医技科室主任")]
医技主任 = 17,
/// <summary> 绩效基数医技科室副主任(专门用来计算科主任绩效,由此产生=>>临床科室副主任人均绩效) </summary>
[Description("绩效基数医技科室副主任")]
医技副主任 = 18,
}
/// <summary>
/// 核算单元类型
/// </summary>
public enum AccountUnitType
{
/// <summary> </summary>
[Description("")]
Null = 1,
/// <summary> 临床科室 </summary>
[Description("临床科室")]
临床科室 = 2,
/// <summary> 临床科室 </summary>
[Description("医技科室")]
医技科室 = 3,
/// <summary> 行政高层 </summary>
[Description("行政高层")]
行政高层 = 4,
/// <summary> 临床科室 </summary>
[Description("行政中层")]
行政中层 = 5,
/// <summary> 临床科室 </summary>
[Description("行政工勤")]
行政工勤 = 6,
} }
} }
...@@ -32,6 +32,11 @@ public class res_compute ...@@ -32,6 +32,11 @@ public class res_compute
public Nullable<int> SheetID { get; set; } public Nullable<int> SheetID { get; set; }
/// <summary> /// <summary>
/// 核算单元类型(医技科室、临床科室等)
/// </summary>
public string AccountType { get; set; }
/// <summary>
/// 核算单元 /// 核算单元
/// </summary> /// </summary>
public string AccountingUnit { get; set; } public string AccountingUnit { get; set; }
......
...@@ -21,10 +21,18 @@ public class BaiscNormService : IAutoInjection ...@@ -21,10 +21,18 @@ public class BaiscNormService : IAutoInjection
public decimal? GetBaiscNorm(List<res_baiscnorm> baiscnorms, PerformanceType type) public decimal? GetBaiscNorm(List<res_baiscnorm> baiscnorms, PerformanceType type)
{ {
decimal? result = null; decimal? result = null;
if (type == PerformanceType.ReferenceDirector || type == PerformanceType.Null) if (type == PerformanceType.ReferenceDirector)
{ {
result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床科主任")?.AvgValue; result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床科主任")?.AvgValue;
} }
else if (type == PerformanceType.ReferenceDeputyDirector)
{
result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床科副主任")?.AvgValue;
}
else if (type == PerformanceType.ReferenceHeadNurse || type == PerformanceType.StandardNurse)
{
result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床科护长")?.AvgValue;
}
else if (type == PerformanceType.ReferenceDirectorAvg) else if (type == PerformanceType.ReferenceDirectorAvg)
{ {
List<string> avgObjectList = new List<string> { "临床科主任", "临床科副主任", "医技科主任", "临床科护长" }; List<string> avgObjectList = new List<string> { "临床科主任", "临床科副主任", "医技科主任", "临床科护长" };
...@@ -32,10 +40,6 @@ public class BaiscNormService : IAutoInjection ...@@ -32,10 +40,6 @@ public class BaiscNormService : IAutoInjection
result = baisc.Sum(s => s.TotelValue) / baisc.Sum(s => s.TotelNumber); result = baisc.Sum(s => s.TotelValue) / baisc.Sum(s => s.TotelNumber);
} }
else if (type == PerformanceType.ReferenceHeadNurse)
{
result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床科护长")?.AvgValue;
}
else if (type == PerformanceType.ReferenceNurse) else if (type == PerformanceType.ReferenceNurse)
{ {
result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床护士")?.AvgValue; result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床护士")?.AvgValue;
...@@ -44,9 +48,17 @@ public class BaiscNormService : IAutoInjection ...@@ -44,9 +48,17 @@ public class BaiscNormService : IAutoInjection
{ {
result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床医生")?.AvgValue; result = baiscnorms.FirstOrDefault(t => t.PositionName == "临床医生")?.AvgValue;
} }
else if (type == PerformanceType.TopManager)
{
result = baiscnorms.FirstOrDefault(t => t.PositionName == "行政高层人均绩效")?.AvgValue;
}
else if (type == PerformanceType.MiddleManager)
{
result = baiscnorms.FirstOrDefault(t => t.PositionName == "行政中层人均绩效")?.AvgValue;
}
else if (type == PerformanceType.LogisticsWorker) else if (type == PerformanceType.LogisticsWorker)
{ {
result = baiscnorms.FirstOrDefault(t => t.PositionName == "行政工勤")?.AvgValue; result = baiscnorms.FirstOrDefault(t => t.PositionName == "行政工勤人均绩效")?.AvgValue;
} }
if (result.HasValue) if (result.HasValue)
result = Math.Round(result.Value, 4); result = Math.Round(result.Value, 4);
......
...@@ -76,7 +76,7 @@ public List<res_baiscnorm> Compute(per_allot allot, PerExcel excel, res_baiscnor ...@@ -76,7 +76,7 @@ public List<res_baiscnorm> Compute(per_allot allot, PerExcel excel, res_baiscnor
var computResult2 = computeDirector.Compute(computeEmployees, baiscnormList, workyearList); var computResult2 = computeDirector.Compute(computeEmployees, baiscnormList, workyearList);
//计算 行政人员 平均值 //计算 行政人员 平均值
var baiscnormList2 = computeDirector.ComputeOtherAvg(computResult2); var baiscnormList2 = computeDirector.ComputeAvg(computResult2);
baiscnormList.AddRange(baiscnormList2); baiscnormList.AddRange(baiscnormList2);
var computes = Mapper.Map<List<res_compute>>(computResult); var computes = Mapper.Map<List<res_compute>>(computResult);
......
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