public ActionResult Index(BasePagerModel pager) { if (!User.Identity.IsAuthenticated) { return(RedirectToRoute(new { controller = "Login", action = "LogOut" })); } int uid = PageValidate.FilterParam(User.Identity.Name); if (!RoleCheck.CheckHasAuthority(uid, db, "用户管理")) { return(RedirectToRoute(new { controller = "Error", action = "Index", err = "没有权限。" })); } if (pager == null) { pager = new BasePagerModel(); } ViewData["search"] = pager; var list = (from user in db.User_Info join uvr in db.User_vs_Role on user.user_id equals uvr.uvr_user_id into T1 from t1 in T1.DefaultIfEmpty() join role in db.Dic_Role on t1.uvr_role_id equals role.role_id into T2 from t2 in T2.DefaultIfEmpty() join ue in db.User_Extend on user.user_id equals ue.user_id into T3 from t3 in T3.DefaultIfEmpty() join dept in db.Dic_Department on t3.user_dept_id equals dept.dept_id into T4 from t4 in T4.DefaultIfEmpty() join post in db.Dic_Post on t3.user_post_id equals post.post_id into T5 from t5 in T5.DefaultIfEmpty() orderby user.user_id ascending select new UserListModel { id = user.user_id, name = user.user_name, roleName = t2.role_name == null?"":t2.role_name, stateTxt = user.user_state == 1 ? "正常" : (user.user_state == 2 ? "锁定" : (user.user_state == 0 ? "未启用" : "未知")), realName = user.real_name, times = user.user_login_times, deptName = t4.dept_name == null?"":t4.dept_name, postName = t5.post_name == null?"":t5.post_name, picture = t3.user_picture == null?"default.jpg":t3.user_picture, loginTimes = user.user_login_times }).Skip((pager.PageIndex - 1) * pager.PageSize).Take(pager.PageSize).ToList(); foreach (var item in list) { item.realName = Common.DEncrypt.AESEncrypt.Decrypt(item.realName); } return(View(list)); }
public ActionResult Index() { int uid = PageValidate.FilterParam(User.Identity.Name); if (!RoleCheck.CheckHasAuthority(uid, db, "用户管理")) { return(RedirectToRoute(new { controller = "Error", action = "Index", err = "没有权限。" })); } BasePagerModel pager = new BasePagerModel(); return(Index(pager)); }
public async Task <APIResponse> Activity([FromBody] ActivityModel model) { var sortExpression = new Dictionary <string, System.Linq.Expressions.Expression <Func <DAL.Models.UserActivity, object> > >() { { "date", _ => _.TimeCreated }, }; // validate if (BasePagerModel.IsInvalid(model, sortExpression.Keys, out var errFields)) { return(APIResponse.BadRequest(errFields)); } var user = await GetUserFromDb(); var query = ( from a in DbContext.UserActivity where a.UserId == user.Id select a ); var page = await DalExtensions.PagerAsync(query, model.Offset, model.Limit, sortExpression.GetValueOrDefault(model.Sort), model.Ascending ); var list = from i in page.Selected select new ActivityViewItem() { Type = i.Type.ToLower(), Comment = i.Comment, Ip = i.Ip, Agent = i.Agent, Date = ((DateTimeOffset)i.TimeCreated).ToUnixTimeSeconds(), } ; return(APIResponse.Success( new ActivityView() { Items = list.ToArray(), Limit = model.Limit, Offset = model.Offset, Total = page.TotalCount, } )); }
public async Task <APIResponse> FiatHistory([FromBody] FiatHistoryModel model) { var sortExpression = new Dictionary <string, System.Linq.Expressions.Expression <Func <DAL.Models.UserFinHistory, object> > >() { { "date", _ => _.TimeCreated }, { "type", _ => _.Type }, { "status", _ => _.Status } }; // validate if (BasePagerModel.IsInvalid(model, sortExpression.Keys, out var errFields)) { return(APIResponse.BadRequest(errFields)); } var user = await GetUserFromDb(); var query = ( from h in DbContext.UserFinHistory where h.UserId == user.Id && ( h.Status == UserFinHistoryStatus.Manual || h.Status == UserFinHistoryStatus.Processing || h.Status == UserFinHistoryStatus.Completed || h.Status == UserFinHistoryStatus.Failed ) select h ); var page = await query.PagerAsync( model.Offset, model.Limit, sortExpression.GetValueOrDefault(model.Sort), model.Ascending ); var nowTime = DateTime.UtcNow; var list = from i in page.Selected select new FiatHistoryViewItem() { Type = i.Type.ToString().ToLower(), Status = ( i.Status == UserFinHistoryStatus.Completed ? 2 // success : i.Status == UserFinHistoryStatus.Failed ? 3 // cancelled/failed : 1 // pending ), Comment = i.Comment, Src = i.Source, SrcAmount = i.SourceAmount, Dst = i.Destination, DstAmount = i.DestinationAmount, Date = ((DateTimeOffset)i.TimeCreated).ToUnixTimeSeconds(), } ; return(APIResponse.Success( new FiatHistoryView() { Items = list.ToArray(), Limit = model.Limit, Offset = model.Offset, Total = page.TotalCount, } )); }