From ee461f34b4730f25eff0005d00121372110c98e1 Mon Sep 17 00:00:00 2001 From: Ashley Date: Thu, 20 Feb 2025 04:30:34 +0000 Subject: [PATCH 1/3] Update: fixed error when no vessel dimensions specified --- mooringlicensing/components/proposals/models.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mooringlicensing/components/proposals/models.py b/mooringlicensing/components/proposals/models.py index 7b0c68a6..8dc16f80 100644 --- a/mooringlicensing/components/proposals/models.py +++ b/mooringlicensing/components/proposals/models.py @@ -2331,6 +2331,8 @@ def has_higher_vessel_category(self): return False def vessel_mooring_compatible(self, mooring): + if not self.vessel_length or not self.vessel_draft or not self.vessel_weight: + return False if (self.vessel_length > mooring.vessel_size_limit or self.vessel_draft > mooring.vessel_draft_limit or (mooring.vessel_weight_limit and self.vessel_weight > mooring.vessel_weight_limit)): From 33645349149a973d9edc7fee4f72d7089b48107d Mon Sep 17 00:00:00 2001 From: Ashley Date: Thu, 20 Feb 2025 05:13:51 +0000 Subject: [PATCH 2/3] Added: missing dimensions error message --- mooringlicensing/components/proposals/models.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mooringlicensing/components/proposals/models.py b/mooringlicensing/components/proposals/models.py index 8dc16f80..f7829a37 100644 --- a/mooringlicensing/components/proposals/models.py +++ b/mooringlicensing/components/proposals/models.py @@ -1601,6 +1601,9 @@ def proposed_approval(self, request, details): if not i.mooring: raise serializers.ValidationError("Mooring does not exist") + if not self.vessel_length or not self.vessel_draft or not self.vessel_weight: + raise serializers.ValidationError("One or more vessel dimensions are not specified") + if (self.vessel_length > i.mooring.vessel_size_limit or self.vessel_draft > i.mooring.vessel_draft_limit or (self.vessel_weight > i.mooring.vessel_weight_limit and i.mooring.vessel_weight_limit > 0)): From a0b022d9c36588eaa89db2eaacd57cdd24d763ae Mon Sep 17 00:00:00 2001 From: Ashley Date: Thu, 20 Feb 2025 05:45:05 +0000 Subject: [PATCH 3/3] Update: ensure when checking in-use vessels that None is not counted as in use --- mooringlicensing/components/proposals/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mooringlicensing/components/proposals/models.py b/mooringlicensing/components/proposals/models.py index f7829a37..09af3124 100644 --- a/mooringlicensing/components/proposals/models.py +++ b/mooringlicensing/components/proposals/models.py @@ -2719,7 +2719,7 @@ def validate_against_existing_proposals_and_approvals(self): # Get blocking approvals approvals = Approval.objects.filter( ( - Q(current_proposal__vessel_ownership__vessel=vessel) | + (Q(current_proposal__vessel_ownership__vessel=vessel) & ~Q(current_proposal__vessel_ownership__vessel=None)) | Q(current_proposal__vessel_ownership__vessel__rego_no=self.rego_no) ) & (