Commit 2781c062 by ruyun.zhang

科室详情重复过滤&用户列表优化

parent 8066c30e
......@@ -24,7 +24,7 @@ public partial class PerforPeremployeeRepository : PerforRepository<per_employee
public new PageList<per_employee> GetEntitiesForPaging(int pageNumber, int pageSize, Expression<Func<per_employee, bool>> exp)
{
IQueryable<per_employee> queryableAuthors = context.Set<per_employee>().Where(exp).OrderByDescending(w => w.Id).ThenBy(t => t.IsVerify);
IQueryable<per_employee> queryableAuthors = context.Set<per_employee>().Where(exp).OrderBy(w => w.IsVerify).ThenBy(t => t.JobNumber);
return PageList<per_employee>.Create(queryableAuthors, pageNumber, pageSize);
}
......
......@@ -111,7 +111,7 @@ public UniteDeptDetailResponse UniteDeptDetail(int allotId, UnitType unitType, s
items.Add(row);
}
var totalValue = basicData.Where(t => t.SheetID == postSheet.ID && t.UnitType == (int)SheetType.PersonPostCoefficient && t.IsTotal == 1)?.Sum(t => t.CellValue) ?? 0;
detailItems.Add(new DeptDetailItem { Title = "岗位系数", Total = totalValue, TotalFormat = ValueFormating(totalValue, ""), Items = items });
detailItems.Add(new DeptDetailItem { Title = "岗位系数", Total = totalValue, Items = items });
}
}
#endregion
......@@ -550,13 +550,11 @@ private string BeautifulName(string sheetName)
/// <exception cref="PerformanceException"></exception>
public List<UniteDeptDetailItem> GetUniteDeptDetailSetting(int allotId)
{
var allot = perforPerallotRepository.GetEntity(t => t.ID == allotId);
if (allot == null) throw new PerformanceException("绩效月信息错误");
var ignore = _configuration.GetSection("UniteDeptDetailIgnore").Get<string[]>() ?? Array.Empty<string>();
var persheet = _perforPerSheetRepository.GetEntities(t => t.AllotID == allotId) ?? new List<per_sheet>();
var headers = _perforImheaderRepository.GetEntities(t => t.AllotID == allotId) ?? new List<im_header>();
var basicData = _perforImDataRepository.GetEntities(t => t.AllotID == allotId) ?? new List<im_data>();
var response = new List<UniteDeptDetailItem>() { };
......@@ -570,6 +568,8 @@ 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);
if (!lcUniteDepts.Any(w => w.Title == sheetName))
{
var lcyj = new UniteDeptDetailItem { Title = sheetName, Display = UniteDept.DisplayRule.始终显示.ToString(), Children = new List<UniteDeptDetailItem>() };
lcyj.Children.Add(new UniteDeptDetailItem { Title = "量化指标", IsAllowRemark = false, Format = UniteDept.Format.整数.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString() });
......@@ -580,6 +580,7 @@ public List<UniteDeptDetailItem> GetUniteDeptDetailSetting(int allotId)
}
}
}
}
#endregion
response.Add(new UniteDeptDetailItem { Title = UniteDept.Title.业绩分值.ToString(), Display = UniteDept.DisplayRule.始终显示.ToString(), Children = lcUniteDepts });
#region 行政工勤
......
......@@ -187,18 +187,18 @@ public List<UserResponse> GetUserList(int userID, int roleType = 1)
var hospitalIds = userHospitals?.Where(t => t.UserID == userID)?.Select(t => t.HospitalID);
if (hospitalIds == null || !hospitalIds.Any()) return result;
var userIds = userHospitals?.Where(t => hospitalIds.Contains(t.HospitalID)).Select(t => t.UserID).Distinct();
var userlist = users?.Where(t => t.ID != userID && userIds.Contains(t.ID) && t.IsDelete == 1 && (t.ParentID == 0 || t.ParentID == null));
var sonUser = users?.Where(t => t.ParentID != 0 && t.ParentID != null);
var userIds = userHospitals?.Where(t => hospitalIds.Contains(t.HospitalID)).Select(t => t.UserID).Distinct().ToList();
var userlist = users?.Where(t => t.ID != userID && userIds.Contains(t.ID) && t.IsDelete == 1 && (t.ParentID == 0 || t.ParentID == null)).ToList();
var sonUser = users?.Where(t => t.ParentID != 0 && t.ParentID != null).Where(w => !string.IsNullOrEmpty(w.Department));
if (sonUser != null)
{
foreach (var user in sonUser)
{
if (user.Department == "")
continue;
var parentUser = userlist.FirstOrDefault(t => t.ID == user.ParentID);
if (parentUser == null) continue;
parentUser.Department = user?.Department;
}
}
result = _mapper.Map<List<UserResponse>>(userlist);
}
if (result != null && result.Count > 0)
......
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