private void mgEmpleados_CellClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex >= 0 && this.mgUsuarios.Columns[e.ColumnIndex].Name == "Editar" && e.RowIndex >= 0) { string IdUsuario = mgUsuarios.Rows[e.RowIndex].Cells["Id"].Value.ToString(); string IdEmpleado = mgUsuarios.Rows[e.RowIndex].Cells["IdEmpleado"].Value.ToString(); string Role = mgUsuarios.Rows[e.RowIndex].Cells["DescripcionRole"].Value.ToString(); string dni = mgUsuarios.Rows[e.RowIndex].Cells["Dni"].Value.ToString(); EditarUsuarioForm editarUsuarioForm = new EditarUsuarioForm(IdUsuario, IdEmpleado, Role); DataGridViewRow editarUsuario = mgUsuarios.Rows[e.RowIndex]; editarUsuarioForm.textBoxEmpleado.Text = editarUsuario.Cells["apellidoEmpleado"].Value.ToString() + ", " + editarUsuario.Cells["nombreEmpleado"].Value.ToString(); editarUsuarioForm.textBoxUsuario.Text = editarUsuario.Cells["Username"].Value.ToString(); editarUsuarioForm.ShowDialog(); if (editarUsuarioForm.okUpdate) { buscarUsuario("/usuarios/dni/", dni, true); } } if (e.ColumnIndex >= 0 && this.mgUsuarios.Columns[e.ColumnIndex].Name == "Ver" && e.RowIndex >= 0) { VerUsuarioForm verUsuarioForm = new VerUsuarioForm(); DataGridViewRow verUsuario = mgUsuarios.Rows[e.RowIndex]; verUsuarioForm.textBoxApellido.Text = verUsuario.Cells["apellidoEmpleado"].Value.ToString(); verUsuarioForm.textBoxNombre.Text = verUsuario.Cells["nombreEmpleado"].Value.ToString(); verUsuarioForm.textBoxDni.Text = verUsuario.Cells["Dni"].Value.ToString(); verUsuarioForm.textBoxUsername.Text = verUsuario.Cells["Username"].Value.ToString(); verUsuarioForm.textBoxRole.Text = verUsuario.Cells["DescripcionRole"].Value.ToString(); verUsuarioForm.Show(); } if (e.ColumnIndex >= 0 && this.mgUsuarios.Columns[e.ColumnIndex].Name == "Eliminar" && e.RowIndex >= 0) { int IdUsuario = int.Parse(mgUsuarios.Rows[e.RowIndex].Cells["Id"].Value.ToString()); DialogResult result = MessageBox.Show("¿Está seguro de eliminar el usuario?", "Eliminar Usuario", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { if (deleteUsuario(IdUsuario)) { mgUsuarios.Visible = false; } } } }
public ActionResult Editar(EditarUsuarioForm model) { ModelState.Clear(); using (FormularioBoletaGarantiaEntities ctx = new FormularioBoletaGarantiaEntities()) { Usuario usuario = null; if (model.Id > 0) { usuario = ctx.Usuario.Where(t => t.Id == model.Id).FirstOrDefault(); if (usuario == null) { throw new HttpException(404, "Usuario no existe."); } model.Nombre = usuario.Nombre; model.Cuenta = usuario.Usuario1; model.GrupoId = usuario.GrupoId; } //int[] ids = new int[] { 1, 2, 8, 9 }; //List<Grupo> grupos = ctx.Grupo.Where(g => ids.Contains(g.Id)).ToList(); List <Grupo> grupos = ctx.Grupo.ToList(); List <InmobiliariaItem> inmobiliarias = ctx.SP_UsuarioInmobiliarias(usuario == null ? 0 : usuario.Id).Select(ui => new InmobiliariaItem { UsuarioInmobiliariaId = ui.UsuarioInmobiliariaId, InmobiliariaId = ui.Id, Nombre = ui.Nombre, Checked = ui.Checked, }).ToList(); model.Inmobiliarias = inmobiliarias; ViewBag.Usuario = usuario; ViewBag.Grupos = grupos; return(View(model)); } }
public ActionResult EditarPost(EditarUsuarioForm model) { using (FormularioBoletaGarantiaEntities ctx = new FormularioBoletaGarantiaEntities()) { Usuario usuario = new Usuario(); bool repetido = false; if (!model.IsNew) { usuario = ctx.Usuario.Where(t => t.Id == model.Id).FirstOrDefault(); if (usuario == null) { throw new HttpException(404, "Usuario no existe."); } repetido = ctx.Usuario.Where(u => u.Id != usuario.Id && u.Usuario1 == model.Cuenta).Any(); } else { repetido = ctx.Usuario.Where(u => u.Usuario1 == model.Cuenta).Any(); } if (repetido) { ModelState.AddModelError("Cuenta", "Ya existe un usuario usando esta cuenta."); } if (ModelState.IsValid) { usuario.Nombre = model.Nombre; usuario.Dominio = "SOCOVESA"; usuario.Usuario1 = model.Cuenta; usuario.GrupoId = model.GrupoId; usuario.FechaModificacion = DateTime.Now; if (model.IsNew) { usuario.Eliminado = false; usuario.FechaCreacion = DateTime.Now; ctx.Usuario.Add(usuario); } ctx.SaveChanges(); Dictionary <int?, UsuarioInmobiliaria> usuarioInmobiliarias = ctx.UsuarioInmobiliaria.Where(ui => ui.UsuarioId == usuario.Id).ToDictionary(ui => ui.InmobiliariaId, ui => ui); foreach (InmobiliariaItem ui in model.Inmobiliarias) { if (usuarioInmobiliarias.ContainsKey(ui.InmobiliariaId)) { UsuarioInmobiliaria _ui = usuarioInmobiliarias[ui.InmobiliariaId]; if (ui.Checked == null || ui.Checked == false) { ctx.UsuarioInmobiliaria.Remove(_ui); } } else if (ui.Checked == true) { UsuarioInmobiliaria _ph = new UsuarioInmobiliaria(); _ph.UsuarioId = usuario.Id; _ph.InmobiliariaId = ui.InmobiliariaId; ctx.UsuarioInmobiliaria.Add(_ph); } } ctx.SaveChanges(); FlashMessagesHelper.Ok(TempData, "Usuario guardado correctamente."); return(RedirectToAction("Index")); } List <Grupo> grupos = ctx.Grupo.ToList(); ViewBag.Usuario = usuario; ViewBag.Grupos = grupos; return(View(model)); } }