From 39291c1662e6cccbfb49f581691dce8dc5204111 Mon Sep 17 00:00:00 2001 From: Katsufumi Shibata Date: Tue, 2 Mar 2021 12:09:57 +0800 Subject: [PATCH 1/2] Modify workflows required by the removal of emailing sanction outcomes --- .../components/sanction_outcome/api.py | 112 ++++++++++-------- .../components/sanction_outcome/email.py | 4 +- .../components/sanction_outcome/models.py | 51 ++++++-- .../components/sanction_outcome/pdf.py | 2 +- .../sanction_outcome/serializers.py | 1 - wildlifecompliance/doctopdf.py | 2 + .../sanction_outcome/sanction_outcome.vue | 21 ++++ .../sanction_outcome_dashboard.vue | 1 + .../sanction_outcome_modal.vue | 9 +- .../sanction_outcome_workflow.vue | 3 + .../templates/Remediation-Notice.docx | Bin 50348 -> 57537 bytes 11 files changed, 139 insertions(+), 67 deletions(-) diff --git a/wildlifecompliance/components/sanction_outcome/api.py b/wildlifecompliance/components/sanction_outcome/api.py index 8000ecb47..557a1bfe4 100644 --- a/wildlifecompliance/components/sanction_outcome/api.py +++ b/wildlifecompliance/components/sanction_outcome/api.py @@ -35,10 +35,12 @@ send_caution_notice, send_letter_of_advice, send_parking_infringement_without_offenders, \ send_remediation_action_submitted_notice, send_remediation_action_accepted_notice, \ send_remediation_action_request_amendment_mail, send_infringement_notice_issued_on_paper, \ - send_remediation_notice_issued_on_paper + send_remediation_notice_issued_on_paper, create_infringement_notice_ybw from wildlifecompliance.components.sanction_outcome.models import SanctionOutcome, RemediationAction, \ SanctionOutcomeCommsLogEntry, AllegedCommittedOffence, SanctionOutcomeUserAction, SanctionOutcomeCommsLogDocument, \ AmendmentRequestReason, SanctionOutcomeDocument, SanctionOutcomeDocumentAccessLog +from wildlifecompliance.components.sanction_outcome.pdf import create_remediation_notice_pdf, create_caution_notice_pdf, \ + create_letter_of_advice_pdf from wildlifecompliance.components.sanction_outcome.serializers import SanctionOutcomeSerializer, \ SaveSanctionOutcomeSerializer, SaveRemediationActionSerializer, SanctionOutcomeDatatableSerializer, \ UpdateAssignedToIdSerializer, SanctionOutcomeCommsLogEntrySerializer, SanctionOutcomeUserActionSerializer, \ @@ -1121,7 +1123,7 @@ def extend_due_date(self, request, instance=None, *args, **kwargs): workflow_entry = instance.comms_logs.get(id=comms_log_id) else: workflow_entry = self.add_comms_log(request, instance, workflow=True) - workflow_entry.text = 'test katsu' + # workflow_entry.text = 'test katsu' workflow_entry.save() new_due_date = request.data.get('new_due_date', None) @@ -1216,74 +1218,77 @@ def workflow_action(self, request, instance=None, *args, **kwargs): email_data = send_decline_email(to_address, instance, workflow_entry, request, cc, bcc) elif workflow_type == SanctionOutcome.WORKFLOW_ENDORSE: - if instance.type in (SO_TYPE_LETTER_OF_ADVICE, SO_TYPE_CAUTION_NOTICE): - instance.endorse(request) + if instance.type == SO_TYPE_LETTER_OF_ADVICE: + instance.endorse() if not instance.issued_on_paper: - to_address = [instance.get_offender()[0].email, ] - cc = None - bcc = [member.email for member in instance.allocated_group.members] - if instance.type == SO_TYPE_CAUTION_NOTICE: - email_data = send_caution_notice(to_address, instance, workflow_entry, request, cc, bcc) - else: - email_data = send_letter_of_advice(to_address, instance, workflow_entry, request, cc, bcc) + pdf_file_name = 'letter_of_advice_{}_{}.pdf'.format(instance.lodgement_number, datetime.now().strftime("%Y%m%d%H%M%S")) + document = create_letter_of_advice_pdf(pdf_file_name, instance) # Action log for endorsement and issuance instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE_AND_ISSUE.format(instance.lodgement_number), request) + instance.status = SanctionOutcome.STATUS_AWAITING_PRINT_AND_POST + instance.save() else: instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE.format(instance.lodgement_number), request) + instance.status = SanctionOutcome.STATUS_CLOSED + instance.log_user_action(SanctionOutcomeUserAction.ACTION_CLOSE.format(instance.lodgement_number), request) + instance.save() - # close letter_of_advice/caution_notice - instance.status = SanctionOutcome.STATUS_CLOSED - instance.save() + elif instance.type == SO_TYPE_CAUTION_NOTICE: + instance.endorse() + if not instance.issued_on_paper: + pdf_file_name = 'caution_notice_{}_{}.pdf'.format(instance.lodgement_number, datetime.now().strftime("%Y%m%d%H%M%S")) + document = create_caution_notice_pdf(pdf_file_name, instance) - # Action log for closure of this instance - instance.log_user_action(SanctionOutcomeUserAction.ACTION_CLOSE.format(instance.lodgement_number), - request) - elif not instance.is_parking_offence or (instance.is_parking_offence and instance.offender): - instance.endorse(request) + # Action log for endorsement and issuance + instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE_AND_ISSUE.format(instance.lodgement_number), request) + instance.status = SanctionOutcome.STATUS_AWAITING_PRINT_AND_POST + instance.save() + else: + instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE.format(instance.lodgement_number), request) + instance.status = SanctionOutcome.STATUS_CLOSED + instance.log_user_action(SanctionOutcomeUserAction.ACTION_CLOSE.format(instance.lodgement_number), request) + instance.save() + elif instance.type == SO_TYPE_REMEDIATION_NOTICE: + instance.endorse() if not instance.issued_on_paper: - # Email to the offender, and bcc to the respoinsible officer, manager and infringement notice coordinators - inc_group = SanctionOutcome.get_compliance_permission_group(None, SanctionOutcome.WORKFLOW_ENDORSE) - inc_emails = [member.email for member in inc_group.members] - to_address = [instance.get_offender()[0].email, ] - cc = None - bcc = [instance.responsible_officer.email, request.user.email] + inc_emails - if instance.type == SO_TYPE_INFRINGEMENT_NOTICE: - email_data = send_infringement_notice(to_address, instance, workflow_entry, request, cc, bcc) + # email_data = send_remediation_notice(to_address, instance, workflow_entry, request, cc, bcc) + pdf_file_name = 'remediation_notice_{}_{}.pdf'.format(instance.lodgement_number, datetime.now().strftime( "%Y%m%d%H%M%S")) + document = create_remediation_notice_pdf(pdf_file_name, instance) + else: + # Nothing to do here. All done in the instance.endorse() method + pass + elif instance.type == SO_TYPE_INFRINGEMENT_NOTICE: + # This is Infringement Notice + if not instance.is_parking_offence or (instance.is_parking_offence and instance.offender): + instance.endorse() + if not instance.issued_on_paper: + attachments = create_infringement_notice_ybw(instance, workflow_entry) + + # Log action + instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE_AND_ISSUE.format(instance.lodgement_number), request) else: - email_data = send_remediation_notice(to_address, instance, workflow_entry, request, cc, bcc) - - # Log action - instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE_AND_ISSUE.format(instance.lodgement_number), request) + # Nothing to do here. All done in the instance.endorse() method + pass else: - # Email + # This is a parking infringement but no offenders are set + instance.send_to_inc() + inc_group = SanctionOutcome.get_compliance_permission_group(None, SanctionOutcome.WORKFLOW_ENDORSE) inc_emails = [member.email for member in inc_group.members] to_address = inc_emails - cc = [instance.responsible_officer.email,] - bcc = None - if instance.type == fanctionOutcome.TYPE_INFRINGEMENT_NOTICE: - email_data = send_infringement_notice_issued_on_paper(to_address, instance, workflow_entry, request, cc, bcc) - else: - email_data = send_remediation_notice_issued_on_paper(to_address, instance, workflow_entry, request, cc, bcc) + cc = [instance.responsible_officer.email, request.user.email] + bcc = [] + + # Email to infringement notice coordinators + email_data = send_parking_infringement_without_offenders(to_address, instance, workflow_entry, request, cc, bcc) + # Log action instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE.format(instance.lodgement_number), request) else: - # This is a parking infringement but no offenders are set - instance.send_to_inc() - - inc_group = SanctionOutcome.get_compliance_permission_group(None, SanctionOutcome.WORKFLOW_ENDORSE) - inc_emails = [member.email for member in inc_group.members] - to_address = inc_emails - cc = [instance.responsible_officer.email, request.user.email] - bcc = [] - - # Email to infringement notice coordinators - email_data = send_parking_infringement_without_offenders(to_address, instance, workflow_entry, request, cc, bcc) - - # Log action - instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE.format(instance.lodgement_number), request) + # Should not reach here + pass elif workflow_type == SanctionOutcome.WORKFLOW_RETURN_TO_OFFICER: if not reason: @@ -1340,6 +1345,9 @@ def workflow_action(self, request, instance=None, *args, **kwargs): bcc = None email_data = send_return_to_infringement_notice_coordinator_email(to_address, instance, workflow_entry, request, cc, bcc) + elif workflow_type == SanctionOutcome.WORKFLOW_MARK_DOCUMENT_POSTED: + instance.mark_document_posted(request) + else: # Should not reach here # instance.save() diff --git a/wildlifecompliance/components/sanction_outcome/email.py b/wildlifecompliance/components/sanction_outcome/email.py index 68f5560a5..efb756d77 100644 --- a/wildlifecompliance/components/sanction_outcome/email.py +++ b/wildlifecompliance/components/sanction_outcome/email.py @@ -8,7 +8,7 @@ from wildlifecompliance.components.main.email import prepare_attachments, _extract_email_headers from wildlifecompliance.components.sanction_outcome.pdf import create_infringement_notice_pdf, \ create_letter_of_advice_pdf, \ - create_caution_notice_pdf, create_remediation_notice_pdf_bytes + create_caution_notice_pdf, create_remediation_notice_pdf logger = logging.getLogger(__name__) @@ -300,7 +300,7 @@ def send_remediation_notice(to_address, sanction_outcome, workflow_entry, reques } pdf_file_name = 'remediation_notice_{}_{}.pdf'.format(sanction_outcome.lodgement_number, datetime.datetime.now().strftime("%Y%m%d%H%M%S")) - document = create_remediation_notice_pdf_bytes(pdf_file_name, sanction_outcome) + document = create_remediation_notice_pdf(pdf_file_name, sanction_outcome) # Attach files (files from the modal, and the PDF file generated above) attachments = prepare_attachments(workflow_entry.documents) diff --git a/wildlifecompliance/components/sanction_outcome/models.py b/wildlifecompliance/components/sanction_outcome/models.py index 271c2799b..71ee402bc 100644 --- a/wildlifecompliance/components/sanction_outcome/models.py +++ b/wildlifecompliance/components/sanction_outcome/models.py @@ -54,6 +54,7 @@ class SanctionOutcome(models.Model): WORKFLOW_ESCALATE_FOR_WITHDRAWAL = 'escalate_for_withdrawal' # INC: infringement notice coordinator WORKFLOW_RETURN_TO_OFFICER = 'return_to_officer' WORKFLOW_RETURN_TO_INFRINGEMENT_NOTICE_COORDINATOR = 'return_to_infringement_notice_coordinator' + WORKFLOW_MARK_DOCUMENT_POSTED = 'mark_document_posted' WORKFLOW_CLOSE = 'close' PAYMENT_STATUS_PARTIALLY_PAID = 'partially_paid' @@ -71,6 +72,7 @@ class SanctionOutcome(models.Model): STATUS_DRAFT = 'draft' STATUS_AWAITING_ENDORSEMENT = 'awaiting_endorsement' STATUS_AWAITING_PAYMENT = 'awaiting_payment' + STATUS_AWAITING_PRINT_AND_POST = 'awaiting_print_and_post' STATUS_AWAITING_REVIEW = 'awaiting_review' STATUS_AWAITING_REMEDIATION_ACTIONS = 'awaiting_remediation_actions' STATUS_ESCALATED_FOR_WITHDRAWAL = 'escalated_for_withdrawal' @@ -99,6 +101,7 @@ class SanctionOutcome(models.Model): (STATUS_AWAITING_ENDORSEMENT, 'Awaiting Endorsement'), (STATUS_AWAITING_PAYMENT, 'Awaiting Payment'), # TODO: implement pending closuer of SanctionOutcome with type RemediationActions # This is pending closure status + (STATUS_AWAITING_PRINT_AND_POST, 'Awaiting Print and Post'), (STATUS_WITH_DOT, 'With Dep. of Transport'), (STATUS_AWAITING_ISSUANCE, 'Awaiting Issuance'), (STATUS_AWAITING_REVIEW, 'Awaiting Review'), @@ -374,6 +377,9 @@ def get_compliance_permission_group(regionDistrictId, workflow_type): elif workflow_type == SanctionOutcome.WORKFLOW_ENDORSE: codename = 'infringement_notice_coordinator' per_district = False + elif workflow_type == SanctionOutcome.WORKFLOW_MARK_DOCUMENT_POSTED: + codename = 'officer' + per_district = True elif workflow_type == SanctionOutcome.WORKFLOW_RETURN_TO_OFFICER: codename = 'officer' per_district = True @@ -497,30 +503,54 @@ def endorse_parking_infringement(self): self.allocated_group = new_group self.save() - def endorse(self, request): + def mark_document_posted(self, request): + if self.type == SO_TYPE_INFRINGEMENT_NOTICE: + self.status = SanctionOutcome.STATUS_AWAITING_PAYMENT + self.payment_status = SanctionOutcome.PAYMENT_STATUS_UNPAID + self.set_penalty_amounts() + self.create_due_dates() + new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, + SanctionOutcome.WORKFLOW_ENDORSE) + self.allocated_group = new_group + elif self.type == SO_TYPE_CAUTION_NOTICE: + self.status = SanctionOutcome.STATUS_CLOSED + elif self.type == SO_TYPE_LETTER_OF_ADVICE: + self.status = SanctionOutcome.STATUS_CLOSED + elif self.type == SO_TYPE_REMEDIATION_NOTICE: + self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS + + self.save() + + def endorse(self): if self.type == SO_TYPE_INFRINGEMENT_NOTICE: if self.issued_on_paper: self.status = SanctionOutcome.STATUS_AWAITING_PAYMENT self.payment_status = SanctionOutcome.PAYMENT_STATUS_UNPAID self.set_penalty_amounts() self.create_due_dates() + new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, + SanctionOutcome.WORKFLOW_ENDORSE) else: if self.is_issuable(raise_exception=True): self.confirm_date_time_issue(raise_exception=True) - self.status = SanctionOutcome.STATUS_AWAITING_PAYMENT - self.payment_status = SanctionOutcome.PAYMENT_STATUS_UNPAID - self.set_penalty_amounts() - self.create_due_dates() - new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_ENDORSE) + # self.status = SanctionOutcome.STATUS_AWAITING_PAYMENT + self.status = SanctionOutcome.STATUS_AWAITING_PRINT_AND_POST + # self.payment_status = SanctionOutcome.PAYMENT_STATUS_UNPAID + # self.set_penalty_amounts() + # self.create_due_dates() + new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, + SanctionOutcome.WORKFLOW_MARK_DOCUMENT_POSTED) self.allocated_group = new_group - elif self.type in (SO_TYPE_CAUTION_NOTICE, SO_TYPE_LETTER_OF_ADVICE): - # print('In SanctionOutcome.endorse(): Should not reach here...') - # self.close(request) + elif self.type in SO_TYPE_CAUTION_NOTICE: + self.confirm_date_time_issue(raise_exception=True) + + elif self.type in SO_TYPE_LETTER_OF_ADVICE: self.confirm_date_time_issue(raise_exception=True) elif self.type == SO_TYPE_REMEDIATION_NOTICE: - self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS + # self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS + self.status = SanctionOutcome.STATUS_AWAITING_PRINT_AND_POST new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_RETURN_TO_OFFICER) self.allocated_group = new_group @@ -606,6 +636,7 @@ def return_to_infringement_notice_coordinator(self, request): self.log_user_action(SanctionOutcomeUserAction.ACTION_RETURN_TO_INFRINGEMENT_NOTICE_COORDINATOR.format(self.lodgement_number), request) self.save() + def retrieve_penalty_amounts_by_date(self): qs_aco = AllegedCommittedOffence.objects.filter(Q(sanction_outcome=self) & Q(included=True)) if qs_aco.count() != 1: # Only infringement notice can have penalty. Infringement notice can have only one alleged offence. diff --git a/wildlifecompliance/components/sanction_outcome/pdf.py b/wildlifecompliance/components/sanction_outcome/pdf.py index a904efdac..04f764f50 100644 --- a/wildlifecompliance/components/sanction_outcome/pdf.py +++ b/wildlifecompliance/components/sanction_outcome/pdf.py @@ -49,7 +49,7 @@ def create_letter_of_advice_pdf(filename, sanction_outcome): return document -def create_remediation_notice_pdf_bytes(filename, sanction_outcome): +def create_remediation_notice_pdf(filename, sanction_outcome): value = create_remediation_notice_pdf_contents(filename, sanction_outcome) content = ContentFile(value) diff --git a/wildlifecompliance/components/sanction_outcome/serializers.py b/wildlifecompliance/components/sanction_outcome/serializers.py index bac856c04..e1f380635 100644 --- a/wildlifecompliance/components/sanction_outcome/serializers.py +++ b/wildlifecompliance/components/sanction_outcome/serializers.py @@ -509,7 +509,6 @@ def get_user_action(self, obj): process_url = 'Process' view_payment_url = 'View Payment' if inv_ref else '' cc_payment_url = 'Pay' - record_payment_url = 'Record Payment' if inv_ref \ else 'Record Payment' diff --git a/wildlifecompliance/doctopdf.py b/wildlifecompliance/doctopdf.py index 7b5da65f8..dd1c8ef0a 100644 --- a/wildlifecompliance/doctopdf.py +++ b/wildlifecompliance/doctopdf.py @@ -55,6 +55,8 @@ def retrieve_context(sanction_outcome): 'offender_postcode': offender_postcode, 'offender_residential_address': offender_residential_address, 'offender_email': offender_email, + 'offender_phone_number': offender.phone_number, + 'offender_mobile_number': offender.mobile_number, 'registration_number': rego, 'offence_location': offence_location, 'offence_date': offence_date, diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue index 849ca3901..ff873543e 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue @@ -140,6 +140,13 @@ +
+ +
@@ -494,6 +501,7 @@ export default { let vm = this; vm.STATUS_DRAFT = 'draft'; vm.STATUS_AWAITING_ENDORSEMENT = 'awaiting_endorsement'; + vm.STATUS_AWAITING_PRINT_AND_POST = 'awaiting_print_and_post'; vm.STATUS_AWAITING_REVIEW = 'awaiting_review'; vm.STATUS_AWAITING_AMENDMENT = 'awaiting_amendment'; vm.STATUS_AWAITING_PAYMENT = 'awaiting_payment'; @@ -998,6 +1006,15 @@ export default { } return visibility; }, + visibilityMarkDocumentPostedButton: function(){ + let visibility = false; + if (this.sanction_outcome.can_user_action){ + if (this.sanction_outcome.status.id === this.STATUS_AWAITING_PRINT_AND_POST){ + visibility = true; + } + } + return visibility; + }, visibilityEndorseButton: function() { //return true; let visibility = false; @@ -1077,6 +1094,10 @@ export default { this.$refs.send_parking_infringement.isModalOpen = true; }); }, + markDocumentPosted: function(){ + console.log('in markDocumentPosted') + + }, driverSelected: function(data) { console.log(data); this.setDriver(data); diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_dashboard.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_dashboard.vue index 69ccb3301..d4f87184c 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_dashboard.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_dashboard.vue @@ -203,6 +203,7 @@ export default { searchable: true, orderable: true, mRender: function(data, type, full){ + console.log(full) if (full.type.id == 'remediation_notice'){ console.log(full); let num_total = 0; diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue index 9d9644d63..099102e12 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue @@ -384,6 +384,8 @@ export default { { data: 'id', render: function(data, type, full) { + console.log('full: ') + console.log(full) let ret_line = ''; // Chenck if this alleged offence has already a connection to the current offender selected @@ -419,8 +421,13 @@ export default { // Should not reach here ret_line += ''; } else { + let disabled_str = '' + if (full.section_regulation.is_parking_offence){ + disabled_str = ' disabled ' + selected_str = '' + } //ret_line += ''; - ret_line += ''; + ret_line += ''; } } diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_workflow.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_workflow.vue index 6fd790fb2..a3a91b6f3 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_workflow.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_workflow.vue @@ -112,6 +112,9 @@ export default { case 'withdraw_by_branch_manager': return "Withdraw"; break; + case 'mark_document_posted': + return "Mark Document Posted"; + break; default: return "---"; } diff --git a/wildlifecompliance/static/wildlifecompliance/templates/Remediation-Notice.docx b/wildlifecompliance/static/wildlifecompliance/templates/Remediation-Notice.docx index 3118d7591b7b1a692cceb49b33da71ffa725b0e5..dbe979d2ce74c320bea2318a310abd51c2dc8b71 100644 GIT binary patch literal 57537 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 B(`f(z From a259b83792ba807048a44a0b1e65cf2a93550363 Mon Sep 17 00:00:00 2001 From: Katsufumi Shibata Date: Tue, 2 Mar 2021 15:31:17 +0800 Subject: [PATCH 2/2] Fix bugs for workflows --- .../components/sanction_outcome/api.py | 32 +++++++++++-------- .../components/sanction_outcome/models.py | 19 +++++++---- .../sanction_outcome/sanction_outcome.vue | 2 +- .../sanction_outcome_modal.vue | 22 ++++++------- .../send_parking_infringement.vue | 5 ++- 5 files changed, 48 insertions(+), 32 deletions(-) diff --git a/wildlifecompliance/components/sanction_outcome/api.py b/wildlifecompliance/components/sanction_outcome/api.py index 557a1bfe4..ce56b0cd6 100644 --- a/wildlifecompliance/components/sanction_outcome/api.py +++ b/wildlifecompliance/components/sanction_outcome/api.py @@ -1032,26 +1032,32 @@ def send_parking_infringement(self, request, instance=None, *args, **kwargs): try: with transaction.atomic(): instance = self.get_object() if not instance else instance - instance.endorse_parking_infringement() + # instance.endorse_parking_infringement() workflow_entry = self.add_comms_log(request, instance, workflow=True) + instance.endorse() + if not instance.issued_on_paper: + attachments = create_infringement_notice_ybw(instance, workflow_entry) + + # Log action + instance.log_user_action(SanctionOutcomeUserAction.ACTION_ENDORSE_AND_ISSUE.format(instance.lodgement_number), request) # Email to the offender, and bcc to the respoinsible officer, manager and infringement notice coordinators - inc_group = SanctionOutcome.get_compliance_permission_group(None, SanctionOutcome.WORKFLOW_ENDORSE) - inc_emails = [member.email for member in inc_group.members] - to_address = [instance.get_offender()[0].email, ] - cc = None - bcc = [instance.responsible_officer.email, request.user.email] + inc_emails - email_data = send_infringement_notice(to_address, instance, workflow_entry, request, cc, bcc) + # inc_group = SanctionOutcome.get_compliance_permission_group(None, SanctionOutcome.WORKFLOW_ENDORSE) + # inc_emails = [member.email for member in inc_group.members] + # to_address = [instance.get_offender()[0].email, ] + # cc = None + # bcc = [instance.responsible_officer.email, request.user.email] + inc_emails + # email_data = send_infringement_notice(to_address, instance, workflow_entry, request, cc, bcc) # Log the above email as a communication log entry - if email_data: - email_data['sanction_outcome'] = instance.id - serializer = SanctionOutcomeCommsLogEntrySerializer(instance=workflow_entry, data=email_data, partial=True) - serializer.is_valid(raise_exception=True) - serializer.save() + # if email_data: + # email_data['sanction_outcome'] = instance.id + # serializer = SanctionOutcomeCommsLogEntrySerializer(instance=workflow_entry, data=email_data, partial=True) + # serializer.is_valid(raise_exception=True) + # serializer.save() - instance.log_user_action(SanctionOutcomeUserAction.ACTION_ISSUE_PARKING_INFRINGEMENT.format(instance.lodgement_number, ', '.join(to_address)), request) + # instance.log_user_action(SanctionOutcomeUserAction.ACTION_ISSUE_PARKING_INFRINGEMENT.format(instance.lodgement_number, ', '.join(to_address)), request) return Response( # return_serializer.data, diff --git a/wildlifecompliance/components/sanction_outcome/models.py b/wildlifecompliance/components/sanction_outcome/models.py index 71ee402bc..757204e4e 100644 --- a/wildlifecompliance/components/sanction_outcome/models.py +++ b/wildlifecompliance/components/sanction_outcome/models.py @@ -509,8 +509,7 @@ def mark_document_posted(self, request): self.payment_status = SanctionOutcome.PAYMENT_STATUS_UNPAID self.set_penalty_amounts() self.create_due_dates() - new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, - SanctionOutcome.WORKFLOW_ENDORSE) + new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_ENDORSE) self.allocated_group = new_group elif self.type == SO_TYPE_CAUTION_NOTICE: self.status = SanctionOutcome.STATUS_CLOSED @@ -518,6 +517,9 @@ def mark_document_posted(self, request): self.status = SanctionOutcome.STATUS_CLOSED elif self.type == SO_TYPE_REMEDIATION_NOTICE: self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS + # new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_ENDORSE) + new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_RETURN_TO_OFFICER) + self.allocated_group = new_group self.save() @@ -549,10 +551,15 @@ def endorse(self): self.confirm_date_time_issue(raise_exception=True) elif self.type == SO_TYPE_REMEDIATION_NOTICE: - # self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS - self.status = SanctionOutcome.STATUS_AWAITING_PRINT_AND_POST - new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_RETURN_TO_OFFICER) - self.allocated_group = new_group + if self.issued_on_paper: + pass + # TODO: paper issued and endorsed + self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS + else: + # self.status = SanctionOutcome.STATUS_AWAITING_REMEDIATION_ACTIONS + self.status = SanctionOutcome.STATUS_AWAITING_PRINT_AND_POST + new_group = SanctionOutcome.get_compliance_permission_group(self.regionDistrictId, SanctionOutcome.WORKFLOW_RETURN_TO_OFFICER) + self.allocated_group = new_group id_suffix = 1 for remediation_action in self.remediation_actions.all(): diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue index ff873543e..c72dc4c5b 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome.vue @@ -72,7 +72,7 @@ diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue index 099102e12..2326adcc9 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/sanction_outcome_modal.vue @@ -24,6 +24,17 @@
+
+
+ +
+
+
+ +
+
+
+
@@ -50,17 +61,6 @@
-
-
- -
-
-
- -
-
-
-
diff --git a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/send_parking_infringement.vue b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/send_parking_infringement.vue index da4bb5bee..b70c695ef 100644 --- a/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/send_parking_infringement.vue +++ b/wildlifecompliance/frontend/wildlifecompliance/src/components/internal/sanction_outcome/send_parking_infringement.vue @@ -4,6 +4,7 @@
+
@@ -130,7 +132,8 @@ export default { this.processingDetails = true; const response = await this.sendData(); this.close(); - this.$parent.loadSanctionOutcome({ sanction_outcome_id: this.$parent.sanction_outcome.id }); + //this.$parent.loadSanctionOutcome({ sanction_outcome_id: this.$parent.sanction_outcome.id }); + this.$router.push({ name: 'internal-sanction-outcome-dash' }); } catch (err){ this.processError(err); } finally {