Commit 8ad09f61 by lcx

二次绩效护理组以外不通过护理组审核,打印数据可在审核通过前打印

parent 7c4ce522
...@@ -1290,7 +1290,7 @@ public bool ConfirmAudit(int userId, SecondAuditRequest request) ...@@ -1290,7 +1290,7 @@ public bool ConfirmAudit(int userId, SecondAuditRequest request)
var hospital = hospitalRepository.GetEntity(w => w.ID == allot.HospitalId); var hospital = hospitalRepository.GetEntity(w => w.ID == allot.HospitalId);
if (hospital == null) return true; if (hospital == null) return true;
if (hospital.IsOpenNursingDeptAudit == 1 && second.NursingDeptStatus != 3) if (hospital.IsOpenNursingDeptAudit == 1 && second.NursingDeptStatus != 3 && new string[] { UnitType.护理组.ToString(), UnitType.其他护理组.ToString() }.Contains(second.UnitType))
return true; return true;
var computes = new List<ag_compute>(); var computes = new List<ag_compute>();
...@@ -1304,6 +1304,8 @@ public bool ConfirmAudit(int userId, SecondAuditRequest request) ...@@ -1304,6 +1304,8 @@ public bool ConfirmAudit(int userId, SecondAuditRequest request)
{ {
foreach (var item in rowNumbers) foreach (var item in rowNumbers)
{ {
var perforsumfee = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "可分配绩效")?.ItemValue, 0);
var nightworkperfor = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "夜班工作量绩效")?.ItemValue, 0);
computes.Add(new ag_compute computes.Add(new ag_compute
{ {
AllotId = second.AllotId, AllotId = second.AllotId,
...@@ -1313,10 +1315,10 @@ public bool ConfirmAudit(int userId, SecondAuditRequest request) ...@@ -1313,10 +1315,10 @@ public bool ConfirmAudit(int userId, SecondAuditRequest request)
JobNumber = items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "人员工号")?.ItemValue, JobNumber = items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "人员工号")?.ItemValue,
WorkPost = items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "岗位")?.ItemValue, WorkPost = items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "岗位")?.ItemValue,
PersonName = items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "姓名")?.ItemValue, PersonName = items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "姓名")?.ItemValue,
PerforSumFee = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "可分配绩效")?.ItemValue, 0), PerforSumFee = perforsumfee,
OthePerfor = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "医院其他绩效")?.ItemValue, 0), OthePerfor = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "医院其他绩效")?.ItemValue, 0),
NightWorkPerfor = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "夜班工作量绩效")?.ItemValue, 0), NightWorkPerfor = nightworkperfor,
RealGiveFee = ConvertHelper.TryDecimal(items.FirstOrDefault(t => t.RowNumber == item && t.ItemName == "实发绩效工资金额")?.ItemValue, 0), RealGiveFee = perforsumfee + nightworkperfor,
}); });
} }
} }
...@@ -1637,12 +1639,11 @@ public List<SecPrintResponse> Print(int secondId) ...@@ -1637,12 +1639,11 @@ public List<SecPrintResponse> Print(int secondId)
var second = perforAgsecondallotRepository.GetEntity(t => t.Id == secondId); var second = perforAgsecondallotRepository.GetEntity(t => t.Id == secondId);
if (second == null) return new List<SecPrintResponse>(); if (second == null) return new List<SecPrintResponse>();
bool isOtherTemp = second.UseTempId.HasValue && second.UseTempId == 6; //var computes = perforAgcomputeRepository.GetEntities(t => t.SecondId == secondId);
//if (computes == null || !computes.Any())
var computes = perforAgcomputeRepository.GetEntities(t => t.SecondId == secondId); // return new List<SecPrintResponse>();
if (computes == null || !computes.Any())
return new List<SecPrintResponse>();
bool isOtherTemp = second.UseTempId.HasValue && second.UseTempId == 6;
if (isOtherTemp) if (isOtherTemp)
{ {
...@@ -1654,31 +1655,31 @@ public List<SecPrintResponse> Print(int secondId) ...@@ -1654,31 +1655,31 @@ public List<SecPrintResponse> Print(int secondId)
} }
else else
{ {
var itemname = new List<string> { "人员工号", "职称", "职称绩效", "工作量绩效工资", "科室单项奖励", "可分配绩效", "医院其他绩效", "夜班工作量绩效" }; var itemname = new List<string> { "人员工号", "姓名", "职称", "职称绩效", "工作量绩效工资", "科室单项奖励", "可分配绩效", "医院其他绩效", "夜班工作量绩效" };
var fixaitems = perforAgfixatitemRepository.GetEntities(t => t.SecondId == secondId && itemname.Contains(t.ItemName)); var fixaitems = perforAgfixatitemRepository.GetEntities(t => t.SecondId == secondId && itemname.Contains(t.ItemName));
if (fixaitems == null && !fixaitems.Any(t => t.RowNumber.HasValue && t.RowNumber != -1)) return new List<SecPrintResponse>();
var rownumbers = fixaitems.Where(t => t.RowNumber.HasValue && t.RowNumber != -1).Select(t => t.RowNumber.Value).Distinct().OrderBy(t => t).ToList();
var result = new List<SecPrintResponse>(); var result = new List<SecPrintResponse>();
foreach (var item in computes) foreach (var rownumber in rownumbers)
{ {
var distperfor = ConvertHelper.To<decimal?>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "可分配绩效")?.ItemValue);
var nightworkperfor = ConvertHelper.To<decimal?>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "夜班工作量绩效")?.ItemValue);
var sec = new SecPrintResponse var sec = new SecPrintResponse
{ {
JobNumber = item.JobNumber, JobNumber = fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "人员工号")?.ItemValue,
PersonName = item.PersonName, PersonName = fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "姓名")?.ItemValue,
Department = item.Department, Department = second.Department,
RealAmount = item.RealGiveFee, RealAmount = distperfor + nightworkperfor,
}; };
if (fixaitems != null && fixaitems.Any()) sec.WorkPost = fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "职称")?.ItemValue;
{ sec.TitlePerfor = ConvertHelper.To<decimal?>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "职称绩效")?.ItemValue);
var rownumber = fixaitems.FirstOrDefault(t => t.ItemValue == item.JobNumber).RowNumber; sec.WorkPerformance = ConvertHelper.To<decimal?>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "工作量绩效工资")?.ItemValue);
sec.RowNumber = rownumber ?? 0; sec.DeptReward = ConvertHelper.To<decimal?>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "科室单项奖励")?.ItemValue);
sec.WorkPost = fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "职称").ItemValue; sec.DistPerformance = distperfor;
sec.TitlePerfor = ConvertHelper.To<decimal>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "职称绩效").ItemValue); sec.OtherPerformance = ConvertHelper.To<decimal?>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "医院其他绩效")?.ItemValue);
sec.WorkPerformance = ConvertHelper.To<decimal>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "工作量绩效工资").ItemValue); sec.NightWorkPerformance = nightworkperfor;
sec.DeptReward = ConvertHelper.To<decimal>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "科室单项奖励").ItemValue);
sec.DistPerformance = ConvertHelper.To<decimal>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "可分配绩效").ItemValue);
sec.OtherPerformance = ConvertHelper.To<decimal>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "医院其他绩效").ItemValue);
sec.NightWorkPerformance = ConvertHelper.To<decimal>(fixaitems.FirstOrDefault(t => t.RowNumber == rownumber && t.ItemName == "夜班工作量绩效").ItemValue);
}
result.Add(sec); result.Add(sec);
} }
return result.OrderBy(t => t.RowNumber).ToList(); return result.OrderBy(t => t.RowNumber).ToList();
......
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