Esempio n. 1
0
        public IApiResult Delete(DeleteQuestionnaire operation)
        {
            var result = operation.ExecuteAsync().Result;

            if (result is ValidationsOutput)
            {
                return(new ApiResult <List <ValidationItem> >()
                {
                    Data = ((ValidationsOutput)result).Errors
                });
            }
            else
            {
                return(new ApiResult <object>()
                {
                    Status = ApiResult <object> .ApiStatus.Success
                });
            }
        }
Esempio n. 2
0
        public QuestionnairesModule(RouteHandlerFactory routeHandlerFactory) : base("/questionnaires")
        {
            var handler = routeHandlerFactory.CreateRouteHandler(this);

            Get("/", _ => handler.Get <GetAllQuestionnaires, List <QuestionnaireModel> >(new GetAllQuestionnaires()));

            Post("/", _ => {
                this.RequiresAuthentication();

                var createQuestionnaire       = this.Bind <CreateQuestionnaire>();
                createQuestionnaire.SavedById = User.UserId;

                return(handler.Post(createQuestionnaire, createResponse));

                object createResponse(CreateQuestionnaire created)
                {
                    return(new { id = created.QuestionnaireId });
                }
            });

            Put("/{id:int}", _ => {
                this.RequiresAuthentication();
                var updateQuestionnaire = this.Bind <UpdateQuestionnaire>();

                updateQuestionnaire.QuestionnaireId = _.id;
                updateQuestionnaire.SavedById       = User.UserId;

                return(handler.Put(updateQuestionnaire));
            });

            Delete("/{id:int}", _ => {
                this.RequiresAuthentication();

                var deleteQuestionnaire = new DeleteQuestionnaire {
                    DeletedById     = User.UserId,
                    QuestionnaireId = _.id
                };

                return(handler.Delete(deleteQuestionnaire));
            });
        }