Compare commits

..

No commits in common. "bad6bfb4c099cde1c32dd8c5c099fc93343ea303" and "a3be30ab4c18b859fbbedb613a2173a91b5634a7" have entirely different histories.

9 changed files with 20 additions and 28 deletions

View File

@ -1,9 +1,9 @@
from django.urls import path, include
from rest_framework.routers import DefaultRouter
from account import views
from poizonstore.utils import get_drf_router
router = get_drf_router()
router = DefaultRouter()
router.register("users", views.UserViewSet)
urlpatterns = [

View File

@ -7,14 +7,13 @@ from poizonstore.utils import PriceField
class GlobalSettingsSerializer(serializers.ModelSerializer):
yuan_rate = PriceField(source='full_yuan_rate', read_only=True)
yuan_rate_commission = PriceField()
delivery_price_CN = PriceField()
commission_rub = PriceField()
pickup_address = serializers.CharField()
chinadelivery = PriceField(source='delivery_price_CN')
commission = PriceField(source='commission_rub')
pickup = serializers.CharField(source='pickup_address')
class Meta:
model = GlobalSettings
fields = ('yuan_rate', 'yuan_rate_last_updated', 'yuan_rate_commission',
'commission_rub', 'delivery_price_CN', 'pickup_address', 'time_to_buy')
fields = ('yuan_rate', 'yuan_rate_last_updated', 'yuan_rate_commission', 'commission', 'chinadelivery', 'pickup', 'time_to_buy')
read_only_fields = ('yuan_rate_last_updated',)

View File

@ -1,9 +1,9 @@
from django.urls import path
from rest_framework.routers import DefaultRouter
from poizonstore.utils import get_drf_router
from . import views
router = get_drf_router()
router = DefaultRouter()
urlpatterns = [

View File

@ -1,13 +1,13 @@
from rest_framework import generics
from account.permissions import ReadOnly, IsAdmin
from account.permissions import IsManager, ReadOnly
from core.models import GlobalSettings
from core.serializers import GlobalSettingsSerializer, AnonymousGlobalSettingsSerializer
class GlobalSettingsAPI(generics.RetrieveUpdateAPIView):
serializer_class = GlobalSettingsSerializer
permission_classes = [IsAdmin | ReadOnly]
permission_classes = [IsManager | ReadOnly]
def get_serializer_class(self):
if getattr(self.request.user, 'is_manager', False):

View File

@ -17,11 +17,9 @@ Including another URLconf
from django.conf import settings
from django.conf.urls.static import static
from django.contrib import admin
from django.contrib.auth.decorators import permission_required
from django.urls import path, include
from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView
from account.permissions import IsAdmin
urlpatterns = [
path('admin/', admin.site.urls),
@ -33,7 +31,8 @@ urlpatterns = [
+ static(settings.STATIC_URL)
# API schema
urlpatterns += [
path('api/schema/', permission_required([IsAdmin])(SpectacularAPIView.as_view()), name='schema'),
path('api/redoc/', permission_required([IsAdmin])(SpectacularRedocView.as_view(url_name='schema')), name='redoc'),
]
if settings.DEBUG:
urlpatterns += [
path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
path('api/redoc/', SpectacularRedocView.as_view(url_name='schema'), name='redoc'),
]

View File

@ -1,9 +1,7 @@
from functools import reduce
from django.conf import settings
from django_filters import DateFromToRangeFilter as _DateFromToRangeFilter
from rest_framework.fields import DecimalField
from rest_framework.routers import SimpleRouter, DefaultRouter
class PriceField(DecimalField):
@ -22,7 +20,3 @@ class DateFromToRangeFilter(_DateFromToRangeFilter):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.field.widget.suffixes = ['from', 'to']
def get_drf_router():
return DefaultRouter() if settings.DEBUG else SimpleRouter()

View File

@ -18,7 +18,7 @@ class ImageAdmin(admin.ModelAdmin):
@admin.register(Checklist)
class ChecklistAdmin(admin.ModelAdmin):
list_display = ('id', 'brand', 'model', 'price_rub', 'commission_rub', 'full_price', 'date', 'status_display', 'customer')
list_display = ('id', 'brand', 'model', 'price_rub', 'commission_rub', 'full_price', 'date', 'status_display')
ordering = ('-status_updated_at', '-created_at')
@display(description='Статус')

View File

@ -38,11 +38,11 @@ class CategoryChecklistSerializer(serializers.ModelSerializer):
class CategorySerializer(serializers.ModelSerializer):
delivery_price_CN_RU = PriceField()
chinarush = PriceField(source='delivery_price_CN_RU')
class Meta:
model = Category
fields = ('id', 'name', 'delivery_price_CN_RU', 'commission')
fields = ('id', 'name', 'chinarush', 'commission')
class CategoryFullSerializer(CategorySerializer):

View File

@ -1,9 +1,9 @@
from django.urls import path
from rest_framework.routers import DefaultRouter
from poizonstore.utils import get_drf_router
from store import views
router = get_drf_router()
router = DefaultRouter()
router.register(r'checklist', views.ChecklistAPI, basename='checklist')