public static string ObtenerClaseGenerador(int pIdClaseGenerador) { CConexion ConexionBaseDatos = new CConexion(); string respuesta = ConexionBaseDatos.ConectarBaseDatosSqlServer(); bool puedeEditarClasesBloqueadas = false; JObject o = new JObject(); JObject oPermisos = new JObject(); CUsuario Usuario = new CUsuario(); if (Usuario.TienePermisos(new string[] { "puedeEditarClasesBloquedas" }, ConexionBaseDatos) == "") { puedeEditarClasesBloqueadas = true; } oPermisos.Add("PuedeEditarClasesBloqueadas", puedeEditarClasesBloqueadas); if (respuesta == "Conexion Establecida") { JObject Modelo = new JObject(); CClaseGenerador ClaseGenerador = new CClaseGenerador(); ClaseGenerador.LlenaObjeto(pIdClaseGenerador, ConexionBaseDatos); Modelo.Add(new JProperty("IdClaseGenerador", ClaseGenerador.IdClaseGenerador)); Modelo.Add(new JProperty("Clase", ClaseGenerador.Clase)); Modelo.Add(new JProperty("Bloqueo", ClaseGenerador.Bloqueo)); Modelo.Add(new JProperty("ManejaBaja", ClaseGenerador.ManejaBaja)); Modelo.Add(new JProperty("Abreviatura", ClaseGenerador.Abreviatura)); JArray Atributos = new JArray(); CClaseAtributo ClaseAtributo = new CClaseAtributo(); ClaseAtributo.IdClaseGenerador = ClaseGenerador.IdClaseGenerador; foreach (CClaseAtributo OCA in ClaseAtributo.LlenaObjetos_FiltroIdClaseGenerador(ClaseGenerador.IdClaseGenerador, ConexionBaseDatos)) { JObject Atributo = new JObject(); Atributo.Add(new JProperty("IdClaseAtributo", OCA.IdClaseAtributo)); Atributo.Add(new JProperty("Atributo", OCA.Atributo)); Atributo.Add(new JProperty("TipoAtributo", OCA.TipoAtributo)); Atributo.Add(new JProperty("Longitud", OCA.Longitud)); Atributo.Add(new JProperty("Decimales", OCA.Decimales)); Atributo.Add(new JProperty("LlavePrimaria", OCA.LlavePrimaria)); Atributo.Add(new JProperty("Identidad", OCA.Identidad)); Atributos.Add(Atributo); } Modelo.Add(new JProperty("Atributos", Atributos)); Modelo.Add(new JProperty("Permisos", oPermisos)); o.Add(new JProperty("Error", 0)); o.Add(new JProperty("Modelo", Modelo)); ConexionBaseDatos.CerrarBaseDatosSqlServer(); } else { o.Add(new JProperty("Error", 1)); o.Add(new JProperty("Descripcion", "Esto fue un error")); } ConexionBaseDatos.CerrarBaseDatosSqlServer(); return(o.ToString()); }
public static string EditarGenerador(Dictionary <string, object> pClaseGenerador) { CConexion ConexionBaseDatos = new CConexion(); string respuesta = ConexionBaseDatos.ConectarBaseDatosSqlServer(); CClaseGenerador ClaseGenerador = new CClaseGenerador(); ClaseGenerador.IdClaseGenerador = Convert.ToInt32(pClaseGenerador["IdClaseGenerador"]); ClaseGenerador.Clase = Convert.ToString(pClaseGenerador["Clase"]); ClaseGenerador.Bloqueo = Convert.ToBoolean(pClaseGenerador["Bloqueo"]); ClaseGenerador.ManejaBaja = Convert.ToBoolean(pClaseGenerador["ManejaBaja"]); ClaseGenerador.Abreviatura = Convert.ToString(pClaseGenerador["Abreviatura"]); List <CClaseAtributo> Atributos = new List <CClaseAtributo>(); foreach (Dictionary <string, object> OAtributo in (Array)pClaseGenerador["Atributos"]) { CClaseAtributo CClaseAtributo = new CClaseAtributo(); CClaseAtributo.IdClaseAtributo = Convert.ToInt32(OAtributo["IdClaseAtributo"]); CClaseAtributo.Atributo = Convert.ToString(OAtributo["Atributo"]); CClaseAtributo.TipoAtributo = Convert.ToString(OAtributo["TipoAtributo"]); CClaseAtributo.LlavePrimaria = Convert.ToString(OAtributo["LlavePrimaria"]).ToLower().Trim(); CClaseAtributo.Identidad = Convert.ToString(OAtributo["Identidad"]).ToLower().Trim(); CClaseAtributo.Longitud = Convert.ToString(OAtributo["Longitud"]); CClaseAtributo.Decimales = Convert.ToString(OAtributo["NumeroDecimales"]); CClaseAtributo.IdClaseGenerador = ClaseGenerador.IdClaseGenerador; Atributos.Add(CClaseAtributo); } string validacion = ValidaClaseGenerador(ClaseGenerador, Atributos, ConexionBaseDatos); JObject o = new JObject(); o.Add(new JProperty("Error", 0)); if (validacion == "") { JObject Modelo = new JObject(); Modelo.Add(new JProperty("IdClaseGenerador", ClaseGenerador.IdClaseGenerador)); ClaseGenerador.EditarTabla(ClaseGenerador, Atributos, Convert.ToString(pClaseGenerador["ClaseAnterior"]), ConexionBaseDatos); ClaseGenerador.EliminarStoredProcedures(ClaseGenerador, ConexionBaseDatos); if (ClaseGenerador.CrearStoredProcedures(ClaseGenerador, Atributos, ConexionBaseDatos) == "") { o["Error"] = 1; o.Add(new JProperty("Descripcion", "<span>*</span> Ocurrio un error al editar los stored procedures.")); } if ((int)o["Error"] == 0) { ClaseGenerador.CrearClase(ClaseGenerador, Atributos, ConexionBaseDatos); } ClaseGenerador.Editar(ConexionBaseDatos); CClaseAtributo ObtenerAtributos = new CClaseAtributo(); List <CClaseAtributo> AtributosActuales = new List <CClaseAtributo>(); foreach (CClaseAtributo Atributo in ObtenerAtributos.LlenaObjetos_FiltroIdClaseGenerador(ClaseGenerador.IdClaseGenerador, ConexionBaseDatos)) { AtributosActuales.Add(Atributo); } foreach (CClaseAtributo AtributoActual in AtributosActuales) { bool eliminar = true; foreach (CClaseAtributo Atributo in Atributos) { if (AtributoActual.IdClaseAtributo == Atributo.IdClaseAtributo) { eliminar = false; } if (eliminar == false) { break; } } if (eliminar == true) { AtributoActual.Eliminar(ConexionBaseDatos); } } ClaseGenerador.Editar(ConexionBaseDatos); foreach (CClaseAtributo Atributo in Atributos) { if (Atributo.IdClaseAtributo == 0) { Atributo.Agregar(ConexionBaseDatos); } else { Atributo.Editar(ConexionBaseDatos); } } o.Add(new JProperty("Modelo", Modelo)); ConexionBaseDatos.CerrarBaseDatosSqlServer(); } else { o.Add(new JProperty("Error", 1)); o.Add(new JProperty("Descripcion", validacion)); } ConexionBaseDatos.CerrarBaseDatosSqlServer(); return(o.ToString()); }