Skip to content

Commit 7c793a0

Browse files
committed
add more account attributes
1 parent 7bd63d9 commit 7c793a0

File tree

5 files changed

+64
-2
lines changed

5 files changed

+64
-2
lines changed

yeti_switch_api/orm/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from .contact import Contact # noqa: F401
44
from .account import Account # noqa: F401
55
from .invoice import Invoice # noqa: F401
6+
from .invoice_template import InvoiceTemplate # noqa: F401
67
from .invoice_originated_destination import InvoiceOriginatedDestination # noqa: F401
78
from .invoice_originated_network import InvoiceOriginatedNetwork # noqa: F401
89
from .invoice_terminated_destination import InvoiceTerminatedDestination # noqa: F401

yeti_switch_api/orm/account.py

Lines changed: 49 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,58 @@ class Meta:
99
contractor = RelationField("contractor")
1010
timezone = RelationField("timezone")
1111

12+
external-id = AttributeField("external-id")
13+
uuid = AttributeField("uuid")
14+
1215
name = AttributeField("name")
1316
balance = AttributeField("balance")
1417
min_balance = AttributeField("min-balance")
1518
max_balance = AttributeField("max-balance")
19+
vat = AttributeField("vat")
20+
balance_low_threshold = AttributeField("balance-low-threshold")
21+
balance_high_threshold = AttributeField("balance-high-threshold")
22+
send_balance_notifications_to = AttributeField("send-balance-notifications-to")
23+
24+
destination_rate_limit = AttributeField("destination-rate-limit")
25+
max_call_duration = AttributeField("max-call-duration")
26+
origination_capacity = AttributeField("origination-capacity")
27+
termination_capacity = AttributeField("termination-capacity")
28+
total_capacity = AttributeField("total-capacity")
29+
30+
invoice_template = RelationField("invoice-template")
31+
invoice_period = AttributeField("invoice-period-id")
32+
send_invoices_to = AttributeField("send-invoices-to")
33+
34+
INVOICE_PERIOD_DAILY = 1
35+
INVOICE_PERIOD_WEEKLY = 2
36+
INVOICE_PERIOD_BIWEEKLY = 3
37+
INVOICE_PERIOD_MONTHLY = 4
38+
INVOICE_PERIOD_BIWEEKLY_SPLIT = 5
39+
INVOICE_PERIOD_WEEKLY_SPLIT = 6
1640

1741
def creatable_fields(self):
18-
return ["name", "contractor", "timezone", "min-balance", "max-balance"]
42+
return [
43+
"external-id",
44+
"uuid",
45+
"name",
46+
"contractor",
47+
"timezone",
48+
"invoice-template",
49+
"min-balance",
50+
"max-balance",
51+
"vat",
52+
"balance-low-threshold",
53+
"balance-high-threshold",
54+
"send-balance-notifications-to"
55+
"destination-rate-limit",
56+
"max-call-duration",
57+
"origination-capacity",
58+
"termination-capacity",
59+
"total-capacity",
60+
"invoice-period-id",
61+
"send-invoices-to"
62+
]
63+
64+
def updatable_fields(self):
65+
return self.creatable_fields()
66+
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
from .base_model import BaseModel, AttributeField, RelationField # noqa: F401
2+
3+
4+
class InvoiceTemplate(BaseModel):
5+
class Meta:
6+
path = "invoice-template"
7+
type = "invoice-template"
8+
9+
name = AttributeField("name")
10+
filename = AttributeField("filename")

yeti_switch_api/orm/orm_client.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from .contact import Contact
77
from .account import Account
88
from .invoice import Invoice
9+
from .invoice_template import InvoiceTemplate
910
from .invoice_originated_destination import InvoiceOriginatedDestination
1011
from .invoice_originated_network import InvoiceOriginatedNetwork
1112
from .invoice_terminated_destination import InvoiceTerminatedDestination
@@ -49,6 +50,7 @@ def __register_models(cls):
4950
cls.__register_model(Contact)
5051
cls.__register_model(Account)
5152
cls.__register_model(Invoice)
53+
cls.__register_model(InvoiceTemplate)
5254
cls.__register_model(InvoiceOriginatedDestination)
5355
cls.__register_model(InvoiceOriginatedNetwork)
5456
cls.__register_model(InvoiceTerminatedDestination)

yeti_switch_api/orm/package_counter.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ class Meta:
88
duration = AttributeField("duration")
99
exclude = AttributeField("exclude")
1010
prefix = AttributeField("prefix")
11-
service_id = AttributeField("service-id")
1211

1312
account = RelationField("account")
1413
service = RelationField("service")
14+
15+

0 commit comments

Comments
 (0)