SuiteConsultance/main.py
2025-09-20 13:18:04 +02:00

90 lines
No EOL
3.3 KiB
Python

from core.form import Form
from core.generator import Generator
from modules.proposition.app import main as generate_proposal
from modules.devis.app import main as generate_quote
from modules.crm.cli import main as manage_crm
def fake_data():
"""
Fonction pour générer des données factices.
"""
print("Génération de données factices...")
# Données factices pour un client
fake_client_data = {
"client_name": "Fake Client",
"email": "fakeclient@example.com",
"telephone": "123456789",
"adresse": "123 Rue Imaginaire",
"project_name": "Projet de Test",
"project_type": "Développement Web",
"deadline": "06/09/2025",
"project_description": "Développement d'une application web pour la gestion de projet.",
"features": [
{"description": "Gestion des utilisateurs"},
{"description": "Tableau de bord"},
{"description": "Rapports personnalisés"}
],
"budget": "5000",
"payment_terms": "50% à la signature, 50% à la livraison",
"contact_info": "Contact principal : John Doe",
"additional_info": "Aucune information complémentaire.",
}
# Sauvegarder les données factices dans un fichier JSON
from core.data import Data
data_manager = Data("Data/clients/fake_client.json")
data_manager.save_data(fake_client_data)
generator = Generator(fake_client_data)
content = generator.generate_pdf("propositions")
print("\n✅ Proposition générée avec succès.")
print("Données factices générées avec succès.")
def display_title():
"""Affiche le titre de l'application"""
title = """
╔═══════════════════════════════════════════════════╗
║ SUITE CONSULTANCE ║
║ Gestion de cabinet de conseil ╚═══════════════════════════════════════════════════╝
"""
print(title)
def main():
# Boucle principale pour le menu
while True:
# Effacer l'écran pour une meilleure lisibilité
import os
os.system('cls' if os.name == 'nt' else 'clear')
display_title()
print("=== Menu Principal ===")
print("1. CRM - Gestion des clients")
print("2. Générer une proposition commerciale")
print("3. Générer un devis")
print("4. Générer des données de test")
print("5. Quitter")
choice = input("\nSélectionnez une option (1-5): ")
if choice == "1":
manage_crm()
elif choice == "2":
generate_proposal()
elif choice == "3":
generate_quote()
elif choice == "4":
fake_data()
elif choice == "5":
print("\nMerci d'avoir utilisé Suite Consultance. Au revoir!")
break
else:
print("\nChoix invalide, veuillez réessayer.")
# Pause avant de revenir au menu principal (sauf après certaines actions)
if choice not in ["1"]: # Le CRM a sa propre gestion de retour au menu
input("\nAppuyez sur Entrée pour revenir au menu principal...")
if __name__ == "__main__":
main()