private void BtnIniciar_Click(object sender, EventArgs e) { try { if (this.VerificarEsquema()) { string rpta = "OK"; MensajeEspera.ShowWait("Cargando"); this.CrearTablaErrores(); if (this.VerificarClientes(out string consulta)) { //rpta = NUsuarios.InsertarUsuarios(consulta); if (rpta.Equals("OK")) { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion("Se importaron los clientes correctamente", "Entendido"); this.Close(); } else { throw new Exception("Hubo un error al insertar los clientes en la consulta masiva, " + rpta); } } MensajeEspera.CloseForm(); } } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnIniciar_Click", "Hubo un error al cargar los clientes", ex.Message); } }
private void Timer1_Tick(object sender, EventArgs e) { if (conteoBackup < 10) { switch (conteoBackup) { case 3: MensajeEspera.ChangeMensaje("Recuperando base de datos..."); break; case 5: MensajeEspera.ChangeMensaje("Recuperando tablas..."); break; case 8: MensajeEspera.ChangeMensaje("Recuperando información..."); break; case 10: MensajeEspera.ChangeMensaje("Finalizando copia..."); break; } conteoBackup += 1; } else { if (backupFinish) { MensajeEspera.CloseForm(); this.CerrarTimer(); } } }
public void BuscarArticulos(List <ArticuloSmall> articulos) { try { if (articulos.Count > 10) { MensajeEspera.ShowWait("Cargando"); } this.panelArticulos.Enabled = true; //this.label1.Text = articulos.Count + " productos o artículos"; this.panelArticulos.Limpiar(); this.listArticulos = new List <Articulo>(); foreach (ArticuloSmall articulo in articulos) { object obj = (object)articulo.articulo; obj = CopyDeep.Copy(obj); Articulo art = (Articulo)obj; listArticulos.Add(art); } this.chkSeleccionarTodos.Checked = true; List <ArticuloCarrito> nuevaListaSmall = new List <ArticuloCarrito>(); foreach (Articulo art in listArticulos) { ArticuloCarrito articulo = new ArticuloCarrito(); articulo.Id_articulo = art.Id_articulo; articulo.AsignarDatos(art); articulo.Tag = art.Id_articulo; articulo.chkArticulo.Checked = true; articulo.OnChkArticuloCheckedChanged += Articulo_onChkArticuloCheckedChanged; articulo.OnBtnRemoveClick += Articulo_onBtnRemoveClick; articulo.OnBtnVerPerfilClick += Articulo_onBtnVerPerfilClick; this.panelArticulos.AddControl(articulo); nuevaListaSmall.Add(articulo); //this.TotalValue(true, art.Precio * art.Cantidad_carrito); } this.TotalValue(false, 0); this.items_seleccionados = this.panelArticulos.controls.Count; this.groupBox1.Text = "Productos seleccionados (" + this.items_seleccionados + ")"; this.panelArticulos.Width = this.Width; this.panelArticulos.RefreshPanel(new ArticuloCarrito()); if (articulos.Count > 10) { MensajeEspera.CloseForm(); } } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BuscarArticulos", "Hubo un error al buscar artículos", ex.Message); } }
private async void TxtPass_OnCustomKeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == Convert.ToChar(Keys.Enter)) { MensajeEspera.ShowWait("Iniciando..."); var(rpta, objects) = await NCredenciales.Login(this.usuarioSelected.Celular, this.txtPass.Texto, DateTime.Now.ToString("yyyy-MM-dd")); if (rpta.Equals("OK")) { Credenciales credencial = (Credenciales)objects[0]; MainController main = MainController.GetInstance(); main.Usuario = credencial.Usuario; if (credencial.Usuario.Tipo_usuario.Equals("TRABAJADOR CARTERAS")) { Turnos turno = (Turnos)objects[1]; main.Turno = turno; main.Id_cobro = turno.Id_cobro; main.Cobro = turno.Cobro; FrmObservarArticulos frmArticulos = new FrmObservarArticulos { StartPosition = FormStartPosition.CenterScreen, WindowState = FormWindowState.Maximized, }; frmArticulos.Show(); //frmArticulos.LoadArticulos(dtArticulos); this.Hide(); } else { DataTable dtSolicitudes = (DataTable)objects[1]; DataTable dtCobros = (DataTable)objects[2]; FrmPrincipal FrmPrincipal = new FrmPrincipal { StartPosition = FormStartPosition.CenterScreen, WindowState = FormWindowState.Maximized, }; FrmPrincipal.LoadCobros(dtCobros); FrmPrincipal.LoadNotificaciones(dtSolicitudes); FrmPrincipal.Show(); //FrmEstadisticasCobro.LoadArticulos(dtArticulos); this.Hide(); } } else { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion(rpta, "Entendido"); } MensajeEspera.CloseForm(); } }
private async void BtnIngresar_Click(object sender, EventArgs e) { try { MensajeEspera.ShowWait("Iniciando..."); var(rpta, objects) = await NCredenciales.Login(this.usuarioSelected.Celular, this.txtPass.Texto, DateTime.Now.ToString()); if (rpta.Equals("OK")) { MainController main = MainController.GetInstance(); Credenciales credencial = (Credenciales)objects[0]; main.Usuario = credencial.Usuario; if (credencial.Usuario.Tipo_usuario.Equals("TRABAJADOR CARTERAS")) { Turnos turno = (Turnos)objects[1]; main.Turno = turno; FrmObservarArticulos frmArticulos = new FrmObservarArticulos { StartPosition = FormStartPosition.CenterScreen, WindowState = FormWindowState.Maximized, }; frmArticulos.Show(); //frmArticulos.LoadArticulos(dtArticulos); this.Hide(); } else { FrmPrincipal frmPrincipal = new FrmPrincipal { StartPosition = FormStartPosition.CenterScreen, WindowState = FormWindowState.Maximized, }; frmPrincipal.Show(); //frmArticulos.LoadArticulos(dtArticulos); this.Hide(); } } else { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion(rpta, "Entendido"); } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnIngresar_Click", "Hubo un error al ingresar", ex.Message); } }
private void BtnIniciar_Click(object sender, EventArgs e) { try { if (this.VerificarEsquema()) { MensajeEspera.ShowWait("Cargando"); this.CrearTablaErrores(); List <EVehiculos> Vehiculos = new List <EVehiculos>(); foreach (DataRow row in this.dtVehiculosCargados.Rows) { int Id_vehiculo = Convert.ToInt32(row["Codigo"]); string Placa = Convert.ToString(row["Placa"]).Trim(); string Propietario = Convert.ToString(row["Propietario"]).Trim(); string Chofer = Convert.ToString(row["Chofer"]).Trim(); string Marca = Convert.ToString(row["Marca"]).Trim(); string Modelo = Convert.ToString(row["Modelo"]).Trim(); string Color = Convert.ToString(row["Color"]).Trim(); if (!this.VerificarVehiculo(out EVehiculos eVehiculo, Id_vehiculo, Placa, Propietario, Chofer, Marca, Modelo, Color)) { this.AddError("No se pudieron asignar y verificar los datos para crear la entidad Vehiculo"); break; } Vehiculos.Add(eVehiculo); } if (Vehiculos.Count > 0) { string rpta = EVehiculos.InsertarVehiculos(Vehiculos); if (!rpta.Equals("OK")) { this.AddError("Hubo un error al insertar un vehículo en la base de datos, detalles: " + rpta); } else { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion("Se importaron " + Vehiculos.Count + " vehículos.", "Entendido"); this.Close(); } } MensajeEspera.CloseForm(); } } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnIniciar_Click", "Hubo un error al cargar los vehículos", ex.Message); } }
private void BtnAbrir_Click(object sender, EventArgs e) { if (this.EEmpleado != null) { ETurnos eTurno = new ETurnos { EEmpleado = this.EEmpleado, Hora_inicio_turno = DateTime.Now.TimeOfDay, Hora_fin_turno = DateTime.Now.TimeOfDay, Fecha_turno = DateTime.Now, Estado_turno = "ABIERTO" }; string rpta = ETurnos.InsertarTurno(eTurno, out int id_turno); if (rpta.Equals("OK")) { eTurno.Id_turno = id_turno; this.ETurno = eTurno; this.DialogResult = DialogResult.OK; OnAbrirTurnoSuccess?.Invoke(this, e); this.Close(); return; } else { Mensajes.MensajeInformacion("Hubo un error al abrir el turno, detalles: " + rpta, "Entendido"); return; } } if (this.ETurno != null) { MensajeEspera.ShowWait("Finalizando"); this.ETurno.Estado_turno = "CERRADO"; this.ETurno.Hora_fin_turno = DateTime.Now.TimeOfDay; string rpta = ETurnos.EditarTurno(this.ETurno, this.ETurno.Id_turno); if (rpta.Equals("OK")) { this.DialogResult = DialogResult.OK; OnCerrarTurnoSuccess?.Invoke(this, e); MensajeEspera.CloseForm(); this.Close(); return; } else { Mensajes.MensajeInformacion("Hubo un error al cerrar el turno, detalles: " + rpta, "Entendido"); return; } } }
private void BuscarArticulos(string tipo_busqueda, string texto_busqueda) { try { MensajeEspera.ShowWait("Buscando artículos"); DataTable dtArticulos = NArticulos.BuscarArticulos(tipo_busqueda, texto_busqueda, out string rpta); if (dtArticulos != null) { this.panelArticles.Enabled = true; this.lblResultados.Text = "Se encontraron " + dtArticulos.Rows.Count + " artículos"; this.panelArticles.Limpiar(); foreach (DataRow row in dtArticulos.Rows) { int id_articulo = Convert.ToInt32(row["Id_articulo"]); ArticuloSmall articulo = new ArticuloSmall(); articulo.Id_articulo = id_articulo; if (this.IsVenta) { articulo.IsVenta = this.IsVenta; articulo.onBtnAddCart += Articulo_onBtnAddCart; articulo.onBtnRemove += Articulo_onBtnRemove; } articulo.AsignarDatosArticulo(); articulo.onBtnVerArticuloClick += Articulo_onBtnVerArticuloClick; articulo.IsEditar = this.IsEditar; this.panelArticles.AddControl(articulo); } this.panelArticles.RefreshPanel(new ArticuloSmall()); } else { this.panelArticles.Limpiar(); this.lblResultados.Text = "No se encontraron artículos"; this.panelArticles.Enabled = false; } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BuscarArticulos", "Hubo un error al buscar artículos", ex.Message); } }
private void BtnAsignarCarrera_Click(object sender, EventArgs e) { if (this.EDireccion != null && this.ECliente != null && this.EVehiculo != null) { if (int.TryParse(this.tiempoLlegada.Value.ToString(), out int tiempo_llegada)) { MensajeEspera.ShowWait("Asignando..."); ECarreras eCarrera = new ECarreras { ECliente = this.ECliente, EDireccion = this.EDireccion, EVehiculo = this.EVehiculo, EEmpleado = new EEmpleados { Id_empleado = 1 }, Fecha_carrera = DateTime.Now, Hora_carrera = DateTime.Now.ToString("HH:mm:ss"), Lugar_ubicacion = this.txtLugarUbicacion.Text, Tiempo_llegada = tiempo_llegada, Estado_carrera = "PENDIENTE", Observaciones = "" }; string rpta = ECarreras.InsertarCarrera(eCarrera, out int id_carrera); if (rpta.Equals("OK")) { MensajeEspera.CloseForm(); //Mensajes.MensajeInformacion("La carrera fue aprobada con el siguiente código: " + id_carrera.ToString(), // "Entendido"); eCarrera.Id_carrera = id_carrera; this.OnCarreraAsignada?.Invoke(eCarrera, e); this.Close(); } else { throw new Exception(rpta); } } } else { Mensajes.MensajeInformacion("Verifique los datos seleccionados", "Entendido"); } }
private async Task LoadAgendamientos(string tipo_busqueda, string texto_busqueda) { try { MensajeEspera.ShowWait("Cargando..."); var(rpta, dtAgendamiento) = await NAgendamiento_cobros.BuscarAgendamientos(tipo_busqueda, texto_busqueda); this.panelClientes.clearDataSource(); this.positionChanged = 1; this.DtAgendamientos = dtAgendamiento; if (dtAgendamiento != null) { List <UserControl> userControls = new List <UserControl>(); foreach (DataRow row in dtAgendamiento.Rows) { Agendamiento_cobros ag = new Agendamiento_cobros(row); ClienteSmall clienteSmall = new ClienteSmall { Agendamiento = ag, }; clienteSmall.OnRefresh += ClienteSmall_OnRefresh; userControls.Add(clienteSmall); } this.panelClientes.PageSize = 20; this.panelClientes.OnBsPositionChanged += PaneClientes_OnBsPositionChanged; this.panelClientes.SetPagedDataSource(userControls, this.bindingNavigator2); } MensajeEspera.CloseForm(); this.Show(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "LoadClientes", "Hubo un error al cargar los agendamientos", ex.Message); } }
private async Task LoadClientes(string tipo_busqueda, string texto_busqueda1, string texto_busqueda2) { try { MensajeEspera.ShowWait("Cargando..."); var(dtClientes, rpta) = await NUsuarios.BuscarClientes(tipo_busqueda, texto_busqueda1, texto_busqueda2); this.panelClientes.clearDataSource(); this.positionChanged = 1; if (dtClientes != null) { List <UserControl> userControls = new List <UserControl>(); foreach (DataRow row in dtClientes.Rows) { Ventas venta = new Ventas(row); ClienteSmall clienteSmall = new ClienteSmall { Venta = venta, }; clienteSmall.OnRefresh += ClienteSmall_OnRefresh; userControls.Add(clienteSmall); } this.panelClientes.PageSize = 20; this.panelClientes.OnBsPositionChanged += PaneClientes_OnBsPositionChanged; this.panelClientes.SetPagedDataSource(userControls, this.bindingNavigator2); } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "LoadClientes", "Hubo un error al cargar los clientes", ex.Message); } }
private void BtnTerminarPedido_Click(object sender, EventArgs e) { MensajeEspera.ShowWait("Facturando y terminando"); try { this.containerDatosPedido.Close(); string rpta = ""; int id_pedido; if (this.Comprobaciones()) { DataTable TablaDetallePedido = this.tablasPedido.dtDetallePedido(); if (TablaDetallePedido.Rows.Count > 0) { rpta = NPedido.InsertarPedido(this.Variables(), out id_pedido, TablaDetallePedido); if (rpta.Equals("OK")) { FrmObservarMesas FrmObservarMesas = FrmObservarMesas.GetInstancia(); FrmObservarMesas.ObtenerPedido(id_pedido, this.Numero_mesa, "PENDIENTE"); this.comandas.Id_pedido = id_pedido; this.comandas.AsignarTablas(); if (this.contextMenuDatosPedido.chkImprimirPedido.Checked) { bool plato = false; bool bebida = false; int imprimir = 0; foreach (DataRow row in TablaDetallePedido.Rows) { if (row["Tipo"].Equals("PLATO")) { plato = true; } else { bebida = true; } if (plato && bebida) { break; } } if (plato && bebida) { imprimir = 2; } else { imprimir = 1; } comandas.ImprimirFactura(imprimir); } this.Close(); } else { throw new Exception(rpta); } } } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnTerminarPedido_Click", "Hubo un error al terminar un pedido", ex.Message); } }
private void BtnPrint_Click(object sender, EventArgs e) { try { MensajeEspera.ShowWait("Cargando..."); DataTable dtAgendamiento = new DataTable(); dtAgendamiento.Columns.Add("Id_agendamiento", typeof(int)); dtAgendamiento.Columns.Add("Fecha_agendamiento", typeof(string)); dtAgendamiento.Columns.Add("Nombre_cliente", typeof(string)); dtAgendamiento.Columns.Add("Celular_cliente", typeof(string)); dtAgendamiento.Columns.Add("Saldo_restante", typeof(string)); dtAgendamiento.Columns.Add("Valor_cuota", typeof(string)); dtAgendamiento.Columns.Add("Valor_pagado", typeof(string)); dtAgendamiento.Columns.Add("Tipo_cobro", typeof(string)); if (this.DtAgendamientos != null) { decimal total_recaudo = 0; foreach (DataRow row in this.DtAgendamientos.Rows) { Agendamiento_cobros ag = new Agendamiento_cobros(row); int id_agendamiento = ag.Id_agendamiento; DateTime fecha_agendamiento = ag.Fecha_cobro; string nombre_cliente = ag.Venta.Cliente.NombreCompleto; string celular_cliente = ag.Venta.Cliente.Celular; decimal saldo_restante = ag.Saldo_restante; decimal valor_cuota = ag.Valor_cobro; decimal valor_pagado = 0; string tipo_cobro = ag.Tipo_cobro; total_recaudo += valor_cuota; DataRow newRow = dtAgendamiento.NewRow(); newRow["Id_agendamiento"] = id_agendamiento; newRow["Fecha_agendamiento"] = fecha_agendamiento.ToString("yyyy-MM-dd"); newRow["Nombre_cliente"] = nombre_cliente; newRow["Celular_cliente"] = celular_cliente; newRow["Saldo_restante"] = saldo_restante.ToString("C"); newRow["Valor_cuota"] = valor_cuota.ToString("C"); newRow["Valor_pagado"] = valor_pagado.ToString("C"); newRow["Tipo_cobro"] = tipo_cobro; dtAgendamiento.Rows.Add(newRow); } MensajeEspera.CloseForm(); FrmReporteAgendamientos frmReporteAgendamientos = new FrmReporteAgendamientos { DtAgendamientos = dtAgendamiento, Total_recaudo = "Total a recaudar: " + total_recaudo.ToString("C"), }; frmReporteAgendamientos.ShowDialog(); } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "", "Hubo un error al cargar el reporte", ex.Message); } }
private void CargarMesas(int numero_mesas) { MensajeEspera.ShowWait("Cargando mesas"); try { this.panelMesas.Controls.Clear(); string estado = "DISPONIBLE"; int id_pedido = 0; int id_mesa = 0; DataTable TablaMesasConPedido = NPedido.BuscarPedidos("MESAS CON PEDIDO", ""); DataTable TablaMesas = NPedido.BuscarPedidos("MESAS COMPLETAS", ""); int positionX = 0; int positionY = 0; int contador = 1; List <Control> controles = new List <Control>(); while (contador <= numero_mesas) { if (TablaMesas != null) { DataRow[] result = TablaMesas.Select("Num_mesa = '" + Convert.ToString(contador) + "'"); if (result.Length != 0) { id_mesa = Convert.ToInt32(result[0]["Id_mesa"]); } } if (TablaMesasConPedido != null) { DataRow[] result = TablaMesasConPedido.Select("Num_mesa = '" + Convert.ToString(contador) + "'"); if (result.Length != 0) { id_pedido = Convert.ToInt32(result[0]["Id_pedido"]); estado = Convert.ToString(result[0]["Estado_pedido"]); } else { id_pedido = Convert.ToInt32(0); estado = Convert.ToString("DISPONIBLE"); } } CustomButtonMesa ButtonMesa = new CustomButtonMesa { Estado_mesa = estado, Texto = "Mesa " + (contador), Tag = contador, Numero_mesa = contador, Id_mesa = id_mesa, Id_pedido = id_pedido }; ButtonMesa.ObtenerEstado(estado, id_pedido, false); ButtonMesa.cambioMesaClick += ButtonMesa_cambioMesaClick; if (positionX > this.panelMesas.Width || this.panelMesas.Width < positionX + ButtonMesa.Width) { positionY += ButtonMesa.Height + 2; positionX = 0; } ButtonMesa.Location = new Point(positionX, positionY); controles.Add(ButtonMesa); positionX = ButtonMesa.Location.X + ButtonMesa.Width + 2; contador += 1; if (contador == numero_mesas) { break; } else { continue; } } this.panelMesas.Controls.AddRange(controles.ToArray()); this.panelMesas.Refresh(); MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "CargarMesas", "Hubo un error al cargar las mesas", ex.Message); } }
private void BtnTerminar_Click(object sender, EventArgs e) { MensajeEspera.ShowWait("Facturando y terminando"); try { string rpta = "OK"; int id_venta; if (this.panelSubTotal.Visible) { DataTable detalle_pago; List <string> variables = this.Variables(out detalle_pago); if (detalle_pago.Rows.Count > 0) { if (this.IsPrecuenta) { frmFacturaFinal.Id_pedido = this.Id_pedido; frmFacturaFinal.AsignarTablasPedido(variables); string metodo = this.ObtenerValorPanel(this.panelTipoPedido); if (metodo.Equals("IMPRIMIR")) { frmFacturaFinal.ImprimirFactura(1); } else if (metodo.Equals("CORREO")) { string rpta_email = EmailFactura.SendEmailFactura(this.Id_pedido, this.Correo_electronico); if (!rpta_email.Equals("OK")) { Mensajes.MensajeErrorForm("Hubo un error al enviar el correo electrónico"); } } else if (metodo.Equals("AMBAS")) { frmFacturaFinal.ImprimirFactura(1); string rpta_email = EmailFactura.SendEmailFactura(this.Id_pedido, this.Correo_electronico); if (!rpta_email.Equals("OK")) { Mensajes.MensajeErrorForm("Hubo un error al enviar el correo electrónico"); } } FrmObservarMesas frm = FrmObservarMesas.GetInstancia(); frm.MesaSaliendo(this.Id_mesa, this.Id_pedido); MensajeEspera.CloseForm(); Mensajes.MensajeOkForm("Se realizó la precuenta correctamente"); this.Close(); } else { MensajeEspera.ShowWait("Facturando y terminando"); rpta = NVentas.InsertarVenta(variables, out id_venta, detalle_pago); if (rpta.Equals("OK")) { FrmObservarMesas frm = FrmObservarMesas.GetInstancia(); frm.LiberarMesa(this.Id_mesa); frmFacturaFinal.Id_pedido = this.Id_pedido; frmFacturaFinal.AsignarTablas(); string metodo = this.ObtenerValorPanel(this.panelTipoPedido); if (metodo.Equals("IMPRIMIR")) { frmFacturaFinal.ImprimirFactura(1); } else if (metodo.Equals("CORREO")) { string rpta_email = EmailFactura.SendEmailFactura(this.Id_pedido, this.Correo_electronico); if (!rpta_email.Equals("OK")) { Mensajes.MensajeErrorForm("Hubo un error al enviar el correo electrónico"); } } else if (metodo.Equals("AMBAS")) { frmFacturaFinal.ImprimirFactura(1); string rpta_email = EmailFactura.SendEmailFactura(this.Id_pedido, this.Correo_electronico); if (!rpta_email.Equals("OK")) { Mensajes.MensajeErrorForm("Hubo un error al enviar el correo electrónico"); } } MensajeEspera.CloseForm(); Mensajes.MensajeOkForm("Se realizó la facturación correctamente"); this.Close(); } else { throw new Exception(rpta); } } } else { Mensajes.MensajeErrorForm("Debe de seleccionar un método de pago"); } } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnTerminar_Click", "Hubo un error al terminar una venta", ex.Message); } }
private void BtnImportar_Click(object sender, EventArgs e) { try { //Creo un objeto de tipo OpenFileDialog y lo instancio OpenFileDialog archivo = new OpenFileDialog(); //Esta linea es para que solo se puedan visualizar los archivos con esta extension archivo.Filter = "Documentos válidos|*.doc;*.xls;*.ppt;*.pdf;*.xlsx"; //Lo abro como un Dialog DialogResult result = archivo.ShowDialog(); if (result == DialogResult.OK) { //Asignamos el nombre del archivo a la caja de texto this.txtArchivo.Text = archivo.SafeFileName; //Asignamos a la propiedad tag del textbox la ruta completa del archivo this.txtArchivo.Tag = archivo.FileName; string hoja = this.txtHoja.Text; if (hoja.Equals("Hoja") || hoja.Equals("")) { Mensajes.MensajeErrorForm("Debe ingresar un nombre de hoja válida, seleccione el archivo de nuevo"); this.txtHoja.SelectAll(); } else { MensajeEspera.ShowWait("Cargando"); DataTable dt = new DataTable(); string fileName = archivo.FileName; string query = "SELECT * FROM [" + hoja + "$]"; using (OleDbConnection cn = new OleDbConnection { ConnectionString = ConnectionString(fileName, "Yes") }) { using (OleDbCommand cmd = new OleDbCommand { CommandText = query, Connection = cn }) { cn.Open(); OleDbDataReader dr = cmd.ExecuteReader(); dt.Load(dr); } } this.dtClientes = dt; MensajeEspera.CloseForm(); if (this.VerificarEsquema()) { if (dt != null) { if (dt.Rows.Count > 0) { this.gbResultados.Text = "Se cargaron " + dt.Rows.Count + " registros"; this.dgvListaClientes.Enabled = true; } else { this.dgvListaClientes.Enabled = false; this.gbResultados.Text = "No se cargó ningún registro"; } } dt.AcceptChanges(); this.dgvListaClientes.DataSource = dt; this.gbConfig.Enabled = true; this.txtArchivo.Focus(); } } } } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnImportar_Click", "Hubo un error al importar el archivo", ex.Message); } }
private async void LoadReporteDiario(DateTime fecha) { MensajeEspera.ShowWait("Cargando reporte..."); StringBuilder info = new StringBuilder(); //Obtener el turno de esta fecha DataTable dtTurnos = NTurnos.BuscarTurnos("FECHA INICIO", fecha.ToString("yyyy-MM-dd"), out string rpta); if (dtTurnos != null) { Turnos turno = new Turnos(dtTurnos.Rows[0]); info.Append("Valor inicial en caja ").Append(turno.Valor_inicial.ToString("C")).Append(Environment.NewLine); info.Append("Se empezó con ").Append(turno.Clientes_iniciales).Append(" clientes y se terminó con ").Append(turno.Clientes_total).Append(Environment.NewLine); //Obtener los clientes nuevos var(rpta1, dtVentas) = await NVentas.BuscarVentas("FECHA ID COBRO", fecha.ToString("yyyy-MM-dd")); if (dtVentas != null) { info.Append("Clientes nuevos o renovados ").Append(dtVentas.Rows.Count).Append(Environment.NewLine); } else { info.Append("No hubieron clientes nuevos o renovados "); } info.Append("Total de ventas y renovaciones ").Append(turno.Recaudo_ventas_nuevas.ToString("C")).Append(Environment.NewLine); info.Append("Recaudo pretendido ").Append(turno.Recaudo_pretendido_turno.ToString("C")).Append(Environment.NewLine); decimal porcentajeRecaudado = (turno.Recaudo_cuotas * 100) / turno.Recaudo_pretendido_turno; info.Append("Total recaudado ").Append(turno.Recaudo_cuotas.ToString("C")).Append(" (" + ((int)porcentajeRecaudado) + "%)").Append(Environment.NewLine); info.Append("Otros ingresos ").Append(turno.Recaudo_otros.ToString("C")).Append(Environment.NewLine); if (turno.Gastos_total == 0) { info.Append("No hubieron gastos").Append(Environment.NewLine); } else { info.Append("Gastos/Egresos ").Append(turno.Gastos_total.ToString("C")).Append(Environment.NewLine); } info.Append(Environment.NewLine); info.Append("CAJA FINAL ").Append(turno.Recaudo_real.ToString("C")).Append(Environment.NewLine); info.Append(Environment.NewLine); if (dtVentas != null) { info.Append("Resumen de clientes nuevos o renovados").Append(Environment.NewLine); foreach (DataRow row in dtVentas.Rows) { Ventas venta = new Ventas(row); info.Append("* Nombre: ").Append(venta.Cliente.NombreCompleto).Append(" - Celular: ").Append(venta.Cliente.Celular).Append(Environment.NewLine); info.Append("- Valor préstamo: ").Append(venta.Valor_venta.ToString("C")).Append(" - Plazo: ").Append(venta.Numero_cuotas).Append(Environment.NewLine); } } DataTable dtGastos = NGastos.BuscarGastos("FECHA ID COBRO", fecha.ToString("yyyy-MM-dd"), out rpta); if (dtGastos != null) { info.Append(Environment.NewLine); info.Append("Resumen de gastos o egresos").Append(Environment.NewLine); foreach (DataRow row in dtGastos.Rows) { Gastos gasto = new Gastos(row); info.Append("* " + gasto.Tipo_gasto.Nombre_tipo_gasto + " - ").Append(" - Observaciones: ").Append(gasto.Observaciones_gasto); info.Append(" - Valor: ").Append(gasto.Valor_gasto.ToString("C")).Append(Environment.NewLine); } } FrmReporteDiario frmReporteDiario = new FrmReporteDiario { FormBorderStyle = FormBorderStyle.None, TopMost = false, TopLevel = false, Dock = DockStyle.Fill, InformacionTurno = info.ToString(), FechaHoraReporte = "Fecha y hora de generación: " + DateTime.Now.ToLongDateString(), FechaHoraTurno = "Fecha y hora de turno: " + turno.Fecha_inicio_turno.ToLongDateString(), }; if (this.gbResultados.Controls.Count > 0) { this.gbResultados.Controls.Clear(); } this.gbResultados.Controls.Add(frmReporteDiario); frmReporteDiario.Show(); } else { MensajeEspera.CloseForm(); info.Append("No se encontró el turno"); Mensajes.MensajeInformacion("No se encontró el turno, o bien, se encuentra cerrado en la fecha seleccionada", "Entendido"); } MensajeEspera.CloseForm(); }
private async void BtnReporteClientes_Click(object sender, EventArgs e) { MensajeEspera.ShowWait("Cargando reporte..."); DataTable dtClientes = new DataTable("Clientes"); dtClientes.Columns.Add("Id_cliente", typeof(int)); dtClientes.Columns.Add("Nombre_cliente", typeof(string)); dtClientes.Columns.Add("Celular_cliente", typeof(string)); dtClientes.Columns.Add("Referencia_articulo", typeof(string)); dtClientes.Columns.Add("Saldo_restante", typeof(string)); dtClientes.Columns.Add("Venta_total", typeof(string)); dtClientes.Columns.Add("Fecha_venta", typeof(string)); dtClientes.Columns.Add("Fecha_ultimo_pago", typeof(string)); dtClientes.Columns.Add("Dias_mora", typeof(int)); int id_cliente = 0; string nombre_cliente = string.Empty; string celular_cliente = string.Empty; string referencia_articulo = string.Empty; decimal saldo_restante = 0; decimal total_venta = 0; DateTime fecha_venta = DateTime.Now; decimal suma_ventas = 0; decimal suma_saldos = 0; DateTime fecha_ultimo_pago = DateTime.Now; MainController main = MainController.GetInstance(); var(rpta, dtVentas) = await NVentas.BuscarVentas("ID COBRO ACTIVO", main.Id_cobro.ToString()); if (dtVentas != null) { foreach (DataRow row in dtVentas.Rows) { Ventas venta = new Ventas(row); id_cliente = venta.Id_cliente; nombre_cliente = venta.Cliente.NombreCompleto; celular_cliente = venta.Cliente.Celular; total_venta = venta.Total_venta; fecha_venta = venta.Fecha_venta; suma_ventas += venta.Total_venta; //Buscar los agendamientos de cada venta para ver su saldo restante var(rpta1, dtAgendamientos) = await NAgendamiento_cobros.BuscarAgendamientos("ID VENTA", venta.Id_venta.ToString()); if (dtAgendamientos != null) { Agendamiento_cobros ag = new Agendamiento_cobros(dtAgendamientos.Rows[0]); saldo_restante = ag.Saldo_restante; suma_saldos += ag.Saldo_restante; fecha_ultimo_pago = ag.Fecha_cobro; } TimeSpan timeSpan = DateTime.Now - fecha_ultimo_pago; double dias_mora = timeSpan.TotalDays; DataRow newRow = dtClientes.NewRow(); newRow["Id_cliente"] = id_cliente; newRow["Nombre_cliente"] = nombre_cliente; newRow["Celular_cliente"] = celular_cliente; newRow["Referencia_articulo"] = referencia_articulo; newRow["Saldo_restante"] = saldo_restante.ToString("C"); newRow["Venta_total"] = total_venta.ToString("C"); newRow["Fecha_venta"] = fecha_venta.ToString("dd-MM-yyyy"); newRow["Fecha_ultimo_pago"] = fecha_ultimo_pago.ToString("dd-MM-yyyy"); newRow["Dias_mora"] = dias_mora; dtClientes.Rows.Add(newRow); } if (dtClientes.Rows.Count > 0) { MensajeEspera.CloseForm(); //Enviar informe FrmReporteClientes frmReporteClientes = new FrmReporteClientes { WindowState = FormWindowState.Maximized, dtClientes = dtClientes, Total_saldos = suma_saldos.ToString("C"), Total_ventas = suma_ventas.ToString("C"), }; frmReporteClientes.Show(); } else { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion("No se encontraron clientes", "Entendido"); } } else { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion("No se encontraron clientes", "Entendido"); } MensajeEspera.CloseForm(); }
private async void BtnGuardar_Click(object sender, EventArgs e) { try { if (this.Comprobaciones(out Articulos articulo)) { MensajeEspera.ShowWait("Guardando..."); string rpta = "OK"; if (this.IsEditar) { rpta = await NArticulos.EditarArticulos(articulo.Id_articulo, articulo); } else { var(rptaArticulo, id_articulo) = await NArticulos.InsertarArticulo(articulo); rpta = rptaArticulo; articulo.Id_articulo = id_articulo; if (this.chkImprimir.Checked) { DataTable dtFacturaArticulos = new DataTable("dtArticulosFacturas"); dtFacturaArticulos.Columns.Add("Id_articulo", typeof(int)); dtFacturaArticulos.Columns.Add("Referencia_articulo", typeof(string)); dtFacturaArticulos.Columns.Add("Cantidad_articulo", typeof(string)); dtFacturaArticulos.Columns.Add("Id_proveedor", typeof(string)); dtFacturaArticulos.Columns.Add("Proveedor", typeof(string)); dtFacturaArticulos.Columns.Add("Valor_proveedor", typeof(string)); dtFacturaArticulos.Columns.Add("Descripcion_articulo", typeof(string)); DataRow newRow = dtFacturaArticulos.NewRow(); newRow["Id_articulo"] = articulo.Id_articulo; newRow["Referencia_articulo"] = articulo.Referencia_articulo; newRow["Cantidad_articulo"] = articulo.Cantidad_articulo; newRow["Id_proveedor"] = articulo.Id_proveedor; newRow["Proveedor"] = articulo.Proveedor.Nombre_proveedor; newRow["Valor_proveedor"] = articulo.Valor_proveedor; newRow["Descripcion_articulo"] = articulo.Descripcion_articulo; dtFacturaArticulos.Rows.Add(newRow); FrmReporteFactura frmReporte = new FrmReporteFactura { Id_articulo = articulo.Id_articulo.ToString(), FechaHora = DateTime.Now.ToLongTimeString() + " " + DateTime.Now.ToLongTimeString(), EstadoFactura = articulo.Estado_articulo, TotalFactura = (this.numericCantidad.Value * this.numericValorProveedor.Value).ToString(), WindowState = FormWindowState.Maximized, dtArticulosFactura = dtFacturaArticulos, }; frmReporte.Show(); } } MensajeEspera.CloseForm(); if (rpta.Equals("OK")) { this.Limpiar(); Mensajes.MensajeInformacion("Se guardó correctamente el artículo", "Entendido"); this.OnArticuloSuccess?.Invoke(articulo, e); this.Close(); } else { throw new Exception(rpta); } } } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnGuardar_Click", "Hubo un error con el botón guardar", ex.Message); } }
private void BtnInformacionPedido_Click(object sender, EventArgs e) { if (this.IsEditar) { bool result = this.dgvProductosEditar.Rows.Count > 0 ? true : false; if (result) { MensajeEspera.ShowWait("Imprimiendo y finalizando"); DataTable TablaDetallePedido = this.tablasPedido.dtDetallePedidoEditado(); if (this.dgvProductosEditar.Rows.Count > 0) { comandas.Id_pedido = this.Id_pedido; comandas.AsignarTablas(TablaDetallePedido); this.tablasPedido.IsEditar = false; bool plato = false; bool bebida = false; int imprimir = 0; string rpta = ""; foreach (DataRow row in TablaDetallePedido.Rows) { if (row["Tipo"].Equals("PLATO")) { rpta = NPedido.ActualizarDetallePedido(new List <string> { Convert.ToString(this.Id_pedido), Convert.ToString(row["Id_tipo"]), "PLATO", Convert.ToString(row["Precio"]), Convert.ToString(row["Cantidad"]), Convert.ToString(row["Observaciones"]), "0", "SUMAR" }); plato = true; } else { rpta = NPedido.ActualizarDetallePedido(new List <string> { Convert.ToString(this.Id_pedido), Convert.ToString(row["Id_tipo"]), "BEBIDA", Convert.ToString(row["Precio"]), Convert.ToString(row["Cantidad"]), Convert.ToString(row["Observaciones"]), "0", "SUMAR" }); bebida = true; } if (plato && bebida) { break; } } if (this.chkImprimirComandas.Checked) { if (plato && bebida) { imprimir = 2; } else { imprimir = 1; } comandas.ImprimirFactura(imprimir); } } MensajeEspera.CloseForm(); this.DialogResult = DialogResult.OK; this.Close(); } else { this.DialogResult = DialogResult.OK; this.Close(); } } else { this.contextMenuDatosPedido.IsEditar = false; this.SumarPrecios(); this.containerDatosPedido.Show(btnInformacionPedido); } }
private async void BtnSave_Click(object sender, EventArgs e) { try { var(result, usuario, direccion, venta, agendamiento) = await this.Comprobaciones(); if (result) { MensajeEspera.ShowWait("Guardando..."); List <string> errores = new List <string>(); string rpta = ""; if (this.IsEditar) { rpta = NUsuarios.EditarUsuario(usuario.Id_usuario, usuario); } else { rpta = NUsuarios.InsertarUsuario(out int id_usuario, usuario); direccion.Id_usuario = id_usuario; venta.Id_cliente = id_usuario; usuario.Id_usuario = id_usuario; } if (rpta.Equals("OK")) { if (this.IsEditar) { rpta = NDireccion_clientes.EditarDireccion(direccion.Id_direccion, direccion); } else { rpta = NDireccion_clientes.InsertarDireccion(out int id_direccion, direccion); venta.Id_direccion = id_direccion; } if (rpta.Equals("OK")) { if (this.IsEditar) { rpta = NVentas.EditarVenta(venta.Id_venta, venta); } else { rpta = NVentas.InsertarVenta(out int id_venta, venta); venta.Id_venta = id_venta; } if (rpta.Equals("OK")) { if (this.rdActual.Checked && !this.IsEditar && this.chkDescontar.Checked) { foreach (Articulos art in this.ArticulosSelected) { Detalle_articulos_venta detalle = new Detalle_articulos_venta { Articulo = art, Id_articulo = art.Id_articulo, Venta = venta, Id_venta = venta.Id_venta, Cantidad_articulo = (int)art.Cantidad_articulo, Valor_articulo = art.Valor_articulo, Estado_detalle = "ACTIVO", }; var(rptaDetalle, id_detalle) = await NDetalle_articulos_venta.InsertarDetalle(detalle); if (!rptaDetalle.Equals("OK")) { errores.Add(rptaDetalle); } } } MainController main = MainController.GetInstance(); if (!this.IsEditar) { rpta = NUsuariosVentas.InsertarUsuarioVenta(new Usuarios_ventas { Id_usuario = main.Usuario.Id_usuario, Id_venta = venta.Id_venta, }); if (rpta.Equals("OK")) { agendamiento.Id_venta = venta.Id_venta; rpta = NAgendamiento_cobros.InsertarAgendamiento(out int id_agendamiento, agendamiento); if (rpta.Equals("OK")) { MensajeEspera.CloseForm(); Mensajes.MensajeInformacion("Se guardó correctamente el cliente, " + "número cliente: " + usuario.Id_usuario + " Número venta: " + venta.Id_venta, "Entendido"); this.Close(); } else { throw new Exception(rpta); } } else { throw new Exception(rpta); } } else { //Obtener el último agendamiento var(rptaAg, dt) = await NAgendamiento_cobros.BuscarAgendamientos("ID VENTA", venta.Id_venta.ToString()); if (dt != null) { agendamiento = new Agendamiento_cobros(dt.Rows[0]); agendamiento.Valor_cobro = venta.Valor_cuota; agendamiento.Fecha_cobro = this.dateUltimoPago.Value; rptaAg = await NAgendamiento_cobros.EditarAgendamiento(agendamiento.Id_agendamiento, agendamiento); if (rptaAg != "OK") { Mensajes.MensajeInformacion("Se actualizó el cliente pero no su último pago," + "número cliente: " + usuario.Id_usuario + " Número venta: " + venta.Id_venta, "Entendido"); this.OnRefresh?.Invoke(sender, e); this.Close(); } else { Mensajes.MensajeInformacion("Se actualizó correctamente el cliente, " + "número cliente: " + usuario.Id_usuario + " Número venta: " + venta.Id_venta, "Entendido"); this.OnRefresh?.Invoke(sender, e); this.Close(); } } else { Mensajes.MensajeInformacion("Se actualizó correctamente el cliente pero no se encontraron sus agendamientos, número asignado: " + usuario.Id_usuario, "Entendido"); this.OnRefresh?.Invoke(sender, e); this.Close(); } } } } else { throw new Exception(rpta); } } else { throw new Exception(rpta); } } MensajeEspera.CloseForm(); } catch (Exception ex) { MensajeEspera.CloseForm(); Mensajes.MensajeErrorCompleto(this.Name, "BtnSave_Click", "Hubo un error al guardar el cliente", ex.Message); } }