parent
							
								
									52376dff59
								
							
						
					
					
						commit
						056008c6e7
					
				
					 1 changed files with 23 additions and 6 deletions
				
			
		|  | @ -15,22 +15,39 @@ class ApplyCreditNoteForm(forms.Form): | |||
|         self.user = user | ||||
|         super(ApplyCreditNoteForm, self).__init__(*a, **k) | ||||
| 
 | ||||
|         self.fields["invoice"].choices = self._unpaid_invoices_for_user | ||||
|         self.fields["invoice"].choices = self._unpaid_invoices | ||||
| 
 | ||||
|     def _unpaid_invoices_for_user(self): | ||||
|     def _unpaid_invoices(self): | ||||
|         invoices = commerce.Invoice.objects.filter( | ||||
|             status=commerce.Invoice.STATUS_UNPAID, | ||||
|             user=self.user, | ||||
|         ) | ||||
|         ).select_related("user") | ||||
| 
 | ||||
|         invoices_annotated = [invoice.__dict__ for invoice in invoices] | ||||
|         users = dict((inv.user.id, inv.user) for inv in invoices) | ||||
|         for invoice in invoices_annotated: | ||||
|             invoice.update({ | ||||
|                 "user_id": users[invoice["user_id"]].id, | ||||
|                 "user_email": users[invoice["user_id"]].email, | ||||
|             }) | ||||
|             print invoice | ||||
| 
 | ||||
| 
 | ||||
|         key = lambda inv: (0 - (inv["user_id"] == self.user.id), inv["id"]) | ||||
|         invoices_annotated.sort(key=key) | ||||
| 
 | ||||
|         template = "Invoice %(id)d - user: %(user_email)s (%(user_id)d) -  $%(value)d" | ||||
|         return [ | ||||
|             (invoice.id, "Invoice %(id)d - $%(value)d" % invoice.__dict__) | ||||
|             for invoice in invoices | ||||
|             (invoice["id"], template % invoice) | ||||
|             for invoice in invoices_annotated | ||||
|         ] | ||||
| 
 | ||||
|     invoice = forms.ChoiceField( | ||||
|         required=True, | ||||
|     ) | ||||
|     verify = forms.BooleanField( | ||||
|         required=True, | ||||
|         help_text="Have you verified that this is the correct invoice?", | ||||
|     ) | ||||
| 
 | ||||
| 
 | ||||
| class CancellationFeeForm(forms.Form): | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Christopher Neugebauer
						Christopher Neugebauer