예제 #1
0
        public UserModuleCommandDelete(IUserRepositoryReadOnly repository, ICommandDeleteIdentity <User> commandDelete)
        {
            Delete["/user"] = parameters =>
            {
                var _userRequest = this.Bind <UserRequest>();
                if (_userRequest.isValidDelete())
                {
                    if (repository.exists(_userRequest.Id))
                    {
                        var user = new User(_userRequest.Id,
                                            _userRequest.firstName,
                                            _userRequest.secondName,
                                            _userRequest.password,
                                            _userRequest.mail,
                                            null);
                        commandDelete.execute(user);

                        return(new Response()
                               .WithStatusCode(HttpStatusCode.OK));
                    }
                }
                return(new Response()
                       .WithStatusCode(HttpStatusCode.NotAcceptable));
            };
        }
예제 #2
0
        public UserModuleCommandUpdate(IUserRepositoryReadOnly repository, ICommandUpdateIdentity <User> commandUpdate)
        {
            Put["/user"] = parameters =>
            {
                var _userRequest = this.Bind <UserRequest>();
                if (_userRequest.isValidPost())
                {
                    if (repository.exists(_userRequest.Id))
                    {
                        var _userRol = new Rol(_userRequest.userRol.name,
                                               _userRequest.userRol.description);
                        _userRol.Id = _userRequest.userRol.idGuid;

                        var user = new User(_userRequest.Id,
                                            _userRequest.firstName,
                                            _userRequest.secondName,
                                            _userRequest.password,
                                            _userRequest.mail,
                                            _userRol);
                        user.Auditoria = new Auditoria(_userRequest.auditoriaRequest.usuarioCreo,
                                                       _userRequest.auditoriaRequest.fechaCreo, _userRequest.auditoriaRequest.usuarioModifico,
                                                       _userRequest.auditoriaRequest.fechaModifico);
                        commandUpdate.execute(user);

                        return(new Response()
                               .WithStatusCode(HttpStatusCode.OK));
                    }
                }
                return(new Response()
                       .WithStatusCode(HttpStatusCode.NotAcceptable));
            };
        }
예제 #3
0
        public UserModuleQuery(IUserRepositoryReadOnly repository)
        {
            _userMapping = new UserMapping();
            Get["/user"] = parameters =>
            {
                var userResponse = repository.getAll();


                return(Response.AsJson(_userMapping.convertToRequest(userResponse))
                       .WithStatusCode(HttpStatusCode.OK));
            };


            Get["/user/id={id}"] = parameters =>
            {
                string idUser = parameters.id;
                if (!string.IsNullOrEmpty(idUser))
                {
                    var         user     = repository.get(idUser);
                    UserRequest response = _userMapping.convertToRequest(user);
                    return(Response.AsJson(response)
                           .WithStatusCode(HttpStatusCode.OK));
                }
                return(new Response()
                       .WithStatusCode(HttpStatusCode.NotAcceptable));
            };
        }
예제 #4
0
 public ServiceSucursalesValidator(
     IServiceDireccionValidator direccionValidator,
     IUserRepositoryReadOnly userRepository
     )
 {
     _direccionValidator = direccionValidator;
     _userRepository     = userRepository;
 }
예제 #5
0
        public AuthenticateUser(IUserRepositoryReadOnly userRepositoryRead, Func <byte[], IKeyGenerator> keyGeneratorFactory, Func <IKeyGenerator, IHmacProvider> factoryHmac,
                                Func <IKeyGenerator, Func <IKeyGenerator, IHmacProvider>, ICryptoService> crytoServiceFactory

                                )
        {
            _userRepositoryRead  = userRepositoryRead;
            _keyGeneratorFactory = keyGeneratorFactory;
            _factoryHmac         = factoryHmac;
            _crytoServiceFactory = crytoServiceFactory;
        }
예제 #6
0
 public AuthenticationController(IUserRepositoryReadOnly userRepositoryReadOnly, ITokenService tokenService)
 {
     _userRepositoryReadOnly = userRepositoryReadOnly;
     _tokenService           = tokenService;
 }