private void btnGuardar_Click(object sender, EventArgs e) { if (cbEliminatoria.Checked == true || cbClasificatorio.Checked == true) { rtbCupo.Text = "0"; } if(cbTCTUnaVuelta.Checked == true) { cupo = Convert.ToInt32(rtbCupo.Text); if (cupo < 0) { MessageBox.Show("Seleccione una cantidad de participantes para que haya cupo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbCantidadParticipantes.Focus(); return; } } if (rtbDescripcion.Text != "") { contadorLetras.Text = Convert.ToString(rtbDescripcion.Text.Length); var aux = Convert.ToInt32(contadorLetras.Text); if (aux > 50) { MessageBox.Show("Ingrese una descripción con menos de 50 caracteres.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); rtbDescripcion.Focus(); return; } } if (banderaFechaInicio == false) { MessageBox.Show("Seleccione una Fecha de Inicio.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); dtFechaInicio.Focus(); return; } if (banderaFechaInicio && (DateTime.Compare(dtFechaInicio.Value, dtFechaCierre.Value) > 0)) { MessageBox.Show("La Fecha de Cierre debe ser posterior a la Fecha de Inicio.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); dtFechaInicio.Focus(); return; } var tt = new TipoTorneo(); if (cbEliminatoria.Checked == false && cbTCTUnaVuelta.Checked == false && cbClasificatorio.Checked == false) { MessageBox.Show("Seleccione un Tipo de Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cbEliminatoria.Focus(); return; } if (cbEliminatoria.Checked) { tt.Id_tipoTorneo = 1; } if (cbTCTUnaVuelta.Checked) { tt.Id_tipoTorneo = 2; } if (cbClasificatorio.Checked) { tt.Id_tipoTorneo = 4; } if(cbClasificatorio.Checked == true) { var clasi = cmbClasificadosPorGrupo.SelectedValue.ToString(); var clasificados = int.Parse(clasi); var part = cmbParticipantesPorGrupo.SelectedValue.ToString(); var participantes = int.Parse(part); if (participantes <= clasificados) { MessageBox.Show( "La Cantidad de Clasificados por Grupo debe ser menor que la Cantidad de Participantes por Grupo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbParticipantesPorGrupo.Focus(); return; } } if (banderaCalcular == false && cbClasificatorio.Checked) { MessageBox.Show("Presione el botón Calcular del campo Cantidad de Participantes.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbCantidadParticipantes.Focus(); return; } var inicio = dtFechaInicio.Value; var cierre = dtFechaCierre.Value; int cantidadParticipantes; // para eliminatoria, todos contra todos if (cmbCantidadParticipantes.Visible) { cantidadParticipantes = Convert.ToInt32(cmbCantidadParticipantes.SelectedValue); } //para clasificatorio else { var cp = txtCantParticipantes.Text; cantidadParticipantes = int.Parse(cp); } var est = new Estado(); est.Id_estado = Convert.ToInt32(cmbEstados.SelectedValue); if (cbEliminatoria.Checked || cbTCTUnaVuelta.Checked) { if (cmbPuntajePrimerPuesto.Enabled == true && cmbPuntajeSegundoPuesto.Enabled == true) { puntajePrimerPuesto = Convert.ToInt32(cmbPuntajePrimerPuesto.SelectedValue); puntajeSegundoPuesto = Convert.ToInt32(cmbPuntajeSegundoPuesto.SelectedValue); if (puntajePrimerPuesto <= puntajeSegundoPuesto) { MessageBox.Show("El puntaje del Primer Puesto debe ser mayor al puntaje del Segundo Puesto.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbPuntajePrimerPuesto.Focus(); return; } } if (btnCalcularCupo.Visible == true) { MessageBox.Show("Se debe calcular el cupo del torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); btnCalcularCupo.Focus(); return; } guardado = gt.ModificarTorneoEliminatoria(id, txtNombreTorneo.Text, rtbDescripcion.Text, est, inicio, cierre, tt, cantidadParticipantes, puntajePrimerPuesto, puntajeSegundoPuesto); } if (cbClasificatorio.Checked) { if (cmbPuntajePrimerPuesto.Enabled == true && cmbPuntajeSegundoPuesto.Enabled == true) { puntajePrimerPuesto = Convert.ToInt32(cmbPuntajePrimerPuesto.SelectedValue); puntajeSegundoPuesto = Convert.ToInt32(cmbPuntajeSegundoPuesto.SelectedValue); if (puntajePrimerPuesto <= puntajeSegundoPuesto) { MessageBox.Show("El puntaje del Primer Puesto debe ser mayor al puntaje del Segundo Puesto.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbPuntajePrimerPuesto.Focus(); return; } } int cantGrupos = Convert.ToInt32(cmbCantidadGrupos.SelectedValue); int participantesXGrupo = Convert.ToInt32(cmbParticipantesPorGrupo.SelectedValue); int clasificadosXGrupo = Convert.ToInt32(cmbClasificadosPorGrupo.SelectedValue); int totalParticipantes = Convert.ToInt32(txtCantParticipantes.Text); guardado = gt.ModificarTorneoClasificatorio(id, txtNombreTorneo.Text, rtbDescripcion.Text, est, inicio, cierre, tt, totalParticipantes, puntajePrimerPuesto, puntajeSegundoPuesto, cantGrupos, participantesXGrupo, clasificadosXGrupo); } if (guardado == "Modificado") { lblGuardado.Visible = false; lblGuardado.Text = "Guardado Correctamente: " + txtNombre.Text; MessageBox.Show("Se modificó correctamente el Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); setearCamposParaNuevaBusqueda(); //comentado //hayFaseAnterior(); return; } if (guardado == "Error al Guardar") { lblGuardado.Visible = false; lblGuardado.Text = "No Guardado, error de escritura"; MessageBox.Show("No se pudo guardar el Torneo. Error al Guardar.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Error); } //fin del registrar }
public string RegistrarClasificatorio(string nombre, string descripcion, Deporte deporte, DateTime inicioTorneo, DateTime cierreTorneo, TipoTorneo tipoTorneo, int cantidadParticipantes, Estado estado, int cantidadGrupos, int cantidadParticipantesPorGrupo, int clasificadosPorGrupo, int puntajePrimerPuesto, int puntajeSegundoPuesto, Deporte tipoDeporte) { t.Nombre = nombre; t.Descripcion = descripcion; t.Deporte = deporte; t.Inicio_Torneo = inicioTorneo; t.Cierre_Torneo = cierreTorneo; t.Tipo_Torneo = tipoTorneo; t.Cantidad_participantes = cantidadParticipantes; t.Estado = estado; t.Cantidad_grupos = cantidadGrupos; t.Cantidad_participantes_grupo = cantidadParticipantesPorGrupo; t.Cantidad_clasificados_grupo = clasificadosPorGrupo; t.Puntaje_primer_puesto = puntajePrimerPuesto; t.Puntaje_segundo_puesto = puntajeSegundoPuesto; t.Deporte = tipoDeporte; t.Id_tipo_deporte = deporte.Id_tipo;//Agrego comprobar si funciona guardado = mt.Existe(t); if (guardado == "Existe") return "Existe"; guardado = mt.RegistrarClasificatorio(t); return guardado; }
//public void hayFaseAnterior() //{ // DialogResult res; // res = MessageBox.Show("¿El torneo tiene una fase anterior?", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question); // if (res == DialogResult.Yes) // { // try // { // //abre una ventana para seleccionar una fase anterior // TieneFaseAnterior form = new TieneFaseAnterior(); // form.Show(); // //guardar id de torneo nada mas, haria un update en el torneo elegido. // //form.ShowDialog();//para que bloquee la pantalla nueva y no se pueda modificar la de atras. // // Que pasa si no selecciona nada en la pantallaTieneFaseAnterior? // } // catch (Exception ex) { } // } //} // al guardar aparece la pregunta si tiene fase anterior. Si pongo que si me abre otra pantalla donde consulta todos los torneos del mismo deporte y mismo y tipo para relacionarlo con la fk idTorneoProxFase. Ahi me permite seleccionar. private void btnGuardar_Click(object sender, EventArgs e) { if (txtNombre.Text == "") { MessageBox.Show("Ingrese un nombre para el Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); txtNombre.Focus(); return; } if (rtbDescripcion.Text != "") { contadorLetras.Text = Convert.ToString(rtbDescripcion.Text.Length); var aux = Convert.ToInt32(contadorLetras.Text); if (aux > 50) { MessageBox.Show("Ingrese una descripción con menos de 50 caracteres.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); rtbDescripcion.Focus(); return; } } if (cmbTiposDeporte.SelectedValue == "- Seleccione un Tipo de Deporte -") { MessageBox.Show("Seleccione un Tipo de Deporte.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbTiposDeporte.Focus(); return; } if (cmbDeportes.SelectedValue == "- Seleccione un Deporte -") { MessageBox.Show("Seleccione un Deporte.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbDeportes.Focus(); return; } if (banderaFechaInicio == false) { MessageBox.Show("Seleccione una Fecha de Inicio.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); dtFechaInicio.Focus(); return; } if (banderaFechaInicio && (DateTime.Compare(dtFechaInicio.Value, dtFechaCierre.Value) > 0)) { MessageBox.Show("La Fecha de Cierre debe ser posterior a la Fecha de Inicio.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); dtFechaInicio.Focus(); return; } var tt = new TipoTorneo(); //if (cbEliminatoria.Checked == false && cbTCTUnaVuelta.Checked == false && cbTCTDobleVuelta.Checked == false && if (cbEliminatoria.Checked == false && cbTCTUnaVuelta.Checked == false && cbClasificatorio.Checked == false) { MessageBox.Show("Seleccione un Tipo de Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cbEliminatoria.Focus(); return; } // tt.Id_tipoTorneo = Convert.ToInt32(cmbTiposTorneo.SelectedValue); if (cbEliminatoria.Checked) { tt.Id_tipoTorneo = 1; } if (cbTCTUnaVuelta.Checked) { tt.Id_tipoTorneo = 2; }/* if (cbTCTDobleVuelta.Checked) { tt.Id_tipoTorneo = 3; }*/ if (cbClasificatorio.Checked) { tt.Id_tipoTorneo = 4; } if (cbClasificatorio.Checked) { if (cmbCantidadGrupos.SelectedValue == "- Seleccione una Cantidad -") { MessageBox.Show("Seleccione una Cantidad de Grupos.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbCantidadGrupos.Focus(); return; } if (cmbParticipantesPorGrupo.SelectedValue == "- Seleccione una Cantidad -") { MessageBox.Show("Seleccione una Cantidad de Participantes por Grupo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbParticipantesPorGrupo.Focus(); return; } if (cmbClasificadosPorGrupo.SelectedValue == "- Seleccione una Cantidad -") { MessageBox.Show("Seleccione una Cantidad de Clasificados por Grupo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbClasificadosPorGrupo.Focus(); return; } } if (cmbPuntajePrimerPuesto.SelectedValue == "- Seleccione un Puntaje -" && cmbTiposDeporte.SelectedValue == "Federado") { MessageBox.Show("Seleccione un Puntaje para el Primer Puesto del Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbPuntajePrimerPuesto.Focus(); return; } if (cmbPuntajeSegundoPuesto.SelectedValue == "- Seleccione un Puntaje -" && cmbTiposDeporte.SelectedValue == "Federado") { MessageBox.Show("Seleccione un Puntaje para el Segundo Puesto del Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbPuntajeSegundoPuesto.Focus(); return; } if (cbClasificatorio.Checked && cmbClasificadosPorGrupo.SelectedValue != "- Seleccione una Cantidad -" && cmbParticipantesPorGrupo.SelectedValue != "- Seleccione una Cantidad -") { var clasi = cmbClasificadosPorGrupo.SelectedValue.ToString(); var clasificados = int.Parse(clasi); var part = cmbParticipantesPorGrupo.SelectedValue.ToString(); var participantes = int.Parse(part); if (participantes <= clasificados) { MessageBox.Show( "La Cantidad de Clasificados por Grupo debe ser menor que la Cantidad de Participantes por Grupo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbParticipantesPorGrupo.Focus(); return; } } //Eliminatorio y Todos Contra Todos //if (cmbCantidadParticipantes.SelectedValue == "- Seleccione una Cantidad -" && // (cbEliminatoria.Checked || cbTCTUnaVuelta.Checked || cbTCTDobleVuelta.Checked)) if (cmbCantidadParticipantes.SelectedValue == "- Seleccione una Cantidad -" && (cbEliminatoria.Checked || cbTCTUnaVuelta.Checked)) { MessageBox.Show("Seleccione una Cantidad de Participantes.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbCantidadParticipantes.Focus(); return; } if (banderaCalcular == false && cbClasificatorio.Checked) { MessageBox.Show("Presione el botón Calcular del campo Cantidad de Participantes.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbCantidadParticipantes.Focus(); return; } var de = new Deporte(); var est = new Estado(); var inicio = dtFechaInicio.Value; var cierre = dtFechaCierre.Value; //********************************** seria mejor hacerlo todo por bd con una tabla TiposDeporte if (cmbTiposDeporte.SelectedIndex == 1)//Recreativo { de.Id_tipo = 1; de.Tipo = "Recreativo"; } if (cmbTiposDeporte.SelectedIndex == 0)//Federado { de.Id_tipo = 2; de.Tipo = "Federado"; } //de.Id_tipo = Convert.ToInt32(cmbDeportes.SelectedValue); //de.Tipo = cmbDeportes.SelectedValue.ToString(); //********************************** de.Id_deporte = Convert.ToInt32(cmbDeportes.SelectedValue); int cantidadParticipantes; // para eliminatoria, todos contra todos if (cmbCantidadParticipantes.Visible) { cantidadParticipantes = Convert.ToInt32(cmbCantidadParticipantes.SelectedValue); } //para clasificatorio else { var cp = txtCantParticipantes.Text; cantidadParticipantes = int.Parse(cp); } est.Id_estado = 12; //setea el estado del torneo a "Creado" //if (cbEliminatoria.Checked || cbTCTUnaVuelta.Checked || cbTCTDobleVuelta.Checked) if (cbEliminatoria.Checked || cbTCTUnaVuelta.Checked) { if (cmbTiposDeporte.SelectedIndex == 1)//Recreativo { puntajePrimerPuesto = 0; puntajeSegundoPuesto = 0; } if (cmbTiposDeporte.SelectedIndex == 0)//Federado { puntajePrimerPuesto = Convert.ToInt32(cmbPuntajePrimerPuesto.SelectedValue); puntajeSegundoPuesto = Convert.ToInt32(cmbPuntajeSegundoPuesto.SelectedValue); if (puntajePrimerPuesto <= puntajeSegundoPuesto) { MessageBox.Show("El puntaje del Primer Puesto debe ser mayor al puntaje del Segundo Puesto.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbPuntajePrimerPuesto.Focus(); return; } } guardado = gt.Registrar(txtNombre.Text, rtbDescripcion.Text, de, inicio, cierre, tt, cantidadParticipantes, est, puntajePrimerPuesto, puntajeSegundoPuesto, de); } if (cbClasificatorio.Checked) { if (cmbTiposDeporte.SelectedIndex == 1)//Recreativo { puntajePrimerPuesto = 0; puntajeSegundoPuesto = 0; } if (cmbTiposDeporte.SelectedIndex == 0)//Federado { puntajePrimerPuesto = Convert.ToInt32(cmbPuntajePrimerPuesto.SelectedValue); puntajeSegundoPuesto = Convert.ToInt32(cmbPuntajeSegundoPuesto.SelectedValue); if (puntajePrimerPuesto <= puntajeSegundoPuesto) { MessageBox.Show("El puntaje del Primer Puesto debe ser mayor al puntaje del Segundo Puesto.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); cmbPuntajePrimerPuesto.Focus(); return; } } var cg = cmbCantidadGrupos.SelectedValue.ToString(); var cantGrupos = int.Parse(cg); var pxg = cmbParticipantesPorGrupo.SelectedValue.ToString(); var participantesXGrupo = int.Parse(pxg); var cxg = cmbClasificadosPorGrupo.SelectedValue.ToString(); var clasificadosXGrupo = int.Parse(cxg); var total = txtCantParticipantes.Text; var totalParticipantes = int.Parse(total); guardado = gt.RegistrarClasificatorio(txtNombre.Text, rtbDescripcion.Text, de, inicio, cierre, tt, totalParticipantes, est, cantGrupos, participantesXGrupo, clasificadosXGrupo, puntajePrimerPuesto, puntajeSegundoPuesto, de); } if (guardado == "Existe") { lblGuardado.Visible = false; lblGuardado.Text = "No Guardado, ya existe: " + txtNombre.Text; txtNombre.Text = ""; MessageBox.Show("Ya existe un Torneo con ese nombre.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (guardado == "Guardado") { lblGuardado.Visible = false; lblGuardado.Text = "Guardado Correctamente: " + txtNombre.Text; try { var fechaHoy = DateTime.Now; dtFechaInicio.Value = fechaHoy; dtFechaCierre.Value = fechaHoy; } catch (ArgumentOutOfRangeException ex) { } dtFechaCierre.Enabled = false; LLenarComboSeleccionClasificatorio(); LLenarComboSeleccionPuntajes(); if (cbClasificatorio.Checked) { cbClasificatorio.Checked = false; txtCantParticipantes.Text = ""; txtCantParticipantes.Visible = false; cmbCantidadParticipantes.Visible = true; } if (cbEliminatoria.Checked) { cbEliminatoria.Checked = false; } if (cbTCTUnaVuelta.Checked) { cbTCTUnaVuelta.Checked = false; } /*if (cbTCTDobleVuelta.Checked) { cbTCTDobleVuelta.Checked = false; }*/ LlenarComboCantidadParticipantes(); MessageBox.Show("Se registró correctamente el Torneo.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Information); /* hayReserva(); */ //para que vaya directo a fase anterior, con hayReserva() tambien recorre hayFaseAnterior() hayFaseAnterior(); return; } if (guardado == "Error al Guardar") { lblGuardado.Visible = false; lblGuardado.Text = "No Guardado, error de escritura"; MessageBox.Show("No se pudo guardar el Torneo. Error al Guardar.", "Registro de Torneo", MessageBoxButtons.OK, MessageBoxIcon.Error); } //Al reservar las canchas de torneo al inicio de año pisaria todo, tienen prioridad /*res = MessageBox.Show("“Desea registrar reserva de canchas para torneo?", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (res == DialogResult.Yes) { RegistrarReserva form = new RegistrarReserva(); form.Show(); }*/ }
public string ModificarTorneoEliminatoria(int id, string nombre, string descripcion, Estado est, DateTime fechaInicio, DateTime fechaCierre, TipoTorneo tipoTorneo, int cantidadParticipantes, int puntajePrimerPuesto, int puntajeSegundoPuesto) { t.Id_torneo = id; t.Nombre = nombre; t.Descripcion = descripcion; t.Estado = est; t.Inicio_Torneo = fechaInicio; t.Cierre_Torneo = fechaCierre; t.Tipo_Torneo = tipoTorneo; t.Cantidad_participantes = cantidadParticipantes; t.Puntaje_primer_puesto = puntajePrimerPuesto; t.Puntaje_segundo_puesto = puntajeSegundoPuesto; guardado = mt.Existe(t); guardado = mt.ModificarTorneoEliminatoria(t); return guardado; }