fix the get hash function when adding new car

This commit is contained in:
ismail 2025-05-05 17:16:17 +03:00
parent 5a76fb4fa2
commit 2c2eba57ac
4 changed files with 17 additions and 9 deletions

View File

@ -1,12 +1,7 @@
#!/bin/bash
apt-get update
apt-get install -y libgl1
apt-get install -y libglib2.0-dev
apt-get install -y libzbar0
apt-get install -y cmake build-essential xmlsec1 libxmlsec1-dev
apt-get install -y pkg-config libxml2-dev libxmlsec1-dev libxmlsec1-openssl
apt-get install -y libssl-dev
sudo apt-get update && sudo apt-get install libgl1 libglib2.0-dev libzbar0 cmake build-essential xmlsec1 libxmlsec1-dev pkg-config libxml2-dev libxmlsec1-dev libxmlsec1-openssl libssl-dev -y
pip install --upgrade pip
pip install -r requirements_dev.txt
./apply_initial_migrations.sh

View File

@ -483,7 +483,7 @@ class VendorForm(forms.ModelForm):
:type Meta: Type[VendorForm.Meta]
"""
phone_number = forms.CharField(label=_("Phone Number"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
contact_person = forms.CharField(label=_("Phone Number"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
contact_person = forms.CharField(label=_("Contact Person"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
class Meta:
model = Vendor

View File

@ -472,7 +472,12 @@ class Car(models.Model):
color = self.colors.exterior.name if self.colors else ""
except:
pass
hash_object.update(f"{self.id_car_make.name}{self.id_car_model.name}{self.year}{self.id_car_serie.name}{self.id_car_trim.name}{color}".encode('utf-8'))
make = self.id_car_make.name if self.id_car_make else ""
model = self.id_car_model.name if self.id_car_model else ""
year = self.year if self.year else 0
serie = self.id_car_serie.name if self.id_car_serie else ""
trim = self.id_car_trim.name if self.id_car_trim else ""
hash_object.update(f"{make}{model}{year}{serie}{trim}{color}".encode('utf-8'))
return hash_object.hexdigest()
def mark_as_sold(self,request):
@ -948,6 +953,8 @@ class Dealer(models.Model, LocalizedNameMixin):
print(e)
return None
def get_vendors(self):
return self.vendors.all()
@property
def is_staff_exceed_quota_limit(self):
quota = self.user_quota

View File

@ -1318,6 +1318,12 @@ class CarUpdateView(
def get_success_url(self):
return reverse("car_detail", kwargs={"pk": self.object.pk})
def get_form_kwargs(self):
kwargs = super().get_form_kwargs()
kwargs["instance"] = self.get_object()
kwargs["vendor"] = self.get_object().dealer.get_vendors()
return kwargs
class CarDeleteView(
LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageMixin, DeleteView