Skip to content

Commit 0720bdc

Browse files
committed
Merge branch 'develop'
2 parents f918885 + 48eb4bf commit 0720bdc

File tree

4 files changed

+37
-2
lines changed

4 files changed

+37
-2
lines changed

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [1.2.1] - 2024-09-03
11+
12+
### Added
13+
14+
- Add VAT-percents to Django Admin ([305c396](https://github.com/City-of-Helsinki/parking-permits/commit/305c396091d68e49657f1299210e233678edf96b))
15+
- Add vat and vat_percent properties to Order ([0e6612d](https://github.com/City-of-Helsinki/parking-permits/commit/0e6612d6031d9d7ade6a7422b1e6b3ecd2a9a513))
16+
17+
### Fixed
18+
19+
- Wrap accepted refund to list in email sending ([eeebdbc](https://github.com/City-of-Helsinki/parking-permits/commit/eeebdbc4355066ca15eaaaf591861eba1e2f1c02))
20+
1021
## [1.2.0] - 2024-08-30
1122

1223
### Added

parking_permits/admin.py

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ class RefundAdmin(admin.ModelAdmin):
210210
"status",
211211
"created_at",
212212
"accepted_at",
213-
"vat",
213+
"get_vat_percent",
214214
)
215215
list_select_related = ("order",)
216216
ordering = ("-created_at",)
@@ -222,6 +222,10 @@ class RefundAdmin(admin.ModelAdmin):
222222
"permits",
223223
)
224224

225+
@admin.display(description="VAT percent")
226+
def get_vat_percent(self, obj):
227+
return format(obj.vat_percent, ".2f")
228+
225229

226230
@admin.register(Product)
227231
class ProductAdmin(admin.ModelAdmin):
@@ -253,11 +257,13 @@ class OrderAdmin(admin.ModelAdmin):
253257
"address_text",
254258
"parking_zone_name",
255259
"vehicles",
260+
"get_vat_percent",
256261
)
257262
list_select_related = ("customer",)
258263
readonly_fields = (
259264
"talpa_order_id",
260265
"total_payment_price",
266+
"get_vat_percent",
261267
)
262268
search_fields = (
263269
"customer__last_name",
@@ -273,6 +279,10 @@ class OrderAdmin(admin.ModelAdmin):
273279
)
274280
ordering = ("-created_at",)
275281

282+
@admin.display(description="Vat percent")
283+
def get_vat_percent(self, obj):
284+
return format(obj.vat_percent, ".2f") if obj.vat_percent else None
285+
276286

277287
@admin.register(OrderItem)
278288
class OrderItemAdmin(admin.ModelAdmin):
@@ -284,11 +294,16 @@ class OrderItemAdmin(admin.ModelAdmin):
284294
"unit_price",
285295
"payment_unit_price",
286296
"quantity",
297+
"get_vat_percent",
287298
)
288299
list_select_related = ("order", "subscription", "product", "permit")
289300
readonly_fields = ("talpa_order_item_id",)
290301
ordering = ("-pk",)
291302

303+
@admin.display(description="Vat percent")
304+
def get_vat_percent(self, obj):
305+
return format(obj.vat_percentage, ".2f")
306+
292307

293308
@admin.register(ParkingPermitExtensionRequest)
294309
class ParkingPermitExtensionRequestAdmin(admin.ModelAdmin):

parking_permits/admin_resolvers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1141,7 +1141,7 @@ def resolve_accept_refunds(obj, info, ids):
11411141
id__in=ids, status=RefundStatus.ACCEPTED
11421142
).select_related("order__customer")
11431143
for refund in accepted_refunds:
1144-
send_refund_email(RefundEmailType.ACCEPTED, refund.order.customer, refund)
1144+
send_refund_email(RefundEmailType.ACCEPTED, refund.order.customer, [refund])
11451145
return qs.count()
11461146

11471147

parking_permits/models/order.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import logging
2+
from decimal import Decimal
23
from urllib.parse import urljoin
34

45
import requests
@@ -510,6 +511,14 @@ def total_payment_price_net(self):
510511
def total_payment_price_vat(self):
511512
return sum([item.total_payment_price_vat for item in self.order_items.all()])
512513

514+
@property
515+
def vat(self):
516+
return self.order_items.first().vat if self.order_items.exists() else Decimal(0)
517+
518+
@property
519+
def vat_percent(self):
520+
return self.vat * 100
521+
513522
def _cancel_talpa_order(self):
514523
headers = {
515524
"api-key": settings.TALPA_API_KEY,

0 commit comments

Comments
 (0)