Advertisement
Guest User

Untitled

a guest
Apr 8th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.55 KB | None | 0 0
  1. from datetime import datetime
  2. from django.conf import settings
  3. from django.db import models
  4.  
  5.  
  6. if not settings.configured:
  7. settings.configure()
  8. # Create your models here.
  9.  
  10.  
  11. class User(models.Model):
  12. def __str__(self):
  13. return 'Login: ' + str(self.login) + " ID : " + str(self.id)
  14. id = models.AutoField(primary_key=True, serialize=True,default = None)
  15. login = models.CharField(max_length=25)
  16. password = models.CharField(max_length=12)
  17. email = models.CharField(max_length=35)
  18. surname = models.CharField(max_length=20)
  19. name = models.CharField(max_length=11)
  20. date_of_birth = models.DateField('date of birth', default = datetime.today)
  21. last_activity = models.DateField('date of last actity', default = datetime.today)
  22. banned = models.BooleanField(default = False)
  23. class Meta:
  24. verbose_name_plural = 'User'
  25.  
  26.  
  27. class Petrol_dictionary(models.Model):
  28.  
  29. id = models.AutoField(primary_key=True, serialize=True,default = None)
  30. company = models.CharField(max_length=10)
  31. logo = models.ImageField(upload_to='photos/%Y/%m/%d', default = None)
  32. def __str__(self):
  33. return 'Company : ' + str(self.company) + " ID : " + str(self.id)
  34. class Meta:
  35. verbose_name_plural = 'Petrol_dictionary'
  36.  
  37.  
  38. class Car(models.Model):
  39.  
  40. id = models.AutoField(primary_key=True, serialize=True,default = None)
  41. user_id = models.ForeignKey('User', on_delete=models.PROTECT)
  42. model = models.CharField(max_length=10)
  43. mark = models.CharField(max_length=10)
  44. FUEL_TYPE_CHOICES = (
  45. ('LNG','LNG'),
  46. ('ON','ON'),
  47. ('PB98','PB98'),
  48. ('PB95','PB95'),
  49. ('Electric','Electric'),
  50. )
  51. fuel_type = models.CharField(max_length= 8,choices=FUEL_TYPE_CHOICES, default = "rodzaj paliwa")
  52. main_car = models.BooleanField(default=False)
  53. def __str__(self):
  54. return 'User : ' + str(self.user_id) + " || Car ID : " + str(self.id)
  55. class Meta:
  56. verbose_name_plural = 'Car'
  57.  
  58.  
  59. class Petrol_station(models.Model):
  60.  
  61. id = models.AutoField(primary_key=True, serialize=True,default = None)
  62. company_ID = models.ForeignKey('Petrol_dictionary', on_delete=models.PROTECT)
  63. name = models.CharField(max_length=20)
  64. active = models.BooleanField(default=True)
  65. x_coordinate = models.DecimalField(max_digits=20, decimal_places=17)
  66. y_coordinate = models.DecimalField(max_digits=20, decimal_places=17)
  67. PB95_price = models.DecimalField(max_digits=3, decimal_places=2)
  68. PB98_price = models.DecimalField(max_digits=3, decimal_places=2)
  69. ON_price = models.DecimalField(max_digits=3, decimal_places=2)
  70. LNG_price = models.DecimalField(max_digits=3, decimal_places=2)
  71. PB95_updateDate = models.DateField('date of price update', default = datetime.today)
  72. PB98_updateDate = models.DateField('date of price update', default=datetime.today)
  73. ON_updateDate = models.DateField('date of price update', default=datetime.today)
  74. LNG_updateDate = models.DateField('date of price update', default=datetime.today)
  75. def __str__(self):
  76. return str(self.company_ID) + " Petrol ID : " + str(self.id)
  77. class Meta:
  78. verbose_name_plural = 'Petrol_station'
  79.  
  80.  
  81. class Price_History(models.Model):
  82.  
  83. id = models.AutoField(primary_key=True, serialize=True,default = None)
  84. petrol_ID = models.ForeignKey('Petrol_station', on_delete=models.PROTECT)
  85. user_login = models.ForeignKey('User', on_delete=models.PROTECT)
  86. update_date = models.DateField(default = datetime.today)
  87. FUEL_TYPE_CHOICES = (
  88. ('LNG', 'LNG'),
  89. ('ON', 'ON'),
  90. ('PB 98', 'PB 98'),
  91. ('PB 95', 'PB 95'),
  92. ('Electric', 'Electric'),
  93. )
  94. type = models.CharField(max_length= 8,choices=FUEL_TYPE_CHOICES, default = "rodzaj paliwa")
  95. price = models.DecimalField(max_digits=3, decimal_places=2)
  96. def __str__(self):
  97. return 'User : ' + str(self.user_login) + ' || ' + str(self.petrol_ID) + " || ID : " + str(self.id)
  98. class Meta:
  99. verbose_name_plural = 'Price_History'
  100.  
  101.  
  102. class Refueling_history(models.Model):
  103.  
  104. id = models.AutoField(primary_key=True, serialize=True,default = None)
  105. user_id = models.ForeignKey('User', on_delete=models.PROTECT)
  106. petrol_ID = models.ForeignKey('Petrol_station', on_delete=models.PROTECT)
  107. refueling_date = models.DateField(default = datetime.today)
  108. FUEL_TYPE_CHOICES = (
  109. ('LNG', 'LNG'),
  110. ('ON', 'ON'),
  111. ('PB 98', 'PB 98'),
  112. ('PB 95', 'PB 95'),
  113. ('Electric', 'Electric'),
  114. )
  115. fuel_type = models.CharField(max_length= 8,choices=FUEL_TYPE_CHOICES, default = "rodzaj paliwa")
  116. fuel_price = models.DecimalField(max_digits=3, decimal_places=2)
  117. ammount_of_fuel = models.PositiveSmallIntegerField(default='0')
  118. def __str__(self):
  119. return 'User : ' + str(self.user_id) + ' || ' + str(self.petrol_ID) + " || ID : " + str(self.id)
  120. class Meta:
  121. verbose_name_plural = 'Refueling_history '
  122.  
  123.  
  124. class Charge_station(models.Model):
  125.  
  126. id = models.AutoField(primary_key=True, serialize=True,default = None)
  127. company_ID = models.ForeignKey('Petrol_dictionary', on_delete=models.PROTECT)
  128. x_coordinate = models.DecimalField(max_digits=20, decimal_places=17)
  129. y_coordinate = models.DecimalField(max_digits=20, decimal_places=17)
  130. busy = models.BooleanField(default=False)
  131. CHARGE_TYPE = (
  132. ('Typ 1', 'Typ 1'),
  133. ('Typ 2', 'Typ 2'),
  134. ('Typ 3', 'Typ 3'),
  135. )
  136. type = models.CharField(max_length=20,choices = CHARGE_TYPE,default = "Electric car type")
  137. def __str__(self):
  138. return str(self.company_ID) + " || Charge_station ID : " + str(self.id)
  139. class Meta:
  140. verbose_name_plural = 'Charge_station'
  141.  
  142.  
  143. class Charging(models.Model):
  144.  
  145. id = models.AutoField(primary_key=True, serialize=True,default = None)
  146. charge_ID = models.ForeignKey('Charge_station', on_delete=models.PROTECT)
  147. user_login = models.ForeignKey('User', on_delete=models.PROTECT)
  148. update_date = models.DateField(default = datetime.today)
  149. quantity = models.PositiveSmallIntegerField(default='0')
  150. power = models.PositiveSmallIntegerField(default='0')
  151. status = models.BooleanField(default='0') #STATUS JEST DO USUNIECIA
  152. def __str__(self):
  153. return 'User : ' + str(self.user_login) + ' || ' + str(self.charge_ID) + " || Charging ID : " + str(self.id)
  154. class Meta:
  155. verbose_name_plural = 'Charging'
  156.  
  157. class Last_PetrolStations(models.Model):
  158. id = models.AutoField(primary_key=True,serialize=True,default=None)
  159. user_id = models.ForeignKey('User', on_delete=models.PROTECT)
  160. station_id = models.ForeignKey('Petrol_station', on_delete=models.PROTECT)
  161. date = models.DateField(default = datetime.today)
  162. name = models.CharField(max_length=20, default=None)
  163. def __str__(self):
  164. return 'User : ' + str(self.user_id) + " || Station ID : " + str(self.station_id)
  165. class Meta:
  166. verbose_name_plural = 'Last Petrol Station'
  167.  
  168. class Last_ChargeStations(models.Model):
  169. id = models.AutoField(primary_key=True,serialize=True,default=None)
  170. user_id = models.ForeignKey('User', on_delete=models.PROTECT)
  171. station_id = models.ForeignKey('Charge_station', on_delete=models.PROTECT)
  172. date = models.DateField(default = datetime.today)
  173. name = models.CharField(max_length=20, default=None)
  174. def __str__(self):
  175. return 'User : ' + str(self.user_id) + " || Station ID : " + str(self.station_id)
  176. class Meta:
  177. verbose_name_plural = 'Last Charge Station'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement