This commit is contained in:
ismail 2025-09-18 14:33:22 +03:00
parent 10d48ca47d
commit c39f2eb068
5 changed files with 45 additions and 44 deletions

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

@ -10879,19 +10879,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)
@ -10899,17 +10903,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
@ -11224,18 +11238,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)