From 11a85e4475fe77d109b52740fd7297d7c0c41faa Mon Sep 17 00:00:00 2001 From: Ashley Date: Fri, 24 Jan 2025 05:23:27 +0000 Subject: [PATCH 1/3] Update: commented out sticker creation in migration script --- .../utils/mooring_licence_migrate_pd.py | 222 +++++++++--------- 1 file changed, 111 insertions(+), 111 deletions(-) diff --git a/mooringlicensing/utils/mooring_licence_migrate_pd.py b/mooringlicensing/utils/mooring_licence_migrate_pd.py index 9bd6efee..2048da65 100644 --- a/mooringlicensing/utils/mooring_licence_migrate_pd.py +++ b/mooringlicensing/utils/mooring_licence_migrate_pd.py @@ -1378,53 +1378,53 @@ def create_mooring_licences(self): start_date = start_date, #TODO get actual ) - try: - mailing_date = datetime.datetime.strptime(sticker_sent, '%d/%m/%Y').date() if sticker_sent else None - except: - mailing_date = None - - if sticker_number: - sticker = Sticker.objects.create( - number=sticker_number, - status=Sticker.STICKER_STATUS_CURRENT, - approval=approval, - proposal_initiated=proposal, - vessel_ownership=vessel_ownership, - printing_date=None, - mailing_date=mailing_date, - sticker_printing_batch=None, - sticker_printing_response=None, - - postal_address_line1=proposal_applicant.postal_address_line1, - postal_address_locality=proposal_applicant.postal_address_locality, - postal_address_state=proposal_applicant.postal_address_state, - postal_address_country=proposal_applicant.postal_address_country, - postal_address_postcode=proposal_applicant.postal_address_postcode, - ) - - approval_history.stickers.add(sticker.id) - - for i in range(len(additional_ves_rows_details)): - if i['sticker_number']: - vessel_ownership = VesselOwnership.objects.filter(owner=owner, vessel__rego_no=i['rego_no']).order_by("-created").first() - if vessel_ownership: - sticker = Sticker.objects.create( - number=i['sticker_number'], - status=Sticker.STICKER_STATUS_CURRENT, - approval=approval, - proposal_initiated=proposal, - vessel_ownership=vessel_ownership, - printing_date=None, - mailing_date=mailing_date, - sticker_printing_batch=None, - sticker_printing_response=None, - - postal_address_line1=proposal_applicant.postal_address_line1, - postal_address_locality=proposal_applicant.postal_address_locality, - postal_address_state=proposal_applicant.postal_address_state, - postal_address_country=proposal_applicant.postal_address_country, - postal_address_postcode=proposal_applicant.postal_address_postcode, - ) + #try: + # mailing_date = datetime.datetime.strptime(sticker_sent, '%d/%m/%Y').date() if sticker_sent else None + #except: + # mailing_date = None + + #if sticker_number: + # sticker = Sticker.objects.create( + # number=sticker_number, + # status=Sticker.STICKER_STATUS_CURRENT, + # approval=approval, + # proposal_initiated=proposal, + # vessel_ownership=vessel_ownership, + # printing_date=None, + # mailing_date=mailing_date, + # sticker_printing_batch=None, + # sticker_printing_response=None, + # + # postal_address_line1=proposal_applicant.postal_address_line1, + # postal_address_locality=proposal_applicant.postal_address_locality, + # postal_address_state=proposal_applicant.postal_address_state, + # postal_address_country=proposal_applicant.postal_address_country, + # postal_address_postcode=proposal_applicant.postal_address_postcode, + # ) + + # approval_history.stickers.add(sticker.id) + + #for i in range(len(additional_ves_rows_details)): + # if i['sticker_number']: + # vessel_ownership = VesselOwnership.objects.filter(owner=owner, vessel__rego_no=i['rego_no']).order_by("-created").first() + # if vessel_ownership: + # sticker = Sticker.objects.create( + # number=i['sticker_number'], + # status=Sticker.STICKER_STATUS_CURRENT, + # approval=approval, + # proposal_initiated=proposal, + # vessel_ownership=vessel_ownership, + # printing_date=None, + # mailing_date=mailing_date, + # sticker_printing_batch=None, + # sticker_printing_response=None, + # + # postal_address_line1=proposal_applicant.postal_address_line1, + # postal_address_locality=proposal_applicant.postal_address_locality, + # postal_address_state=proposal_applicant.postal_address_state, + # postal_address_country=proposal_applicant.postal_address_country, + # postal_address_postcode=proposal_applicant.postal_address_postcode, + # ) except Exception as e: logger.error(f'ERROR: {row.name}. {str(e)}') @@ -1654,25 +1654,25 @@ def create_authuser_permits(self): start_date = start_date, ) - sticker = None - if sticker_number: - sticker = Sticker.objects.create( - number=sticker_number, - status=Sticker.STICKER_STATUS_CURRENT, # 'current' - approval=approval, - proposal_initiated=proposal, - vessel_ownership=vessel_ownership, - printing_date=None, #TODAY, - mailing_date=datetime.datetime.strptime(sticker_sent, '%d/%m/%Y').date() if sticker_sent else None, - sticker_printing_batch=None, - sticker_printing_response=None, - - postal_address_line1=proposal_applicant.postal_address_line1, - postal_address_locality=proposal_applicant.postal_address_locality, - postal_address_state=proposal_applicant.postal_address_state, - postal_address_country=proposal_applicant.postal_address_country, - postal_address_postcode=proposal_applicant.postal_address_postcode, - ) + #sticker = None + #if sticker_number: + # sticker = Sticker.objects.create( + # number=sticker_number, + # status=Sticker.STICKER_STATUS_CURRENT, # 'current' + # approval=approval, + # proposal_initiated=proposal, + # vessel_ownership=vessel_ownership, + # printing_date=None, #TODAY, + # mailing_date=datetime.datetime.strptime(sticker_sent, '%d/%m/%Y').date() if sticker_sent else None, + # sticker_printing_batch=None, + # sticker_printing_response=None, + # + # postal_address_line1=proposal_applicant.postal_address_line1, + # postal_address_locality=proposal_applicant.postal_address_locality, + # postal_address_state=proposal_applicant.postal_address_state, + # postal_address_country=proposal_applicant.postal_address_country, + # postal_address_postcode=proposal_applicant.postal_address_postcode, + # ) auth_user_moorings = self.df_authuser[(self.df_authuser['vessel_rego']==rego_no)].drop_duplicates(subset=['mooring_no','vessel_rego']) for idx, auth_user in auth_user_moorings.iterrows(): @@ -1681,7 +1681,7 @@ def create_authuser_permits(self): moa = MooringOnApproval.objects.create( approval=approval, mooring=mooring[0], - sticker=sticker, + #sticker=sticker, site_licensee=site_licensee, ) @@ -1969,19 +1969,19 @@ def create_dcv(self): status=DcvPermit.DCV_PERMIT_STATUS_CURRENT, ) - if sticker_no: - sticker = Sticker.objects.create( - number=sticker_no, - status=Sticker.STICKER_STATUS_CURRENT, # 'current' - dcv_permit=dcv_permit, - mailing_date=TODAY, - - postal_address_line1=dcv_permit.postal_address_line1, - postal_address_locality=dcv_permit.postal_address_suburb, - postal_address_state=dcv_permit.postal_address_state, - postal_address_country=dcv_permit.postal_address_country, - postal_address_postcode=dcv_permit.postal_address_postcode, - ) + #if sticker_no: + # sticker = Sticker.objects.create( + # number=sticker_no, + # status=Sticker.STICKER_STATUS_CURRENT, # 'current' + # dcv_permit=dcv_permit, + # mailing_date=TODAY, + # + # postal_address_line1=dcv_permit.postal_address_line1, + # postal_address_locality=dcv_permit.postal_address_suburb, + # postal_address_state=dcv_permit.postal_address_state, + # postal_address_country=dcv_permit.postal_address_country, + # postal_address_postcode=dcv_permit.postal_address_postcode, + # ) dcv_created.append(dcv_permit.id) except Exception as e: @@ -2151,8 +2151,8 @@ def create_annual_admissions(self): lodgement_date = datetime.datetime.strptime(date_applied, '%Y-%m-%d').astimezone(datetime.timezone.utc) status = 'approved' - if not sticker_no: - status = 'printing_sticker' + #if not sticker_no: + # status = 'printing_sticker' proposal=AnnualAdmissionApplication.objects.create( proposal_type_id=ProposalType.objects.get(code='new').id, # new application @@ -2218,35 +2218,35 @@ def create_annual_admissions(self): start_date = start_date, ) - if sticker_no: - sticker = Sticker.objects.create( - number=sticker_no, - status=Sticker.STICKER_STATUS_CURRENT, - approval=approval, - proposal_initiated=proposal, - vessel_ownership=vessel_ownership, - printing_date=datetime.datetime.strptime(date_created.split(' ')[0], '%d/%m/%Y').date() if date_created else None, - mailing_date=datetime.datetime.strptime(date_created.split(' ')[0], '%d/%m/%Y').date() if date_created else None, - sticker_printing_batch=None, - sticker_printing_response=None, - postal_address_line1=proposal_applicant.postal_address_line1, - postal_address_locality=proposal_applicant.postal_address_locality, - postal_address_state=proposal_applicant.postal_address_state, - postal_address_country=proposal_applicant.postal_address_country, - postal_address_postcode=proposal_applicant.postal_address_postcode, - ) - else: - #create non-exported sticker record - sticker = Sticker.objects.create( - approval=approval, - proposal_initiated=proposal, - vessel_ownership=vessel_ownership, - postal_address_line1=proposal_applicant.postal_address_line1, - postal_address_locality=proposal_applicant.postal_address_locality, - postal_address_state=proposal_applicant.postal_address_state, - postal_address_country=proposal_applicant.postal_address_country, - postal_address_postcode=proposal_applicant.postal_address_postcode, - ) + #if sticker_no: + # sticker = Sticker.objects.create( + # number=sticker_no, + # status=Sticker.STICKER_STATUS_CURRENT, + # approval=approval, + # proposal_initiated=proposal, + # vessel_ownership=vessel_ownership, + # printing_date=datetime.datetime.strptime(date_created.split(' ')[0], '%d/%m/%Y').date() if date_created else None, + # mailing_date=datetime.datetime.strptime(date_created.split(' ')[0], '%d/%m/%Y').date() if date_created else None, + # sticker_printing_batch=None, + # sticker_printing_response=None, + # postal_address_line1=proposal_applicant.postal_address_line1, + # postal_address_locality=proposal_applicant.postal_address_locality, + # postal_address_state=proposal_applicant.postal_address_state, + # postal_address_country=proposal_applicant.postal_address_country, + # postal_address_postcode=proposal_applicant.postal_address_postcode, + # ) + #else: + # #create non-exported sticker record + # sticker = Sticker.objects.create( + # approval=approval, + # proposal_initiated=proposal, + # vessel_ownership=vessel_ownership, + # postal_address_line1=proposal_applicant.postal_address_line1, + # postal_address_locality=proposal_applicant.postal_address_locality, + # postal_address_state=proposal_applicant.postal_address_state, + # postal_address_country=proposal_applicant.postal_address_country, + # postal_address_postcode=proposal_applicant.postal_address_postcode, + # ) except Exception as e: if user: From 8f383336aedb58c776e7d8574820d5727ead7c5a Mon Sep 17 00:00:00 2001 From: Ashley Date: Fri, 24 Jan 2025 06:06:19 +0000 Subject: [PATCH 2/3] Update: AUP moorings displayed if migrated even without sticker --- mooringlicensing/components/approvals/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mooringlicensing/components/approvals/models.py b/mooringlicensing/components/approvals/models.py index 051eaf04..7d3936a4 100755 --- a/mooringlicensing/components/approvals/models.py +++ b/mooringlicensing/components/approvals/models.py @@ -210,7 +210,7 @@ class Meta: def get_current_moas_by_approval(approval): no_end_date = Q(end_date__isnull=True) ml_is_current = Q(mooring__mooring_licence__status__in=MooringLicence.STATUSES_AS_CURRENT) - sticker_is_current = Q(sticker__status__in=Sticker.STATUSES_AS_CURRENT) + sticker_is_current = Q(Q(sticker__status__in=Sticker.STATUSES_AS_CURRENT) | Q(approval__migrated=True)) #or approval is migrated is_active = Q(active=True) moas = approval.mooringonapproval_set.filter((no_end_date & ml_is_current) & sticker_is_current & is_active) return moas From 3d42939541f804061eccd8fcd207ab084a2a50ae Mon Sep 17 00:00:00 2001 From: Ashley Date: Fri, 24 Jan 2025 07:26:02 +0000 Subject: [PATCH 3/3] Update: fixed sticker amendment issue with moa --- mooringlicensing/components/approvals/models.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/mooringlicensing/components/approvals/models.py b/mooringlicensing/components/approvals/models.py index 7d3936a4..af61e9fd 100755 --- a/mooringlicensing/components/approvals/models.py +++ b/mooringlicensing/components/approvals/models.py @@ -1670,7 +1670,7 @@ def manage_stickers(self, proposal=None): # All the sticker gets 'expired' status once payment made moas_current = MooringOnApproval.get_current_moas_by_approval(self) for moa in moas_current: - if moa.sticker not in _stickers_to_be_replaced: + if moa.sticker and moa.sticker not in _stickers_to_be_replaced: _stickers_to_be_replaced.append(moa.sticker) _stickers_to_be_replaced_for_renewal.append(moa.sticker) @@ -1706,6 +1706,7 @@ def manage_stickers(self, proposal=None): return list(set(moas_to_be_reallocated)), list(set(stickers_to_be_returned)) def update_lists_due_to_stickers_to_be_replaced(self, _stickers_to_be_replaced, moas_to_be_reallocated, moas_to_be_removed, stickers_to_be_returned): + print(_stickers_to_be_replaced) for sticker in _stickers_to_be_replaced: stickers_to_be_returned.append(sticker) for moa in sticker.mooringonapproval_set.all(): @@ -1762,7 +1763,8 @@ def update_lists_due_to_vessel_changes(self, moas_to_be_reallocated, stickers_to # Due to the vessel length change, the colour of the existing sticker needs to be changed moas_current = MooringOnApproval.get_current_moas_by_approval(self) for moa in moas_current: - stickers_to_be_replaced.append(moa.sticker) + if moa.sticker: + stickers_to_be_replaced.append(moa.sticker) # Handle vessel changes if self.approval.current_proposal.vessel_removed: @@ -1770,14 +1772,16 @@ def update_lists_due_to_vessel_changes(self, moas_to_be_reallocated, stickers_to # A vessel --> No vessels moas_current = MooringOnApproval.get_current_moas_by_approval(self) for moa in moas_current: - stickers_to_be_replaced.append(moa.sticker) + if moa.sticker: + stickers_to_be_replaced.append(moa.sticker) if self.approval.current_proposal.vessel_swapped: # All the stickers to be removed and all the mooring on them to be reallocated # A vessel --> Another vessel moas_current = MooringOnApproval.get_current_moas_by_approval(self) for moa in moas_current: - stickers_to_be_replaced.append(moa.sticker) + if moa.sticker: + stickers_to_be_replaced.append(moa.sticker) if self.approval.current_proposal.vessel_null_to_new: # --> Create new sticker