Browse Source

Decimal point is comma

politica
Celestino Rey 1 year ago
parent
commit
484ab35dd6
13 changed files with 72 additions and 18 deletions
  1. +0
    -1
      .gitignore
  2. +1
    -0
      RepostajesDj/.dockerignore
  3. +1
    -1
      RepostajesDj/K8S/Makefile
  4. +24
    -0
      RepostajesDj/README.md
  5. +16
    -0
      RepostajesDj/vehiculos/.gitignore
  6. BIN
      RepostajesDj/vehiculos/db.sqlite3
  7. +5
    -0
      RepostajesDj/vehiculos/entornoPruebas.sh
  8. +1
    -0
      RepostajesDj/vehiculos/repostajes/.gitignore
  9. +2
    -4
      RepostajesDj/vehiculos/repostajes/forms.py
  10. +7
    -7
      RepostajesDj/vehiculos/repostajes/models.py
  11. +1
    -0
      RepostajesDj/vehiculos/repostajes/templates/repostajes/lista_repostajes.html
  12. +10
    -4
      RepostajesDj/vehiculos/repostajes/views.py
  13. +4
    -1
      RepostajesDj/vehiculos/vehiculos/settings.py

+ 0
- 1
.gitignore View File

@ -11,4 +11,3 @@ venv/
Thumbs.db
*.log
*.sqlite

+ 1
- 0
RepostajesDj/.dockerignore View File

@ -1,3 +1,4 @@
Dockerfile
Makefile
volcadossql/
venv/

+ 1
- 1
RepostajesDj/K8S/Makefile View File

@ -1,7 +1,7 @@
export ARQUITECTURA := $(shell lscpu |grep itectur | tr -d ' '| cut -f2 -d':')
#export REGISTRY=registry.cube.local
export REGISTRY=registry.reymota.es
export IMG_VERSION = 0.23
export IMG_VERSION = 1.3
export IMG_NGINX_VERSION = 1.0
# limpia todo


+ 24
- 0
RepostajesDj/README.md View File

@ -1,3 +1,27 @@
# Instalación
Desde el directorio K8S ejecutar make (esto hace todo: la imagen, para los pods y los lanza otra vez)
La primera vez, hay que entrar en el pod de vehículos con 'entra.sh' y
python manage.py createsuperuser
python manage.py makemigrations
python manage.py migrate
## Comprobar la base de datos
Con la shell entraPsql.sh:
\l para listar las BD
\c vehiculos para usar nuestra db
\dt para ver las tablas
# De dónde cogí ideas
https://learndjango.com/tutorials/django-login-and-logout-tutorial


+ 16
- 0
RepostajesDj/vehiculos/.gitignore View File

@ -0,0 +1,16 @@
__pycache__/
*.py[cod]
venv/
*.venv
.idea
.DS_Store
Thumbs.db
*.log
db.sqlite3
mediafiles/

BIN
RepostajesDj/vehiculos/db.sqlite3 View File


+ 5
- 0
RepostajesDj/vehiculos/entornoPruebas.sh View File

@ -0,0 +1,5 @@
export CSRF_TRUSTED_ORIGINS="localhost"
export DEBUG=1
export DJANGO_ALLOWED_HOSTS="localhost"

+ 1
- 0
RepostajesDj/vehiculos/repostajes/.gitignore View File

@ -0,0 +1 @@
migrations/

+ 2
- 4
RepostajesDj/vehiculos/repostajes/forms.py View File

@ -2,8 +2,6 @@ from django import forms
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from .models import Vehiculo, Repostaje, ReyMotaUser
import calculation
class VehiculoForm(forms.ModelForm):
class Meta:
@ -35,10 +33,10 @@ class RepostajeForm(forms.ModelForm):
widget=forms.TextInput(attrs={'class': 'form-control'}))
litros = forms.DecimalField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
widget=forms.NumberInput(attrs={'class': 'form-control'}))
importe = forms.DecimalField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
widget=forms.NumberInput(attrs={'class': 'form-control'}))
aplica_descuento = forms.BooleanField(initial=False, required=False)


+ 7
- 7
RepostajesDj/vehiculos/repostajes/models.py View File

@ -28,13 +28,13 @@ class Vehiculo(models.Model):
class Repostaje(models.Model):
vehiculo = models.ForeignKey(Vehiculo, on_delete=models.CASCADE)
fecha = models.DateField()
kms = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
litros = models.DecimalField(max_digits=4, decimal_places=2, blank=True, null=True)
descuento = models.DecimalField(max_digits=4, decimal_places=2, blank=True, null=True)
importe = models.DecimalField(max_digits=6, decimal_places=2, blank=True, null=True)
precioxlitro = models.DecimalField(max_digits=4, decimal_places=2, blank=True, null=True)
kmsrecorridos = models.DecimalField(max_digits=5, decimal_places=2, blank=True, null=True)
consumo = models.DecimalField(max_digits=4, decimal_places=2, blank=True, null=True)
kms = models.DecimalField(max_digits=10, decimal_places=0, blank=True, null=True)
litros = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
descuento = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
importe = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
precioxlitro = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
kmsrecorridos = models.DecimalField(max_digits=10, decimal_places=0, blank=True, null=True)
consumo = models.DecimalField(max_digits=10, decimal_places=2, blank=True, null=True)
def __str__(self):
return self.fecha


+ 1
- 0
RepostajesDj/vehiculos/repostajes/templates/repostajes/lista_repostajes.html View File

@ -28,6 +28,7 @@
<div class="app-doc-meta">
<ul class="list-unstyled mb-0">
<li><span class="text-muted">Vehiculo: </span><a href="{% url 'detalle_vehiculo' repostaje.vehiculo.id %}">{{ repostaje.vehiculo.matricula }}</a></li>
<li><span class="text-muted">Kms: </span><a>{{ repostaje.kms }}</a></li>
</ul>
</div><!--//app-doc-meta-->


+ 10
- 4
RepostajesDj/vehiculos/repostajes/views.py View File

@ -95,22 +95,29 @@ def nuevo_repostaje(request):
instancia.descuento = 0.0
instancia.importe = float(instancia.importe) - instancia.descuento
instancia.precioxlitro = instancia.importe / float(instancia.litros)
if instancia.litros > 0:
instancia.precioxlitro = round(instancia.importe / float(instancia.litros),2)
else:
instancia.precioxlitro = 0
# lee todos los repostajes del vehículo
# repostajes = Repostajes.query.filter_by(vehiculo_id=vehiculo_id).all()
if Repostaje.objects.all():
if Repostaje.objects.filter(vehiculo_id=instancia.vehiculo):
repostajes = Repostaje.objects.filter(vehiculo_id=instancia.vehiculo).order_by('-fecha')[0]
instancia.kmsrecorridos = instancia.kms - repostajes.kms
if instancia.kmsrecorridos > 0:
instancia.consumo = instancia.litros*100/instancia.kmsrecorridos
instancia.consumo = round(instancia.litros * 100 / instancia.kmsrecorridos,2)
else:
instancia.kmsrecorridos = 0
instancia.consumo = 0
print("nuevo_repostaje: kms litros importe descuento precio recorridos consumo")
print("nuevo_repostaje: ", instancia.kms, instancia.litros, instancia.importe, instancia.descuento, instancia.precioxlitro, instancia.kmsrecorridos, instancia.consumo)
instancia.save()
return redirect('lista_repostajes')
@ -140,4 +147,3 @@ def eliminar_repostaje(request, repostaje_id):
repostaje = Repostaje.objects.get(pk=repostaje_id)
repostaje.delete()
return redirect('lista_repostajes')

+ 4
- 1
RepostajesDj/vehiculos/vehiculos/settings.py View File

@ -119,7 +119,10 @@ TIME_ZONE = 'Europe/Madrid'
USE_I18N = True
USE_TZ = True
I18N = True
L10N = True
DECIMAL_SEPARATOR = ','
THOUSAND_SEPARATOR = '.'
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/5.1/howto/static-files/


Loading…
Cancel
Save