/// <summary> /// Método Público encargado de Obtener los Eventos dado un Detalle de Acceso /// </summary> /// <param name="id_detalle_acceso">Detalle de Acceso</param> /// <returns></returns> public string ObtieneEventosDetalleAcceso(int id_detalle_acceso) { //Declarando Objeto de Retorno string resultado = ""; //Obteniendo Eventos por Detalle de Acceso using (DataTable dtEventos = EventoDetalleAcceso.ObtieneEventosPorDetalleInstruccion(id_detalle_acceso)) { //Validando que existan registros if (TSDK.Datos.Validacion.ValidaOrigenDatos(dtEventos)) { //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML dtEventos.WriteXml(s); //Convirtiendo el flujo a una cadena de caracteres xml resultado = System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s)); } } } //Devolviendo Resultado Obtenido return(resultado); }
/// <summary> /// Obtiene el catálogo clasificado como general, solicitado a partir de su id y un valor de un catálogo superior /// </summary> /// <param name="id_catalogo">Id de Catálogo a consultar</param> /// <param name="opcion_inicial">Primer elemento del listado devuelto (no incluido en el catálogo original). Si es una cadena vacía, sólo se obtendrá el catálogo</param> /// <param name="valor_superior">Valor del catálogo superior</param> /// <returns></returns> public string CargaCatalogoGeneralParametros(int id_catalogo, string opcion_inicial, int valor_superior) { //Declarando objeto de retorno string resultado = ""; //Validando que el parámetro id_catalogo se haya especificado, para evitar consultas no necesarias if (id_catalogo > 0) { //Consultando catálogo solicitado using (DataTable mit = SAT_CL.CapaNegocio.m_capaNegocio.CargaCatalogoGeneral(2, opcion_inicial, id_catalogo, 0, valor_superior, 0, "", 0, "")) { //Validando que existan registros if (Validacion.ValidaOrigenDatos(mit)) { //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML mit.WriteXml(s); //Convirtiendo el flujo a una cadena de caracteres xml resultado = System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s)); } } } } //Devolviendo resultado return(resultado); }
/// <summary> /// Obtiene las compañías a las que está adscrito el usuario /// </summary> /// <param name="id_usuario">Id de Usuario</param> /// <returns>System.Data.DataTable en formato xml</returns> public string ObtieneCompaniasUsuario(int id_usuario) { //Declarando objeto de resultado string resultado = ""; //Si el usuario fue proporcionado if (id_usuario > 0) { //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Obteniendo conjunto de compañía using (DataTable mit = SAT_CL.Seguridad.UsuarioCompania.ObtieneCompaniasUsuario(id_usuario)) { //Realizando filtrado de columnas using (DataTable mitCopia = OrigenDatos.CopiaDataTableFiltrandoColumnas(mit, "Table", false, "IdCompaniaEmisorReceptor", "NombreCorto")) { //Validando que existan registros if (Validacion.ValidaOrigenDatos(mitCopia)) { //Leyendo flujo de datos XML mitCopia.WriteXml(s); //Convirtiendo el flujo a una cadena de caracteres xml resultado = System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s)); } } } } } //Devolviendo resultado return(resultado); }
/// <summary> /// Obtiene el Reporte de las Unidades que se encuentran en Patio /// </summary> /// <param name="descripcion">Descripción de la Unidad</param> /// <param name="id_patio">Ubicación de Patio</param> /// <returns></returns> public string ObtieneUnidadesDentro(string descripcion, int id_patio) { //Declarando Objeto de Retorno string resultado = ""; //Declarando Tabla de Sugerencias using (DataTable dtUnidades = new DataTable("Table")) { //Creando Columnas dtUnidades.Columns.Add("id", typeof(int)); dtUnidades.Columns.Add("detalleUnidad", typeof(string)); dtUnidades.Columns.Add("identificador", typeof(string)); dtUnidades.Columns.Add("transportista", typeof(string)); dtUnidades.Columns.Add("fechaEntrada", typeof(string)); dtUnidades.Columns.Add("estado", typeof(string)); //Obteniendo Reporte using (DataTable dt = SAT_CL.ControlPatio.Reporte.ObtieneUnidadesDentroMovil(descripcion, id_patio)) { //Validando que existan Registros if (TSDK.Datos.Validacion.ValidaOrigenDatos(dt)) { //Recorriendo Ciclo foreach (DataRow dr in dt.Rows) { //Obteniendo Fecha DateTime fec_ent; DateTime.TryParse(dr["FechaEntrada"].ToString(), out fec_ent); //Añadiendo Fila a la Tabla dtUnidades.Rows.Add(Convert.ToInt32(dr["Id"]), dr["DetalleUnidad"].ToString() + " - " + dr["Tipo"].ToString(), dr["Identificador"].ToString(), dr["Transportista"].ToString(), fec_ent.ToString(fec_ent.Date.CompareTo(DateTime.Today) == 0 ? "HH:mm" : "dd MMM HH:mm", System.Globalization.CultureInfo.CreateSpecificCulture("es-MX")), dr["Estado"].ToString()); } //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML dtUnidades.WriteXml(s); //Convirtiendo el flujo a una cadena de caracteres xml resultado = System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s)); } } } } //Devolviendo Objeto de Retorno return(resultado); }
/// <summary> /// Método Público encargado de Cargar las Posibles Sugerencias /// </summary> /// <param name="contextKey">Indica el Catalogo a Obtener</param> /// <param name="prefix">Contiene el Indicio de las Opciones a Elegir</param> /// <param name="complement1">Indica el Primer complemento en caso de requerirse</param> /// <param name="complement2">Indica el Segundo complemento en caso de requerirse</param> /// <param name="complement3">Indica el Tercer complemento en caso de requerirse</param> /// <returns></returns> public string CargaConsultaSugerencia(int contextKey, string prefix, string complement1, string complement2, string complement3) { //Declarando Objeto de Retorno string resultado = ""; //Declarando Tabla de Sugerencias using (DataTable dtSugerencias = new DataTable("Table")) { //Creando Columnas dtSugerencias.Columns.Add("id", typeof(int)); dtSugerencias.Columns.Add("descripcion", typeof(string)); //Declarando Arreglo de Parametros object[] param = { contextKey, prefix, complement1, complement2, complement3 }; //Ejecutando Consulta using (DataSet ds = SAT_CL.CapaDatos.m_capaDeDatos.EjecutaProcAlmacenadoDataSet("global.sp_cargaConsultaSugerencia", param)) { //Validando que exista una tabla if (TSDK.Datos.Validacion.ValidaOrigenDatos(ds, "Table")) { //Recorriendo cada fila foreach (DataRow dr in ds.Tables["Table"].Rows) { //Añadiendo el Registro a la Tabla dtSugerencias.Rows.Add(Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(dr["descripcion"].ToString(), "ID:", 1)), TSDK.Base.Cadena.RegresaCadenaSeparada(dr["descripcion"].ToString(), "ID:", 0)); } //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML dtSugerencias.WriteXml(s); //Convirtiendo el flujo a una cadena de caracteres xml resultado = System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s)); } } } } //Devolviendo resultado return(resultado); }
/// <summary> /// Método Público encargado de Obtener las Unidades con Evento Pendientes de Confirmación /// </summary> /// <param name="id_patio">Ubicación de Patio</param> /// <returns></returns> public string ObtieneUnidadesEventosPendientes(int id_patio) { //Declarando Objeto de Retorno string resultado = ""; //Obteniendo Unidades con Eventos Pendientes using (DataTable dtUnidades = DetalleAccesoPatio.ObtieneUnidadesEventoPendientes(id_patio)) { //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML dtUnidades.WriteXml(s); //Convirtiendo el flujo a una cadena de caracteres xml resultado = System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s)); } } //Devolviendo Resultado Obtenido return(resultado); }
/// <summary> /// Construye la imagen y la envía al flujo de respuesta web /// </summary> private void creaImagen() { //Validando que l.os parámetros requeridos hayan sido enviados a la forma tipo_carga t_carga = tipo_carga.url; string url = ""; tipo_escala t_escala = tipo_escala.sin_escala; int porcentaje = 0, alto = 0, ancho = 0; if (recuperaVariablesQueryString(out t_carga, out url, out t_escala, out porcentaje, out alto, out ancho)) { //Definiendo arreglo de bytes byte[] bytes = null; Image imagen_escala = new Bitmap(1, 1); //Determinando el tipo de carga de imagen a realizar switch (t_carga) { case tipo_carga.url: //Creando cliente web var webClient = new WebClient(); //Descargando los datos de imagen bytes = webClient.DownloadData(url); //ALmacenando en flujo temporal using (MemoryStream ms = new System.IO.MemoryStream(bytes)) { imagen_escala = Image.FromStream(ms); } break; case tipo_carga.archivo: //Creando imagen original using (Image img = new Bitmap(url)) { //Realizando escala de imagen según se requiera switch (t_escala) { case tipo_escala.sin_escala: imagen_escala = new Bitmap(img); break; case tipo_escala.porcentual: imagen_escala = new Bitmap(img, new Size((img.Size.Width * porcentaje) / 100, (img.Size.Height * porcentaje) / 100)); break; case tipo_escala.pixcel: imagen_escala = new Bitmap(img, new Size(ancho, alto)); break; } } break; } //Creando flujo para contener imagen resultante using (MemoryStream ms = new System.IO.MemoryStream()) { imagen_escala.Save(ms, ImageFormat.Jpeg); bytes = Flujo.ConvierteFlujoABytes(ms); } try { Response.Buffer = true; Response.Charset = ""; Response.Cache.SetCacheability(HttpCacheability.NoCache); //Asignando tipo de imagen Response.ContentType = "jpeg"; Response.AddHeader("content-disposition", "attachment;filename=Imagen"); Response.BinaryWrite(bytes); } //Si ocurre un error mostramos imagen no disponible catch (Exception) { //Mostrando imagen de no disponible Response.Redirect("~/Image/noDisponible.jpg"); } //Liberando recursos finally { Response.Flush(); Response.End(); } } }
/// <summary> /// Método encargado de Obtener los Registros de Archivos Registro /// </summary> /// <param name="id_tabla">Tabla</param> /// <param name="id_registro">Registro</param> /// <param name="id_archivo_tipo_configuracion">Tipo de Configuración de Archivo</param> /// <returns></returns> public string CargaArchivosRegistro(string id_tabla, string id_registro, string id_archivo_tipo_configuracion) { //Declarando Objeto de Retorno XDocument document = new XDocument(); //Añadiendo Nodo Principal document.Add(new XElement("ArchivosRegistro")); //Obteniendo Archivos using (DataTable dtArchivosRegistro = SAT_CL.Global.ArchivoRegistro.ObtieneArchivoRegistro(Convert.ToInt32(id_tabla), Convert.ToInt32(id_registro), Convert.ToInt32(id_archivo_tipo_configuracion))) { //Validando que existan Registros if (TSDK.Datos.Validacion.ValidaOrigenDatos(dtArchivosRegistro)) { //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML dtArchivosRegistro.WriteXml(s, XmlWriteMode.WriteSchema); //Obteniendo DataSet en XML XElement dataTableElement = XElement.Parse(System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s))); //Añadiendo Elemento al nodo de Publicaciones document.Element("ArchivosRegistro").Add(dataTableElement); } } else { //Añadiendo Resultado por Defecto document.Element("ArchivosRegistro").Add(new XElement("NewDataSet")); } } //Devolviendo Resultado Obtenido return(document.ToString()); }
/// <summary> /// Método encargado de Obtener los Parametros del Web Service del Proveedor en Formato XML /// </summary> /// <param name="id_proveedor_ws">Proveedor del Servicio Web</param> /// <returns></returns> public static XDocument ObtieneXMLParametrosProveedorWS(int id_proveedor_ws) { //Declarando Objeto de Retorno XDocument document; //Instanciando Proveedor de Tipo de Servicio using (ProveedorWS pro = new ProveedorWS(id_proveedor_ws)) //Instanciando Parametros using (DataTable dt = ObtieneParametrosProveedorWS(id_proveedor_ws)) { //Validando que existan Registros if (Validacion.ValidaOrigenDatos(dt)) { //Gestionando Resultado DataTable dtParametros = dt.Copy(); dtParametros.TableName = pro.accion; //Creando flujo de memoria using (System.IO.Stream s = new System.IO.MemoryStream()) { //Leyendo flujo de datos XML dtParametros.WriteXml(s); //Obteniendo DataSet en XML XElement dataTableElement = XElement.Parse(System.Text.Encoding.UTF8.GetString(Flujo.ConvierteFlujoABytes(s))); //Añadiendo Elemento al nodo de Publicaciones document = new XDocument(dataTableElement.Element(pro.accion)); } } else { //Añadiendo Root document = new XDocument(new XElement(pro.accion)); } } //Devolviendo Resultado Obtenido return(document); }