Add IntelliJ IDEA project configuration files
This commit adds IntelliJ IDEA-specific configuration files for the project, including module setup, version control integration, inspection profiles, and workspace settings. These files facilitate development environment configuration for contributors using IntelliJ IDEA.
This commit is contained in:
@@ -1,132 +0,0 @@
|
||||
# Generated by Django 5.2.3 on 2025-06-25 12:33
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = []
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="ContainerKindModel",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("name", models.CharField(max_length=100, unique=True)),
|
||||
("short_name", models.CharField(max_length=5, unique=True)),
|
||||
("description", models.TextField(blank=True, null=True)),
|
||||
],
|
||||
options={
|
||||
"ordering": ["name"],
|
||||
"abstract": False,
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="OperationModel",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("name", models.CharField(max_length=100, unique=True)),
|
||||
("short_name", models.CharField(max_length=5, unique=True)),
|
||||
("description", models.TextField(blank=True, null=True)),
|
||||
],
|
||||
options={
|
||||
"ordering": ["name"],
|
||||
"abstract": False,
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="PayerModel",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("name", models.CharField(max_length=100, unique=True)),
|
||||
("short_name", models.CharField(max_length=5, unique=True)),
|
||||
("description", models.TextField(blank=True, null=True)),
|
||||
],
|
||||
options={
|
||||
"ordering": ["name"],
|
||||
"abstract": False,
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="ContainerTypeModel",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("name", models.CharField(max_length=6, unique=True)),
|
||||
("length", models.IntegerField()),
|
||||
("height", models.BooleanField()),
|
||||
("deleted", models.BooleanField(default=False)),
|
||||
(
|
||||
"container_type",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
related_name="container_type_container_kinds",
|
||||
to="common.containerkindmodel",
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="LinesModel",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("name", models.CharField(max_length=100, unique=True)),
|
||||
("short_name", models.CharField(max_length=5, unique=True)),
|
||||
("description", models.TextField(blank=True, null=True)),
|
||||
(
|
||||
"payer",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
related_name="line_payers",
|
||||
to="common.payermodel",
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"ordering": ["name"],
|
||||
"abstract": False,
|
||||
},
|
||||
),
|
||||
]
|
||||
+11
-6
@@ -3,7 +3,7 @@ from django.db import models
|
||||
# Create your models here.
|
||||
class NomenclatureBaseModel(models.Model):
|
||||
name = models.CharField(max_length=100, unique=True)
|
||||
short_name = models.CharField(max_length=5, unique=True)
|
||||
short_name = models.CharField(max_length=5, null=True, blank=True)
|
||||
description = models.TextField(blank=True, null=True)
|
||||
|
||||
class Meta:
|
||||
@@ -13,14 +13,16 @@ class NomenclatureBaseModel(models.Model):
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
class PayerModel(NomenclatureBaseModel):
|
||||
|
||||
class CompanyModel(NomenclatureBaseModel):
|
||||
...
|
||||
|
||||
|
||||
class LinesModel(NomenclatureBaseModel):
|
||||
payer = models.ForeignKey(
|
||||
PayerModel,
|
||||
company = models.ForeignKey(
|
||||
'common.CompanyModel',
|
||||
on_delete=models.CASCADE,
|
||||
related_name='line_payers'
|
||||
related_name='line_company'
|
||||
)
|
||||
|
||||
class OperationModel(NomenclatureBaseModel):
|
||||
@@ -34,8 +36,11 @@ class ContainerTypeModel(models.Model):
|
||||
length = models.IntegerField()
|
||||
height = models.BooleanField()
|
||||
container_type = models.ForeignKey(
|
||||
ContainerKindModel,
|
||||
'common.ContainerKindModel',
|
||||
on_delete=models.CASCADE,
|
||||
related_name='container_type_container_kinds'
|
||||
)
|
||||
deleted = models.BooleanField(default=False)
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
+2
-1
@@ -4,6 +4,7 @@ from common import views
|
||||
urlpatterns = [
|
||||
path('', views.IndexView.as_view(), name='index'),
|
||||
path('client/dashboard/', views.ClientDashboardView.as_view(), name='client_dashboard'),
|
||||
path ('client/preinfo/', views.ClientPreinfoView.as_view(), name='client_preinfo'),
|
||||
path('barrier/dashboard/', views.BarrierDashboardView.as_view(), name='barrier_dashboard'),
|
||||
|
||||
path('dashboard/', views.DashboardRedirectView.as_view(), name='dashboard'),
|
||||
]
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
from containers.models import Container
|
||||
from preinfo.models import Preinfo
|
||||
|
||||
|
||||
def filter_queryset_by_user(queryset, user):
|
||||
"""
|
||||
Filters the queryset based on the user's line or company.
|
||||
If the user has a line, it filters by that line.
|
||||
If the user has a company, it filters by all lines associated with that company.
|
||||
"""
|
||||
|
||||
if user.line:
|
||||
return queryset.filter(line=user.line)
|
||||
elif user.company:
|
||||
company_lines = user.company.line_company.all()
|
||||
return queryset.filter(line__in=company_lines)
|
||||
return queryset
|
||||
|
||||
|
||||
def get_preinfo_by_number(number):
|
||||
"""
|
||||
Retrieves a PreinfoModel instance by its container number.
|
||||
Returns None if no matching PreinfoModel is found.
|
||||
"""
|
||||
try:
|
||||
return Preinfo.objects.get(container_number=number, received=False)
|
||||
except Preinfo.DoesNotExist:
|
||||
return None
|
||||
|
||||
|
||||
def get_container_by_number(number):
|
||||
"""
|
||||
Retrieves a Container instance by its number.
|
||||
Returns None if no matching Container is found.
|
||||
"""
|
||||
try:
|
||||
return Container.objects.get(number=number, expedited=False)
|
||||
except Container.DoesNotExist:
|
||||
return None
|
||||
+25
-10
@@ -1,6 +1,6 @@
|
||||
from django.urls import reverse_lazy
|
||||
from django.views.generic import TemplateView, RedirectView
|
||||
from django.shortcuts import render, redirect
|
||||
from django.shortcuts import render
|
||||
|
||||
|
||||
# Create your views here.
|
||||
@@ -20,13 +20,18 @@ class DashboardRedirectView(RedirectView):
|
||||
is_permanent = False
|
||||
|
||||
def get_redirect_url(self, *args, **kwargs):
|
||||
if 1==1:
|
||||
return reverse_lazy('client_dashboard')
|
||||
return reverse_lazy('client_dashboard')
|
||||
# if self.request.user.is_authenticated:
|
||||
if self.request.user.username == 'client':
|
||||
return reverse_lazy('client_dashboard')
|
||||
elif self.request.user.username == 'clientadmin':
|
||||
return reverse_lazy('client_dashboard')
|
||||
elif self.request.user.username == 'barrier':
|
||||
return reverse_lazy('barrier_dashboard')
|
||||
return reverse_lazy('index')
|
||||
|
||||
|
||||
class ClientDashboardView(TemplateView):
|
||||
template_name = 'client-dashboard.html'
|
||||
template_name = 'client-dashboard-content.html'
|
||||
extra_context = {
|
||||
'title': 'Client Dashboard',
|
||||
'description': 'This is the client dashboard page.',
|
||||
@@ -35,12 +40,22 @@ class ClientDashboardView(TemplateView):
|
||||
def get(self, request, *args, **kwargs):
|
||||
return render(request, self.template_name, self.extra_context)
|
||||
|
||||
class ClientPreinfoView(TemplateView):
|
||||
template_name = 'client-preinfo.html'
|
||||
class BarrierDashboardView(TemplateView):
|
||||
template_name = 'barrier-dashboard.html'
|
||||
extra_context = {
|
||||
'title': 'Client Preinfo',
|
||||
'description': 'This is the client preinfo page.',
|
||||
'title': 'Client Dashboard',
|
||||
'description': 'This is the client dashboard page.',
|
||||
}
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
return render(request, self.template_name, self.extra_context)
|
||||
return render(request, self.template_name, self.extra_context)
|
||||
|
||||
|
||||
|
||||
# class ClientPreinfoView(TemplateView):
|
||||
# template_name = 'client-preinfo-content.html'
|
||||
#
|
||||
#
|
||||
#
|
||||
# def get(self, request, *args, **kwargs):
|
||||
# return render(request, self.template_name, self.extra_context)
|
||||
Reference in New Issue
Block a user