/// <summary> /// Obtener las emergencias ligadas a la carga de emergenciade un ATM. /// </summary> /// <param name="c">Objeto CargaEmergenciaATM con los datos de la carga de emergencia</param> public void obtenerEmergenciasCargaEmergenciaSucursal(ref CargaEmergenciaSucursal c) { SqlCommand comando = _manejador.obtenerProcedimiento("SelectCargasSucursalCargaEmergenciaSucursal"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@carga", c, SqlDbType.Int); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_carga = (int)datareader["pk_ID"]; byte emergencia = (byte)datareader["Emergencia"]; DateTime fecha_asignada = (DateTime)datareader["Fecha_Pedido"]; CargaSucursal carga = new CargaSucursal(id: id_carga, emergencia: emergencia, fecha_asignada: fecha_asignada); c.agregarEmergencia(carga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } }
/// <summary> /// Eliminar los datos de una carga de emergencia de una Sucursal. /// </summary> /// <param name="c">Objeto CargaEmergenciaSucursal con los datos de la carga</param> public void eliminarCargaEmergenciaSucursal(CargaEmergenciaSucursal c) { SqlCommand comando = _manejador.obtenerProcedimiento("DeleteCargaEmergenciaSucursal"); _manejador.agregarParametro(comando, "@carga", c, SqlDbType.Int); try { _manejador.ejecutarConsultaActualizacion(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorCargaEmergenciaATMEliminacion"); } }
/// <summary> /// Registrar en el sistema la carga de emergencia de una Sucursal. /// </summary> /// <param name="c">Objeto CargaEmergenciaSucursal con los datos de la carga de emergencia/param> public void agregarCargaEmergenciaSucursal(ref CargaEmergenciaSucursal c) { SqlCommand comando = _manejador.obtenerProcedimiento("InsertCargaEmergenciaSucursal"); _manejador.agregarParametro(comando, "@sucursal", c.Sucursal, SqlDbType.SmallInt); _manejador.agregarParametro(comando, "@fecha", c.Fecha, SqlDbType.Date); try { c.ID = (int)_manejador.ejecutarEscalar(comando); comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorCargaEmergenciaATMRegistro"); } }
/// <summary> /// Clic en el botón de eliminar una carga de emergencia. /// </summary> private void btnEliminar_Click(object sender, EventArgs e) { try { if (Mensaje.mostrarMensajeConfirmacion("MensajeCargaEmergenciaATMEliminacion") == DialogResult.Yes) { CargaEmergenciaSucursal carga = (CargaEmergenciaSucursal)dgvCargasEmergencia.SelectedRows[0].DataBoundItem; _coordinacion.eliminarCargaEmergenciaSucursal(carga); dgvCargasEmergencia.Rows.Remove(dgvCargasEmergencia.SelectedRows[0]); Mensaje.mostrarMensaje("MensajeCargaEmergenciaATMConfirmacionEliminacion"); } } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Listar las cargas de emergencia por fecha. /// </summary> /// <param name="f">Fecha de las cargas que se listarán</param> public BindingList <CargaEmergenciaSucursal> listarCargasEmergenciaSucursales(DateTime f) { BindingList <CargaEmergenciaSucursal> cargas = new BindingList <CargaEmergenciaSucursal>(); SqlCommand comando = _manejador.obtenerProcedimiento("SelectCargasEmergenciaSucursales"); SqlDataReader datareader = null; _manejador.agregarParametro(comando, "@fecha", f, SqlDbType.Date); try { datareader = _manejador.ejecutarConsultaDatos(comando); while (datareader.Read()) { int id_carga = (int)datareader["ID_Carga"]; int numero_emergencia = (int)(byte)datareader["Numero_Emergencia"]; Sucursal atm = null; if (datareader["ID_ATM"] != DBNull.Value) { short id_atm = (short)datareader["ID_ATM"]; short numero = (short)datareader["Numero"]; string nombre = (string)datareader["Nombre"]; atm = new Sucursal(id: id_atm, codigo: numero, nombre: nombre); } CargaEmergenciaSucursal carga = new CargaEmergenciaSucursal(id: id_carga, sucursal: atm, fecha: f); cargas.Add(carga); } comando.Connection.Close(); } catch (Exception) { comando.Connection.Close(); throw new Excepcion("ErrorDatosConexion"); } return(cargas); }
/// <summary> /// Mostrar la ventana de modificación de la carga de emergencia. /// </summary> private void mostrarVentanaModificacion() { try { CargaEmergenciaSucursal carga = (CargaEmergenciaSucursal)dgvCargasEmergencia.SelectedRows[0].DataBoundItem; if (carga.Descargada) { return; } frmModificionCargasEmergenciaSucursales formulario = new frmModificionCargasEmergenciaSucursales(carga); formulario.ShowDialog(this); dgvCargasEmergencia.Refresh(); } catch (Excepcion ex) { ex.mostrarMensaje(); } }
/// <summary> /// Se selecciona otra carga de emergencia de la lista de cargas. /// </summary> private void dgvCargasEmergencia_SelectionChanged(object sender, EventArgs e) { if (dgvCargasEmergencia.SelectedRows.Count > 0) { CargaEmergenciaSucursal carga = (CargaEmergenciaSucursal)dgvCargasEmergencia.SelectedRows[0].DataBoundItem; if (carga.Descargada) { btnModificar.Enabled = false; btnEliminar.Enabled = false; } else { btnModificar.Enabled = true; btnEliminar.Enabled = true; } } else { btnModificar.Enabled = false; btnEliminar.Enabled = false; } }
public frmModificionCargasEmergenciaSucursales(CargaEmergenciaSucursal carga) { InitializeComponent(); _carga = carga; try { this.cargarDatos(); dgvEmergenciasAsignadas.DataSource = carga.Emergencias; dtpFechaCarga.Value = carga.Fecha; dtpFechaCarga.Enabled = false; cboATM.Text = carga.Sucursal.ToString(); cboATM.Enabled = false; } catch (Exception ex) { throw ex; } }
/// <summary> /// Agregar una carga de emergencia a la lista. /// </summary> public void agregarCargaEmergenciaATM(CargaEmergenciaSucursal carga) { BindingList <CargaEmergenciaSucursal> cargas = (BindingList <CargaEmergenciaSucursal>)dgvCargasEmergencia.DataSource; cargas.Add(carga); }
/// <summary> /// Clic en el botón de guardar. /// </summary> private void btnGuardar_Click(object sender, EventArgs e) { // Verificar que se hayan seleccionado los datos if (cboATM.SelectedItem == null) { Excepcion.mostrarMensaje("ErrorCargaEmergenciaSucursalDatosRegistro"); return; } try { frmListaCargasEmergenciaSucursales padre = (frmListaCargasEmergenciaSucursales)this.Owner; Sucursal atm = (Sucursal)cboATM.SelectedItem; DateTime fecha = dtpFechaCarga.Value; BindingList<CargaSucursal> emergencias = (BindingList<CargaSucursal>)dgvEmergenciasAsignadas.DataSource; // Verificar si la carga de emergencia ya está registrada if (_carga == null) { // Agregar los datos de la carga de emergencia if (Mensaje.mostrarMensajeConfirmacion("MensajeCargaEmergenciaATMRegistro") == DialogResult.Yes) { CargaEmergenciaSucursal nueva = new CargaEmergenciaSucursal(sucursal: atm, fecha: fecha); nueva.Emergencias = emergencias; _coordinacion.agregarCargaEmergenciaSucursal(ref nueva); nueva.reasignarEmergencias(); padre.agregarCargaEmergenciaATM(nueva); Mensaje.mostrarMensaje("MensajeCargaEmergenciaATMConfirmacionRegistro"); this.Close(); } } else { // Actualizar los datos de la carga de emergencia CargaEmergenciaSucursal copia = new CargaEmergenciaSucursal(id: _carga.ID, sucursal: atm, fecha: fecha); copia.Emergencias = emergencias; _coordinacion.actualizarCargaEmergenciaSucursal(copia); _carga.Emergencias = emergencias; _carga.reasignarEmergencias(); padre.actualizarLista(); Mensaje.mostrarMensaje("MensajeCargaEmergenciaATMConfirmacionActualizacion"); this.Close(); } } catch (Excepcion ex) { ex.mostrarMensaje(); } }