Commit 42cc5fc5 by ruyun.zhang

考勤上报结果动态计算

parent 0e7acd0c
......@@ -15,6 +15,7 @@
using static Performance.Services.ExtractExcelService.WriteDataHelper;
using System.Linq;
using Performance.Infrastructure;
using System.ComponentModel;
namespace Performance.Api.Controllers
{
......@@ -662,17 +663,66 @@ public ApiResponse DeptSave(int allotId, string unitType, [FromBody] List<Attend
/// <param name="unitType">核算组别</param>
/// <param name="accountingUnit">核算单元</param>
/// <param name="searchTxet">工号/姓名</param>
/// <param name="datas"></param>
/// <returns></returns>
[HttpPost]
[Route("dept/compute")]
public ApiResponse<List<AttendanceStatistics>> DeptCompute(int allotId, string unitType, string accountingUnit, string searchTxet)
public ApiResponse<List<AttendanceStatistics>> DeptCompute(int allotId, string unitType, string accountingUnit, string searchTxet, [FromBody] List<AttendanceDept> datas)
{
if (!Enum.TryParse(unitType, out UnitType unitType1))
throw new PerformanceException("核算组别错误");
if (string.IsNullOrEmpty(accountingUnit))
throw new PerformanceException("核算单元错误");
var deptDetail = _attendanceService.DeptDetail(allotId, unitType, accountingUnit, searchTxet)?.Data?.Data ?? new List<AttendanceDeptMore>();
List<AttendanceDeptMore> deptDetail = new List<AttendanceDeptMore>();
if (datas?.Any() != true)
{
deptDetail = _attendanceService.DeptDetail(allotId, unitType, accountingUnit, searchTxet)?.Data?.Data ?? new List<AttendanceDeptMore>();
}
else
{
deptDetail = datas.Select(w => new AttendanceDeptMore
{
AllotId = allotId,
Code = "",
UnitType = unitType,
AccountingUnit = accountingUnit,
PersonnelNumber = w.PersonnelNumber,
PersonnelName = w.PersonnelName,
PermanentStaff = w.PermanentStaff,
AuditTime = DateTime.Now,
AuditUser = "",
Day01 = w.Day01,
Day02 = w.Day02,
Day03 = w.Day03,
Day04 = w.Day04,
Day05 = w.Day05,
Day06 = w.Day06,
Day07 = w.Day07,
Day08 = w.Day08,
Day09 = w.Day09,
Day10 = w.Day10,
Day11 = w.Day11,
Day12 = w.Day12,
Day13 = w.Day13,
Day14 = w.Day14,
Day15 = w.Day15,
Day16 = w.Day16,
Day17 = w.Day17,
Day18 = w.Day18,
Day19 = w.Day19,
Day20 = w.Day20,
Day21 = w.Day21,
Day22 = w.Day22,
Day23 = w.Day23,
Day24 = w.Day24,
Day25 = w.Day25,
Day26 = w.Day26,
Day27 = w.Day27,
Day28 = w.Day28,
Day29 = w.Day29,
Day30 = w.Day30,
Day31 = w.Day31,
}).ToList();
}
return _attendanceService.DeptCompute(allotId, deptDetail);
}
......
......@@ -544,7 +544,7 @@
<param name="datas"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.AttendanceController.DeptCompute(System.Int32,System.String,System.String,System.String)">
<member name="M:Performance.Api.Controllers.AttendanceController.DeptCompute(System.Int32,System.String,System.String,System.String,System.Collections.Generic.List{Performance.DtoModels.Request.AttendanceDept})">
<summary>
科室考勤上报录入结果统计
</summary>
......@@ -552,6 +552,7 @@
<param name="unitType">核算组别</param>
<param name="accountingUnit">核算单元</param>
<param name="searchTxet">工号/姓名</param>
<param name="datas"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.AttendanceController.DownloadDeptCompute(System.Int32,System.String,System.String,System.String)">
......@@ -601,7 +602,7 @@
<param name="searchTxet">工号/姓名</param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.AttendanceController.DeptDetailDownload(System.Int32,System.String,System.String,System.String,System.String)">
<member name="M:Performance.Api.Controllers.AttendanceController.DeptDetailDownload(System.Int32,System.String,System.String,System.String)">
<summary>
科室考勤上报结果详情下载
</summary>
......@@ -609,7 +610,6 @@
<param name="unitType">核算组别</param>
<param name="accountingUnit">核算单元</param>
<param name="searchTxet">工号/姓名</param>
<param name="fileName"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.AttendanceController.DeptReport(System.Int32,System.String,System.String,System.String)">
......
......@@ -1319,7 +1319,7 @@ public ApiResponse ChooseStatistics(AttendanceIssueChoose attendanceIssueChoose,
public ApiResponse<List<AttendanceDeptAuditList>> DeptAuditList(int allotId, string unitType, string accountingUnit, int? state = -1)
{
var attendanceDepts = _attendanceDeptRepository.GetEntities((w) => w.AllotId == allotId);
var stateOrders = new int[] { (int)Attendance.Report.未提交, (int)Attendance.Report.提交, (int)Attendance.Report.驳回, (int)Attendance.Report.通过 };
var stateOrders = new int[] { (int)Attendance.Report.提交, (int)Attendance.Report.驳回, (int)Attendance.Report.通过, (int)Attendance.Report.未提交 };
var items = attendanceDepts.GroupBy(w => new { w.Code, w.UnitType, w.AccountingUnit })
.Select(w => new AttendanceDeptAuditList
{
......
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