update
This commit is contained in:
parent
feeb882ee5
commit
e7ca9d4de3
Binary file not shown.
Binary file not shown.
@ -23,6 +23,7 @@ urlpatterns += i18n_patterns(
|
|||||||
path('', include('inventory.urls')),
|
path('', include('inventory.urls')),
|
||||||
path('ledger/', include('django_ledger.urls', namespace='django_ledger')),
|
path('ledger/', include('django_ledger.urls', namespace='django_ledger')),
|
||||||
path("haikalbot/", include("haikalbot.urls")),
|
path("haikalbot/", include("haikalbot.urls")),
|
||||||
|
path('appointment/', include('appointment.urls')),
|
||||||
)
|
)
|
||||||
|
|
||||||
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
121
requirements.txt
121
requirements.txt
@ -3,25 +3,25 @@ aiohttp==3.11.11
|
|||||||
aiohttp-retry==2.8.3
|
aiohttp-retry==2.8.3
|
||||||
aiosignal==1.3.2
|
aiosignal==1.3.2
|
||||||
alabaster==1.0.0
|
alabaster==1.0.0
|
||||||
albucore==0.0.13
|
albucore==0.0.23
|
||||||
albumentations==1.4.10
|
albumentations==2.0.0
|
||||||
annotated-types==0.7.0
|
annotated-types==0.7.0
|
||||||
anyio==4.6.2.post1
|
anyio==4.8.0
|
||||||
arabic-reshaper==3.0.0
|
arabic-reshaper==3.0.0
|
||||||
asgiref==3.8.1
|
asgiref==3.8.1
|
||||||
astor==0.8.1
|
astor==0.8.1
|
||||||
astroid==3.3.5
|
astroid==3.3.8
|
||||||
attrs==23.2.0
|
attrs==23.2.0
|
||||||
autopep8==2.3.1
|
autopep8==2.3.2
|
||||||
babel==2.16.0
|
Babel==2.15.0
|
||||||
beautifulsoup4==4.12.3
|
beautifulsoup4==4.12.3
|
||||||
bleach==6.2.0
|
bleach==6.2.0
|
||||||
blinker==1.9.0
|
blinker==1.9.0
|
||||||
Brotli==1.1.0
|
Brotli==1.1.0
|
||||||
certifi==2024.8.30
|
certifi==2024.12.14
|
||||||
cffi==1.17.1
|
cffi==1.17.1
|
||||||
chardet==5.2.0
|
chardet==5.2.0
|
||||||
charset-normalizer==3.4.0
|
charset-normalizer==3.4.1
|
||||||
click==8.1.8
|
click==8.1.8
|
||||||
colorama==0.4.6
|
colorama==0.4.6
|
||||||
commonmark==0.9.1
|
commonmark==0.9.1
|
||||||
@ -29,128 +29,140 @@ contourpy==1.3.1
|
|||||||
crispy-bootstrap5==2024.10
|
crispy-bootstrap5==2024.10
|
||||||
cryptography==44.0.0
|
cryptography==44.0.0
|
||||||
cssselect2==0.7.0
|
cssselect2==0.7.0
|
||||||
|
ctranslate2==4.5.0
|
||||||
cycler==0.12.1
|
cycler==0.12.1
|
||||||
Cython==3.0.11
|
Cython==3.0.11
|
||||||
decorator==5.1.1
|
decorator==5.1.1
|
||||||
desert==2020.11.18
|
desert==2020.11.18
|
||||||
dill==0.3.9
|
dill==0.3.9
|
||||||
distro==1.9.0
|
distro==1.9.0
|
||||||
dj-rest-auth==7.0.0
|
dj-rest-auth==7.0.1
|
||||||
dj-shop-cart==7.1.1
|
dj-shop-cart==7.1.1
|
||||||
Django==5.1.4
|
Django==5.1.5
|
||||||
django-allauth==65.3.0
|
django-allauth==65.3.1
|
||||||
|
django-appointment==3.7.4
|
||||||
django-autoslug==1.9.9
|
django-autoslug==1.9.9
|
||||||
django-bootstrap5==24.3
|
django-bootstrap5==24.3
|
||||||
django-classy-tags==4.1.0
|
django-classy-tags==4.1.0
|
||||||
django-cors-headers==4.6.0
|
django-cors-headers==4.6.0
|
||||||
django-countries==7.6.1
|
django-countries==7.6.1
|
||||||
django-crispy-forms==2.3
|
django-crispy-forms==2.3
|
||||||
django-debug-toolbar==4.4.6
|
django-debug-toolbar==5.0.1
|
||||||
django-extensions==3.2.3
|
django-extensions==3.2.3
|
||||||
django-filter==24.3
|
django-filter==24.3
|
||||||
django-formtools==2.5.1
|
django-formtools==2.5.1
|
||||||
django-ledger==0.7.0
|
django-ledger==0.7.3
|
||||||
django-money==3.5.3
|
django-money==3.5.3
|
||||||
django-nine==0.2.7
|
django-nine==0.2.7
|
||||||
django-nonefield==0.4
|
django-nonefield==0.4
|
||||||
django-phonenumber-field==8.0.0
|
django-phonenumber-field==8.0.0
|
||||||
|
django-picklefield==3.2
|
||||||
django-prometheus==2.3.1
|
django-prometheus==2.3.1
|
||||||
|
django-q2==1.7.6
|
||||||
django-sekizai==4.1.0
|
django-sekizai==4.1.0
|
||||||
django-silk==5.3.1
|
django-silk==5.3.2
|
||||||
django-sms==0.7.0
|
django-sms==0.7.0
|
||||||
django-sslserver==0.22
|
django-sslserver==0.22
|
||||||
django-tables2==2.7.0
|
django-tables2==2.7.5
|
||||||
django-treebeard==4.7.1
|
django-treebeard==4.7.1
|
||||||
django-view-breadcrumbs==2.5.1
|
django-view-breadcrumbs==2.5.1
|
||||||
djangocms-admin-style==3.3.1
|
djangocms-admin-style==3.3.1
|
||||||
djangorestframework==3.15.2
|
djangorestframework==3.15.2
|
||||||
djangorestframework-simplejwt==5.3.1
|
djangorestframework_simplejwt==5.4.0
|
||||||
djangoviz==0.1.1
|
djangoviz==0.1.1
|
||||||
docutils==0.21.2
|
docutils==0.21.2
|
||||||
easy-thumbnails==2.10
|
easy-thumbnails==2.10
|
||||||
et_xmlfile==2.0.0
|
et_xmlfile==2.0.0
|
||||||
Faker==33.1.0
|
Faker==33.3.1
|
||||||
|
filelock==3.16.1
|
||||||
fire==0.7.0
|
fire==0.7.0
|
||||||
Flask==3.1.0
|
Flask==3.1.0
|
||||||
fonttools==4.55.3
|
fonttools==4.55.3
|
||||||
frozenlist==1.5.0
|
frozenlist==1.5.0
|
||||||
|
fsspec==2024.12.0
|
||||||
gprof2dot==2024.6.6
|
gprof2dot==2024.6.6
|
||||||
graphqlclient==0.2.4
|
graphqlclient==0.2.4
|
||||||
greenlet==3.1.1
|
greenlet==3.1.1
|
||||||
h11==0.14.0
|
h11==0.14.0
|
||||||
|
h2==4.1.0
|
||||||
|
hpack==4.0.0
|
||||||
|
hstspreload==2025.1.1
|
||||||
httpcore==1.0.7
|
httpcore==1.0.7
|
||||||
httpx==0.28.0
|
httpx==0.28.1
|
||||||
|
hyperframe==6.0.1
|
||||||
idna==3.10
|
idna==3.10
|
||||||
imageio==2.36.1
|
imageio==2.37.0
|
||||||
imagesize==1.4.1
|
imagesize==1.4.1
|
||||||
imgaug==0.4.0
|
imgaug==0.4.0
|
||||||
iso4217==1.12.20240625
|
iso4217==1.12.20240625
|
||||||
isodate==0.7.2
|
isodate==0.7.2
|
||||||
isort==5.13.2
|
isort==5.13.2
|
||||||
itsdangerous==2.2.0
|
itsdangerous==2.2.0
|
||||||
Jinja2==3.1.4
|
Jinja2==3.1.5
|
||||||
jiter==0.8.0
|
jiter==0.8.2
|
||||||
joblib==1.4.2
|
joblib==1.4.2
|
||||||
kiwisolver==1.4.8
|
kiwisolver==1.4.8
|
||||||
lazy_loader==0.4
|
lazy_loader==0.4
|
||||||
ledger==1.0.1
|
ledger==1.0.1
|
||||||
|
libretranslatepy==2.1.4
|
||||||
lmdb==1.6.2
|
lmdb==1.6.2
|
||||||
lxml==5.3.0
|
lxml==5.3.0
|
||||||
Markdown==3.7
|
Markdown==3.7
|
||||||
markdown-it-py==3.0.0
|
markdown-it-py==3.0.0
|
||||||
MarkupSafe==3.0.2
|
MarkupSafe==3.0.2
|
||||||
marshmallow==3.23.2
|
marshmallow==3.25.1
|
||||||
matplotlib==3.10.0
|
matplotlib==3.10.0
|
||||||
mccabe==0.7.0
|
mccabe==0.7.0
|
||||||
mdurl==0.1.2
|
mdurl==0.1.2
|
||||||
MouseInfo==0.1.3
|
MouseInfo==0.1.3
|
||||||
|
mpmath==1.3.0
|
||||||
multidict==6.1.0
|
multidict==6.1.0
|
||||||
mypy-extensions==1.0.0
|
mypy-extensions==1.0.0
|
||||||
networkx==3.4.2
|
networkx==3.4.2
|
||||||
newrelic==10.3.1
|
newrelic==10.4.0
|
||||||
nltk==3.9.1
|
nltk==3.9.1
|
||||||
numpy==1.26.4
|
libquadmath==2.2.2
|
||||||
oauthlib==3.2.2
|
oauthlib==3.2.2
|
||||||
ofxtools==0.9.5
|
ofxtools==0.9.5
|
||||||
openai==1.56.2
|
openai==1.59.8
|
||||||
opencv-contrib-python==4.10.0.84
|
opencv-contrib-python==4.11.0.86
|
||||||
opencv-python==4.10.0.84
|
opencv-python==4.11.0.86
|
||||||
opencv-python-headless==4.10.0.84
|
opencv-python-headless==4.11.0.86
|
||||||
openpyxl==3.1.5
|
openpyxl==3.1.5
|
||||||
opt-einsum==3.3.0
|
opt_einsum==3.4.0
|
||||||
outcome==1.3.0.post0
|
outcome==1.3.0.post0
|
||||||
packaging==24.2
|
packaging==24.2
|
||||||
pandas==2.2.3
|
pandas==2.2.3
|
||||||
pango==0.0.1
|
pango==0.0.1
|
||||||
pdfkit==1.0.0
|
pdfkit==1.0.0
|
||||||
phonenumbers==8.13.51
|
phonenumbers==8.13.53
|
||||||
pillow==11.0.0
|
pillow==11.1.0
|
||||||
platformdirs==4.3.6
|
platformdirs==4.3.6
|
||||||
prometheus_client==0.21.1
|
prometheus_client==0.21.1
|
||||||
propcache==0.2.1
|
propcache==0.2.1
|
||||||
protobuf==5.29.3
|
protobuf==5.29.3
|
||||||
psycopg==3.2.3
|
psycopg==3.2.4
|
||||||
psycopg-binary==3.2.3
|
psycopg-binary==3.2.4
|
||||||
psycopg-c==3.2.3
|
psycopg-c==3.2.4
|
||||||
py-moneyed==3.0
|
py-moneyed==3.0
|
||||||
PyAutoGUI==0.9.54
|
PyAutoGUI==0.9.54
|
||||||
pyclipper==1.3.0.post6
|
pyclipper==1.3.0.post6
|
||||||
pycodestyle==2.12.1
|
pycodestyle==2.12.1
|
||||||
pycparser==2.22
|
pycparser==2.22
|
||||||
pydantic==2.10.3
|
pydantic==2.10.5
|
||||||
pydantic_core==2.27.1
|
pydantic_core==2.27.2
|
||||||
pydotplus==2.0.2
|
pydotplus==2.0.2
|
||||||
pydyf==0.11.0
|
pydyf==0.11.0
|
||||||
PyGetWindow==0.0.9
|
PyGetWindow==0.0.9
|
||||||
Pygments==2.18.0
|
Pygments==2.19.1
|
||||||
PyJWT==2.10.1
|
PyJWT==2.10.1
|
||||||
pylint==3.3.2
|
pylint==3.3.3
|
||||||
PyMsgBox==1.0.9
|
PyMsgBox==1.0.9
|
||||||
PyMySQL==1.1.1
|
PyMySQL==1.1.1
|
||||||
pyobjc-core==10.3.2
|
pyobjc-core==11.0
|
||||||
pyobjc-framework-Cocoa==10.3.2
|
pyobjc-framework-Cocoa==11.0
|
||||||
pyobjc-framework-Quartz==10.3.2
|
pyobjc-framework-Quartz==11.0
|
||||||
pyparsing==3.2.0
|
pyparsing==3.2.1
|
||||||
pyperclip==1.9.0
|
pyperclip==1.9.0
|
||||||
pyphen==0.17.0
|
pyphen==0.17.0
|
||||||
pypng==0.20220715.0
|
pypng==0.20220715.0
|
||||||
@ -166,30 +178,36 @@ python3-saml==1.16.0
|
|||||||
pytweening==1.2.0
|
pytweening==1.2.0
|
||||||
pytz==2024.2
|
pytz==2024.2
|
||||||
pyvin==0.0.2
|
pyvin==0.0.2
|
||||||
pywa==2.4.0
|
pywa==2.7.0
|
||||||
pywhat==5.1.0
|
pywhat==5.1.0
|
||||||
pywhatkit==5.4
|
pywhatkit==5.4
|
||||||
PyYAML==6.0.2
|
PyYAML==6.0.2
|
||||||
|
pyzbar==0.1.9
|
||||||
qrcode==8.0
|
qrcode==8.0
|
||||||
RapidFuzz==3.11.0
|
RapidFuzz==3.11.0
|
||||||
regex==2024.11.6
|
regex==2024.11.6
|
||||||
reportlab==4.2.5
|
reportlab==4.2.5
|
||||||
requests==2.32.3
|
requests==2.32.3
|
||||||
requests-oauthlib==2.0.0
|
requests-oauthlib==2.0.0
|
||||||
|
rfc3986==2.0.0
|
||||||
rich==13.9.4
|
rich==13.9.4
|
||||||
rubicon-objc==0.4.9
|
rubicon-objc==0.5.0
|
||||||
|
sacremoses==0.1.1
|
||||||
scikit-image==0.25.0
|
scikit-image==0.25.0
|
||||||
scikit-learn==1.6.0
|
libomp runtime library==1.6.1
|
||||||
scipy==1.14.1
|
libquadmath==1.15.1
|
||||||
selenium==4.27.1
|
selenium==4.27.1
|
||||||
|
sentencepiece==0.2.0
|
||||||
shapely==2.0.6
|
shapely==2.0.6
|
||||||
six==1.16.0
|
six==1.17.0
|
||||||
sniffio==1.3.1
|
sniffio==1.3.1
|
||||||
snowballstemmer==2.2.0
|
snowballstemmer==2.2.0
|
||||||
sortedcontainers==2.4.0
|
sortedcontainers==2.4.0
|
||||||
soupsieve==2.6
|
soupsieve==2.6
|
||||||
SQLAlchemy==2.0.36
|
SQLAlchemy==2.0.37
|
||||||
sqlparse==0.5.2
|
sqlparse==0.5.3
|
||||||
|
stanza==1.10.1
|
||||||
|
sympy==1.13.1
|
||||||
tablib==3.7.0
|
tablib==3.7.0
|
||||||
termcolor==2.5.0
|
termcolor==2.5.0
|
||||||
threadpoolctl==3.5.0
|
threadpoolctl==3.5.0
|
||||||
@ -198,16 +216,17 @@ tinycss2==1.4.0
|
|||||||
tinyhtml5==2.0.0
|
tinyhtml5==2.0.0
|
||||||
tomli==2.2.1
|
tomli==2.2.1
|
||||||
tomlkit==0.13.2
|
tomlkit==0.13.2
|
||||||
|
torch==2.5.1
|
||||||
tqdm==4.67.1
|
tqdm==4.67.1
|
||||||
trio==0.28.0
|
trio==0.28.0
|
||||||
trio-websocket==0.11.1
|
trio-websocket==0.11.1
|
||||||
twilio==9.4.1
|
twilio==9.4.3
|
||||||
typing-inspect==0.9.0
|
typing-inspect==0.9.0
|
||||||
typing_extensions==4.12.2
|
typing_extensions==4.12.2
|
||||||
tzdata==2024.2
|
tzdata==2024.2
|
||||||
Unidecode==1.3.8
|
Unidecode==1.3.8
|
||||||
upgrade-requirements==1.7.0
|
upgrade-requirements==1.7.0
|
||||||
urllib3==2.2.3
|
urllib3==2.3.0
|
||||||
vin==0.6.2
|
vin==0.6.2
|
||||||
vininfo==1.8.0
|
vininfo==1.8.0
|
||||||
vishap==0.1.5
|
vishap==0.1.5
|
||||||
|
|||||||
@ -6,9 +6,7 @@
|
|||||||
height: auto;
|
height: auto;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
{% include 'partials/form_errors.html' %}
|
|
||||||
|
|
||||||
<!-- JavaScript Section -->
|
<!-- JavaScript Section -->
|
||||||
<script src="https://unpkg.com/@zxing/library@latest"></script>
|
<script src="https://unpkg.com/@zxing/library@latest"></script>
|
||||||
@ -17,24 +15,25 @@
|
|||||||
<div class="row g-3">
|
<div class="row g-3">
|
||||||
<form method="post" id="carForm" class="form needs-validation" novalidate>
|
<form method="post" id="carForm" class="form needs-validation" novalidate>
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
|
{% include 'partials/form_errors.html' %}
|
||||||
<div class="d-flex flex-column min-vh-100">
|
<div class="d-flex flex-column min-vh-100">
|
||||||
<div class="d-flex flex-column flex-sm-grow-1 p-4">
|
<div class="d-flex flex-column flex-sm-grow-1 p-4">
|
||||||
<main class="d-grid gap-4 p-1">
|
<main class="d-grid gap-4 p-1">
|
||||||
|
|
||||||
<div class="row g-4">
|
<div class="row g-4">
|
||||||
<h3 class="mb-3">{% trans 'Add Car' %}</h3>
|
<h3 class="mb-3">{% trans 'Add Car' %}</h3>
|
||||||
|
|
||||||
<!-- VIN -->
|
<!-- VIN -->
|
||||||
<div class="col-lg-4 col-xl-6">
|
<div class="col-lg-4 col-xl-6">
|
||||||
<div class="card h-100">
|
<div class="card h-100">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div>
|
<div>
|
||||||
<div class="form-floating">
|
<div class="form-floating">
|
||||||
<input type="text"
|
<input type="text"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
id="{{ form.vin.id_for_label }}" name="{{ form.vin.html_name }}" />
|
id="{{ form.vin.id_for_label }}" name="{{ form.vin.html_name }}" required/>
|
||||||
<label for="{{ form.vin.id_for_label }}">{% trans 'VIN' %}</label>
|
<label for="{{ form.vin.id_for_label }}">{% trans 'VIN' %}</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group input-group-sm my-2">
|
<div class="input-group input-group-sm my-2">
|
||||||
<button type="button"
|
<button type="button"
|
||||||
@ -61,7 +60,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="serie-row" class="col-6">
|
<div id="serie-row" class="col-6">
|
||||||
|
|
||||||
<div class="form-floating">
|
<div class="form-floating">
|
||||||
<select class="form-select form-select-sm"
|
<select class="form-select form-select-sm"
|
||||||
id="{{ form.id_car_serie.id_for_label }}"
|
id="{{ form.id_car_serie.id_for_label }}"
|
||||||
@ -82,18 +80,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-6" id="trim-row">
|
<div class="col-6" id="trim-row">
|
||||||
<div class="form-floating">
|
<div class="form-floating">
|
||||||
|
<select class="form-select form-select-sm"
|
||||||
<select class="form-select form-select-sm"
|
id="{{ form.id_car_trim.id_for_label }}"
|
||||||
id="{{ form.id_car_trim.id_for_label }}"
|
name="{{ form.id_car_trim.html_name }}">
|
||||||
name="{{ form.id_car_trim.html_name }}">
|
<option value="">{% trans 'Select' %}</option>
|
||||||
<option value="">{% trans 'Select' %}</option>
|
</select>
|
||||||
</select>
|
<label for="{{ form.id_car_trim.id_for_label }}">{% trans 'trim'|capfirst %}</label>
|
||||||
<label for="{{ form.id_car_trim.id_for_label }}">{% trans 'trim'|capfirst %}</label>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-6" id="model-row">
|
<div class="col-6" id="model-row">
|
||||||
<div class="form-floating">
|
<div class="form-floating">
|
||||||
@ -107,17 +102,16 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="badge badge-phoenix fs-11 badge-phoenix-success m-1" id="generation-div"></div>
|
<div class="badge badge-phoenix fs-11 badge-phoenix-success m-1" id="generation-div"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-6">
|
<div class="col-4 align-items-center">
|
||||||
<div class="btn-group btn-group-sm justify-content-between align-items-center my-2">
|
|
||||||
<button type="button"
|
<button type="button"
|
||||||
class="btn btn-sm btn-phoenix-primary rounded-start"
|
class="btn btn-sm btn-phoenix-success p-1"
|
||||||
id="specification-btn"
|
id="specification-btn"
|
||||||
data-bs-toggle="modal"
|
data-bs-toggle="modal"
|
||||||
data-bs-target="#specificationsModal"
|
data-bs-target="#specificationsModal"
|
||||||
disabled>{% trans 'specifications'|capfirst %}
|
disabled>{% trans 'specifications'|capfirst %}
|
||||||
</button>
|
</button>
|
||||||
<button type="button"
|
<button type="button"
|
||||||
class="btn btn-sm btn-phoenix-warning rounded-end"
|
class="btn btn-sm btn-phoenix-warning p-1"
|
||||||
id="options-btn"
|
id="options-btn"
|
||||||
data-bs-toggle="modal"
|
data-bs-toggle="modal"
|
||||||
data-bs-target="#equipmentOptionsModal"
|
data-bs-target="#equipmentOptionsModal"
|
||||||
@ -125,17 +119,15 @@
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row g-3">
|
<div class="row g-3">
|
||||||
<div class="col-lg-4 col-xl-6">
|
<div class="col-lg-4 col-xl-6">
|
||||||
<div class="row g-3">
|
<div class="row g-3">
|
||||||
<!-- Vendor Field -->
|
|
||||||
|
<!--Vendor Field-->
|
||||||
<div class="col-lg-4 col-xl-4">
|
<div class="col-lg-4 col-xl-4">
|
||||||
<div class="card h-100">
|
<div class="card h-100">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -145,15 +137,9 @@
|
|||||||
{% trans 'Vendor' %}
|
{% trans 'Vendor' %}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% if form.vendor.errors %}
|
|
||||||
<div class="text-danger small">
|
|
||||||
{{ form.vendor.errors|striptags }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Stock Type Card -->
|
<!-- Stock Type Card -->
|
||||||
<div class="col-lg-4 col-xl-4">
|
<div class="col-lg-4 col-xl-4">
|
||||||
<div class="card h-100">
|
<div class="card h-100">
|
||||||
@ -164,12 +150,6 @@
|
|||||||
{% trans 'Stock Type'|capfirst %}
|
{% trans 'Stock Type'|capfirst %}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if form.stock_type.errors %}
|
|
||||||
<div class="text-danger small">
|
|
||||||
{{ form.stock_type.errors|striptags }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -181,11 +161,6 @@
|
|||||||
{{ form.mileage|add_class:"form-control form-control-sm" }}
|
{{ form.mileage|add_class:"form-control form-control-sm" }}
|
||||||
<label for="{{ form.mileage.id_for_label }}">{% trans 'Mileage'|capfirst %}</label>
|
<label for="{{ form.mileage.id_for_label }}">{% trans 'Mileage'|capfirst %}</label>
|
||||||
</div>
|
</div>
|
||||||
{% if form.mileage.errors %}
|
|
||||||
<div class="text-danger small">
|
|
||||||
{{ form.mileage.errors|striptags }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -201,12 +176,6 @@
|
|||||||
{% trans 'Receiving Date' %}:
|
{% trans 'Receiving Date' %}:
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% if form.receiving_date.errors %}
|
|
||||||
<div class="text-danger small">
|
|
||||||
{{ form.receiving_date.errors|striptags }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -221,21 +190,13 @@
|
|||||||
</label>
|
</label>
|
||||||
{{ form.remarks|add_class:"form-control form-control-sm" }}
|
{{ form.remarks|add_class:"form-control form-control-sm" }}
|
||||||
</div>
|
</div>
|
||||||
{% if form.remarks.errors %}
|
|
||||||
<div class="text-danger small">
|
|
||||||
{{ form.remarks.errors|striptags }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<!--Specifications Buttons-->
|
||||||
<!-- Specifications Buttons -->
|
|
||||||
|
|
||||||
<div class="btn-group mt-3">
|
<div class="btn-group mt-3">
|
||||||
|
|
||||||
<button type="submit" name="add_another" value="true" class="btn btn-sm btn-phoenix-success me-1">
|
<button type="submit" name="add_another" value="true" class="btn btn-sm btn-phoenix-success me-1">
|
||||||
{% trans "Save and Add Another" %}
|
{% trans "Save and Add Another" %}
|
||||||
</button>
|
</button>
|
||||||
@ -243,7 +204,6 @@
|
|||||||
{% trans "Save and Go to Inventory" %}
|
{% trans "Save and Go to Inventory" %}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
@ -264,7 +224,6 @@
|
|||||||
<h5 class="modal-title" id="specificationsModalLabel">
|
<h5 class="modal-title" id="specificationsModalLabel">
|
||||||
<span class="ms-3 my-5">{% trans 'specifications'|capfirst %}</span><span class="ms-1 fw-light">{{ _("Details") }}</span>
|
<span class="ms-3 my-5">{% trans 'specifications'|capfirst %}</span><span class="ms-1 fw-light">{{ _("Details") }}</span>
|
||||||
</h5>
|
</h5>
|
||||||
|
|
||||||
<button class="btn btn-circle project-modal-btn position-absolute end-0 top-0 mt-3 me-3 bg-body-emphasis" data-bs-dismiss="modal">
|
<button class="btn btn-circle project-modal-btn position-absolute end-0 top-0 mt-3 me-3 bg-body-emphasis" data-bs-dismiss="modal">
|
||||||
<span class="fa-solid fa-xmark text-body dark__text-gray-100"></span>
|
<span class="fa-solid fa-xmark text-body dark__text-gray-100"></span>
|
||||||
</button>
|
</button>
|
||||||
@ -318,7 +277,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Scanner Modal -->
|
<!--Scanner Modal-->
|
||||||
<div class="modal fade" id="scannerModal" tabindex="-1" aria-labelledby="scannerModalLabel">
|
<div class="modal fade" id="scannerModal" tabindex="-1" aria-labelledby="scannerModalLabel">
|
||||||
<div class="modal-dialog modal-dialog-centered">
|
<div class="modal-dialog modal-dialog-centered">
|
||||||
<div class="modal-content rounded-top-3">
|
<div class="modal-content rounded-top-3">
|
||||||
@ -334,7 +293,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- CAR FORM -->
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@ -4,15 +4,14 @@
|
|||||||
{% block title %}{{ _("Bank Accounts") }}{% endblock title %}
|
{% block title %}{{ _("Bank Accounts") }}{% endblock title %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="row mt-4 mx-4">
|
<div class="row mt-4">
|
||||||
<div class="d-flex justify-content-between mb-2 p-6">
|
<div class="d-flex justify-content-between mb-2">
|
||||||
<span></span>
|
|
||||||
<h3 class="text-center">{% trans "Bank Accounts" %}</h3>
|
<h3 class="">{% trans "Bank Accounts" %}</h3>
|
||||||
<a href="{% url 'bank_account_create' %}" class="btn btn-sm btn-success ">{% trans "Add Bank Account" %}</a>
|
<a href="{% url 'bank_account_create' %}" class="btn btn-sm btn-phoenix-primary ">{% trans "Add Bank Account" %}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="mx-n4 px-4 mx-lg-n6 px-lg-6 bg-body-emphasis pt-7 border-y">
|
|
||||||
|
<div class="table-responsive px-1 scrollbar">
|
||||||
<div class="table-responsive mx-n1 px-1 scrollbar">
|
|
||||||
<table class="table fs-9 mb-0 border-top border-translucent">
|
<table class="table fs-9 mb-0 border-top border-translucent">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -45,6 +44,6 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="d-flex justify-content-center">
|
<div class="d-flex justify-content-center">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
@ -27,12 +27,12 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-5">
|
<div class="row my-3">
|
||||||
<div class="card rounded">
|
<div class="">
|
||||||
<div class="card-header">
|
<div class="">
|
||||||
<p class="mb-0">{{ header_title|upper }}</p>
|
<p class="mb-3"></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<p>
|
<p>
|
||||||
@ -44,7 +44,12 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<p>
|
<p>
|
||||||
<strong>{{ _('Balance Type') }}:</strong> {{ account.balance_type }}
|
{% if account.balance_type == 'debit' %}
|
||||||
|
<strong>{{ _('Balance Type') }}:</strong><div class="badge badge-phoenix fs-10 badge-phoenix-success"> <span class="fw-bold">{{ _("Debit") }}</span><span class="ms-1 fas fa-arrow-circle-down"></span></div>
|
||||||
|
{% else %}
|
||||||
|
<strong>{{ _('Balance Type') }}:</strong><div class="badge badge-phoenix fs-10 badge-phoenix-danger"> <span class="fw-bold">{{ _("Credit") }}</span><span class="ms-1 fas fa-arrow-circle-up"></span></div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<strong>{{ _('Active') }}:</strong> {{ account.active }}
|
<strong>{{ _('Active') }}:</strong> {{ account.active }}
|
||||||
@ -52,15 +57,15 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="table-responsive">
|
||||||
<table class="table is-fullwidth is-narrow is-striped is-bordered django-ledger-table-bottom-margin-75">
|
<table class="table table-sm fs-9 mb-0">
|
||||||
<tr>
|
<tr>
|
||||||
<th class="has-text-centered">{{ _('JE Number') }}</th>
|
<th class="has-text-centered">{{ _('JE Number') }}</th>
|
||||||
<th class="has-text-centered">{{ _('Date') }}</th>
|
<th class="has-text-centered">{{ _('Date') }}</th>
|
||||||
<th class="has-text-centered">{{ _('Debit') }}</th>
|
<th class="has-text-centered">{{ _('Debit') }}</th>
|
||||||
<th class="has-text-centered">{{ _('Credit') }}</th>
|
<th class="has-text-centered">{{ _('Credit') }}</th>
|
||||||
<th class="has-text-centered">{{ _('Description') }}</th>
|
<th class="has-text-centered">{{ _('Description') }}</th>
|
||||||
<th class="has-text-centered">{{ _('Unit') }}</th>
|
|
||||||
<th class="has-text-centered">{{ _('Actions') }}</th>
|
<th class="has-text-centered">{{ _('Actions') }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@ -70,16 +75,16 @@
|
|||||||
<td>{{ tx.journal_entry.timestamp }}</td>
|
<td>{{ tx.journal_entry.timestamp }}</td>
|
||||||
<td>
|
<td>
|
||||||
{% if tx.tx_type == 'debit' %}
|
{% if tx.tx_type == 'debit' %}
|
||||||
${{ tx.amount }}
|
{{ tx.amount }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
{% if tx.tx_type == 'credit' %}
|
{% if tx.tx_type == 'credit' %}
|
||||||
${{ tx.amount }}
|
{{ tx.amount }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td>{{ tx.description }}</td>
|
<td>{{ tx.description }}</td>
|
||||||
<td>{{ tx.journal_entry.entity_unit.name }}</td>
|
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-reveal-trigger position-static">
|
<div class="btn-reveal-trigger position-static">
|
||||||
<button class="btn btn-sm dropdown-toggle dropdown-caret-none transition-none btn-reveal fs-10" type="button" data-bs-toggle="dropdown" data-boundary="window" aria-haspopup="true" aria-expanded="false" data-bs-reference="parent"><span class="fas fa-ellipsis-h fs-10"></span></button>
|
<button class="btn btn-sm dropdown-toggle dropdown-caret-none transition-none btn-reveal fs-10" type="button" data-bs-toggle="dropdown" data-boundary="window" aria-haspopup="true" aria-expanded="false" data-bs-reference="parent"><span class="fas fa-ellipsis-h fs-10"></span></button>
|
||||||
@ -92,9 +97,9 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
<tr class="has-text-weight-bold">
|
<tr class="has-text-weight-bold">
|
||||||
<td></td>
|
<td></td>
|
||||||
<td class="has-text-right">Total</td>
|
<td class="has-text-right"><span class="fw-bold fs-8">{{ _("Total") }}</span></td>
|
||||||
<td class="has-text-centered">${{ total_debits }}</td>
|
<td class="has-text-centered"><span class="fw-bold fs-8">{{ total_debits }} {{ _("SAR") }}</span></td>
|
||||||
<td class="has-text-centered">${{ total_credits }}</td>
|
<td class="has-text-centered"><span class="fw-bold fs-8">{{ total_credits }} {{ _("SAR") }}</span></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
@ -103,16 +108,16 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-footer d-flex">
|
<div class="mt-3 d-flex">
|
||||||
<a class="btn btn-sm btn-primary me-1" href="{% url 'account_update' account.pk %}">
|
<a class="btn btn-sm btn-phoenix-primary me-1" href="{% url 'account_update' account.pk %}">
|
||||||
<!-- <i class="bi bi-pencil-square"></i> -->
|
<!-- <i class="bi bi-pencil-square"></i> -->
|
||||||
{{ _('Edit') }}
|
{{ _('Edit') }}
|
||||||
</a>
|
</a>
|
||||||
<a class="btn btn-sm btn-danger me-1" data-bs-toggle="modal" data-bs-target="#deleteModal">
|
<a class="btn btn-sm btn-phoenix-danger me-1" data-bs-toggle="modal" data-bs-target="#deleteModal">
|
||||||
<!-- <i class="bi bi-trash-fill"></i> -->
|
<!-- <i class="bi bi-trash-fill"></i> -->
|
||||||
{{ _('Delete') }}
|
{{ _('Delete') }}
|
||||||
</a>
|
</a>
|
||||||
<a class="btn btn-sm btn-secondary" href="{% url 'account_list' %}">
|
<a class="btn btn-sm btn-phoenix-secondary" href="{% url 'account_list' %}">
|
||||||
<!-- <i class="bi bi-arrow-left-square-fill"></i> -->
|
<!-- <i class="bi bi-arrow-left-square-fill"></i> -->
|
||||||
{% trans 'Back to List' %}
|
{% trans 'Back to List' %}
|
||||||
</a>
|
</a>
|
||||||
|
|||||||
@ -8,14 +8,12 @@
|
|||||||
</a>
|
</a>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="d-flex flex-column min-vh-100">
|
|
||||||
<div class="d-flex flex-column flex-sm-grow-1 ms-sm-14 p-4">
|
|
||||||
<main class="d-grid gap-4 p-1">
|
|
||||||
<!-- Search Bar -->
|
<!-- Search Bar -->
|
||||||
<div class="row g-4">
|
<div class="row mt-4">
|
||||||
|
<h3 class="mb-3">{% trans "Accounts" %}</h3>
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="row-fluid p-2">
|
<form method="get" class=" mb-4">
|
||||||
<form method="get">
|
|
||||||
<div class="input-group input-group-sm">
|
<div class="input-group input-group-sm">
|
||||||
<button class="btn btn-sm btn-secondary rounded-start" type="submit">
|
<button class="btn btn-sm btn-secondary rounded-start" type="submit">
|
||||||
{% trans "search" %}
|
{% trans "search" %}
|
||||||
@ -33,17 +31,12 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Customer Table -->
|
|
||||||
|
|
||||||
{% if page_obj.object_list %}
|
{% if page_obj.object_list %}
|
||||||
|
|
||||||
<div id="accountsTable">
|
<div class="table-responsive px-1 scrollbar">
|
||||||
<div class="table-responsive">
|
<table class="table fs-9 mb-0 border-top border-translucent">
|
||||||
<table class="table table-sm fs-9 mb-0">
|
|
||||||
<thead>
|
<thead>
|
||||||
|
|
||||||
<tr class="bg-body-highlight">
|
<tr class="bg-body-highlight">
|
||||||
@ -140,9 +133,7 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
@ -46,7 +46,7 @@
|
|||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
<a href="{% url 'estimate_detail' estimate.pk %}"
|
<a href="{% url 'estimate_detail' estimate.pk %}"
|
||||||
class="btn btn-sm btn-phoenix-success">
|
class="btn btn-sm btn-phoenix-success">
|
||||||
{% trans "view" %}
|
{% trans "view"|capfirst %}
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
@ -6,10 +6,10 @@
|
|||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="row mt-4">
|
<div class="row mt-4">
|
||||||
<h3 class="text-center">{% trans "Invoices" %}</h3>
|
<h3 class="text-center">{% trans "Invoices" %}</h3>
|
||||||
<div class="mx-n4 px-4 mx-lg-n6 px-lg-6 bg-body-emphasis pt-7 border-y">
|
|
||||||
|
|
||||||
<div class="table-responsive mx-n1 px-1 scrollbar">
|
|
||||||
<table class="table fs-9 mb-0 border-top border-translucent">
|
<div class="table-responsive">
|
||||||
|
<table class="table table-sm fs-9 mb-0">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="sort white-space-nowrap align-middle" scope="col">{% trans "Invoice Number" %}</th>
|
<th class="sort white-space-nowrap align-middle" scope="col">{% trans "Invoice Number" %}</th>
|
||||||
@ -45,6 +45,6 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="d-flex justify-content-center">
|
<div class="d-flex justify-content-center">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
Loading…
x
Reference in New Issue
Block a user