Пример #1
0
        public CentralDeErrosQuery(IErrorLogAppService errorLogAppService)
        {
            Field <ListGraphType <ErrorLogType> >(
                "errorlogs",
                arguments: new QueryArguments(new List <QueryArgument>
            {
                new QueryArgument <BooleanGraphType>
                {
                    Name = "onlyNotArchieved"
                },
                new QueryArgument <OrderType> {
                    Name = "order"
                }
            }),
                resolve: context =>
            {
                var user             = (ClaimsPrincipal)context.UserContext;
                var onlyNotArchieved = context.GetArgument <bool?>("onlyNotArchieved");
                var order            = context.GetArgument <OrderEnum.Order?>("order");

                if (onlyNotArchieved.HasValue)
                {
                    return(errorLogAppService.Find(p => !p.Archieved));
                }

                return(errorLogAppService.GetAll());
            }
                );
        }
        public CentralDeErrosMutation(IErrorLogAppService errorLogAppService)
        {
            Field <ErrorLogType>(
                "addErrorLog",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <ErrorLogInputType> > {
                Name = "errorLog"
            }),
                resolve: context =>
            {
                var errorLog = context.GetArgument <ErrorLogViewModel>("errorLog");
                return(errorLogAppService.Add(errorLog));
            });

            Field <ErrorLogType>(
                "archieveErrorLog",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <ArchieveErrorLogInputType> > {
                Name = "errorLog"
            }),
                resolve: context =>
            {
                var errorLog = context.GetArgument <ErrorLogViewModel>("errorLog");
                return(errorLogAppService.ArchieveErrorLog(errorLog.Id));
            });
        }
        public CentralDeErrosQuery(IErrorLogAppService errorLogAppService)
        {
            Field <ListGraphType <ErrorLogType> >(
                "errorlogs",
                description: "Query utilizada para consultar os logs de erro.",
                arguments: new QueryArguments(new List <QueryArgument>
            {
                new QueryArgument <ErrorLogFilterInputType>
                {
                    Name = "filter"
                },
                new QueryArgument <OrderByType> {
                    Name = "orderBy"
                }
            }),
                resolve: context =>
            {
                var user    = (ClaimsPrincipal)context.UserContext;
                var orderBy = context.GetArgument <OrderErrorLogByField?>("orderBy");
                var filter  = context.GetArgument <ErrorLogFilter?>("filter");

                return(errorLogAppService.GetErrorLogs(filter, orderBy));
            }
                );
        }
 public async Task Invoke(HttpContext context, IErrorLogAppService errorLogAppService)
 {
     try
     {
         _errorLogAppService = errorLogAppService;
         await _next(context);
     }
     catch (Exception ex)
     {
         await HandleExceptionAsync(context, ex);
     }
 }
Пример #5
0
 public ErrorLogController(IErrorLogAppService errorLogAppService)
 {
     _errorLogAppService = errorLogAppService;
 }
        public CentralDeErrosMutation(IErrorLogAppService errorLogAppService, IUserAppService userAppService)
        {
            Field <ErrorLogType>(
                "addErrorLog",
                description: "Mutation utilizada para adicionar logs de erro.",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <ErrorLogInputType> > {
                Name = "errorLog"
            }),
                resolve: context =>
            {
                var errorLog = context.GetArgument <ErrorLogViewModel>("errorLog");

                return(errorLogAppService.Add(errorLog));
            });

            Field <ErrorLogType>(
                "archieveErrorLog",
                description: "Mutation utilizada para arquivar logs de erro.",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <IdGraphType> > {
                Name = "idErrorLog"
            }),
                resolve: context =>
            {
                var idErrorLog = context.GetArgument <Guid>("idErrorLog");

                if (errorLogAppService.GetById(idErrorLog) == null)
                {
                    context.Errors.Add(new ExecutionError("Log de erro não encontrado."));
                    return(null);
                }
                return(errorLogAppService.ArchieveErrorLog(idErrorLog));
            });

            Field <StringGraphType>(
                "deleteErrorLog",
                description: "Mutation utilizada para deletar logs de erro.",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <IdGraphType> > {
                Name = "idErrorLog"
            }),
                resolve: context =>
            {
                var idErrorLog = context.GetArgument <Guid>("idErrorLog");
                if (errorLogAppService.GetById(idErrorLog) == null)
                {
                    context.Errors.Add(new ExecutionError("Log de erro não encontrado."));
                    return(null);
                }

                errorLogAppService.Remove(idErrorLog);
                return("Log de erro deletado com sucesso.");
            });

            Field <UserType>(
                "addUser",
                description: "Mutation utilizada para adicionar usuários.",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <UserInputType> > {
                Name = "user"
            }),
                resolve: context =>
            {
                var user = context.GetArgument <UserViewModel>("user");

                if (user.Email == null || user.Login == null || user.Role == null ||
                    user.Name == null || user.Password == null)
                {
                    context.Errors.Add(new ExecutionError("Campos obrigatórios não informados."));
                    return(null);
                }

                user.Password = user.Password.ToHashMD5();
                user.Active   = true;

                var userAlreadyRegistered = userAppService.Find(p => (p.Email == user.Email) || (p.Login == user.Login)).Count > 0;

                if (userAlreadyRegistered)
                {
                    context.Errors.Add(new ExecutionError("Usuário já cadastrado."));
                    return(null);
                }

                return(userAppService.Add(user));
            });
        }
Пример #7
0
 public ErrorLogController(IErrorLogAppService errorLogAppService, IUserAppService userAppService) : base(userAppService)
 {
     _errorLogAppService = errorLogAppService;
 }