Commit 8066c30e by wyc

科室详情设置 更新默认值

parent ef052def
......@@ -5485,6 +5485,46 @@
<member name="P:Performance.DtoModels.UniteDeptDetailResponse.ShowFormula">
<summary> 0 不显示 1 显示 </summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.Title">
<summary>
显示标题
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.Total">
<summary>
总额
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.TotalFormat">
<summary>
格式化后总额
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.Remark">
<summary>
备注
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.Sort">
<summary>
排序
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.Display">
<summary>
是否显示
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.StandOut">
<summary>
背景颜色突出
</summary>
</member>
<member name="P:Performance.DtoModels.DeptDetailItem.SheetType">
<summary>
原始Sheet类型
</summary>
</member>
<member name="P:Performance.DtoModels.UserIdentity.IsAgainAdmin">
<summary>
是否是二次绩效管理 是为true 否则为false
......@@ -5690,5 +5730,75 @@
title value
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Id">
<summary>
ID 无实际意义,为前端提供
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.ParentId">
<summary>
ParentId 无实际意义,为前端提供
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.SheetType">
<summary>
原始Sheet类型
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Title">
<summary>
显示标题
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Alias">
<summary>
标题别名
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.IsAllowAlias">
<summary>
是否允许设置别名
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Remark">
<summary>
备注
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.IsAllowRemark">
<summary>
是否允许备注
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Format">
<summary>
格式
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.IsAllowFormat">
<summary>
是否允许设置格式
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Sort">
<summary>
排序
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Display">
<summary>
是否显示
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.StandOut">
<summary>
背景颜色突出
</summary>
</member>
<member name="P:Performance.DtoModels.UniteDeptDetailItem.Children">
<summary>
子集
</summary>
</member>
</members>
</doc>
......@@ -216,6 +216,7 @@ public enum DisplayRule
始终隐藏,
始终显示,
下发显示,
总额下发后显示,
}
public enum Format
{
......
......@@ -411,6 +411,13 @@ void RecursionUseSettings(List<DeptDetailItem> detailItems, List<UniteDeptDetail
detail.Display = false;
}
}
else if (cfg?.Display == UniteDept.DisplayRule.总额下发后显示.ToString())
{
if (isSecondAdmin && allot.States != (int)AllotStates.绩效下发 && allot.States != (int)AllotStates.归档)
{
detail.TotalFormat = null;
}
}
detail.Title = string.IsNullOrEmpty(cfg?.Alias?.Trim()) ? detail.Title : cfg?.Alias?.Trim();
// Item里面需要隐藏和格式化的操作
if (detail.Children?.Any() != true && detail.Items?.Any() == true && cfg?.Children?.Any() == true)
......@@ -563,18 +570,18 @@ public List<UniteDeptDetailItem> GetUniteDeptDetailSetting(int allotId)
foreach (var sheet in persheet.Where(t => t.SheetType == sheetType).OrderBy(w => w.SheetName))
{
var sheetName = BeautifulName(sheet.SheetName);
var lcyj = new UniteDeptDetailItem { Title = sheetName, Children = new List<UniteDeptDetailItem>() };
var lcyj = new UniteDeptDetailItem { Title = sheetName, Display = UniteDept.DisplayRule.始终显示.ToString(), Children = new List<UniteDeptDetailItem>() };
lcyj.Children.Add(new UniteDeptDetailItem { Title = "量化指标", IsAllowRemark = false });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "量化分值", IsAllowRemark = false });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "核算比例", IsAllowRemark = false });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "核算分值", IsAllowRemark = false });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "量化指标", IsAllowRemark = false, Format = UniteDept.Format.整数.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString() });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "量化分值", IsAllowRemark = false, Format = UniteDept.Format.整数.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString() });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "核算比例", IsAllowRemark = false, Format = UniteDept.Format.整数.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString() });
lcyj.Children.Add(new UniteDeptDetailItem { Title = "核算分值", IsAllowRemark = false, Format = UniteDept.Format.整数.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString() });
lcUniteDepts.Add(lcyj);
}
}
}
#endregion
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.业绩分值.ToString(), Format = UniteDept.Format.整数.ToString(), Children = lcUniteDepts });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.业绩分值.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString(), Children = lcUniteDepts });
#region 行政工勤
List<UniteDeptDetailItem> gqUniteDepts = new List<UniteDeptDetailItem>();
{
......@@ -606,56 +613,65 @@ public List<UniteDeptDetailItem> GetUniteDeptDetailSetting(int allotId)
gqUniteDepts.Add(gwxs);
}
#endregion
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.业绩绩效.ToString(), Format = UniteDept.Format.整数.ToString(), Remark = "业绩分值 * 预算比例", Children = gqUniteDepts });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.业绩绩效.ToString(), Remark = "业绩分值 * 预算比例", Children = gqUniteDepts });
#region 工作量
List<UniteDeptDetailItem> gzlUniteDepts = new List<UniteDeptDetailItem>();
{
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "项目", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "数量", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "系数", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "药占比系数", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "CMI系数", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "工作量倾斜", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "金额", IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "项目", Display = UniteDept.DisplayRule.始终显示.ToString(), IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "数量", Display = UniteDept.DisplayRule.始终显示.ToString(), IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "系数", Display = UniteDept.DisplayRule.始终显示.ToString(), IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "药占比系数", Display = UniteDept.DisplayRule.始终显示.ToString(), IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "CMI系数", Display = UniteDept.DisplayRule.始终显示.ToString(), IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "工作量倾斜", Display = UniteDept.DisplayRule.始终显示.ToString(), IsAllowRemark = false });
gzlUniteDepts.Add(new UniteDeptDetailItem { Title = "金额", Display = UniteDept.DisplayRule.下发显示.ToString(), IsAllowRemark = false });
}
#endregion
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.工作量绩效.ToString(), Format = UniteDept.Format.整数.ToString(), Children = gzlUniteDepts });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.考核前绩效.ToString(), Format = UniteDept.Format.整数.ToString(), StandOut = true });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.工作量绩效.ToString(), Children = gzlUniteDepts, Display = UniteDept.DisplayRule.总额下发后显示.ToString() });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.考核前绩效.ToString(), StandOut = true });
// 只显示合计没有详情
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.考核后绩效.ToString(), Format = UniteDept.Format.整数.ToString(), StandOut = true, Remark = "考核前绩效 × 考核得分率 + 药占比奖罚 + 材料占比奖罚 + 医院奖罚 + 考核后其他绩效" });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.考核后其他绩效.ToString(), Format = UniteDept.Format.整数.ToString(), });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.调节系数.ToString(), Format = UniteDept.Format.两位小数百分比.ToString(), });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.实发绩效.ToString(), Format = UniteDept.Format.整数.ToString(), StandOut = true, Remark = "考核后绩效 × 调节系数 + 调节后其他绩效" });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.考核后绩效.ToString(), StandOut = true, Remark = "考核前绩效 × 考核得分率 + 药占比奖罚 + 材料占比奖罚 + 医院奖罚 + 考核后其他绩效" });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.考核后其他绩效.ToString(), Format = UniteDept.Format.整数.ToString() });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.调节系数.ToString(), Format = UniteDept.Format.四位小数百分比.ToString() });
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.实发绩效.ToString(), StandOut = true, Remark = "考核后绩效 × 调节系数 + 调节后其他绩效" });
// 显示详情
#region 补全公共附属表明细
var rightSheetTypeMaps = new List<UniteDeptDetailItem>()
{
new UniteDeptDetailItem { Title = UniteDept.Title.预算比例.ToString(), SheetType = (int)SheetType.BudgetRatio, Format = UniteDept.Format.两位小数百分比.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.医院奖罚.ToString(), SheetType = (int)SheetType.AccountExtra, Format = UniteDept.Format.整数.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.考核前其他绩效.ToString(), SheetType = (int)SheetType.AssessBeforeOtherFee, Format = UniteDept.Format.整数.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.药占比奖罚.ToString(), SheetType = (int)SheetType.AccountDrugAssess, Format = UniteDept.Format.整数.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.材料占比奖罚.ToString(), SheetType = (int)SheetType.AccountMaterialsAssess, Format = UniteDept.Format.整数.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.考核得分率.ToString(), SheetType = (int)SheetType.AccountScoreAverage, Format = UniteDept.Format.两位小数百分比.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.调节后其他绩效.ToString(), SheetType = (int)SheetType.AccountAdjustLaterOtherFee, Format = UniteDept.Format.整数.ToString(), },
new UniteDeptDetailItem { Title = UniteDept.Title.预算比例.ToString(), SheetType = (int)SheetType.BudgetRatio, Format = UniteDept.Format.四位小数百分比.ToString() },
new UniteDeptDetailItem { Title = UniteDept.Title.医院奖罚.ToString(), SheetType = (int)SheetType.AccountExtra},
new UniteDeptDetailItem { Title = UniteDept.Title.考核前其他绩效.ToString(), SheetType = (int)SheetType.AssessBeforeOtherFee},
new UniteDeptDetailItem { Title = UniteDept.Title.药占比奖罚.ToString(), SheetType = (int)SheetType.AccountDrugAssess},
new UniteDeptDetailItem { Title = UniteDept.Title.材料占比奖罚.ToString(), SheetType = (int)SheetType.AccountMaterialsAssess},
new UniteDeptDetailItem { Title = UniteDept.Title.考核得分率.ToString(), SheetType = (int)SheetType.AccountScoreAverage, Format = UniteDept.Format.四位小数百分比.ToString() },
new UniteDeptDetailItem { Title = UniteDept.Title.调节后其他绩效.ToString(), SheetType = (int)SheetType.AccountAdjustLaterOtherFee},
};
foreach (var detail in rightSheetTypeMaps)
{
response.Add(detail);
var items = new List<UniteDeptDetailItem>();
foreach (var sheet in persheet.Where(t => t.SheetType == detail.SheetType))
{
var sheetName = BeautifulName(sheet.SheetName);
var items = new List<UniteDeptDetailItem>();
var postDatas = basicData.Where(t => t.SheetID == sheet.ID && t.IsTotal != 1);
foreach (var post in postDatas.GroupBy(t => new { t.TypeName }))
if (detail.Title == UniteDept.Title.预算比例.ToString() || detail.Title == UniteDept.Title.考核得分率.ToString() || detail.Title == UniteDept.Title.调节系数.ToString())
{
if (ignore.Contains(post.Key.TypeName)) continue;
items.Add(new UniteDeptDetailItem { Title = post.Key.TypeName, IsAllowRemark = false });
items.AddRange(postDatas.GroupBy(t => new { t.TypeName })
.Where(post => !ignore.Contains(post.Key.TypeName))
.Select(post => new UniteDeptDetailItem { Title = post.Key.TypeName, IsAllowRemark = false, Format = UniteDept.Format.四位小数百分比.ToString() }));
}
else
{
items.AddRange(postDatas.GroupBy(t => new { t.TypeName })
.Where(post => !ignore.Contains(post.Key.TypeName))
.Select(post => new UniteDeptDetailItem { Title = post.Key.TypeName, IsAllowRemark = false }));
}
detail.Children = items;
}
detail.Children = items;
}
#endregion
......@@ -719,7 +735,8 @@ void InitRecursion(List<UniteDeptDetailItem> detailItems, string parentId)
{
detail.Id = SnowFlake.GetInstance().GetLongId().ToString();
detail.ParentId = parentId;
detail.Display = UniteDept.DisplayRule.始终显示.ToString();
detail.Format = detail.Format != null ? detail.Format : UniteDept.Format.整数.ToString();
detail.Display = detail.Display != null ? detail.Display : UniteDept.DisplayRule.下发显示.ToString();
detail.IsAllowAlias = string.IsNullOrEmpty(parentId) || detail.Children?.Any() == true;
detail.Children ??= new List<UniteDeptDetailItem>();
InitRecursion(detail.Children, detail.Id);
......
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