private void btnGenerarOferta_Click(object sender, RoutedEventArgs e) { if (validarCampos()) { try { string descripcion = tbxDescripcion.Text.ToString(); string condiciones = tbxCondiciones.Text.ToString(); Rubro rubro = (Rubro)camposOfertas.cbxRubro.SelectionBoxItem; Local local = (Local)camposOfertas.cbxLocal.SelectionBoxItem; Estado estado = (Estado)camposOfertas.cbxEstado.SelectionBoxItem; DateTime fechaFinalizacion = (DateTime)camposOfertas.dpFechaFinalizacion.SelectedDate; DateTime fechaPublicacion = (DateTime)camposOfertas.dpFechaPublicacion.SelectedDate; String titulo = tbxTitulo.Text.Trim(); int codigoOferta = int.Parse(camposOfertas.txtCodigoOferta.Text.Trim()); int precio = int.Parse(camposOfertas.txtPrecio.Text.Trim()); int isVisible = 1; int isDisponible = rbSi.IsChecked == true ? 1 : 0; Oferta ofertaOut = ofertaNeg.RegistrarOferta(descripcion, condiciones, rubro, local, estado, fechaFinalizacion, fechaPublicacion, titulo, codigoOferta, precio, isVisible, isDisponible); if (ofertaOut != null) { detalleOfertaNeg.AsignarOfertaADetalles(ofertaOut); Boolean res = detalleOfertaNeg.RegistrarDetalle(detalleOfertaNeg.DetalleOfertasList); String rutaDirectorioOferta = "D:/MisOfertas/Ofertas/Oferta_" + ofertaOut.IdOferta + "_" + ofertaOut.CodigoOferta; List <ImagenOferta> listaImagenesOferta = new List <ImagenOferta>(); if (!Directory.Exists(rutaDirectorioOferta)) { Directory.CreateDirectory(rutaDirectorioOferta); } int contImagenes = 1; foreach (object imagenOferta in listaImagenes) { String extension = (String)imagenOferta.GetType().GetProperty("Extension").GetValue(imagenOferta, null); BitmapImage bitImagen = (BitmapImage)imagenOferta.GetType().GetProperty("Imagen").GetValue(imagenOferta, null); Bitmap img = BitmapImage2Bitmap(bitImagen); String rutaImagenOferta = rutaDirectorioOferta + "/Img_" + contImagenes + extension; img.Save(rutaImagenOferta); int is_principal = (contImagenes == 1) ? 1 : 0; listaImagenesOferta.Add(new ImagenOferta(rutaImagenOferta, is_principal, ofertaOut)); contImagenes += 1; } Boolean resImagenes = imagenesOfertaNeg.registrarImagenesOferta(listaImagenesOferta); if (res) { tbxDescripcion.Text = ""; tbxCondiciones.Text = ""; camposOfertas.cbxRubro.SelectedIndex = 0; camposOfertas.cbxLocal.SelectedIndex = 0; camposOfertas.cbxEstado.SelectedIndex = 0; setDatePickers(); tbxTitulo.Text = ""; cbxProductos.SelectedIndex = 0; txtCantidadMaxima.Text = ""; txtCantidadMinima.Text = ""; System.Windows.MessageBox.Show("Registro Exitoso", "Registro de Oferta"); } } } catch (Exception ex) { System.Windows.MessageBox.Show("Error: " + ex.Message, "Registro de Oferta"); } } else { System.Windows.MessageBox.Show("Para crear una oferta se requiere ingresar todos los datos requeridos", "Mensaje de aviso"); } }
private void Button_Click(object sender, RoutedEventArgs e) { if (validarDiponibilidad()) //validarDiponibilidad() { System.Windows.Forms.MessageBox.Show("No es posible realizar modificaciones a este registro\n La oferta se encuentra en curso hasta: " + ofertaNeg.Oferta.FechaFinalizacion.ToShortDateString(), "Aviso de modificacion de ofertas"); } else { if (camposOfertas.dpFechaFinalizacion.SelectedDate < ofertaNeg.Oferta.FechaFinalizacion) //camposOfertas.dpFechaFinalizacion.SelectedDate < ofertaNeg.Oferta.FechaFinalizacion { System.Windows.Forms.MessageBox.Show("No se permite \n adelantar la finalizacion", "Modificar Oferta"); } else { if (listaImagenes.Count <= 0) { System.Windows.Forms.MessageBox.Show("Se requiere una imagen como minimo para ser asociada a esta oferta", "Modificar Oferta"); } else { String descripcion = txtDescripcion.Text.ToString(); String condiciones = txtCondiciones.Text.ToString(); Rubro rubro = (Rubro)camposOfertas.cbxRubro.SelectionBoxItem; Local local = (Local)camposOfertas.cbxLocal.SelectionBoxItem; Estado estado = (Estado)camposOfertas.cbxEstado.SelectionBoxItem; DateTime fechaFinalizacion = (DateTime)camposOfertas.dpFechaFinalizacion.SelectedDate; DateTime fechaPublicacion = (DateTime)camposOfertas.dpFechaPublicacion.SelectedDate; String titulo = txtTitulo.Text.Trim(); int codigoOferta = int.Parse(camposOfertas.txtCodigoOferta.Text.Trim()); int precio = int.Parse(camposOfertas.txtPrecio.Text.Trim()); int isDisponible = rbSi.IsChecked == true ? 1 : 0; Oferta ofertaOut = ofertaNeg.ModificarOferta(descripcion, condiciones, rubro, local, estado, fechaFinalizacion, fechaPublicacion, titulo, codigoOferta, precio, isDisponible); if (ofertaOut != null) { if (listaImagenes.Count > 0) { if (imagenesOfertaNeg.eliminarImagenesOfertaPorOferta(ofertaOut)) { dtImagenesOfertaModificar.ItemsSource = null; dtImagenesOfertaModificar.Items.Clear(); dtImagenesOfertaModificar.Items.Refresh(); String rutaDirectorioOferta = "D:/MisOfertas/Ofertas/Oferta_" + ofertaOut.IdOferta + "_" + ofertaOut.CodigoOferta; System.IO.DirectoryInfo directorioOferta = new DirectoryInfo(rutaDirectorioOferta); if (!Directory.Exists(rutaDirectorioOferta)) { Directory.CreateDirectory(rutaDirectorioOferta); } foreach (FileInfo file in directorioOferta.GetFiles()) { file.Delete(); } List <ImagenOferta> listaImagenesOferta = new List <ImagenOferta>(); int contImagenes = 1; foreach (object imagenOferta in listaImagenes) { String extension = (String)imagenOferta.GetType().GetProperty("Extension").GetValue(imagenOferta, null); BitmapImage bitImagen = new BitmapImage(); bitImagen.BeginInit(); bitImagen.CacheOption = BitmapCacheOption.OnLoad; //(BitmapImage)imagenOferta.GetType().GetProperty("Imagen").GetValue(imagenOferta, null); bitImagen.UriSource = new Uri((String)imagenOferta.GetType().GetProperty("Ruta").GetValue(imagenOferta, null)); bitImagen.EndInit(); Bitmap img = BitmapImage2Bitmap(bitImagen); String rutaImagenOferta = rutaDirectorioOferta + "/Img_" + contImagenes + extension; if (File.Exists(rutaImagenOferta)) { File.Delete(rutaImagenOferta); } img.Save(rutaImagenOferta); int is_principal = (contImagenes == 1) ? 1 : 0; listaImagenesOferta.Add(new ImagenOferta(rutaImagenOferta, is_principal, ofertaOut)); contImagenes += 1; } imagenesOfertaNeg.registrarImagenesOferta(listaImagenesOferta); } } System.Windows.Forms.MessageBox.Show("Oferta modificada exitosamente", "Modificacion de registro - Ofertas"); cargarDtDetalle(); cargarDtImagenesOferta(); } else { System.Windows.Forms.MessageBox.Show("Se ha generado un inconveniente al momento de modificar la oferta \n Intente nuevamente", "Modificacion de registro - Ofertas"); } } } } }