예제 #1
0
        private void PanelVehiculos_OnBsPositionChanged(object sender, EventArgs e)
        {
            if (positionChanged != this.panelVehiculos.bs.Position)
            {
                DataTable dtVehiculos = (DataTable)sender;

                List <UserControl> controls = new List <UserControl>();

                foreach (DataRow row in dtVehiculos.Rows)
                {
                    EVehiculos eVehiculo = new EVehiculos(row);

                    ECronogramas eCronograma = new ECronogramas
                    {
                        EVehiculo         = eVehiculo,
                        Fecha_cronograma  = DateTime.Now,
                        Estado_cronograma = "ACTIVO",
                    };

                    VehiculoCronogramaSmall vehiculoCronogramaSmall = new VehiculoCronogramaSmall
                    {
                        ECronograma = eCronograma,
                    };

                    vehiculoCronogramaSmall.OnBtnOkClick += VehiculoCronogramaSmall_OnBtnOkClick;
                    controls.Add(vehiculoCronogramaSmall);
                }

                this.panelVehiculos.AddArrayControl(controls);
            }
        }
예제 #2
0
        private bool Comprobaciones(VehiculoCronogramaSmall cronogramaSmall, out ECronogramas eCronograma)
        {
            eCronograma = new ECronogramas();
            EVehiculos eVehiculo = cronogramaSmall.ECronograma.EVehiculo;
            //Buscar en la lista de vehículos seleccionados el id del vehículo del control
            List <ECronogramas> eCronogramas =
                this.CronogramasSeleccionados.Where(x => x.EVehiculo.Id_vehiculo == eVehiculo.Id_vehiculo).ToList();

            //Comprobar cantidad de resultados
            if (eCronogramas.Count > 0)
            {
                //Si el véhículo ya está en la lista devolvemos falso
                Mensajes.MensajeInformacion("El vehículo ya está en la lista", "Entendido");
                return(false);
            }

            //Comprobar si no está en otro cronograma con la misma fecha
            DataTable dtCronogramas =
                ECronogramas.BuscarCronogramas("FECHA ID VEHICULO",
                                               cronogramaSmall.dateEstado.Value.ToString("yyyy-MM-dd"), eVehiculo.Id_vehiculo.ToString(), out string rpta);

            if (dtCronogramas != null)
            {
                //Si hay resultados significa que si hay un vehículo con una fecha en específico
                Mensajes.MensajeInformacion("El vehículo ya está programado para esta fecha", "Entendido");
                return(false);
            }

            //Comprobar si se seleccionó un estado
            if (cronogramaSmall.btnEstado.Tag == null)
            {
                Mensajes.MensajeInformacion("Seleccione un estado", "Entendido");
                return(false);
            }

            EEstados_vehiculos eEstado = (EEstados_vehiculos)cronogramaSmall.Tag;

            eCronograma.EEstado           = eEstado;
            eCronograma.EVehiculo         = eVehiculo;
            eCronograma.Fecha_cronograma  = cronogramaSmall.dateEstado.Value;
            eCronograma.Estado_cronograma = "ACTIVO";

            return(true);
        }
예제 #3
0
        private void AsignarDatos(ECronogramas cronograma)
        {
            StringBuilder info = new StringBuilder();

            info.Append("Código: ").Append(cronograma.EVehiculo.Id_vehiculo);
            info.Append(" - Placa: ").Append(cronograma.EVehiculo.Placa).Append(Environment.NewLine);
            info.Append("Conductor: ").Append(cronograma.EVehiculo.Chofer).Append(Environment.NewLine);
            info.Append("Modelo: ").Append(cronograma.EVehiculo.Modelo);
            info.Append(" - Color: ").Append(cronograma.EVehiculo.Color);

            this.txtInformacion.Text = info.ToString();
            this.txtCorreo.Text      = cronograma.EVehiculo.Correo_chofer;
            if (MailHelpers.EmailValidation(this.txtCorreo.Text))
            {
                this.errorProvider1.SetError(this.txtCorreo, "El correo electrónico no tiene un formato correcto");
            }
            else
            {
                this.errorProvider1.Clear();
            }
            this.dateEstado.MinDate = DateTime.Now;
        }
예제 #4
0
 private void AgregarCronograma(ECronogramas eCronograma)
 {
     this.CronogramasSeleccionados.Add(eCronograma);
 }