Commit 4277dd64 by lcx

增加人事科全员绩效列表;绩效生成时,生成二次绩效列表,二次绩效带出绩效状态states,控制部分按钮展示

parent 2b9f2a5a
...@@ -188,6 +188,9 @@ public ApiResponse Generate([CustomizeValidator(RuleSet = "Delete"), FromBody] A ...@@ -188,6 +188,9 @@ public ApiResponse Generate([CustomizeValidator(RuleSet = "Delete"), FromBody] A
logManageService.WriteMsg("等待绩效生成", $"等待绩效生成{allot.Year}-{allot.Month.ToString().PadLeft(2, '0')}月份绩效!", 1, allot.ID, "ReceiveMessage"); logManageService.WriteMsg("等待绩效生成", $"等待绩效生成{allot.Year}-{allot.Month.ToString().PadLeft(2, '0')}月份绩效!", 1, allot.ID, "ReceiveMessage");
//_allotService.Generate(allot, email); //_allotService.Generate(allot, email);
////BackgroundJob.Enqueue(() => _allotService.Generate(allot, email)); ////BackgroundJob.Enqueue(() => _allotService.Generate(allot, email));
///
// 科室下发
resultComputeService.GenerateSecondAllot(allot);
return new ApiResponse(ResponseType.OK); return new ApiResponse(ResponseType.OK);
} }
...@@ -269,8 +272,6 @@ public ApiResponse Issued([FromBody] AllotRequest request) ...@@ -269,8 +272,6 @@ public ApiResponse Issued([FromBody] AllotRequest request)
if (null == allot) if (null == allot)
throw new PerformanceException("当前绩效记录不存在"); throw new PerformanceException("当前绩效记录不存在");
_allotService.UpdateAllotStates(allot.ID, (int)AllotStates.GenerateSucceed, EnumHelper.GetDescription(AllotStates.GenerateSucceed)); _allotService.UpdateAllotStates(allot.ID, (int)AllotStates.GenerateSucceed, EnumHelper.GetDescription(AllotStates.GenerateSucceed));
// 科室下发
resultComputeService.GenerateSecondAllot(allot);
return new ApiResponse(ResponseType.OK); return new ApiResponse(ResponseType.OK);
} }
......
...@@ -265,6 +265,41 @@ public ApiResponse AllManageCompute([FromBody] ComputerRequest request) ...@@ -265,6 +265,41 @@ public ApiResponse AllManageCompute([FromBody] ComputerRequest request)
} }
/// <summary> /// <summary>
/// 获取全院绩效列表(人事科)
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("allcompute/personnel")]
[HttpPost]
public ApiResponse AllComputeByPM([FromBody] ComputerRequest request)
{
var allot = _allotService.GetAllot(request.AllotId);
if (null == allot)
throw new PerformanceException("当前绩效记录不存在");
var isShowManage = _computeService.IsShowManage(request.AllotId);
var list = _computeService.AllCompute(request.AllotId, isShowManage);
if (list == null || !list.Any())
return new ApiResponse(ResponseType.OK, "ok", list);
var result = list.GroupBy(t => new { t.Source, t.EmployeeName, t.JobNumber }).Select(t => new ComputeResponse
{
Source = t.Key.Source,
EmployeeName = t.Key.EmployeeName,
JobNumber = t.Key.JobNumber,
PerforSumFee = t.Sum(s => s.PerforSumFee),
PerforManagementFee = t.Sum(s => s.PerforManagementFee),
ShouldGiveFee = t.Sum(s => s.ShouldGiveFee),
OthePerfor = t.Sum(s => s.OthePerfor),
NightWorkPerfor = t.Sum(s => s.NightWorkPerfor),
RealGiveFee = t.Sum(s => s.RealGiveFee),
//ReservedRatio = t.Sum(s => s.ReservedRatio),
//ReservedRatioFee = t.Sum(s => s.ReservedRatioFee),
});
return new ApiResponse(ResponseType.OK, "ok", result);
}
/// <summary>
/// 修改实发绩效 /// 修改实发绩效
/// </summary> /// </summary>
/// <param name="request"></param> /// <param name="request"></param>
......
...@@ -373,6 +373,13 @@ ...@@ -373,6 +373,13 @@
<param name="request"></param> <param name="request"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Performance.Api.Controllers.ComputeController.AllComputeByPM(Performance.DtoModels.ComputerRequest)">
<summary>
获取全院绩效列表(人事科)
</summary>
<param name="request"></param>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.ComputeController.UpdateRealfee(Performance.DtoModels.ComputerRequest)"> <member name="M:Performance.Api.Controllers.ComputeController.UpdateRealfee(Performance.DtoModels.ComputerRequest)">
<summary> <summary>
修改实发绩效 修改实发绩效
......
...@@ -3125,6 +3125,13 @@ ...@@ -3125,6 +3125,13 @@
<member name="P:Performance.DtoModels.SecondListResponse.IsArchive"> <member name="P:Performance.DtoModels.SecondListResponse.IsArchive">
<summary> 是否归档 </summary> <summary> 是否归档 </summary>
</member> </member>
<member name="P:Performance.DtoModels.SecondListResponse.States">
<summary>
0 数据未上传 1 数据已上传 2 正在校验数据 3 数据验证通过
4 数据错误 5 正在生成绩效 6 下发绩效 7 绩效解析失败
8 归档 9 等待生成 10 绩效结果解析成功
</summary>
</member>
<member name="P:Performance.DtoModels.SecondPerforResponse.EmployeeName"> <member name="P:Performance.DtoModels.SecondPerforResponse.EmployeeName">
<summary> <summary>
人员姓名 人员姓名
......
...@@ -9,5 +9,12 @@ public class SecondListResponse : ag_secondallot ...@@ -9,5 +9,12 @@ public class SecondListResponse : ag_secondallot
{ {
/// <summary> 是否归档 </summary> /// <summary> 是否归档 </summary>
public int IsArchive { get; set; } public int IsArchive { get; set; }
/// <summary>
/// 0 数据未上传 1 数据已上传 2 正在校验数据 3 数据验证通过
/// 4 数据错误 5 正在生成绩效 6 下发绩效 7 绩效解析失败
/// 8 归档 9 等待生成 10 绩效结果解析成功
/// </summary>
public int States { get; set; }
} }
} }
...@@ -121,7 +121,12 @@ public List<SecondListResponse> GetSecondList(int userId) ...@@ -121,7 +121,12 @@ public List<SecondListResponse> GetSecondList(int userId)
var secondList = perforAgsecondallotRepository.GetEntities(exp); var secondList = perforAgsecondallotRepository.GetEntities(exp);
var list = Mapper.Map<List<SecondListResponse>>(secondList); var list = Mapper.Map<List<SecondListResponse>>(secondList);
list?.ForEach(t => t.IsArchive = allotList.FirstOrDefault(a => a.ID == t.AllotId).States == 8 ? 1 : 0); list?.ForEach(t =>
{
var states = allotList.FirstOrDefault(a => a.ID == t.AllotId).States;
t.IsArchive = states == 8 ? 1 : 0;
t.States = states;
});
return list; return list;
} }
......
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