Skip to content

Commit 3a61992

Browse files
committed
Countries of Field Report to review
1 parent 05b68de commit 3a61992

File tree

7 files changed

+69
-35
lines changed

7 files changed

+69
-35
lines changed

api/admin.py

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -624,9 +624,8 @@ class SituationReportTypeAdmin(CompareVersionAdmin):
624624
class CronJobAdmin(CompareVersionAdmin):
625625
list_display = ('name', 'created_at', 'num_result', 'status')
626626
search_fields = ('name', 'created_at',)
627-
readonly_fields = ('created_at',)
627+
readonly_fields = ('created_at', 'message_display',)
628628
list_filter = ('status', 'name')
629-
readonly_fields = ('message_display',)
630629

631630
def message_display(self, obj):
632631
style_class = {
@@ -770,6 +769,26 @@ def get_actions(self, request):
770769
return actions
771770

772771

772+
class CountryOfFieldReportToReviewAdmin(admin.ModelAdmin):
773+
list_display = ('country',)
774+
775+
@classmethod
776+
def has_delete_permission(cls, request, obj=None):
777+
return request.user.is_superuser
778+
779+
@classmethod
780+
def has_view_permission(cls, request, obj=None):
781+
return request.user.is_superuser
782+
783+
@classmethod
784+
def has_change_permission(cls, request, obj=None):
785+
return request.user.is_superuser
786+
787+
@classmethod
788+
def has_add_permission(cls, request, obj=None):
789+
return request.user.is_superuser
790+
791+
773792
admin.site.register(models.DisasterType, DisasterTypeAdmin)
774793
admin.site.register(models.Event, EventAdmin)
775794
admin.site.register(models.GDACSEvent, GdacsAdmin)
@@ -797,6 +816,7 @@ def get_actions(self, request):
797816
admin.site.register(models.MainContact, MainContactAdmin)
798817
admin.site.register(models.UserCountry, UserCountryAdmin)
799818
admin.site.register(models.UserRegion, UserRegionAdmin)
819+
admin.site.register(models.CountryOfFieldReportToReview, CountryOfFieldReportToReviewAdmin)
800820
# admin.site.register(Revision, RevisionAdmin)
801821

802822
admin.site.site_url = 'https://' + settings.FRONTEND_URL

api/drf_views.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
EPISourceChoices,
5959
MainContact,
6060
UserCountry,
61-
ReviewFieldReportInCountry,
61+
CountryOfFieldReportToReview,
6262
)
6363

6464
from .serializers import (
@@ -120,6 +120,8 @@
120120

121121
# Go Historical
122122
GoHistoricalSerializer,
123+
124+
CountryOfFieldReportToReviewSerializer,
123125
)
124126
from .logger import logger
125127

@@ -1030,13 +1032,11 @@ class GoHistoricalViewSet(viewsets.ReadOnlyModelViewSet):
10301032
def get_queryset(self):
10311033
return Event.objects.filter(appeals__isnull=False)
10321034

1033-
class ReviewFieldReportInCountryViewset(viewsets.ReadOnlyModelViewSet):
1035+
class CountryOfFieldReportToReviewViewset(viewsets.ReadOnlyModelViewSet):
1036+
queryset = CountryOfFieldReportToReview.objects.order_by('country')
1037+
serializer_class = CountryOfFieldReportToReviewSerializer
1038+
search_fields = ('country__name',) # for /docs
10341039

10351040
class Meta:
1036-
model = ReviewFieldReportInCountry
1037-
serializer_class = CountrySerializerRMD
1041+
model = CountryOfFieldReportToReview
10381042
fields = ('country_id')
1039-
1040-
@staticmethod
1041-
def get_extra_actions():
1042-
return []
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Generated by Django 2.2.27 on 2022-04-12 13:33
2+
3+
from django.db import migrations, models
4+
import django.db.models.deletion
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
('api', '0151_merge_20220325_1027'),
11+
]
12+
13+
operations = [
14+
migrations.CreateModel(
15+
name='CountryOfFieldReportToReview',
16+
fields=[
17+
('country', models.OneToOneField(on_delete=django.db.models.deletion.DO_NOTHING, primary_key=True, serialize=False, to='api.Country', verbose_name='country')),
18+
],
19+
options={
20+
'verbose_name': 'Country of Field Report to review',
21+
'verbose_name_plural': 'Countries of Field Report to review',
22+
},
23+
),
24+
]

api/migrations/0152_reviewfieldreportincountry.py

Lines changed: 0 additions & 21 deletions
This file was deleted.

api/models.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2117,5 +2117,9 @@ class ERPGUID(models.Model):
21172117
)
21182118
field_report = models.ForeignKey(FieldReport, verbose_name=_('field report'), on_delete=models.CASCADE)
21192119

2120-
class ReviewFieldReportInCountry(models.Model):
2121-
country = models.ForeignKey(Country, verbose_name=_('country'), on_delete=models.CASCADE)
2120+
class CountryOfFieldReportToReview(models.Model):
2121+
country = models.OneToOneField(Country, verbose_name=_('country'), on_delete=models.DO_NOTHING, primary_key=True)
2122+
2123+
class Meta:
2124+
verbose_name = "Country of Field Report to review"
2125+
verbose_name_plural = "Countries of Field Report to review"

api/serializers.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,9 @@
4848
Action,
4949
Source,
5050
FieldReport,
51-
MainContact
51+
MainContact,
52+
53+
CountryOfFieldReportToReview,
5254
)
5355
from notifications.models import Subscription
5456
from deployments.models import EmergencyProject
@@ -1088,3 +1090,8 @@ class Meta:
10881090
'id', 'name', 'dtype', 'countries', 'num_affected',
10891091
'disaster_start_date', 'created_at', 'appeals',
10901092
)
1093+
1094+
class CountryOfFieldReportToReviewSerializer(ModelSerializer):
1095+
class Meta:
1096+
model = CountryOfFieldReportToReview
1097+
fields = '__all__'

main/urls.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@
147147
router.register(r'share-flash-update', flash_views.ShareFlashUpdateViewSet, basename='share_flash_update')
148148
router.register(r'dref', dref_views.DrefViewSet, basename='dref')
149149
router.register(r'dref-files', dref_views.DrefFileViewSet, basename='dref_files')
150-
router.register(r'review-country', api_views.ReviewFieldReportInCountryViewset, basename='review_country')
150+
router.register(r'review-country', api_views.CountryOfFieldReportToReviewViewset, basename='review_country')
151151

152152

153153
admin.site.site_header = 'IFRC Go administration'

0 commit comments

Comments
 (0)