|
|
@@ -3221,11 +3221,11 @@ OPTION (MAXRECURSION 0); -- 允许无限递归 ";
|
|
|
{
|
|
|
var companyDatas = await _sqlSugar.Queryable<Sys_Company>().Where(x => x.IsDel == 0).Select(x => new { x.Id, x.CompanyName }).ToListAsync();
|
|
|
var jobPostDatas = await _sqlSugar.Queryable<Sys_JobPost>().Where(x => x.IsDel == 0).Select(x => new { x.Id, x.CompanyId, x.JobName }).ToListAsync();
|
|
|
- var userDatas = await _sqlSugar.Queryable<Sys_Users>().Where(x => x.IsDel == 0).Select(x => new { x.Id, x.JobPostId, x.CnName }).ToListAsync();
|
|
|
+ var userDatas = await _sqlSugar.Queryable<Sys_Users>().Where(x => x.IsDel == 0).Select(x => new { x.Id,x.CompanyId, x.JobPostId, x.CnName }).ToListAsync();
|
|
|
|
|
|
companyDatas.Insert(0, new { Id = 0, CompanyName = "全部" });
|
|
|
jobPostDatas.Insert(0, new { Id = 0, CompanyId = 0, JobName = "全部" });
|
|
|
- userDatas.Insert(0, new { Id = 0, JobPostId = 0, CnName = "全部" });
|
|
|
+ userDatas.Insert(0, new { Id = 0, CompanyId = 0, JobPostId = 0, CnName = "全部" });
|
|
|
return Ok(JsonView(true, "操作成功!", new
|
|
|
{
|
|
|
companyDatas,
|
|
|
@@ -3243,21 +3243,6 @@ OPTION (MAXRECURSION 0); -- 允许无限递归 ";
|
|
|
[ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
|
|
|
public async Task<IActionResult> AiPerformanceAnalysis_UserListAsync(AiPerformanceAnalysis_UserListDto dto)
|
|
|
{
|
|
|
- if (dto.CompanyId < 0)
|
|
|
- {
|
|
|
- return Ok(JsonView(false, "请传入有效的公司Id。"));
|
|
|
- }
|
|
|
-
|
|
|
- if (dto.JobPostId < 0)
|
|
|
- {
|
|
|
- return Ok(JsonView(false, "请传入有效的岗位Id。"));
|
|
|
- }
|
|
|
-
|
|
|
- if (dto.UserId < 0)
|
|
|
- {
|
|
|
- return Ok(JsonView(false, "请传入有效的员工Id。"));
|
|
|
- }
|
|
|
-
|
|
|
if (dto.PageIndex < 1)
|
|
|
{
|
|
|
dto.PageIndex = 1;
|
|
|
@@ -3272,23 +3257,31 @@ OPTION (MAXRECURSION 0); -- 允许无限递归 ";
|
|
|
|
|
|
var query = _sqlSugar.Queryable<Sys_Users>()
|
|
|
.LeftJoin<Sys_Company>((u, c) => u.CompanyId == c.Id)
|
|
|
- .LeftJoin<Sys_JobPost>((u, c, jp) => u.JobPostId == jp.Id)
|
|
|
- .Where((u, c, jp) => u.IsDel == 0)
|
|
|
- .WhereIF(dto.CompanyId > 0, (u, c, jp) => u.CompanyId == dto.CompanyId)
|
|
|
- .WhereIF(dto.JobPostId > 0, (u, c, jp) => u.JobPostId == dto.JobPostId)
|
|
|
- .WhereIF(dto.UserId > 0, (u, c, jp) => u.Id == dto.UserId)
|
|
|
- .WhereIF(!string.IsNullOrEmpty(dto.UserName), (u, c, jp) => u.CnName.Contains(dto.UserName))
|
|
|
- .OrderBy(u => u.CompanyId)
|
|
|
+ .LeftJoin<Sys_Department>((u, c, d) => u.DepId == d.Id)
|
|
|
+ .LeftJoin<Sys_JobPost>((u, c, d, jp) => u.JobPostId == jp.Id)
|
|
|
+ .Where((u, c, d, jp) => u.IsDel == 0)
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(dto.ScreeningCriteria?.Trim()), (u, c, d, jp) =>
|
|
|
+ u.CnName.Contains(dto.ScreeningCriteria.Trim()) ||
|
|
|
+ c.CompanyName.Contains(dto.ScreeningCriteria.Trim()) ||
|
|
|
+ d.DepName.Contains(dto.ScreeningCriteria.Trim()) ||
|
|
|
+ jp.JobName.Contains(dto.ScreeningCriteria.Trim()) ||
|
|
|
+ SqlFunc.ToString(u.Id).Contains(dto.ScreeningCriteria.Trim()))
|
|
|
+ .OrderBy(u => u.CompanyId)
|
|
|
+ .OrderBy(u => u.DepId)
|
|
|
.OrderBy(u => u.JobPostId)
|
|
|
.OrderBy(u => u.Id);
|
|
|
|
|
|
- var view = await query.Select((u, c, jp) => new AiPerformanceAnalysis_UserView()
|
|
|
+ var view = await query.Select((u, c, d, jp) => new AiPerformanceAnalysis_UserView()
|
|
|
{
|
|
|
RowNumber = SqlFunc.RowNumber("u.CompanyId ASC, u.JobPostId ASC, u.Id ASC"),
|
|
|
Id = u.Id,
|
|
|
UserName = u.CnName,
|
|
|
+ Sex = u.Sex == 0 ? "男" : u.Sex == 1 ? "女" : "未设置",
|
|
|
+ EDate = u.Edate.ToString("yyyy-MM-dd"),
|
|
|
CompanyId = u.CompanyId,
|
|
|
CompanyName = c.CompanyName,
|
|
|
+ DepId = u.DepId,
|
|
|
+ DepName = d.DepName,
|
|
|
JobPostId = u.JobPostId,
|
|
|
JobName = jp.JobName,
|
|
|
WorkYears = SqlFunc.DateDiff(DateType.Year, u.Edate, DateTime.Now)
|
|
|
@@ -3408,8 +3401,12 @@ ORDER BY MonthNumber, CollectionDays";
|
|
|
public int RowNumber { get; set; }
|
|
|
public int Id { get; set; }
|
|
|
public string UserName { get; set; }
|
|
|
+ public string Sex { get; set; }
|
|
|
+ public string EDate { get; set; }
|
|
|
public int CompanyId { get; set; }
|
|
|
public string CompanyName { get; set; }
|
|
|
+ public int DepId { get; set; }
|
|
|
+ public string DepName { get; set; }
|
|
|
public int JobPostId { get; set; }
|
|
|
public string JobName { get; set; }
|
|
|
public int WorkYears { get; set; }
|