public async Task <TableData> Load(QueryFlowInstanceListReq request) { var result = new TableData(); var user = _auth.GetCurrentUser(); if (request.type == "wait") //待办事项 { Expression <Func <FlowInstance, bool> > waitExp = u => (u.MakerList == "1" || u.MakerList.Contains(user.User.Id)) && (u.IsFinish == FlowInstanceStatus.Running || u.IsFinish == FlowInstanceStatus.Rejected); // 加入搜索自定义标题 if (!string.IsNullOrEmpty(request.key)) { waitExp = waitExp.And(t => t.CustomName.Contains(request.key)); } result.count = await UnitWork.Find(waitExp).CountAsync(); result.data = await UnitWork.Find(request.page, request.limit, "CreateDate descending", waitExp).ToListAsync(); } else if (request.type == "disposed") //已办事项(即我参与过的流程) { var instances = UnitWork.Find <FlowInstanceTransitionHistory>(u => u.CreateUserId == user.User.Id) .Select(u => u.InstanceId).Distinct(); var query = from ti in instances join ct in UnitWork.Find <FlowInstance>(null) on ti equals ct.Id select ct; // 加入搜索自定义标题 if (!string.IsNullOrEmpty(request.key)) { query = query.Where(t => t.CustomName.Contains(request.key)); } result.data = await query.OrderByDescending(u => u.CreateDate) .Skip((request.page - 1) * request.limit) .Take(request.limit).ToListAsync(); result.count = await instances.CountAsync(); } else //我的流程 { Expression <Func <FlowInstance, bool> > myFlowExp = u => u.CreateUserId == user.User.Id; // 加入搜索自定义标题 if (!string.IsNullOrEmpty(request.key)) { myFlowExp = myFlowExp.And(t => t.CustomName.Contains(request.key)); } result.count = await UnitWork.Find(myFlowExp).CountAsync(); result.data = await UnitWork.Find(request.page, request.limit, "CreateDate descending", myFlowExp).ToListAsync(); } return(result); }
public TableData Load(QueryFlowInstanceListReq request) { var result = new TableData(); var user = _auth.GetCurrentUser(); if (request.type == "wait") //待办事项 { result.count = UnitWork.Find <FlowInstance>(u => u.MakerList == "1" || u.MakerList.Contains(user.User.Id)).Count(); result.data = UnitWork.Find <FlowInstance>(request.page, request.limit, "CreateDate descending", u => u.MakerList == "1" || u.MakerList.Contains(user.User.Id)).ToList(); } else if (request.type == "disposed") //已办事项(即我参与过的流程) { var instances = UnitWork.Find <FlowInstanceTransitionHistory>(u => u.CreateUserId == user.User.Id) .Select(u => u.InstanceId).Distinct(); var query = from ti in instances join ct in UnitWork.Find <FlowInstance>(null) on ti equals ct.Id select ct; result.data = query.OrderByDescending(u => u.CreateDate) .Skip((request.page - 1) * request.limit) .Take(request.limit).ToList(); result.count = instances.Count(); } else //我的流程 { result.count = UnitWork.Find <FlowInstance>(u => u.CreateUserId == user.User.Id).Count(); result.data = UnitWork.Find <FlowInstance>(request.page, request.limit, "CreateDate descending", u => u.CreateUserId == user.User.Id).ToList(); } return(result); }
/// <summary> /// 加载列表 /// </summary> public string Load([FromQuery] QueryFlowInstanceListReq request) { return(JsonHelper.Instance.Serialize(_app.Load(request))); }
public TableData Load([FromQuery] QueryFlowInstanceListReq request) { return(_app.Load(request)); }
/// <summary> /// 加载列表 /// </summary> public async Task <string> Load([FromQuery] QueryFlowInstanceListReq request) { var objs = await _app.Load(request); return(JsonHelper.Instance.Serialize(objs)); }
/// <summary> /// 加载列表 /// </summary> public string Load([System.Web.Http.FromUri] QueryFlowInstanceListReq request) { return(JsonHelper.Instance.Serialize(App.Load(request))); }
public async Task <TableData> Load([FromQuery] QueryFlowInstanceListReq request) { return(await _app.Load(request)); }