public int guardarDatosTipoUsuario([FromBody] TipoUsuarioCLS oTipoUsuarioCLS) { int rpta = 0; try { using (BDRestauranteContext bd = new BDRestauranteContext()) { using (var transaccion = new TransactionScope()) { if (oTipoUsuarioCLS.iidtipousuario == 0) { TipoUsuario oTipoUsuario = new TipoUsuario(); oTipoUsuario.Nombre = oTipoUsuarioCLS.nombre; oTipoUsuario.Descripcion = oTipoUsuarioCLS.descripcion; oTipoUsuario.Bhabilitado = 1; bd.TipoUsuario.Add(oTipoUsuario); int idTipoUsuario = oTipoUsuario.Iidtipousuario; string[] ids = oTipoUsuarioCLS.valores.Split("$"); for (int i = 0; i < ids.Length; i++) { PaginaTipoUsuario oPaginaTipoUsuario = new PaginaTipoUsuario(); oPaginaTipoUsuario.Iidpagina = int.Parse(ids[i]); oPaginaTipoUsuario.Iidtipousuario = idTipoUsuario; oPaginaTipoUsuario.Bhabilitado = 1; bd.PaginaTipoUsuario.Add(oPaginaTipoUsuario); } bd.SaveChanges(); transaccion.Complete(); rpta = 1; } else { //Recuperamos la información TipoUsuario oTipoUsuario = bd.TipoUsuario.Where(p => p.Iidtipousuario == oTipoUsuarioCLS.iidtipousuario).First(); oTipoUsuario.Nombre = oTipoUsuarioCLS.nombre; oTipoUsuario.Descripcion = oTipoUsuarioCLS.descripcion; bd.SaveChanges(); string[] ids = oTipoUsuarioCLS.valores.Split("$"); //Aca con el Id Tipo usuario (paginas asociadas lo vamos a deshabilitar) List <PaginaTipoUsuario> lista = bd.PaginaTipoUsuario.Where(p => p.Iidtipousuario == oTipoUsuarioCLS.iidtipousuario).ToList(); foreach (PaginaTipoUsuario pag in lista) { pag.Bhabilitado = 0; } //Editar (si es que el id de pagina es nuevo, lo insertamos, si es un editar //cambiamos de bhabilitado 0 a 1 int cantidad; for (int i = 0; i < ids.Length; i++) { cantidad = lista.Where(p => p.Iidpagina == int.Parse(ids[i])).Count(); if (cantidad == 0) { PaginaTipoUsuario oPaginaTipoUsuario = new PaginaTipoUsuario(); oPaginaTipoUsuario.Iidpagina = int.Parse(ids[i]); oPaginaTipoUsuario.Iidtipousuario = oTipoUsuarioCLS.iidtipousuario; oPaginaTipoUsuario.Bhabilitado = 1; bd.PaginaTipoUsuario.Add(oPaginaTipoUsuario); } else { PaginaTipoUsuario oP = lista.Where(p => p.Iidpagina == int.Parse(ids[i])).First(); oP.Bhabilitado = 1; } } bd.SaveChanges(); transaccion.Complete(); rpta = 1; } } } } catch (Exception) { return(0); } return(rpta); }
public int guardarTipoUsuario([FromBody] TipoUsuarioDTO tipoUsuario) { int res = 0; try { using (BDRestauranteContext db = new BDRestauranteContext()) { using (var transaccion = new TransactionScope()) { if (tipoUsuario.idTipoUsuario == 0) { db.TipoUsuario.Add(new TipoUsuario { Bhabilitado = 1, Nombre = tipoUsuario.nombre, Descripcion = tipoUsuario.descripcion }); db.SaveChanges(); int idTUAdd = (db.TipoUsuario.Where(d => d.Nombre.Equals(tipoUsuario.nombre)).FirstOrDefault()).Iidtipousuario; var paginas = tipoUsuario.valores.Split("$"); foreach (var pagina in paginas) { db.PaginaTipoUsuario.Add(new PaginaTipoUsuario { Bhabilitado = 1, Iidpagina = int.Parse(pagina), Iidtipousuario = idTUAdd }); } db.SaveChanges(); transaccion.Complete(); res = 1; } else { TipoUsuario tUsuario = db.TipoUsuario.Where(d => d.Iidtipousuario == tipoUsuario.idTipoUsuario).FirstOrDefault(); tUsuario.Nombre = tipoUsuario.nombre; tUsuario.Descripcion = tipoUsuario.descripcion; var paginas = tipoUsuario.valores.Split("$"); List <PaginaTipoUsuario> paginasDB = db.PaginaTipoUsuario.Where(d => d.Iidtipousuario == tipoUsuario.idTipoUsuario).ToList(); paginasDB.ForEach(d => { d.Bhabilitado = 0; }); int cantidad = 0; foreach (var pgId in paginas) { cantidad = paginasDB.Where(d => d.Iidpagina == int.Parse(pgId)).Count(); if (cantidad == 0) { db.PaginaTipoUsuario.Add(new PaginaTipoUsuario { Bhabilitado = 1, Iidpagina = int.Parse(pgId), Iidtipousuario = tipoUsuario.idTipoUsuario }); } else { PaginaTipoUsuario paginaTipoUsuario = paginasDB.Where(d => d.Iidpagina == int.Parse(pgId)).FirstOrDefault(); paginaTipoUsuario.Bhabilitado = 1; } } db.SaveChanges(); transaccion.Complete(); res = 1; } } } } catch (Exception ex) { return(0); } return(res); }
public int guardarDatosTipoUsuario([FromBody] TipoUsuarioCLS oTipoUsuarioCLS) { int rpta = 0; try { using (BDRestauranteContext bd = new BDRestauranteContext()) { using (var transaccion = new TransactionScope()) { if (oTipoUsuarioCLS.iidtipousuario == 0) { TipoUsuario oTipoUsuario = new TipoUsuario(); oTipoUsuario.Nombre = oTipoUsuarioCLS.nombre; oTipoUsuario.Descripcion = oTipoUsuarioCLS.descripcion; oTipoUsuario.Bhabilitado = oTipoUsuarioCLS.bhabilitado; bd.TipoUsuario.Add(oTipoUsuario); int idTipoUsuario = oTipoUsuario.Iidtipousuario; string[] ids = oTipoUsuarioCLS.valores.Split("$"); for (int i = 0; i < ids.Length; i++) { PaginaTipoUsuario oPaginaTipoUsuario = new PaginaTipoUsuario(); oPaginaTipoUsuario.Iidpagina = int.Parse(ids[i]); oPaginaTipoUsuario.Iidtipousuario = idTipoUsuario; oPaginaTipoUsuario.Bhabilitado = 1; bd.PaginaTipoUsuario.Add(oPaginaTipoUsuario); } bd.SaveChanges(); transaccion.Complete(); rpta = 1; } else { TipoUsuario oTipousuario = bd.TipoUsuario.Where(p => p.Iidtipousuario == oTipoUsuarioCLS.iidtipousuario).First(); oTipousuario.Nombre = oTipoUsuarioCLS.nombre; oTipousuario.Descripcion = oTipoUsuarioCLS.descripcion; bd.SaveChanges(); string[] ids = oTipoUsuarioCLS.valores.Split("$"); List <PaginaTipoUsuario> lista = bd.PaginaTipoUsuario.Where(p => p.Iidtipousuario == oTipoUsuarioCLS.iidtipousuario).ToList(); foreach (PaginaTipoUsuario pag in lista) { pag.Bhabilitado = 0; } int cantidad; for (int i = 0; i < ids.Length; i++) { cantidad = lista.Where(p => p.Iidpagina == int.Parse(ids[i])).Count(); if (cantidad == 0) { PaginaTipoUsuario oPaginaTipoUsuario = new PaginaTipoUsuario(); oPaginaTipoUsuario.Iidpagina = int.Parse(ids[i]); oPaginaTipoUsuario.Iidtipousuario = oTipoUsuarioCLS.iidtipousuario; oPaginaTipoUsuario.Bhabilitado = 1; bd.PaginaTipoUsuario.Add(oPaginaTipoUsuario); } else { PaginaTipoUsuario oP = lista.Where(p => p.Iidpagina == int.Parse(ids[i])).First(); oP.Bhabilitado = 1; } } bd.SaveChanges(); transaccion.Complete(); rpta = 1; } } } }catch (Exception ex) { ex.ToString(); rpta = 0; } return(rpta); }
public int SaveData([FromBody] UserTypeCLS userTypeCLS) { int response = 0; try { using (BDRestauranteContext bd = new BDRestauranteContext()) { using (TransactionScope transaction = new TransactionScope()) { if (userTypeCLS.IdUserType == 0) { TipoUsuario tipoUsuario = new TipoUsuario { Nombre = userTypeCLS.Name, Bhabilitado = 1, Descripcion = userTypeCLS.Description }; bd.TipoUsuario.Add(tipoUsuario); int idTipoUsuario = tipoUsuario.Iidtipousuario; string[] values = userTypeCLS.values.Split("$"); // Pendiente refactorizar por un select for (int i = 0; i < values.Length; i++) { PaginaTipoUsuario oPaginaTipoUsuario = new PaginaTipoUsuario { Iidpagina = int.Parse(values[i]), Iidtipousuario = idTipoUsuario, Bhabilitado = 1 }; bd.PaginaTipoUsuario.Add(oPaginaTipoUsuario); } bd.SaveChanges(); transaction.Complete(); response = 1; } else { TipoUsuario tipoUsuario = bd.TipoUsuario .Where(tu => tu.Iidtipousuario == userTypeCLS.IdUserType).FirstOrDefault(); tipoUsuario.Nombre = userTypeCLS.Name; tipoUsuario.Descripcion = userTypeCLS.descripcion; bd.SaveChanges(); string[] values = userTypeCLS.values.Split("$"); List <PaginaTipoUsuario> list = bd.PaginaTipoUsuario .Where(ptu => ptu.Iidtipousuario == userTypeCLS.IdUserType).ToList(); list.Select(l => l.Bhabilitado = 0); // copiado tal cual como el profe int cantidad; for (int i = 0; i < values.Length; i++) { cantidad = list.Where(p => p.Iidpagina == int.Parse(values[i])).Count(); if (cantidad == 0) { PaginaTipoUsuario oPaginaTipoUsuario = new PaginaTipoUsuario { Iidpagina = int.Parse(values[i]), Iidtipousuario = userTypeCLS.IdUserType, Bhabilitado = 1 }; bd.PaginaTipoUsuario.Add(oPaginaTipoUsuario); } else { PaginaTipoUsuario oP = list.Where(p => p.Iidpagina == int.Parse(values[i])).FirstOrDefault(); oP.Bhabilitado = 1; } } bd.SaveChanges(); transaction.Complete(); response = 1; } } } } catch (Exception) { } return(response); }