private void btnModificar_Click(object sender, RoutedEventArgs e) { if (!txtNombre.PlaceHolder && !txtDescripcion.PlaceHolder && cbTipo.SelectedIndex != 0 && (!txtPorcentaje.PlaceHolder || !txtCantidad.PlaceHolder || !txtPrecioFijo.PlaceHolder || (!txtPaga.PlaceHolder && !txtCompra.PlaceHolder))) { if (validacionCampos()) { TDAService.TDAServiceClient tda = new TDAService.TDAServiceClient(); Promociones p = new Promociones(); p.ID = lID; p.Nombre = txtNombre.Text; p.Descripcion = txtDescripcion.Text; ComboBoxItem cbi = (ComboBoxItem)cbTipo.Items[cbTipo.SelectedIndex]; p.Tipo = Convert.ToInt32(cbi.Uid); switch (p.Tipo) { case 1: { p.Valor = Convert.ToDecimal(txtPorcentaje.Text); break; } case 2: { p.Valor = Convert.ToDecimal(txtCantidad.Text); break; } case 3: { p.Valor = Convert.ToDecimal(txtPrecioFijo.Text); break; } case 4: { p.Comprar = Convert.ToInt32(txtCompra.Text); p.Pagar = Convert.ToInt32(txtPaga.Text); break; } } if (rbNo.IsChecked == true) { p.Activo = true; p.FechaInicio = null; p.FechaFin = null; } else if (rbSi.IsChecked == true) { p.Activo = true; p.FechaInicio = Convert.ToDateTime(dpDe.Text); p.FechaFin = Convert.ToDateTime(dpHasta.Text); } if (lstProductoA.Count > 0) { p.ParaProducto = true; } else { p.ParaProducto = false; } if (lstPaqueteA.Count > 0) { p.ParaPaquete = true; } else { p.ParaPaquete = false; } if (lstTPA.Count > 0) { p.ParaTipoProducto = true; } else { p.ParaTipoProducto = false; } if (lstGCA.Count > 0) { p.ParaGrupoCliente = true; } else { p.ParaGrupoCliente = false; } tda.UpdatePromocion(p); foreach (PromocionDias pd in tda.BuscarPromocionDiaID(p.ID)) { tda.DeletePromocionDia(pd); } foreach (PromocionDias pd in Llenado.guardarDiasSeleccionadosPromocion(p.ID, cbLunes, cbMartes, cbMiercoles, cbJueves, cbViernes, cbSabado, cbDomingo)) { tda.InsertPromocionDia(pd); } foreach (PromocionProductos pp in tda.BuscarPromocionProductoID(p.ID)) { tda.DeletePromocionProducto(pp); } foreach (Productos pa in lstProductoA) { PromocionProductos pp = new PromocionProductos(); pp.Promocion = p.ID; pp.Producto = pa.ID; tda.InsertPromocionProducto(pp); } foreach (PromocionPaquetes pp in tda.BuscarPromocionPaqueteID(p.ID)) { tda.DeletePromocionPaquete(pp); } foreach (Paquetes pa in lstPaqueteA) { PromocionPaquetes pp = new PromocionPaquetes(); pp.Promocion = p.ID; pp.Paquete = pa.ID; tda.InsertPromocionPaquete(pp); } foreach (PromocionTipoProductos tp in tda.BuscarPromocionTipoProductoID(p.ID)) { tda.DeletePromocionTipoProducto(tp); } foreach (TipoProductos tp in lstTPA) { PromocionTipoProductos ptp = new PromocionTipoProductos(); ptp.Promocion = p.ID; ptp.TipoProducto = tp.ID; tda.InsertPromocionTipoProducto(ptp); } foreach (PromocionGrupoClientes pgc in tda.BuscarPromocionGrupoClienteID(p.ID)) { tda.DeletePromocionGrupoCliente(pgc); } foreach (GrupoClientes pa in lstGCA) { PromocionGrupoClientes pgc = new PromocionGrupoClientes(); pgc.Promocion = p.ID; pgc.GrupoCliente = pa.ID; tda.InsertPromocionGrupoCliente(pgc); } tda.Close(); this.Close(); } } else { MessageBox.Show("Favor de llenar los campos."); } }
private void Window_Loaded(object sender, RoutedEventArgs e) { Llenado.cargarCBTipoPromocion(cbTipo); cargarGridProductosT(new Productos()); if (lstProductoT != null ) { btnPAdd.Visibility = Visibility.Visible; btnPRemove.Visibility = Visibility.Visible; } cargarGridPaquetesT(new Paquetes()); if (lstPaqueteT != null) { btnPaqAdd.Visibility = Visibility.Visible; btnPaqRemove.Visibility = Visibility.Visible; } cargarGridTipoProductosT(new TipoProductos()); if (lstTPT != null) { btnTPAdd.Visibility = Visibility.Visible; btnTPRemove.Visibility = Visibility.Visible; } cargarGridGrupoClientesT(new GrupoClientes()); if (lstGCT != null) { btnGCAdd.Visibility = Visibility.Visible; btnGCRemove.Visibility = Visibility.Visible; } if (lID == 0) { btnRegistrar.Visibility = Visibility.Visible; } else if (lID != 0) { btnModificar.Visibility = Visibility.Visible; TDAService.TDAServiceClient tda = new TDAService.TDAServiceClient(); Promociones p = tda.BuscarPromocionID(lID).First(); List<PromocionDias> lstPD = tda.BuscarPromocionDiaID(lID).ToList(); Llenado.mostrarDiasSeleccionados(lstPD, cbLunes, cbMartes, cbMiercoles, cbJueves, cbViernes, cbSabado, cbDomingo); List<PromocionProductos> lstPP = tda.BuscarPromocionProductoID(lID).ToList(); foreach (PromocionProductos pp in lstPP) { Productos pr = tda.BuscarProductoID(pp.Producto).First(); lstProductoA.Add(pr); } List<PromocionPaquetes> lstPPaq = tda.BuscarPromocionPaqueteID(lID).ToList(); foreach (PromocionPaquetes ppaq in lstPPaq) { Paquetes paq = tda.BuscarPaqueteID(ppaq.Paquete).First(); lstPaqueteA.Add(paq); } List<PromocionTipoProductos> lstTP = tda.BuscarPromocionTipoProductoID(lID).ToList(); foreach (PromocionTipoProductos ptp in lstTP) { TipoProductos tp = tda.BuscarTipoProductoID(Convert.ToInt64(ptp.TipoProducto)).First(); lstTPA.Add(tp); } List<PromocionGrupoClientes> lstPGC = tda.BuscarPromocionGrupoClienteID(lID).ToList(); foreach (PromocionGrupoClientes pgc in lstPGC) { GrupoClientes gc = tda.BuscarGrupoClienteID(Convert.ToInt64(pgc.GrupoCliente)).First(); lstGCA.Add(gc); } tda.Close(); txtNombre.Text = p.Nombre; txtDescripcion.Text = p.Descripcion; Llenado.seleccionarComboBoxUid(p.Tipo.ToString(), cbTipo); switch (p.Tipo) { case 1: { txtPorcentaje.Text = p.Valor.ToString(); break; } case 2: { txtCantidad.Text = p.Valor.ToString(); break; } case 3: { txtPrecioFijo.Text = p.Valor.ToString(); break; } case 4: { txtCompra.Text = p.Comprar.ToString(); txtPaga.Text = p.Pagar.ToString(); break; } } if (p.Activo == true && p.FechaInicio == null && p.FechaFin == null) { rbNo.IsChecked = true; } else if (p.Activo == true && p.FechaInicio != null && p.FechaFin != null) { rbSi.IsChecked = true; dpDe.SelectedDate = p.FechaInicio; dpHasta.SelectedDate = p.FechaFin; } lstProductoT = Llenado.compararTabla(lstProductoT, lstProductoA); lstPaqueteT = Llenado.compararTabla(lstPaqueteT, lstPaqueteA); lstTPT = Llenado.compararTabla(lstTPT, lstTPA); lstGCT = Llenado.compararTabla(lstGCT, lstGCA); cargarGridProductos(); cargarGridPaquetes(); cargarGridTipoProductos(); cargarGridGrupoClientes(); } }