Skip to content
Snippets Groups Projects
Commit dd20cfac authored by Piotr Matyjaszyk's avatar Piotr Matyjaszyk
Browse files

Created a db model and basic admin's tools

parent b2bf9e63
No related branches found
No related tags found
No related merge requests found
from django.contrib import admin
from models import *
# Register your models here.
admin.site.register(Subject)
admin.site.register(Visit)
admin.site.register(Item)
admin.site.register(Room)
admin.site.register(AppType)
admin.site.register(Language)
admin.site.register(Worker)
admin.site.register(FlyingTeam)
admin.site.register(Avaibility)
admin.site.register(Holiday)
admin.site.register(Appointment)
from __future__ import unicode_literals
from django.db import models
from django.utils import timezone
from django.contrib.auth.models import User
class Subject(models.Model):
sex = models.CharField(max_length=1)
firstName = models.CharField(max_length=50)
lastName = models.CharField(max_length=50)
language = models.CharField(max_length=20)
phoneNo = models.CharField(max_length=20)
email = models.EmailField()
born = models.DateField()
address = models.CharField(max_length=255)
postalCode = models.CharField(max_length=6)
city = models.CharField(max_length=50)
screeningNo = models.CharField(max_length=50)
ndno = models.CharField(max_length=6)
visitNumber = models.IntegerField()
mpowerId = models.CharField(max_length=20)
subjectStatus = models.CharField(max_length=3)
mainPseudonym = models.CharField(max_length=45)
comments = models.CharField(max_length=2000)
class Visit(models.Model):
subject = models.ForeignKey(Subject, on_delete=models.CASCADE)
visitBegin = models.DateTimeField()
visitEnd = models.DateTimeField()
assesmentNo = models.IntegerField()
visitType = models.IntegerField()
visitFinished = models.BooleanField()
class Item (models.Model):
isFixed = models.BooleanField
name = models.CharField(max_length = 255)
class Room (models.Model):
possEquipment = models.ManyToManyField(Item)
owner = models.CharField(max_length = 50)
address = models.CharField(max_length = 255)
city = models.CharField(max_length = 50)
roomNo = models.IntegerField()
floor = models.IntegerField()
isVehicle = models.BooleanField()
class AppType (models.Model):
reqEquipment = models.ManyToManyField(Item)
followUp = models.ForeignKey('self')
apCode = models.CharField(max_length = 20)
apDescription = models.CharField(max_length = 2000)
apDefaultTime = models.IntegerField()
apRestTime = models.IntegerField()
class Language (models.Model):
name = models.CharField(max_length = 20)
image = models.ImageField()
class Worker (models.Model):
languages = models.ManyToManyField(Language)
appointments = models.ManyToManyField('Appointment')
user = models.OneToOneField(User)
firstName = models.CharField(max_length=50)
lastName = models.CharField(max_length=50)
phoneNo = models.CharField(max_length=20)
email = models.EmailField()
role = models.CharField(max_length=20)
specialization = models.CharField(max_length=20)
class FlyingTeam(models.Model):
doctor = models.ForeignKey(Worker, related_name='FlyingTeamDoctor')
nurse = models.ForeignKey(Worker, related_name='FlyingTeamNurse')
psychologist = models.ForeignKey(Worker, related_name='FlyingTeamPsychologist')
dateTimeCalled = models.DateTimeField()
dateTimeUntil = models.DateTimeField()
class Avaibility(models.Model):
person = models.ForeignKey(Worker, on_delete=models.CASCADE)
dayNo = models.IntegerField()
availFro = models.TimeField()
availTil = models.TimeField()
current = models.BooleanField()
class Holiday(models.Model):
person = models.ForeignKey(Worker, on_delete=models.CASCADE)
holidayStart = models.DateTimeField()
holidayEnd = models.DateTimeField()
class Appointment(models.Model):
flyingTeam = models.ForeignKey(FlyingTeam)
appType = models.ForeignKey(AppType)
room = models.ForeignKey(Room)
visit = models.ForeignKey(Visit)
appDateTime = models.DateTimeField()
appLength = models.IntegerField()
appFinished = models.BooleanField()
# Create your models here.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment