public async Task <IActionResult> Find([FromBody] List <ObjectId> screenIds)
 {
     return(await FunctionWrapper.ExecuteFunction(this, async() =>
     {
         return await _screenRepository.Find(screenIds);
     }));
 }
示例#2
0
        private async Task <WorkflowTransition> HydrateForGet(WorkflowTransition transition)
        {
            try
            {
                transition = await HydrateForGetAndSave(transition);

                var transFunctions = await _workflowTransitionFunctionRepository.Search(
                    new WorkflowTransitionFunctionSearchRequest()
                {
                    TransitionId = transition.Id.ToString()
                });

                transition.PreConditions = transFunctions
                                           .Where(f => f.Function.Type == WorkflowFunctions.WorkflowFunctionTypes.PreCondition).ToList();

                transition.Validations = transFunctions
                                         .Where(f => f.Function.Type == WorkflowFunctions.WorkflowFunctionTypes.Validation).ToList();

                transition.PostFunctions = transFunctions
                                           .Where(f => f.Function.Type == WorkflowFunctions.WorkflowFunctionTypes.PostFunction).ToList();

                if (transition.ScreenIds != null)
                {
                    transition.Screens = await _screenRepository.Find(transition.ScreenIds);
                }

                return(transition);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }