Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/interezante456-pixel/proyecto-dise-o/llms.txt

Use this file to discover all available pages before exploring further.

Tienda MiCholo es una aplicación web de gestión para tiendas minoristas desarrollada con ASP.NET Core MVC y orientada al mercado peruano. Está pensada para dueños de tiendas y personal de ventas que necesitan administrar su inventario, registrar ventas, controlar proveedores y hacer seguimiento de sus resultados comerciales desde un único panel, sin instalar software adicional. Construida sobre .NET 10 con Entity Framework Core y SQL Server como base de datos relacional, la plataforma ofrece un entorno seguro, con autenticación y control de acceso por roles incorporado mediante ASP.NET Identity.

Características del sistema

Tienda MiCholo organiza toda la operación de una tienda minorista en cuatro módulos principales, accesibles desde la barra de navegación según el rol del usuario.

Gestión de Inventario

Registra, edita y elimina productos con código, nombre, categoría, precio y stock. El catálogo inicial se importa automáticamente desde productos.json al primer arranque.

Punto de Venta (POS)

Permite al personal registrar ventas completas con múltiples líneas de detalle, selección de tipo de comprobante (boleta o factura) y actualización automática del stock.

Control de Proveedores

Administra el directorio de proveedores con razón social, RUC y teléfono. Cada producto queda vinculado a su proveedor correspondiente en la base de datos.

Panel de Reportes

Muestra el total de ventas del día y un gráfico de los últimos 7 días directamente en el dashboard principal (/Home/Index), facilitando el seguimiento del rendimiento diario.

Roles de usuario

El sistema tiene dos roles integrados que se crean automáticamente al iniciar la aplicación por primera vez. El acceso a cada módulo está restringido por rol mediante atributos de autorización en los controladores.
RolAcceso
AdminAcceso completo: gestionar productos, proveedores y usuarios, registrar ventas y visualizar reportes en el dashboard.
VendedorAcceso restringido: consultar el listado de productos y registrar nuevas ventas. No tiene acceso a la administración de proveedores ni al panel de reportes.
Si un usuario sin sesión activa intenta acceder a cualquier ruta protegida, el sistema lo redirige automáticamente a /Account/Login. Los accesos denegados por rol se redirigen a /Account/AccessDenied.

Arquitectura

Tienda MiCholo sigue el patrón MVC (Model-View-Controller) propio de ASP.NET Core. La lógica de negocio reside en los controladores del namespace TiendaMiCholo, las vistas usan Razor (.cshtml) y los modelos representan las entidades de dominio: Producto, Proveedor, Venta y DetalleVenta. La capa de datos está implementada con Entity Framework Core a través de AppDbContext, que extiende IdentityDbContext<IdentityUser> para integrar las tablas de ASP.NET Identity (usuarios, roles y claims) en la misma base de datos SQL Server. Las relaciones clave son:
  • Un Producto pertenece a un Proveedor (FK Proveedor_ID, eliminación restringida).
  • Una Venta contiene uno o más registros DetalleVenta (eliminación en cascada).
  • Cada DetalleVenta referencia un Producto (eliminación restringida).
La autenticación y autorización se gestionan con ASP.NET Core Identity, configurado con políticas de contraseña relajadas para facilitar el desarrollo local.

Stack tecnológico

Los paquetes NuGet principales declarados en TiendaMiCholo.csproj son:
PaqueteVersiónPropósito
Microsoft.AspNetCore.Identity.EntityFrameworkCore10.0.9Integración de Identity con EF Core
Microsoft.EntityFrameworkCore10.0.9ORM base
Microsoft.EntityFrameworkCore.SqlServer10.0.9Proveedor de base de datos SQL Server
Microsoft.EntityFrameworkCore.Design10.0.9Herramientas de diseño para migraciones (desarrollo)
Microsoft.EntityFrameworkCore.Tools10.0.9CLI de EF Core para dotnet ef (desarrollo)
El proyecto apunta a net10.0 con Nullable e ImplicitUsings habilitados, siguiendo las convenciones modernas de C#.
¿Listo para tener la aplicación corriendo en tu máquina? Sigue la guía de Inicio Rápido para clonar el repositorio, aplicar las migraciones e iniciar sesión en menos de 10 minutos.

Build docs developers (and LLMs) love