colors update

This commit is contained in:
Faheedkhan 2025-05-25 16:45:16 +03:00
parent 79df3da4cc
commit f6958f0cb0
3 changed files with 53 additions and 5 deletions

View File

@ -550,7 +550,7 @@ class CarColorsForm(forms.ModelForm):
model = CarColors
fields = ["exterior", "interior"]
def __init__(self, *args, **kwargs):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields["exterior"].queryset = ExteriorColors.objects.all()

View File

@ -941,6 +941,37 @@ class CarColorCreate(LoginRequiredMixin, PermissionRequiredMixin, CreateView):
context["car"] = get_object_or_404(models.Car, slug=self.kwargs["slug"])
return context
class CarColorsUpdateView( LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageMixin, UpdateView):
model = models.CarColors
form_class = forms.CarColorsForm
template_name = "inventory/add_colors.html"
success_message = _("Car finance details updated successfully")
permission_required = ["inventory.change_carfinance"]
def get_success_url(self):
return reverse("car_detail", kwargs={"slug": self.object.car.slug})
def get_form_kwargs(self):
kwargs = super().get_form_kwargs()
kwargs["instance"] = self.get_object()
return kwargs
def get_initial(self):
initial = super().get_initial()
instance = self.get_object()
dealer = get_user_type(self.request)
selected_items = instance.additional_services.filter(dealer=dealer)
initial["additional_finances"] = selected_items
return initial
def get_form(self, form_class=None):
form = super().get_form(form_class)
dealer = get_user_type(self.request)
form.fields[
"additional_finances"
].queryset = models.AdditionalServices.objects.filter(dealer=dealer)
return form
class CarListView(LoginRequiredMixin, PermissionRequiredMixin, ListView):
"""

View File

@ -1,4 +1,4 @@
{% extends 'base.html' %}
{% extends 'base.html' %}
{% load i18n static custom_filters %}
{% block title %}{{ _("Car Details") }}{% endblock %}
{% block customCSS %}
@ -14,7 +14,8 @@
transform: translate(-50%, -50%);
}
</style>
{% endblock customCSS %}
{% endblock customCSS %}
{% block content %}
{% if not car.ready %}
<div class="alert alert-outline-warning d-flex align-items-center"
@ -305,8 +306,24 @@
style="background-color: rgb({{ car.colors.interior.rgb }})"></div>
</td>
</tr>
{% else %}
<tr>
<td colspan="2">
{% comment %} {% if not car.get_transfer %}
<a href="{% url 'car_finance_update' car.finances.pk %}"
class="btn btn-phoenix-warning btn-sm mb-3">{% trans "Edit" %}</a>
{% else %}
<span class="badge bg-danger">{% trans "Cannot Edit, Car in Transfer." %}</span>
{% endif %}
{% else %}
<p>{% trans "No finance details available." %}</p>
{% if perms.inventory.add_carfinance %}
<a href="{% url 'car_finance_create' car.slug %}"
class="btn btn-phoenix-success btn-sm mb-3">{% trans "Add" %}</a>
{% endif %} {% endcomment %}
</td>
</tr>
{% comment %} <tr>
<td colspan="2">{% trans "No colors available for this car." %}</td>
</tr>
<tr>
@ -316,7 +333,7 @@
class="btn btn-phoenix-success btn-sm">{% trans "Add" %}</a>
{% endif %}
</td>
</tr>
</tr> {% endcomment %}
{% endif %}
</table>
</div>