예제 #1
0
        protected override void btnGuardar_Click(object sender, EventArgs e)
        {
            if (!Validaciones())
            {
                return;
            }

            var res = Util.MensajePregunta("¿Está seguro de que la información es correcta?", GlobalClass.NombreApp);

            if (res.Equals(DialogResult.No))
            {
                return;
            }

            SplashScreen.Show(new Splash());
            this.btnGuardar.Enabled = false;

            try
            {
                var listaSeleccion = new List <RelacionParteModelo>();
                foreach (var fila in dgvSeleccion.Rows)
                {
                    var aplicacion = (DataGridViewRow)fila;
                    var ids        = new List <int>();
                    var anios      = new List <int>();

                    if (!string.IsNullOrEmpty(aplicacion.Cells["MotoresIDs"].Value.ToString()))
                    {
                        var elements = aplicacion.Cells["MotoresIDs"].Value.ToString().Split(new[] { ',' }, System.StringSplitOptions.RemoveEmptyEntries);
                        foreach (string item in elements)
                        {
                            ids.Add(Util.Entero(item));
                        }
                    }

                    if (!string.IsNullOrEmpty(aplicacion.Cells["Anios"].Value.ToString()))
                    {
                        var elements = aplicacion.Cells["Anios"].Value.ToString().Split(new[] { ',' }, System.StringSplitOptions.RemoveEmptyEntries);
                        foreach (string item in elements)
                        {
                            anios.Add(Util.Entero(item));
                        }
                    }

                    var relacion = new RelacionParteModelo()
                    {
                        ParteID      = Util.Entero(aplicacion.Cells["ParteID"].Value),
                        ModeloID     = Util.Entero(aplicacion.Cells["ModeloID"].Value),
                        TipoFuenteID = Util.Entero(this.cboTipoFuente.SelectedValue),
                        MotorIDs     = ids,
                        Anios        = anios
                    };
                    listaSeleccion.Add(relacion);
                }

                //var aplicacionesActuales = General.GetListOf<ParteVehiculo>(p => p.ParteID.Equals(Parte.ParteID));
                foreach (var item in listaSeleccion)
                {
                    //Valida que MotorIDs y Anios tengan al menos un valor
                    if (item.Anios.Count > 0 && item.MotorIDs.Count > 0)
                    {
                        foreach (var motorId in item.MotorIDs)
                        {
                            foreach (var anio in item.Anios)
                            {
                                var parteVehiculo = new ParteVehiculo();

                                parteVehiculo = Datos.GetEntity <ParteVehiculo>(p => p.ParteID == Parte.ParteID &&
                                                                                p.MotorID == motorId && p.Anio == anio && p.ModeloID == item.ModeloID);

                                if (parteVehiculo == null)
                                {
                                    parteVehiculo = new ParteVehiculo()
                                    {
                                        ParteID           = item.ParteID,
                                        TipoFuenteID      = item.TipoFuenteID,
                                        MotorID           = motorId,
                                        ModeloID          = item.ModeloID,
                                        Anio              = anio,
                                        RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                        UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID,
                                        FechaRegistro     = DateTime.Now
                                    };
                                }
                                else
                                {
                                    parteVehiculo.ParteID           = item.ParteID;
                                    parteVehiculo.TipoFuenteID      = item.TipoFuenteID;
                                    parteVehiculo.MotorID           = motorId;
                                    parteVehiculo.ModeloID          = item.ModeloID;
                                    parteVehiculo.Anio              = anio;
                                    parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                    parteVehiculo.UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID;
                                    parteVehiculo.FechaRegistro     = DateTime.Now;
                                }
                                Datos.SaveOrUpdate <ParteVehiculo>(parteVehiculo);
                            }
                        }
                    }

                    //Valida que solo MotorIDs tenga valores
                    if (item.Anios.Count <= 0 && item.MotorIDs.Count > 0)
                    {
                        foreach (var motorId in item.MotorIDs)
                        {
                            var parteVehiculo = new ParteVehiculo();
                            parteVehiculo = Datos.GetEntity <ParteVehiculo>(p => p.ParteID == Parte.ParteID &&
                                                                            p.MotorID == motorId && p.Anio == null && p.ModeloID == item.ModeloID);

                            if (parteVehiculo == null)
                            {
                                parteVehiculo = new ParteVehiculo()
                                {
                                    ParteID           = item.ParteID,
                                    TipoFuenteID      = item.TipoFuenteID,
                                    MotorID           = motorId,
                                    ModeloID          = item.ModeloID,
                                    Anio              = null,
                                    RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                    UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID,
                                    FechaRegistro     = DateTime.Now
                                };
                            }
                            else
                            {
                                parteVehiculo.ParteID           = item.ParteID;
                                parteVehiculo.TipoFuenteID      = item.TipoFuenteID;
                                parteVehiculo.MotorID           = motorId;
                                parteVehiculo.ModeloID          = item.ModeloID;
                                parteVehiculo.Anio              = null;
                                parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.FechaRegistro     = DateTime.Now;
                            }
                            Datos.SaveOrUpdate <ParteVehiculo>(parteVehiculo);
                        }
                    }

                    //Valida que solo Anios tenga valores
                    if (item.Anios.Count > 0 && item.MotorIDs.Count <= 0)
                    {
                        foreach (var anio in item.Anios)
                        {
                            var parteVehiculo = new ParteVehiculo();

                            parteVehiculo = Datos.GetEntity <ParteVehiculo>(p => p.ParteID == Parte.ParteID &&
                                                                            p.MotorID == null && p.Anio == anio && p.ModeloID == item.ModeloID);

                            if (parteVehiculo == null)
                            {
                                parteVehiculo = new ParteVehiculo()
                                {
                                    ParteID           = item.ParteID,
                                    TipoFuenteID      = item.TipoFuenteID,
                                    MotorID           = null,
                                    ModeloID          = item.ModeloID,
                                    Anio              = anio,
                                    RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                    UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID,
                                    FechaRegistro     = DateTime.Now
                                };
                            }
                            else
                            {
                                parteVehiculo.ParteID           = item.ParteID;
                                parteVehiculo.TipoFuenteID      = item.TipoFuenteID;
                                parteVehiculo.MotorID           = null;
                                parteVehiculo.ModeloID          = item.ModeloID;
                                parteVehiculo.Anio              = anio;
                                parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.FechaRegistro     = DateTime.Now;
                            }
                            Datos.SaveOrUpdate <ParteVehiculo>(parteVehiculo);
                        }
                    }

                    //Valida que ninguno tenga valores
                    if (item.Anios.Count <= 0 && item.MotorIDs.Count <= 0)
                    {
                        var parteVehiculo = new ParteVehiculo();
                        parteVehiculo = Datos.GetEntity <ParteVehiculo>(p => p.ParteID == Parte.ParteID &&
                                                                        p.MotorID == null && p.Anio == null && p.ModeloID == item.ModeloID);

                        if (parteVehiculo == null)
                        {
                            parteVehiculo = new ParteVehiculo()
                            {
                                ParteID           = item.ParteID,
                                TipoFuenteID      = item.TipoFuenteID,
                                MotorID           = null,
                                ModeloID          = item.ModeloID,
                                Anio              = null,
                                RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID,
                                FechaRegistro     = DateTime.Now
                            };
                        }
                        else
                        {
                            parteVehiculo.ParteID           = item.ParteID;
                            parteVehiculo.TipoFuenteID      = item.TipoFuenteID;
                            parteVehiculo.MotorID           = null;
                            parteVehiculo.ModeloID          = item.ModeloID;
                            parteVehiculo.Anio              = null;
                            parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                            parteVehiculo.UsuarioID         = GlobalClass.UsuarioGlobal.UsuarioID;
                            parteVehiculo.FechaRegistro     = DateTime.Now;
                        }
                        Datos.SaveOrUpdate <ParteVehiculo>(parteVehiculo);
                    }
                }
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                new Notificacion("Aplicaciones Guardadas exitosamente", 2 * 1000).Mostrar(Principal.Instance);
            }
            catch (Exception ex)
            {
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
            this.Close();
        }
예제 #2
0
        protected override void btnGuardar_Click(object sender, EventArgs e)
        {
            if (!Validaciones())
                return;

            var res = Util.MensajePregunta("¿Está seguro de que la información es correcta?", GlobalClass.NombreApp);
            if (res.Equals(DialogResult.No))
                return;

            SplashScreen.Show(new Splash());
            this.btnGuardar.Enabled = false;

            try
            {
                var listaSeleccion = new List<RelacionParteModelo>();
                foreach (var fila in dgvSeleccion.Rows)
                {
                    var aplicacion = (DataGridViewRow)fila;
                    var ids = new List<int>();
                    var anios = new List<int>();

                    if (!string.IsNullOrEmpty(aplicacion.Cells["MotoresIDs"].Value.ToString()))
                    {
                        var elements = aplicacion.Cells["MotoresIDs"].Value.ToString().Split(new[] { ',' }, System.StringSplitOptions.RemoveEmptyEntries);
                        foreach (string item in elements)
                        {
                            ids.Add(Util.Entero(item));
                        }
                    }

                    if (!string.IsNullOrEmpty(aplicacion.Cells["Anios"].Value.ToString()))
                    {
                        var elements = aplicacion.Cells["Anios"].Value.ToString().Split(new[] { ',' }, System.StringSplitOptions.RemoveEmptyEntries);
                        foreach (string item in elements)
                        {
                            anios.Add(Util.Entero(item));
                        }
                    }

                    var relacion = new RelacionParteModelo()
                    {
                        ParteID = Util.Entero(aplicacion.Cells["ParteID"].Value),
                        ModeloID = Util.Entero(aplicacion.Cells["ModeloID"].Value),
                        TipoFuenteID = Util.Entero(this.cboTipoFuente.SelectedValue),
                        MotorIDs = ids,
                        Anios = anios
                    };
                    listaSeleccion.Add(relacion);
                }

                //var aplicacionesActuales = General.GetListOf<ParteVehiculo>(p => p.ParteID.Equals(Parte.ParteID));
                foreach (var item in listaSeleccion)
                {
                    //Valida que MotorIDs y Anios tengan al menos un valor
                    if (item.Anios.Count > 0 && item.MotorIDs.Count > 0)
                    {
                        foreach (var motorId in item.MotorIDs)
                        {
                            foreach (var anio in item.Anios)
                            {
                                var parteVehiculo = new ParteVehiculo();

                                parteVehiculo = Datos.GetEntity<ParteVehiculo>(p => p.ParteID == Parte.ParteID
                                    && p.MotorID == motorId && p.Anio == anio && p.ModeloID == item.ModeloID);

                                if (parteVehiculo == null)
                                {
                                    parteVehiculo = new ParteVehiculo()
                                    {
                                        ParteID = item.ParteID,
                                        TipoFuenteID = item.TipoFuenteID,
                                        MotorID = motorId,
                                        ModeloID = item.ModeloID,
                                        Anio = anio,
                                        RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                        UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                        FechaRegistro = DateTime.Now
                                    };
                                }
                                else
                                {
                                    parteVehiculo.ParteID = item.ParteID;
                                    parteVehiculo.TipoFuenteID = item.TipoFuenteID;
                                    parteVehiculo.MotorID = motorId;
                                    parteVehiculo.ModeloID = item.ModeloID;
                                    parteVehiculo.Anio = anio;
                                    parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                    parteVehiculo.UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                    parteVehiculo.FechaRegistro = DateTime.Now;
                                }
                                Datos.SaveOrUpdate<ParteVehiculo>(parteVehiculo);
                            }
                        }
                    }

                    //Valida que solo MotorIDs tenga valores
                    if (item.Anios.Count <= 0 && item.MotorIDs.Count > 0)
                    {
                        foreach (var motorId in item.MotorIDs)
                        {
                            var parteVehiculo = new ParteVehiculo();
                            parteVehiculo = Datos.GetEntity<ParteVehiculo>(p => p.ParteID == Parte.ParteID
                                && p.MotorID == motorId && p.Anio == null && p.ModeloID == item.ModeloID);

                            if (parteVehiculo == null)
                            {
                                parteVehiculo = new ParteVehiculo()
                                {
                                    ParteID = item.ParteID,
                                    TipoFuenteID = item.TipoFuenteID,
                                    MotorID = motorId,
                                    ModeloID = item.ModeloID,
                                    Anio = null,
                                    RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                    UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                    FechaRegistro = DateTime.Now
                                };
                            }
                            else
                            {
                                parteVehiculo.ParteID = item.ParteID;
                                parteVehiculo.TipoFuenteID = item.TipoFuenteID;
                                parteVehiculo.MotorID = motorId;
                                parteVehiculo.ModeloID = item.ModeloID;
                                parteVehiculo.Anio = null;
                                parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.FechaRegistro = DateTime.Now;
                            }
                            Datos.SaveOrUpdate<ParteVehiculo>(parteVehiculo);
                        }
                    }

                    //Valida que solo Anios tenga valores
                    if (item.Anios.Count > 0 && item.MotorIDs.Count <= 0)
                    {
                        foreach (var anio in item.Anios)
                        {
                            var parteVehiculo = new ParteVehiculo();

                            parteVehiculo = Datos.GetEntity<ParteVehiculo>(p => p.ParteID == Parte.ParteID
                                && p.MotorID == null && p.Anio == anio && p.ModeloID == item.ModeloID);

                            if (parteVehiculo == null)
                            {
                                parteVehiculo = new ParteVehiculo()
                                {
                                    ParteID = item.ParteID,
                                    TipoFuenteID = item.TipoFuenteID,
                                    MotorID = null,
                                    ModeloID = item.ModeloID,
                                    Anio = anio,
                                    RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                    UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                    FechaRegistro = DateTime.Now
                                };
                            }
                            else
                            {
                                parteVehiculo.ParteID = item.ParteID;
                                parteVehiculo.TipoFuenteID = item.TipoFuenteID;
                                parteVehiculo.MotorID = null;
                                parteVehiculo.ModeloID = item.ModeloID;
                                parteVehiculo.Anio = anio;
                                parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                                parteVehiculo.FechaRegistro = DateTime.Now;
                            }
                            Datos.SaveOrUpdate<ParteVehiculo>(parteVehiculo);
                        }
                    }

                    //Valida que ninguno tenga valores
                    if (item.Anios.Count <= 0 && item.MotorIDs.Count <= 0)
                    {
                        var parteVehiculo = new ParteVehiculo();
                        parteVehiculo = Datos.GetEntity<ParteVehiculo>(p => p.ParteID == Parte.ParteID
                            && p.MotorID == null && p.Anio == null && p.ModeloID == item.ModeloID);

                        if (parteVehiculo == null)
                        {
                            parteVehiculo = new ParteVehiculo()
                            {
                                ParteID = item.ParteID,
                                TipoFuenteID = item.TipoFuenteID,
                                MotorID = null,
                                ModeloID = item.ModeloID,
                                Anio = null,
                                RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID,
                                FechaRegistro = DateTime.Now
                            };
                        }
                        else
                        {
                            parteVehiculo.ParteID = item.ParteID;
                            parteVehiculo.TipoFuenteID = item.TipoFuenteID;
                            parteVehiculo.MotorID = null;
                            parteVehiculo.ModeloID = item.ModeloID;
                            parteVehiculo.Anio = null;
                            parteVehiculo.RegistroUsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                            parteVehiculo.UsuarioID = GlobalClass.UsuarioGlobal.UsuarioID;
                            parteVehiculo.FechaRegistro = DateTime.Now;
                        }
                        Datos.SaveOrUpdate<ParteVehiculo>(parteVehiculo);
                    }
                }
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                new Notificacion("Aplicaciones Guardadas exitosamente", 2 * 1000).Mostrar(Principal.Instance);
            }
            catch (Exception ex)
            {
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
            this.Close();
        }