Commit cb2a6b49 by lcx

增加其他绩效,其他管理绩效等字段

parent c4dff4c0
......@@ -413,6 +413,26 @@
其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.OtherPerfor2">
<summary>
其他绩效2
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.OtherPerfor3">
<summary>
其他绩效3
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.OtherPerfor4">
<summary>
其他绩效4
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeEmployee.Punishment">
<summary>
医院奖罚
......@@ -528,6 +548,26 @@
其他绩效(来自人员名单)
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.OtherPerfor2">
<summary>
其他绩效2
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.OtherPerfor3">
<summary>
其他绩效3
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.OtherPerfor4">
<summary>
其他绩效4
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResult.GiveFee">
<summary>
应发绩效(需计算)
......@@ -965,11 +1005,16 @@
出勤率
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.OthePerfor">
<member name="P:Performance.DtoModels.PerDataClinicEmployee.OtherPerfor">
<summary>
其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataClinicEmployee.Punishment">
<summary>
医院奖罚
......@@ -1050,11 +1095,26 @@
出勤率
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.OthePerfor">
<member name="P:Performance.DtoModels.PerDataEmployee.OtherPerfor">
<summary>
其他绩效
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.OtherPerfor2">
<summary>
其他绩效2
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.OtherPerfor3">
<summary>
其他绩效3
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.OtherPerfor4">
<summary>
其他绩效4
</summary>
</member>
<member name="P:Performance.DtoModels.PerDataEmployee.Punishment">
<summary>
医院奖罚
......
......@@ -2216,6 +2216,21 @@
其他绩效
</summary>
</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.Punishment">
<summary>
医院奖罚
......@@ -2346,6 +2361,11 @@
其他绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.OtherManagePerfor">
<summary>
其他管理绩效
</summary>
</member>
<member name="P:Performance.EntityModels.im_employee_clinic.Punishment">
<summary>
医院奖罚
......@@ -4306,6 +4326,26 @@
其他绩效(来自人员名单)
</summary>
</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.GiveFee">
<summary>
应发绩效(需计算)
......
......@@ -97,6 +97,26 @@ public class ComputeEmployee
public Nullable<decimal> OtherPerfor { get; set; }
/// <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>
public Nullable<decimal> Punishment { get; set; }
......
......@@ -91,6 +91,26 @@ public class ComputeResult
public Nullable<decimal> OtherPerfor { get; set; }
/// <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>
public Nullable<decimal> GiveFee { get; set; }
......
......@@ -79,7 +79,12 @@ public class PerDataClinicEmployee : IPerData
/// <summary>
/// 其他绩效
/// </summary>
public Nullable<decimal> OthePerfor { get; set; }
public Nullable<decimal> OtherPerfor { get; set; }
/// <summary>
/// 其他管理绩效
/// </summary>
public Nullable<decimal> OtherManagePerfor { get; set; }
/// <summary>
/// 医院奖罚
......
......@@ -79,7 +79,22 @@ public class PerDataEmployee : IPerData
/// <summary>
/// 其他绩效
/// </summary>
public Nullable<decimal> OthePerfor { get; set; }
public Nullable<decimal> OtherPerfor { get; set; }
/// <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>
/// 医院奖罚
......
......@@ -107,6 +107,26 @@ public class ResComputeResponse
public Nullable<decimal> OtherPerfor { get; set; }
/// <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>
public Nullable<decimal> GiveFee { get; set; }
......
......@@ -117,6 +117,21 @@ public class im_employee
public Nullable<decimal> OtherPerfor { get; set; }
/// <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> Punishment { get; set; }
......
......@@ -117,6 +117,11 @@ public class im_employee_clinic
public Nullable<decimal> OtherPerfor { get; set; }
/// <summary>
/// 其他管理绩效
/// </summary>
public Nullable<decimal> OtherManagePerfor { get; set; }
/// <summary>
/// 医院奖罚
/// </summary>
public Nullable<decimal> Punishment { get; set; }
......
......@@ -127,6 +127,26 @@ public class res_compute
public Nullable<decimal> OtherPerfor { get; set; }
/// <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>
public Nullable<decimal> GiveFee { get; set; }
......
......@@ -164,7 +164,7 @@ private void SaveEmployee(PerSheet sheet, int allotId)
var imdata = Mapper.Map<im_employee>(data);
imdata.SheetID = imsheet.ID;
imdata.AllotID = allotId;
imdata.OtherPerfor = data.OthePerfor;
imdata.OtherPerfor = data.OtherPerfor;
addList.Add(imdata);
}
perforImEmployeeRepository.AddRange(addList.ToArray());
......@@ -203,7 +203,7 @@ private void SaveClinicEmployee(PerSheet sheet, int allotId)
var imdata = Mapper.Map<im_employee_clinic>(data);
imdata.SheetID = imsheet.ID;
imdata.AllotID = allotId;
imdata.OtherPerfor = data.OthePerfor;
imdata.OtherPerfor = data.OtherPerfor;
addList.Add(imdata);
}
perforImemployeeclinicRepository.AddRange(addList.ToArray());
......
......@@ -541,6 +541,7 @@ private List<CofDrugProp> GetDrugConfig(PerExcel excel, int allotid)
var allData = datalist.GroupBy(t => t.AccountingUnit).Select(t => new { AccountingUnit = t.Key, SumValue = t.Sum(s => s.CellValue) });
var cofList = perforCofdrugpropRepository.GetEntities(t => t.AllotID == allotid);
if (cofList == null || !cofList.Any()) return cofs;
var unitList = (drugData?.Select(t => t.AccountingUnit) ?? new List<string>()).Union(allData.Select(t => t.AccountingUnit));
......
......@@ -171,7 +171,7 @@ public List<ResComputeResponse> GetCompute(int allotId, int type)
t.WorkTime = string.IsNullOrEmpty(t.WorkTime) ? null : Convert.ToDateTime(t.WorkTime).ToString("yyyy-MM-dd");
if (isShowManage == 2)
{
t.ShouldGiveFee = (t.Efficiency + t.Scale) * t.Grant;
t.ShouldGiveFee = (t.Efficiency + t.Scale) * t.Grant + (t.OtherManagePerfor ?? 0);
t.PerforSumFee = t.ShouldGiveFee + t.Punishment + t.OtherPerfor;
var employee = employees.FirstOrDefault(e => e.DoctorName == t.EmployeeName && e.AccountingUnit == t.AccountingUnit && pairs[type].Contains(e.UnitType));
var scoreAverageRate = t.ScoreAverageRate ?? employee.ScoreAverageRate ?? 0;
......
......@@ -373,6 +373,7 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<im_a
ScoreAverageRate = empolyee.ScoreAverageRate,
Punishment = empolyee.Punishment,
OtherPerfor = empolyee.OtherPerfor,
OtherManagePerfor = empolyee.OtherManagePerfor,
Number = resAccount.ManagerNumber + resAccount.Number,
PerforTotal = resAccount.PerforTotal,
......@@ -388,7 +389,7 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, List<im_a
Attendance = empolyee.Attendance
};
//应发管理绩效
compute.ShouldGiveFee = Math.Round(((compute.Efficiency + compute.Scale) * (compute.Grant ?? 0) + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0)) ?? 0, MidpointRounding.AwayFromZero);
compute.ShouldGiveFee = Math.Round(((compute.Efficiency + compute.Scale) * (compute.Grant ?? 0) + (compute.Punishment ?? 0) + (compute.OtherPerfor ?? 0) + (compute.OtherManagePerfor ?? 0)) ?? 0, MidpointRounding.AwayFromZero);
//绩效合计
compute.PerforSumFee = Math.Round(((compute.Avg * (empolyee.Basics ?? 0)) + compute.ShouldGiveFee) ?? 0, MidpointRounding.AwayFromZero);
//应发绩效
......@@ -443,6 +444,9 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot
ScoreAverageRate = item.ScoreAverageRate,
Punishment = item.Punishment,
OtherPerfor = item.OtherPerfor,
OtherPerfor2 = item.OtherPerfor2,
OtherPerfor3 = item.OtherPerfor3,
OtherPerfor4 = item.OtherPerfor4,
JobTitle = item.JobTitle,
JobNumber = item.JobNumber,
Adjust = itemAdjust,
......@@ -468,7 +472,7 @@ public List<ComputeResult> Compute(List<ComputeEmployee> empolyeeList, per_allot
compute.BaiscNormValue = (baiscnorm ?? 0) * (item.FitPeopleRatio ?? 0);
//应发绩效
compute.GiveFee = Math.Round((compute.BaiscNormValue * compute.PostCoefficient * (compute.WorkYear ?? 1) * compute.Attendance * compute.ScoreAverageRate
+ (compute.OtherPerfor ?? 0) + (compute.Punishment ?? 0)) ?? 0, MidpointRounding.AwayFromZero);
+ (compute.OtherPerfor ?? 0) + (compute.OtherPerfor2 ?? 0) + (compute.OtherPerfor3 ?? 0) + (compute.OtherPerfor4 ?? 0) + (compute.Punishment ?? 0)) ?? 0, MidpointRounding.AwayFromZero);
//实发绩效
compute.RealGiveFee = Math.Round((compute.GiveFee * (itemAdjust ?? 1)) ?? 0, MidpointRounding.AwayFromZero);
computeList.Add(compute);
......
......@@ -66,7 +66,8 @@ public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
Management = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "管理绩效发放系数").PointCell)?.NumericCellValue),
ScoreAverageRate = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "考核得分率").PointCell)?.NumericCellValue),
Attendance = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "出勤率").PointCell)?.NumericCellValue),
OthePerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue),
OtherPerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue),
OtherManagePerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他管理绩效").PointCell)?.NumericCellValue),
Punishment = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "医院奖罚").PointCell)?.NumericCellValue),
Adjust = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "调节系数").PointCell)?.NumericCellValue),
};
......
......@@ -70,7 +70,10 @@ public List<IPerData> ReadData(ISheet sheet, List<PerHeader> perHeader)
Attendance = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "出勤率").PointCell)?.NumericCellValue),
//PeopleNumber = ConvertHelper.To<int?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "核算单元医生数").PointCell)?.ToString()),
//Workload = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "工作量绩效").PointCell)?.ToString()),
OthePerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue),
OtherPerfor = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效").PointCell)?.NumericCellValue),
OtherPerfor2 = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效2").PointCell)?.NumericCellValue),
OtherPerfor3 = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效3").PointCell)?.NumericCellValue),
OtherPerfor4 = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "其他绩效4").PointCell)?.NumericCellValue),
Punishment = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "医院奖罚").PointCell)?.NumericCellValue),
Adjust = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "调节系数").PointCell)?.NumericCellValue),
//Grant = ConvertHelper.To<decimal?>(row.GetCell(perHeader.FirstOrDefault(p => p.CellValue == "发放系数").PointCell)?.ToString()),
......
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