first commit
This commit is contained in:
commit
e6c52820cd
227 changed files with 16156 additions and 0 deletions
90
main.py
Normal file
90
main.py
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
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()
|
||||
Loading…
Add table
Add a link
Reference in a new issue