Parcourir la source

Add provisioning total on document detail

Jocelyn Delande il y a 9 ans
Parent
commit
c39a5d040d
2 fichiers modifiés avec 10 ajouts et 1 suppressions
  1. 8 0
      costs/models.py
  2. 2 1
      costs/templates/costs/document_detail.html

+ 8 - 0
costs/models.py

@@ -177,6 +177,12 @@ class Cost(AbstractResource):
         verbose_name = 'Coût mensuel'
 
 
+class GoodQuerySet(models.QuerySet):
+    def monthly_provision_total(self):
+        # FIXME: could be optimized easily
+        return sum([i.monthly_provision() for i in self.all()])
+
+
 class Good(AbstractResource):
     """ A good, which replacement is provisioned
     """
@@ -185,6 +191,8 @@ class Good(AbstractResource):
         "Durée d'amortissement",
         choices=settings.PROVISIONING_DURATIONS)
 
+    objects = GoodQuerySet.as_manager()
+
     def get_use_class(self):
         return GoodUse
 

+ 2 - 1
costs/templates/costs/document_detail.html

@@ -114,7 +114,8 @@ Coûts facturés à l'association mensuellement pour fournir l'ensemble des serv
     Sont listés ici les investissements que l'association n'a a payer qu'une
     fois. Le coût d'achat est réparti entre les différents services. De plus,
   chaque mois, de l'argent est mis de côté pour veiller au remplacement de ce
-  matériel lorsque celui-ci arrivera en fin de vie.
+  matériel lorsque celui-ci arrivera en fin de vie (<em>
+{{ document.good_set.monthly_provision_total|price }}</em> ce mois-ci).
     </p>
 <table class="ui structured table">
   <thead>