|
|
@@ -205,6 +205,51 @@ namespace OASystem.Infrastructure.Repositories.PersonnelModule
|
|
|
return _jv;
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// 策划部基础数据
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
+ public async Task<JsonView> PlanningInitAsync()
|
|
|
+ {
|
|
|
+ var result = await KpiDepartmentsAndJobs("策划部");
|
|
|
+ if (!result.Success)
|
|
|
+ {
|
|
|
+ _jv.Msg = result.Message;
|
|
|
+ return _jv;
|
|
|
+ }
|
|
|
+
|
|
|
+ var userInfos = await _sqlSugar.Queryable<Sys_Users>()
|
|
|
+ .LeftJoin<Sys_JobPost>((u, jp) => u.JobPostId == jp.Id)
|
|
|
+ .LeftJoin<Sys_Department>((u, jp, d) => u.DepId == d.Id)
|
|
|
+ .LeftJoin<Sys_Company>((u, jp, d, c) => u.CompanyId == c.Id)
|
|
|
+ .Where((u, jp, d, c) => u.IsDel == 0)
|
|
|
+ .Select((u, jp, d, c) => new
|
|
|
+ {
|
|
|
+ UserId = u.Id,
|
|
|
+ u.CompanyId,
|
|
|
+ c.CompanyName,
|
|
|
+ u.DepId,
|
|
|
+ d.DepName,
|
|
|
+ u.JobPostId,
|
|
|
+ jp.JobName,
|
|
|
+ UserName = u.CnName
|
|
|
+ })
|
|
|
+ .OrderBy(u => u.CompanyId)
|
|
|
+ .ToListAsync();
|
|
|
+
|
|
|
+ var jobNames = result.DepartmentsWithJobs
|
|
|
+ .SelectMany(x => x.JobNames)
|
|
|
+ .ToList();
|
|
|
+
|
|
|
+ var view = userInfos.Where(x => jobNames.Contains(x.JobName))
|
|
|
+ .Select(x => new KpiTempUserInfo() { Id = x.UserId, DepName = x.DepName, JobName = x.JobName, Name = x.UserName })
|
|
|
+ .ToList();
|
|
|
+ _jv.Code = StatusCodes.Status200OK;
|
|
|
+ _jv.Data = view;
|
|
|
+ _jv.Msg = $"操作成功";
|
|
|
+ return _jv;
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 考勤详情
|
|
|
/// </summary>
|