feat: Add customer prefill from URL parameter in order creation
- Modified order_create view to read customer from GET parameter - Pass preselected_customer to template context - Template renders select with preselected option for Select2 - Fixed draft creation timing with callback after Select2 initialization - Auto-create draft when customer is preselected from URL - Graceful handling if customer not found or invalid ID
This commit is contained in:
@@ -89,10 +89,24 @@ def customer_detail(request, pk):
|
||||
active_orders = customer.orders.exclude(payment_status='paid')
|
||||
total_debt = sum(order.amount_due for order in active_orders)
|
||||
|
||||
# История транзакций кошелька (последние 20)
|
||||
from .models import WalletTransaction
|
||||
wallet_transactions = WalletTransaction.objects.filter(
|
||||
customer=customer
|
||||
).select_related('order', 'created_by').order_by('-created_at')[:20]
|
||||
|
||||
# История заказов с пагинацией
|
||||
orders_list = customer.orders.all().order_by('-created_at')
|
||||
paginator = Paginator(orders_list, 10) # 10 заказов на страницу
|
||||
page_number = request.GET.get('page')
|
||||
orders_page = paginator.get_page(page_number)
|
||||
|
||||
context = {
|
||||
'customer': customer,
|
||||
'total_debt': total_debt,
|
||||
'active_orders_count': active_orders.count(),
|
||||
'wallet_transactions': wallet_transactions,
|
||||
'orders_page': orders_page,
|
||||
}
|
||||
return render(request, 'customers/customer_detail.html', context)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user