Projet

Général

Profil

Development #45670

lingo : faire qu'une régie distance puisse utiliser une source "fiches" de wcs

Ajouté par Thomas Noël il y a plus de 3 ans. Mis à jour il y a 10 mois.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
01 août 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Soit un modèle de fiche dans w.c.s. qui corresponde à des factures :
  • id: identifiant (référence technique)
  • created: date de création
  • pay_limit_date: date limite de paiement (date+heure)
  • display_id: réference à afficher
  • total_amount: montant total
  • amout : montant
  • amount_paid : montant payé
  • subject
  • has_pdf (ou champ pdf)
  • online_payment : payable en ligne
  • payment_date : date du paiement (date+heure)
  • no_online_payment_reason : raison qui interdit le paiement en ligne
  • reference_id

Des champs seraient optionnels, cf RemoteItems et build_remote_item.

On pourrait faire en sorte que lingo puisse utiliser ces fiches comme source pour une régie distante.

Il faudrait :
  • définir la structure de base attendue pour une fiche, et adapter build_remote_item en fonction
  • prévoir un workflow de base pour ce genre de fiche, principalement avec des trigger "pay" (et peut-être "cancel" ou autre)
  • à côté de webservice_url, permettre qu'une régie définisse des URLs spécifiques pour :
    • invoices_url : la liste des facture (actuellement self.webservice_url + '/invoices/') => list wcs avec full=on
    • invoice_url : récupérer une facture selon son id (actuellement self.webservice_url + '/invoice/%s/' % invoice_id) => recherche d'une fiche avec ?filter-xxx=id
    • récupérer le PDF d'une facture => adhoc
    • pay_url : POST quand on paye une facture (actuellement self.webservice_url + '/invoice/%s/pay/' % invoice_id) => sera un trigger wcs
    • pending_url : liste des user ayant une facture à payer (pour notification)

Historique

#1

Mis à jour par Thomas Noël il y a plus de 3 ans

Je vois plusieurs façons de faire le code :
  • soit ajouter un d'un flag "wcs_carddef" à côté de webservice_url, qui indique que la régie doit utiliser les webservices des fiches de wcs
    • ou bien autoriser une URL de la forme « carddef:slug-de-la-carddef » et bascule en mode "wcs_carddef"
  • soit magiquement voir que l'URL est de type wcs/api/cards et dans ce cas basculer en mode "wcs_carddef"
  • soit permettre de configurer toutes les URLs comme j'ai proposé dans la description (c'est lourd et à documenter obligatoirement)

La première solution me semble la plus claire au niveau du code, et de la compréhension lors de la config par l'admin fonctionnel. Pas de magie.

#2

Mis à jour par Benjamin Dauvergne il y a plus de 3 ans

  • Sujet changé de faire qu'une régie distance puisse utiliser une source "fiches" de wcs à lingo : faire qu'une régie distance puisse utiliser une source "fiches" de wcs

C'est une bonne occasion de faire du rayonnement, on peut avoir toute sorte d'options dans le modèle mais dans l'interface seulement affiché une liste des types d e fiche qui matchent le schéma attendu (genre si on a un champ amount, un champ subject et un trigger paid ça suffit) pas besoin d'exposer la technique dans l'interface, juste ça marche.

#3

Mis à jour par Frédéric Péters il y a 10 mois

  • Statut changé de Nouveau à Fermé

Le plan est désormais une brique lingo dédiée.

Formats disponibles : Atom PDF