Separate invoice creation logic to invoice_factory
This commit is contained in:
parent
e4689c6632
commit
fee7b98bc5
@ -41,6 +41,10 @@ class Invoice(BaseModel):
|
||||
def rounding_errors(self) -> Decimal:
|
||||
return self.total_price - sum(i.total_price for i in self.items)
|
||||
|
||||
def invoice_factory(doc: dict) -> Invoice:
|
||||
inv = Invoice.model_validate(doc)
|
||||
inv.items.sort(key=lambda item: item.total_price, reverse=True)
|
||||
return inv
|
||||
|
||||
def query_verify_invoice(iic, dateTimeCreated, tin) -> dict:
|
||||
r = requests.post(
|
||||
@ -73,7 +77,4 @@ def query_verify_invoice_by_url(url) -> dict:
|
||||
|
||||
def invoice_by_url(url: str) -> Invoice:
|
||||
invoice_dict = query_verify_invoice_by_url(url)
|
||||
inv = Invoice.model_validate(invoice_dict)
|
||||
inv.items.sort(key=lambda item: item.total_price, reverse=True)
|
||||
|
||||
return inv
|
||||
return invoice_factory(invoice_dict)
|
||||
|
Loading…
x
Reference in New Issue
Block a user