Exemple #1
0
 private void improveThread()
 {
     try
     {
         SplashScreen.Show(new Splash());
     }
     catch (Exception ex)
     {
         Helper.MensajeError(string.Format("msj:{0}. inner:{1}.", ex.Message, ex.InnerException), GlobalClass.NombreApp);
     }
 }
Exemple #2
0
        public void IniciarActualizarListado()
        {
            SplashScreen.Show(new Splash());
            bgworker                     = new BackgroundWorker();
            bgworker.DoWork             += ActualizarListado;
            bgworker.RunWorkerCompleted += Terminado;
            bgworker.RunWorkerAsync();

            bgworker.WorkerReportsProgress = true;
            bgworker.DoWork          += new DoWorkEventHandler(bgworker_DoWork);
            bgworker.ProgressChanged += new ProgressChangedEventHandler(bgworker_ProgressChanged);
        }
        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<int>();
                 * listaSeleccion.Add(Parte.ParteID);
                 * foreach (var fila in dgvSeleccion.Rows)
                 * {
                 *  var equivalente = (DataGridViewRow)fila;
                 *  listaSeleccion.Add(Util.ConvertirEntero(equivalente.Cells["ParteID"].Value));
                 * }
                 * //Almacenar: Todos contra todos
                 * foreach (var parteId in listaSeleccion)
                 * {
                 *  foreach (var parteIdComparar in listaSeleccion)
                 *  {
                 *      var equivalente = General.GetEntity<ParteEquivalente>(p => p.ParteID == parteId && p.ParteIDequivalente == parteIdComparar);
                 *      if (equivalente == null)
                 *      {
                 *          var equivalencia = new ParteEquivalente()
                 *          {
                 *              ParteID = parteId,
                 *              ParteIDequivalente = parteIdComparar
                 *          };
                 *          Datos.Guardar<ParteEquivalente>(equivalencia);
                 *      }
                 *  }
                 * }
                 */

                // Nueva modalidad de equivalentes - Moisés
                int iParteID = this.Parte.ParteID;
                foreach (DataGridViewRow oFila in this.dgvSeleccion.Rows)
                {
                    int iParteIDEq = Util.Entero(oFila.Cells["ParteID"].Value);
                    Guardar.ParteEquivalencia(iParteID, iParteIDEq);
                }
                //

                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                new Notificacion("Equivalentes guardados exitosamente", 2 * 1000).Mostrar(Principal.Instance);
            }
            catch (Exception ex)
            {
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
            this.Close();
        }
Exemple #4
0
        protected override void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                if (!Validaciones())
                {
                    return;
                }

                if (EsNuevo)
                {
                }
                else
                {
                    int iAutorizoID = 0;
                    var ResU        = UtilLocal.ValidarObtenerUsuario(null, "Autorización");
                    if (ResU.Exito)
                    {
                        iAutorizoID = ResU.Respuesta.UsuarioID;
                    }
                    else
                    {
                        Util.MensajeError("Error al validar el usuario.", GlobalClass.NombreApp);
                        return;
                    }

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

                    var ContingenciaCompleta = Datos.GetEntity <MovimientoInventarioContingenciasView>(c => c.MovimientoInventarioTraspasoContingenciaID == Contingencia.MovimientoInventarioTraspasoContingenciaID);
                    if (null == ContingenciaCompleta)
                    {
                        return;
                    }

                    //Actualiza la contingencia
                    Contingencia.FechaModificacion = DateTime.Now;
                    Contingencia.MovimientoInventarioEstatusContingenciaID = 1;
                    Contingencia.UsuarioID               = GlobalClass.UsuarioGlobal.UsuarioID;
                    Contingencia.UsuarioSolucionoID      = GlobalClass.UsuarioGlobal.UsuarioID;
                    Contingencia.FechaSoluciono          = DateTime.Now;
                    Contingencia.TipoOperacionID         = Util.Entero(this.cboTipoOperacion.SelectedValue);
                    Contingencia.TipoConceptoOperacionID = Util.Entero(this.cboConceptoOperacion.SelectedValue);
                    Contingencia.ObservacionSolucion     = this.txtObservacion.Text;
                    if (Util.Entero(this.cboTipoOperacion.SelectedValue) == Cat.TiposDeOperacionMovimientos.SalidaInventario)
                    {
                        Contingencia.ObservacionSolucion += (" - SE CREA UNA ENTRADA PARA DEVOLVER EL TRASPASO A LA TIENDA ORIGEN Y EN EL SEGUNDO MOVIMIENTO UNA SALIDA PARA PODER HACER LA SALIDA DEL INVENTARIO");
                    }
                    Contingencia.FechaModificacion = DateTime.Now;
                    Datos.SaveOrUpdate <MovimientoInventarioTraspasoContingencia>(Contingencia);

                    int    iSucursalID = ContingenciaCompleta.SucursalOrigenID.Valor();
                    string sOrigen     = UtilDatos.NombreDeSucursal(ContingenciaCompleta.SucursalOrigenID.Valor());
                    string sDestino    = UtilDatos.NombreDeSucursal(ContingenciaCompleta.SucursalDestinoID.Valor());
                    var    oPrecio     = Datos.GetEntity <PartePrecio>(c => c.ParteID == ContingenciaCompleta.ParteID && c.Estatus);

                    switch (Util.Entero(cboTipoOperacion.SelectedValue))
                    {
                    case 2:

                        #region [ Entrada Inventario ]

                        //Insertar Movimiento
                        var movimientoEntradaI = new MovimientoInventario()
                        {
                            TipoOperacionID   = Util.Entero(this.cboTipoOperacion.SelectedValue),
                            TipoPagoID        = 1,
                            ProveedorID       = 1,
                            SucursalOrigenID  = ContingenciaCompleta.SucursalOrigenID,
                            SucursalDestinoID = ContingenciaCompleta.SucursalDestinoID,
                            FechaFactura      = DateTime.Now,
                            FechaRecepcion    = DateTime.Now,
                            FolioFactura      = null,
                            Subtotal          = null,
                            IVA                      = null,
                            ImporteTotal             = 0,
                            FueLiquidado             = false,
                            TipoConceptoOperacionID  = ContingenciaCompleta.TipoConceptoOperacionID,
                            Observacion              = string.Format("{0}: {1}", "Traspaso por resolucion de un Conflicto. Movimiento: ", Contingencia.MovimientoInventarioID),
                            Articulos                = null,
                            Unidades                 = null,
                            Seguro                   = null,
                            ImporteTotalSinDescuento = null
                        };
                        Datos.Guardar <MovimientoInventario>(movimientoEntradaI);

                        if (movimientoEntradaI.MovimientoInventarioID < 1)
                        {
                            new EntityNotFoundException("MovimientoInventarioID", "MovimientoInventario");
                            return;
                        }

                        //Insertar MovimientoDetalle
                        var detalleMovimiento = new MovimientoInventarioDetalle()
                        {
                            MovimientoInventarioID = movimientoEntradaI.MovimientoInventarioID,
                            ParteID        = ContingenciaCompleta.ParteID,
                            Cantidad       = Util.Decimal(ContingenciaCompleta.Diferencia),
                            PrecioUnitario = 0,
                            Importe        = 0,
                            FueDevolucion  = false,
                            FechaRegistro  = DateTime.Now,
                            Estatus        = true
                        };
                        Datos.SaveOrUpdate <MovimientoInventarioDetalle>(detalleMovimiento);

                        //Actualizar ParteExistencia

                        /* var sucursalId = ContingenciaCompleta.SucursalOrigenID;
                         * var existencia = General.GetEntity<ParteExistencia>(p => p.ParteID == ContingenciaCompleta.ParteID && p.SucursalID == sucursalId);
                         * if (existencia != null)
                         * {
                         *  existencia.Existencia += Util.ConvertirDecimal(ContingenciaCompleta.Diferencia);
                         *  Datos.Guardar<ParteExistencia>(existencia);//dmod
                         * }
                         */
                        // AdmonProc.AgregarExistencia(ContingenciaCompleta.ParteID, sucursalId.Valor(), ContingenciaCompleta.Diferencia.Valor()
                        //     , Cat.Tablas.MovimientoInventario, movimientoEntradaI.MovimientoInventarioID);

                        // Se modifica la existencia y el kardex
                        AdmonProc.AfectarExistenciaYKardex(ContingenciaCompleta.ParteID, iSucursalID, Cat.OperacionesKardex.EntradaTraspaso
                                                           , Contingencia.MovimientoInventarioID.ToString(), Contingencia.UsuarioSolucionoID.Valor(), "Conflicto Resuelto Entrada"
                                                           , sOrigen, sDestino, ContingenciaCompleta.Diferencia.Valor()
                                                           , oPrecio.Costo.Valor(), Cat.Tablas.MovimientoInventario, movimientoEntradaI.MovimientoInventarioID);

                        #endregion

                        break;

                    case 3:

                        #region [ Salida Inventario ]

                        //Insertar Movimiento
                        var movimientoSalida = new MovimientoInventario()
                        {
                            TipoOperacionID   = Util.Entero(this.cboTipoOperacion.SelectedValue),
                            TipoPagoID        = 1,
                            ProveedorID       = 1,
                            SucursalOrigenID  = ContingenciaCompleta.SucursalOrigenID,
                            SucursalDestinoID = ContingenciaCompleta.SucursalDestinoID,
                            FechaFactura      = DateTime.Now,
                            FechaRecepcion    = DateTime.Now,
                            FolioFactura      = null,
                            Subtotal          = null,
                            IVA                      = null,
                            ImporteTotal             = 0,
                            FueLiquidado             = false,
                            TipoConceptoOperacionID  = Util.Entero(this.cboConceptoOperacion.SelectedValue),
                            Observacion              = string.Format("{0}: {1}", "Traspaso por resolucion de un Conflicto. Movimiento: ", Contingencia.MovimientoInventarioID),
                            Articulos                = null,
                            Unidades                 = null,
                            Seguro                   = null,
                            ImporteTotalSinDescuento = null
                        };
                        Datos.Guardar <MovimientoInventario>(movimientoSalida);

                        if (movimientoSalida.MovimientoInventarioID < 1)
                        {
                            new EntityNotFoundException("MovimientoInventarioID", "MovimientoInventario");
                            return;
                        }

                        //Insertar MovimientoDetalle
                        var detalleMovimientoS = new MovimientoInventarioDetalle()
                        {
                            MovimientoInventarioID = movimientoSalida.MovimientoInventarioID,
                            ParteID        = ContingenciaCompleta.ParteID,
                            Cantidad       = Util.Decimal(ContingenciaCompleta.Diferencia),
                            PrecioUnitario = 0,
                            Importe        = 0,
                            FueDevolucion  = false,
                            FechaRegistro  = DateTime.Now,
                            Estatus        = true
                        };
                        Datos.SaveOrUpdate <MovimientoInventarioDetalle>(detalleMovimientoS);

                        //No se descuenta por que ya se habia descontado en el traspaso anterior
                        // Ahora sí se generan dos registros en kardex, uno de entrada y luego uno de salida, para que al final quede igual
                        // Se hace así para mantener un registro de la operación
                        // Se hace primero la entrada
                        AdmonProc.AfectarExistenciaYKardex(ContingenciaCompleta.ParteID, iSucursalID, Cat.OperacionesKardex.EntradaTraspaso
                                                           , Contingencia.MovimientoInventarioID.ToString(), Contingencia.UsuarioSolucionoID.Valor(), "Conflicto Resuelto Salida"
                                                           , sOrigen, sDestino, ContingenciaCompleta.Diferencia.Valor()
                                                           , oPrecio.Costo.Valor(), Cat.Tablas.MovimientoInventario, movimientoSalida.MovimientoInventarioID);
                        // Luego la salida
                        AdmonProc.AfectarExistenciaYKardex(ContingenciaCompleta.ParteID, iSucursalID, Cat.OperacionesKardex.SalidaTraspaso
                                                           , Contingencia.MovimientoInventarioID.ToString(), Contingencia.UsuarioSolucionoID.Valor(), "Conflicto Resuelto Salida"
                                                           , sOrigen, sDestino, (ContingenciaCompleta.Diferencia.Valor() * -1)
                                                           , oPrecio.Costo.Valor(), Cat.Tablas.MovimientoInventario, movimientoSalida.MovimientoInventarioID);

                        #endregion

                        break;

                    case 5:

                        #region [ Traspaso ]

                        //Almacenar traspaso
                        var traspaso = new MovimientoInventario()
                        {
                            TipoOperacionID           = Util.Entero(this.cboTipoOperacion.SelectedValue),
                            SucursalOrigenID          = ContingenciaCompleta.SucursalOrigenID,
                            SucursalDestinoID         = ContingenciaCompleta.SucursalDestinoID,
                            ImporteTotal              = 0,
                            FueLiquidado              = false,
                            UsuarioSolicitoTraspasoID = Contingencia.UsuarioSolucionoID,
                            ExisteContingencia        = false,
                            Observacion = string.Format("{0}: {1}", "Traspaso por resolucion de un Conflicto. Movimiento: ", Contingencia.MovimientoInventarioID)
                        };
                        Datos.Guardar <MovimientoInventario>(traspaso);

                        //Almacenar el detalle del traspaso
                        if (traspaso.MovimientoInventarioID > 0)
                        {
                            var detalleTraspaso = new MovimientoInventarioDetalle()
                            {
                                MovimientoInventarioID = traspaso.MovimientoInventarioID,
                                ParteID        = ContingenciaCompleta.ParteID,
                                Cantidad       = Util.Decimal(ContingenciaCompleta.Diferencia),
                                PrecioUnitario = 0,
                                Importe        = 0,
                                FueDevolucion  = false,
                                FechaRegistro  = DateTime.Now,
                                Estatus        = true
                            };
                            Datos.SaveOrUpdate <MovimientoInventarioDetalle>(detalleTraspaso);

                            //No se descuenta por que ya se habia descontado en el primer traspaso
                        }

                        #endregion

                        break;

                    default:
                        break;
                    }
                }
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                new Notificacion("Conflicto Resuelto exitosamente", 2 * 1000).Mostrar(Principal.Instance);
                catalogosTraspasos.Instance.CustomInvoke <catalogosTraspasos>(m => m.ActualizarListadoConflictos());
            }
            catch (Exception ex)
            {
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
            this.Close();
        }
Exemple #5
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                var res = Helper.MensajePregunta("¿Está seguro de que la información es correcta?", GlobalClass.NombreApp);
                if (res == DialogResult.No)
                {
                    return;
                }

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

                foreach (DataGridViewRow row in this.dgvDatos.Rows)
                {
                    if (Helper.ConvertirBool(row.Cells["Sel"].Value).Equals(true))
                    {
                        var parteId    = Helper.ConvertirEntero(row.Cells["ParteID"].Value);
                        var sucursalId = Helper.ConvertirEntero(row.Cells["SucursalID"].Value);

                        //Actualizar tabla ParteExistencia, campos Maximo y Minimo
                        var parteExistencia = General.GetEntity <ParteExistencia>(p => p.ParteID == parteId && p.SucursalID == sucursalId);
                        if (null != parteExistencia)
                        {
                            parteExistencia.Maximo = Helper.ConvertirEntero(row.Cells["MAX"].Value);
                            parteExistencia.Minimo = Helper.ConvertirEntero(row.Cells["MIN"].Value);
                            Guardar.Generico <ParteExistencia>(parteExistencia);
                        }

                        //Actualizar tabla Parte, campo TiempoReposicion
                        var parte = General.GetEntity <Parte>(p => p.ParteID == parteId);
                        if (null != parte)
                        {
                            parte.TiempoReposicion = Helper.ConvertirDecimal(row.Cells["TiempoReposicion"].Value);
                            Guardar.Generico <Parte>(parte);
                        }

                        var mxmn = General.GetEntity <ParteMxMn>(p => p.ParteID == parteId && p.SucursalID == sucursalId && p.Estatus);

                        int? max  = null;
                        int? min  = null;
                        bool fijo = false;
                        if (Helper.ConvertirBool(row.Cells["Fijo"].Value).Equals(true))
                        {
                            fijo = true;
                            if (!string.IsNullOrEmpty(Helper.ConvertirCadena(row.Cells["MAX"].Value)))
                            {
                                max = Helper.ConvertirEntero(row.Cells["MAX"].Value);
                            }
                            if (!string.IsNullOrEmpty(Helper.ConvertirCadena(row.Cells["MIN"].Value)))
                            {
                                min = Helper.ConvertirEntero(row.Cells["MIN"].Value);
                            }
                        }

                        if (null == mxmn) //Nuevo registro
                        {
                            mxmn = new ParteMxMn()
                            {
                                EsFijo     = fijo,
                                ParteID    = parteId,
                                SucursalID = sucursalId,
                                Criterio   = !string.IsNullOrEmpty(Helper.ConvertirCadena(row.Cells["Criterio"].Value)) ? Helper.ConvertirCadena(row.Cells["Criterio"].Value) : null,
                                AjusteMn   = !string.IsNullOrEmpty(Helper.ConvertirCadena(row.Cells["AjusteMn"].Value)) ? Helper.ConvertirCadena(row.Cells["AjusteMn"].Value) : null,
                                AjusteMx   = !string.IsNullOrEmpty(Helper.ConvertirCadena(row.Cells["AjusteMx"].Value)) ? Helper.ConvertirCadena(row.Cells["AjusteMx"].Value) : null,
                                Maximo     = max,
                                Minimo     = min
                            };
                        }
                        else
                        {
                            mxmn.EsFijo   = fijo;
                            mxmn.Criterio = Helper.ConvertirCadena(row.Cells["Criterio"].Value);
                            mxmn.AjusteMn = Helper.ConvertirCadena(row.Cells["AjusteMn"].Value);
                            mxmn.AjusteMx = Helper.ConvertirCadena(row.Cells["AjusteMx"].Value);
                            mxmn.Maximo   = max;
                            mxmn.Minimo   = min;
                        }
                        Guardar.Generico <ParteMxMn>(mxmn);
                        this.actualizarParteMxMnCriterio(mxmn.ParteMxMnID, Helper.ConvertirCadena(row.Cells["CriteriosGenerales"].Value));
                    }
                }

                this.Cursor = Cursors.Default;
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                new Notificacion("Información almacenada correctamente.", 2 * 1000).Mostrar(Principal.Instance);
                this.CargaInicial();
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;
                SplashScreen.Close();
                this.btnGuardar.Enabled = true;
                Helper.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
        }
Exemple #6
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();
        }
Exemple #7
0
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {
                SplashScreen.Show(new Splash());
                if (!loadConfiguraciones())
                {
                    Negocio.Helper.MensajeError("No se pudo cargar la configuración inicial.", GlobalClass.NombreApp);
                    return;
                }

                if (txtUsuario.TextLength.Equals(0) || txtContrasena.TextLength.Equals(0))
                {
                    intentos += 1;
                    Negocio.Helper.MensajeAdvertencia("Los datos proporcionados son incorrectos." + " Intentos restantes: " + (3 - intentos).ToString(), GlobalClass.NombreApp);
                    if (intentos > 2)
                    {
                        this.Close();
                    }
                    return;
                }
                var usuario = General.GetEntity <Usuario>(u => u.NombreUsuario.Equals(txtUsuario.Text.ToLower()) && u.Contrasenia.Equals(txtContrasena.Text.ToLower()) && u.Estatus.Equals(true));
                if (usuario != null)
                {
                    var usuarioGlobal = new UsuarioSis();
                    usuarioGlobal.UsuarioID     = usuario.UsuarioID;
                    usuarioGlobal.NombreUsuario = usuario.NombreUsuario;
                    usuarioGlobal.NombrePersona = usuario.NombrePersona;
                    usuarioGlobal.Perfiles      = General.GetListOf <UsuarioPerfilesView>(up => up.UsuarioID.Equals(usuario.UsuarioID));

                    var ppv      = General.GetListOf <PerfilPermisosView>().ToList();
                    var permisos = new List <PerfilPermisosView>();

                    foreach (var perfil in usuarioGlobal.Perfiles)
                    {
                        var items = ppv.Where(p => p.PerfilID == perfil.PerfilID);
                        foreach (var item in items)
                        {
                            permisos.Add(item);
                        }
                    }

                    usuarioGlobal.Permisos    = permisos;
                    GlobalClass.UsuarioGlobal = usuarioGlobal;
                    existe = true;
                    this.Close();
                }
                if (!existe)
                {
                    intentos += 1;
                    Negocio.Helper.MensajeAdvertencia("Los datos proporcionados son incorrectos." + " Intentos restantes: " + (3 - intentos).ToString(), GlobalClass.NombreApp);
                    if (intentos > 2)
                    {
                        this.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                string msj = string.Empty;
                if (ex.InnerException == null)
                {
                    msj = string.Format("msj:{0}.", ex.Message);
                }
                else
                {
                    msj = string.Format("msj:{0}. inner:{1}.", ex.Message, ex.InnerException);
                }
                Helper.MensajeError(msj, GlobalClass.NombreApp);
            }
            SplashScreen.Close();
        }