small changes to invoice print and few changes to the cpaitalization and title filter #270

Merged
ismail merged 3 commits from frontend into main 2025-09-18 14:39:29 +03:00
5 changed files with 45 additions and 44 deletions
Showing only changes of commit f10b9311bf - Show all commits

5
.gitignore vendored
View File

@ -163,8 +163,11 @@ GitHub.sublime-settings
.history
static-copy
static
static/*
staticfiles
media
tmp
logs
logs
static/testdir

View File

@ -17,31 +17,17 @@ import django
django.setup()
from django.urls import path
from channels.routing import ProtocolTypeRouter, URLRouter
from whitenoise import WhiteNoise
from channels.auth import AuthMiddlewareStack
from api import routing
from inventory.notifications.sse import NotificationSSEApp
from django.urls import re_path
from django.core.asgi import get_asgi_application
from django.contrib.staticfiles.handlers import ASGIStaticFilesHandler
from pathlib import Path
# application = ProtocolTypeRouter(
# {
# "http": get_asgi_application(),
# # "websocket": AuthMiddlewareStack(URLRouter(routing.websocket_urlpatterns)),
# }
# )
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "car_inventory.settings")
# django.setup()
# BASE_DIR = Path(__file__).resolve().parent.parent
app = get_asgi_application()
# app = WhiteNoise(app, root=str(BASE_DIR / 'staticfiles'))
application = ProtocolTypeRouter(
{
"http": AuthMiddlewareStack(

View File

@ -33,5 +33,7 @@ urlpatterns += i18n_patterns(
# path('', include(tf_urls)),
)
# if not settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root = settings.STATIC_ROOT)

View File

@ -1003,10 +1003,10 @@ def create_po_item_upload(sender, instance, created, **kwargs):
if instance.po_status == "fulfilled" or instance.po_status == 'approved':
for item in instance.get_itemtxs_data()[0]:
dealer = models.Dealer.objects.get(entity=instance.entity)
if item.bill_model.is_paid():
models.PoItemsUploaded.objects.get_or_create(
dealer=dealer, po=instance, item=item, status=instance.po_status
)
if item.bill_model and item.bill_model.is_paid():
models.PoItemsUploaded.objects.get_or_create(
dealer=dealer, po=instance, item=item, status=instance.po_status
)
# @receiver(post_save, sender=models.Staff)

View File

@ -10914,19 +10914,23 @@ def InventoryItemCreateView(request, dealer_slug):
serie = request.POST.get("serie")
trim = request.POST.get("trim")
year = request.POST.get("year")
exterior = models.ExteriorColors.objects.get(
pk=request.POST.get("exterior")
)
interior = models.InteriorColors.objects.get(
pk=request.POST.get("interior")
)
exterior = request.POST.get("exterior")
interior = request.POST.get("interior")
make_name = models.CarMake.objects.get(pk=make)
model_name = models.CarModel.objects.get(pk=model)
serie_name = models.CarSerie.objects.get(pk=serie)
trim_name = models.CarTrim.objects.get(pk=trim)
exterior_name = models.ExteriorColors.objects.get(
pk=request.POST.get("exterior")
)
interior_name = models.InteriorColors.objects.get(
pk=request.POST.get("interior")
)
inventory_name = f"{make_name.name} || {model_name.name} || {serie_name.name} || {trim_name.name} || {year} || {exterior_name.name} || {interior_name.name}"
display_name = f"{make_name.name} {model_name.name} {serie_name.name} {trim_name.name} {year} {exterior_name.name}"
inventory_name = f"{make_name.name} || {model_name.name} || {serie_name.name} || {trim_name.name} || {year} || {exterior.name} || {interior.name}"
if (
inventory := entity.get_items_inventory()
.filter(name=inventory_name)
@ -10934,17 +10938,27 @@ def InventoryItemCreateView(request, dealer_slug):
):
messages.error(request, _("Inventory item already exists"))
return response
uom = entity.get_uom_all().filter(name="Unit").first()
if not uom:
uom = entity.create_uom(name="Unit", unit_abbr="unit")
entity.create_item_inventory(
name=inventory_name,
item = entity.create_item_inventory(
name=display_name,
uom_model=uom,
item_type=ItemModel.ITEM_TYPE_MATERIAL,
inventory_account=account,
coa_model=coa,
)
item.additional_info.update(
{
"make": make,
"model": model,
"serie": serie,
"trim": trim,
"year": year,
"exterior": exterior,
"interior": interior,
})
item.save()
messages.success(request, _("Inventory item created successfully"))
return response
@ -11261,18 +11275,14 @@ def upload_cars(request, dealer_slug, pk=None):
)
try:
if item:
data = [x.strip() for x in item.item_model.name.split("||")]
make = models.CarMake.objects.filter(is_sa_import=True).get(
name=data[0]
)
model = make.carmodel_set.get(name=data[1])
trim = models.CarTrim.objects.filter(
name=data[3], id_car_serie__id_car_model=model.id_car_model
).first()
serie = trim.id_car_serie
year = data[4]
exterior = models.ExteriorColors.objects.get(name=data[5])
interior = models.InteriorColors.objects.get(name=data[6])
# data = [x.strip() for x in item.item_model.name.split("||")]
make = models.CarMake.objects.get(pk=item.addition_info.get("make"))
model = models.CarModel.objects.get(pk=item.addition_info.get("model"))
trim = models.CarTrim.objects.get(pk=item.addition_info.get("trim"))
serie = models.CarSerie.objects.get(pk=item.addition_info.get("serie"))
year = item.addition_info.get("year")
exterior = models.ExteriorColors.objects.get(pk=item.addition_info.get("exterior"))
interior = models.InteriorColors.objects.get(pk=item.addition_info.get("interior"))
receiving_date = timezone.now()
vendor_model = item.bill_model.vendor
vendor = models.Vendor.objects.get(vendor_model=vendor_model)