public IEnumerable <FormInfo> GetList(FormInfoParameter parameter) { var query = DB.FormInfos.Where(e => !e.Deleted); if (parameter.CategoryId > 0) { query = query.Where(e => e.CategoryId == parameter.CategoryId); } if (parameter.BeginTime.HasValue) { query = query.Where(e => e.CreateTime > parameter.BeginTime.Value); } if (parameter.Completed.HasValue) { query = query.Where(e => e.FlowData.Completed == parameter.Completed); } if (parameter.EndTime.HasValue) { query = query.Where(e => e.CreateTime < parameter.EndTime.Value); } if (parameter.FormId > 0) { query = query.Where(e => e.FormId == parameter.FormId); } if (parameter.InfoIds != null && parameter.InfoIds.Length > 0) { query = query.Where(e => parameter.InfoIds.Contains(e.ID)); } if (parameter.PostUserId > 0) { query = query.Where(e => e.PostUserId == parameter.PostUserId); } return(query.OrderByDescending(e => e.ID).SetPage(parameter.Page)); }
public IEnumerable <UserMail> GetUserMails(FormInfoParameter parameter) { var query = Core.UserFormInfoManager.GetUserInfoList <UserMail>(parameter); query = query.Where(e => e.IsDraft == false); return(query.OrderByDescending(e => e.ID).SetPage(parameter.Page)); }
public object List(string searchKey = null, FlowStatus?status = null, int page = 1, int rows = 20) { var form = Core.FormManager.GetModel(FormType.Task); var parameter = new FormInfoParameter { FormId = form.ID, FlowStatus = status.HasValue ? new[] { status.Value } : null, UserId = status == null && CurrentUser.HasRight(FormType.Task, UserRightType.View) ? 0 : Identity.ID, SearchKey = searchKey, Page = new PageParameter(page, rows) }; if (parameter.UserId == 0) { var datas = Core.TaskManager.GetTasks(parameter); return(new PagingResult { List = datas.Select(e => new TaskViewModel(e)), Page = parameter.Page, }); } else { var datas = Core.TaskManager.GetUserTasks(parameter); return(new PagingResult { List = datas.Select(e => new TaskViewModel(e)), Page = parameter.Page }); } }
public object List(int formId, int userId = 0, string searchKey = null, bool?completed = null, FlowStatus?status = null, int page = 1, int rows = 20) { var parameter = new FormInfoParameter { FormId = formId, Page = new PageParameter(page, rows), UserId = Identity.ID, PostUserId = userId, Completed = completed }; var form = Core.FormManager.GetModel(formId); var flow = Core.FlowManager.Get(form.FLowId); var list = Core.FormInfoManager.GetList(parameter).Select(e => new FormInfoViewModel { ID = e.ID, CategoryId = e.CategoryId, CreateTime = e.CreateTime, FlowDataId = e.FlowDataId, InfoId = e.ID, PostUserId = e.PostUserId, UpdateTime = e.UpdateTime, UserId = e.PostUserId, FlowStep = e.FlowStep, Title = e.Title, FormId = e.FormId, }); return(new PagingResult { List = list, Page = parameter.Page }); }
public IEnumerable <Task> GetTasks(FormInfoParameter parameter) { var query = DB.Tasks.Where(e => !e.Info.Deleted); if (!string.IsNullOrEmpty(parameter.SearchKey)) { query = query.Where(e => e.Name.Contains(parameter.SearchKey)); } return(query.OrderByDescending(e => e.ID).SetPage(parameter.Page)); }
public object TasksForLED() { var form = Core.FormManager.GetModel(FormType.Task); var parameter = new FormInfoParameter { FormId = form.ID, FlowStatus = new[] { FlowStatus.Doing, FlowStatus.Back, FlowStatus.Done }, }; var datas = Core.TaskManager.GetUserTasks(parameter).GroupBy(e => e.InfoId).Select(g => g.FirstOrDefault()); return(datas.Select(e => new TaskViewModel(e))); }
public IQueryable <T> GetUserInfoList <T>(FormInfoParameter parameter) where T : UserInfo { var query = DB.Set <T>().AsQueryable(); if (parameter.PostUserId > 0) { query = query.Where(e => e.PostUserId == parameter.PostUserId); } if (parameter.FormId > 0) { query = query.Where(e => e.FormId == parameter.FormId); } if (!string.IsNullOrWhiteSpace(parameter.SearchKey)) { query = query.Where(e => e.Title.Contains(parameter.SearchKey)); } if (parameter.FlowStatus != null && parameter.FlowStatus.Length > 0) { query = query.Where(e => parameter.FlowStatus.Contains(e.FlowStatus)); } if (parameter.BeginTime.HasValue) { query = query.Where(e => e.CreateTime >= parameter.BeginTime.Value); } if (parameter.EndTime.HasValue) { query = query.Where(e => e.CreateTime <= parameter.EndTime.Value); } if (parameter.Starred.HasValue) { query = query.Where(e => e.Starred == parameter.Starred.Value); } if (parameter.Trash.HasValue) { query = query.Where(e => e.Trash == parameter.Trash.Value); } if (parameter.Read.HasValue) { query = query.Where(e => e.Read == parameter.Read.Value); } if (parameter.Completed.HasValue) { query = query.Where(e => e.FlowData != null && e.FlowData.Completed == parameter.Completed.Value); } if (parameter.UserId > 0) { return(query.Where(e => e.UserId == parameter.UserId)); } return(query); }
public object List(int formId, int postUserId = 0, string searchKey = null, bool?completed = null, FlowStatus?status = null, int page = 1, int rows = 10) { var parameter = new FormInfoParameter { FormId = formId, FlowStatus = status.HasValue ? new[] { status.Value } : null, Page = new PageParameter(page, rows), UserId = Identity.ID, PostUserId = postUserId, Completed = completed, SearchKey = searchKey, }; var list = Core.MissiveManager.GetList(parameter); return(new PagingResult { List = list.Select(e => new { e.ID, e.InfoId, e.WJ_ZH, e.Title, e.QX_RQ, e.WJ_MJ, e.WJ_LY, e.Reminded, e.Starred, MJ = e.WJ_MJ.GetDescription(), e.FormId, e.CreateTime, e.UpdateTime, e.FlowStep, e.FlowDataId, e.PostUserId, e.Important, Completed = e.FlowData == null ? false : e.FlowData.Completed, e.Uid, }), Page = parameter.Page }); }
public IQueryable <UserInfo> GetUserInfoList(FormInfoParameter parameter) { return(GetUserInfoList <UserInfo>(parameter).OrderByDescending(e => e.ID).SetPage(parameter.Page)); }
public IEnumerable <UserMissive> GetList(FormInfoParameter parameter) { return(Core.UserFormInfoManager.GetUserInfoList <UserMissive>(parameter) .OrderByDescending(e => e.ID) .SetPage(parameter.Page));; }