From 1769ac6ff63cc968dd7bb221991db740763453a9 Mon Sep 17 00:00:00 2001 From: Son Date: Wed, 19 Jun 2024 15:40:13 -0700 Subject: [PATCH 01/11] add opic applicant consent extension html --- ...opic_applicant_consent_time_extension.html | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html diff --git a/request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html b/request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html new file mode 100644 index 000000000..33de52ad5 --- /dev/null +++ b/request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html @@ -0,0 +1,53 @@ +

Dear {{firstName}} {{lastName}},

+

Note: This form is for any time extension application under section 10(2)(a) based on:

+

section 10(1)(d) consent

+

Reason for Extension:{{extension_reason}}

+

Please attach written proof of the applicant’s consent.

+

Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate.

+ +

Section 1 – Public body background (required: all fields)

+ +

OIPC file # of previous extension (if applicable): {{oipc_file_no}}

+ +

Public body (full name): {{pb_full_name}}

+

Public body File #: {{pb_file_no}}

+

Public body Contact Name: {{pb_contact_name}}

+

Contact Direct Line: {{oipc_contact_direct_line}}

+

Contact Email Address: {{oipc_contact_email_address}}

+ +

Please provide a brief description of the original request:

+

{{request_description}}

+ +

Date request for records received: {{received_request_date}}

+

Original due date of request: {{original_due_date}}

+ +

Was a fee estimate sent? {{fee_estimate_sent}}

+

Date fee estimate sent:{{fee_estimate_sent_date}}

+

Date deposit or full fee paid: {{deposit_or_fullfee_paid_date}}

+

Date of fee waiver decision: {{fee_waiver_decision_date}}

+ +

Current request due date: {{request_due_date}}

+

Number of business days requested for this extension: {{fee_estimate_sent}}

+

Proposed Due Date:  {{fee_estimate_sent}}

+ +

Has the public body already taken a time extension under section 10(1)? {{fee_estimate_sent}}

+ +

If so, please indicate:

+

Date of time extension: {{extension_date}}

+

Number of days extended:  {{number_of_extended_date}}

+ +

Basis for time extension: (☐s. 10(1)(a) ☐s. 10(1)(b) ☐s. 10(1)(c) ☐s. 10(1)(d) )

+

Date of letter notifying applicant of the extension: 

+

Has the applicant complained to the OIPC about this time extension? (Yes or No)

+ +

Section 2 – Proof of applicant consent (required: attachment)

+

Please attach written proof of the applicant’s consent to the time extension. Emails are an acceptable form of proof.

+ +

Forms missing proof of applicant’s consent will not be processed.

+ +

(Please refer to page 9 of the Time extension guidelines for public bodies for more information.)

+
+

Thank you,

+

{{assignedToFirstName}} {{assignedToLastName}}
+{{assignedGroup}}

+ From e917608d84f157b0a91092e967db91d3a1202f95 Mon Sep 17 00:00:00 2001 From: Son Date: Thu, 20 Jun 2024 08:18:16 -0700 Subject: [PATCH 02/11] add OIPC insert migration file --- .../migrations/versions/7583b5428c87_.py | 51 +++++++++++++++++++ .../email/templates/templateconfig.py | 2 + 2 files changed, 53 insertions(+) create mode 100644 request-management-api/migrations/versions/7583b5428c87_.py diff --git a/request-management-api/migrations/versions/7583b5428c87_.py b/request-management-api/migrations/versions/7583b5428c87_.py new file mode 100644 index 000000000..c5c64f2c2 --- /dev/null +++ b/request-management-api/migrations/versions/7583b5428c87_.py @@ -0,0 +1,51 @@ +"""empty message + +Revision ID: 7583b5428c87 +Revises: c3e447d3d94d +Create Date: 2024-06-19 15:29:08.420315 + +""" +from alembic import op +from datetime import datetime +import sqlalchemy as sa +from sqlalchemy.sql import column, table +from sqlalchemy.sql.sqltypes import Boolean, String,Text,Integer,DateTime + + +# revision identifiers, used by Alembic. +revision = '7583b5428c87' +down_revision = 'c3e447d3d94d' +branch_labels = None +depends_on = None + + +def upgrade(): + applicant_correspondence_templates = table('ApplicantCorrespondenceTemplates', + column('name',String), + column('documenturipath',Text), + column('description',String), + column('active',Boolean), + column('display',Boolean), + column('version',Integer), + column('created_at',DateTime), + column('createdby',String), + ) + op.bulk_insert( + applicant_correspondence_templates, + [ + {'name': 'OIPCAPPLICANTCONSENTEXTENSION', + 'description': 'OIPC Applicant Consent Time Extension', + 'active': True, + 'display': True, + 'version': 1, + 'documenturipath': '/TEMPLATES/EMAILS/oipc_applicant_consent_time_extension.html', + 'created_at': datetime.now(), + 'createdby': 'system'}, + ] + ) + + +def downgrade(): + op.execute( + "DELETE FROM ApplicantCorrespondenceTemplates WHERE name = 'OIPCAPPLICANTCONSENTEXTENSION'" + ) diff --git a/request-management-api/request_api/services/email/templates/templateconfig.py b/request-management-api/request_api/services/email/templates/templateconfig.py index b307a2cfe..230762cf0 100644 --- a/request-management-api/request_api/services/email/templates/templateconfig.py +++ b/request-management-api/request_api/services/email/templates/templateconfig.py @@ -16,6 +16,8 @@ def gettemplatename(self, key): return "fee_estimate_notification_outstanding.html" elif key == "PAYOUTSTANDINGFULLPAYMENT": return "fee_payment_confirmation_outstanding.html" + elif key == "OIPCAPPLICANTCONSENTEXTENSION": + return "oipc_applicant_consent_time_extension.html" else: logging.info("Unknown key") return None From b338acccc0da4f6da0c0e6ee2e359c1f2a279b72 Mon Sep 17 00:00:00 2001 From: Son Date: Thu, 20 Jun 2024 22:13:15 -0700 Subject: [PATCH 03/11] convert template to html --- ...oipc_applicant_consent_time_extension.html | 51 ++++++++ .../oipc_first_time_extension.html | 109 ++++++++++++++++++ .../oipc_subsequent_time_extension.html | 67 +++++++++++ ...opic_applicant_consent_time_extension.html | 53 --------- 4 files changed, 227 insertions(+), 53 deletions(-) create mode 100644 request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html create mode 100644 request-management-api/request_api/email_templates/oipc_first_time_extension.html create mode 100644 request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html delete mode 100644 request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html diff --git a/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html b/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html new file mode 100644 index 000000000..97041552e --- /dev/null +++ b/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html @@ -0,0 +1,51 @@ +

Note: This form is for any time extension application under section 10(2)(a) based on:

  • section 10(1)(d) consent

  • + +

    Please attach written proof of the applicant’s consent.

    +

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate.

    + +

    Section 1 – Public body background (required: all fields)

    + +

    OIPC file # of previous extension (if applicable):XXX

    + +

    Public body (full name): {{pb_full_name}}

    +

    Public body File #: {{pb_file_no}}

    +

    Public body Contact Name: {{pb_contact_name}}

    +

    Contact Direct Line: {{oipc_contact_direct_line}}

    +

    Contact Email Address: {{oipc_contact_email_address}}

    + +

    Please provide a brief description of the original request:

    +

    {{description}}

    + +

    Date request for records received: {{receivedDate | formatdate('%B %d, %Y')}}

    +

    Original due date of request: {{originalDueDate | formatdate('%B %d, %Y')}}

    + + 

    Was a fee estimate sent? ​☐​Yes ​☐​No

    Date fee estimate sent:

    Date deposit or full fee paid:

    Date of fee waiver decision:

    + +

    Current request due date: {{request_due_date | formatdate('%B %d, %Y')}}

    +

    Number of business days requested for this extension:XXX

    +

    Proposed Due Date: 

    + +

    Has the public body already taken a time extension under section 10(1)? ​​☐​Yes ​☐​No

    + + 

    If so, please indicate:

    Date of time extension: 

    Number of days extended: XXX

    Basis for time extension: ☐s. 10(1)(a) ☐s. 10(1)(b) ☐s. 10(1)(c) ☐s. 10(1)(d)

    Date of letter notifying applicant of the extension: 

    Has the applicant complained to the OIPC about this time extension? ​​☐​Yes ​☐​No

    + +

    Section 2 – Proof of applicant consent (required: attachment)

    +

    Please attach written proof of the applicant’s consent to the time extension. Emails are an acceptable form of proof.

    + +

    Forms missing proof of applicant’s consent will not be processed.

    + +

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.)

    +
    +

    Thank you,

    +

    {{assignedToFirstName}} {{assignedToLastName}}
    +{{assignedGroup}}

    + diff --git a/request-management-api/request_api/email_templates/oipc_first_time_extension.html b/request-management-api/request_api/email_templates/oipc_first_time_extension.html new file mode 100644 index 000000000..951d18d10 --- /dev/null +++ b/request-management-api/request_api/email_templates/oipc_first_time_extension.html @@ -0,0 +1,109 @@ +

    Note: This form is for time extension applications:

    + +
      +
    • Under section 10(2)(a) based on:

    • +  
    • section 10(1)(a) insufficient detail

    • +  
    • section 10(1)(b) large volume

    • +  
    • section 10(1)(c) consultation

    • +
    + +
      +
    • Under section 10(2)(b):

    • +  
    • if the commissioner otherwise considers that it is fair and reasonable to extend the time for responding

    • +
    + +

    Do not use this form for applications based on section 10(1)(d) consent.

    + +

    Please submit this form at least 3 business daysbefore the due date and ensure that all information is complete and accurate.

    + +

    Section 1 – Public body background (required: all fields)

    + +

    Public body (full name): {{pb_full_name}}

    +

    Public body File #: {{pb_file_no}}

    +

    Public body Contact Name: {{pb_contact_name}}

    +

    Contact Direct Line: {{oipc_contact_direct_line}}

    +

    Contact Email Address: {{oipc_contact_email_address}}

    + +

    Please provide a brief description of the original request:

    +

    {{description}}

    + +

    Date request for records received: {{receivedDate | formatdate('%B %d, %Y')}}

    +

    Original due date of request: {{originalDueDate | formatdate('%B %d, %Y')}}

    + + 

    Was a fee estimate sent? ​☐​Yes ​☐​No

    Date fee estimate sent:

    Date deposit or full fee paid:

    Date of fee waiver decision:

    + +

    Current request due date: {{request_due_date | formatdate('%B %d, %Y')}}

    +

    Number of business days requested for this extension:XXX

    +

    Proposed Due Date: 

    + +

    Has the public body already taken a time extension under section 10(1)? ​​☐​Yes ​☐​No

    + + 

    If so, please indicate:

    Date of time extension: 

    Number of days extended: XXX

    Basis for time extension: ☐s. 10(1)(a) ☐s. 10(1)(b) ☐s. 10(1)(c) ☐s. 10(1)(d)

    Date of letter notifying applicant of the extension: 

    Has the applicant complained to the OIPC about this time extension? ​​☐​Yes ​☐​No

    + +

    Section 2 - Grounds for Current Extension Application (choose all that apply)

    +

    ​​☐​ Section 10(2)(a)

    ​​☐​ s. 10(1)(a) (insufficient detail)

    ☐​ s. 10(1)(b) (volume of records)

    ​​☐​ s. 10(1)(c) (consultation)

    +

    ☐Section 10(2)(b)

    + +

    Section 3 – Additional information (required for each selection made in section 2)

    +

    10(1)(a) Insufficient detail(required: all fields)

    +

    Please include the following with your submission:

    +
  • A complete copy of the original request.

  • + +

    Explain how the original request does not provide sufficient detail:XXXX

    + +

    Explain why satisfactory clarification from the applicant was not obtained within 60 business days (or 30 business days if the public body’s own time extension was not taken): XXXX

    + +

    10(1)(b) Volume of records (required: either volume of records requested, or volume of records searched or both, and an explanation regarding unreasonable interference).

    +

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.)

    + +

    Large volume of records requested

    +

    Approximate number of pages of responsive records:XXXXX

    + +

    Large volume of records searched

    +

    Number of pages searched:XXXXX

    +

    Number of program areas searched:XXXXX

    +

    Total amount of time spent performing search: XXXXX

    + +

    Unreasonable interference with the operations of the public body

    +

    Explain how meeting the time limit would unreasonably interfere with the operations of the public body. XXXX

    + +

    Current status

    +

    Please describe the current status of processing this request and any other relevant information:XXXX

    + +

    10(1)(c) Time for consultation(required: all fields, for each public body/third party consulted)

    +

    (Please refer to page 8 of the Time extension guidelines for public bodies for more information)

    + +

    Full name of the public body or third party:XXXX

    +

    Number of pages sent or to be sent for consultation:XXXX

    +

    Date consultation was sent or will be sent:XXXX

    + +

    Why is consultation necessary to make a decision about access? XXXX

    +

    What is the third party or public body’s interest in the record?XXXX

    + +

    Current status of the consultation, including efforts made to obtain a response to the consultation and expected return date: XXXX

    + +

    10(2)(b) (required: circumstances and explanation)

    +

    10(1)(c) Time for consultation(required: all fields, for each public body/third party consulted)

    +

    Please note the need for exceptional circumstances, such as forest fires, flooding, court involvement, and unforeseeable issues. See pages 9-10 of the time extension guidelines.

    + +

    Explain why it would be fair and reasonable for the Commissioner to grant a time extension. Include a chronology of the processing of the request and an explanation for any delays: XXXX

    + +

    Section 4 – Additional comments

    +

    Please provide any additional comments or details that will assist in the decision on this request: XXXX

    + +
    +

    Thank you,

    +

    {{assignedToFirstName}} {{assignedToLastName}}
    +{{assignedGroup}}

    + diff --git a/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html b/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html new file mode 100644 index 000000000..3a20711e7 --- /dev/null +++ b/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html @@ -0,0 +1,67 @@ +

    Note: This form is for subsequent time extension applications (after the first OIPC-approved extension):

    + +
      +
    • Under section 10(2)(a) based on:

    • +  
    • section 10(1)(a) insufficient detail

    • +  
    • section 10(1)(b) large volume

    • +  
    • section 10(1)(c) consultation

    • +
    + +
      +
    • Under section 10(2)(b):

    • +  
    • if the commissioner otherwise considers that it is fair and reasonable to extend the time for responding

    • +
    + +

    Do not use this form for applications based on section 10(1)(d) consent.

    +

    Please submit this form at least 5 business days before the due date and ensure that all information is complete and accurate.

    + +

    Section 1 – Public body background (required: all fields)

    + +

    OIPC file # of previous extension (if applicable): XXX

    + +

    Public body (full name): {{pb_full_name}}

    +

    Public body File #: {{pb_file_no}}

    +

    Public body Contact Name: {{pb_contact_name}}

    +

    Contact Direct Line: {{oipc_contact_direct_line}}

    +

    Contact Email Address: {{oipc_contact_email_address}}

    +

    FOI applicant (full name):{{oipc_contact_email_address}}

    +

    Applicant email address: {{oipc_contact_email_address}}

    +

    Applicant phone number: {{oipc_contact_email_address}}

    + +

    Please provide a brief description of the original request:

    +

    {{description}}

    + +

    Date request for records received: {{receivedDate | formatdate('%B %d, %Y')}}

    +

    Original due date of request: {{originalDueDate | formatdate('%B %d, %Y')}}

    +

    Current request due date: {{request_due_date | formatdate('%B %d, %Y')}}

    +

    Number of business days requested for this extension: XXX

    +

    Proposed Due Date: 

    + +

    Section 2 - Grounds for Current Extension Application (required: choose all that apply)

    +

    ​​☐​ Section 10(2)(a)

    ​☐​ s. 10(1)(a) (insufficient detail)

    ​​☐​ s. 10(1)(b) (volume of records)

    ​​☐​ s. 10(1)(c) (consultation)

    + +

    ​​☐​ Section 10(2)(b) Please note the need for exceptional circumstances, such as forest fires, flooding, court involvement, and unforeseeable issues. See pages 9-10 of the time extension guidelines.

    + +

    Section 3 – Additional information(required: all fields)

    + +

    Basis for previous time extension:

    ​​☐​ s. 10(1)(a)

    ​​☐​ s. 10(1)(b)

    ​​☐​ s. 10(1)(c)

    ​​☐​ s. 10(1)(d)

    + +

    Number of days previously extended: XXX

    +

    Please explain why the previous time extension was not sufficient to complete the request: XXX

    +

    Describe any changes since the previous time extension was granted: XXX

    +

    Describe the progress made on this file since the previous time extension was granted: XXX

    +

    Have any records been released to the applicant? ​☐​Yes ​☐​No

    +

    Will there be a phased release of records? ​☐​Yes ​☐​No

    + +
    +

    Thank you,

    +

    {{assignedToFirstName}} {{assignedToLastName}}
    +{{assignedGroup}}

    + diff --git a/request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html b/request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html deleted file mode 100644 index 33de52ad5..000000000 --- a/request-management-api/request_api/email_templates/opic_applicant_consent_time_extension.html +++ /dev/null @@ -1,53 +0,0 @@ -

    Dear {{firstName}} {{lastName}},

    -

    Note: This form is for any time extension application under section 10(2)(a) based on:

    -

    section 10(1)(d) consent

    -

    Reason for Extension:{{extension_reason}}

    -

    Please attach written proof of the applicant’s consent.

    -

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate.

    - -

    Section 1 – Public body background (required: all fields)

    - -

    OIPC file # of previous extension (if applicable): {{oipc_file_no}}

    - -

    Public body (full name): {{pb_full_name}}

    -

    Public body File #: {{pb_file_no}}

    -

    Public body Contact Name: {{pb_contact_name}}

    -

    Contact Direct Line: {{oipc_contact_direct_line}}

    -

    Contact Email Address: {{oipc_contact_email_address}}

    - -

    Please provide a brief description of the original request:

    -

    {{request_description}}

    - -

    Date request for records received: {{received_request_date}}

    -

    Original due date of request: {{original_due_date}}

    - -

    Was a fee estimate sent? {{fee_estimate_sent}}

    -

    Date fee estimate sent:{{fee_estimate_sent_date}}

    -

    Date deposit or full fee paid: {{deposit_or_fullfee_paid_date}}

    -

    Date of fee waiver decision: {{fee_waiver_decision_date}}

    - -

    Current request due date: {{request_due_date}}

    -

    Number of business days requested for this extension: {{fee_estimate_sent}}

    -

    Proposed Due Date:  {{fee_estimate_sent}}

    - -

    Has the public body already taken a time extension under section 10(1)? {{fee_estimate_sent}}

    - -

    If so, please indicate:

    -

    Date of time extension: {{extension_date}}

    -

    Number of days extended:  {{number_of_extended_date}}

    - -

    Basis for time extension: (☐s. 10(1)(a) ☐s. 10(1)(b) ☐s. 10(1)(c) ☐s. 10(1)(d) )

    -

    Date of letter notifying applicant of the extension: 

    -

    Has the applicant complained to the OIPC about this time extension? (Yes or No)

    - -

    Section 2 – Proof of applicant consent (required: attachment)

    -

    Please attach written proof of the applicant’s consent to the time extension. Emails are an acceptable form of proof.

    - -

    Forms missing proof of applicant’s consent will not be processed.

    - -

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.)

    -
    -

    Thank you,

    -

    {{assignedToFirstName}} {{assignedToLastName}}
    -{{assignedGroup}}

    - From 69c31857f92506443fdc6de23d98f4789f6ff027 Mon Sep 17 00:00:00 2001 From: Son Date: Thu, 20 Jun 2024 22:15:15 -0700 Subject: [PATCH 04/11] add template name --- .../request_api/services/email/templates/templateconfig.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/request-management-api/request_api/services/email/templates/templateconfig.py b/request-management-api/request_api/services/email/templates/templateconfig.py index 230762cf0..7c0f14992 100644 --- a/request-management-api/request_api/services/email/templates/templateconfig.py +++ b/request-management-api/request_api/services/email/templates/templateconfig.py @@ -18,6 +18,10 @@ def gettemplatename(self, key): return "fee_payment_confirmation_outstanding.html" elif key == "OIPCAPPLICANTCONSENTEXTENSION": return "oipc_applicant_consent_time_extension.html" + elif key == "OIPCFIRSTTIMEEXTENSION": + return "oipc_first_time_extension.html" + elif key == "OIPCSUBSEQUENTTIMEEXTENSION": + return "oipc_subsequent_time_extension.html" else: logging.info("Unknown key") return None From 7e5816152734decc960aa90c49c890fd841276c8 Mon Sep 17 00:00:00 2001 From: Son Date: Thu, 20 Jun 2024 22:17:39 -0700 Subject: [PATCH 05/11] add migration file --- ...5_add_applicantCorrespondenceTemplates.py} | 26 ++++++++++++++----- 1 file changed, 20 insertions(+), 6 deletions(-) rename request-management-api/migrations/versions/{7583b5428c87_.py => 8487688c2e35_add_applicantCorrespondenceTemplates.py} (63%) diff --git a/request-management-api/migrations/versions/7583b5428c87_.py b/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py similarity index 63% rename from request-management-api/migrations/versions/7583b5428c87_.py rename to request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py index c5c64f2c2..2ef9f0063 100644 --- a/request-management-api/migrations/versions/7583b5428c87_.py +++ b/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py @@ -1,8 +1,8 @@ """empty message -Revision ID: 7583b5428c87 +Revision ID: 8487688c2e35 Revises: c3e447d3d94d -Create Date: 2024-06-19 15:29:08.420315 +Create Date: 2024-06-20 17:16:09.447577 """ from alembic import op @@ -13,7 +13,7 @@ # revision identifiers, used by Alembic. -revision = '7583b5428c87' +revision = '8487688c2e35' down_revision = 'c3e447d3d94d' branch_labels = None depends_on = None @@ -32,8 +32,7 @@ def upgrade(): ) op.bulk_insert( applicant_correspondence_templates, - [ - {'name': 'OIPCAPPLICANTCONSENTEXTENSION', + {'name': 'OIPCAPPLICANTCONSENTEXTENSION', 'description': 'OIPC Applicant Consent Time Extension', 'active': True, 'display': True, @@ -41,7 +40,22 @@ def upgrade(): 'documenturipath': '/TEMPLATES/EMAILS/oipc_applicant_consent_time_extension.html', 'created_at': datetime.now(), 'createdby': 'system'}, - ] + {'name': 'OIPCFIRSTTIMEEXTENSION', + 'description': 'OIPC Applicant First Time Extension', + 'active': True, + 'display': True, + 'version': 1, + 'documenturipath': '/TEMPLATES/EMAILS/oipc_first_time_extension.html', + 'created_at': datetime.now(), + 'createdby': 'system'}, + {'name': 'OIPCSUBSEQUENTTIMEEXTENSION', + 'description': 'OIPC Subsequent Time Extension', + 'active': True, + 'display': True, + 'version': 1, + 'documenturipath': '/TEMPLATES/EMAILS/oipc_subsequent_time_extension.html', + 'created_at': datetime.now(), + 'createdby': 'system'}, ) From c6488644fa2c44d69b801c7261b754ebf9595dd1 Mon Sep 17 00:00:00 2001 From: Son Date: Thu, 20 Jun 2024 22:56:09 -0700 Subject: [PATCH 06/11] fixed alembic revision issue --- .../migrations/versions/7583b5428c87_.py | 65 +++++++++++++++++++ ...35_add_applicantCorrespondenceTemplates.py | 15 +++-- 2 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 request-management-api/migrations/versions/7583b5428c87_.py diff --git a/request-management-api/migrations/versions/7583b5428c87_.py b/request-management-api/migrations/versions/7583b5428c87_.py new file mode 100644 index 000000000..0938c365b --- /dev/null +++ b/request-management-api/migrations/versions/7583b5428c87_.py @@ -0,0 +1,65 @@ +"""empty message + +Revision ID: 7583b5428c87 +Revises: c3e447d3d94d +Create Date: 2024-06-19 15:29:08.420315 + +""" +from alembic import op +from datetime import datetime +import sqlalchemy as sa +from sqlalchemy.sql import column, table +from sqlalchemy.sql.sqltypes import Boolean, String,Text,Integer,DateTime + + +# revision identifiers, used by Alembic. +revision = '7583b5428c87' +down_revision = 'c3e447d3d94d' +branch_labels = None +depends_on = None + + +def upgrade(): + applicant_correspondence_templates = table('ApplicantCorrespondenceTemplates', + column('name',String), + column('documenturipath',Text), + column('description',String), + column('active',Boolean), + column('display',Boolean), + column('version',Integer), + column('created_at',DateTime), + column('createdby',String), + ) + op.bulk_insert( + applicant_correspondence_templates, + {'name': 'OIPCAPPLICANTCONSENTEXTENSION', + 'description': 'OIPC Applicant Consent Time Extension', + 'active': True, + 'display': True, + 'version': 1, + 'documenturipath': '/TEMPLATES/EMAILS/oipc_applicant_consent_time_extension.html', + 'created_at': datetime.now(), + 'createdby': 'system'}, + {'name': 'OIPCFIRSTTIMEEXTENSION', + 'description': 'OIPC Applicant First Time Extension', + 'active': True, + 'display': True, + 'version': 1, + 'documenturipath': '/TEMPLATES/EMAILS/oipc_first_time_extension.html', + 'created_at': datetime.now(), + 'createdby': 'system'}, + {'name': 'OIPCSUBSEQUENTTIMEEXTENSION', + 'description': 'OIPC Subsequent Time Extension', + 'active': True, + 'display': True, + 'version': 1, + 'documenturipath': '/TEMPLATES/EMAILS/oipc_subsequent_time_extension.html', + 'created_at': datetime.now(), + 'createdby': 'system'}, + ) + + +def downgrade(): + op.execute( + "DELETE FROM ApplicantCorrespondenceTemplates WHERE name = 'OIPCAPPLICANTCONSENTEXTENSION'" + ) diff --git a/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py b/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py index 2ef9f0063..a8c8f8736 100644 --- a/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py +++ b/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py @@ -14,7 +14,7 @@ # revision identifiers, used by Alembic. revision = '8487688c2e35' -down_revision = 'c3e447d3d94d' +down_revision = '7583b5428c87' branch_labels = None depends_on = None @@ -32,7 +32,7 @@ def upgrade(): ) op.bulk_insert( applicant_correspondence_templates, - {'name': 'OIPCAPPLICANTCONSENTEXTENSION', + [{'name': 'OIPCAPPLICANTCONSENTEXTENSION', 'description': 'OIPC Applicant Consent Time Extension', 'active': True, 'display': True, @@ -40,7 +40,7 @@ def upgrade(): 'documenturipath': '/TEMPLATES/EMAILS/oipc_applicant_consent_time_extension.html', 'created_at': datetime.now(), 'createdby': 'system'}, - {'name': 'OIPCFIRSTTIMEEXTENSION', + {'name': 'OIPCFIRSTTIMEEXTENSION', 'description': 'OIPC Applicant First Time Extension', 'active': True, 'display': True, @@ -48,18 +48,21 @@ def upgrade(): 'documenturipath': '/TEMPLATES/EMAILS/oipc_first_time_extension.html', 'created_at': datetime.now(), 'createdby': 'system'}, - {'name': 'OIPCSUBSEQUENTTIMEEXTENSION', + {'name': 'OIPCSUBSEQUENTTIMEEXTENSION', 'description': 'OIPC Subsequent Time Extension', 'active': True, 'display': True, 'version': 1, 'documenturipath': '/TEMPLATES/EMAILS/oipc_subsequent_time_extension.html', 'created_at': datetime.now(), - 'createdby': 'system'}, + 'createdby': 'system'}] ) def downgrade(): op.execute( - "DELETE FROM ApplicantCorrespondenceTemplates WHERE name = 'OIPCAPPLICANTCONSENTEXTENSION'" + """ + DELETE FROM "ApplicantCorrespondenceTemplates" + WHERE name IN ('OIPCAPPLICANTCONSENTEXTENSION', 'OIPCFIRSTTIMEEXTENSION', 'OIPCSUBSEQUENTTIMEEXTENSION') + """ ) From 1ad2b57b85b9d20c0d4517aa736c48cc2fa40409 Mon Sep 17 00:00:00 2001 From: Son Date: Tue, 25 Jun 2024 06:17:01 -0700 Subject: [PATCH 07/11] changed consent extension file --- ...oipc_applicant_consent_time_extension.html | 209 ++++++++++++++---- 1 file changed, 161 insertions(+), 48 deletions(-) diff --git a/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html b/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html index 97041552e..8f2522a25 100644 --- a/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html +++ b/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html @@ -1,51 +1,164 @@ -

    Note: This form is for any time extension application under section 10(2)(a) based on:

  • section 10(1)(d) consent

  • + + -

    Please attach written proof of the applicant’s consent.

    -

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate.

    + + + -

    Section 1 – Public body background (required: all fields)

    - -

    OIPC file # of previous extension (if applicable):XXX

    - -

    Public body (full name): {{pb_full_name}}

    -

    Public body File #: {{pb_file_no}}

    -

    Public body Contact Name: {{pb_contact_name}}

    -

    Contact Direct Line: {{oipc_contact_direct_line}}

    -

    Contact Email Address: {{oipc_contact_email_address}}

    - -

    Please provide a brief description of the original request:

    -

    {{description}}

    - -

    Date request for records received: {{receivedDate | formatdate('%B %d, %Y')}}

    -

    Original due date of request: {{originalDueDate | formatdate('%B %d, %Y')}}

    - - 

    Was a fee estimate sent? ​☐​Yes ​☐​No

    Date fee estimate sent:

    Date deposit or full fee paid:

    Date of fee waiver decision:

    - -

    Current request due date: {{request_due_date | formatdate('%B %d, %Y')}}

    -

    Number of business days requested for this extension:XXX

    -

    Proposed Due Date: 

    - -

    Has the public body already taken a time extension under section 10(1)? ​​☐​Yes ​☐​No

    - - 

    If so, please indicate:

    Date of time extension: 

    Number of days extended: XXX

    Basis for time extension: ☐s. 10(1)(a) ☐s. 10(1)(b) ☐s. 10(1)(c) ☐s. 10(1)(d)

    Date of letter notifying applicant of the extension: 

    Has the applicant complained to the OIPC about this time extension? ​​☐​Yes ​☐​No

    - -

    Section 2 – Proof of applicant consent (required: attachment)

    -

    Please attach written proof of the applicant’s consent to the time extension. Emails are an acceptable form of proof.

    - -

    Forms missing proof of applicant’s consent will not be processed.

    - -

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.)

    -
    -

    Thank you,

    -

    {{assignedToFirstName}} {{assignedToLastName}}
    -{{assignedGroup}}

    + +
    +
    +
    +

    NoteThis form is for any time extension application under section 10(2)(a) based on: 

    +
    +
    +

     

    +
    +
    +
      +
    • +

      section 10(1)(d) consent 

      +
    • +
    +
    +
    +

     

    +
    +
    +

    Please attach written proof of the applicant’s consent. 

    +
    +
    +

     

    +
    +
    +

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate. 

    +
    +
    +

    Shape 

    +
    +
    +

    Section 1 – Public body background (required: all fields) 

    +
    +
    +

    OIPC file # of previous extension (if applicable):  XXX 

    +
    +
    +

    Shape 

    +
    +
    +

    Public body (full name):  Ministry of Advanced Education and Skills Training 

    +
    +
    +

    Public body File #:  XXX-XXXX-XXXXX 

    +
    +
    +

    Public body Contact Name:  FOI Analyst 

    +
    + +
    +

    Contact Email Address:  XXX.XXX@gov.bc.ca 

    +
    +
    +

    Shape 

    +
    +
    +
    +

    Please provide a brief description of the original request: 

    +
    +
    +

    {{description}} 

    +
    +
    +

    Shape 

    +
    +
    +

    Date request for records received:  MM/DD/YYY 

    +
    +
    +

    Original due date of request:  Date 

    +
    +
    +

     

    +
    +
    +

    Was a fee estimate sent?    Yes        No 

    +
    +
    +

    Date fee estimate sent:  Date 

    +
    +
    +

    Date deposit or full fee paid:   

    +
    +
    +

    Date of fee waiver decision:  Date 

    +
    +
    +

     

    +
    +
    +

    Current request due date:  MM/DD/YYYY 

    +
    +
    +

    Number of business days requested for this extension:  XXX 

    +
    +
    +

    Proposed Due Date:   

    +
    +
    +

    Shape 

    +
    +
    +

    Has the public body already taken a time extension under section 10(1)? 

    +
    +
    +

    Yes   No 

    +
    +
    +

    If so, please indicate: 

    +
    +
    +

    Date of time extension:  Date 

    +
    +
    +

    Number of days extended:  XXX 

    +
    +
    +

     

    +
    +
    +

    Basis for time extension: 

    +
    +
    +

    s. 10(1)(a)   s. 10(1)(b)    s. 10(1)(c)   s. 10(1)(d) 

    +
    +
    +

    Date of letter notifying applicant of the extension:  Date 

    +
    +
    +

    Has the applicant complained to the OIPC about this time extension? 

    +
    +
    +

    Yes   No 

    +
    +
    +

    Shape 

    +
    +
    +

    Section 2 – Proof of applicant consent (required: attachment) 

    +
    +
    +

    Please attach written proof of the applicant’s consent to the time extension. Emails are an acceptable form of proof. 

    +
    +
    +

    Forms missing proof of applicant’s consent will not be processed. 

    +
    +
    +

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.) 

    +
    +
    +

    + + \ No newline at end of file From dd924022cf1fe0e5723c48d3a20e690bb92c5ce3 Mon Sep 17 00:00:00 2001 From: JieunSon96 Date: Thu, 27 Jun 2024 14:47:52 -0700 Subject: [PATCH 08/11] added functions to fetch template variables --- .../ContactApplicant/util.tsx | 63 ++- ...oipc_applicant_consent_time_extension.html | 214 ++++---- .../oipc_first_time_extension.html | 486 ++++++++++++++---- .../oipc_subsequent_time_extension.html | 294 ++++++++--- 4 files changed, 776 insertions(+), 281 deletions(-) diff --git a/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx b/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx index 8dddb35d1..06c3e95c8 100644 --- a/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx +++ b/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx @@ -1,3 +1,5 @@ +import { any } from "prop-types"; + export const renderTemplate = (template: string, content: string, params: Array) => { let newTemplate = template.replace("{{content}}", content); return applyVariables(newTemplate, params); @@ -11,6 +13,46 @@ export const applyVariables = (content: string, params: Array) => { return newContent; } +// Function to map extension reason id to its textual representation +const mapSectionWithExtensionReasonId = (extensionReasonId: number) => { + switch (extensionReasonId) { + case 6: + return "10(1)(d)"; // 10(1)(d) = Applicant Consent + case 7: + return "10(1)(c)"; // 10(1)(c) = Consultation + case 8: + return "10(1)(a)"; // 10(1)(a) = Further detail from applicant required + case 9: + return "10(1)(b)"; // 10(1)(b) = Large Volume and/or Volume of Search + default: + return ""; + } +}; + +// List of reasons to check already taken a time extension under section 10(1) +const reasonsToCheck = [ + "OIPC - Applicant Consent", + "OIPC - Consultation", + "OIPC - Further Detail from Applicant Required", + "OIPC - Large Volume and/or Volume of Search" +]; + +// Find the record that matches the criteria for already taken a time extension under section 10(1), excluding the most recent record. +const findLatestMatchingTimeExtension = (requestExtensions: any[], reasonsToCheck: string[]): any | null => { + const foundObject = requestExtensions + .filter(extension => extension.extensiontype === "OIPC" && reasonsToCheck.includes(extension.extensionreson) && extension !== requestExtensions[0]) + .find(extension => reasonsToCheck.includes(extension.extensionreson)) || null; + + return foundObject; +}; + +// Function to check and return "Yes" or "No" +const isAlreadyTakenTimeExtension = (result: any | null): string => { + return result === null ? "No" : "Yes"; +}; + +// Check if there are any OIPC details. +const oipcComplaintCheck = (oipcdetails: any): string => oipcdetails && oipcdetails.length > 0 ? "Yes" : "No"; export const getExtensiondetails = (requestExtensions:any, type: string) => { if (requestExtensions && requestExtensions.length >0) { @@ -18,15 +60,20 @@ export const getExtensiondetails = (requestExtensions:any, type: string) => { if (recentExtension["extensiontype"] === "Public Body" && recentExtension["extensionstatus"] == "Approved") { return [recentExtension["extendedduedays"], recentExtension["extendedduedate"], recentExtension["extensionreson"]] } else if (recentExtension["extensiontype"] === "OIPC" && recentExtension["extensionstatus"] == "Approved") { - return [recentExtension["approvednoofdays"], recentExtension["extendedduedate"], recentExtension["extensionreson"]] + return [recentExtension["approvednoofdays"], recentExtension["extendedduedate"], recentExtension["extensionreson"], recentExtension["created_at"], recentExtension["extensionreasonid"], recentExtension["decisiondate"] + ] } } - return ["","",""] + return ["","","","","",""] } export const getTemplateVariables = (requestDetails: any, requestExtensions:any, templateInfo: any) => { let oipcExtension = getExtensiondetails(requestExtensions, "OIPC"); let pbExtension = getExtensiondetails(requestExtensions, "Public Body"); + + // Find the record that matches the criteria for already taken a time extension under section 10(1), excluding the most recent record + const filteredOutLatestExtensions = findLatestMatchingTimeExtension(requestExtensions, reasonsToCheck); + return [ {name: "{{axisRequestId}}", value: requestDetails.axisRequestId}, {name: "{{title}}", value: templateInfo?.label || ""}, @@ -43,6 +90,18 @@ export const getTemplateVariables = (requestDetails: any, requestExtensions:any, {name: "{{pbExtensionDueDate}}", value: pbExtension[1]}, {name: "{{pbExtensionReason}}", value: pbExtension[2]}, {name: "{{pbExtensionBody}}", value: "public body"}, + {name: "{{oipcExtensionDueDays}}", value: oipcExtension[0]}, + {name: "{{oipcExtensionDueDates}}", value: oipcExtension[1]}, + {name: "{{oipcExtensionReason}}", value: oipcExtension[2]}, + {name: "{{oipcExtensionNotiDate}}", value: oipcExtension[5]}, + {name: "{{oipcOriginalReceivedDate}}", value: requestDetails.receivedDate}, + {name: "{{oipcOriginalDueDate}}", value: requestDetails.originalDueDate}, + {name: "{{sectionID}}", value: mapSectionWithExtensionReasonId(oipcExtension[4])}, + {name: "{{takenExtensionStatus}}", value: isAlreadyTakenTimeExtension(filteredOutLatestExtensions)}, + {name: "{{filteredExtensionDate}}", value: filteredOutLatestExtensions ? filteredOutLatestExtensions.extendedduedate : ""}, + {name: "{{filteredExtensionDueDays}}", value: filteredOutLatestExtensions ? filteredOutLatestExtensions.extendedduedays : ""}, + {name: "{{oipcComplaintStatus}}", value: oipcComplaintCheck(requestDetails.oipcdetails)}, + ]; } diff --git a/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html b/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html index 8f2522a25..0130b0f73 100644 --- a/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html +++ b/request-management-api/request_api/email_templates/oipc_applicant_consent_time_extension.html @@ -5,160 +5,168 @@ - -
    -
    + + + + + + +
    +
    -

    NoteThis form is for any time extension application under section 10(2)(a) based on: 

    +

    NoteThis form is for any time extension application under section 10(2)(a) based on: 

    -

     

    +

     

    -
      -
    • -

      section 10(1)(d) consent 

      -
    • -
    +
      +
    • +

      section 10(1)(d) consent 

      +
    • +
    -

     

    +

     

    -

    Please attach written proof of the applicant’s consent. 

    +

    Please attach written proof of the applicant’s consent. 

    -

     

    +

     

    -

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate. 

    +

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate. 

    -

    Shape 

    +

    Shape 

    -

    Section 1 – Public body background (required: all fields) 

    +

    Section 1 – Public body background (required: all fields) 

    -

    OIPC file # of previous extension (if applicable):  XXX 

    +

    OIPC file # of previous extension (if applicable):  XXX 

    -

    Shape 

    +

    Shape 

    -

    Public body (full name):  Ministry of Advanced Education and Skills Training 

    +

    Public body (full name):  {{selectedMinistry}} 

    -

    Public body File #:  XXX-XXXX-XXXXX 

    +

    Public body File #:  {{axisRequestId}} 

    -

    Public body Contact Name:  FOI Analyst 

    +

    Public body Contact Name:  {{assignedToFirstName}}  {{assignedToLastName}} 

    +

    Contact Direct Line:  250 XXX-XXXXD 

    +
    -->
    -

    Contact Email Address:  XXX.XXX@gov.bc.ca 

    +

    Contact Email Address:  {{assignedGroupEmail}} 

    -

    Shape 

    +

    Shape 

    -
    -
    +
    +

    Please provide a brief description of the original request: 

    -
    -
    +
    +

    {{description}} 

    -
    -
    +
    +

    Shape 

    -
    -
    -

    Date request for records received:  MM/DD/YYY 

    -
    -
    -

    Original due date of request:  Date 

    -
    -
    +
    +
    +

    Date request for records received:  {{oipcOriginalReceivedDate}} 

    +
    +
    +

    Original due date of request:  {{oipcOriginalDueDate}} 

    +
    +

     

    -
    -
    +
    +

    Was a fee estimate sent?    Yes        No 

    -
    -
    +
    +

    Date fee estimate sent:  Date 

    -
    -
    +
    +

    Date deposit or full fee paid:   

    -
    -
    +
    +

    Date of fee waiver decision:  Date 

    -
    -
    +
    +

     

    -
    -
    -

    Current request due date:  MM/DD/YYYY 

    -
    -
    -

    Number of business days requested for this extension:  XXX 

    -
    -
    -

    Proposed Due Date:   

    -
    -
    +
    +
    +

    Current request due date:  {{oipcOriginalDueDate}} 

    +
    +
    +

    Number of business days requested for this extension:  {{oipcExtensionDueDays}} 

    +
    +
    +

    Proposed Due Date:  {{oipcOriginalDueDate}} 

    +
    +

    Shape 

    -
    -
    +
    +

    Has the public body already taken a time extension under section 10(1)? 

    -
    -
    -

    Yes   No 

    -
    -
    +
    +
    +

    + {{takenExtensionStatus}}    +

    +
    +

    If so, please indicate: 

    -
    -
    -

    Date of time extension:  Date 

    -
    -
    -

    Number of days extended:  XXX 

    -
    -
    +
    +
    +

    Date of time extension:  {{filteredExtensionDate}} 

    +
    +
    +

    Number of days extended:  {{filteredExtensionDueDays}} 

    +
    +

     

    -
    -
    +
    +

    Basis for time extension: 

    -
    -
    -

    s. 10(1)(a)   s. 10(1)(b)    s. 10(1)(c)   s. 10(1)(d) 

    -
    -
    -

    Date of letter notifying applicant of the extension:  Date 

    -
    -
    +
    +
    +

    {{sectionID}}        

    +
    +
    +

    Date of letter notifying applicant of the extension:  {{oipcExtensionNotiDate}} 

    +
    +

    Has the applicant complained to the OIPC about this time extension? 

    -
    -
    -

    Yes   No 

    -
    -
    +
    +
    +

    {{oipcComplaintStatus}} 

    +
    +

    Shape 

    -
    -
    +
    +

    Section 2 – Proof of applicant consent (required: attachment) 

    -
    -
    +
    +

    Please attach written proof of the applicant’s consent to the time extension. Emails are an acceptable form of proof. 

    -
    -
    +
    +

    Forms missing proof of applicant’s consent will not be processed. 

    -
    -
    -

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.) 

    -
    -
    -

    - +
    +
    +

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.) 

    +
    + +

    + + \ No newline at end of file diff --git a/request-management-api/request_api/email_templates/oipc_first_time_extension.html b/request-management-api/request_api/email_templates/oipc_first_time_extension.html index 951d18d10..cfb42f329 100644 --- a/request-management-api/request_api/email_templates/oipc_first_time_extension.html +++ b/request-management-api/request_api/email_templates/oipc_first_time_extension.html @@ -1,109 +1,377 @@ -

    Note: This form is for time extension applications:

    - -
      -
    • Under section 10(2)(a) based on:

    • -  
    • section 10(1)(a) insufficient detail

    • -  
    • section 10(1)(b) large volume

    • -  
    • section 10(1)(c) consultation

    • -
    - -
      -
    • Under section 10(2)(b):

    • -  
    • if the commissioner otherwise considers that it is fair and reasonable to extend the time for responding

    • -
    - -

    Do not use this form for applications based on section 10(1)(d) consent.

    - -

    Please submit this form at least 3 business daysbefore the due date and ensure that all information is complete and accurate.

    - -

    Section 1 – Public body background (required: all fields)

    - -

    Public body (full name): {{pb_full_name}}

    -

    Public body File #: {{pb_file_no}}

    -

    Public body Contact Name: {{pb_contact_name}}

    -

    Contact Direct Line: {{oipc_contact_direct_line}}

    -

    Contact Email Address: {{oipc_contact_email_address}}

    - -

    Please provide a brief description of the original request:

    -

    {{description}}

    - -

    Date request for records received: {{receivedDate | formatdate('%B %d, %Y')}}

    -

    Original due date of request: {{originalDueDate | formatdate('%B %d, %Y')}}

    - - 

    Was a fee estimate sent? ​☐​Yes ​☐​No

    Date fee estimate sent:

    Date deposit or full fee paid:

    Date of fee waiver decision:

    - -

    Current request due date: {{request_due_date | formatdate('%B %d, %Y')}}

    -

    Number of business days requested for this extension:XXX

    -

    Proposed Due Date: 

    - -

    Has the public body already taken a time extension under section 10(1)? ​​☐​Yes ​☐​No

    - - 

    If so, please indicate:

    Date of time extension: 

    Number of days extended: XXX

    Basis for time extension: ☐s. 10(1)(a) ☐s. 10(1)(b) ☐s. 10(1)(c) ☐s. 10(1)(d)

    Date of letter notifying applicant of the extension: 

    Has the applicant complained to the OIPC about this time extension? ​​☐​Yes ​☐​No

    - -

    Section 2 - Grounds for Current Extension Application (choose all that apply)

    -

    ​​☐​ Section 10(2)(a)

    ​​☐​ s. 10(1)(a) (insufficient detail)

    ☐​ s. 10(1)(b) (volume of records)

    ​​☐​ s. 10(1)(c) (consultation)

    -

    ☐Section 10(2)(b)

    - -

    Section 3 – Additional information (required for each selection made in section 2)

    -

    10(1)(a) Insufficient detail(required: all fields)

    -

    Please include the following with your submission:

    -
  • A complete copy of the original request.

  • - -

    Explain how the original request does not provide sufficient detail:XXXX

    - -

    Explain why satisfactory clarification from the applicant was not obtained within 60 business days (or 30 business days if the public body’s own time extension was not taken): XXXX

    - -

    10(1)(b) Volume of records (required: either volume of records requested, or volume of records searched or both, and an explanation regarding unreasonable interference).

    -

    (Please refer to page 9 of the Time extension guidelines for public bodies for more information.)

    - -

    Large volume of records requested

    -

    Approximate number of pages of responsive records:XXXXX

    - -

    Large volume of records searched

    -

    Number of pages searched:XXXXX

    -

    Number of program areas searched:XXXXX

    -

    Total amount of time spent performing search: XXXXX

    - -

    Unreasonable interference with the operations of the public body

    -

    Explain how meeting the time limit would unreasonably interfere with the operations of the public body. XXXX

    - -

    Current status

    -

    Please describe the current status of processing this request and any other relevant information:XXXX

    - -

    10(1)(c) Time for consultation(required: all fields, for each public body/third party consulted)

    -

    (Please refer to page 8 of the Time extension guidelines for public bodies for more information)

    - -

    Full name of the public body or third party:XXXX

    -

    Number of pages sent or to be sent for consultation:XXXX

    -

    Date consultation was sent or will be sent:XXXX

    - -

    Why is consultation necessary to make a decision about access? XXXX

    -

    What is the third party or public body’s interest in the record?XXXX

    - -

    Current status of the consultation, including efforts made to obtain a response to the consultation and expected return date: XXXX

    - -

    10(2)(b) (required: circumstances and explanation)

    -

    10(1)(c) Time for consultation(required: all fields, for each public body/third party consulted)

    -

    Please note the need for exceptional circumstances, such as forest fires, flooding, court involvement, and unforeseeable issues. See pages 9-10 of the time extension guidelines.

    - -

    Explain why it would be fair and reasonable for the Commissioner to grant a time extension. Include a chronology of the processing of the request and an explanation for any delays: XXXX

    - -

    Section 4 – Additional comments

    -

    Please provide any additional comments or details that will assist in the decision on this request: XXXX

    - -
    -

    Thank you,

    -

    {{assignedToFirstName}} {{assignedToLastName}}
    -{{assignedGroup}}

    - +
    +
    +

    Note: This form is for time extension applications: 

    +
    +
    +

     

    +
    +
    +
      +
    • +

      Under section 10(2)(a) based on: 

      +
    • +
    +
    +
    +
      +
    • +

      section 10(1)(a) insufficient detail 

      +
    • +
    +
    +
    +
      +
    • +

      section 10(1)(b) large volume 

      +
    • +
    +
    +
    +
      +
    • +

      section 10(1)(c) consultation 

      +
    • +
    +
    +
    +

     

    +
    +
    +
      +
    • +

      Under section 10(2)(b): 

      +
    • +
    +
    +
    +
      +
    • +

      if the commissioner otherwise considers that it is fair and reasonable to extend the time for responding 

      +
    • +
    +
    +
    +

     

    +
    +
    +

    Do not use this form for applications based on section 10(1)(d) consent. 

    +
    +
    +

     

    +
    +
    +

    Please submit this form at least 3 business days before the due date and ensure that all information is complete and accurate. 

    +
    +
    +

    Shape 

    +
    +
    +

    Section 1 – Public body background (required: all fields) 

    +
    +
    +

     

    +
    +
    +

    Public body (full name):  {{selectedMinistry}} 

    +
    +
    +
    +

    Public body File #:  {{axisRequestId}} 

    +
    +
    +

    Public body Contact Name:  {{assignedToFirstName}}  {{assignedToLastName}} 

    +
    + +
    +

    Contact Email Address:  {{assignedGroupEmail}} 

    +
    +
    +

    Shape 

    +
    +
    +

    Please provide a brief description of the original request: 

    +
    +
    +

    {{description}} 

    +
    +
    +

    Shape 

    +
    +
    +

    Date request for records received:  {{oipcOriginalReceivedDate}} 

    +
    +
    +

    Original due date of request:  {{oipcOriginalDueDate}} 

    +
    +
    +

     

    +
    +
    +

    Was a fee estimate sent?    Yes        No 

    +
    +
    +

    Date fee estimate sent:  Date 

    +
    +
    +

    Date deposit or full fee paid:   

    +
    +
    +

    Date of fee waiver decision:  Date 

    +
    +
    +

     

    +
    +
    +

    Current request due date:  {{oipcOriginalDueDate}} 

    +
    +
    +

    Number of business days requested for this extension:  XXX 

    +
    +
    +

    Proposed Due Date:   

    +
    +
    +

     

    +
    +
    +

    Shape 

    +
    +
    +

    Has the public body already taken a time extension under section 10(1)? 

    +
    +
    +

    {{takenExtensionStatus}}   

    +
    +
    +

    If so, please indicate: 

    +
    +
    +

    Date of time extension:  {{filteredExtensionDate}} 

    +
    +
    +

    Number of days extended:  {{filteredExtensionDueDays}} 

    +
    +
    +

    Basis for previous time extension: {{sectionID}} 

    +
    +
    +

    Number of days extended:  {{filteredExtensionDueDays}} 

    +
    +
    +

    Date of letter notifying applicant of the extension:  {{oipcExtensionNotiDate}} 

    +
    +
    +

    Has the applicant complained to the OIPC about this time extension? 

    +
    +
    +

    {{oipcComplaintStatus}}    

    +
    +
    +

    Shape 

    +
    +
    +

    Section 2 - Grounds for Current Extension Application (choose all that apply) 

    +
    +
    +

      Section 10(2)(a) 

    +
    +
    +

       {{sectionID}} 

    +
    +
    +

       

    +
    +
    +

       

    +
    +
    +

      Section 10(2)(b) 

    +
    +
    +

     

    +
    +
    +

    Shape 

    +
    +
    +
    +

    Section 3 – Additional information (required for each selection made in section 2) 

    +
    +
    +

     

    +
    +
    +

    10(1)(a) Insufficient detail (required: all fields) 

    +
    +
    +

    Please include the following with your submission: 

    +
    +
    +
      +
    • +

      A complete copy of the original request. 

      +
    • +
    +
    +
    +

     

    +
    +
    +

    Explain how the original request does not provide sufficient detail: 

    +
    +
    +

    XXXX 

    +
    +
    +

     

    +
    +
    +

    Explain why satisfactory clarification from the applicant was not obtained within 60 business days (or 30 business days if the public body’s own time extension was not taken): 

    +
    +
    +

    XXXX 

    +
    +
    +

    Shape 

    +
    +
    +

    10(1)(b) Volume of records (required: either volume of records requested, or volume of records searched or both, and an explanation regarding unreasonable interference). 

    +
    +
    +

     

    +
    +
    +

    Large volume of records requested 

    +
    +
    +

     

    +
    +
    +

    Approximate number of pages of responsive records:  XXXXX 

    +
    +
    +

     

    +
    +
    +

    Large volume of records searched  

    +
    +
    +

     

    +
    +
    +
    +

    Number of pages searched:  XXXXX 

    +
    +
    +

    Number of program areas searched:  XXXXX 

    +
    +
    +

    Total amount of time spent performing search:  XXXXX 

    +
    +
    +

     

    +
    +
    +

    Unreasonable interference with the operations of the public body 

    +
    +
    +

    Explain how meeting the time limit would unreasonably interfere with the operations of the public body. 

    +
    +
    +

    XXXX 

    +
    +
    +

     

    +
    +
    +

    Current status 

    +
    +
    +

    Please describe the current status of processing this request and any other relevant information: 

    +
    +
    +

    XXXX 

    +
    +
    +

    Shape 

    +
    +
    +

    10(1)(c) Time for consultation (required: all fields, for each public body/third party consulted) 

    +
    +
    +

    (Please refer to page 8 of the Time extension guidelines for public bodies for more information) 

    +
    +
    +

     

    +
    +
    +

    Full name of the public body or third party: XXXX 

    +
    +
    +

    Number of pages sent or to be sent for consultation:  XXXX 

    +
    +
    +

    Date consultation was sent or will be sent:  XXXX 

    +
    +
    +

     

    +
    +
    +

    Why is consultation necessary to make a decision about access? 

    +
    +
    +

    XXXX 

    +
    +
    +

    What is the third party or public body’s interest in the record? 

    +
    +
    +

    XXXX 

    +
    +
    +

     

    +
    +
    +

    Current status of the consultation, including efforts made to obtain a response to the consultation and expected return date: 

    +
    +
    +

    XXXX 

    +
    +
    +

    Shape 

    +
    +
    +

     

    +
    +
    +

    10(2)(b)  (required: circumstances and explanation) 

    +
    +
    +

    Please note the need for exceptional circumstances, such as forest fires, flooding, court involvement, and unforeseeable issues. See pages 9-10 of the time extension guidelines. 

    +
    +
    +

     

    +
    +
    +

    Explain why it would be fair and reasonable for the Commissioner to grant a time extension. Include a chronology of the processing of the request and an explanation for any delays: 

    +
    +
    +

    XXXX  

    +
    +
    +

    Shape 

    +
    +
    +

     

    +
    +
    +

    Section 4 – Additional comments 

    +
    +
    +

    Please provide any additional comments or details that will assist in the decision on this request: 

    +
    +
    +

    XXXX 

    +
    \ No newline at end of file diff --git a/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html b/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html index 3a20711e7..f8da88a26 100644 --- a/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html +++ b/request-management-api/request_api/email_templates/oipc_subsequent_time_extension.html @@ -1,67 +1,227 @@ -

    Note: This form is for subsequent time extension applications (after the first OIPC-approved extension):

    - -
      -
    • Under section 10(2)(a) based on:

    • -  
    • section 10(1)(a) insufficient detail

    • -  
    • section 10(1)(b) large volume

    • -  
    • section 10(1)(c) consultation

    • -
    - -
      -
    • Under section 10(2)(b):

    • -  
    • if the commissioner otherwise considers that it is fair and reasonable to extend the time for responding

    • -
    - -

    Do not use this form for applications based on section 10(1)(d) consent.

    -

    Please submit this form at least 5 business days before the due date and ensure that all information is complete and accurate.

    - -

    Section 1 – Public body background (required: all fields)

    - -

    OIPC file # of previous extension (if applicable): XXX

    - -

    Public body (full name): {{pb_full_name}}

    -

    Public body File #: {{pb_file_no}}

    -

    Public body Contact Name: {{pb_contact_name}}

    -

    Contact Direct Line: {{oipc_contact_direct_line}}

    -

    Contact Email Address: {{oipc_contact_email_address}}

    -

    FOI applicant (full name):{{oipc_contact_email_address}}

    -

    Applicant email address: {{oipc_contact_email_address}}

    -

    Applicant phone number: {{oipc_contact_email_address}}

    - -

    Please provide a brief description of the original request:

    -

    {{description}}

    - -

    Date request for records received: {{receivedDate | formatdate('%B %d, %Y')}}

    -

    Original due date of request: {{originalDueDate | formatdate('%B %d, %Y')}}

    -

    Current request due date: {{request_due_date | formatdate('%B %d, %Y')}}

    -

    Number of business days requested for this extension: XXX

    -

    Proposed Due Date: 

    - -

    Section 2 - Grounds for Current Extension Application (required: choose all that apply)

    -

    ​​☐​ Section 10(2)(a)

    ​☐​ s. 10(1)(a) (insufficient detail)

    ​​☐​ s. 10(1)(b) (volume of records)

    ​​☐​ s. 10(1)(c) (consultation)

    - -

    ​​☐​ Section 10(2)(b) Please note the need for exceptional circumstances, such as forest fires, flooding, court involvement, and unforeseeable issues. See pages 9-10 of the time extension guidelines.

    - -

    Section 3 – Additional information(required: all fields)

    - -

    Basis for previous time extension:

    ​​☐​ s. 10(1)(a)

    ​​☐​ s. 10(1)(b)

    ​​☐​ s. 10(1)(c)

    ​​☐​ s. 10(1)(d)

    - -

    Number of days previously extended: XXX

    -

    Please explain why the previous time extension was not sufficient to complete the request: XXX

    -

    Describe any changes since the previous time extension was granted: XXX

    -

    Describe the progress made on this file since the previous time extension was granted: XXX

    -

    Have any records been released to the applicant? ​☐​Yes ​☐​No

    -

    Will there be a phased release of records? ​☐​Yes ​☐​No

    - -
    -

    Thank you,

    -

    {{assignedToFirstName}} {{assignedToLastName}}
    -{{assignedGroup}}

    - +
    +
    +

    Note: This form is for subsequent time extension applications (after the first OIPC-approved extension): 

    +
    +
    +

     

    +
    +
    +
      +
    • +

      Under section 10(2)(a) based on: 

      +
    • +
    +
    +
    +
      +
    • +

      section 10(1)(a) insufficient detail 

      +
    • +
    +
    +
    +
      +
    • +

      section 10(1)(b) large volume 

      +
    • +
    +
    +
    +
      +
    • +

      section 10(1)(c) consultation 

      +
    • +
    +
    +
    +

     

    +
    +
    +
      +
    • +

      Under section 10(2)(b): 

      +
    • +
    +
    +
    +
      +
    • +

      if the commissioner otherwise considers that it is fair and reasonable to extend the time for responding 

      +
    • +
    +
    +
    +

     

    +
    +
    +

    Do not use this form for applications based on section 10(1)(d) consent. 

    +
    +
    +

     

    +
    +
    +

    Please submit this form at least 5 business days before the due date and ensure that all information is complete and accurate. 

    +
    +
    +

    Shape 

    +
    +
    +

    Section 1 – Public body background (required: all fields) 

    +
    +
    +

    OIPC file # of previous extension (if applicable):  XXX 

    +
    +
    +

    Shape 

    +
    +
    +
    +

    Public body (full name):  {{selectedMinistry}} 

    +
    +
    +

    Public body File #:  {{axisRequestId}} 

    +
    +
    +

    Public body Contact Name:  {{assignedToFirstName}}  {{assignedToLastName}} 

    +
    + +
    +

    Contact Email Address:  {{assignedGroupEmail}} 

    +
    +
    +

    ShapeFOI applicant (full name):  {{assignedToFirstName}}  {{assignedToLastName}} 

    +
    +
    +

    Applicant email address:  {{assignedGroupEmail}}  

    +
    + +
    +

    Shape 

    +
    +
    +

    Please provide a brief description of the original request: 

    +
    +
    +

    {{description}} 

    +
    +
    +

    Shape 

    +
    +
    +

    Date request for records received:  {{oipcOriginalReceivedDate}} 

    +
    +
    +

    Original due date of request:  {{oipcOriginalDueDate}} 

    +
    +
    +

    Current request due date:  {{oipcOriginalDueDate}} 

    +
    +
    +

    Number of business days requested for this extension:  {{oipcExtensionDueDays}} 

    +
    +
    +

    Proposed Due Date:   

    +
    +
    +

    Shape 

    +
    +
    +

    Section 2 - Grounds for Current Extension Application (required: choose all that apply) 

    +
    +
    +

     

    +
    +
    +

      Section 10(2)(a) 

    +
    +
    +

    {{sectionID}}    

    +
    +
    +

        

    +
    +
    +

       

    +
    +
    +

     

    +
    +
    +

      Section 10(2)(b) Please note the need for exceptional circumstances, such as forest fires, flooding, court involvement, and unforeseeable issues. See pages 9-10 of the time extension guidelines. 

    +
    +
    +

     

    +
    +
    +

    Shape 

    +
    +
    +

    Section 3 – Additional information (required: all fields) 

    +
    +
    +

     

    +
    +
    +

    Basis for previous time extension: 

    +
    +
    +

    {{sectionID}}   

    +
    +
    +

        

    +
    +
    +

       

    +
    +
    +

       

    +
    +
    +

     

    +
    +
    +

    Number of days previously extended: XXX 

    +
    +
    +

     

    +
    +
    +

    Please explain why the previous time extension was not sufficient to complete the request: 

    +
    +
    +

    XXX 

    +
    +
    +

     

    +
    +
    +

    Describe any changes since the previous time extension was granted: 

    +
    +
    +

    XXX 

    +
    +
    +

     

    +
    +
    +

    Describe the progress made on this file since the previous time extension was granted: 

    +
    +
    +

    XXX 

    +
    +
    +

     

    +
    +
    +

    Have any records been released to the applicant?  No    

    +
    +
    +

     

    +
    +
    +

    Will there be a phased release of records?   No 

    +
    \ No newline at end of file From 98078791e1abe35504db68be1df9142e4d589e54 Mon Sep 17 00:00:00 2001 From: JieunSon96 Date: Thu, 27 Jun 2024 14:48:12 -0700 Subject: [PATCH 09/11] quick changes of the function --- .../ContactApplicant/util.tsx | 81 ++++++++++--------- 1 file changed, 41 insertions(+), 40 deletions(-) diff --git a/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx b/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx index 06c3e95c8..1d997bd19 100644 --- a/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx +++ b/forms-flow-web/src/components/FOI/customComponents/ContactApplicant/util.tsx @@ -13,46 +13,6 @@ export const applyVariables = (content: string, params: Array) => { return newContent; } -// Function to map extension reason id to its textual representation -const mapSectionWithExtensionReasonId = (extensionReasonId: number) => { - switch (extensionReasonId) { - case 6: - return "10(1)(d)"; // 10(1)(d) = Applicant Consent - case 7: - return "10(1)(c)"; // 10(1)(c) = Consultation - case 8: - return "10(1)(a)"; // 10(1)(a) = Further detail from applicant required - case 9: - return "10(1)(b)"; // 10(1)(b) = Large Volume and/or Volume of Search - default: - return ""; - } -}; - -// List of reasons to check already taken a time extension under section 10(1) -const reasonsToCheck = [ - "OIPC - Applicant Consent", - "OIPC - Consultation", - "OIPC - Further Detail from Applicant Required", - "OIPC - Large Volume and/or Volume of Search" -]; - -// Find the record that matches the criteria for already taken a time extension under section 10(1), excluding the most recent record. -const findLatestMatchingTimeExtension = (requestExtensions: any[], reasonsToCheck: string[]): any | null => { - const foundObject = requestExtensions - .filter(extension => extension.extensiontype === "OIPC" && reasonsToCheck.includes(extension.extensionreson) && extension !== requestExtensions[0]) - .find(extension => reasonsToCheck.includes(extension.extensionreson)) || null; - - return foundObject; -}; - -// Function to check and return "Yes" or "No" -const isAlreadyTakenTimeExtension = (result: any | null): string => { - return result === null ? "No" : "Yes"; -}; - -// Check if there are any OIPC details. -const oipcComplaintCheck = (oipcdetails: any): string => oipcdetails && oipcdetails.length > 0 ? "Yes" : "No"; export const getExtensiondetails = (requestExtensions:any, type: string) => { if (requestExtensions && requestExtensions.length >0) { @@ -114,3 +74,44 @@ export const isTemplateDisabled = (currentCFRForm: any, template: any) => { } return false } + +// Function to map extension reason id to its textual representation +const mapSectionWithExtensionReasonId = (extensionReasonId: number) => { + switch (extensionReasonId) { + case 6: + return "10(1)(d)"; // 10(1)(d) = Applicant Consent + case 7: + return "10(1)(c)"; // 10(1)(c) = Consultation + case 8: + return "10(1)(a)"; // 10(1)(a) = Further detail from applicant required + case 9: + return "10(1)(b)"; // 10(1)(b) = Large Volume and/or Volume of Search + default: + return ""; + } +}; + +// List of reasons to check already taken a time extension under section 10(1) +const reasonsToCheck = [ + "OIPC - Applicant Consent", + "OIPC - Consultation", + "OIPC - Further Detail from Applicant Required", + "OIPC - Large Volume and/or Volume of Search" +]; + +// Find the record that matches the criteria for already taken a time extension under section 10(1), excluding the most recent record. +const findLatestMatchingTimeExtension = (requestExtensions: any[], reasonsToCheck: string[]): any | null => { + const foundObject = requestExtensions + .filter(extension => extension.extensiontype === "OIPC" && reasonsToCheck.includes(extension.extensionreson) && extension !== requestExtensions[0]) + .find(extension => reasonsToCheck.includes(extension.extensionreson)) || null; + + return foundObject; +}; + +// Function to check and return "Yes" or "No" +const isAlreadyTakenTimeExtension = (result: any | null): string => { + return result === null ? "No" : "Yes"; +}; + +// Check if there are any OIPC details. +const oipcComplaintCheck = (oipcdetails: any): string => oipcdetails && oipcdetails.length > 0 ? "Yes" : "No"; From 4044dbed50f6e6d9d5e0ea90cd6fa575f930be63 Mon Sep 17 00:00:00 2001 From: JieunSon96 Date: Thu, 27 Jun 2024 16:02:16 -0700 Subject: [PATCH 10/11] remove unused revision file --- .../migrations/versions/7583b5428c87_.py | 65 ------------------- 1 file changed, 65 deletions(-) delete mode 100644 request-management-api/migrations/versions/7583b5428c87_.py diff --git a/request-management-api/migrations/versions/7583b5428c87_.py b/request-management-api/migrations/versions/7583b5428c87_.py deleted file mode 100644 index 0938c365b..000000000 --- a/request-management-api/migrations/versions/7583b5428c87_.py +++ /dev/null @@ -1,65 +0,0 @@ -"""empty message - -Revision ID: 7583b5428c87 -Revises: c3e447d3d94d -Create Date: 2024-06-19 15:29:08.420315 - -""" -from alembic import op -from datetime import datetime -import sqlalchemy as sa -from sqlalchemy.sql import column, table -from sqlalchemy.sql.sqltypes import Boolean, String,Text,Integer,DateTime - - -# revision identifiers, used by Alembic. -revision = '7583b5428c87' -down_revision = 'c3e447d3d94d' -branch_labels = None -depends_on = None - - -def upgrade(): - applicant_correspondence_templates = table('ApplicantCorrespondenceTemplates', - column('name',String), - column('documenturipath',Text), - column('description',String), - column('active',Boolean), - column('display',Boolean), - column('version',Integer), - column('created_at',DateTime), - column('createdby',String), - ) - op.bulk_insert( - applicant_correspondence_templates, - {'name': 'OIPCAPPLICANTCONSENTEXTENSION', - 'description': 'OIPC Applicant Consent Time Extension', - 'active': True, - 'display': True, - 'version': 1, - 'documenturipath': '/TEMPLATES/EMAILS/oipc_applicant_consent_time_extension.html', - 'created_at': datetime.now(), - 'createdby': 'system'}, - {'name': 'OIPCFIRSTTIMEEXTENSION', - 'description': 'OIPC Applicant First Time Extension', - 'active': True, - 'display': True, - 'version': 1, - 'documenturipath': '/TEMPLATES/EMAILS/oipc_first_time_extension.html', - 'created_at': datetime.now(), - 'createdby': 'system'}, - {'name': 'OIPCSUBSEQUENTTIMEEXTENSION', - 'description': 'OIPC Subsequent Time Extension', - 'active': True, - 'display': True, - 'version': 1, - 'documenturipath': '/TEMPLATES/EMAILS/oipc_subsequent_time_extension.html', - 'created_at': datetime.now(), - 'createdby': 'system'}, - ) - - -def downgrade(): - op.execute( - "DELETE FROM ApplicantCorrespondenceTemplates WHERE name = 'OIPCAPPLICANTCONSENTEXTENSION'" - ) From 04e60a1b943ef4c364ddc3e08cdb9dbc891da955 Mon Sep 17 00:00:00 2001 From: JieunSon96 Date: Thu, 27 Jun 2024 16:06:52 -0700 Subject: [PATCH 11/11] change down_revision to recent version --- .../8487688c2e35_add_applicantCorrespondenceTemplates.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py b/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py index a8c8f8736..c8474b75c 100644 --- a/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py +++ b/request-management-api/migrations/versions/8487688c2e35_add_applicantCorrespondenceTemplates.py @@ -14,7 +14,7 @@ # revision identifiers, used by Alembic. revision = '8487688c2e35' -down_revision = '7583b5428c87' +down_revision = 'c3e447d3d94d' branch_labels = None depends_on = None