b3cc7e4ced
- Relation Distributeur/Courtier : libelles « Depend du distributeur/courtier », select optionnel ; le nom (distributeur ou courtier) devient requis quand la relation correspondante est choisie. - Categorie : au moins 1 obligatoire dans le formulaire principal (aligne sur Assert\Count(min:1) du back). - Bouton « Valider » de l'onglet Information desactive tant que le client n'est pas cree (l'onglet est actif par defaut) : evite tout PATCH premature. - Gestion d'erreur : les toasts d'erreur passent toujours une chaine (corrige un crash izitoast sur message undefined) et remontent le message de validation du serveur (violations 422) sur tous les onglets.
410 lines
16 KiB
JSON
410 lines
16 KiB
JSON
{
|
|
"common": {
|
|
"loading": "Chargement...",
|
|
"save": "Enregistrer",
|
|
"cancel": "Annuler",
|
|
"delete": "Supprimer",
|
|
"edit": "Modifier",
|
|
"create": "Creer",
|
|
"search": "Rechercher",
|
|
"confirm": "Confirmer",
|
|
"yes": "Oui",
|
|
"no": "Non",
|
|
"actions": "Actions"
|
|
},
|
|
"sidebar": {
|
|
"administration": {
|
|
"section": "Administration"
|
|
},
|
|
"account": {
|
|
"section": "Mon compte",
|
|
"dashboard": "Tableau de bord",
|
|
"logout": "Déconnexion"
|
|
},
|
|
"commercial": {
|
|
"section": "Commercial",
|
|
"clients": "Répertoire clients",
|
|
"suppliers": "Répertoire fournisseurs"
|
|
},
|
|
"core": {
|
|
"roles": "Gestion des rôles",
|
|
"users": "Utilisateurs",
|
|
"audit_log": "Journal d'audit"
|
|
},
|
|
"sites": {
|
|
"admin": "Sites"
|
|
},
|
|
"catalog": {
|
|
"categories": "Gestion des catégories"
|
|
}
|
|
},
|
|
"dashboard": {
|
|
"title": "Tableau de bord",
|
|
"welcome": "Bienvenue sur Starseed"
|
|
},
|
|
"commercial": {
|
|
"title": "Commercial",
|
|
"welcome": "Module Commercial",
|
|
"clients": {
|
|
"title": "Répertoire clients",
|
|
"add": "Ajouter",
|
|
"export": "Exporter",
|
|
"empty": "Aucun client pour l'instant.",
|
|
"column": {
|
|
"companyName": "Nom",
|
|
"categories": "Catégories",
|
|
"sites": "Site",
|
|
"lastActivity": "Dernière activité"
|
|
},
|
|
"filters": {
|
|
"title": "Filtres",
|
|
"search": "Recherche",
|
|
"categories": "Catégories",
|
|
"sites": "Sites",
|
|
"status": "Statut",
|
|
"archivedOnly": "Voir les archivés",
|
|
"apply": "Voir les résultats",
|
|
"reset": "Réinitialiser"
|
|
},
|
|
"tab": {
|
|
"information": "Information",
|
|
"contact": "Contact",
|
|
"address": "Adresse",
|
|
"transport": "Transport",
|
|
"accounting": "Comptabilité",
|
|
"statistics": "Statistiques",
|
|
"reports": "Rapports",
|
|
"exchanges": "Échanges"
|
|
},
|
|
"action": {
|
|
"edit": "Modifier",
|
|
"archive": "Archiver",
|
|
"restore": "Restaurer"
|
|
},
|
|
"toast": {
|
|
"createSuccess": "Client créé avec succès",
|
|
"updateSuccess": "Client mis à jour avec succès",
|
|
"archiveSuccess": "Client archivé avec succès",
|
|
"restoreSuccess": "Client restauré avec succès",
|
|
"error": "Une erreur est survenue. Réessayez.",
|
|
"exportError": "L'export du répertoire clients a échoué. Réessayez."
|
|
},
|
|
"validation": {
|
|
"informationRequiredForCommercial": "Les informations de l'entreprise sont obligatoires pour le rôle Commerciale.",
|
|
"contactRequired": "Au moins un contact (nom ou prénom) est obligatoire.",
|
|
"siteRequired": "Au moins un site Starseed doit être rattaché à l'adresse.",
|
|
"billingEmailRequired": "L'email de facturation est obligatoire pour une adresse de facturation.",
|
|
"bankRequiredForTransfer": "La banque est obligatoire pour un règlement par virement.",
|
|
"ribRequiredForLcr": "Au moins un RIB complet est obligatoire pour un règlement par LCR.",
|
|
"phoneFormat": "Format de téléphone invalide (attendu : XX XX XX XX XX).",
|
|
"emailFormat": "Format d'email invalide.",
|
|
"addressCategoryForbidden": "Une catégorie « Distributeur » ou « Courtier » ne peut pas qualifier une adresse."
|
|
},
|
|
"form": {
|
|
"title": "Ajouter un client",
|
|
"back": "Précédent",
|
|
"submit": "Valider",
|
|
"duplicateCompany": "Un client portant ce nom de société existe déjà.",
|
|
"main": {
|
|
"companyName": "Nom du client (Entreprise)",
|
|
"firstName": "Prénom du contact principal",
|
|
"lastName": "Nom du contact principal",
|
|
"email": "Email",
|
|
"phonePrimary": "Téléphone",
|
|
"phoneSecondary": "Téléphone (2)",
|
|
"addPhone": "Ajouter un numéro",
|
|
"categories": "Catégorie",
|
|
"relation": "Distributeur / Courtier",
|
|
"relationDistributor": "Dépend du distributeur",
|
|
"relationBroker": "Dépend du courtier",
|
|
"distributorName": "Nom du distributeur",
|
|
"brokerName": "Nom du courtier",
|
|
"triageService": "Prestation de triage"
|
|
},
|
|
"information": {
|
|
"description": "Description",
|
|
"competitors": "Concurrent",
|
|
"foundedAt": "Date de création",
|
|
"employeesCount": "Nombre de salariés",
|
|
"revenueAmount": "CA",
|
|
"profitAmount": "Résultat",
|
|
"directorName": "Dirigeant"
|
|
},
|
|
"contact": {
|
|
"title": "Contact {n}",
|
|
"lastName": "Nom",
|
|
"firstName": "Prénom",
|
|
"jobTitle": "Fonction",
|
|
"email": "Email",
|
|
"phonePrimary": "Téléphone",
|
|
"phoneSecondary": "Téléphone (2)",
|
|
"addPhone": "Ajouter un numéro",
|
|
"remove": "Supprimer le contact",
|
|
"add": "Nouveau contact"
|
|
},
|
|
"address": {
|
|
"title": "Adresse {n}",
|
|
"prospect": "Prospect",
|
|
"delivery": "Adresse de livraison",
|
|
"billing": "Facturation",
|
|
"categories": "Catégorie",
|
|
"country": "Pays",
|
|
"postalCode": "Code postal",
|
|
"city": "Ville",
|
|
"street": "Adresse",
|
|
"streetComplement": "Adresse complémentaire",
|
|
"sites": "Sites Starseed",
|
|
"contacts": "Contact(s) rattaché(s)",
|
|
"billingEmail": "Email de facturation",
|
|
"remove": "Supprimer l'adresse",
|
|
"add": "Nouvelle adresse",
|
|
"degraded": "Service d'adresse indisponible : saisie de la ville et de l'adresse en mode libre."
|
|
},
|
|
"accounting": {
|
|
"siren": "SIREN",
|
|
"accountNumber": "Numéro de compte",
|
|
"tvaMode": "Mode de TVA",
|
|
"nTva": "N° de TVA",
|
|
"paymentDelay": "Délai de règlement",
|
|
"paymentType": "Type de règlement",
|
|
"bank": "Banque",
|
|
"ribTitle": "RIB {n}",
|
|
"ribLabel": "Libellé",
|
|
"ribBic": "BIC",
|
|
"ribIban": "IBAN",
|
|
"addRib": "Ajouter un RIB",
|
|
"removeRib": "Supprimer le RIB"
|
|
},
|
|
"confirmDelete": {
|
|
"title": "Confirmer la suppression",
|
|
"contact": "Supprimer ce contact ?",
|
|
"address": "Supprimer cette adresse ?",
|
|
"rib": "Supprimer ce RIB ?",
|
|
"cancel": "Annuler",
|
|
"confirm": "Confirmer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"auth": {
|
|
"login": "Connexion",
|
|
"logout": "Deconnexion",
|
|
"username": "Nom d'utilisateur",
|
|
"password": "Mot de passe"
|
|
},
|
|
"errors": {
|
|
"auth": {
|
|
"login": "Identifiants invalides",
|
|
"session": "Session expirée",
|
|
"logout": "Erreur lors de la deconnexion"
|
|
},
|
|
"http": {
|
|
"get": "Erreur lors du chargement",
|
|
"post": "Erreur lors de la creation",
|
|
"put": "Erreur lors de la mise a jour",
|
|
"patch": "Erreur lors de la modification",
|
|
"delete": "Erreur lors de la suppression"
|
|
},
|
|
"sites": {
|
|
"notAuthorized": "Vous n'êtes pas autorisé à sélectionner ce site."
|
|
}
|
|
},
|
|
"sites": {
|
|
"selector": {
|
|
"ariaGroupLabel": "Sélecteur de site actif",
|
|
"switchSuccess": "Site courant changé"
|
|
}
|
|
},
|
|
"audit": {
|
|
"action": {
|
|
"create": "Création",
|
|
"update": "Modification",
|
|
"delete": "Suppression"
|
|
},
|
|
"entity": {
|
|
"core_user": "Utilisateur",
|
|
"core_role": "Rôle",
|
|
"core_permission": "Permission",
|
|
"sites_site": "Site"
|
|
},
|
|
"empty": "Aucune activité enregistrée",
|
|
"no_results": "Aucun résultat pour ces filtres",
|
|
"error": {
|
|
"title": "Erreur",
|
|
"message": "Impossible de charger le journal d'audit. Vérifiez les filtres ou réessayez."
|
|
},
|
|
"timeline": {
|
|
"empty": "Aucun historique",
|
|
"load_more": "Voir plus"
|
|
},
|
|
"filters": {
|
|
"title": "Filtres",
|
|
"apply": "Voir les résultats",
|
|
"reset": "Réinitialiser",
|
|
"date_range": "Date à date",
|
|
"date_from": "Du",
|
|
"date_to": "Au",
|
|
"entity_type": "Type d'entité",
|
|
"user": "Utilisateur",
|
|
"action": "Action",
|
|
"all_actions": "Toutes les actions"
|
|
},
|
|
"detail": {
|
|
"field": "Champ",
|
|
"old_value": "Ancienne valeur",
|
|
"new_value": "Nouvelle valeur"
|
|
},
|
|
"detail_title": "Détail de l'entrée"
|
|
},
|
|
"success": {
|
|
"auth": {
|
|
"logout": "Deconnexion reussie"
|
|
}
|
|
},
|
|
"admin": {
|
|
"roles": {
|
|
"title": "Gestion des rôles",
|
|
"newRole": "Nouveau rôle",
|
|
"editRole": "Modifier le rôle",
|
|
"createRole": "Créer un rôle",
|
|
"noRoles": "Aucun rôle configuré",
|
|
"table": {
|
|
"label": "Libellé",
|
|
"code": "Code",
|
|
"permissions": "Permissions",
|
|
"system": "Système"
|
|
},
|
|
"form": {
|
|
"label": "Libellé",
|
|
"code": "Code",
|
|
"description": "Description",
|
|
"permissions": "Permissions"
|
|
},
|
|
"delete": {
|
|
"title": "Supprimer le rôle",
|
|
"message": "Êtes-vous sûr de vouloir supprimer le rôle \"{label}\" ? Cette action est irréversible.",
|
|
"systemTooltip": "Rôle système non supprimable"
|
|
},
|
|
"toast": {
|
|
"created": "Rôle créé avec succès",
|
|
"updated": "Rôle mis à jour avec succès",
|
|
"deleted": "Rôle supprimé avec succès"
|
|
},
|
|
"permissions": {
|
|
"selectAll": "Tout selectionner",
|
|
"noPermissions": "Aucune permission disponible",
|
|
"loadFailed": "Impossible de charger le catalogue de permissions. L'enregistrement est désactivé pour éviter tout écrasement accidentel."
|
|
}
|
|
},
|
|
"users": {
|
|
"title": "Gestion des utilisateurs",
|
|
"noUsers": "Aucun utilisateur",
|
|
"table": {
|
|
"username": "Nom d'utilisateur",
|
|
"admin": "Administrateur",
|
|
"roles": "Roles",
|
|
"directPermissions": "Permissions directes",
|
|
"sites": "Sites"
|
|
},
|
|
"drawer": {
|
|
"title": "Permissions de {username}",
|
|
"selfWarning": "Vous modifiez vos propres droits",
|
|
"adminToggle": "Administrateur (bypass total)",
|
|
"rolesSection": "Rôles",
|
|
"directPermissionsSection": "Permissions directes",
|
|
"sitesSection": "Sites autorisés",
|
|
"summarySection": "Résumé des permissions effectives",
|
|
"noEffectivePermissions": "Aucune permission effective",
|
|
"sourceRole": "via {role}",
|
|
"sourceDirect": "Direct",
|
|
"lastAdminWarning": "Impossible de retirer le statut administrateur du dernier admin",
|
|
"loadFailed": "Impossible de charger les droits de cet utilisateur. L'enregistrement est désactivé pour éviter tout écrasement accidentel."
|
|
},
|
|
"toast": {
|
|
"updated": "Permissions mises à jour avec succès"
|
|
}
|
|
},
|
|
"auditLog": {
|
|
"title": "Journal d'audit",
|
|
"table": {
|
|
"performedAt": "Date",
|
|
"performedBy": "Utilisateur",
|
|
"entityType": "Entité",
|
|
"entityId": "ID",
|
|
"action": "Action",
|
|
"summary": "Résumé"
|
|
},
|
|
"pagination": {
|
|
"previous": "Précédent",
|
|
"next": "Suivant"
|
|
}
|
|
},
|
|
"sites": {
|
|
"title": "Gestion des sites",
|
|
"newSite": "Nouveau site",
|
|
"editSite": "Modifier le site",
|
|
"createSite": "Créer un site",
|
|
"noSites": "Aucun site configuré",
|
|
"table": {
|
|
"name": "Nom",
|
|
"city": "Ville",
|
|
"postalCode": "Code postal",
|
|
"color": "Couleur",
|
|
"fullAddress": "Adresse complète"
|
|
},
|
|
"form": {
|
|
"name": "Nom",
|
|
"street": "Rue",
|
|
"complement": "Complément d'adresse",
|
|
"complementPlaceholder": "Bâtiment, escalier, BP... (optionnel)",
|
|
"postalCode": "Code postal",
|
|
"city": "Ville",
|
|
"color": "Couleur (format #RRGGBB)",
|
|
"colorInvalid": "Format attendu : #RRGGBB (6 caractères hexadécimaux)"
|
|
},
|
|
"delete": {
|
|
"title": "Supprimer le site",
|
|
"message": "Êtes-vous sûr de vouloir supprimer le site \"{name}\" ? Cette action est irréversible et retirera ce site à tous les utilisateurs rattachés."
|
|
},
|
|
"toast": {
|
|
"created": "Site créé avec succès",
|
|
"updated": "Site mis à jour avec succès",
|
|
"deleted": "Site supprimé avec succès"
|
|
}
|
|
},
|
|
"categories": {
|
|
"title": "Gestion des catégories",
|
|
"newCategory": "Ajouter",
|
|
"editCategory": "Modifier la catégorie",
|
|
"createCategory": "Créer une catégorie",
|
|
"viewCategory": "Détail de la catégorie",
|
|
"noCategories": "Aucune catégorie pour l'instant.",
|
|
"table": {
|
|
"name": "Nom",
|
|
"type": "Type"
|
|
},
|
|
"form": {
|
|
"name": "Nom",
|
|
"type": "Type de catégorie",
|
|
"typePlaceholder": "Sélectionner un type"
|
|
},
|
|
"validation": {
|
|
"nameRequired": "Le nom est obligatoire.",
|
|
"nameLength": "Le nom doit faire entre 2 et 120 caractères.",
|
|
"typeRequired": "Le type de catégorie est obligatoire."
|
|
},
|
|
"delete": {
|
|
"title": "Supprimer la catégorie",
|
|
"message": "Êtes-vous sûr de vouloir supprimer la catégorie \"{name}\" ? Cette action est irréversible."
|
|
},
|
|
"toast": {
|
|
"created": "Catégorie créée avec succès",
|
|
"updated": "Catégorie mise à jour avec succès",
|
|
"deleted": "Catégorie supprimée avec succès",
|
|
"duplicate": "Une catégorie nommée « {name} » existe déjà pour ce type.",
|
|
"typesLoadFailed": "Impossible de charger les types de catégorie. Réessayez."
|
|
}
|
|
}
|
|
}
|
|
}
|