private void guardar_Click(object sender, EventArgs e)
        {
            Boolean valido = true;

            if (String.IsNullOrWhiteSpace(identificador.Text) || identificador.Text.Length > 50)
            {
                valido = false;
                MessageBox.Show("El identificador no es valido");
            }

            if (valido)
            {
                Marca                marcaValue      = (Marca)marca.SelectedItem;
                Modelo               modeloValue     = (Modelo)modelo.SelectedItem;
                Fabricante           fabricanteValue = (Fabricante)fabricante.SelectedItem;
                Servicio             servicioValue   = (Servicio)servicio.SelectedItem;
                BindingList <Cabina> cabs            = (BindingList <Cabina>)cabinas.DataSource;
                if (crucero == null || paraReemplazar)
                {
                    this.crucero = new SQL.SqlCruceros().crearCrucero(identificador.Text, servicioValue.cod, marcaValue.cod, fabricanteValue.cod, modeloValue.cod, getFechaAlta(), cabs);
                }
                else
                {
                    crucero = new Crucero(crucero.codCrucero, identificador.Text, this.getFechaAlta(), marcaValue.cod, modeloValue.cod, fabricanteValue.cod, servicioValue.cod);
                    new SQL.SqlCruceros().actualizarCrucero(crucero, cabs, cabinasBorradas);
                }
                this.DialogResult = DialogResult.OK;
            }
        }
예제 #2
0
        private void frmAltaCrucero_Load(object sender, EventArgs e)
        {
            debugger = new AbmRecorrido.Debugger();
            //debugger.Show();
            abm = new Crucero();
            DataTable dtMarcas = abm.mostrarMarcas();

            llenarCB(cBoxMarca, dtMarcas, "Marca");

            DataTable dtModelos = abm.mostrarModelos();

            llenarCB(cBoxModelo, dtModelos, "Modelo");
            cBoxMarca.Enabled  = false;
            cBoxModelo.Enabled = false;

            dateTimePicker1.Format       = DateTimePickerFormat.Custom;
            dateTimePicker1.CustomFormat = "dd-MM-yyyy hh:mm:ss";

            dtCabinas = abm.mostrarTipoCabina();

            foreach (DataRow row in dtCabinas.Rows)
            {
                AddItem(row["Cabina"].ToString());
            }
            superTabla.Enabled = false;
            llblAnterior.Hide();
            lblCodigoAlerta.Hide();

            cBoxMarca.DropDownStyle  = ComboBoxStyle.DropDownList;
            cBoxModelo.DropDownStyle = ComboBoxStyle.DropDownList;
        }
 public FormModificacion(Crucero crucero)
 {
     InitializeComponent();
     this.crucero                  = crucero;
     monthCalendar1.TodayDate      = ConfigurationUtils.Today();
     monthCalendar1.SelectionStart = ConfigurationUtils.Today();
 }
        private void delete_Click(object sender, EventArgs e)
        {
            Crucero cruise = getFormData();

            cruise.idCrucero = (int)this.unCrucero.Cells["idCrucero"].Value;
            dao.deleteCruise(cruise);
        }
 public frmCopiarCrucero(string codigo, Crucero abmCrucero, DateTime baja)
 {
     InitializeComponent();
     codigoViejo        = codigo;
     lblViejo.Text      = "Crucero a Reemplazar:" + codigo;
     btnAceptar.Enabled = false;
     abm       = abmCrucero;
     fechaBaja = baja;
 }
예제 #6
0
 private void CargarDatos(Crucero crucero)
 {
     textBoxId.Text               = crucero.Id.ToString();
     textBoxIdentificador.Text    = crucero.Identificador;
     comboBoxMarca.SelectedIndex  = crucero.Fabr_id - 1;
     textBoxModelo.Text           = crucero.Modelo;
     checkBoxInhabilitado.Checked = crucero.Inahbilitado;
     textBoxFechaAlta.Text        = crucero.FechaAlta;
 }
예제 #7
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);
     }
 }
예제 #8
0
        private Crucero cargarDatosCrucero()
        {
            Crucero crucero = new Crucero(
                Convert.ToInt32(tablaCruceros.SelectedCells[0].Value),
                tablaCruceros.SelectedCells[1].Value.ToString(),
                tablaCruceros.SelectedCells[2].Value.ToString(),
                Convert.ToInt32(tablaCruceros.SelectedCells[3].Value),
                Convert.ToBoolean(tablaCruceros.SelectedCells[4].Value),
                tablaCruceros.SelectedCells[5].Value.ToString());

            return(crucero);
        }
예제 #9
0
 public BajaCrucero(Crucero crucero)
 {
     InitializeComponent();
     fechaBaja.MinDate    = Program.ObtenerFechaActual();
     fechaRegreso.MinDate = fechaBaja.Value;
     this.crucero         = crucero;
     bajaPermanente       = new SqlCruceros().fechaDeBajaPermanente(crucero.codCrucero);
     if (bajaPermanente.HasValue)
     {
         fechaBaja.MaxDate    = bajaPermanente.Value;
         fechaRegreso.MaxDate = bajaPermanente.Value;
     }
 }
예제 #10
0
        public FormAlta(Crucero crucero)
        {
            InitializeComponent();
            this.crucero            = crucero;
            txt_cabinas.Text        = crucero.cruc_cantidad_cabinas.ToString();
            dgv_cabinas.DataSource  = cruceroDao.getCabinas(crucero);
            this.btn_guardar.Click -= this.btn_guardar_Click;
            this.btn_guardar.Click += (sender, e) =>
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("cabinas", System.Type.GetType("System.Int32"));
                dt.Columns.Add("piso", System.Type.GetType("System.Int32"));
                dt.Columns.Add("servicio", System.Type.GetType("System.String"));

                foreach (DataGridViewRow row in dgv_cabinas.Rows)
                {
                    DataRow drow = dt.NewRow();
                    drow["cabinas"]  = int.Parse(row.Cells["cabinas"].Value.ToString());
                    drow["piso"]     = int.Parse(row.Cells["piso"].Value.ToString());
                    drow["servicio"] = row.Cells["servicio"].Value.ToString();
                    dt.Rows.Add(drow);
                }
                try
                {
                    SqlCommand cmd = Database.createCommand("[MACACO_NOT_NULL].CreateCrucero");
                    cmd.Parameters.Add("@nombre", SqlDbType.NVarChar).Value      = crucero.cruc_nombre;
                    cmd.Parameters.Add("@modelo", SqlDbType.NVarChar).Value      = crucero.cruc_modelo;
                    cmd.Parameters.Add("@compania", SqlDbType.Int).Value         = crucero.cruc_compañia_id;
                    cmd.Parameters.Add("@cant_cabinas", SqlDbType.Int).Value     = crucero.cruc_cantidad_cabinas;
                    cmd.Parameters.Add("@fecha_alta", SqlDbType.DateTime2).Value = crucero.cruc_fecha_alta;
                    cmd.Parameters.Add("@cabinas", SqlDbType.Structured).Value   = dt;
                    Database.executeProcedure(cmd);

                    SqlCommand reemplazarCrucero = Database.createCommand("SELECT cruc_id FROM [MACACO_NOT_NULL].CRUCERO WHERE cruc_nombre = @nombre ");
                    reemplazarCrucero.Parameters.Add("@nombre", SqlDbType.Int).Value = crucero.cruc_nombre;
                    int cruceroDeReemplazo = Database.executeProcedure(reemplazarCrucero);

                    SqlCommand reemplazarCrucero2 = Database.createCommand("[MACACO_NOT_NULL].ReemplazarCrucero");
                    reemplazarCrucero2.Parameters.Add("@idCruceroInactivo", SqlDbType.Int).Value     = crucero.cruc_id;
                    reemplazarCrucero2.Parameters.Add("@idCruceroReemplazante", SqlDbType.Int).Value = cruceroDeReemplazo;
                    Database.executeProcedure(reemplazarCrucero2);
                    MessageBox.Show("Crucero dado de alta y reemplazado con exito", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            };
            monthCalendar1.TodayDate      = ConfigurationUtils.Today();
            monthCalendar1.SelectionStart = ConfigurationUtils.Today();
        }
        public frmPostergarViajes(string codigo, Crucero ABMcrucero, DateTime alta, DateTime baja)
        {
            InitializeComponent();
            abm            = ABMcrucero;
            crucero_codigo = codigo;
            fechaBaja      = baja;
            fechaAlta      = alta;
            this.Text      = "Postergar Viajes de:" + codigo;
            lblFecha.Text  = "A partir de:" + alta.ToString();
            int diasBaja = ((TimeSpan)(fechaAlta - fechaBaja)).Days;
            int ejemploCantidadDeDiasMovidos = 1 + diasBaja;

            lblInfoDiasCorridos.Text = "Por defecto se correrán " + diasBaja.ToString() + " dias los viajes.";
            label1.Text        = "El número que ingrese se sumara a estos dias.";
            label2.Text        = "Ejemplo: si ingresa 1 se correran " + ejemploCantidadDeDiasMovidos.ToString() + " dias los viajes";
            btnAceptar.Enabled = false;
        }
예제 #12
0
 public BajaEfectiva(Crucero unCrucero, bool vidaUtil)
 {
     InitializeComponent();
     this.crucero  = unCrucero;
     this.vidaUtil = vidaUtil;
     dao           = new CruceroDao();
     cDao          = new CompraDao();
     if (vidaUtil)
     {
         this.dtAlta.Visible      = false;
         this.labelAlta.Visible   = false;
         this.corrimiento.Visible = false;
     }
     else
     {
         this.replace.Visible = false;
     }
 }
 private void baja_Click(object sender, EventArgs e)
 {
     if (idCrucero != -1)
     {
         Crucero cruise = getFormData();
         cruise.idCrucero = idCrucero;
         if (dao.getEstado(idCrucero) == "A")
         {
             Baja ba = new Baja(cruise);
             ba.Show();
         }
         else
         {
             MessageBox.Show("El crucero ya se encuentra dado de baja");
         }
     }
     else
     {
         MessageBox.Show("Debe guardar los datos del crucero primero");
     }
 }
        private void updateCruise()
        {
            try
            {
                CheckEmptyFields();
                Crucero cruise = getFormData();
                cruise.idCrucero = (int)this.unCrucero.Cells["idCrucero"].Value;
                if (cruise.getIdentificador() != this.unCrucero.Cells["Identificador"].Value.ToString())
                {
                    if (this.dao.verifyCruiseExisted(cruise) != 0)
                    {
                        throw new Exception("El Crucero Ingresado ya existe");
                    }
                }
                this.dao.updateCruise(cruise);
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
            }
        }
 private void createCruise()
 {
     try
     {
         CheckEmptyFields();
         Crucero cruise = getFormData();
         if (this.dao.verifyCruiseExisted(cruise) != 0)
         {
             throw new Exception("El Crucero Ingresado ya existe");
         }
         this.dao.createCruise(cruise);
         this.idCrucero = this.dao.getIdCrucero(cruise);
         if (idViaje != -1)
         {
             dao.updateCruiseViaje(this.idCrucero, idViaje);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message.ToString());
     }
 }
예제 #16
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()
예제 #17
0
 public BajaCrucero(Crucero _crucero, ListadoBaja _padre)
 {
     datosCrucero = _crucero;
     padre        = _padre;
     InitializeComponent();
 }
예제 #18
0
 public Baja(Crucero unCrucero)
 {
     InitializeComponent();
     this.crucero = unCrucero;
 }
예제 #19
0
 public ModificacionCrucero(Crucero crucero)
 {
     InitializeComponent();
     CargarMarcas();
     CargarDatos(crucero);
 }
예제 #20
0
 public SeleccionReemplazante(Crucero crucero, DateTime fechaBaja)
 {
     InitializeComponent();
     this.crucero = crucero;
     this.fecha   = fechaBaja;
 }
 public ModificacionCrucero(Crucero crucero, Boolean paraReemplazar = false)
 {
     InitializeComponent();
     this.crucero        = crucero;
     this.paraReemplazar = paraReemplazar;
 }