/// <summary> /// Nombre: Frm_Ope_Cancelacion_Load /// /// Descripción: Método que se ejecuta cuando se a terminado de cargar el formulario. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 11 Noviembre 2013 18:53 p.m. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Frm_Ope_Cancelacion_Load(object sender, EventArgs e) { Cls_Ope_Cancelaciones_Negocio Obj_Cancelaciones = new Cls_Ope_Cancelaciones_Negocio(); DataTable Dt_Cajas = null; Cls_Cat_Terminales_Negocio Rs_Terminal = new Cls_Cat_Terminales_Negocio(); DataTable Dt_Consulta_Terminal = new DataTable(); try { Dt_Cajas = Obj_Cancelaciones.Consultar_Cajas(); if (!Dt_Cajas.AsEnumerable().Any()) { this.BeginInvoke((MethodInvoker) delegate { MessageBox.Show(this, "No se encuentra ninguna caja abierta por el momento", "Información", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); this.Dispose(); }); } // cargar Dt_Cajas en Cmb_Cajas Cmb_Cajas.DataSource = Dt_Cajas; Cmb_Cajas.DisplayMember = "Caja"; Cmb_Cajas.ValueMember = "No_Caja"; Limpiar_Datos_Consulta(splitContainer1.Panel1); // se consultan la informacion de la pin pad asignada al equipo de computo Rs_Terminal.P_Equipo = Environment.MachineName; Rs_Terminal.P_Estatus = "ACTIVO"; Dt_Consulta_Terminal = Rs_Terminal.Consultar_Terminales(); if (Dt_Consulta_Terminal != null && Dt_Consulta_Terminal.Rows.Count > 0) { foreach (DataRow Registro in Dt_Consulta_Terminal.Rows) { if (!String.IsNullOrEmpty(Registro[Cat_Terminales.Campo_Puerto].ToString())) { Str_Pinpad_Com = Registro[Cat_Terminales.Campo_Puerto].ToString(); } if (!String.IsNullOrEmpty(Registro[Cat_Terminales.Campo_Terminal_ID].ToString())) { Str_Pinpad_Id = Registro[Cat_Terminales.Campo_Terminal_ID].ToString(); } if (!String.IsNullOrEmpty(Registro[Cat_Terminales.Campo_Nombre].ToString())) { Str_Pinpad_Equipo = Registro[Cat_Terminales.Campo_Nombre].ToString(); } } } } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Frm_Ope_Cancelacion_Load]", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Nombre: Consultar_Cajas /// /// Descripción: Método que consulta las cajas. /// /// Usuario Creo: Juan Alberto Hernández Negrete /// Fecha Creo: 09 Octubre 2013 10:46 a.m. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="Datos">Clase de entidad para controlar y transportar los datos del usuario a la capa de datos</param> /// <returns>Listado con los registros de retiros encontrados según los filtros establecidos</returns> public static DataTable Consultar_Cajas(Cls_Ope_Cancelaciones_Negocio Datos) { StringBuilder Mi_SQL = new StringBuilder(); //Variable para almacenar la consulta hacía la base de datos. DataTable Dt_Cajas = null; //Variable de tipo estructura para almacenar los registros encontrados. Boolean Transaccion_Activa = false; //Variable que almacena la variable que mantiene el estatus de la transacción. //Iniciar Transacción Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); //Crear la consulta. Mi_SQL.Append(" select "); Mi_SQL.Append(Cls_Ayudante_Sintaxis.Convertir_A_Caracter("caja." + Cat_Cajas.Campo_Caja_ID) + " as No_Caja "); Mi_SQL.Append(" , ('CAJA ' + " + Cls_Ayudante_Sintaxis.Convertir_A_Caracter(Cls_Ayudante_Sintaxis.Convertir_A_Entero("caja." + Ope_Cajas.Campo_No_Caja)) + ") as Caja"); Mi_SQL.Append(" from "); Mi_SQL.Append(" " + Ope_Cajas.Tabla_Ope_Cajas + " caja "); Mi_SQL.Append(" left outer join " + Cat_Cajas.Tabla_Cat_Cajas + " cat_caja ON "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Caja_ID + " = cat_caja." + Cat_Cajas.Campo_Caja_ID + " "); Mi_SQL.Append(" where "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Estatus + " = 'ABIERTA' "); //Mi_SQL.Append(" and "); //Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Caja_ID + " = '" + MDI_Frm_Apl_Principal.Caja_ID + "'"); if (!string.IsNullOrEmpty(Datos.P_No_Caja)) { Mi_SQL.Append(" and caja.No_Caja='" + Datos.P_No_Caja + "' "); } Dt_Cajas = Conexion.HelperGenerico.Obtener_Data_Table(Mi_SQL.ToString()); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al consultar las cajas, Metodo: [Consultar_Cajas]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Dt_Cajas); }
/// <summary> /// Nombre: Consultar_Detalle_Ventas /// /// Descripción: Método que consulta los detalles de la venta. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 31 Octubre 2013 10:00 hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <returns>Tabla con los detalles de la búsqueda</returns> internal static DataTable Consultar_Detalle_Ventas(Cls_Ope_Cancelaciones_Negocio Datos) { DataTable Dt_Resultado = null; //Variable que almacenara los resultados de la búsqueda. StringBuilder Mi_SQL = new StringBuilder(); //Variable para almacenar la consulta hacía la base de datos. Boolean Transaccion_Activa = false; //Variable que almacena la variable que mantiene el estatus de la transacción. //Iniciar Transacción Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); #region (Datos a Mostrar) Mi_SQL.Append(" select "); Mi_SQL.Append(" detalle." + Ope_Ventas_Detalles.Campo_Cantidad + " "); Mi_SQL.Append(" , producto." + Cat_Productos.Campo_Nombre + " "); Mi_SQL.Append(" , detalle." + Ope_Ventas_Detalles.Campo_Subtotal + " "); Mi_SQL.Append(" , detalle." + Ope_Ventas_Detalles.Campo_Total + " "); #endregion #region (Tablas) Mi_SQL.Append(" from "); Mi_SQL.Append(" " + Ope_Ventas.Tabla_Ope_Ventas + " venta "); Mi_SQL.Append(" left outer join " + Ope_Ventas_Detalles.Tabla_Ope_Ventas_Detalles + " detalle on "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" detalle." + Ope_Ventas_Detalles.Campo_No_Venta + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); Mi_SQL.Append(" left outer join " + Cat_Productos.Tabla_Cat_Productos + " producto on "); Mi_SQL.Append(" detalle." + Ope_Ventas_Detalles.Campo_Producto_Id + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" producto." + Cat_Productos.Campo_Producto_Id + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); #endregion #region (Filtros) if (!string.IsNullOrEmpty(Datos.P_No_Venta)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + "='" + Datos.P_No_Venta + "' "); } if (!string.IsNullOrEmpty(Datos.P_No_Pago)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Pago + "='" + Datos.P_No_Pago + "' "); } #endregion Dt_Resultado = Conexion.HelperGenerico.Obtener_Data_Table(Mi_SQL.ToString()); Mi_SQL.Remove(0, Mi_SQL.Length); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al consultar las ventas, Metodo: [Consultar_Detalle_Ventas]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Dt_Resultado); }
/// <summary> /// Nombre: Cancelar_Venta /// /// Descripción: Método que realiza la cancelacion del pago, venta y accesos. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 31 Octubre 2013 18:29 hrs. /// Usuario Modifico: Olimpo Alberto Cruz Amaya /// Fecha Modifico: 06/Febrero/2015 /// Motivo: Se agrego un motivo de cancelación. /// </summary> /// <param name="Datos"></param> /// <returns></returns> public static bool Cancelar_Venta(Cls_Ope_Cancelaciones_Negocio Datos) { bool Estado_Operacion = false; //Variable que almacena el estatus de la cancelacion. StringBuilder Mi_SQL = new StringBuilder(); //Variable para almacenar la consulta hacía la base de datos. Boolean Transaccion_Activa = false; //Variable que almacena la variable que mantiene el estatus de la transacción. //Iniciar Transacción Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); #region (Cancelar Pagos) Mi_SQL.Append("update "); Mi_SQL.Append(Ope_Pagos.Tabla_Ope_Pagos); Mi_SQL.Append(" set "); Mi_SQL.Append(Ope_Pagos.Campo_Estatus + "='CANCELADO'"); Mi_SQL.Append(", " + Ope_Pagos.Campo_Fecha_Cancelacion + "= " + Cls_Ayudante_Sintaxis.Fecha()); Mi_SQL.Append(" where "); Mi_SQL.Append(Ope_Pagos.Campo_No_Venta + "='" + Datos.P_No_Venta + "'"); Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString()); Mi_SQL.Remove(0, Mi_SQL.Length); #endregion #region (Cancelar Venta) Mi_SQL.Append("update "); Mi_SQL.Append(Ope_Ventas.Tabla_Ope_Ventas); Mi_SQL.Append(" set "); Mi_SQL.Append(Ope_Ventas.Campo_Estatus + "='CANCELADO'"); //Mi_SQL.Append(", " +Ope_Ventas.Campo_Motivo_Cancelacion + "='CANCELADO'"); Mi_SQL.Append(", " + Ope_Ventas.Campo_Motivo_Cancelacion + "='" + Datos.P_Motivo_Cancelacion + "'");//"='CANCELADO'"); Mi_SQL.Append(", " + Ope_Ventas.Campo_Fecha_Cancelacion + " =now() "); Mi_SQL.Append(", " + Ope_Ventas.Campo_Usuario_Cancelo + "='" + MDI_Frm_Apl_Principal.Nombre_Login + "'"); Mi_SQL.Append(" where "); Mi_SQL.Append(Ope_Ventas.Campo_No_Venta + "='" + Datos.P_No_Venta + "'"); Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString()); Mi_SQL.Remove(0, Mi_SQL.Length); #endregion #region (Cancelar Accesos) Mi_SQL.Append("update "); Mi_SQL.Append(Ope_Accesos.Tabla_Ope_Accesos); Mi_SQL.Append(" set "); Mi_SQL.Append(Ope_Accesos.Campo_Estatus + "='CANCELADO'"); Mi_SQL.Append(" where "); Mi_SQL.Append(Ope_Accesos.Campo_No_Venta + "='" + Datos.P_No_Venta + "'"); Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString()); Mi_SQL.Remove(0, Mi_SQL.Length); #endregion if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } Estado_Operacion = true; } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al cancelar las ventas, Metodo: [Cancelar_Venta]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Estado_Operacion); }
/// <summary> /// Nombre: Consultar_Ventas_Sencilla /// /// Descripción: Método que realiza la consulta de ventas. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 31 Octubre 2013 10:00 hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <returns>Tabla con los registros de ventas</returns> internal static DataTable Consultar_Ventas_Sencilla(Cls_Ope_Cancelaciones_Negocio Datos) { DataTable Dt_Resultado = null; //Variable que almacenara los resultados de la búsqueda. StringBuilder Mi_SQL = new StringBuilder(); //Variable para almacenar la consulta hacía la base de datos. Boolean Transaccion_Activa = false; //Variable que almacena la variable que mantiene el estatus de la transacción. //Iniciar Transacción Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); #region (Datos Mostrar) Mi_SQL.Append(" select DISTINCT "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Descuentos + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Subtotal + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Impuestos + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Total + " "); if (Datos.P_Es_Venta) { Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Fecha_Creo + " as Fecha "); } if (Datos.P_Es_Grupo) { Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Persona_Tramita + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Empresa + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Fecha_Tramite + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Aplican_Dias_Festivos + " "); } #endregion #region (Tablas) Mi_SQL.Append(" from "); Mi_SQL.Append(" " + Ope_Ventas.Tabla_Ope_Ventas + " venta "); Mi_SQL.Append(" left outer join " + Ope_Pagos.Tabla_Ope_Pagos + " pago on "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + " = pago." + Ope_Pagos.Campo_No_Venta + " "); Mi_SQL.Append(" left outer join " + Ope_Cajas.Tabla_Ope_Cajas + " caja on "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Caja + " = caja." + Ope_Cajas.Campo_No_Caja + " "); Mi_SQL.Append(" left outer join " + Cat_Cajas.Tabla_Cat_Cajas + " cat_caja on "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Caja_ID + " = cat_caja." + Cat_Cajas.Campo_Caja_ID + " "); #endregion #region (Filtros) if (!string.IsNullOrEmpty(Datos.P_No_Venta)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + "='" + Datos.P_No_Venta + "' "); } if (Datos.P_Es_Grupo) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_Persona_Tramita + " is not null "); } if (Datos.P_Es_Venta) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_Persona_Tramita + " is null "); } if (!string.IsNullOrEmpty(Datos.P_Persona_Tramita)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" upper(venta." + Ope_Ventas.Campo_Persona_Tramita + ") like upper('%" + Datos.P_Persona_Tramita + "%') "); } if (!string.IsNullOrEmpty(Datos.P_Empresa_Tramita)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" upper(venta." + Ope_Ventas.Campo_Empresa + ") like upper('%" + Datos.P_Empresa_Tramita + "%') "); } if (Datos.Fecha_Inicio_Busqueda != null && Datos.Fecha_Inicio_Busqueda != DateTime.MinValue && Datos.Fecha_Fin_Busqueda != null && Datos.Fecha_Fin_Busqueda != DateTime.MinValue) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" (pago." + Ope_Pagos.Campo_Fecha_Creo + " >= "); Mi_SQL.Append(Cls_Ayudante_Sintaxis.Insertar_Fecha(Datos.Fecha_Inicio_Busqueda)); Mi_SQL.Append(" and pago." + Ope_Pagos.Campo_Fecha_Creo + " <= "); Mi_SQL.Append(Cls_Ayudante_Sintaxis.Insertar_Fecha(Datos.Fecha_Fin_Busqueda)); Mi_SQL.Append(") "); } Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" upper(venta." + Ope_Ventas.Campo_Estatus + ") <> upper('CANCELADO') "); Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Caja + " in ("); Mi_SQL.Append(" select "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_No_Caja); Mi_SQL.Append(" from "); Mi_SQL.Append(" " + Ope_Cajas.Tabla_Ope_Cajas + " caja "); Mi_SQL.Append(" left outer join " + Cat_Cajas.Tabla_Cat_Cajas + " cat_caja ON "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Caja_ID + " = cat_caja." + Cat_Cajas.Campo_Caja_ID + " "); Mi_SQL.Append(" where "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Estatus + " = 'ABIERTA' "); Mi_SQL.Append(" and "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_Caja_ID + " = '" + Datos.P_Caja_Id + "')"); #endregion Mi_SQL.Append(" order by " + Ope_Ventas.Campo_No_Venta + " desc "); Dt_Resultado = Conexion.HelperGenerico.Obtener_Data_Table(Mi_SQL.ToString()); Mi_SQL.Remove(0, Mi_SQL.Length); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al consultar las ventas, Metodo: [Consultar_Ventas_Sencilla]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Dt_Resultado); }
/// <summary> /// Nombre: Consultar_Ventas /// /// Descripción: Método que realiza la consulta de ventas. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 31 Octubre 2013 10:00 hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <returns>Tabla con los registros de ventas</returns> internal static DataTable Consultar_Ventas(Cls_Ope_Cancelaciones_Negocio Datos) { DataTable Dt_Resultado = null; //Variable que almacenara el resultado de la consulta. StringBuilder Mi_SQL = new StringBuilder(); //Variable para almacenar la consulta hacía la base de datos. Boolean Transaccion_Activa = false; //Variable que almacena la variable que mantiene el estatus de la transacción. //Iniciar Transacción Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); #region (Datos Mostrar) Mi_SQL.Append(" select "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_No_Pago + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Descuentos + " "); Mi_SQL.Append(" , descuentos." + Cat_Descuentos.Campo_Descripcion + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Subtotal + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Impuestos + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Total + " "); Mi_SQL.Append(" , " + Cls_Ayudante_Sintaxis.Nulos("forma_pago." + Cat_Formas_Pago.Campo_Nombre, "'Sin Asignar'") + " as forma_pago "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Estatus + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Fecha_Creo + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Persona_Tramita + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Empresa + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Fecha_Tramite + " "); Mi_SQL.Append(" , venta." + Ope_Ventas.Campo_Aplican_Dias_Festivos + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Tipo_Tarjeta_Banco + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Monto_Comision + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Monto_Pago + " "); Mi_SQL.Append(" , banco." + Cat_Bancos.Campo_Nombre + " as nombre_banco "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Referencia_Transferencia + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Tipo_Tarjeta_Banco + " "); Mi_SQL.Append(" , pago." + Ope_Pagos.Campo_Numero_Tarjeta_Banco + " "); #endregion #region (Tablas) Mi_SQL.Append(" from "); Mi_SQL.Append(" " + Ope_Ventas.Tabla_Ope_Ventas + " venta "); Mi_SQL.Append(" left outer join " + Ope_Pagos.Tabla_Ope_Pagos + " pago on "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Venta + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); Mi_SQL.Append(" left outer join " + Ope_Cajas.Tabla_Ope_Cajas + " caja on "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Caja + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" caja." + Ope_Cajas.Campo_No_Caja + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); Mi_SQL.Append(" left outer join " + Cat_Motivos_Descuento.Tabla_Cat_Motivos_Descuento + " descuentos on "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_Motivo_ID + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" descuentos." + Cat_Motivos_Descuento.Campo_Motivo_Descuento_ID + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); Mi_SQL.Append(" left outer join " + Cat_Formas_Pago.Tabla_Cat_Formas_Pago + " forma_pago on "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_Forma_ID + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" forma_pago." + Cat_Formas_Pago.Campo_Forma_ID + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); Mi_SQL.Append(" left outer join " + Cat_Bancos.Tabla_Cat_Bancos + " banco on "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_Banco_ID + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate() + "= "); Mi_SQL.Append(" banco." + Cat_Bancos.Campo_Banco_ID + Cls_Ayudante_Sintaxis.Insertar_Default_Database_Collate()); #endregion #region (Filtros) if (!string.IsNullOrEmpty(Datos.P_No_Venta)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_No_Venta + "='" + Datos.P_No_Venta + "' "); } if (!string.IsNullOrEmpty(Datos.P_No_Pago)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Pago + "='" + Datos.P_No_Pago + "' "); } //if (!string.IsNullOrEmpty(Datos.P_No_Caja)) //{ // Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); // Mi_SQL.Append(" pago." + Ope_Pagos.Campo_No_Caja + "='" + Datos.P_No_Caja+ "' "); //} if (Datos.P_Es_Grupo) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_Persona_Tramita + " is not null "); } if (Datos.P_Es_Venta) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" venta." + Ope_Ventas.Campo_Persona_Tramita + " is null "); } if (!string.IsNullOrEmpty(Datos.P_Persona_Tramita)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" upper(venta." + Ope_Ventas.Campo_Persona_Tramita + ") like upper('%" + Datos.P_Persona_Tramita + "%') "); } if (!string.IsNullOrEmpty(Datos.P_Empresa_Tramita)) { Mi_SQL.Append(Mi_SQL.ToString().ToLower().Contains("where") ? " and " : " where "); Mi_SQL.Append(" upper(venta." + Ope_Ventas.Campo_Empresa + ") like upper('%" + Datos.P_Empresa_Tramita + "%') "); } #endregion Dt_Resultado = Conexion.HelperGenerico.Obtener_Data_Table(Mi_SQL.ToString()); Mi_SQL.Remove(0, Mi_SQL.Length); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al consultar las ventas, Metodo: [Consultar_Ventas]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Dt_Resultado); }
/// <summary> /// Nombre: Btn_Cancelar_Click /// /// Descripción: Método que realiza la cancelación del pago. /// /// Usuario Creo: Juan Alberto Hernández Negrete /// Fecha Creo: 01 Noviembre 2013 12:30 Hrs /// Usuario Modifico: Olimpo Alberto Cruz Amaya /// Fecha Modifico: 06/Febrero/2015 /// Motivo: Se agrego un motivo de cancelación, antes de efectuar la cancelación. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Btn_Cancelar_Click(object sender, EventArgs e) { Cls_Ope_Accesos_Negocio Obj_Accesos = new Cls_Ope_Accesos_Negocio(); //Variable de negocios para realizar peticiones a la clase de datos. Cls_Ope_Cancelaciones_Negocio Obj_Cancelaciones = new Cls_Ope_Cancelaciones_Negocio(); //Variable de negocios para realizar peticiones a la clase de datos. DataTable Dt_Accesos = null; //Variable para almacenar el resultado de la búsqueda de accesos. Boolean Estatus_PinPad = false; try { //Establecemos filtros de búsqueda. Obj_Accesos.P_Estatus = "UTILIZADO"; Obj_Accesos.P_No_Venta = Txt_No_Venta_Inf.Text.Trim(); Dt_Accesos = Obj_Accesos.Consultar_Accesos(); // validamos que el pago se realizo con tarjeta if (!String.IsNullOrEmpty(Txt_Monto_Cargar.Text)) { Estatus_PinPad = true; // validamos que tenga una pin pad para realizar la cancelacion if (String.IsNullOrEmpty(Str_Pinpad_Id)) { MessageBox.Show(this, "Requiere tener una PIN PAD para poder realizar la cancelación de esta venta", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } if (Dt_Accesos is DataTable) { if (Dt_Accesos.Rows.Count == 0) { //doit cancel venta if (MessageBox.Show(this, "Confirmar la cancelación", "Información", MessageBoxButtons.YesNo) == DialogResult.Yes) { //Establecemos el no de venta a cancelar. Obj_Cancelaciones.P_No_Venta = Txt_No_Venta_Inf.Text.Trim(); //Ejecutamos la cancelación de la venta. Obj_Cancelaciones.P_Motivo_Cancelacion = Microsoft.VisualBasic.Interaction.InputBox("Ingresar el motivo de la cancelación?", "Motivo de Cancelación", string.Empty); //Se realiza la baja de la recolección if (!string.IsNullOrEmpty(Obj_Cancelaciones.P_Motivo_Cancelacion.Trim())) { if (Obj_Cancelaciones.Cancelar_Venta()) { if (Estatus_PinPad == true) { Cancelacion_Pago_Movil(); } splitContainer1.Panel2Collapsed = true; //Ocultamos el panel 2 splitContainer1.Panel1Collapsed = false; //Mostramos el panel 1 Limpiar_Datos_Consulta(splitContainer1.Panel2); //Limpiamos los controles del panel 2 Llenar_Grid_Ventas(); //Volvemos a cargar el grid de ventas MessageBox.Show(this, "Se realizó la cancelación de forma correcta", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { MessageBox.Show(this, "Debe escribir un motivo de cancelación", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } } else { MessageBox.Show(this, "No es posible cancelar una pago si los accesos ya fueron utilizados.", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Btn_Cancelar_Click]", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Nombre: Grid_Ventas_CellClick /// /// Descripción: Método que se invoca cuando se hace click sobre una celda de la tabla de ventass. /// /// Usuario Creo: Juan Alberto Hernandez Negrete. /// Fecha Creo: 01 Noviembre 2013 11:43 Hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Grid_Ventas_CellClick(object sender, DataGridViewCellEventArgs e) { Cls_Ope_Cancelaciones_Negocio Obj_Cancelaciones = new Cls_Ope_Cancelaciones_Negocio(); //Variable de negocios para realizar peticiones a la clase de datos. string No_Venta = string.Empty; //Variable para almacenar el número de la venta. string No_Pago = string.Empty; //Variable para almacenar el número de pago. DataTable Dt_Detalles_Venta = null; //Variable para almacenar el detalle de la venta. DataTable Dt_Datos_Pago = null; //Variable para almacenar los datos del pago. if (e.RowIndex != (-1)) { if (!string.IsNullOrEmpty(Grid_Ventas.Rows[e.RowIndex].Cells[Ope_Ventas.Campo_No_Venta].FormattedValue.ToString())) { //Limpir los controles del panel 2 [Datos del Pago] Limpiar_Datos_Consulta(splitContainer1.Panel2); splitContainer1.Panel1Collapsed = true; //Ocultamos el panel 1 splitContainer1.Panel2Collapsed = false; //Mostramos el Panel 2 //Obtenemos el número de venta de la fila seleccionada de la tabla de ventas. No_Venta = Grid_Ventas.Rows[e.RowIndex].Cells[Ope_Ventas.Campo_No_Venta].FormattedValue.ToString(); //Establecemos los filtros de búsqueda para obtener los datos del pago. Obj_Cancelaciones.P_No_Venta = No_Venta; Obj_Cancelaciones.P_No_Pago = No_Pago; //Consultamos los datos del pago. Dt_Detalles_Venta = Obj_Cancelaciones.Consultar_Detalle_Ventas(); if (Dt_Detalles_Venta is DataTable) { if (Dt_Detalles_Venta.AsEnumerable().Any()) { //Consultamos los datos de la venta. Dt_Datos_Pago = Obj_Cancelaciones.Consultar_Ventas(); //Establecemos el valor a los controles del panel , que muestran los datos del pago. Array.ForEach(Dt_Datos_Pago.Rows.OfType <DataRow>().ToArray(), fila => { Txt_No_Venta_Inf.Text = fila.IsNull(Ope_Ventas.Campo_No_Venta) ? string.Empty : fila.Field <string>(Ope_Ventas.Campo_No_Venta); Txt_Descuentos_Inf.Text = fila.IsNull(Ope_Ventas.Campo_Descuentos) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Ventas.Campo_Descuentos)); Txt_Subtotal_Inf.Text = fila.IsNull(Ope_Ventas.Campo_Subtotal) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Ventas.Campo_Subtotal)); Txt_Impuestos_Inf.Text = fila.IsNull(Ope_Ventas.Campo_Impuestos) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Ventas.Campo_Impuestos)); Txt_Total_Inf.Text = fila.IsNull(Ope_Ventas.Campo_Total) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Ventas.Campo_Total)); // se utiliza MySql.Data.Types.MySqlDateTime por el manejador de base de datos, en caso de cambiar a SQL debe ser DateTime Txt_Fecha_Tramite.Text = fila.IsNull(Ope_Ventas.Campo_Fecha_Tramite) ? string.Empty : string.Format("{0:dd MMM yyyy}", fila.Field <MySql.Data.Types.MySqlDateTime>(Ope_Ventas.Campo_Fecha_Tramite)); Txt_Persona_Tramita_Inf.Text = fila.IsNull(Ope_Ventas.Campo_Persona_Tramita) ? string.Empty : fila.Field <string>(Ope_Ventas.Campo_Persona_Tramita); Txt_Empresa_Inf.Text = fila.IsNull(Ope_Ventas.Campo_Empresa) ? string.Empty : fila.Field <string>(Ope_Ventas.Campo_Empresa); Txt_Dias_Festivos.Text = fila.IsNull(Ope_Ventas.Campo_Aplican_Dias_Festivos) ? string.Empty : fila.Field <string>(Ope_Ventas.Campo_Aplican_Dias_Festivos); // if (fila.Field <string>("forma_pago").Contains("EFECTIVO")) { Txt_Monto_Efectivo.Text = fila.IsNull(Ope_Pagos.Campo_Monto_Pago) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Pagos.Campo_Monto_Pago)); } else { Txt_Forma_Pago.Text = fila.IsNull("forma_pago") ? string.Empty : fila.Field <string>("forma_pago"); Txt_Banco.Text = fila.IsNull("nombre_banco") ? string.Empty : fila.Field <string>("nombre_banco"); Txt_Tarjeta.Text = fila.IsNull(Ope_Pagos.Campo_Tipo_Tarjeta_Banco) ? string.Empty : fila.Field <string>(Ope_Pagos.Campo_Tipo_Tarjeta_Banco); Txt_Comision.Text = fila.IsNull(Ope_Pagos.Campo_Monto_Comision) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Pagos.Campo_Monto_Comision)); Txt_Monto_Cargar.Text = fila.IsNull(Ope_Pagos.Campo_Monto_Pago) ? string.Empty : string.Format("{0:n}", fila.Field <decimal>(Ope_Pagos.Campo_Monto_Pago)); Txt_Numero_Transaccion.Text = fila.IsNull(Ope_Pagos.Campo_Referencia_Transferencia) ? string.Empty : fila.Field <string>(Ope_Pagos.Campo_Referencia_Transferencia); Txt_Numero_Tarjeta.Text = fila.IsNull(Ope_Pagos.Campo_Numero_Tarjeta_Banco) ? string.Empty : fila.Field <string>(Ope_Pagos.Campo_Numero_Tarjeta_Banco); } }); if (!String.IsNullOrEmpty(Txt_Numero_Tarjeta.Text)) { Txt_Numero_Tarjeta.Text = "xxxxxxxxxxxx" + Txt_Numero_Tarjeta.Text.Substring(12, 4); } //Cargamos el Grid de Detalles de Ventas Grid_Detalle_Venta.DataSource = Dt_Detalles_Venta; #region (Personalizar Estilo del Grid de Detalles de Ventas) #region (Custom Columnas) Grid_Detalle_Venta.EnableHeadersVisualStyles = false; Array.ForEach(Grid_Detalle_Venta.Columns.OfType <DataGridViewColumn>().ToArray(), columna => { DataGridViewCellStyle rowStyle = Grid_Detalle_Venta.RowHeadersDefaultCellStyle; rowStyle.BackColor = Color.Black; rowStyle.ForeColor = Color.White; rowStyle.Font = new Font("Arial", 9, FontStyle.Bold); columna.HeaderCell.Style = rowStyle; switch (columna.HeaderText) { case "Cantidad": columna.Width = 100; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; break; case "Nombre": columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleLeft; columna.Width = 200; break; case "Subtotal": columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 100; columna.DefaultCellStyle.Format = "c"; break; case "Total": columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 100; columna.DefaultCellStyle.Format = "c"; break; default: columna.Visible = true; break; } }); #endregion #region (Custom Filas) Array.ForEach(Grid_Detalle_Venta.Rows.OfType <DataGridViewRow>().ToArray(), fila => { fila.Height = 30; Array.ForEach(fila.Cells.OfType <DataGridViewCell>().ToArray(), celda => { celda.Style.BackColor = SystemColors.Window; celda.Style.ForeColor = Color.Black; celda.Style.Font = new Font("Tahoma", 9, FontStyle.Regular); celda.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; }); }); #endregion #endregion } } } } }
/// <summary> /// Nombre: Llenar_Grid_Ventas /// /// Descripción: Método que carga el grid de ventas y cambia el formato del mismo. /// /// Usuario Creo: Juan Alberto Hernandez Negrete. /// Fecha Creo: 01 Noviembre 2013 11:43 Hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> private void Llenar_Grid_Ventas() { Cls_Ope_Cancelaciones_Negocio Obj_Ventas = new Cls_Ope_Cancelaciones_Negocio(); DataTable Dt_Ventas = null; try { #region (Establecer Filtros Busqueda) Obj_Ventas.P_No_Venta = string.IsNullOrEmpty(Txt_No_Venta.Text) ? string.Empty : Txt_No_Venta.Text.Trim(); Obj_Ventas.P_Caja_Id = Cmb_Cajas.SelectedValue.ToString(); Obj_Ventas.P_Es_Venta = (Btn_Venta.Tag != null) ? (bool)Btn_Venta.Tag : false; Obj_Ventas.P_Es_Grupo = (Btn_Grupo.Tag != null) ? (bool)Btn_Grupo.Tag : false; Obj_Ventas.P_Persona_Tramita = string.IsNullOrEmpty(Txt_Persona_Tramita.Text) ? string.Empty : Txt_Persona_Tramita.Text.Trim(); Obj_Ventas.P_Empresa_Tramita = string.IsNullOrEmpty(Txt_Empresa.Text) ? string.Empty : Txt_Empresa.Text.Trim(); Obj_Ventas.Fecha_Inicio_Busqueda = Dtp_Fecha_Inicio.Value; Obj_Ventas.Fecha_Fin_Busqueda = Dtp_Fecha_Fin.Value; Dt_Ventas = Obj_Ventas.Consultar_Ventas_Sencilla(); #endregion #region (Cargar Grid Ventas) if (Dt_Ventas is DataTable) { if (Dt_Ventas.Rows.Count > 0) { Grid_Ventas.DataSource = Dt_Ventas; } else { Grid_Ventas.DataSource = new DataTable(); } } else { Grid_Ventas.DataSource = new DataTable(); } #endregion #region (Personalizar Estilo del Grid de Ventas) #region (Custom Columnas) Grid_Ventas.EnableHeadersVisualStyles = false; Array.ForEach(Grid_Ventas.Columns.OfType <DataGridViewColumn>().ToArray(), columna => { DataGridViewCellStyle rowStyle = Grid_Ventas.RowHeadersDefaultCellStyle; rowStyle.BackColor = Color.Black; rowStyle.ForeColor = Color.White; rowStyle.Font = new Font("Arial", 9, FontStyle.Bold); columna.HeaderCell.Style = rowStyle; switch (columna.HeaderText) { case "No_Venta": columna.Visible = true; columna.Width = 100; columna.HeaderText = "No Venta"; break; case "Descuentos": columna.Visible = false; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 100; columna.DefaultCellStyle.Format = "c"; break; case "Subtotal": columna.Visible = true; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 100; columna.DefaultCellStyle.Format = "c"; break; case "Impuestos": columna.Visible = true; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 100; columna.DefaultCellStyle.Format = "c"; break; case "Total": columna.Visible = true; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 100; columna.DefaultCellStyle.Format = "c"; break; case "Persona_Tramita": columna.Visible = false; columna.Width = 100; break; case "Empresa": columna.Visible = true; columna.Width = 166; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleLeft; break; case "Fecha_Tramite": columna.Visible = true; columna.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; columna.Width = 140; columna.HeaderText = "Fecha Tramite"; break; case "Aplican_Dias_Festivos": columna.Visible = false; columna.Width = 100; break; default: columna.Visible = true; break; } }); #endregion #region (Custom Filas) Array.ForEach(Grid_Ventas.Rows.OfType <DataGridViewRow>().ToArray(), fila => { fila.Height = 35; Array.ForEach(fila.Cells.OfType <DataGridViewCell>().ToArray(), celda => { celda.Style.BackColor = SystemColors.Window; celda.Style.ForeColor = Color.Black; celda.Style.Font = new Font("Tahoma", 9, FontStyle.Regular); celda.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; }); }); #endregion #endregion } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Llenar_Grid_Ventas]", MessageBoxButtons.OK, MessageBoxIcon.Error); } }