Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
scrapper-portabilidad
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
2
Issues
2
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Javier
scrapper-portabilidad
Commits
cdff72d6
Commit
cdff72d6
authored
Jul 04, 2022
by
Javier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Conversor de Tarifas y Cuenta en SIP
parent
f5340174
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
30 additions
and
3 deletions
+30
-3
models.py
mbilling/models.py
+30
-3
No files found.
mbilling/models.py
View file @
cdff72d6
...
@@ -15,6 +15,15 @@ class Rate(str, Enum):
...
@@ -15,6 +15,15 @@ class Rate(str, Enum):
PLANA_2000
=
"Plana2000"
PLANA_2000
=
"Plana2000"
PLANA_EUROPA_1000
=
"PlanaEuropa1000"
PLANA_EUROPA_1000
=
"PlanaEuropa1000"
@staticmethod
def
decode
(
plan_id
:
int
,
offer_id
:
int
):
if
plan_id
==
1
:
return
Rate
.
ESTANDAR
elif
plan_id
==
2
:
return
Rate
.
EMPRESAS
elif
plan_id
==
4
:
return
Rate
.
PLANA_1000
if
offer_id
==
4
else
Rate
.
PLANA_2000
class
Tax
(
str
,
Enum
):
class
Tax
(
str
,
Enum
):
GENERAL
=
'General'
GENERAL
=
'General'
...
@@ -139,6 +148,10 @@ class UserDetails(BaseModel):
...
@@ -139,6 +148,10 @@ class UserDetails(BaseModel):
class
SipAccount
(
BaseModel
):
class
SipAccount
(
BaseModel
):
account
:
str
=
Body
(
...
,
title
=
'Cuenta de Facturación'
,
description
=
'Cuenta Principal del CLI'
)
trunk_name
:
str
=
Body
(
trunk_name
:
str
=
Body
(
...
,
title
=
'Trunk'
,
description
=
'Nombre de la Troncal'
...
,
title
=
'Trunk'
,
description
=
'Nombre de la Troncal'
)
)
...
@@ -156,7 +169,8 @@ class SipAccount(BaseModel):
...
@@ -156,7 +169,8 @@ class SipAccount(BaseModel):
)
)
@staticmethod
@staticmethod
def
generate_from_automap
(
sip
):
def
generate_from_automap
(
sip
,
account_name
:
str
):
peer_details
=
PeerDetails
(
peer_details
=
PeerDetails
(
username
=
sip
.
name
,
username
=
sip
.
name
,
secret
=
sip
.
secret
,
secret
=
sip
.
secret
,
...
@@ -182,6 +196,7 @@ class SipAccount(BaseModel):
...
@@ -182,6 +196,7 @@ class SipAccount(BaseModel):
)
)
return
SipAccount
(
return
SipAccount
(
account
=
account_name
,
trunk_name
=
sip
.
name
,
trunk_name
=
sip
.
name
,
peer_details
=
peer_details
,
peer_details
=
peer_details
,
user_context
=
'from-trunk'
,
user_context
=
'from-trunk'
,
...
@@ -233,6 +248,18 @@ class User(BaseModel):
...
@@ -233,6 +248,18 @@ class User(BaseModel):
default
=
0.0
,
title
=
'Saldo'
,
description
=
'Balance del Cliente'
default
=
0.0
,
title
=
'Saldo'
,
description
=
'Balance del Cliente'
)
)
sip_accounts
:
list
[
SipAccount
]
=
Body
(
sip
:
list
[
str
]
=
Body
(
...
,
title
=
'Cuentas SIP'
,
description
=
'Números Asociados a la Cuenta de Facturación'
...
,
title
=
'Cuentas SIP'
,
description
=
'Cuentas de Telefonía asociadas a esta cuenta de Facturación'
)
@staticmethod
def
generate_from_automap
(
user
,
sip
:
list
[
str
]
=
None
):
return
User
(
username
=
user
.
username
,
name
=
user
.
firstname
,
surname
=
user
.
lastname
,
rate
=
Rate
.
decode
(
user
.
id_plan
,
user
.
id_offer
),
balance
=
user
.
credit
,
sip
=
sip
)
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment