public async Task <ActionResult <PagedResult <ProcessInstanceModel> > > Get([FromBody] ProcessInstanceFilter filter) { var result = new PagedResult <ProcessInstanceModel>(); var query = this.runtimeManager.CreateInstanceQuery(); if (filter == null) { filter = new ProcessInstanceFilter(); } if (filter.AnyStates != null && filter.AnyStates.Length > 0) { query.SetStateAny(filter.AnyStates); } if (filter.State != null) { query.SetState(filter.State.Value); } var list = await query.ListAsync(filter.Page, filter.PageSize); result.Count = await query.CountAsync(); result.Page = filter.Page; result.PageSize = filter.PageSize; result.Items = list.Select(x => ProcessInstanceModel.Create(x)) .ToList(); return(result); }
public async Task <ActionResult <ProcessInstanceModel> > Get(long id) { var item = await this.runtimeManager.CreateInstanceQuery() .SetId(id) .SingleAsync(); if (item != null) { return(ProcessInstanceModel.Create(item)); } return(this.NotFound()); }