Esempio n. 1
0
        public UsuarioViewModel AdicionarAspNetUser(UsuarioViewModel model)
        {
            model.Id = _usuarioService.BuscarUltimoUsuarioMaisUm().ToString();
            var usuario = UsuarioAdapterToEntity.ViewModelToEntity(model);

            BeginTransaction();
            var user = new IdentityUser {
                UserName = model.UserName, Email = model.Email
            };

            user.Id = model.Id;

            var result = _userManager.CreateAsync(user, model.Password);
            var query  = _usuarioService.AdicionarAspNetUser(usuario);

            model = UsuarioAdapterToViewModel.EntityToViewModel(query);
            if (result.Result.Succeeded && query.validateResult.IsValid)
            {
                query.validateResult.Success = "Cadastro realizado com sucesso!";
                model.ValidationResult.Info  = "Registro Sucesso";
                Commit();
            }
            else
            {
                model.ValidationResult.Info = "Registrar Erro";
                var erros = result.Result.Errors;
                foreach (var item in erros)
                {
                    query.validateResult.notifications.Add(new Notification(1, item.Description, DateTime.Now));
                }
                _userManager.DeleteAsync(user);
            }
            return(model);
        }