Пример #1
0
 public UsuarioBaseTeste()
 {
     _documentoVO = new DocumentoVO("181.091.714-00");
     _emailVO     = new EmailVO("*****@*****.**");
     _loginVO     = new LoginVO("jamil", "jaja123");
     _usuarioBase = new UsuarioBase(_loginVO, _emailVO, _documentoVO, EPerfilAcessoSistema.Usuario, @"C:\impr");
 }
Пример #2
0
        public ResultadoVO crearDocumento(DocumentoVO documento)
        {
            Sesion sesion = SessionPool.getSession();

            this.company = sesion.company;
            this.documentoVO = documento;

            // TODO: intentar habilitar transacciones nuevamente
            // company.StartTransaction();
            try
            {
                CrearDocumentoSAP();

                if (company.InTransaction)
                {
                    if (this.resultadoVO.Success) company.EndTransaction(BoWfTransOpt.wf_Commit);
                    else company.EndTransaction(BoWfTransOpt.wf_RollBack);
                }
            }
            catch (Exception e)
            {
                if (company.InTransaction) company.EndTransaction(BoWfTransOpt.wf_RollBack);
                log.Error(e);
                this.resultadoVO.Success = false;
                this.resultadoVO.Mensaje = e.Message;
            }
            finally
            {
                sesion.Close();
            }

            return this.resultadoVO;
        }
Пример #3
0
 public void AtribuirUsuario(
     LoginVO loginVO,
     EmailVO emailVO,
     DocumentoVO documentoVO)
 {
     this.Login     = loginVO;
     this.Email     = emailVO;
     this.Documento = documentoVO;
 }
Пример #4
0
        public void Inicia_UsuarioBaseVO_INVALIDO()
        {
            _documentoVO = new DocumentoVO("181.091.714-00");
            _emailVO     = new EmailVO("*****@*****.**");
            _loginVO     = new LoginVO("ja", "jaja"); // <- Usuário inválido
            _usuarioBase = new UsuarioBase(_loginVO, _emailVO, _documentoVO, EPerfilAcessoSistema.Usuario, @"C:\impr");

            Assert.AreEqual(true, _usuarioBase.Invalid);
        }
Пример #5
0
 public void AtribuirUsuario(
     LoginVO loginVO,
     EmailVO emailVO,
     DocumentoVO documentoVO,
     EPerfilAcessoSistema perfilAcesso,
     string impressoraZebra)
 {
     this.Login           = loginVO;
     this.Email           = emailVO;
     this.Documento       = documentoVO;
     this.PerfilAcesso    = perfilAcesso;
     this.ImpressoraZebra = impressoraZebra;
 }
Пример #6
0
        public ICommandResult Handle(CriarUsuarioBaseCommand command)
        {
            if (!command.IsValidCommand())
            {
                return(new CommandResult(false, "Por favor, corrigir os campos abaixo", command.Notifications));
            }

            if (_repository.UsuarioExistente(command.Usuario))
            {
                AddNotification("Usuario", $"Nome de usuário já cadastrado na base de dados. Nome informado: { command.Usuario }");
            }

            if (_repository.DocumentoExistente(command.Documento))
            {
                AddNotification("CPF/CNPJ", $"CPF/CNPJ já cadastrado na base de dados. Doc. informado: { command.Documento }");
            }

            if (_repository.EmailExistente(command.Email))
            {
                AddNotification("E-mail", $"E-mail já cadastrado na base de dados. E-mail informado: { command.Email }");
            }

            var login     = new LoginVO(command.Usuario, command.Senha);
            var email     = new EmailVO(command.Email);
            var documento = new DocumentoVO(command.Documento);
            var usuario   = new UsuarioBase(
                login,
                email,
                documento,
                command.PerfilAcesso,
                command.ImpressoraZebra);

            AddNotifications(usuario, login, email, documento);

            if (Invalid)
            {
                return(new CommandResult(false, "Por favor, corrigir os campos abaixo", Notifications));
            }

            _repository.Salvar(usuario);

            return(new CommandResult(true, "Usuário cadastrado com sucesso", new
            {
                Usuario = usuario.Login.Usuario,
                Documento = usuario.Documento.Documento
            }));
        }
Пример #7
0
        public UsuarioBase(
            LoginVO login,
            EmailVO email,
            DocumentoVO documento,
            EPerfilAcessoSistema perfilAcessoSistema,
            string impressoraZebra)
        {
            Login           = login;
            Email           = email;
            Documento       = documento;
            ChaveDeAcesso   = Guid.NewGuid().ToString().Substring(0, 8).ToUpper();
            DataCadastro    = DateTime.Now.Date;
            Ativo           = EBoolean.True;
            PerfilAcesso    = perfilAcessoSistema;
            ImpressoraZebra = impressoraZebra;

            _empresas     = new List <Empresa>();
            _areasAtuacao = new List <AreaAtuacao>();
            _telas        = new List <Tela>();

            AddNotifications(login, email, documento);
        }
Пример #8
0
 public void Inicia_DocumentoVO_INVALIDO()
 {
     _documentoVO = new DocumentoVO("181.091.714-0x");
     Assert.AreEqual(true, _documentoVO.Invalid);
 }
Пример #9
0
        public ICommandResult Handle(AtualizarUsuarioBaseCommand command)
        {
            if (!command.IsValidCommand())
            {
                return(new CommandResult(false, "Por favor, corrigir os campos abaixo", command.Notifications));
            }

            var usuario = _repository.UsuarioBase(command.Id);

            if (usuario == null)
            {
                return(new CommandResult(false, $"O usuario não existe na base de dados. Id de usuário informado: { command.Id }", new { }));
            }

            if (command.Usuario != usuario.Login.Usuario)
            {
                if (_repository.UsuarioExistente(command.Usuario))
                {
                    AddNotification("Usuario", $"Nome de usuário já cadastrado na base de dados. Nome informado: { command.Usuario }");
                }
            }

            if (command.Documento != usuario.Documento.Documento)
            {
                if (_repository.DocumentoExistente(command.Documento))
                {
                    AddNotification("CPF/CNPJ", $"CPF/CNPJ já cadastrado na base de dados. Doc. informado: { command.Documento }");
                }
            }

            if (command.Email != usuario.Email.Email)
            {
                if (_repository.EmailExistente(command.Email))
                {
                    AddNotification("E-mail", $"E-mail já cadastrado na base de dados. E-mail informado: { command.Email }");
                }
            }

            var login     = new LoginVO(command.Usuario);
            var email     = new EmailVO(command.Email);
            var documento = new DocumentoVO(command.Documento);

            if (usuario.Login.Senha != command.Senha)
            {
                login = new LoginVO(command.Usuario, command.Senha);
            }
            else
            {
                login.AtribuirSenha(command.Senha);
            }

            if (command.Ativo.Equals(EBoolean.False))
            {
                usuario.Desativar();
            }
            else
            {
                usuario.Ativar();
            }

            usuario.AtribuirUsuario(
                login,
                email,
                documento,
                command.PerfilAcesso,
                command.ImpressoraZebra);

            AddNotifications(usuario, login, email, documento);

            if (Invalid)
            {
                return(new CommandResult(false, "Por favor, corrigir os campos abaixo", Notifications));
            }

            _repository.Atualizar(usuario);

            return(new CommandResult(true, "Usuário atualizado com sucesso", new
            {
                Id = usuario.Id,
                Usuario = usuario.Login.Usuario,
                Documento = usuario.Documento.Documento
            }));
        }