private void bnGuardar_Click(object sender, EventArgs e) { if ((comboBoxCodPublicacion.Text != "") && (comboBoxEstado.Text != "") && (comboBoxPreguntas.Text != "") && (comboBoxVisibilidad.Text != "") && (txtDescripcion.Text != "") && (txtPrecio.Text != "") && (txtStock.Text != "") ) { //Busca codigo de estado y se lo guarda string consultaEstado = "SELECT ID FROM JJRD.ESTADO_PUBLICACION WHERE DESCRIPCION = '" + comboBoxEstado.Text + "'"; Query qry3 = new Query(consultaEstado); int idEstado = (int)qry3.ObtenerUnicoCampo(); //Busca codigo de visibilidad y se lo guarda string visibilidad = "SELECT COD_VISIBILIDAD FROM JJRD.VISIBILIDAD WHERE DESCRIPCION = '" + comboBoxVisibilidad.Text + "'"; Query qr = new Query(visibilidad); decimal idVisibilidad = (decimal)qr.ObtenerUnicoCampo(); //Busca codigo tipo de publicacion y se lo guarda if (tipoPubli == "Compra Inmediata") { if (comboBoxVisibilidad.Text == "Gratis" && comboBoxEstado.Text == "Publicada") { //insertar en tabla usuarios contador publicacion gratis string publicacionesGratisUsuario = "SELECT PUBLICACIONES_GRATIS FROM JJRD.USUARIOS WHERE ID_USUARIO =" + idUs; Query qry4 = new Query(publicacionesGratisUsuario); int cantidadPublicacionesGratis = (int)qry4.ObtenerUnicoCampo(); if (cantidadPublicacionesGratis >= 3) { //Mensaje de Error, usted ya tiene 3 publicaciones gratis MessageBox.Show("Usted ya tiene 3 Publicaciones Gratis", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information); //Volver a llenar el formulario FrmEditarPublicacion volverAlForm = new FrmEditarPublicacion(); this.Hide(); volverAlForm.ShowDialog(); volverAlForm = (FrmEditarPublicacion)this.ActiveMdiChild; } else { //Incrementar y generar publicaciones //incrementa publicaciones gratis cantidadPublicacionesGratis = cantidadPublicacionesGratis + 1; string actualizar = "UPDATE JJRD.USUARIOS SET PUBLICACIONES_GRATIS = " + cantidadPublicacionesGratis + " WHERE ID_USUARIO = " + idUs + ""; new Query(actualizar).Ejecutar(); //actualiza publicacion string actualizarPublicacion = "UPDATE JJRD.PUBLICACION SET COD_PUBLICACION = " + publicacion + ", ID_USUARIO = " + idUs + ", COD_VISIBILIDAD = " + idVisibilidad + ", DESCRIPCION = '" + txtDescripcion.Text + "', STOCK = " + txtStock.Text + ", FECHA_VENCIMIENTO = '" + txtFechaVencimiento.Text + "', FECHA_INICIO = '" + Globales.fechaSistema + "', PRECIO = " + txtPrecio.Text + ", ID_ESTADO_PUBLICACION = " + idEstado + ", ID_TIPO_PUBLICACION = " + 1 + ", PREGUNTAS = '" + comboBoxPreguntas.Text + "' WHERE COD_PUBLICACION = " + publicacion + ""; new Query(actualizarPublicacion).Ejecutar(); } } else { //actualiza comun string actualizarPublicacion = "UPDATE JJRD.PUBLICACION SET COD_PUBLICACION = " + publicacion + ", ID_USUARIO = " + idUs + ", COD_VISIBILIDAD = " + idVisibilidad + ", DESCRIPCION = '" + txtDescripcion.Text + "', STOCK = " + txtStock.Text + ", FECHA_VENCIMIENTO = '" + txtFechaVencimiento.Text + "', FECHA_INICIO = '" + Globales.fechaSistema + "', PRECIO = " + txtPrecio.Text + ", ID_ESTADO_PUBLICACION = " + idEstado + ", ID_TIPO_PUBLICACION = " + 1 + ", PREGUNTAS = '" + comboBoxPreguntas.Text + "' WHERE COD_PUBLICACION = " + publicacion + ""; new Query(actualizarPublicacion).Ejecutar(); } //Inserta Publicacion_Rubro for (int i = 0; i < listaRubros.Items.Count; i++) { string sql = ""; string unRubro = listaRubros.Items[i].ToString().Replace(']', ' ').Substring(listaRubros.Items[i].ToString().LastIndexOf(',') + 1).TrimEnd(); if (listaRubros.GetItemChecked(i)) { // insertar si no existe sql = " insert into JJRD.Publicacion_Rubro (COD_Rubro, COD_Publicacion)" + " select distinct " + unRubro + ", " + publicacion + " from JJRD.Publicacion" + " where " + unRubro + " not in ( select cod_Rubro from JJRD.Publicacion_Rubro where cod_Publicacion = " + publicacion + ")"; } else { // borrar el registro en caso que este desmarcado (no es necesario chequear si existe) sql = " delete from JJRD.PUBLICACION_RUBRO" + " where COD_PUBLICACION = " + publicacion + " and cod_rubro = " + unRubro; } Query qry = new Query(); qry.pComando = sql; qry.Ejecutar(); } MessageBox.Show("Publicacion Editada Correctamente", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information); frmPrincipal publicaciones = new frmPrincipal(); this.Hide(); publicaciones.ShowDialog(); publicaciones = (frmPrincipal)this.ActiveMdiChild; } else { if (comboBoxVisibilidad.Text == "Gratis" && comboBoxEstado.Text == "Publicada") { //insertar en tabla usuarios contador publicacion gratis string publicacionesGratisUsuario = "SELECT PUBLICACIONES_GRATIS FROM JJRD.USUARIOS WHERE ID_USUARIO =" + idUs; Query qry4 = new Query(publicacionesGratisUsuario); int cantidadPublicacionesGratis = (int)qry4.ObtenerUnicoCampo(); if (cantidadPublicacionesGratis >= 3) { //Mensaje de Error, usted ya tiene 3 publicaciones gratis MessageBox.Show("Usted ya tiene 3 Publicaciones Gratis", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information); //Volver a llenar el formulario FrmEditarPublicacion volverAlForm = new FrmEditarPublicacion(); this.Hide(); volverAlForm.ShowDialog(); volverAlForm = (FrmEditarPublicacion)this.ActiveMdiChild; } else { //Incrementar y generar publicaciones //incrementa publicaciones gratis cantidadPublicacionesGratis = cantidadPublicacionesGratis + 1; string actualizar = "UPDATE JJRD.USUARIOS SET PUBLICACIONES_GRATIS = " + cantidadPublicacionesGratis + " WHERE ID_USUARIO = " + idUs + ""; new Query(actualizar).Ejecutar(); //actualiza publicacion string actualizarPublicacion = "UPDATE JJRD.PUBLICACION SET COD_PUBLICACION = " + publicacion + ", ID_USUARIO = " + idUs + ", COD_VISIBILIDAD = " + idVisibilidad + ", DESCRIPCION = '" + txtDescripcion.Text + "', STOCK = " + txtStock.Text + ", FECHA_VENCIMIENTO = '" + txtFechaVencimiento.Text + "', FECHA_INICIO = '" + Globales.fechaSistema + "', PRECIO = " + txtPrecio.Text + ", ID_ESTADO_PUBLICACION = " + idEstado + ", ID_TIPO_PUBLICACION = " + 2 + ", PREGUNTAS = '" + comboBoxPreguntas.Text + "' WHERE COD_PUBLICACION = " + publicacion + ""; new Query(actualizarPublicacion).Ejecutar(); } } else { //actualiza comun string actualizarPublicacion = "UPDATE JJRD.PUBLICACION SET COD_PUBLICACION = " + publicacion + ", ID_USUARIO = " + idUs + ", COD_VISIBILIDAD = " + idVisibilidad + ", DESCRIPCION = '" + txtDescripcion.Text + "', STOCK = " + txtStock.Text + ", FECHA_VENCIMIENTO = '" + txtFechaVencimiento.Text + "', FECHA_INICIO = '" + Globales.fechaSistema + "', PRECIO = " + txtPrecio.Text + ", ID_ESTADO_PUBLICACION = " + idEstado + ", ID_TIPO_PUBLICACION = " + 2 + ", PREGUNTAS = '" + comboBoxPreguntas.Text + "' WHERE COD_PUBLICACION = " + publicacion + ""; new Query(actualizarPublicacion).Ejecutar(); } //Inserta Publicacion_Rubro for (int i = 0; i < listaRubros.Items.Count; i++) { string sql = ""; string unRubro = listaRubros.Items[i].ToString().Replace(']', ' ').Substring(listaRubros.Items[i].ToString().LastIndexOf(',') + 1).TrimEnd(); if (listaRubros.GetItemChecked(i)) { // insertar si no existe sql = " insert into JJRD.Publicacion_Rubro (COD_Rubro, COD_Publicacion)" + " select distinct " + unRubro + ", " + publicacion + " from JJRD.Publicacion" + " where " + unRubro + " not in ( select cod_Rubro from JJRD.Publicacion_Rubro where cod_Publicacion = " + publicacion + ")"; } else { // borrar el registro en caso que este desmarcado (no es necesario chequear si existe) sql = " delete from JJRD.PUBLICACION_RUBRO" + " where COD_PUBLICACION = " + publicacion + " and cod_rubro = " + unRubro; } Query qry = new Query(); qry.pComando = sql; qry.Ejecutar(); } MessageBox.Show("Publicacion Editada Correctamente", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information); frmPrincipal publicaciones = new frmPrincipal(); this.Hide(); publicaciones.ShowDialog(); publicaciones = (frmPrincipal)this.ActiveMdiChild; } } else { // No se pueden ingresar campos vacios MessageBox.Show("No se pueden ingresar campos vacios", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void bnEditarPublicacion_Click(object sender, EventArgs e) { FrmEditarPublicacion editar = new FrmEditarPublicacion(); this.Hide(); editar.ShowDialog(); editar = (FrmEditarPublicacion)this.ActiveMdiChild; }