考勤统计补全0的类型

parent ee3a94d1
......@@ -292,8 +292,8 @@ public ApiResponse BatchCallIn(int allotId, int hospitalId, SaveCollectData requ
public ApiResponse<List<per_attendance_type>> GetAttendanceType(int allotId, int hospitalId)
{
var result = perfoPperAttendanceTypeRepository.GetEntities(t => t.AllotId == allotId && t.HospitalId == hospitalId).ToList();
if(result != null)
return new ApiResponse<List<per_attendance_type>>(ResponseType.OK, result);
if (result != null)
return new ApiResponse<List<per_attendance_type>>(ResponseType.OK, result);
else
{
return new ApiResponse<List<per_attendance_type>>(ResponseType.Fail);
......@@ -525,8 +525,8 @@ public ApiResponse AttendanceBatch(int allotId, int hospitalId, SaveCollectData
}
if(any)
error.Add(new Dictionary<string, string>
if (any)
error.Add(new Dictionary<string, string>
{
{ "行号", $"第{i+1}行" },
{ "人员工号", newAttendanceVacatione[i].PersonnelNumber??"" },
......@@ -634,12 +634,20 @@ public ApiResponse<List<AttendanceStatistics>> GetAttendanceStatistics(int allot
})
.ToList();
int vacationesDays = 0;
foreach (var item in stat.Detial)
foreach (var item in types)
{
if (!item.Remark.Contains("不核减"))
vacationesDays += item.Value;
if (!stat.Detial.Any(w => w.Title == item.AttendanceName))
{
stat.Detial.Add(new AttendanceStatisticsDetial
{
Title = item.AttendanceName,
Value = 0,
Remark = item.IsDeduction == (int)Attendance.Deduction.核减 ? "核减" : "不核减",
});
}
}
int vacationesDays = stat.Detial.Where(w => !w.Remark.Contains("不核减")).Sum(w => w.Value);
stat.AttendanceDays = SplitEveryDay(stat.BeginDate, stat.EndDate).Where(date => date >= stat.BeginDate && date <= stat.EndDate).Count() - vacationesDays;
}
return new ApiResponse<List<AttendanceStatistics>>(ResponseType.OK, "", statistics);
......
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