示例#1
0
        public ActionResult ExportarItems()
        {
            EmpresaDTO objEmpresa = (new EmpresaBL()).getEmpresa(getCurrentUser().IdEmpresa);

            ItemBL objBL = new ItemBL();
            List<ItemDTO> lista = objBL.getItemsEnEmpresa(getCurrentUser().IdEmpresa);

            System.Data.DataTable dt = new System.Data.DataTable();
            dt.Clear();

            dt.Columns.Add("Nombre");
            dt.Columns.Add("Código");
            dt.Columns.Add("Descripción");
            dt.Columns.Add("Unidad de Medida");
            dt.Columns.Add("Categoría");
            dt.Columns.Add("Moneda");
            dt.Columns.Add("Precio");
            dt.Columns.Add("Estado");

            foreach (var item in lista)
            {
                System.Data.DataRow row = dt.NewRow();
                row["Nombre"] = item.Nombre;
                row["Código"] = item.Codigo;
                row["Descripción"] = item.Descripcion;
                row["Unidad de Medida"] = item.UnidadMedida;
                row["Categoría"] = item.nCategoriaItem;
                row["Moneda"] = item.nMoneda;
                row["Precio"] = item.Precio.GetValueOrDefault().ToString("N2", CultureInfo.InvariantCulture);
                row["Estado"] = item.Estado ? "Activo" : "Inactivo";
                dt.Rows.Add(row);
            }
            
            GenerarPdf5(dt, "Detalle de Items", "Detalle_de_Items", objEmpresa, Response);

            createResponseMessage(CONSTANTES.SUCCESS, CONSTANTES.SUCCESS_FILE);
            return RedirectToAction("Items", "Admin");
        }
示例#2
0
        public ActionResult ReportesInventarios(int? message = null)
        {
            if (!this.currentUser()) { return RedirectToAction("Ingresar"); }

            //if (getCurrentUser().IdRol == 3) { return RedirectToAction("Ingresar"); }

            ViewBag.Title = "Reportes de Inventarios";
            MenuNavBarSelected(1, 2);

            ItemBL objBL = new ItemBL();
            ViewBag.lstItems = objBL.getItemsEnEmpresa(getCurrentUser().IdEmpresa);

            if (message != null)
            {
                switch (message)
                {
                    case 1:
                        createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_MESSAGE);
                        break;
                    case 2:
                        createResponseMessage(CONSTANTES.ERROR, CONSTANTES.ERROR_REPORTE_NO_MOVS);
                        break;
                }
            }

            return View();
        }
示例#3
0
        public ActionResult GenerarRep_Inventarios(DateTime? FechaInicio, DateTime? FechaFin)
        {
            if (FechaInicio == null || FechaFin == null)
            {
                return RedirectToAction("ReportesInventarios", new { message = 1 });
            }

            EmpresaDTO objEmpresa = (new EmpresaBL()).getEmpresa(getCurrentUser().IdEmpresa);

            ItemBL itemBL = new ItemBL();
            List<ItemDTO> lstItems = itemBL.getItemsEnEmpresa(objEmpresa.IdEmpresa);

            Reportes_InventariosBL repBL = new Reportes_InventariosBL();
            List<MovimientoInvDTO> lstInventarios = repBL.Get_Reporte_De_Inventarios(objEmpresa.IdEmpresa, FechaInicio.GetValueOrDefault(), FechaFin.GetValueOrDefault());

            if (lstInventarios == null)
                return RedirectToAction("ReportesInventarios", new { message = 2 });

            System.Data.DataTable dt = new System.Data.DataTable();
            dt.Clear();

            dt.Columns.Add("Código");
            dt.Columns.Add("Item");
            dt.Columns.Add("Fecha");
            dt.Columns.Add("Movimiento");
            dt.Columns.Add("Tipo");
            dt.Columns.Add("Numero Documento");
            dt.Columns.Add("Guia de Remision");
            dt.Columns.Add("Entidad");
            dt.Columns.Add("Categoría");
            dt.Columns.Add("Cantidad");
            dt.Columns.Add("Unid Med");
            dt.Columns.Add("Ubicacion");
            dt.Columns.Add("Lote");
            dt.Columns.Add("Stock por Lote");
            dt.Columns.Add("Stock por Item");
            dt.Columns.Add("Vencimiento");
            dt.Columns.Add("Comentario");
            dt.Columns.Add("Usuario");

            foreach (var item in lstItems)
            {
                DataRow row = dt.NewRow();
                row["Código"] = item.Codigo;
                row["Item"] = item.Nombre;
                dt.Rows.Add(row);

                List<MovimientoInvDTO> movsItm = lstInventarios.Where(x => x.nItemCodigo == item.Codigo).ToList();
                foreach (var mov in movsItm)
                {
                    DataRow row1 = dt.NewRow();
                    row1["Fecha"] = mov.FechaInicial.ToString("dd/MMM/yyyy", CultureInfo.CreateSpecificCulture("en-GB"));
                    //row1["Movimiento"] = mov.IdTipoMovimientoInv == 1 ? "Ingreso" : "Egreso";
                    row1["Movimiento"] = mov.nTipo;
                    row1["Tipo"] = mov.nForma;
                    row1["Numero Documento"] = mov.NroDocumento;
                    row1["Guia de Remision"] = mov.GuiaRemision;
                    row1["Entidad"] = mov.nEntidadResponsable;
                    row1["Categoría"] = mov.nCategoria;
                    row1["Cantidad"] = mov.Cantidad;
                    row1["Unid Med"] = mov.UnidadMedida;
                    row1["Ubicacion"] = mov.nUbicacion;
                    row1["Lote"] = mov.SerieLote;
                    row1["Stock por Lote"] = mov.StockLote;
                    row1["Stock por Item"] = mov.SaldoItem;
                    row1["Vencimiento"] = mov.FechaFin != null ? mov.FechaFin.GetValueOrDefault().ToString("dd/MMM/yyyy", CultureInfo.CreateSpecificCulture("en-GB")) : "-";
                    row1["Comentario"] = mov.Comentario;
                    row1["Usuario"] = mov.nUsuario;
                    dt.Rows.Add(row1);
                }
            }

            /*foreach (var obj in lstInventarios)
            {
                DataRow row = dt.NewRow();
                row["Código"] = obj.nItemCodigo;
                row["Item"] = obj.nItem;
                row["Categoría"] = obj.nCategoria;
                row["Lote"] = obj.SerieLote;
                row["Vencimiento"] = obj.FechaFin != null ? obj.FechaFin.GetValueOrDefault().ToString("dd/MMM/yyyy", CultureInfo.CreateSpecificCulture("en-GB")) : "-";
                row["Stock por Lote"] = obj.StockLote;
                row["Saldo Por Item"] = obj.SaldoItem;
                row["Ubicación"] = obj.nUbicacion;
                dt.Rows.Add(row);
            }*/

            GenerarPdf4(dt, "Movimientos de todos los items", "MovimientosDeTodosLosItems", objEmpresa, FechaInicio, FechaFin, Response);

            return RedirectToAction("ReportesInventarios", new { message = 2 });
        }
示例#4
0
        public ActionResult Items(bool inactivos = false)
        {
            if (!this.currentUser()) { return RedirectToAction("Ingresar"); }
            if (!isAdministrator()) { return RedirectToAction("Index"); }
            ViewBag.Title = "Items";
            MenuNavBarSelected(10, 0);
            UsuarioDTO user = getCurrentUser();

            ItemBL objBL = new ItemBL();
            List<ItemDTO> listaItems = new List<ItemDTO>();

            ViewBag.vbInactivos = inactivos;

            if (user.IdEmpresa > 0)
            {
                if (!inactivos)
                { listaItems = objBL.getItemsActivosEnEmpresa(user.IdEmpresa); }
                else
                { listaItems = objBL.getItemsEnEmpresa(user.IdEmpresa); }
            }
            return View(listaItems);
        }