Merge branch 'develop' of ssh://gl.id-east.ru:222/gm/gm-backend into develop

This commit is contained in:
Александр Пархомин 2020-02-05 18:37:38 +03:00
commit b679fdab56
2 changed files with 54 additions and 4 deletions

View File

@ -107,7 +107,7 @@ class GuideListCreateView(GuideBaseView, generics.ListCreateAPIView):
For creating new instance of Guide model, need to pass the following data in the request:
required fields:
* name (str) - guide name
* start (str) - guide start date (datetime in a format `ISO-8601`)
* start (str) - guide start datetime (datetime in a format `ISO-8601`)
* vintage (str) - valid year
* guide_type (int) - guide type enum: `0 (Restaurant), 1 (Artisan), 2 (Wine)`
* site (int) - identifier of site

View File

@ -13,13 +13,13 @@ from account.models import User, Role, UserRole
from collection.models import Guide
from establishment import filters, models, serializers
from establishment.models import EstablishmentEmployee, Menu
from main import models as main_models
from main import serializers as main_serializers
from timetable.models import Timetable
from timetable.serialziers import ScheduleCreateSerializer, ScheduleRUDSerializer
from utils.methods import get_permission_classes
from utils.permissions import (IsEstablishmentAdministrator, IsEstablishmentManager)
from utils.views import CreateDestroyGalleryViewMixin
from main import models as main_models
from main import serializers as main_serializers
class MenuRUDMixinViews:
@ -483,7 +483,57 @@ class EmailRUDView(generics.RetrieveUpdateDestroyAPIView):
class EmployeeListCreateView(generics.ListCreateAPIView):
"""Employee list create view."""
"""
## Employee list/create view.
### *GET*
#### Description
Return paginated list of employees with available filters:
* search (`str`) - filter by name or last name with mistakes
* position_id (`int`) - filter by employees position identifier
* public_mark (`str`) - filter by establishment public mark
* toque_number (`str`) - filter by establishment toque number
* username (`str`) - filter by username or name
#### Response
```
{
"count": 12765,
"next": 2,
"previous": null,
"results": [
{
"id": 1,
...
}
{
```
### *POST*
#### Description
Create a new employee.
#### Response
```
{
"id": 1,
...
{
```
#### Request
Required fields:
* available_for_events (bool) - flag that responds for availability for events
Non-required fields:
* name (`str`) - name
* last_name (`str`) - last name
* user (`int`) - user identifier
* sex (`int`) - enum: `0 (Male), 1 (Female)`
* birth_date (`str`) - birth datetime (datetime in a format `ISO-8601`)
* email (`str`) - email address
* phone (`str`) - phone number in format `E164`
* photo_id (`int`) - photo identifier
"""
filter_class = filters.EmployeeBackFilter
serializer_class = serializers.EmployeeBackSerializers
queryset = models.Employee.objects.all().distinct().with_back_office_related()