You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

65 lines
1.9 KiB

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:
model = Vehiculo
fields = ['marca', 'modelo', 'matricula', 'foto']
marca = forms.CharField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
modelo = forms.CharField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
matricula = forms.CharField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
class RepostajeForm(forms.ModelForm):
class Meta:
model = Repostaje
fields = ['fecha', 'vehiculo', 'kms', 'litros', 'importe']
fecha = forms.DateField(
widget=forms.DateInput(attrs={'type': 'date', 'class': 'form-control'}))
vehiculo = forms.ModelChoiceField(
queryset=Vehiculo.objects.all(),
widget=forms.Select(attrs={'class': 'form-control'}))
kms = forms.DecimalField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
litros = forms.DecimalField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
importe = forms.DecimalField(
widget=forms.TextInput(attrs={'class': 'form-control'}))
aplica_descuento = forms.BooleanField(initial=False, required=False)
descuento = forms.DecimalField(
widget=calculation.FormulaInput('aplica_descuento ? parseFloat(importe*0.03).toFixed(2) : 0.0')
)
precioxlitro = forms.DecimalField(
widget=calculation.FormulaInput('(importe-descuento)/litros')
)
class ReyMotaUserCreationForm(UserCreationForm):
class Meta:
model = ReyMotaUser
fields = ("email", "nombre", "foto")
labels = {'email': 'Dirección de correo'}
class ReyMotaUserChangeForm(UserChangeForm):
class Meta:
model = ReyMotaUser
fields = ("email", "foto")