Projet

Général

Profil

0002-contrib.teamnet_axel-invoice-details-endpoint-8035.patch

Serghei Mihai, 18 septembre 2015 16:32

Télécharger (3,3 ko)

Voir les différences:

Subject: [PATCH 2/2] contrib.teamnet_axel: invoice details endpoint (#8035)

 .../templates/passerelle/contrib/teamnet_axel/detail.html   |  9 +++++++++
 passerelle/contrib/teamnet_axel/urls.py                     |  4 ++--
 passerelle/contrib/teamnet_axel/views.py                    | 13 +++++++++++++
 3 files changed, 24 insertions(+), 2 deletions(-)
passerelle/contrib/teamnet_axel/templates/passerelle/contrib/teamnet_axel/detail.html
49 49
    {{ site_base_uri }}{{ invoices_url }}?NameID=...
50 50
  </a> <em>42</em> {% trans 'is regie identifier' %}
51 51
</li>
52
<li>{% trans 'Show invoice details:' %}
53
  {% url 'teamnet-axel-invoice' slug=object.slug regie_id='42' invoice_id='2345-20150916' as invoice_details_url %}
54
  <a href="{{ invoice_details_url }}">
55
    {{ site_base_uri }}{{ invoice_details_url }}
56
  </a>
57
  <em>42</em> {% trans 'is regie identifier' %},
58
  <em>2345</em> {% trans 'is family identifier' %},
59
  <em>20150916</em> {% trans 'is invoice identifier' %}
60
</li>
52 61
</ul>
53 62
</div>
54 63

  
passerelle/contrib/teamnet_axel/urls.py
39 39
       name='teamnet-axel-invoices-history'),
40 40
    url(r'^(?P<slug>[\w,-]+)/regie/(?P<regie_id>[\w,-]+)/invoices/$', InvoicesView.as_view(),
41 41
       name='teamnet-axel-invoices'),
42
    #url(r'^(?P<slug>[\w,-]+)/invoice/(?P<id>[\w,-]+)/$', InvoiceView.as_view(),
43
    #    name='teamnet-axel-invoice'),
42
    url(r'^(?P<slug>[\w,-]+)/regie/(?P<regie_id>[\w,-]+)/invoice/(?P<invoice_id>[\w,-]+)/$', InvoiceView.as_view(),
43
        name='teamnet-axel-invoice'),
44 44
    #url(r'^(?P<slug>[\w,-]+)/invoice-pdf/(?P<id>[\w,-]+)/$', InvoicePDFView.as_view(),
45 45
    #    name='teamnet-axel-unlink'),
46 46
    #url(r'^(?P<slug>[\w,-]+)/invoice-paid/(?P<id>[\w,-]+)/$', InvoicePayView.as_view(),
passerelle/contrib/teamnet_axel/views.py
151 151
        # exclude the active invoices from the past ones
152 152
        active = self.object.get_invoices(regie_id, family_id)
153 153
        return [p for p in past if p not in active]
154

  
155

  
156
class InvoiceView(DetailView):
157

  
158
    def get_data(self, request, *args, **kwargs):
159
        family_id, invoice_id = kwargs['invoice_id'].split('-', 1)
160

  
161
        # get invoices history and pick the one matching invoice_id
162
        invoices = self.object.get_invoices(kwargs['regie_id'], family_id,
163
                                             months=12)
164
        for invoice in invoices:
165
            if invoice['id'] == kwargs['invoice_id']:
166
                return invoice
154
-