Ejemplo n.º 1
0
        private void _vista_UsuarioDeseaObtenerMateriales(object sender, InventarioInactivoArgumento e)
        {
            try
            {
                var arg = new InventarioInactivoArgumento
                {
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    WarehouseXml = Xml.ConvertListToXml(_vista.Bodegas.Where(b => b.IS_SELECTED).ToList())
                    ,
                    ZoneXml = Xml.ConvertListToXml(_vista.Zonas.Where(z => z.IS_SELECTED).ToList())
                };

                var listaTemporal = _vista.Materiales.Where(z => z.IS_SELECTED).ToList();

                var listaResultado = MaterialServicio.ObtenerMaterialesPorBodegaYZona(arg);

                if (listaTemporal.Count > 0)
                {
                    foreach (var registro in listaResultado)
                    {
                        registro.IS_SELECTED = listaTemporal.Exists(lt => lt.IS_SELECTED && lt.MATERIAL_CODE == registro.MATERIAL_CODE);
                    }
                }

                _vista.Materiales = listaResultado;
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.Mensaje(ex.Message);
            }
        }
Ejemplo n.º 2
0
        private void _vista_UsuarioDeseaObtenerZonas(object sender, InventarioInactivoArgumento e)
        {
            try
            {
                var arg = new InventarioInactivoArgumento
                {
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    WarehouseXml = Xml.ConvertListToXml(_vista.Bodegas.Where(b => b.IS_SELECTED).ToList())
                };

                var listaZonasTemporal = _vista.Zonas.Where(z => z.IS_SELECTED).ToList();

                var listaZonasResultado = UbicacionServicio.ObtenerZonasPorBodegas(arg);

                if (listaZonasTemporal.Count > 0)
                {
                    foreach (var zona in listaZonasResultado)
                    {
                        zona.IS_SELECTED = listaZonasTemporal.Exists(zt => zt.IS_SELECTED && zt.ZONE == zona.ZONE);
                    }
                }
                _vista.Zonas = listaZonasResultado;
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.Mensaje(ex.Message);
            }
        }
 private void _vista_UsuarioDeseaAsignarInventarioAProyecto(object sender, ProyectoArgumento e)
 {
     try
     {
         Operacion op = ProyectoServicio.AsignarInventarioAProyecto(e);
         if (op.Resultado == ResultadoOperacionTipo.Exito)
         {
             _vista.InventarioAsignadoAProyecto = ProyectoServicio.ObtenerInventarioAsignadoAProyecto(e);
             var materials = from m in _vista.Skus.ToList()
                             select new Material {
                 MATERIAL_ID = m.MATERIAL_ID, IS_SELECTED = m.IS_SELECTED
             };
             e.MaterialXml = Xml.ConvertListToXml(materials.Where(m => m.IS_SELECTED).ToList());
             _vista.InventarioPendienteDeAsignar?.Clear();
             ObtenerResumenDeInventario(_vista.InventarioAsignadoAProyecto.ToList());
         }
         else
         {
             throw new Exception(op.Mensaje);
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        private void UiBotonAgregarDetalleInventario_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            InteraccionConUsuarioServicio.MostrarDialogoDeCargando();
            try
            {
                if (!UiDxValidaciones.Validate())
                {
                    return;
                }
                if (InventarioPendienteDeAsignar == null || InventarioPendienteDeAsignar.Count == 0)
                {
                    InteraccionConUsuarioServicio.MensajeErrorDialogo("Debe seleccionar inventario para asignar al proyecto");
                }
                ;

                UsuarioDeseaAsignarInventarioAProyecto?.Invoke(null, new ProyectoArgumento
                {
                    Login        = InteraccionConUsuarioServicio.ObtenerUsuario(),
                    Proyecto     = ProyectoSeleccionado,
                    LicenciasXml = Xml.ConvertListToXml(InventarioPendienteDeAsignar.Where(m => m.IS_SELECTED).ToList())
                });
                VistaTerminoDeEliminar();
                UiVistaProyecto_Click(sender, e);
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.MensajeErrorDialogo(ex.Message);
            }
            InteraccionConUsuarioServicio.CerrarDialogoDeCargando();
        }
        private void _vista_UsuarioDeseaObtenerZonasDePosicionamiento(object sender, PosicionamientoArgumento e)
        {
            try
            {
                var arg = new PosicionamientoArgumento
                {
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    XmlBodegas = Xml.ConvertListToXml(_vista.Bodegas.Where(b => b.IS_SELECTED).ToList())
                };

                var parametroUseSubFamily = _vista.Parametros.FirstOrDefault(p => p.PARAMETER_ID == Enums.GetStringValue(IdParametro.UseMaterialSubFamily) && p.GROUP_ID == Enums.GetStringValue(GrupoParametro.MaterialSubFamily));

                if (parametroUseSubFamily == null || int.Parse(parametroUseSubFamily.VALUE) == (int)SiNo.No)
                {
                    _vista.ZonasDePosicionamientos = PosicionamientoServicio.ObtenerZonaDePosicionamientos(arg);
                }
                else
                {
                    _vista.ZonasDePosicionamientos = PosicionamientoServicio.ObtenerZonaDePosicionamientosSubClase(arg);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        private void CargarPlantilla()
        {
            try
            {
                using (var dialogoParaAbrir = new XtraOpenFileDialog())
                {
                    dialogoParaAbrir.Title            = "Cargar ...";
                    dialogoParaAbrir.Filter           = @"Archivos de excel (*.xlsx)|*.xlsx";
                    dialogoParaAbrir.FilterIndex      = 2;
                    dialogoParaAbrir.RestoreDirectory = true;

                    if (dialogoParaAbrir.ShowDialog() != DialogResult.OK)
                    {
                        return;
                    }
                    var libroDeTrabajo = new XLWorkbook(dialogoParaAbrir.FileName);

                    IXLWorksheet hoja;
                    var          existeHoja = false;

                    string familiaTexto          = "Familia";
                    var    parametroUseSubFamily = Parametros.FirstOrDefault(p => p.PARAMETER_ID == Enums.GetStringValue(IdParametro.UseMaterialSubFamily) && p.GROUP_ID == Enums.GetStringValue(GrupoParametro.MaterialSubFamily));
                    if (parametroUseSubFamily != null && int.Parse(parametroUseSubFamily.VALUE) == (int)SiNo.Si)
                    {
                        familiaTexto = "Sub-familia";
                    }
                    existeHoja = libroDeTrabajo.TryGetWorksheet(familiaTexto, out hoja);
                    var listaZonaDePosicionamientos = new List <ZonaDePosicionamiento>();
                    if (existeHoja)
                    {
                        var listaDeErrores = ObtenerListaDeClasesDesdeXlsx(hoja, out listaZonaDePosicionamientos);
                        if (listaDeErrores.Count > 0)
                        {
                            InteraccionConUsuarioServicio.MensajeListaDeErrorDialogo(listaDeErrores);
                            return;
                        }
                    }

                    if (listaZonaDePosicionamientos.Count == 0)
                    {
                        InteraccionConUsuarioServicio.Alerta("El formato del archivo es incorrecto o está vacio.");
                        return;
                    }

                    UsuarioDeseaCargarPlantilla?.Invoke(null, new PosicionamientoArgumento
                    {
                        XmlZonaPosicionamiento = Xml.ConvertListToXml(listaZonaDePosicionamientos)
                    });
                }
            }
            catch (Exception e)
            {
                InteraccionConUsuarioServicio.Alerta($"Error al cargar la plantilla: {e.Message}");
            }
        }
 private void _vista_UsuarioDeseaObtenerInventarioDisponible(object sender, ProyectoArgumento e)
 {
     try
     {
         var materials = from m in _vista.Skus.ToList()
                         select new Material {
             MATERIAL_ID = m.MATERIAL_ID, IS_SELECTED = m.IS_SELECTED
         };
         e.MaterialXml = Xml.ConvertListToXml(materials.Where(m => m.IS_SELECTED).ToList());
         _vista.InventarioPendienteDeAsignar = ProyectoServicio.ObtenerInventarioDisponible(e);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        private void _vista_UsuarioDeseaAgregarClases(object sender, PosicionamientoArgumento e)
        {
            try
            {
                if ((_vista.ZonasDePosicionamientoSeleccionado.ZONE_ID > 0) && !_vista.ClasesDisponibles.ToList().Exists(z => z.IS_SELECTED))
                {
                    return;
                }
                var arg = new PosicionamientoArgumento
                {
                    ZonaDePosicionamiento = _vista.ZonasDePosicionamientoSeleccionado,
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    XmlClases = Xml.ConvertListToXml(_vista.ClasesDisponibles.Where(b => b.IS_SELECTED).ToList())
                };

                Operacion operacion;

                var parametroUseSubFamily = _vista.Parametros.FirstOrDefault(p => p.PARAMETER_ID == Enums.GetStringValue(IdParametro.UseMaterialSubFamily) && p.GROUP_ID == Enums.GetStringValue(GrupoParametro.MaterialSubFamily));
                if (parametroUseSubFamily == null || int.Parse(parametroUseSubFamily.VALUE) == (int)SiNo.No)
                {
                    operacion = PosicionamientoServicio.AgregarClasesParaZonaDePosicionamiento(arg);
                }
                else
                {
                    operacion = PosicionamientoServicio.AgregarSubClasesParaZonaDePosicionamiento(arg);
                }

                if (operacion.Resultado == ResultadoOperacionTipo.Exito)
                {
                    if (!string.IsNullOrEmpty(operacion.DbData))
                    {
                        _vista.ZonasDePosicionamientoSeleccionado.ID = Guid.Parse(operacion.DbData);
                    }
                    _vista_UsuarioDeseaObtenerClasesAsociadas(null, null);
                    _vista_UsuarioDeseaObtenerClasesDisponibles(null, null);
                }
                else
                {
                    throw new Exception(operacion.Mensaje);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        private void _vista_UsuarioDeseaObtenerSugeridoCompra(object sender, SugeridoCompraArgumento e)
        {
            try
            {
                var arg = new SugeridoCompraArgumento
                {
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    WarehouseXml = Xml.ConvertListToXml(_vista.Bodegas.Where(b => b.IS_SELECTED).ToList())
                    ,
                    MaterialXml = Xml.ConvertListToXml(_vista.Materiales.Where(m => m.IS_SELECTED).ToList())
                };

                _vista.SugeridoCompra = InventarioServicio.ObtenerSugeridoCompra(arg);
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.Mensaje(ex.Message);
            }
        }
        private void UiBotonEliminarInventario_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            InteraccionConUsuarioServicio.MostrarDialogoDeCargando();
            try
            {
                if (InventarioAsignadoAProyecto == null || InventarioAsignadoAProyecto.Where(m => m.IS_SELECTED).ToList().Count == 0)
                {
                    InteraccionConUsuarioServicio.MensajeErrorDialogo("Debe seleccionar el inventario a eliminar");
                    return;
                }

                foreach (var inventory in InventarioAsignadoAProyecto.Where(m => m.IS_SELECTED).ToList())
                {
                    if (inventory.RESERVED_PICKING > 0 || inventory.QTY_DISPATCHED > 0)
                    {
                        InteraccionConUsuarioServicio.MensajeErrorDialogo("No se puede realizar la acción, inventario despachado o reservado para picking.");
                        return;
                    }
                }

                if (ProyectoSeleccionado == null || ProyectoSeleccionado.ID == Guid.Empty)
                {
                    return;
                }
                UsuarioDeseaEliminarInventarioDeProyecto?.Invoke(null, new ProyectoArgumento
                {
                    Login        = InteraccionConUsuarioServicio.ObtenerUsuario(),
                    Proyecto     = ProyectoSeleccionado,
                    LicenciasXml = Xml.ConvertListToXml(InventarioAsignadoAProyecto.Where(m => m.IS_SELECTED).ToList())
                });
                UsuarioDeseaObtenerInventarioReservado?.Invoke(sender, new ProyectoArgumento {
                    Proyecto = ProyectoSeleccionado
                });
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.MensajeErrorDialogo(ex.Message);
            }
            InteraccionConUsuarioServicio.CerrarDialogoDeCargando();
        }
Ejemplo n.º 11
0
        private void _vista_UsuarioDeseaObtenerIdle(object sender, InventarioInactivoArgumento e)
        {
            try
            {
                var arg = new InventarioInactivoArgumento
                {
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    WarehouseXml = Xml.ConvertListToXml(_vista.Bodegas.Where(b => b.IS_SELECTED).ToList())
                    ,
                    ZoneXml = Xml.ConvertListToXml(_vista.Zonas.Where(z => z.IS_SELECTED).ToList())
                    ,
                    MaterialXml = Xml.ConvertListToXml(_vista.Materiales.Where(m => m.IS_SELECTED).ToList())
                };

                _vista.InventarioInactivo = InventarioServicio.ObtenerInventarioInactivo(arg);
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.Mensaje(ex.Message);
            }
        }
Ejemplo n.º 12
0
        private void _vista_UsuarioDeseaObtenerIndicesDeBodega(object sender, Argumentos.InventarioInactivoArgumento e)
        {
            try
            {
                var arg = new InventarioInactivoArgumento
                {
                    Login = InteraccionConUsuarioServicio.ObtenerUsuario()
                    ,
                    WarehouseXml = Xml.ConvertListToXml(_vista.Bodegas.Where(b => b.IS_SELECTED).ToList())
                    ,
                    ZoneXml = Xml.ConvertListToXml(new List <Zona>())
                    ,
                    MaterialXml = Xml.ConvertListToXml(_vista.Materiales.Where(m => m.IS_SELECTED).ToList())
                    ,
                    DateWarehouseIndices = e.DateWarehouseIndices
                };

                _vista.IndicesDeBodegas = IndiceBodegaServicio.ObtenerIndicesBodegas(arg);
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.Mensaje(ex.Message);
            }
        }