Skip to content

Commit f97e112

Browse files
committed
PER Assessment number fix
1 parent dfca8d7 commit f97e112

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

main/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
from .celery import app as celery_app
44

55
__all__ = ['celery_app']
6-
__version__ = '1.1.443'
6+
__version__ = '1.1.444'

per/views.py

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import logging
22
from django.db import transaction
33
from django.http import JsonResponse
4-
from django.utils import timezone
4+
from datetime import datetime, timezone
55
from rest_framework import authentication, permissions
66
from rest_framework.views import APIView
77
from .models import (
@@ -15,8 +15,11 @@
1515

1616

1717
def get_now_str():
18-
return str(timezone.now())
18+
return datetime.now(timezone.utc)
1919

20+
def parse_date(date_string):
21+
dateformat = '%Y-%m-%d'
22+
return datetime.strptime(date_string[:10], dateformat).replace(tzinfo=timezone.utc)
2023

2124
# class CreatePerForm(APIView):
2225
# authentication_classes = (authentication.TokenAuthentication,)
@@ -337,17 +340,17 @@ def post(self, request):
337340
else:
338341
return bad_request('You don\'t have permission to create an Overview for the selected Country.')
339342

340-
# prev_overview = Overview.objects.filter(country_id=country_id).order_by('-created_at').first()
343+
prevOverview = Overview.objects.filter(country_id=country_id).order_by('-created_at').first()
344+
prevOverview_assessmentNumber = prevOverview.assessment_number + 1 if prevOverview else 1
341345

342346
try:
343347
overview = Overview.objects.create(
344-
# assessment_number=prev_overview.assessment_number + 1 if prev_overview else 1,
345-
assessment_number=assessment_number,
348+
assessment_number=assessment_number if assessment_number else prevOverview_assessmentNumber,
346349
branches_involved=branches_involved,
347350
country_id=country_id,
348-
date_of_assessment=date_of_assessment or None,
349-
date_of_mid_term_review=date_of_mid_term_review or None,
350-
date_of_next_asmt=date_of_next_asmt or None,
351+
date_of_assessment=parse_date(date_of_assessment) if date_of_assessment else None,
352+
date_of_mid_term_review=parse_date(date_of_mid_term_review) if date_of_mid_term_review else None,
353+
date_of_next_asmt=parse_date(date_of_next_asmt) if date_of_next_asmt else None,
351354
facilitator_name=facilitator_name,
352355
facilitator_email=facilitator_email,
353356
facilitator_phone=facilitator_phone,
@@ -467,9 +470,9 @@ def post(self, request):
467470
ov.assessment_number = assessment_number
468471
ov.branches_involved = branches_involved
469472
ov.country_id = country_id
470-
ov.date_of_assessment = date_of_assessment
471-
ov.date_of_mid_term_review = date_of_mid_term_review
472-
ov.date_of_next_asmt = date_of_next_asmt
473+
ov.date_of_assessment = parse_date(date_of_assessment) if date_of_assessment else None
474+
ov.date_of_mid_term_review = parse_date(date_of_mid_term_review) if date_of_mid_term_review else None
475+
ov.date_of_next_asmt = parse_date(date_of_next_asmt) if date_of_next_asmt else None
473476
ov.facilitator_name = facilitator_name
474477
ov.facilitator_email = facilitator_email
475478
ov.facilitator_phone = facilitator_phone

0 commit comments

Comments
 (0)