public void Teste_FuncionarioRepositorio_SalvarFuncionario_DeveSerOk()
        {
            long idEsperado = 3;

            funcionario = ObjectMother.RetorneNovoFuncionarioOk();
            Funcionario funcionarioSalvo = _repositorio.Salvar(funcionario);

            funcionarioSalvo.Id.Should().Be(idEsperado);
        }
예제 #2
0
        public void Funcionario_InfraData_Salvar_Deve_Salvar_Funcionario_Com_Nome_Valida()
        {
            _funcionario.Nome = "Fulano";

            var resultado = _funcionarioRepositorio.Salvar(_funcionario);

            resultado.Id.Should().BeGreaterThan(0);
            resultado.Nome.Should().Be(_funcionario.Nome);
        }
예제 #3
0
        public IResultadoComando Manipular(RegistrarFuncionarioComando comando)
        {
            var emailExiste = _repositorio.EmailExiste(comando.Email);

            if (emailExiste != null)
            {
                AddNotification("Email", "Email já está cadastrado");

                return(new ResultadoComando(
                           false,
                           "Ocorreu um erro ao salvar o funcionário",
                           new {}));
            }

            var funcionario = new Funcionario(comando.Nome, comando.Email, comando.Senha);

            AddNotifications(funcionario.Notifications);

            if (!Invalid)
            {
                _repositorio.Salvar(funcionario);
            }
            else
            {
                return(new ResultadoComando(false, "Ocorreu um erro ao salvar o funcionário", new { funcionario.Notifications }));
            }

            return(new ResultadoComando(
                       true,
                       "Funcionário cadastrado com sucesso!",
                       new { email = funcionario.Email }));
        }
예제 #4
0
        public IComandResult Handle(SalvarFuncionarioCommands comand)
        {
            var r = new List <string>();

            //verificar se tem notificação no comand
            if (!comand.IsValid())
            {
                return(new ComandResult(false, "Por favor corrija os campos abaixo", comand.Notifications));
            }
            var existeCpf   = _usuarioRepositorio.ExisteCpf(comand.Cpf);
            var existeEmail = _usuarioRepositorio.ExisteEmail(comand.Email);

            if (existeCpf)
            {
                return(new ComandResult(false, "Cpf já está cadastrado,verifique se o usuário não está inativo!", new { }));
            }

            if (existeEmail)
            {
                return(new ComandResult(false, "Email já está cadastrado,cadastre outro!", new { }));
            }
            comand.Senha = "123456";
            var usuario    = new Usuario(comand.Nome, comand.SobreNome, comand.Cpf, comand.Senha, comand.Email);
            var chaveSenha = Functions.GetRandomString();
            var _senha     = Crypto.EncriptarSenha(comand.Senha, chaveSenha);

            usuario.SetarChaveSenha(chaveSenha, _senha);
            usuario.SetarTipoUsuario(comand.TipoUsuario);
            //usuario.SetarFoto();

            var _user = _usuarioRepositorio.Salvar(usuario);

            var dadoPessoal = new DadoPessoal(comand.Rua, comand.Numero, comand.Bairro, comand.Uf, comand.Cidade, comand.Cep, comand.Complemento);
            var ret         = _dadoPessoalRepositorio.Salvar(dadoPessoal);



            var funcionario = new Funcionario(comand.Nome, comand.SobreNome, comand.DataNascimento, comand.Sexo, comand.Nacionalidade, comand.Natural, ret.Id, _user.Id, comand.UsuarioId, Guid.Parse(comand.FuncaoId));

            funcionario.SetarCelular(comand.Celular);
            funcionario.SetarEmail(comand.Email);
            funcionario.SetarRgCpf(comand.Rg, comand.Cpf);
            funcionario.SetarTelefoneFixo(comand.TelefoneFixo);
            funcionario.AtivarDesativar();
            var retorno = _repository.Salvar(funcionario);


            return(new ComandResult(true, "Dados Salvos com Sucesso!!", new { r }));
        }
 public Funcionario Adicionar(Funcionario funcionario)
 {
     funcionario.Validar();
     return(_funcionarioRepositorio.Salvar(funcionario));
 }
예제 #6
0
 public Funcionario Adicionar(Funcionario entidade)
 {
     return(_funcionarioRepositorio.Salvar(entidade));
 }