Beispiel #1
0
        private async void BtnModificarContrato_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (InvalidEntry())
                {
                    await MetroDialogue("Modificar contrato",
                                        "Ha ocurrido un error validando los datos numéricos");

                    return;
                }
                await InvalidDate();

                if (invalidDate)
                {
                    return;
                }

                Contrato contrato = new Contrato()
                {
                    Numero             = lblNumContrato.Content.ToString(),
                    Observaciones      = txtObservaciones.Text,
                    FechaHoraInicio    = (DateTime)dpFechaInicio.SelectedDateTime,
                    FechaHoraTermino   = (DateTime)dpFechaTermino.SelectedDateTime,
                    Asistentes         = int.Parse(txtCantAsist.Text),
                    PersonalAdicional  = int.Parse(txtCantPersonal.Text),
                    Realizado          = chkRealizado.IsChecked.Value,
                    ValorTotalContrato = double.Parse(lblMonto.Content.ToString()),
                    ModalidadServicio  = new ModalidadServicio()
                    {
                        IdModalidad = cboModalidad.SelectedValue.ToString(),
                        TipoEvento  = new TipoEvento()
                        {
                            IdTipoEvento = int.Parse(cboTipoEvento.SelectedValue.ToString())
                        }
                    }
                };

                if (contrato.Update(contrato))
                {
                    // SE ACTUALIZA LA TABLA CORRESPONDIENTE AL CONTRATO
                    if (contrato.ModalidadServicio.TipoEvento.IdTipoEvento == 10)
                    {
                        CoffeeBreak coffeeBreak = new CoffeeBreak()
                        {
                            Contrato = new Contrato()
                            {
                                Numero = contrato.Numero
                            },
                            Vegetariana = chkVegetariana.IsChecked.Value
                        };
                        coffeeBreak.Update(coffeeBreak);
                    }

                    else if (contrato.ModalidadServicio.TipoEvento.IdTipoEvento == 20)
                    {
                        // SI NO HAY AMBIENTACION SELECCIONADA NO SE CREA EN LA TABLA
                        if (cboAmbientacion.SelectedIndex == -1)
                        {
                            Cocktail cocktail = new Cocktail()
                            {
                                Contrato = new Contrato()
                                {
                                    Numero = contrato.Numero,
                                },
                                MusicaAmbiental = chkMusica.IsChecked.Value,
                                MusicaCliente   = !(chkMusica.IsChecked.Value)
                            };
                            cocktail.Update(cocktail);
                        }

                        else
                        {
                            Cocktail cocktail = new Cocktail()
                            {
                                Contrato = new Contrato()
                                {
                                    Numero = contrato.Numero,
                                },
                                TipoAmbientacion = new TipoAmbientacion()
                                {
                                    Id = int.Parse(cboAmbientacion.SelectedValue.ToString())
                                },
                                MusicaAmbiental = chkMusica.IsChecked.Value,
                                MusicaCliente   = !(chkMusica.IsChecked.Value)
                            };
                            cocktail.Update(cocktail);
                        }
                    }

                    else if (contrato.ModalidadServicio.TipoEvento.IdTipoEvento == 30)
                    {
                        Cenas c = new Cenas()
                        {
                            Contrato = new Contrato()
                            {
                                Numero = contrato.Numero
                            },
                            LocalOnBreak     = LocalOnBreak(),
                            OtroLocalOnBreak = ArrendarLocal(),
                            MusicaAmbiental  = chkMusica.IsChecked.Value,
                            ValorArriendo    = double.Parse(txtMontoArriendo.Text),
                            TipoAmbientacion = new TipoAmbientacion()
                            {
                                Id = int.Parse(cboAmbientacion.SelectedValue.ToString())
                            }
                        };
                        c.Update(c);
                    }

                    await MetroDialogue("Modificar contrato",
                                        "Contrato modificado correctamente");

                    // SI SE FINALIZA EL CONTRATO SE BLOQUEAN LAS EDICIONES
                    if (contrato.Realizado)
                    {
                        BlockEdits(true);
                    }
                }

                else
                {
                    await MetroDialogue("Modificar contrato",
                                        "Contrato no encontrado");
                }
            }
            catch (Exception x)
            {
                await MetroDialogue("Modificar contrato", x.Message);;
            }
        }
        private async void btnUpdate_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Contrato contrato = new Contrato();
                contrato.Numero = txtNumero.Text;
                bool respCliente = new Cliente()
                {
                    RutCliente = txtRut.Text
                }.Read();
                contrato.RutCliente = txtRut.Text;
                if (respCliente)
                {
                    contrato.RutCliente = txtRut.Text;
                }
                else
                {
                    throw new Exception("Rut del cliente no existe");
                }
                if (ctrFechaHoraInicio.RecuperarFechaHora() > ctrFechaHoraFin.RecuperarFechaHora())
                {
                    throw new Exception("La FechaHoraInicio no puede ser mayor a la FechaHoraTermino");
                }
                contrato.Creacion         = DateTime.ParseExact(txtFechaCreacion.Text, "dd-MM-yyyy HH:mm", null);
                contrato.Termino          = DateTime.ParseExact(txtFechaTermino.Text, "dd-MM-yyyy HH:mm", null);
                contrato.FechaHoraInicio  = ctrFechaHoraInicio.RecuperarFechaHora();
                contrato.FechaHoraTermino = ctrFechaHoraFin.RecuperarFechaHora();

                if (cboTipoEvento.SelectedIndex >= 0) //necesario
                {
                    contrato.IdTipoEvento = ((TipoEvento)cboTipoEvento.SelectedItem).IdTipoEvento;
                }
                else
                {
                    throw new Exception("Falta el campo Tipo Evento");
                }
                if (cboModalidadServicio.SelectedIndex >= 0) //necesario
                {
                    contrato.IdModalidad = ((ModalidadServicio)cboModalidadServicio.SelectedItem).IdModalidad;
                }
                else
                {
                    throw new Exception("Falta el campo Modalidad Servicio");
                }
                contrato.Asistentes        = int.Parse(txtAsistentes.Text);
                contrato.PersonalAdicional = int.Parse(txtPersonalAdicional.Text);
                if (txtVigencia.Text.Equals("Si"))
                {
                    contrato.Realizado = true;
                }
                else
                {
                    contrato.Realizado = false;
                }

                contrato.Observaciones = txtObservaciones.Text;
                Evento evento = crearObjetoEvento();
                contrato.ValorTotalContrato = evento.ValorBase() + evento.RecargoAsistentes() + evento.RecargoPersonalAdicional() + evento.RecargoExtras();


                if (contrato.IdTipoEvento == 10)
                {
                    CoffeeBreak coff = ((CoffeeBreak)evento);
                    coff.Update();
                }
                else if (contrato.IdTipoEvento == 20)
                {
                    Cocktail c**k = ((Cocktail)evento);
                    c**k.Update();
                }
                else if (contrato.IdTipoEvento == 30)
                {
                    Cenas cena = ((Cenas)evento);
                    if (((Cenas)evento).IdTipoAmbientacion == 30)
                    {
                        throw new Exception("El campo 'Tipo De Ambientacion' es obligatorio");
                    }
                    cena.Update();
                }

                bool resp = contrato.Update();

                await this.ShowMessageAsync("Actualizar:", resp? "Contrato Actualizo" : "Contrato NO Actualizo");

                if (txtVigencia.Text.Equals("No"))
                {
                    await this.ShowMessageAsync("VIGENCIA TERMINADA:", "No se puede ACTUALIZAR un contrato con su vigencia terminada");
                }
                if (resp)
                {
                    limpiar();
                }
            }
            catch (Exception ex)
            {
                await this.ShowMessageAsync("ERROR:", ex.Message);

                Logger.mensaje(ex.Message);
            }
        }
Beispiel #3
0
        private async void BtnModificar_Click(object sender, RoutedEventArgs e)
        {
            if (Check())
            {
                if (await Confirmacion("Modificar"))
                {
                    Contrato con = new Contrato
                    {
                        Numero             = txtNumero.Text,
                        IdModalidad        = cbModalidad.SelectedValue.ToString(),
                        IdTipoEvento       = (int)cbTipoEvento.SelectedValue,
                        FechaHoraInicio    = (DateTime)dtpFechaTermino.SelectedDate,
                        FechaHoraTermino   = (DateTime)dtpFechaTermino.SelectedDate,
                        Asistentes         = Convert.ToInt32(txtAsistentes.Text),
                        PersonalAdicional  = Convert.ToInt32(txtPersonal.Text),
                        ValorTotalContrato = double.Parse(txtValor.Text),
                        Observaciones      = txtObservaciones.Text
                    };
                    if (con.Read())
                    {
                        if (con.Termino == con.Creacion)
                        {
                            switch (con.IdTipoEvento)
                            {
                            case 10:
                                CoffeeBreak cb = new CoffeeBreak();
                                cb.Numero      = con.Numero;
                                cb.Vegetariana = (bool)chkVegetariana.IsChecked;
                                cb.Update();
                                break;

                            case 20:
                                Cocktail ct = new Cocktail();
                                ct.Numero = con.Numero;
                                if (rbPersonalizada.IsChecked == true)
                                {
                                    ct.IdTipoAmbientacion = 20;
                                }
                                else if (rbBasica.IsChecked == true)
                                {
                                    ct.IdTipoAmbientacion = 10;
                                }
                                else
                                {
                                    ct.Ambientacion = false;
                                }
                                ct.MusicaAmbiental = (bool)chkMusica.IsChecked;
                                ct.Update();
                                break;

                            case 30:
                                Cenas ce = new Cenas();
                                ce.Numero = con.Numero;
                                if (rbPersonalizada.IsChecked == true)
                                {
                                    ce.IdTipoAmbientacion = 20;
                                }
                                else
                                {
                                    ce.IdTipoAmbientacion = 10;
                                }
                                ce.MusicaAmbiental = (bool)chkMusica.IsChecked;
                                if (rbOnBreak.IsChecked == true)
                                {
                                    ce.Local = (bool)rbOnBreak.IsChecked;
                                }
                                else if (rbOtro.IsChecked == true)
                                {
                                    ce.OtroLocal     = (bool)rbOtro.IsChecked;
                                    ce.ValorArriendo = Convert.ToInt16(txtArriendo.Text);
                                }
                                ce.Update();
                                break;

                            default:
                                break;
                            }
                            if (con.Update())
                            {
                                LimpiarVentana();
                                MessageDialogResult result =
                                    await this.ShowMessageAsync("Confirmación", "Contrato actualizado correctamente.", MessageDialogStyle.Affirmative);
                            }
                            else
                            {
                                MessageDialogResult result =
                                    await this.ShowMessageAsync("Error", "No se pudo actualizar, llene todos los datos correctamente.", MessageDialogStyle.Affirmative);
                            }
                        }
                        else
                        {
                            MessageDialogResult result =
                                await this.ShowMessageAsync("Error", "No se pudo actualizar, este contrato ya esta terminado.", MessageDialogStyle.Affirmative);
                        }
                    }
                    else
                    {
                        MessageDialogResult result =
                            await this.ShowMessageAsync("Error", "Contrato no existe.", MessageDialogStyle.Affirmative);
                    }
                }
            }
        }