示例#1
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 }));
        }