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

38 lines
1.6 KiB
Python

from typing import Required
from django.db import models
from api.models import User
# Create your models here.
class Vehicle(models.Model):
vehicle_number = models.CharField(max_length=15, unique=True)
trailer1_number = models.CharField(max_length=15, null=True, blank=True)
trailer2_number = models.CharField(max_length=15, null=True, blank=True)
driver_pid = models.CharField(max_length=50, null=True, blank=True)
tare = models.IntegerField(null=True, blank=True)
tare_date = models.DateTimeField(null=True, blank=True)
tare_user = models.ForeignKey(User, null=True, blank=True, related_name='user_vehicle_tare', on_delete=models.SET_NULL)
tare_manual = models.BooleanField(default=False)
gross = models.IntegerField(null=True, blank=True)
gross_date = models.DateTimeField(null=True, blank=True)
gross_user = models.ForeignKey(User, null=True, blank=True, related_name='user_vehicle_gross', on_delete=models.SET_NULL)
gross_manual = models.BooleanField(default=False)
net = models.IntegerField(null=True, blank=True)
net_date = models.DateTimeField(null=True, blank=True)
net_user = models.ForeignKey(User, null=True, blank=True, related_name='user_vehicle_net', on_delete=models.SET_NULL)
doc_number = models.CharField(max_length=20, null=True, blank=True, unique=True)
def __str__(self):
return f"{self.vehicle_number}"
class VehicleExtra(models.Model):
vehicle = models.OneToOneField(
Vehicle, on_delete=models.CASCADE, related_name="extra"
)
data = models.JSONField(default=dict)