Development #75729 » create_invoices.py
1 |
# lingo-manage tenant_command runscript -d lingo.dev.publik.love create_invoices.py
|
---|---|
2 |
|
3 |
from django.utils.timezone import now |
4 |
|
5 |
from lingo.invoicing.models import Campaign, Counter, Invoice, InvoiceLine, Pool, Regie |
6 |
|
7 |
|
8 |
Counter.objects.all().delete() |
9 |
InvoiceLine.objects.all().delete() |
10 |
Invoice.objects.all().delete() |
11 |
Pool.objects.all().delete() |
12 |
Campaign.objects.all().delete() |
13 |
Regie.objects.all().delete() |
14 |
|
15 |
|
16 |
regie = Regie.objects.create(label='petite enfance') |
17 |
campaign = Campaign.objects.create( |
18 |
label='campagne 1', |
19 |
regie=regie, |
20 |
date_start=now().date(), |
21 |
date_end=now().date(), |
22 |
date_issue=now().date(), |
23 |
)
|
24 |
pool = Pool.objects.create(campaign=campaign, status='completed', completed_at=now(), draft=False) |
25 |
|
26 |
line1 = InvoiceLine.objects.create( |
27 |
event_date=now().date(), |
28 |
slug='foo', |
29 |
label='cantine', |
30 |
quantity=1, |
31 |
unit_amount=5, |
32 |
total_amount=5, |
33 |
user_external_id='xx', |
34 |
user_first_name='sarah', |
35 |
user_last_name='connor', |
36 |
payer_external_id='yy', |
37 |
payer_first_name='john', |
38 |
payer_last_name='doe', |
39 |
status='success', |
40 |
pool=pool |
41 |
|
42 |
)
|
43 |
line2 = InvoiceLine.objects.create( |
44 |
event_date=now().date(), |
45 |
slug='foo', |
46 |
label='piscine', |
47 |
quantity=1, |
48 |
unit_amount=5, |
49 |
total_amount=5, |
50 |
user_external_id='xx', |
51 |
user_first_name='sarah', |
52 |
user_last_name='connor', |
53 |
payer_external_id='yy', |
54 |
payer_first_name='john', |
55 |
payer_last_name='doe', |
56 |
status='success', |
57 |
pool=pool |
58 |
)
|
59 |
invoice1 = Invoice.objects.create( |
60 |
label='foo', |
61 |
total_amount=10, |
62 |
date_issue=now().date(), |
63 |
regie=regie, |
64 |
payer_external_id='1', |
65 |
payer_first_name='john', |
66 |
payer_last_name='doe', |
67 |
created_at=now(), |
68 |
pool=pool |
69 |
)
|
70 |
invoice1.set_number() |
71 |
invoice1.save() |
72 |
line1.invoice=invoice1 |
73 |
line1.save() |
74 |
line2.invoice=invoice1 |
75 |
line2.save() |
76 |
|
77 |
line3 = InvoiceLine.objects.create( |
78 |
event_date=now().date(), |
79 |
slug='foo', |
80 |
label='cantine', |
81 |
quantity=1, |
82 |
unit_amount=2, |
83 |
total_amount=2, |
84 |
user_external_id='xx', |
85 |
user_first_name='john', |
86 |
user_last_name='connor', |
87 |
payer_external_id='yy', |
88 |
payer_first_name='john', |
89 |
payer_last_name='doe', |
90 |
status='success', |
91 |
pool=pool |
92 |
|
93 |
)
|
94 |
line4 = InvoiceLine.objects.create( |
95 |
event_date=now().date(), |
96 |
slug='foo', |
97 |
label='piscine', |
98 |
quantity=3, |
99 |
unit_amount=20, |
100 |
total_amount=60, |
101 |
user_external_id='xx', |
102 |
user_first_name='john', |
103 |
user_last_name='connor', |
104 |
payer_external_id='yy', |
105 |
payer_first_name='john', |
106 |
payer_last_name='doe', |
107 |
status='success', |
108 |
pool=pool |
109 |
)
|
110 |
invoice2 = Invoice.objects.create( |
111 |
label='baz', |
112 |
total_amount=62, |
113 |
date_issue=now().date(), |
114 |
regie=regie, |
115 |
payer_external_id='2', |
116 |
payer_first_name='todd', |
117 |
payer_last_name='voight', |
118 |
created_at=now(), |
119 |
pool=pool |
120 |
)
|
121 |
invoice2.set_number() |
122 |
invoice2.save() |
123 |
line3.invoice=invoice2 |
124 |
line3.save() |
125 |
line4.invoice=invoice2 |
126 |
line4.save() |