using AutoMapper; using OASystem.Domain; using OASystem.Domain.Entities.System; using OASystem.Domain.ViewModels.System; using SqlSugar; using StackExchange.Redis; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace OASystem.Infrastructure.Repositories.System { public class UsersRepository : BaseRepository { public UsersRepository(SqlSugarClient sqlSugar) : base(sqlSugar){} /// /// 用户查询列表 /// /// /// public async Task GetUserList(int portType,string sqlWhere) { Result result = new Result() { Code = -2 }; //List _userList = _sqlSugar.Queryable() // .InnerJoin((u, c) => u.CompanyId == c.Id) //若是多个条件 用 && // .InnerJoin((u, c, d) => u.DepId == d.Id) // .InnerJoin((u, c, d, j) => u.JobPostId == j.Id) // .Where((u) => u.Id == 208) // .Select // ((u, c, d, j) => new UserInfoWebView // { // Number = u.Number, // CompanyId = u.CompanyId, // CompanyName = c.CompanyName, // DepId=u.DepId, // DepName = d.DepName, // JobPostId = u.JobPostId, // JobName = j.JobName, // Id = u.Id, // CnName = u.CnName, // Phone = u.Phone, // UrgentPhone = u.UrgentPhone, // Ext =u.Ext, // Email = u.Email, // }) // .ToList(); if (portType == 1) //web { string userSqlWhere = string.Format(@"Select su.CompanyId, sc.CompanyName,su.DepId,sd.DepName,su.JobPostId,sjp.JobName, su.Id UserId,su.CnName,su.CnName,su.Number,su.Ext,su.Phone,su.UrgentPhone,su.Email From Sys_Users su Inner Join Sys_Company sc On su.CompanyId = sc.Id Inner Join Sys_Department sd On su.DepId = sd.Id Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id Where su.IsDel = 0"); var _userList = await _sqlSugar.SqlQueryable(userSqlWhere).ToListAsync(); if (_userList.Count != 0) { result.Code = 0; result.Msg = "成功!"; result.Data = _userList; } else { result.Msg = "暂无数据!"; } } else if (portType == 2) //Android { string userSqlWhere = string.Format(@"Select su.CompanyId, sc.CompanyName,su.DepId,sd.DepName,su.JobPostId,sjp.JobName, su.Id UserId,su.CnName,su.CnName,su.Number,su.Ext,su.Phone,su.UrgentPhone,su.Email From Sys_Users su Inner Join Sys_Company sc On su.CompanyId = sc.Id Inner Join Sys_Department sd On su.DepId = sd.Id Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id "); var _userList = await _sqlSugar.SqlQueryable(userSqlWhere).ToListAsync(); if (_userList.Count != 0) { result.Code = 0; result.Msg = "成功!"; result.Data = _userList; } else { result.Msg = "暂无数据!"; } } else if (portType == 3) //IOS { } else { result.Msg = "暂无数据!"; } return result; } /// /// 用户查询列表 /// /// /// public async Task GetUserNameList(int portType) { Result result = new Result() { Code = -2 }; if (portType == 1 || portType == 2) //web { string sql = string.Format(@"Select Id,CnName From Sys_Users Where Isdel=0 And HrAudit = 1"); var _userList = await _sqlSugar.SqlQueryable(sql).ToListAsync(); if (_userList.Count != 0) { result.Code = 0; result.Msg = "成功!"; result.Data = _userList; } else { result.Msg = "暂无数据!"; } } else if (portType == 2) //Android { } else if (portType == 3) //IOS { } else { result.Msg = "暂无数据!"; } return result; } public async Task> QueryUser(string sqlWhere) { string sql = string.Format(@"Select sc.CompanyName,sd.DepName,sjp.JobName,su.* From Sys_Users su left Join Sys_Company sc On su.CompanyId = sc.Id left Join Sys_Department sd On su.DepId = sd.Id left Join Sys_JobPost sjp On su.JobPostId = sjp.Id {0}", sqlWhere); return await _sqlSugar.SqlQueryable(sql).ToListAsync(); } } }