feat: backoffice setup
CI / ci (ubuntu-24.04, 3.13) (push) Has been cancelled

This commit is contained in:
2026-07-23 13:31:53 +02:00
parent 87405f31fa
commit 2a9407e676
45 changed files with 2148 additions and 1 deletions
+16
View File
@@ -0,0 +1,16 @@
from django.urls import include, path
from backoffice.views.dashboard import DashboardView
app_name = 'backoffice'
urlpatterns = [
path('', DashboardView.as_view(), name='dashboard'),
path('products/', include('backoffice.urls.products')),
path('orders/', include('backoffice.urls.orders')),
path('payments/', include('backoffice.urls.payments')),
path('customers/', include('backoffice.urls.customers')),
path('providers/', include('backoffice.urls.providers')),
path('taxes/', include('backoffice.urls.taxes')),
path('settings/', include('backoffice.urls.settings')),
]
+8
View File
@@ -0,0 +1,8 @@
from django.urls import path
from backoffice.views import customers
urlpatterns = [
path('', customers.CustomerListView.as_view(), name='customer_list'),
path('<int:pk>/', customers.CustomerDetailView.as_view(), name='customer_detail'),
]
+13
View File
@@ -0,0 +1,13 @@
from django.urls import path
from backoffice.views import orders
urlpatterns = [
path('', orders.OrderListView.as_view(), name='order_list'),
path('<int:pk>/', orders.OrderDetailView.as_view(), name='order_detail'),
path(
'<int:pk>/shipping-status/',
orders.OrderUpdateShippingStatusView.as_view(),
name='order_update_shipping_status',
),
]
+7
View File
@@ -0,0 +1,7 @@
from django.urls import path
from backoffice.views import payments
urlpatterns = [
path('', payments.PaymentListView.as_view(), name='payment_list'),
]
+65
View File
@@ -0,0 +1,65 @@
from django.urls import path
from backoffice.views import products
urlpatterns = [
path('', products.ProductListView.as_view(), name='product_list'),
path('create/', products.ProductCreateView.as_view(), name='product_create'),
path('<int:pk>/', products.ProductDetailView.as_view(), name='product_detail'),
path('<int:pk>/edit/', products.ProductUpdateView.as_view(), name='product_update'),
path('<int:pk>/delete/', products.ProductDeleteView.as_view(), name='product_delete'),
path('<int:product_pk>/prices/create/', products.ProductPriceCreateView.as_view(), name='product_price_create'),
path(
'<int:product_pk>/variants/create/',
products.ProductVariantCreateView.as_view(),
name='product_variant_create',
),
path('variants/<int:pk>/edit/', products.ProductVariantUpdateView.as_view(), name='product_variant_update'),
path('variants/<int:pk>/delete/', products.ProductVariantDeleteView.as_view(), name='product_variant_delete'),
path(
'variants/<int:variant_pk>/prices/create/',
products.ProductVariantPriceCreateView.as_view(),
name='product_variant_price_create',
),
path('<int:product_pk>/batches/create/', products.ProductBatchCreateView.as_view(), name='product_batch_create'),
path('batches/<int:pk>/delete/', products.ProductBatchDeleteView.as_view(), name='product_batch_delete'),
path('<int:product_pk>/images/create/', products.ProductImageCreateView.as_view(), name='product_image_create'),
path('images/<int:pk>/delete/', products.ProductImageDeleteView.as_view(), name='product_image_delete'),
path('categories/', products.ProductCategoryListView.as_view(), name='product_category_list'),
path('categories/create/', products.ProductCategoryCreateView.as_view(), name='product_category_create'),
path(
'categories/<int:pk>/edit/', products.ProductCategoryUpdateView.as_view(), name='product_category_update'
),
path(
'categories/<int:pk>/delete/', products.ProductCategoryDeleteView.as_view(), name='product_category_delete'
),
path('attributes/', products.ProductAttributeListView.as_view(), name='product_attribute_list'),
path('attributes/create/', products.ProductAttributeCreateView.as_view(), name='product_attribute_create'),
path('attributes/<int:pk>/', products.ProductAttributeDetailView.as_view(), name='product_attribute_detail'),
path(
'attributes/<int:pk>/edit/', products.ProductAttributeUpdateView.as_view(), name='product_attribute_update'
),
path(
'attributes/<int:pk>/delete/',
products.ProductAttributeDeleteView.as_view(),
name='product_attribute_delete',
),
path(
'attributes/<int:attribute_pk>/values/create/',
products.ProductAttributeValueCreateView.as_view(),
name='product_attribute_value_create',
),
path(
'attributes/values/<int:pk>/delete/',
products.ProductAttributeValueDeleteView.as_view(),
name='product_attribute_value_delete',
),
path('brands/', products.BrandListView.as_view(), name='brand_list'),
path('brands/create/', products.BrandCreateView.as_view(), name='brand_create'),
path('brands/<int:pk>/edit/', products.BrandUpdateView.as_view(), name='brand_update'),
path('brands/<int:pk>/delete/', products.BrandDeleteView.as_view(), name='brand_delete'),
path('tags/', products.TagListView.as_view(), name='tag_list'),
path('tags/create/', products.TagCreateView.as_view(), name='tag_create'),
path('tags/<int:pk>/edit/', products.TagUpdateView.as_view(), name='tag_update'),
path('tags/<int:pk>/delete/', products.TagDeleteView.as_view(), name='tag_delete'),
]
+7
View File
@@ -0,0 +1,7 @@
from django.urls import path
from backoffice.views import providers
urlpatterns = [
path('', providers.ProviderListView.as_view(), name='provider_list'),
]
+8
View File
@@ -0,0 +1,8 @@
from django.urls import path
from backoffice.views import settings
urlpatterns = [
path('brand/', settings.BrandSettingsView.as_view(), name='brand_settings'),
path('shop/', settings.ShopSettingsView.as_view(), name='shop_settings'),
]
+7
View File
@@ -0,0 +1,7 @@
from django.urls import path
from backoffice.views import taxes
urlpatterns = [
path('', taxes.TaxListView.as_view(), name='tax_list'),
]