masstack-python-client 0.1.3__py3-none-any.whl → 0.1.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- __version__ = "0.1.3"
1
+ __version__ = "0.1.5"
2
2
  __homepage__ = "https://somconnexio.coop/"
3
3
  __author__ = "Borja Gimeno <borja.gimeno@somconnexio.coop>"
4
4
  __license__ = "GPL-3.0-only"
@@ -8,7 +8,7 @@ class MasstackClientException(Exception):
8
8
  _message: Optional[str] = None
9
9
 
10
10
  def __init__(self, status_code: int, message: str):
11
- super(MasstackClientException, self).__init__(message)
11
+ super().__init__(status_code, message)
12
12
  self._message = message
13
13
  self._status_code = status_code
14
14
 
@@ -41,11 +41,7 @@ class SignupsResource(CustomersResource):
41
41
  data=payload,
42
42
  )
43
43
 
44
- return SignupsResponseData(
45
- sell_id=result["sell_id"],
46
- customer_id=result["customer_id"],
47
- work_order_id=[result["work_order_id"]],
48
- )
44
+ return SignupsResponseData.from_dict(result)
49
45
 
50
46
 
51
47
  class Users(CustomersResource):
@@ -1,5 +1,5 @@
1
1
  from dataclasses import dataclass
2
- from typing import List, Dict, Any
2
+ from typing import List, Dict, Any, Optional
3
3
 
4
4
  from masstack_python_client.resources.models.client_attribute import ClientAttribute
5
5
  from masstack_python_client.resources.models.client_payment import (
@@ -71,8 +71,48 @@ class SignupRequestData:
71
71
  )
72
72
 
73
73
 
74
+ @dataclass(frozen=True)
75
+ class Subscription:
76
+ type: int
77
+ subscription_id: int
78
+ user_info_id: int
79
+ fixed_number: str
80
+ msisdn: Optional[str] = None
81
+ associated_number: Optional[str] = None
82
+ subscription_terminal_id: Optional[int] = None
83
+
84
+
85
+ @dataclass(frozen=True)
86
+ class AccountInfo:
87
+ account_id: int
88
+ account_number: str
89
+ bundle_id: int
90
+ subscriptions: List["Subscription"]
91
+
92
+ @classmethod
93
+ def from_dict(cls, data: Dict[str, Any]) -> "AccountInfo":
94
+ return cls(
95
+ account_id=data["account_id"],
96
+ account_number=data["account_number"],
97
+ bundle_id=data["bundle_id"],
98
+ subscriptions=[Subscription(**s) for s in data["subscriptions"]],
99
+ )
100
+
101
+
74
102
  @dataclass(frozen=True)
75
103
  class SignupsResponseData:
76
104
  sell_id: int
77
105
  customer_id: int
78
106
  work_order_id: str
107
+ account_info: AccountInfo
108
+ risk_decision: str
109
+
110
+ @classmethod
111
+ def from_dict(cls, data: Dict[str, Any]) -> "SignupsResponseData":
112
+ return cls(
113
+ sell_id=data["sell_id"],
114
+ customer_id=data["customer_id"],
115
+ work_order_id=data["work_order_id"],
116
+ account_info=AccountInfo.from_dict(data["account_info"]),
117
+ risk_decision=data["risk_decision"],
118
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: masstack-python-client
3
- Version: 0.1.3
3
+ Version: 0.1.5
4
4
  Summary: This Python API client provides access to masmovil core API domains
5
5
  Author-email: Borja Gimeno <borja.gimeno@somconnexio.coop>
6
6
  License: GPL-3.0-only
@@ -1,6 +1,6 @@
1
- masstack_python_client/__init__.py,sha256=PsbwR_G_X-fIUrHAKL1bfLcyMreNxpj8H7AaXz8NTWs,154
1
+ masstack_python_client/__init__.py,sha256=f2vE5Ie9W2vfz79Gw7sY2a9tEgEq-3b0Hy40aH7ZSX8,154
2
2
  masstack_python_client/client.py,sha256=5b52Q2ekABi7DlZPsNobcmaJXOKzZfhKE_kHvNEqE9Q,2496
3
- masstack_python_client/exceptions.py,sha256=HkX1cP4Ryeas59CzIVW8N5gmnRE1x0yQUQwS3tm9QZQ,2115
3
+ masstack_python_client/exceptions.py,sha256=_bHtuBpUX--B1_FraHFLxeMqiO_9_rXk2FQh9qdI3Mg,2099
4
4
  masstack_python_client/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  masstack_python_client/auth/token.py,sha256=cNpV8lwfme1E9XBpGAtMj2ZFh2C_NgGVlIuXswE-eBE,306
6
6
  masstack_python_client/auth/token_manager.py,sha256=Vz6lgKExTIj9bl7qZg3da55fMOuQq9hQAqalePpM-YE,2756
@@ -12,7 +12,7 @@ masstack_python_client/data/unit_translation.csv,sha256=34FPfaCC1eSmBfV0BbHSHJ-t
12
12
  masstack_python_client/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
13
  masstack_python_client/resources/base.py,sha256=yCzYXBjjyelWOF7lQsabtib662Goebx0h1OHJVv4OMs,1508
14
14
  masstack_python_client/resources/catalogue.py,sha256=-9Jn_en0REEN-yknuzhrY4LsSeErxN89tPPIQpTIax0,3397
15
- masstack_python_client/resources/customers.py,sha256=fSI1SN8U4uiyYEvJQtzpUgUTtqhx7fKjYKt6bfLrOvE,2397
15
+ masstack_python_client/resources/customers.py,sha256=cKlZulq9RnOZhiFz347bOejig0GDvp4LdZL-QWtCHfQ,2265
16
16
  masstack_python_client/resources/feasibility.py,sha256=NelHLSaDCZjwqo32nZ4wpglspoHZ9zoXvGrveWIOUfQ,8450
17
17
  masstack_python_client/resources/provision.py,sha256=SfMly7_19-yxXZRuqXaxRzpHUSVIjcxO_Oq7g_K5d2A,997
18
18
  masstack_python_client/resources/enums/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -34,11 +34,11 @@ masstack_python_client/resources/models/client_payment.py,sha256=yMGMTuk_07-TzXW
34
34
  masstack_python_client/resources/models/fixed_phone.py,sha256=ihF-iICz89eVhkeyRsX3pXYkODlXRpYPGJLiFiTBilM,98
35
35
  masstack_python_client/resources/models/portability.py,sha256=AcM3ZZuTn_w1QGpchqtEIvqPl1KdqNhhs2673QAVs7w,952
36
36
  masstack_python_client/resources/models/products.py,sha256=dSFZ2Cdn1xbEXlklcUr9qHfTj9tnTJcdYIcsTlHgmoc,2657
37
- masstack_python_client/resources/models/signup.py,sha256=Hvo5nZce1ikpUUMEoLt_2g2HipHwh4XRIz344X8_IJk,2018
37
+ masstack_python_client/resources/models/signup.py,sha256=wEn58-rNNMz1oZJcp06As5Fvm_6n_O2HiL8w9oT8wkQ,3179
38
38
  masstack_python_client/resources/models/user.py,sha256=N5mwuZN0Saxiro2UXYcCxLL6jrpIU83crHhmrdAcgE8,1080
39
39
  masstack_python_client/resources/utils/normalize.py,sha256=3XXrh4WxujpoxouKoTP1WZQomQhuirk6KW_3ZYsvBGQ,901
40
- masstack_python_client-0.1.3.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
41
- masstack_python_client-0.1.3.dist-info/METADATA,sha256=bx-ogL7kypl22z9YcgxDjOoH3m8ft0Qbz3ODKB_m-Fo,4215
42
- masstack_python_client-0.1.3.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
43
- masstack_python_client-0.1.3.dist-info/top_level.txt,sha256=q_iYlqJq22lhg_2O2iktARr7Mzz3QfjaW4l6J4vwyE8,23
44
- masstack_python_client-0.1.3.dist-info/RECORD,,
40
+ masstack_python_client-0.1.5.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
41
+ masstack_python_client-0.1.5.dist-info/METADATA,sha256=wyXm3P21m313pDWl3UfEDK-BEWGgs6xCpYz-Cqhp4S4,4215
42
+ masstack_python_client-0.1.5.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
43
+ masstack_python_client-0.1.5.dist-info/top_level.txt,sha256=q_iYlqJq22lhg_2O2iktARr7Mzz3QfjaW4l6J4vwyE8,23
44
+ masstack_python_client-0.1.5.dist-info/RECORD,,