This commit is contained in:
parent
a7c3ba3f14
commit
2af168fe7e
@ -19,7 +19,25 @@ from jobposting.serializers import (
|
||||
SkillSerializer,
|
||||
SlimJobOffersSerializer,
|
||||
MainJobOfferSerializer
|
||||
)
|
||||
)\
|
||||
|
||||
def remove_none_from_filters(filter: int|str, filter_type: str) -> int|str|None:
|
||||
if filter_type == 'int':
|
||||
if filter is not None or filter == '':
|
||||
try:
|
||||
filter = int(filter)
|
||||
except ValueError:
|
||||
filter = None
|
||||
except TypeError:
|
||||
filter = None
|
||||
else:
|
||||
filter = None
|
||||
else:
|
||||
if filter is not None or filter == '':
|
||||
pass
|
||||
else:
|
||||
filter = None
|
||||
return filter
|
||||
|
||||
|
||||
class MyUserViewSet(viewsets.ModelViewSet):
|
||||
@ -76,41 +94,21 @@ class JobOfferListView(APIView):
|
||||
authentication_classes = []
|
||||
permission_classes = []
|
||||
|
||||
|
||||
|
||||
def get(self, request, format=None):
|
||||
dict_request = dict(request.query_params)
|
||||
print(dict_request)
|
||||
categories = dict_request.get('categories[]', None)
|
||||
max_salary = request.query_params.get('max_salary', None)
|
||||
min_salary = request.query_params.get('min_salary', None)
|
||||
localization = request.query_params.get('localization', None)
|
||||
max_salary = remove_none_from_filters(
|
||||
request.query_params.get('max_salary', None), 'int')
|
||||
min_salary = remove_none_from_filters(
|
||||
request.query_params.get('min_salary', None), 'int')
|
||||
localization = remove_none_from_filters(
|
||||
request.query_params.get('localization', None), 'str')
|
||||
name = remove_none_from_filters(
|
||||
request.query_params.get('name', None), 'str')
|
||||
|
||||
name = request.query_params.get('name', None)
|
||||
if name is not None or name != '':
|
||||
pass
|
||||
else:
|
||||
name = None
|
||||
if max_salary is not None or max_salary != '':
|
||||
try:
|
||||
max_salary = int(max_salary)
|
||||
except ValueError:
|
||||
max_salary = None
|
||||
except TypeError:
|
||||
max_salary = None
|
||||
else:
|
||||
max_salary = None
|
||||
if min_salary is not None or min_salary != '':
|
||||
try:
|
||||
min_salary = int(min_salary)
|
||||
except ValueError:
|
||||
min_salary = None
|
||||
except TypeError:
|
||||
min_salary = None
|
||||
else:
|
||||
min_salary = None
|
||||
if localization is not None or localization != '':
|
||||
pass
|
||||
else:
|
||||
localization = None
|
||||
filters = {
|
||||
'name__icontains': name,
|
||||
'min_salary__gte': min_salary,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user