- Implemented test scripts for vTiger account retrieval, contact data, and modules. - Created a detailed test suite for the ticket module, covering database schema validation, ticket number generation, prepaid card constraints, and service logic. - Added tests for vTiger field inspection and various queries related to accounts and sales orders. - Introduced SQL migration scripts for the ALSO Cloud Billing foundation, including import jobs, lines, and mapping tables with necessary constraints and indices. - Enhanced workflow columns in the import lines table to support matching and validation timestamps. |
||
|---|---|---|
| .. | ||
| # GitHub Copilot Instructions - BMC Webs.prompt.md | ||
| BACKUP_RESTORE_TEST_PLAN.md | ||
| DEPLOYMENT_CHECKLIST.md | ||
| DEVELOPMENT.md | ||
| LOCATION_MODULE_IMPLEMENTATION_COMPLETE.md | ||
| MIGRATION_GUIDE_v2.0.0.md | ||
| NEXTCLOUD_MODULE_PLAN.md | ||
| PHASE_3_TASK_3_1_COMPLETE.md | ||
| PRODUCTION_DEPLOYMENT.md | ||
| PRODUCTION_QUICK_START.md | ||
| QUICK_UPDATE.md | ||
| README.md | ||
| RELEASE_NOTES_v1.0.0.md | ||
| RELEASE_NOTES_v1.3.5.md | ||
| RELEASE_NOTES_v1.3.75.md | ||
| RELEASE_NOTES_v1.3.76.md | ||
| RELEASE_NOTES_v1.3.84.md | ||
| RELEASE_NOTES_v2.0.0.md | ||
| RELEASE_NOTES_v2.0.1.md | ||
| RELEASE_NOTES_v2.0.2.md | ||
| RELEASE_NOTES_v2.0.3.md | ||
| RELEASE_NOTES_v2.0.4.md | ||
| RELEASE_NOTES_v2.0.5.md | ||
| RELEASE_NOTES_v2.0.6.md | ||
| RELEASE_NOTES_v2.1.0.md | ||
| RELEASE_NOTES_v2.1.1.md | ||
| RELEASE_NOTES_v2.2.2.md | ||
| RELEASE_NOTES_v2.2.3.md | ||
| RELEASE_NOTES_v2.2.36.md | ||
| RELEASE_NOTES_v2.2.39.md | ||
| RELEASE_NOTES_v2.2.40.md | ||
| RELEASE_NOTES_v2.2.41.md | ||
| RELEASE_NOTES_v2.2.42.md | ||
| RELEASE_NOTES_v2.2.43.md | ||
| RELEASE_NOTES_v2.2.44.md | ||
| RELEASE_NOTES_v2.2.45.md | ||
| RELEASE_NOTES_v2.2.46.md | ||
| RELEASE_NOTES_v2.2.47.md | ||
| RELEASE_NOTES_v2.2.48.md | ||
| RELEASE_NOTES_v2.2.49.md | ||
| RELEASE_NOTES_v2.2.50.md | ||
| RELEASE_NOTES_v2.2.51.md | ||
| RELEASE_NOTES_v2.2.52.md | ||
| RELEASE_NOTES_v2.2.53.md | ||
| RELEASE_NOTES_v2.2.54.md | ||
| RELEASE_NOTES_v2.2.56.md | ||
| RELEASE_NOTES_v2.2.57.md | ||
| RELEASE_NOTES_v2.2.58.md | ||
| RELEASE_NOTES_v2.2.59.md | ||
| RELEASE_NOTES_v2.2.60.md | ||
| RELEASE_NOTES_v2.2.61.md | ||
| RELEASE_NOTES_v2.2.62.md | ||
| RELEASE_NOTES_v2.2.63.md | ||
| RELEASE_NOTES_v2.2.64.md | ||
| RELEASE_NOTES_v2.2.81.md | ||
| RELEASE_NOTES_v2.2.82.md | ||
| RELEASE_NOTES_v2.2.83.md | ||
| RELEASE_NOTES_v2.2.84.md | ||
| RELEASE_NOTES_v2.2.85.md | ||
| RELEASE_NOTES_v2.2.86.md | ||
| RELEASE_NOTES_v2.2.87.md | ||
| RELEASE_NOTES_v2.3.1.md | ||
| RELEASE_NOTES_v2.3.2.md | ||
| RELEASE_NOTES_v2.3.3.md | ||
| RELEASE_NOTES_v2.3.4.md | ||
| RELEASE_NOTES_v2.3.5.md | ||
| RELEASE_NOTES_v2.3.6.md | ||
| RELEASE_NOTES_v2.3.7.md | ||
| RELEASE_NOTES_v2.3.8.md | ||
| RELEASE_NOTES_v2.3.md | ||
| REMINDER_SYSTEM_IMPLEMENTATION.md | ||
| REMINDER_SYSTEM_QUICKSTART.md | ||
| SAG_MODULE_COMPLETION_REPORT.md | ||
| SAG_MODULE_IMPLEMENTATION_PLAN.md | ||
| SAG_MODULE_PLAN.md | ||
| SALES_AND_AGGREGATION_PLAN.md | ||
| SERVICE_CONTRACT_WIZARD_README.md | ||
| TEMPLATE_IMPLEMENTATION_SUMMARY.md | ||
| TEMPLATES_FINAL_VERIFICATION.md | ||
| TEMPLATES_QUICK_REFERENCE.md | ||
BMC Hub 🚀
Et centralt management system til BMC Networks - håndterer kunder, services, hardware og billing.
Baseret på OmniSync arkitektur med Python + PostgreSQL
🌟 Features
- Customer Management: Komplet kundedatabase med CRM integration
- Hardware Tracking: Registrering og sporing af kundeudstyr
- Service Management: Håndtering af services og abonnementer
- Billing Integration: Automatisk fakturering via e-conomic
- REST API: FastAPI med OpenAPI dokumentation
- Web UI: Responsive Bootstrap 5 interface
- PostgreSQL: Production-ready database
- Docker: Container deployment med version control
📚 Quick Start
Lokal Udvikling
# 1. Clone repository
git clone git@g.bmcnetworks.dk:ct/bmc_hub.git
cd bmc_hub
# 2. Kopier og rediger .env
cp .env.example .env
nano .env # Tilføj dine credentials
# 3. Start med Docker Compose
docker-compose up -d
# 4. Åbn browser
open http://localhost:8001/api/docs # API docs
open http://localhost:8001 # Web UI
Standard ports (for at undgå konflikter):
- API:
8001(mapped til container port 8000) - PostgreSQL:
5433(mapped til container port 5432)
Note: Auto-reload er deaktiveret som standard for at undgå log spam. Når du ændrer kode, skal du genstarte containeren:
docker-compose restart api
Hvis du ønsker live reload (med potentiel log spam), sæt ENABLE_RELOAD=true i .env.
Live Deployment
# På serveren
cd /opt
git clone git@g.bmcnetworks.dk:ct/bmc_hub.git
cd bmc_hub
# Setup environment
cp .env.prod.example .env
nano .env # Udfyld credentials og version tag
# Deploy
docker-compose -f docker-compose.prod.yml up -d
🛠️ Deployment Commands
Lokal Development
docker-compose up -d # Start systemet
docker-compose logs -f # Se logs
docker-compose down # Stop systemet
Production
docker-compose -f docker-compose.prod.yml up -d # Start
docker-compose -f docker-compose.prod.yml pull # Update til ny version
docker-compose -f docker-compose.prod.yml restart # Restart
📋 Krav
Development
- Docker Desktop eller Podman
- Git
Production
- Docker eller Podman
- PostgreSQL (via container)
- Nginx reverse proxy
- SSL certifikat
🏗️ Projekt Struktur
bmc_hub/
├── app/
│ ├── core/
│ │ ├── config.py # Konfiguration
│ │ └── database.py # PostgreSQL helpers
│ ├── models/
│ │ └── schemas.py # Pydantic models
│ ├── routers/
│ │ ├── customers.py # Customer CRUD
│ │ ├── hardware.py # Hardware management
│ │ └── billing.py # Billing endpoints
│ ├── services/
│ │ └── economic.py # e-conomic integration
│ └── jobs/
│ └── sync_job.py # Scheduled jobs
├── static/
│ └── index.html # Dashboard UI
├── migrations/ # Database migrations
├── docker-compose.yml # Local development
├── docker-compose.prod.yml # Production deployment
├── Dockerfile # Docker image
├── requirements.txt # Python dependencies
├── .env.example # Environment template (local)
├── .env.prod.example # Environment template (production)
└── main.py # FastAPI application
🔌 API Endpoints
GET /api/v1/customers- List customersGET /api/v1/hardware- List hardwareGET /api/v1/billing/invoices- List invoicesGET /health- Health check
Se fuld dokumentation: http://localhost:8000/api/docs
🧪 Testing
# Install test dependencies
pip install pytest pytest-cov
# Run tests
pytest
# Run with coverage
pytest --cov=app
📄 License
MIT License
📞 Support
- Issues: Gitea Issues
- Dokumentation:
/api/docs - Email: support@bmcnetworks.dk
Made with ❤️ by BMC Networks