#88 Action detail codes
* adds codelist 1035 for compensation action detail codes * extends CompensationAction model * extends NewActionForm * extends detail view of compensation action related models * add/updates translations * adds autocomplete tests
This commit is contained in:
@@ -12,7 +12,7 @@ from django.db.models import Q
|
||||
from codelist.models import KonovaCode
|
||||
from codelist.settings import CODELIST_COMPENSATION_ACTION_ID, CODELIST_BIOTOPES_ID, CODELIST_LAW_ID, \
|
||||
CODELIST_REGISTRATION_OFFICE_ID, CODELIST_CONSERVATION_OFFICE_ID, CODELIST_PROCESS_TYPE_ID, \
|
||||
CODELIST_BIOTOPES_EXTRA_CODES_ID
|
||||
CODELIST_BIOTOPES_EXTRA_CODES_ID, CODELIST_COMPENSATION_ACTION_DETAIL_ID
|
||||
from compensation.models import EcoAccount
|
||||
from intervention.models import Intervention
|
||||
|
||||
@@ -164,6 +164,24 @@ class CompensationActionCodeAutocomplete(KonovaCodeAutocomplete):
|
||||
)
|
||||
|
||||
|
||||
class CompensationActionDetailCodeAutocomplete(KonovaCodeAutocomplete):
|
||||
"""
|
||||
Due to limitations of the django dal package, we need to subclass for each code list
|
||||
"""
|
||||
group_by_related = "parent"
|
||||
related_field_name = "long_name"
|
||||
paginate_by = 200
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.c = CODELIST_COMPENSATION_ACTION_DETAIL_ID
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
def order_by(self, qs):
|
||||
return qs.order_by(
|
||||
"parent__long_name"
|
||||
)
|
||||
|
||||
|
||||
class BiotopeCodeAutocomplete(KonovaCodeAutocomplete):
|
||||
"""
|
||||
Due to limitations of the django dal package, we need to subclass for each code list
|
||||
|
||||
@@ -57,3 +57,33 @@ class AutocompleteTestCase(BaseTestCase):
|
||||
)
|
||||
content = json.loads(response.content)
|
||||
self.assertEqual([], content["results"])
|
||||
|
||||
def test_all_autocompletes(self):
|
||||
tests = [
|
||||
"accounts-autocomplete",
|
||||
"interventions-autocomplete",
|
||||
"codes-compensation-action-autocomplete",
|
||||
"codes-compensation-action-detail-autocomplete",
|
||||
"codes-biotope-autocomplete",
|
||||
"codes-biotope-extra-type-autocomplete",
|
||||
"codes-law-autocomplete",
|
||||
"codes-process-type-autocomplete",
|
||||
"codes-registration-office-autocomplete",
|
||||
"codes-conservation-office-autocomplete",
|
||||
"share-user-autocomplete",
|
||||
]
|
||||
for test in tests:
|
||||
self.client.login(username=self.superuser.username, password=self.superuser_pw)
|
||||
user_autocomplete_url = reverse(test)
|
||||
data = {
|
||||
"q": ""
|
||||
}
|
||||
response = self.client.get(
|
||||
user_autocomplete_url,
|
||||
data,
|
||||
)
|
||||
content = json.loads(response.content)
|
||||
try:
|
||||
content["results"]
|
||||
except KeyError:
|
||||
self.fail(f"No results returned for autocomplete {test}")
|
||||
|
||||
@@ -20,7 +20,7 @@ from django.urls import path, include
|
||||
from konova.autocompletes import EcoAccountAutocomplete, \
|
||||
InterventionAutocomplete, CompensationActionCodeAutocomplete, BiotopeCodeAutocomplete, LawCodeAutocomplete, \
|
||||
RegistrationOfficeCodeAutocomplete, ConservationOfficeCodeAutocomplete, ProcessTypeCodeAutocomplete, \
|
||||
ShareUserAutocomplete, BiotopeExtraCodeAutocomplete
|
||||
ShareUserAutocomplete, BiotopeExtraCodeAutocomplete, CompensationActionDetailCodeAutocomplete
|
||||
from konova.settings import SSO_SERVER, SSO_PUBLIC_KEY, SSO_PRIVATE_KEY, DEBUG
|
||||
from konova.sso.sso import KonovaSSOClient
|
||||
from konova.views import logout_view, home_view, remove_deadline_view
|
||||
@@ -47,6 +47,7 @@ urlpatterns = [
|
||||
path("atcmplt/eco-accounts", EcoAccountAutocomplete.as_view(), name="accounts-autocomplete"),
|
||||
path("atcmplt/interventions", InterventionAutocomplete.as_view(), name="interventions-autocomplete"),
|
||||
path("atcmplt/codes/comp/action", CompensationActionCodeAutocomplete.as_view(), name="codes-compensation-action-autocomplete"),
|
||||
path("atcmplt/codes/comp/action/detail", CompensationActionDetailCodeAutocomplete.as_view(), name="codes-compensation-action-detail-autocomplete"),
|
||||
path("atcmplt/codes/biotope", BiotopeCodeAutocomplete.as_view(), name="codes-biotope-autocomplete"),
|
||||
path("atcmplt/codes/biotope/extra", BiotopeExtraCodeAutocomplete.as_view(), name="codes-biotope-extra-type-autocomplete"),
|
||||
path("atcmplt/codes/law", LawCodeAutocomplete.as_view(), name="codes-law-autocomplete"),
|
||||
|
||||
Reference in New Issue
Block a user