Skip to content

Commit

Permalink
Merge pull request #233 from Shrutihindocha/master
Browse files Browse the repository at this point in the history
Showstopper bugs
  • Loading branch information
xzzy authored Jan 23, 2024
2 parents b94f4bf + f528ae6 commit 67a9f2f
Show file tree
Hide file tree
Showing 20 changed files with 202 additions and 227 deletions.
45 changes: 27 additions & 18 deletions wildlifecompliance/components/inspection/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,8 @@ class Meta:
)

class InspectionSerializer(serializers.ModelSerializer):
allocated_group = serializers.SerializerMethodField()
# allocated_group = serializers.SerializerMethodField()
# allocated_group_id = serializers.SerializerMethodField(required=False)
inspection_team = serializers.SerializerMethodField()
all_officers = serializers.SerializerMethodField()
user_in_group = serializers.SerializerMethodField()
Expand All @@ -143,6 +144,8 @@ class InspectionSerializer(serializers.ModelSerializer):
inspection_report = serializers.SerializerMethodField()
data = InspectionFormDataRecordSerializer(many=True)
location = LocationSerializer(read_only=True)
region_id = serializers.SerializerMethodField()
district_id = serializers.SerializerMethodField()

class Meta:
model = Inspection
Expand All @@ -156,8 +159,8 @@ class Meta:
'planned_for_time',
'party_inspected',
'assigned_to_id',
'allocated_group',
'allocated_group_id',
# 'allocated_group',
# 'allocated_group_id',
'user_in_group',
'can_user_action',
'user_is_assignee',
Expand Down Expand Up @@ -195,10 +198,10 @@ def get_user_in_group(self, obj):
for member in obj.inspection_team.all():
if user_id == member.id:
return_val = True
elif obj.allocated_group:
for member in obj.allocated_group.members:
if user_id == member.id:
return_val = True
# elif obj.allocated_group:
# for member in obj.allocated_group.members:
# if user_id == member.id:
# return_val = True
return return_val

def get_can_user_action(self, obj):
Expand All @@ -211,10 +214,10 @@ def get_can_user_action(self, obj):
for member in obj.inspection_team.all():
if user_id == member.id:
return_val = True
elif obj.allocated_group and not obj.assigned_to_id:
for member in obj.allocated_group.members:
if user_id == member.id:
return_val = True
# elif obj.allocated_group and not obj.assigned_to_id:
# for member in obj.allocated_group.members:
# if user_id == member.id:
# return_val = True
return return_val

def get_user_is_assignee(self, obj):
Expand Down Expand Up @@ -244,8 +247,8 @@ def get_inspection_team(self, obj):
team.append(member)
return team

def get_allocated_group(self, obj):
return ''
# def get_allocated_group(self, obj):
# return ''
#allocated_group = [{
# 'email': '',
# 'first_name': '',
Expand Down Expand Up @@ -287,6 +290,12 @@ def get_all_officers(self, obj):

def get_inspection_report(self, obj):
return [[r.name, r._file.url] for r in obj.report.all()]

def get_region_id(self, obj):
return obj.region_id

def get_district_id(self, obj):
return obj.district_id

class SaveInspectionSerializer(serializers.ModelSerializer):
assigned_to_id = serializers.IntegerField(
Expand Down Expand Up @@ -410,11 +419,11 @@ def get_user_action(self, obj):
for member in obj.inspection_team.all():
if user_id == member.id:
returned_url = process_url
elif (obj.allocated_group
and not obj.assigned_to_id):
for member in obj.allocated_group.members:
if user_id == member.id:
returned_url = process_url
# elif (obj.allocated_group
# and not obj.assigned_to_id):
# for member in obj.allocated_group.members:
# if user_id == member.id:
# returned_url = process_url

if not returned_url:
returned_url = view_url
Expand Down
2 changes: 1 addition & 1 deletion wildlifecompliance/components/legal_case/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -1098,7 +1098,7 @@ def workflow_action(self, request, instance=None, create_legal_case=None, *args,
instance.district_id = None if not request.data.get('district_id') else request.data.get('district_id')
instance.assigned_to_id = None if not request.data.get('assigned_to_id') else request.data.get('assigned_to_id')
instance.legal_case_priority_id = None if not request.data.get('legal_case_priority_id') else request.data.get('legal_case_priority_id')
instance.allocated_group_id = None if not request.data.get('allocated_group_id') else request.data.get('allocated_group_id')
# instance.allocated_group_id = None if not request.data.get('allocated_group_id') else request.data.get('allocated_group_id')
instance.call_email_id = None if not request.data.get('call_email_id') else request.data.get('call_email_id')
instance.details = None if not request.data.get('details') else request.data.get('details')

Expand Down
10 changes: 5 additions & 5 deletions wildlifecompliance/components/legal_case/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -1359,11 +1359,11 @@ def get_user_action(self, obj):
returned_url = view_url
elif user_id == obj.assigned_to_id:
returned_url = process_url
elif (obj.allocated_group
and not obj.assigned_to_id):
for member in obj.allocated_group.members:
if user_id == member.id:
returned_url = process_url
# elif (obj.allocated_group
# and not obj.assigned_to_id):
# for member in obj.allocated_group.members:
# if user_id == member.id:
# returned_url = process_url

if not returned_url:
returned_url = view_url
Expand Down
32 changes: 16 additions & 16 deletions wildlifecompliance/components/offence/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,8 @@ class Offence(RevisionedMixin):
# related_name='offence_allocated_group',
# null=True
#)
#region = models.ForeignKey(Region, related_name='offence_region', null=True,)
#district = models.ForeignKey(District, related_name='offence_district', null=True,)
region = models.ForeignKey(Region, related_name='offence_region', null=True,)
district = models.ForeignKey(District, related_name='offence_district', null=True,)

class Meta:
app_label = 'wildlifecompliance'
Expand Down Expand Up @@ -121,25 +121,25 @@ def get_related_items_identifier(self):
#return '{}'.format(self.identifier)
return self.lodgement_number

@staticmethod
# @staticmethod
# Rewrite for Region District models
def get_compliance_permission_group(regionDistrictId):
#region_district = RegionDistrict.objects.filter(id=regionDistrictId)
# def get_compliance_permission_group(regionDistrictId):
# #region_district = RegionDistrict.objects.filter(id=regionDistrictId)

# 2. Determine which permission(s) is going to be applied
compliance_content_type = ContentType.objects.get(model="compliancepermissiongroup")
codename = 'officer'
per_district = True
# # 2. Determine which permission(s) is going to be applied
# compliance_content_type = ContentType.objects.get(model="compliancepermissiongroup")
# codename = 'officer'
# per_district = True

permissions = Permission.objects.filter(codename=codename, content_type_id=compliance_content_type.id)
# permissions = Permission.objects.filter(codename=codename, content_type_id=compliance_content_type.id)

# 3. Find groups which has the permission(s) determined above in the regionDistrict.
if per_district:
groups = CompliancePermissionGroup.objects.filter(region_district__in=region_district, permissions__in=permissions)
else:
groups = CompliancePermissionGroup.objects.filter(permissions__in=permissions)
# # 3. Find groups which has the permission(s) determined above in the regionDistrict.
# if per_district:
# groups = CompliancePermissionGroup.objects.filter(region_district__in=region_district, permissions__in=permissions)
# else:
# groups = CompliancePermissionGroup.objects.filter(permissions__in=permissions)

return groups.first()
# return groups.first()

@property
# Rewrite for Region District models
Expand Down
8 changes: 8 additions & 0 deletions wildlifecompliance/components/offence/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,9 @@ class OffenceSerializer(serializers.ModelSerializer):
related_items = serializers.SerializerMethodField()
in_editable_status = serializers.SerializerMethodField()
user_action = serializers.SerializerMethodField()
region_id = serializers.SerializerMethodField()
district_id = serializers.SerializerMethodField()


class Meta:
model = Offence
Expand Down Expand Up @@ -286,7 +289,12 @@ def get_user_is_assignee(self, obj):

def get_related_items(self, obj):
return get_related_items(obj)

def get_region_id(self, obj):
return obj.region_id

def get_district_id(self, obj):
return obj.district_id

class UpdateAllegedCommittedOffenceSerializer(serializers.ModelSerializer):

Expand Down
3 changes: 2 additions & 1 deletion wildlifecompliance/components/sanction_outcome/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,8 @@ def filter_queryset(self, request, queryset, view):
q_objects &= Q(district__id=district_id)

# perform filters
queryset = queryset.filter(q_objects)
if queryset.exists:
queryset = queryset.filter(q_objects)

getter = request.query_params.get
fields = self.get_fields(getter)
Expand Down
1 change: 0 additions & 1 deletion wildlifecompliance/components/sanction_outcome/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,6 @@ class SanctionOutcome(models.Model):
# This is pending closure status
(STATUS_AWAITING_PRINT_AND_POST, 'Awaiting Print and Post'),
(STATUS_WITH_DOT, 'With Dep. of Transport'),
(STATUS_AWAITING_ISSUANCE, 'Awaiting Issuance'),
(STATUS_AWAITING_REVIEW, 'Awaiting Review'),
(STATUS_AWAITING_ISSUANCE, 'Awaiting Issuance'),
(STATUS_AWAITING_REMEDIATION_ACTIONS, 'Awaiting Remediation Actions'), # TODO: implement pending closuer of SanctionOutcome with type RemediationActions
Expand Down
5 changes: 5 additions & 0 deletions wildlifecompliance/components/sanction_outcome/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -432,6 +432,8 @@ class SanctionOutcomeDatatableSerializer(serializers.ModelSerializer):
# remediation_actions = serializers.SerializerMethodField()
# remediation_actions = RemediationActionSerializer(read_only=True, many=True) # This is related field
remediation_actions = serializers.SerializerMethodField()
region = serializers.SerializerMethodField()


class Meta:
model = SanctionOutcome
Expand Down Expand Up @@ -560,6 +562,9 @@ def get_user_action(self, obj):

urls = '<br />'.join(url_list)
return urls

def get_region(self,obj):
return obj.region_id


class RecordFerCaseNumberSerializer(serializers.ModelSerializer):
Expand Down
Loading

0 comments on commit 67a9f2f

Please sign in to comment.