Skip to content

Commit 6978951

Browse files
committed
Added fields for invoice and timezone
Model additions for timezone & invoices sent out invoices timezone change Updated latest migration Added factories
1 parent c08b22b commit 6978951

File tree

6 files changed

+72
-0
lines changed

6 files changed

+72
-0
lines changed

app/api/schema/settings.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,10 +200,15 @@ class Meta:
200200
smtp_port = fields.Integer(allow_none=True)
201201
smtp_encryption = fields.Str(allow_none=True) # Can be tls, ssl, none
202202

203+
# Event Invoices settings
204+
invoice_sending_day = fields.Integer(allow_none=False, default=1)
205+
invoice_sending_timezone = fields.Str(allow_none=False, default="UTC")
206+
203207
# Admin Invoice Details
204208
admin_billing_contact_name = fields.Str(allow_none=True)
205209
admin_billing_phone = fields.Str(allow_none=True)
206210
admin_billing_email = fields.Email(allow_none=True)
211+
admin_billing_state = fields.Str(allow_none=True)
207212
admin_billing_country = fields.Str(allow_none=True)
208213
admin_billing_tax_info = fields.Str(allow_none=True)
209214
admin_company = fields.Str(allow_none=True)

app/api/schema/users.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ class Meta:
7272
contact = fields.Str(allow_none=True)
7373
billing_contact_name = fields.Str(allow_none=True)
7474
billing_phone = fields.Str(allow_none=True)
75+
billing_state = fields.Str(allow_none=True)
7576
billing_country = fields.Str(allow_none=True)
7677
billing_tax_info = fields.Str(allow_none=True)
7778
company = fields.Str(allow_none=True)

app/factories/setting.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,10 @@ class Meta:
104104
facebook_url = common.url_
105105
youtube_url = common.url_
106106

107+
# Event Invoices settings
108+
invoice_sending_day = common.integer_
109+
invoice_sending_timezone = common.timezone_
110+
107111
#
108112
# Generators
109113
#
@@ -117,3 +121,16 @@ class Meta:
117121
#
118122
cookie_policy = common.string_
119123
cookie_policy_link = common.url_
124+
125+
# Admin Invoice Details
126+
admin_billing_contact_name = common.string_
127+
admin_billing_phone = common.string_
128+
admin_billing_email = common.email_
129+
admin_billing_state = common.string_
130+
admin_billing_country = common.string_
131+
admin_billing_tax_info = common.string_
132+
admin_company = common.string_
133+
admin_billing_address = common.string_
134+
admin_billing_city = common.string_
135+
admin_billing_zip = common.string_
136+
admin_billing_additional_info = common.string_

app/models/setting.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,13 +131,19 @@ class Setting(db.Model):
131131
facebook_url = db.Column(db.String)
132132
youtube_url = db.Column(db.String)
133133

134+
#
135+
# Event Invoices settings
136+
#
137+
invoice_sending_day = db.Column(db.Integer, nullable=False, default=1)
138+
invoice_sending_timezone = db.Column(db.String, nullable=False, default="UTC")
134139
#
135140
# Admin Invoice Details
136141
#
137142
admin_billing_contact_name = db.Column(db.String)
138143
admin_billing_phone = db.Column(db.String)
139144
admin_billing_email = db.Column(db.String)
140145
admin_billing_country = db.Column(db.String)
146+
admin_billing_state = db.Column(db.String)
141147
admin_billing_tax_info = db.Column(db.String)
142148
admin_company = db.Column(db.String)
143149
admin_billing_address = db.Column(db.String)
@@ -213,6 +219,8 @@ def __init__(self,
213219
omise_live_secret=None,
214220
alipay_publishable_key=None,
215221
alipay_secret_key=None,
222+
invoice_sending_day=None,
223+
invoice_sending_timezone=None,
216224
admin_billing_contact_name=None,
217225
admin_billing_phone=None,
218226
admin_billing_email=None,
@@ -221,6 +229,7 @@ def __init__(self,
221229
admin_company=None,
222230
admin_billing_address=None,
223231
admin_billing_city=None,
232+
admin_billing_state=None,
224233
admin_billing_zip=None,
225234
admin_billing_additional_info=None,
226235
order_expiry_time=None):
@@ -294,9 +303,14 @@ def __init__(self,
294303
self.alipay_publishable_key = alipay_publishable_key
295304
self.alipay_secret_key = alipay_secret_key
296305

306+
# Event Invoice settings
307+
self.invoice_sending_timezone = invoice_sending_timezone
308+
self.invoice_sending_day = invoice_sending_day
309+
297310
# Admin Invoice Details
298311
self.admin_billing_contact_name = admin_billing_contact_name
299312
self.admin_billing_phone = admin_billing_phone
313+
self.admin_billing_state = admin_billing_state
300314
self.admin_billing_country = admin_billing_country
301315
self.admin_billing_tax_info = admin_billing_tax_info
302316
self.admin_company = admin_company

app/models/user.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ class User(SoftDeletionModel):
8383
# Event Invoice Details
8484
billing_contact_name = db.Column(db.String)
8585
billing_phone = db.Column(db.String)
86+
billing_state = db.Column(db.String)
8687
billing_country = db.Column(db.String)
8788
billing_tax_info = db.Column(db.String)
8889
company = db.Column(db.String)
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
"""empty message
2+
3+
Revision ID: 4bdb4809f519
4+
Revises: 4279c2ac565b
5+
Create Date: 2019-07-02 12:58:07.279306
6+
7+
"""
8+
9+
from alembic import op
10+
import sqlalchemy as sa
11+
import sqlalchemy_utils
12+
13+
14+
# revision identifiers, used by Alembic.
15+
revision = '4bdb4809f519'
16+
down_revision = '43e8c59337af'
17+
18+
19+
def upgrade():
20+
# ### commands auto generated by Alembic - please adjust! ###
21+
op.add_column('settings', sa.Column('admin_billing_state', sa.String(), nullable=True))
22+
op.add_column('settings', sa.Column('invoice_sending_day', sa.Integer(), server_default='1', nullable=False))
23+
op.add_column('settings', sa.Column('invoice_sending_timezone', sa.String(), server_default='UTC', nullable=False))
24+
op.add_column('users', sa.Column('billing_state', sa.String(), nullable=True))
25+
# ### end Alembic commands ###
26+
27+
28+
def downgrade():
29+
# ### commands auto generated by Alembic - please adjust! ###
30+
op.drop_column('users', 'billing_state')
31+
op.drop_column('settings', 'invoice_sending_day')
32+
op.drop_column('settings', 'invoice_sending_timezone')
33+
op.drop_column('settings', 'admin_billing_state')
34+
# ### end Alembic commands ###

0 commit comments

Comments
 (0)