From 29e0cc7d8e4bab811ade046b7982409b033470b6 Mon Sep 17 00:00:00 2001 From: ismail Date: Thu, 28 Aug 2025 14:18:40 +0300 Subject: [PATCH] lead update --- inventory/views.py | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/inventory/views.py b/inventory/views.py index 0f15e2c7..d48eb0b1 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -6358,8 +6358,8 @@ def lead_create(request, dealer_slug): form.fields["id_car_make"].queryset = qs form.fields["id_car_make"].choices = [ (obj.id_car_make, obj.get_local_name()) for obj in qs - ] - + ] + if first_make := qs.first(): form.fields["id_car_model"].queryset = first_make.carmodel_set.all() @@ -6514,6 +6514,33 @@ def update_lead_actions(request, dealer_slug): return redirect("lead_detail", dealer_slug=dealer_slug, slug=lead.slug) # return JsonResponse({"success": False, "message": str(e)}, status=500) +def lead_update(request,dealer_slug,slug): + dealer = get_object_or_404(models.Dealer, slug=dealer_slug) + lead = get_object_or_404(models.Lead, slug=slug) + form = forms.LeadForm(instance=lead) + if "HX-Request" in request.headers: + make_id = request.GET.get("id_car_make") + make = models.CarMake.objects.get(pk=make_id) + form.fields[ + "id_car_model" + ].queryset = make.carmodel_set.all() + else: + form.fields[ + "id_car_model" + ].queryset = form.instance.id_car_make.carmodel_set.all() + form.fields["staff"].queryset = ( + form.fields["staff"] + .queryset.select_related("user") + .filter( + dealer=dealer, + user__groups__permissions__codename__contains="add_lead", + ) + .distinct() + ) + context = { + "form":form + } + return render(request,"crm/leads/lead_form.html",context) class LeadUpdateView(LoginRequiredMixin, PermissionRequiredMixin, UpdateView): """ @@ -11446,7 +11473,7 @@ def ticket_list(request,dealer_slug): query=request.GET.get('q') if query: tickets=tickets.filter(Q(id__icontains=query)| Q(subject__icontains=query)) - + return render(request, 'support/ticket_list.html', {'tickets': tickets}) @login_required