Skip to content

Commit

Permalink
Merge pull request #153 from sharpeez/wc_sprint
Browse files Browse the repository at this point in the history
Wc sprint #2
  • Loading branch information
sharpeez authored Nov 24, 2020
2 parents a8ab0b5 + c3f0ea4 commit bec90b6
Show file tree
Hide file tree
Showing 11 changed files with 303 additions and 68 deletions.
41 changes: 26 additions & 15 deletions wildlifecompliance/components/applications/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@
from wildlifecompliance.management.permissions_manager import PermissionUser

logger = logging.getLogger(__name__)
# logger = logging


def application_refund_callback(invoice_ref, bpoint_tid):
Expand Down Expand Up @@ -1530,24 +1531,32 @@ def get_proposed_decisions(self, request, *args, **kwargs):
@detail_route(methods=['post'])
@renderer_classes((JSONRenderer,))
def assessment_data(self, request, *args, **kwargs):
logger.debug('assessment_data()')
try:
instance = self.get_object()
assess = request.data.pop('__assess', False)
with transaction.atomic():
is_initial_assess = instance.get_property_cache_assess()
if assess or is_initial_assess:

checkbox = CheckboxAndRadioButtonVisitor(
instance, request.data
)
# Set StandardCondition Fields.
for_condition_fields = StandardConditionFieldElement()
for_condition_fields.accept(checkbox)
checkbox = CheckboxAndRadioButtonVisitor(
instance, request.data
)
# Set StandardCondition Fields.
for_condition_fields = StandardConditionFieldElement()
for_condition_fields.accept(checkbox)

# Set PromptInspection Fields.
for_inspection_fields = PromptInspectionFieldElement()
for_inspection_fields.accept(checkbox)
# Set PromptInspection Fields.
for_inspection_fields = PromptInspectionFieldElement()
for_inspection_fields.accept(checkbox)

instance.save()
if is_initial_assess:
instance.set_property_cache_assess(False)
instance.save()

logger.debug('assessment_data() - response success')
return Response({'success': True})

except MissingFieldsException as e:
return Response({
'missing': e.error_list},
Expand Down Expand Up @@ -1677,6 +1686,7 @@ def officer_comments(self, request, *args, **kwargs):
@detail_route(methods=['post'])
@renderer_classes((JSONRenderer,))
def form_data(self, request, *args, **kwargs):
logger.debug('form_data()')
try:
instance = self.get_object()
with transaction.atomic():
Expand All @@ -1687,13 +1697,14 @@ def form_data(self, request, *args, **kwargs):
action=ApplicationFormDataRecord.ACTION_TYPE_ASSIGN_VALUE
)

# Log save action for internal officer.
if request.user.is_staff:
instance.log_user_action(
ApplicationUserAction.ACTION_SAVE_APPLICATION.format(
instance.id), request)
instance.log_user_action(
ApplicationUserAction.ACTION_SAVE_APPLICATION.format(
instance.lodgement_number
), request)

logger.debug('form_data() - successful response')
return Response({'success': True})

except MissingFieldsException as e:
return Response({
'missing': e.error_list},
Expand Down
Loading

0 comments on commit bec90b6

Please sign in to comment.