Commit fee18f0b by 李承祥

保存二次绩效信息时,增加删除功能

parent a02ec5e0
......@@ -44,10 +44,13 @@ public ApiResponse List()
/// 二次绩效项目内容保存
/// </summary>
/// <returns></returns>
[Route("api/second/savevalue")]
[Route("api/second/savevalue/{secondid}")]
[HttpPost]
public ApiResponse SaveValue([FromBody]List<ag_fixatitem> request)
public ApiResponse SaveValue(int secondid, [FromBody]List<ag_fixatitem> request)
{
if (secondid != 0 && (request == null || request.Count == 0))
secondAllotService.DelValue(secondid, request);
var allotCount = request.Where(t => t.AllotId > 0).Select(t => t.AllotId).Distinct().Count();
if (allotCount != 1 || request.Any(t => t.AllotId == 0))
throw new PerformanceException("一次绩效ID错误");
......
......@@ -745,7 +745,7 @@
</summary>
<returns></returns>
</member>
<member name="M:Performance.Api.Controllers.SecondAllotController.SaveValue(System.Collections.Generic.List{Performance.EntityModels.ag_fixatitem})">
<member name="M:Performance.Api.Controllers.SecondAllotController.SaveValue(System.Int32,System.Collections.Generic.List{Performance.EntityModels.ag_fixatitem})">
<summary>
二次绩效项目内容保存
</summary>
......
......@@ -182,6 +182,8 @@ public bool UseTemp(UseTempRequest request)
return result;
var fixatList = perforAgfixatitemRepository.GetEntities(t => secondId.Contains(t.SecondId.Value));
#region 获取需要添加的数据 无需操作的数据
foreach (var second in secondList)
{
foreach (var head in headItems)
......@@ -213,6 +215,7 @@ public bool UseTemp(UseTempRequest request)
}
}
}
#endregion
if (list != null && list.Count > 0)
{
var delList = fixatList.Except(list);
......@@ -318,7 +321,7 @@ public bool SaveValue(List<ag_fixatitem> request)
perforAgfixatitemRepository.Add(item);
}
}
return true;
return DelValue(second.Id, request);
}
/// <summary>
......@@ -353,7 +356,7 @@ public bool SaveCompute(List<ag_compute> request)
}
/// <summary>
/// 新增
/// 新增工作量绩效配置
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
......@@ -382,7 +385,7 @@ public bool WorkloadAdd(WorkloadRequest request)
}
/// <summary>
/// 修改
/// 修改工作量绩效配置
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
......@@ -405,7 +408,7 @@ public bool WorkloadUpdate(WorkloadRequest request)
}
/// <summary>
/// 删除
/// 删除工作量绩效配置
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
......@@ -504,6 +507,30 @@ public SecondResponse GetSecondDetail(UseTempRequest request)
};
}
/// <summary>
/// 删除未保存的历史数据
/// </summary>
/// <param name="secondId"></param>
/// <param name="fixatitems"></param>
/// <returns></returns>
public bool DelValue(int secondId, List<ag_fixatitem> fixatitems)
{
if (secondId == 0)
throw new PerformanceException("二次绩效Id无效");
var fixatlist = perforAgfixatitemRepository.GetEntities(t => t.SecondId == secondId);
if (fixatitems == null || fixatitems.Count == 0)
{
return perforAgfixatitemRepository.RemoveRange(fixatlist.ToArray());
}
var saveRows = fixatitems.Select(t => t.RowNumber).Distinct();
var delRows = fixatlist.Select(t => t.RowNumber).Distinct().Except(saveRows);
if (delRows != null && delRows.Count() > 0)
return perforAgfixatitemRepository.RemoveRange(fixatlist.Where(t => delRows.Contains(t.RowNumber)).ToArray());
return true;
}
/// <summary>
/// 获取 列
......
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