预留比例

parent 1e09602b
...@@ -192,7 +192,10 @@ public ApiResponse AllCompute([FromBody] ComputerRequest request) ...@@ -192,7 +192,10 @@ public ApiResponse AllCompute([FromBody] ComputerRequest request)
if (null == allot) if (null == allot)
throw new PerformanceException("当前绩效记录不存在"); throw new PerformanceException("当前绩效记录不存在");
var isShowManage = _computeService.IsShowManage(request.AllotId); var isShowManage = _computeService.IsShowManage(request.AllotId);
var list = isShowManage == 1 ? _computeService.AllCompute(request.AllotId) : _computeService.AllManageCompute(request.AllotId); var list = isShowManage == 1
? _computeService.AllCompute(request.AllotId)
: _computeService.AllManageCompute(request.AllotId);
return new ApiResponse(ResponseType.OK, "ok", list); return new ApiResponse(ResponseType.OK, "ok", list);
} }
......
...@@ -2351,6 +2351,16 @@ ...@@ -2351,6 +2351,16 @@
实发绩效 实发绩效
</summary> </summary>
</member> </member>
<member name="P:Performance.DtoModels.ComputeResponse.ReservedRatio">
<summary>
预留比例
</summary>
</member>
<member name="P:Performance.DtoModels.ComputeResponse.ReservedRatioFee">
<summary>
预留比例金额
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDataDetails`1.Pandect"> <member name="P:Performance.DtoModels.DeptDataDetails`1.Pandect">
<summary> 概览</summary> <summary> 概览</summary>
</member> </member>
......
...@@ -3479,6 +3479,11 @@ ...@@ -3479,6 +3479,11 @@
绩效Id 绩效Id
</summary> </summary>
</member> </member>
<member name="P:Performance.EntityModels.per_employee.ReservedRatio">
<summary>
预留比例
</summary>
</member>
<member name="P:Performance.EntityModels.per_employee.CreateTime"> <member name="P:Performance.EntityModels.per_employee.CreateTime">
<summary> <summary>
......
...@@ -31,9 +31,20 @@ public class ComputeResponse ...@@ -31,9 +31,20 @@ public class ComputeResponse
/// </summary> /// </summary>
public string JobTitle { get; set; } public string JobTitle { get; set; }
/// <summary> /// <summary>
/// 实发绩效 /// 实发绩效
/// </summary> /// </summary>
public Nullable<decimal> RealGiveFee { get; set; } public Nullable<decimal> RealGiveFee { get; set; }
/// <summary>
/// 预留比例
/// </summary>
public decimal ReservedRatio { get; set; }
/// <summary>
/// 预留比例金额
/// </summary>
public decimal ReservedRatioFee { get; set; }
} }
} }
...@@ -112,6 +112,11 @@ public class per_employee ...@@ -112,6 +112,11 @@ public class per_employee
public Nullable<int> AllotId { get; set; } public Nullable<int> AllotId { get; set; }
/// <summary> /// <summary>
/// 预留比例
/// </summary>
public Nullable<decimal> ReservedRatio { get; set; }
/// <summary>
/// ///
/// </summary> /// </summary>
public Nullable<DateTime> CreateTime { get; set; } public Nullable<DateTime> CreateTime { get; set; }
......
...@@ -29,6 +29,7 @@ public class ComputeService : IAutoInjection ...@@ -29,6 +29,7 @@ public class ComputeService : IAutoInjection
private readonly PerforHospitalRepository hospitalRepository; private readonly PerforHospitalRepository hospitalRepository;
private readonly PerforPerapramountRepository perapramountRepository; private readonly PerforPerapramountRepository perapramountRepository;
private readonly PerforCofcmiRepository cofcmiRepository; private readonly PerforCofcmiRepository cofcmiRepository;
private readonly PerforPeremployeeRepository perforPeremployeeRepository;
private readonly PerforCofworkitemRepository cofworkitemRepository; private readonly PerforCofworkitemRepository cofworkitemRepository;
public ComputeService(PerforResaccountRepository perforResaccountRepository, public ComputeService(PerforResaccountRepository perforResaccountRepository,
...@@ -46,6 +47,7 @@ public class ComputeService : IAutoInjection ...@@ -46,6 +47,7 @@ public class ComputeService : IAutoInjection
PerforHospitalRepository hospitalRepository, PerforHospitalRepository hospitalRepository,
PerforPerapramountRepository perapramountRepository, PerforPerapramountRepository perapramountRepository,
PerforCofcmiRepository cofcmiRepository, PerforCofcmiRepository cofcmiRepository,
PerforPeremployeeRepository perforPeremployeeRepository,
PerforCofworkitemRepository cofworkitemRepository) PerforCofworkitemRepository cofworkitemRepository)
{ {
this.perforResaccountRepository = perforResaccountRepository; this.perforResaccountRepository = perforResaccountRepository;
...@@ -63,6 +65,7 @@ public class ComputeService : IAutoInjection ...@@ -63,6 +65,7 @@ public class ComputeService : IAutoInjection
this.hospitalRepository = hospitalRepository; this.hospitalRepository = hospitalRepository;
this.perapramountRepository = perapramountRepository; this.perapramountRepository = perapramountRepository;
this.cofcmiRepository = cofcmiRepository; this.cofcmiRepository = cofcmiRepository;
this.perforPeremployeeRepository = perforPeremployeeRepository;
this.cofworkitemRepository = cofworkitemRepository; this.cofworkitemRepository = cofworkitemRepository;
} }
...@@ -423,6 +426,7 @@ public List<ComputeResponse> AllCompute(int allotId) ...@@ -423,6 +426,7 @@ public List<ComputeResponse> AllCompute(int allotId)
var allot = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId && mTypes.Contains(t.AccountType))?.OrderByDescending(t => t.AccountingUnit); var allot = _perforRescomputeRepository.GetEntities(t => t.AllotID == allotId && mTypes.Contains(t.AccountType))?.OrderByDescending(t => t.AccountingUnit);
list = Mapper.Map<List<ComputeResponse>>(allot); list = Mapper.Map<List<ComputeResponse>>(allot);
list?.ForEach(t => t.Source = "一次绩效"); list?.ForEach(t => t.Source = "一次绩效");
var again = _perforAgcomputeRepository.GetEntities(t => t.AllotId == allotId); var again = _perforAgcomputeRepository.GetEntities(t => t.AllotId == allotId);
if (again != null && again.Any()) if (again != null && again.Any())
{ {
...@@ -445,7 +449,20 @@ public List<ComputeResponse> AllCompute(int allotId) ...@@ -445,7 +449,20 @@ public List<ComputeResponse> AllCompute(int allotId)
RealGiveFee = t.fee RealGiveFee = t.fee
}).OrderByDescending(t => t.AccountingUnit)); }).OrderByDescending(t => t.AccountingUnit));
} }
return AddAprAmount(allotId, list); var result = AddAprAmount(allotId, list);
if (result != null)
{
var empDic = perforPeremployeeRepository.GetEntities(w => w.AllotId == allotId);
foreach (var item in result)
{
var temp = item.RealGiveFee ?? 0;
item.ReservedRatio = empDic.FirstOrDefault(w => w.DoctorName == item.EmployeeName && w.PersonnelNumber == item.JobNumber)?.ReservedRatio ?? 0;
item.ReservedRatioFee = temp * item.ReservedRatio;
item.RealGiveFee = temp - item.ReservedRatioFee;
}
}
return result;
} }
/// <summary> /// <summary>
...@@ -495,7 +512,19 @@ public List<ComputeResponse> AllManageCompute(int allotId) ...@@ -495,7 +512,19 @@ public List<ComputeResponse> AllManageCompute(int allotId)
RealGiveFee = t.fee RealGiveFee = t.fee
}).OrderByDescending(t => t.AccountingUnit)); }).OrderByDescending(t => t.AccountingUnit));
} }
return AddAprAmount(allotId, list); var result = AddAprAmount(allotId, list);
if (result != null)
{
var empDic = perforPeremployeeRepository.GetEntities(w => w.AllotId == allotId);
foreach (var item in result)
{
var temp = item.RealGiveFee ?? 0;
item.ReservedRatio = empDic.FirstOrDefault(w => w.DoctorName == item.EmployeeName && w.PersonnelNumber == item.JobNumber)?.ReservedRatio ?? 0;
item.ReservedRatioFee = temp * item.ReservedRatio;
item.RealGiveFee = temp - item.ReservedRatioFee;
}
}
return result;
} }
public res_compute GetComputeSingle(int computeid) public res_compute GetComputeSingle(int computeid)
......
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