from django.db import models from django.db.models import Model, CharField, EmailField, \ DateTimeField, DecimalField, ForeignKey class Address(Model): address = CharField(max_length=200) zip_code = CharField(max_length=10) city = CharField(max_length=200) country = CharField(max_length=200) class Person(Model): name = CharField(max_length=50) surname = CharField(max_length=50) address = Address() nationality = CharField(max_length=200) email = EmailField(max_length=254) phone = CharField(max_length=20) # Foreign keys address = ForeignKey(Address) class Company(Model): name = CharField(max_length=50) address = CharField(max_length=254) nationality = CharField(max_length=50) email = EmailField(max_length=200) phone = CharField(max_length=20) # Foreign keys address = ForeignKey(Address) class Insurance(Company): pass class Boat(Model): name = CharField(max_length=50) registration_num = CharField(max_length=20) length = DecimalField() beam = DecimalField() water_draught = DecimalField() tonnage = DecimalField() water_tank = DecimalField() model = CharField(max_length=50) heating = CharField(max_length=50) passenger_capacity = IntegerField() picture = ImageField(upload_to=None, height_field=None, width_field=None, max_length=100) # Foreign keys insurance = Insurance() class Port(Model): name = CharField(max_length=50) # Foreign keys address = ForeignKey(Address) class Dock(Model): num = CharField(max_length=10) length = DecimalField() width = DecimalField() depth = DecimalField() class Plug(Model): num = CharField(max_length=10) amperage = DecimalField() voltage = DecimalField() class Tap(Model): num = CharField(max_length=10) class Stay(Model): arrival = DateTimeField() departure = DateTimeField('date published') coming_from = CharField(max_length=200) going_to = CharField(max_length=200) class PaymentType(Model): name = CharField(max_length=20) class Payment(Model): num = CharField(max_length=40) date = DateTimeField() amount = DecimalField() pay_type = ForeignKey(PaymentType) class Service(Model): service_type = CharField(max_length=50) class Bill_line(Model): service = ForeignKey(Service) quantity = DecimalField()