Skip to content

Repository files navigation

🖥️ Cyber Control

Aplicación Android para la gestión de cabinas en cibers / locutorios de videojuegos.
Permite controlar en tiempo real el estado de cada PC, manejar distintos modos de cobro, registrar ventas y configurar el negocio desde el propio dispositivo.


📋 Descripción

Cyber Control es un sistema de punto de venta (POS) diseñado específicamente para dueños de cibercafés o salas de videojuegos que alquilan equipos por tiempo. Con una interfaz moderna basada en Material Design 3 y Jetpack Compose, el propietario puede:

  • Ver el estado de todas las cabinas de un vistazo.
  • Iniciar, pausar y cerrar sesiones con un solo toque.
  • Cobrar por minuto transcurrido o con duraciones prepagadas fijas.
  • Agregar consumibles (gaseosas, galletas, etc.) durante la sesión.
  • Registrar el historial de ventas agrupado por fecha.
  • Configurar zonas de precio, productos y horario de cierre.

✨ Funcionalidades principales

🖥️ Gestión de cabinas

  • Soporte de 1 a 10+ cabinas (numeración configurable).
  • Estados visuales: Libre, Ocupado, Pausado y Tiempo agotado.
  • Indicador de progreso circular animado que muestra el tiempo restante en sesiones prepagadas.
  • Visualización del tiempo transcurrido, la hora de inicio y la hora estimada de fin.
  • Cálculo automático del costo en tiempo real.

💰 Modos de cobro

ModoDescripción
LibreSe cobra por el tiempo exacto utilizado (por minuto).
PrepagoEl cliente paga por adelantado una duración fija (15 min, 30 min, 1 hora o personalizado).

🏷️ Grupos de precio

  • Permite crear distintas zonas de precio (ej.: cabinas VIP, estándar).
  • Cada zona tiene su propia tarifa por hora y sus presets de duración.
  • Zona base "Básico" como respaldo predeterminado.

🛒 Extras / consumibles

  • Agrega productos al total de la sesión en cualquier momento.
  • Productos predefinidos o artículos personalizados con nombre y precio manual.

💳 Cobro y cierre de sesión

  • Resumen final con detalle de extras antes de cobrar.
  • Métodos de pago: Efectivo o Yape (pago móvil).
  • Al confirmar, la venta queda registrada automáticamente.

📊 Estadísticas de ventas

  • Historial agrupado por fecha (las más recientes primero).
  • Las ventas de hoy se destacan visualmente.
  • Desglose por método de pago: efectivo vs. Yape.
  • Muestra el rango horario de cada sesión.
  • Opción para borrar el historial.

⚙️ Configuración

  • Número de cabinas y esquema de numeración (0–9 ó 1–10).
  • Hora de cierre: aviso automático cuando quedan menos de 60 minutos.
  • Crear, editar y eliminar grupos de precio.
  • Gestionar los presets de duración de cada grupo.
  • Administrar el catálogo de productos disponibles.

🔔 Notificaciones

  • Notificación push de alta prioridad cuando el tiempo prepago de una cabina se agota.

🛠️ Tecnologías utilizadas

CategoríaTecnologíaVersión
LenguajeKotlin2.0.21
UIJetpack Compose + Material 3BOM 2024.09.00
TemasMaterial You (color dinámico Android 12+)
AlmacenamientoSharedPreferences + JSON
NotificacionesAndroidX NotificationCompat
BuildGradle8.13
SDK mínimoAndroid 11 (API 30)
SDK objetivoAPI 36
Java bytecodeJava 11

📦 Requisitos

  • Android 11 o superior (API nivel 30+).
  • Permiso POST_NOTIFICATIONS para recibir alertas de tiempo agotado.

🚀 Cómo compilar y ejecutar

  1. Clona el repositorio:
    git clone https://github.com/LeninAsto/Cyber-Control.git
  2. Ábrelo en Android Studio (versión compatible con Kotlin 2.0 y Compose).
  3. Deja que Gradle sincronice las dependencias.
  4. Conecta un dispositivo con Android 12+ o usa un emulador con la misma API.
  5. Pulsa Run ▶ para instalar y ejecutar la aplicación.

Nota: el archivo local.properties con la ruta del SDK se genera automáticamente por Android Studio y no está incluido en el repositorio.

Compilar con GitHub Actions

El workflow Build Android APKs compila la app en GitHub Actions con JDK 17 y Android SDK API 36. En cada push o pull_request ejecuta pruebas unitarias release y genera un APK release universal.

Para descargar el APK:

  1. Entra al repositorio en GitHub.
  2. Abre la pestaña Actions.
  3. Selecciona la ejecución más reciente de Build Android APKs.
  4. Baja el artifact app-universal-release para instalarlo sin elegir ABI manualmente.

📁 Estructura del proyecto

Cyber-Control/
├── app/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/com/leninasto/cybercontrol/
│ │ │ │ ├── MainActivity.kt # Lógica principal y toda la UI (Compose)
│ │ │ │ └── ui/theme/
│ │ │ │ ├── Color.kt # Paleta de colores Material 3
│ │ │ │ ├── Theme.kt # Tema dinámico (Android 12+)
│ │ │ │ └── Type.kt # Tipografía
│ │ │ ├── res/ # Recursos (iconos, strings, temas)
│ │ │ └── AndroidManifest.xml
│ │ ├── test/ # Pruebas unitarias
│ │ └── androidTest/ # Pruebas de instrumentación
│ └── build.gradle.kts
├── gradle/
│ └── libs.versions.toml # Catálogo centralizado de dependencias
├── build.gradle.kts
├── settings.gradle.kts
└── LICENSE # Apache License 2.0

📄 Licencia

Este proyecto está licenciado bajo la Apache License 2.0.
Consulta el archivo LICENSE para más detalles.


Desarrollado por LeninAsto 🚀

About

Una app hecha en MD3E par control de tiempo en cabinas de internet y/o cibercafes

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages