Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tomiban/hotel-management-system-tp
Aplicación de gestión de reservas de hotel desarrollada en C# .NET utilizando WinForms.
https://github.com/tomiban/hotel-management-system-tp
csharp desktop dotnet winforms
Last synced: 13 days ago
JSON representation
Aplicación de gestión de reservas de hotel desarrollada en C# .NET utilizando WinForms.
- Host: GitHub
- URL: https://github.com/tomiban/hotel-management-system-tp
- Owner: tomiban
- Created: 2024-06-12T00:05:44.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-10-08T20:25:05.000Z (about 1 month ago)
- Last Synced: 2024-11-07T08:02:55.757Z (13 days ago)
- Topics: csharp, desktop, dotnet, winforms
- Language: C#
- Homepage:
- Size: 836 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🏨 Sistema de Gestión de Hoteles
[![.NET](https://img.shields.io/badge/.NET-Core-blue)](https://dotnet.microsoft.com/)
![C#](https://img.shields.io/badge/C%23-Programming%20Language-purple)
![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)## 📄 Descripción
El **Sistema de Gestión de Hoteles** es una aplicación que facilita la gestión diaria de un hotel, permitiendo manejar reservas, administrar clientes y gestionar habitaciones de manera eficiente. A diferencia de las soluciones tradicionales, utiliza archivos binarios en lugar de bases de datos relacionales para almacenar la información.
Este proyecto fue desarrollado como parte del **Trabajo Práctico Final** para la asignatura **Programación I** bajo la supervisión del docente [@franyack](https://github.com/franyack).
## ✨ Características
- 📅 **Gestión de reservas:** Realiza, modifica y cancela reservas.
- 🛏️ **Administración de habitaciones:** Controla la disponibilidad y ocupación de habitaciones.
- 👥 **Registro de clientes:** Guarda y gestiona la información de los clientes.
- 💾 **Almacenamiento binario:** Los datos se guardan en archivos binarios, eliminando la necesidad de una base de datos externa.## 🛠️ Tecnologías utilizadas
- **Lenguaje:** ![C#](https://img.shields.io/badge/C%23-Programming%20Language-purple)
- **Framework:** ![.NET](https://img.shields.io/badge/.NET-Core-blue)
- **Almacenamiento:** Archivos binarios### 📦 Paquetes
- **[MemoryPack](https://github.com/Cysharp/MemoryPack):** Utilizado para serializar y deserializar los datos en archivos binarios de manera eficiente.
- **[Unity](https://github.com/unitycontainer/unity):** Para la gestión de dependencias entre componentes del sistema, mejorando la flexibilidad y mantenibilidad del código al permitir la inversión de control (IoC)- **[MaterialSkin2](https://github.com/IgnaceMaes/MaterialSkin):** Mejora la interfaz de usuario de los formularios de winform con un diseño moderno y atractivo basado en Material Design.
## 📑 Guía del Trabajo Práctico
Este proyecto fue desarrollado conforme a las consignas del **Trabajo Práctico Final** para la asignatura **Programación I**:
### 🎯 Objetivo
El objetivo principal fue aplicar los conocimientos adquiridos para desarrollar un sistema completo de software, desde su diseño hasta su implementación.
### 🔧 Consignas principales
1. **Login de usuario:** Sistema de login para validación de usuarios.
2. **Gestión de reservas de habitaciones:**
- Los **administradores** pueden añadir, borrar y modificar habitaciones.
- Los **huéspedes** pueden buscar habitaciones, ver detalles y realizar reservas.### 💡 Consideraciones
- Interfaz gráfica intuitiva y amigable.
- Mecanismos de control de errores.
- Diseño y presentación creativa de la aplicación.### 📝 Entregables
- Código fuente organizado y documentado.
- Presentación que detalle el proceso de desarrollo, desafíos y aprendizajes.## 🖼️ Capturas de Pantalla
### Pantalla de Login
![Pantalla de inicio](./Assets/login.png)### Pantalla de Registro
![Pantalla de inicio](./Assets/registro.png)### Pantalla de Administrador
![Pantalla de inicio](./Assets/habitaciones-admin.png)### Pantalla de Cliente
![Gestión de reservas](./Assets/habitaciones-cliente.png)## 🚀 Instalación
### Requisitos previos
- **.NET Core SDK**: Instalar el [.NET SDK](https://dotnet.microsoft.com/download).
### Pasos
1. **Clonar el repositorio:**
```bash
git clone https://github.com/tomiban/Hotel-Management-System-TP.git
```2. **Navegar al directorio del proyecto:**
```bash
cd Hotel-Management-System-TP/src/Presentation
```3. **Ejecutar la aplicación:**
```bash
dotnet run
```4. La aplicación se iniciará y podrás interactuar con la interfaz gráfica para gestionar el hotel.
### 📂 Almacenamiento de Datos
- Los datos se guardan en archivos binarios en la carpeta `data/`.
## 🤝 Contribuciones
¡Las contribuciones son bienvenidas! Si deseas colaborar, abre un issue o envía un pull request.
## 👥 Alumnos
Este proyecto fue desarrollado en conjunto por:
- Tiziano Mendez ([@tmendezz](https://github.com/tmendezz))
- Tomás Banchio