Добавлены операции с кошельком клиента: пополнение и возврат

- Добавлены view wallet_deposit и wallet_withdraw с защитой (login_required, is_staff, CSRF)
- Новые маршруты: /customers/<pk>/wallet/deposit/ и /customers/<pk>/wallet/withdraw/
- UI на странице клиента: две симметричные формы для пополнения и списания баланса
- Пополнение: произвольная сумма с обязательным описанием (подарки, компенсации)
- Возврат/списание: с ограничением макс. суммы = текущий баланс, обязательное описание
- Все операции логируются в WalletTransaction с типом 'adjustment'
- Защита от операций с системным клиентом
- Компактный симметричный дизайн форм с фиксированной высотой подсказок
This commit is contained in:
2025-11-29 18:09:40 +03:00
parent 3f22677573
commit 4b7241bcfc
3 changed files with 149 additions and 1 deletions

View File

@@ -9,6 +9,8 @@ urlpatterns = [
path('<int:pk>/', views.customer_detail, name='customer-detail'),
path('<int:pk>/edit/', views.customer_update, name='customer-update'),
path('<int:pk>/delete/', views.customer_delete, name='customer-delete'),
path('<int:pk>/wallet/deposit/', views.wallet_deposit, name='wallet-deposit'),
path('<int:pk>/wallet/withdraw/', views.wallet_withdraw, name='wallet-withdraw'),
# AJAX API endpoints
path('api/search/', views.api_search_customers, name='api-search-customers'),