public PagedList <LoginLog> GetLoginLog(RequestUserQDTO request) { using (var db = new DBEntities()) { var query = from log in db.LoginLogs select log; if (!string.IsNullOrEmpty(request.UserName)) { query = query.Where(t => t.LoginName.Contains(request.UserName) || t.LoginAccount.Contains(request.UserName)); } query = query.OrderByDescending(t => t.LoginTime); var ret = query.ToPagedList(request.PageIndex, request.PageSize); return(ret); } }
public PagedList <ResponseUserDTO> GetUserList(RequestUserQDTO request) { using (var db = new DBEntities()) { var query = from ua in db.Users.Where(t => !t.IsDeleted) join rolemap in db.UserRoleMaps on ua.ID equals rolemap.UserID into rolemapLeft from rolemapEmpty in rolemapLeft.DefaultIfEmpty() join role in db.Roles.Where(t => t.State == 0) on rolemapEmpty.RoleID equals role.ID into roleLeft from roleEmpty in roleLeft.DefaultIfEmpty() group new { ua.LastTime, ua.ID, ua.UserID, ua.UserName, roleEmpty.RoleName } by new { ua.LastTime, ua.ID, ua.UserID, ua.UserName } into gro select new ResponseUserDTO() { LastTime = gro.Key.LastTime, ID = gro.Key.ID, UserID = gro.Key.UserID, UserName = gro.Key.UserName, Roles = gro.Where(t => t.ID == gro.Key.ID).Select(t => new ResponseRoleDTO { RoleName = t.RoleName }).ToList() }; if (!string.IsNullOrEmpty(request.UserName)) { query = query.Where(t => t.UserName.Contains(request.UserName) || t.UserID.Contains(request.UserName)); } query = query.OrderBy(t => t.UserID); var ret = query.ToPagedList(request.PageIndex, request.PageSize); ret.ForEach(t => { t.LastTimeStr = t.LastTime.HasValue? t.LastTime.Value.ToString("yyyy-MM-dd HH:mm:ss"):""; t.RolesStr = string.Join(",", t.Roles.Select(q => q.RoleName).ToList()); }); return(ret); } }
public ApiResult GetLoginLog([FromBody] RequestUserQDTO request) { return(userService.GetLoginLog(request).ToApiResult()); }