Esempio n. 1
0
        }// FIN btnEnviar_Click()

        /*** MODIFICACIÓN DE CRUCERO EXISTENTE ***/
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            string identificadorCruceroAnterior = identificadorCrucero;

            // 1. Obtenemos los atributos del crucero
            this.cargarCampos();

            // 2. Construimos el objeto crucero
            Crucero crucero;

            try
            {
                crucero = new CruceroBuilder()
                          .setModelo(modelo)
                          .setMarca(marca)
                          .setIdentificador(identificadorA, identificadorB)
                          .setTipoServicio(this.obtenerTipoServicio())
                          .buildCrucero();
            }
            catch (CamposObligatoriosVaciosException ex)
            {
                ex.mensajeError();
                return;
            }

            // 3. Validamos que se haya ingresado al menos una cabina
            int cantidadCabinas = calcularCantidadCabinas();

            try
            {
                Cabina.validarCantidadCabinas(cantidadCabinas);
            }
            catch (CruceroSinCabinasException ex)
            {
                ex.mensajeError();
                return;
            }

            // 4. Guardamos las cabinas ingresadas en el crucero
            guardarCabinas(crucero, cantidadCabinas);

            // 5. Validamos que no haya cabinas repetidas (Numero-Piso debería ser único por crucero)
            if (crucero.hayCabinasRepetidas())
            {
                MensajeBox.error("Cabinas repetidas: Hay cabinas con igual número y piso. Revise los datos e intente nuevamente.");
                return;
            }

            // 6. En este punto ya tenemos un crucero correctamente construido y listo para ser ACTUALIZADO (incluyendo sus cabinas)
            try
            {
                crucero.actualizar(identificadorCruceroAnterior);
                MensajeBox.info("El crucero se actualizo correctamente.");
            }
            catch (ActualizarCruceroException ex)
            {
                ex.mensajeError();
                return;
            }
        } // FIN btnGuardar_Click()
        private void button3_Click(object sender, EventArgs e)
        {
            Boolean valido = true;

            if (String.IsNullOrWhiteSpace(piso.Text) || !checkDecimal18(piso.Text))
            {
                valido = false;
                MessageBox.Show("El piso no es valido");
            }
            if (String.IsNullOrWhiteSpace(numero.Text) || !checkDecimal18(numero.Text))
            {
                valido = false;
                MessageBox.Show("El numero no es valido");
            }

            if (valido)
            {
                Decimal    pisoValue = Convert.ToDecimal(piso.Text), numeroValue = Convert.ToDecimal(numero.Text);
                TipoCabina tipo = (TipoCabina)tipoCabina.SelectedItem;
                if (cabina == null)
                {
                    cabina      = new Cabina(numeroValue, tipo.codTipo, pisoValue);
                    cabina.tipo = (TipoCabina)tipoCabina.SelectedItem;
                }
                else
                {
                    cabina.piso    = pisoValue;
                    cabina.numero  = numeroValue;
                    cabina.codTipo = tipo.codTipo;
                    cabina.tipo    = tipo;
                }
                this.DialogResult = DialogResult.OK;
            }
        }
Esempio n. 3
0
        private void btnAgregarCabina_Click(object sender, EventArgs e)
        {
            var numero      = Decimal.Parse(txtNumero.Text);
            var piso        = decimal.Parse(txtPiso.Text);
            var nuevaCabina = new Cabina(numero, piso, false, (Model.TipoCabina)cbTipos.SelectedItem);

            _altaCrucero.AgregarCabina(nuevaCabina);
        }
Esempio n. 4
0
 private void guardarCabinas(Crucero crucero, int cantidadCabinas)
 {
     for (int i = 0; i < cantidadCabinas; i++)
     {
         Cabina unaCabina = new Cabina();
         unaCabina.setNumero(Convert.ToInt32(dgvCabinas.Rows[i].Cells[0].Value))
         .setPiso(Convert.ToInt32(dgvCabinas.Rows[i].Cells[1].Value))
         .setTipo(Cabina.tipoCabinaPorDefecto(Convert.ToString(dgvCabinas.Rows[i].Cells[2].Value)));
         crucero.agregarCabina(unaCabina);
     }
 }
Esempio n. 5
0
        private void generarCabinasIndividuales(ConjuntoCabinas cabinas)
        {
            int i;

            if (cabinasIndividuales.Any(cabina => cabina.piso == cabinas.piso))
            {
                i = cabinasIndividuales.FindAll(cabina => cabina.piso == cabinas.piso).Max(cabina => cabina.numero) + 1;
            }
            else
            {
                i = 0;
            }
            for (int j = 0; j < cabinas.cantidad; j++)
            {
                Cabina nuevaCabina = new Cabina();
                nuevaCabina.tipo    = cabinas.tipo;
                nuevaCabina.numero  = i;
                nuevaCabina.piso    = cabinas.piso;
                nuevaCabina.recargo = cabinas.recargo;
                cabinasIndividuales.Add(nuevaCabina);
                i++;
            }
        }
Esempio n. 6
0
        /*** ALTA DE NUEVO CRUCERO ***/

        private void btnAlta_Click(object sender, EventArgs e)
        {
            // 1. Obtenemos los atributos del crucero
            this.cargarCampos();
            DateTime fechaAlta = ArchivoConfig.obtenerFechaConfig();

            // 2. Construimos el objeto crucero
            Crucero crucero;

            try
            {
                crucero = new CruceroBuilder()
                          .setModelo(modelo)
                          .setMarca(marca)
                          .setIdentificador(identificadorA, identificadorB)
                          .setFechaAlta(fechaAlta)
                          .setTipoServicio(this.obtenerTipoServicio())
                          .buildCrucero();
            }
            catch (CamposObligatoriosVaciosException ex)
            {
                ex.mensajeError();
                return;
            }

            // 3. Validamos que el identificador del crucero esté disponible
            if (Crucero.identificadorDisponible(crucero.getIdentificador()).Equals(false))
            {
                MensajeBox.error("El identificador ingresado para el crucero ya se encuentra registrado.");
                return;
            }

            // 4. Validamos que se haya ingresado al menos una cabina
            int cantidadCabinas = calcularCantidadCabinas();

            try
            {
                Cabina.validarCantidadCabinas(cantidadCabinas);
            }
            catch (CruceroSinCabinasException ex)
            {
                ex.mensajeError();
                return;
            }

            // 5. Guardamos las cabinas ingresadas en el objeto crucero
            guardarCabinas(crucero, cantidadCabinas);

            // 6. Validamos que no haya cabinas repetidas (Numero-Piso debería ser único por crucero)
            if (crucero.hayCabinasRepetidas())
            {
                MensajeBox.error("Cabinas repetidas: Hay cabinas con igual número y piso. Revise los datos e intente nuevamente.");
                return;
            }

            // 7. En este punto ya tenemos un crucero correctamente construido y listo para ser INSERTADO (incluyendo sus cabinas)
            try
            {
                crucero.insertar();
                MensajeBox.info("El crucero se dió de alta correctamente.");
            }
            catch (InsertarCruceroException ex)
            {
                ex.mensajeError();
                return;
            }
        }// FIN btnEnviar_Click()
 public AltaCabina(Cabina cabina, Boolean paraReemplazar)
 {
     this.cabina         = cabina;
     this.paraReemplazar = paraReemplazar;
     InitializeComponent();
 }
 public void agregarCabina(Cabina cabina)
 {
     this.cabinas.Add(cabina);
 }