Exemplo n.º 1
0
        public async Task <IActionResult> ResetPassword(Int32 id, Models.RRHH.Beneficiario item)
        {
            if (id != item.IdBeneficiario)
            {
                return(View("_NoEncontrado"));
            }

            var ben = await DB.RRHH_Beneficiario.Include(b => b.AspNetUser)
                      .FirstOrDefaultAsync(m => m.IdBeneficiario == id);


            if (ModelState.IsValid)
            {
                var user = ben.AspNetUser;

                // Generate the reset token (this would generally be sent out as a query parameter as part of a 'reset' link in an email)
                string resetToken = await _userManager.GeneratePasswordResetTokenAsync(user);

                // Use the reset token to verify the provenance of the reset request and reset the password.
                IdentityResult updateResult = await _userManager.ResetPasswordAsync(user, resetToken, item.Password);

                user.LastChangedPassword = null;
                DB.ApplicationUser.Update(user);
                await DB.SaveChangesAsync();
            }

            return(PartialView("ResetPassword", item));
        }
Exemplo n.º 2
0
        // GET: RRHH/Beneficiario/Create
        public IActionResult Create()
        {
            var model = new Models.RRHH.Beneficiario();

            model.RolUsuario = "4c7e18e8-0305-42ed-ade3-ab1640f7b00e"; //Normal
            model.Password   = "******";

            var unidades = DB.RRHH_UnidadEjecutora
                           .Where(i => i.IdEstadoRegistro != Constantes.Anulado && i.EsExterna == false)
                           .OrderBy(i => i.Descripcion).ToList();

            var puestos = DB.RRHH_Puesto.Where(p => p.IdEstadoRegistro != Constantes.Anulado)
                          .OrderBy(i => i.Descripcion).ToList();

            var roles = DB.Roles.Where(r => r.Name != SD.SuperAdminEndUser)
                        .OrderBy(r => r.Name).ToList();


            ViewBag.Unidades = unidades;
            ViewBag.Puestos  = puestos;
            ViewBag.Roles    = roles;

            return(PartialView("Create", model));
        }
Exemplo n.º 3
0
        ///public async Task<IActionResult> Edit(Int32 id, [Bind("IdBeneficiario,Denominacion,PrimerApellido, SegundoApellido,PrimerNombre, SegundoNombre,PuestoId")] Models.RRHH.Beneficiario item)
        public async Task <IActionResult> Edit(Int32 id, Models.RRHH.Beneficiario item)
        {
            if (id != item.IdBeneficiario)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    ApplicationUser currentUser = await GetCurrentUser();

                    item.IdUsuario = currentUser.AspNetUserId;
                    item.IdBeneficiarioClasificacion = 2;
                    item.Nit                 = "0";
                    item.Iniciales           = "NN";
                    item.IdDocumentoRespaldo = 0;
                    item.FechaNacimiento     = DateTime.Now;
                    item.IdGenero            = 0;
                    item.TelefonoFijo        = "0";
                    item.TelefonoOficina     = "0";
                    item.EmailPersonal       = "";
                    item.EmailOficina        = "";
                    item.DomicilioLegal      = "";
                    item.IdBarrio            = 0;
                    item.IdCalle             = 0;
                    item.IdMunicipio         = 0;
                    item.IdEdificio          = 0;
                    item.EdificioNumero      = "0";
                    item.EdificioNumeroPiso  = "0";
                    item.EdificioNumeroDepto = "0";
                    item.EsDeudor            = "NO";
                    item.EsHabilitado        = false;
                    item.FechaRegistro       = DateTime.Now;
                    item.Denominacion        =
                        $"{item.PrimerApellido} {item.SegundoApellido} {item.PrimerNombre} {item.SegundoNombre}";
                    DB.Update(item);
                    await DB.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ItemExists(item.IdBeneficiario))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }

            var unidades = DB.RRHH_UnidadEjecutora
                           .Where(i => i.IdEstadoRegistro != Constantes.Anulado && i.EsExterna == false)
                           .OrderBy(i => i.Descripcion).ToList();

            var puestos = DB.RRHH_Puesto.Where(p => p.IdEstadoRegistro != Constantes.Anulado)
                          .OrderBy(i => i.Descripcion).ToList();


            ViewBag.Unidades = unidades;
            ViewBag.Puestos  = puestos;

            return(PartialView("Edit", item));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Create(Models.RRHH.Beneficiario item)
        {
            if (ModelState.IsValid)
            {
                ApplicationUser currentUser = await GetCurrentUser();

                item.IdUsuario = currentUser.AspNetUserId;
                item.IdBeneficiarioClasificacion = 2;
                item.Nit                 = "0";
                item.Iniciales           = "NN";
                item.IdDocumentoRespaldo = 0;
                item.FechaNacimiento     = DateTime.Now;
                item.IdGenero            = 0;
                item.TelefonoFijo        = "0";
                item.TelefonoOficina     = "0";
                item.EmailPersonal       = "";
                item.EmailOficina        = "";
                item.DomicilioLegal      = "";
                item.IdBarrio            = 0;
                item.IdCalle             = 0;
                item.IdMunicipio         = 0;
                item.IdEdificio          = 0;
                item.EdificioNumero      = "0";
                item.EdificioNumeroPiso  = "0";
                item.EdificioNumeroDepto = "0";
                item.EsDeudor            = "NO";
                item.EsHabilitado        = false;
                item.FechaRegistro       = DateTime.Now;
                item.IdEstadoRegistro    = Constantes.Registrado;
                item.Denominacion        =
                    $"{item.PrimerApellido} {item.SegundoApellido} {item.PrimerNombre} {item.SegundoNombre}";
                DB.Add(item);
                await DB.SaveChangesAsync();

                var ben = DB.RRHH_Beneficiario.FirstOrDefault(b => b.DocumentoIdentidad == item.DocumentoIdentidad);
                if (ben != null)
                {
                    var user = new ApplicationUser
                    {
                        UserName     = item.Username, Email = item.Email, Name = item.Denominacion, EmailConfirmed = true,
                        AspNetUserId = ben.IdBeneficiario
                    };
                    var userCreated = await _userManager.CreateAsync(user, "User123*"); // <- Creacion de Usuario

                    if (userCreated.Succeeded)
                    {
                        var role_name = DB.Roles.FirstOrDefault(i => i.Id == item.RolUsuario).ToString();
                        await _userManager.AddToRoleAsync(user, role_name); // <- Asignacion de rol
                    }
                }

                SetFlashSuccess("Registro creado satisfactoriamente");
            }

            //Puesto
            var unidades = DB.RRHH_UnidadEjecutora
                           .Where(i => i.IdEstadoRegistro != Constantes.Anulado && i.EsExterna == false)
                           .OrderBy(i => i.Descripcion).ToList();

            var puestos = DB.RRHH_Puesto.Where(p => p.IdEstadoRegistro != Constantes.Anulado)
                          .OrderBy(i => i.Descripcion).ToList();

            var roles = DB.Roles.Where(r => r.Name != SD.SuperAdminEndUser)
                        .OrderBy(r => r.Name).ToList();

            ViewBag.Unidades = unidades;
            ViewBag.Puestos  = puestos;
            ViewBag.Roles    = roles;

            return(PartialView("Create", item));
        }