public IList <Invitado> GetAllInvitados() { IList <Invitado> invitados = new List <Invitado>(); using (SqliteConnection db = CreateConnection()) { db.Open(); SqliteCommand selectCommand = new SqliteCommand("SELECT Id," + "Codigo, Nombre, Evento, EventoLocal, Extra, DNI, Email, Oficina, Asistencia, Notas FROM Invitados order by Email", db); SqliteDataReader query = selectCommand.ExecuteReader(); while (query.Read()) { Invitado invitado = new Invitado { Id = query.GetInt32(0), Codigo = query.GetInt32(1), Nombre = query.GetString(2), Evento = query.GetString(3), EventoLocal = query.GetString(4), Extra = query.GetString(5), DNI = query.GetString(6), Email = query.GetString(7), Oficina = query.GetString(8), Asistencia = query.GetString(9), Notas = query.GetString(10) }; invitados.Add(invitado); } db.Close(); } return(invitados); }
public Invitado GetInvitadoByEmail(string email) { Invitado invitado = null; using (SqliteConnection db = CreateConnection()) { db.Open(); SqliteCommand selectCommand = new SqliteCommand("SELECT Id," + "Codigo, Nombre, Evento, EventoLocal, Extra, DNI, Email, Oficina, Asistencia, Notas FROM Invitados where Email=@EmailParam", db); selectCommand.Parameters.AddWithValue("@EmailParam", email); SqliteDataReader query = selectCommand.ExecuteReader(); while (query.Read()) { invitado = new Invitado { Id = query.GetInt32(0), Codigo = query.GetInt32(1), Nombre = query.GetString(2), Evento = query.GetString(3), EventoLocal = query.GetString(4), Extra = query.GetString(5), DNI = query.GetString(6), Email = query.GetString(7), Oficina = query.GetString(8), Asistencia = query.GetString(9), Notas = query.GetString(10) }; } db.Close(); } return(invitado); }
public (ResultadoCheck, Invitado, Asistente) CheckQR(string qr) { Asistente asistente = null; Invitado invitado = null; ResultadoCheck result = ResultadoCheck.NoValue; if (!string.IsNullOrWhiteSpace(qr)) { result = ResultadoCheck.NoExiste; string emailInvitado = desglosaQRGetEmail(qr); invitado = dataService.GetInvitadoByEmail(emailInvitado); if (invitado != null) { result = ResultadoCheck.DatosIncorrectos; if (verificarInvitado(invitado)) { asistente = dataService.GetAsistenteByIdInvitado(invitado.Id); if (verificarAsistente(asistente)) { result = ResultadoCheck.PuedeEntrar; } else { result = ResultadoCheck.Registrado; } } } } (ResultadoCheck, Invitado, Asistente)resultComplete = ((ResultadoCheck)result, invitado, asistente); return(resultComplete); }
private void clearPanels() { panelNoExiste.Visible = false; panelConfirmacionEntrada.Visible = false; this.InvitadoTemporal = null; panelAsistenciaRegistrada.Visible = false; }
internal void AceptarInvitado(Invitado invitado) { Asistente asistente = new Asistente { InvitadoId = invitado.Id, QRLeido = invitado.QRLeido, Entrada = DateTime.Now }; dataService.InsertAsistente(asistente); }
public void InsertInvitadoManual(Invitado invitado) { using (SqliteConnection db = CreateConnection()) { db.Open(); insertInvitado(db, invitado); db.Close(); } }
private Invitado invitadoSeleccionado() { Invitado invitado = null; if (gridInvitados?.SelectedRows.Count > 0) { invitado = (Invitado)gridInvitados.SelectedRows[0].DataBoundItem; } return(invitado); }
private bool verificarInvitado(Invitado invitado) { bool verificado = false; if (invitado != null) { if (invitado.EventoLocal == configuracion.Evento && invitado.IsConfirmado) { verificado = true; } } return(verificado); }
private void gridInvitados_RowEnter(object sender, DataGridViewCellEventArgs e) { Invitado invitado = invitadoSeleccionado(); if (invitado != null && invitado.IsRegistrado) { contextMenuGrid.Items[0].Enabled = false; } else { contextMenuGrid.Items[0].Enabled = true; } }
private void marcarAsistencia_Click(object sender, EventArgs e) { Invitado invitado = invitadoSeleccionado(); if (invitado != null) { string mensaje = $"El invitado {invitado.Nombre} con DNI {invitado.DNI}, ¿se le concede acceso?"; DialogResult dialogResult = MessageBox.Show(mensaje, "Confirmación de asistencia manual", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.Yes) { marcarAsistente(invitado); } } }
public IList <Invitado> ReadFileInvitados(string filename, System.Windows.Forms.ToolStripProgressBar updateProgress) { string[] lineas = File.ReadAllLines(filename, Encoding.GetEncoding("iso-8859-15")); updateProgress.Value = 0; IList <Invitado> invitados = new List <Invitado>(); for (int lineaId = 1; lineaId < lineas.Count(); lineaId++) { Invitado invitado = ConvertLineToInvitado(lineas[lineaId]); invitados.Add(invitado); updateProgress.Value = (100 * lineaId) / lineas.Count(); } updateProgress.Value = 100; return(invitados); }
private void addNotasToolStripMenuItem_Click(object sender, EventArgs e) { Invitado invitado = invitadoSeleccionado(); if (invitado != null) { string notasActualizadas = Prompt.ShowDialog("Notas", $"Actualizar invitado {invitado.Nombre} {invitado.DNI}", invitado.Notas); if (!notasActualizadas.Equals(invitado.Notas)) { invitado.Notas = notasActualizadas; dataService.ActualizarNotasInvitado(invitado); FillGrid(); } } }
private void marcarAsistente(Invitado invitado) { invitado.QRLeido = "Proceso Manual"; if (!invitado.IsRegistrado) { proceso.AceptarInvitado(invitado); int?indexSelecte = gridInvitados.SelectedRows[0]?.Index; FillGrid(); gridInvitados.Rows[indexSelecte.GetValueOrDefault()].Selected = true; gridInvitados.FirstDisplayedScrollingRowIndex = indexSelecte.GetValueOrDefault(); } else { MessageBox.Show("El invitado ya se había registrado antes"); } }
public void ActualizarNotasInvitado(Invitado invitado) { using (SqliteConnection db = CreateConnection()) { db.Open(); SqliteCommand updateCommand = new SqliteCommand(); updateCommand.Connection = db; // Use parameterized query to prevent SQL injection attacks updateCommand.CommandText = "UPDATE Invitados SET Notas= @Notas WHERE Id = @Id;"; updateCommand.Parameters.AddWithValue("@Id", invitado.Id); updateCommand.Parameters.AddWithValue("@Notas", invitado.Notas); updateCommand.ExecuteNonQuery(); db.Close(); } }
public Invitado ConvertLineToInvitado(string linea) { var campos = linea.Split(new char[] { Convert.ToChar(CSVSeparationLetter) }); Invitado invitado = new Invitado { Codigo = Convert.ToInt32(campos[0]), Evento = campos[1], Asistencia = campos[2], EventoLocal = campos[3], Email = campos[4], Nombre = campos[5], Oficina = campos[6], DNI = campos[7], Extra = campos[8] }; return(invitado); }
public IList <Invitado> GetAllInvitadosView() { IList <Invitado> invitados = new List <Invitado>(); using (SqliteConnection db = CreateConnection()) { db.Open(); SqliteCommand selectCommand = new SqliteCommand("SELECT i.Id," + "i.Codigo, i.Nombre, i.Evento, i.EventoLocal, i.Extra, i.DNI, i.Email, i.Oficina,i.Asistencia , a.entrada, i.Notas FROM Invitados i LEFT JOIN Asistencia a on i.Id = a.InvitadoId order by i.Email", db); SqliteDataReader query = selectCommand.ExecuteReader(); while (query.Read()) { Invitado invitado = new Invitado { Id = query.GetInt32(0), Codigo = query.GetInt32(1), Nombre = query.GetString(2), Evento = query.GetString(3), EventoLocal = query.GetString(4), Extra = query.GetString(5), DNI = query.GetString(6), Email = query.GetString(7), Oficina = query.GetString(8), Asistencia = query.GetString(9), Notas = query.GetString(11) }; if (!query.IsDBNull(10)) { invitado.Registrado = "Sí"; } else { invitado.Registrado = "No"; } invitados.Add(invitado); } db.Close(); } return(invitados); }
private void buttonGuardar_Click(object sender, EventArgs e) { Invitado invitado = new Invitado { Nombre = NombreText.Text, DNI = DniText.Text, Notas = NotasText.Text, Evento = string.Empty, EventoLocal = configuracion.Evento }; if (invitado.HasValuesMinimos()) { dataService.InsertInvitadoManual(invitado); this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("Es necesario cubrir todos los campos"); } }
protected void insertInvitado(SqliteConnection db, Invitado invitado) { SqliteCommand insertCommand = new SqliteCommand(); insertCommand.Connection = db; // Use parameterized query to prevent SQL injection attacks insertCommand.CommandText = "INSERT INTO Invitados VALUES (null,@Codigo, @Nombre, @Evento, @EventoLocal, @Extra, @DNI, @Email, @Oficina, @Asistencia, @Notas);"; insertCommand.Parameters.AddWithValue("@Codigo", invitado.Codigo); insertCommand.Parameters.AddWithValue("@Nombre", invitado.Nombre); insertCommand.Parameters.AddWithValue("@Evento", invitado.Evento); insertCommand.Parameters.AddWithValue("@EventoLocal", invitado.EventoLocal); insertCommand.Parameters.AddWithValue("@Extra", invitado.Extra); insertCommand.Parameters.AddWithValue("@DNI", invitado.DNI); insertCommand.Parameters.AddWithValue("@Email", invitado.Email); insertCommand.Parameters.AddWithValue("@Oficina", invitado.Oficina); insertCommand.Parameters.AddWithValue("@Asistencia", invitado.Asistencia); insertCommand.Parameters.AddWithValue("@Notas", invitado.Notas); insertCommand.ExecuteNonQuery(); }