Exemplo n.º 1
0
        public UsuarioFuncionario Cadastrar(UsuarioCadastrarVM vm, string sessionId = null)
        {
            var model = Data.Create();

            model.Inject(vm);
            model.Funcionario = _context.Set <Funcionario>().Create();
            model.Funcionario.Inject(vm);
            model.Funcionario.CargoId = vm.CargoId.Value;
            model.SessionId           = sessionId;
            model.Notificacoes        = EnumExtensions.GetEnumerable <TipoEventoEnum>().Select(a =>
                                                                                               new UsuarioNotificacao
            {
                Notificar  = true,
                TipoEvento = a
            }).ToList();

            _mailProvider.SendAsync(MailTemplateEnum.Welcome, model.Email, null, model.Funcionario.Nome);
            return(Save(model));
        }
Exemplo n.º 2
0
        public async Task <ActionResult> Cadastrar(UsuarioCadastrarVM vm)
        {
            if (ModelState.IsValid)
            {
                if (!await CheckRecaptchaAsync())
                {
                    this.AlertError("Atenção!", "Captcha inválido");
                    ViewBag.Cargos = _cargoDomain.GetSelectList();
                    return(View(vm));
                }

                Login(_domain.Cadastrar(vm, Session.SessionID));
                return(RedirectToAction("Index", "Funcionario"));
            }


            this.AlertError();
            ViewBag.Cargos = _cargoDomain.GetSelectList();
            return(View(vm));
        }