Commit c0dd265b by wyc

考核管理 继承上月,字段修改

parent 3e1e16a1
......@@ -902,6 +902,7 @@ public ApiResponse CopyDropDown()
new CopyDrop{Label="支出费用类别",Value="drugTypeDisburses"},
new CopyDrop{Label="费用类别系数",Value="drugTypeFactors"},
new CopyDrop{Label="考勤类型",Value="attendanceType"},
new CopyDrop{Label="绩效考核",Value="assessType"},
//new CopyDrop{Label="科室类型",Value="deptTypes"},
new CopyDrop{Label="二次绩效配置",Value="agains"},
};
......
......@@ -10241,9 +10241,14 @@
状态
</summary>
</member>
<member name="P:Performance.EntityModels.Other.view_assess_result.AssessScore">
<summary>
分值标准
</summary>
</member>
<member name="P:Performance.EntityModels.Other.view_assess_result.Score">
<summary>
分值
分值
</summary>
</member>
<member name="P:Performance.EntityModels.Other.view_assess_result.UnitCode">
......
......@@ -119,7 +119,7 @@ public class AssessSchemeResultListResponse
/// <summary>
/// 合计
/// </summary>
public int? TotalAssessScore { get; set; }
public decimal? TotalAssessScore { get; set; }
}
public class AssessSchemeDictionaryResults
{
......@@ -236,7 +236,7 @@ public class AssessSchemeEnterDetaiListResponse
/// <summary>
/// 考核分值
/// </summary>
public int? AssessScore { get; set; }
public decimal AssessScore { get; set; }
/// <summary>
/// 考核扣分
/// </summary>
......
......@@ -30,7 +30,11 @@ public class view_assess_result
/// </summary>
public int State { get; set; }
/// <summary>
/// 分值
/// 分值标准
/// </summary>
public decimal? AssessScore { get; set; }
/// <summary>
/// 扣分值
/// </summary>
public decimal? Score { get; set; }
/// <summary>
......
......@@ -28,12 +28,12 @@ public class AssessNewService : IAutoInjection
private readonly ILogger<AssessNewService> logger;
private readonly IWebHostEnvironment evn;
private readonly PerforUserRepository _userRepository;
private readonly PerforPerAssessCategoryRepository perforPerAssessCategoryRepository;
private readonly PerforCofaccountingRepository cofaccountingRepository;
private readonly PerforPerallotRepository perforPerallotRepository;
private readonly PerforPerAssessCategoryRepository perforPerAssessCategoryRepository;
private readonly PerforPerAssessSchemeRepository perforPerAssessSchemeRepository;
private readonly PerforPerAssessSchemeItemsRepository perforPerAssessSchemeItemsRepository;
private readonly PerforPerAssessSchemeTargetRepository perforPerAssessSchemeTargetRepository;
private readonly PerforCofaccountingRepository cofaccountingRepository;
private readonly PerforPerAssessIssueSchemeRepository perforPerAssessIssueSchemeRepository;
public AssessNewService(
......@@ -697,7 +697,7 @@ public ApiResponse SchemeItemsUpload(int schemeId, int allotId, IFormCollection
eAssessScore = String.IsNullOrEmpty(eAssessScore) ? "0" : eAssessScore;
error.AddIf(string.IsNullOrEmpty(eItemName1), item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "一级指标名称空值无效,请检查后重试!");
error.AddIf(string.IsNullOrEmpty(eItemName2), item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "二级指标名称空值无效,请检查后重试!");
error.AddIf(!int.TryParse(eAssessScore, out int eAScore), item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "考核分值填写无效,请检查后重试!");
error.AddIf(!decimal.TryParse(eAssessScore, out decimal eAScore), item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "考核分值填写无效,请检查后重试!");
error.AddIf(eAScore == 0, item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "考核分值不能为0,请检查后重试!");
error.AddIf(string.IsNullOrEmpty(eAssessNorm), item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "考核标准空值无效,请检查后重试!");
error.AddIf(string.IsNullOrEmpty(eUnitType), item.index, "", eItemName1, eItemName2, eAssessScore, eAssessNorm, eAccountingUnit, "考核单元组别空值无效,请检查后重试!");
......@@ -894,9 +894,11 @@ public PagedList<AssessSchemeResultListResponse> SchemeResultList(QuerySchemeRes
TargetUnitType = item.TargetUnitType,
TargetAccountingUnit = item.TargetAccountingUnit,
ItemName2 = item.ItemName2,
Score = item.Score,
Score = (item.Score==null?0: item.Score) + item.AssessScore,
};
}).ToList();
var columns = data.Select(item => item.ItemName2).Distinct().ToList();
var results = data.GroupBy(item => new { item.TargetUnitType, item.TargetAccountingUnit })
.Select(t =>
......@@ -906,25 +908,25 @@ public PagedList<AssessSchemeResultListResponse> SchemeResultList(QuerySchemeRes
{ "TargetUnitType" , t.Key.TargetUnitType },
{ "TargetAccountingUnit" , t.Key.TargetAccountingUnit },
};
var asb = new List<AssessSchemeDictionaryResults>();
var newResultss = new List<AssessSchemeDictionaryResults>();
foreach (var column in columns)
{
var score = t.Where(w => w.ItemName2 == column).Sum(w => w.Score);
var score = t.FirstOrDefault(w => w.ItemName2 == column).Score;
dict.Add(column, score);
var a = new AssessSchemeDictionaryResults()
var newResults = new AssessSchemeDictionaryResults()
{
Title = column,
Value = score
};
asb.Add(a);
newResultss.Add(newResults);
}
var totalAssessScore = dict.Where(w => columns.Contains(w.Key)).Sum(w => (int)w.Value);
var totalAssessScore = dict.Where(w => columns.Contains(w.Key)).Sum(w => (decimal?)w.Value);
dict.AddOrUpdate("TotalAssessScore", totalAssessScore);
return new AssessSchemeResultListResponse()
{
TargetUnitType = t.Key.TargetUnitType,
TargetAccountingUnit = t.Key.TargetAccountingUnit,
DictionaryResults = asb,
DictionaryResults = newResultss,
TotalAssessScore = totalAssessScore
};
}).ToList();
......@@ -948,7 +950,7 @@ public PagedList<AssessSchemeEnterDetaiListResponse> SchemeEnterDetailList(Query
if (!string.IsNullOrEmpty(query.ItemName2))
issueSchemesQuery = issueSchemesQuery.Where(w => w.ItemName2 == query.ItemName2);
if ((int)query.State == (int)Assess.AssessState.审核通过)
issueSchemesQuery = issueSchemesQuery.Where(w => w.State == (int)query.State);
issueSchemesQuery = issueSchemesQuery.Where(w => w.State == (int)query.State);
var result = issueSchemesQuery.ToList();
var stateOrders = new int[] { (int)Assess.AssessState.待审核, (int)Assess.AssessState.驳回, (int)Assess.AssessState.审核通过, (int)Assess.AssessState.未提交 };
......@@ -1058,10 +1060,10 @@ public ApiResponse SchemeEnterUpload(int itemId, IFormCollection form, int useri
var eScoreRemark = item.value.GetOrAdd("扣分原因", "")?.ToString() ?? "";
eScore = String.IsNullOrEmpty(eScore) ? "0" : eScore;
eAssessScore = String.IsNullOrEmpty(eAssessScore) ? "0" : eAssessScore;
int.TryParse(eAssessScore, out int eAScore);
decimal.TryParse(eAssessScore, out decimal eAScore);
error.AddIf(string.IsNullOrEmpty(eTargetAccountingUnit), item.index, eTargetAccountingUnit, eTargetUnitType, eItemName1, eItemName2, eAssessScore, eScore, eScoreRemark, "核算单元空值无效,请检查后重试!");
error.AddIf(string.IsNullOrEmpty(eTargetUnitType), item.index, eTargetAccountingUnit, eTargetUnitType, eItemName1, eItemName2, eAssessScore, eScore, eScoreRemark, "核算单元空值无效,请检查后重试!");
error.AddIf(!int.TryParse(eScore, out int escore), item.index, eTargetAccountingUnit, eTargetUnitType, eItemName1, eItemName2, eAssessScore, eScore, eScoreRemark, "考核扣分值无效,请检查后重试!");
error.AddIf(!decimal.TryParse(eScore, out decimal escore), item.index, eTargetAccountingUnit, eTargetUnitType, eItemName1, eItemName2, eAssessScore, eScore, eScoreRemark, "考核扣分值无效,请检查后重试!");
error.AddIf(escore > eAScore, item.index, eTargetAccountingUnit, eTargetUnitType, eItemName1, eItemName2, eAssessScore, eScore, eScoreRemark, "考核扣分大于考核分值,请检查后重试!");
var issueData = issueDatas.FirstOrDefault(w => w.ItemId == itemId && w.TargetAccountingUnit == eTargetAccountingUnit && w.TargetUnitType == eTargetUnitType);
......
......@@ -741,7 +741,7 @@ public void Copy(per_allot allot)
NewCopy(new CopyRequest()
{
AllotId = allot.ID,
Type = new[] { "personnels", "workItems", "drugTypeDisburses", "drugTypeFactors", "deptTypes", "agains", "accountings", "department", "attendanceType" }
Type = new[] { "personnels", "workItems", "drugTypeDisburses", "drugTypeFactors", "deptTypes", "agains", "accountings", "department", "attendanceType", "assessType" }
});
}
......@@ -769,6 +769,7 @@ public void NewCopy(CopyRequest request)
{ "agains", (allot, prevAllotId) =>_copyService.Copy_Agains(allot, prevAllotId, delHistotyData:true) },
{ "accountings", (allot, prevAllotId) =>_copyService.Copy_Accountings(allot, prevAllotId, delHistotyData:true) },
{ "attendanceType", (allot, prevAllotId) =>_copyService.Copy_AttendanceType(allot, prevAllotId, delHistotyData:true) },
{ "assessType", (allot, prevAllotId) =>_copyService.Copy_AssessType(allot, prevAllotId, delHistotyData:true) },
{ "department", (allot, prevAllotId) =>_copyService.Copy_DeptDic(allot, prevAllotId, delHistotyData:true) },
};
......
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