From 3d63760479e6b52eaab7898e9520bb478e52df3c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jo=C3=A3o=20Denis=20Rodrigues?= <joao.denisr@gmail.com>
Date: Mon, 31 Jul 2017 10:52:30 -0300
Subject: [PATCH] Adicionado o professor

---
 src/adega/settings.py                         |  1 +
 .../migrations/0002_student_admission.py      | 21 ++++++++++++++
 src/student/models.py                         |  4 +--
 src/teacher/__init__.py                       |  0
 src/teacher/admin.py                          |  3 ++
 src/teacher/apps.py                           |  5 ++++
 src/teacher/migrations/0001_initial.py        | 29 +++++++++++++++++++
 src/teacher/migrations/__init__.py            |  0
 src/teacher/models.py                         | 10 +++++++
 src/teacher/tests.py                          |  3 ++
 src/teacher/views.py                          |  3 ++
 11 files changed, 77 insertions(+), 2 deletions(-)
 create mode 100644 src/student/migrations/0002_student_admission.py
 create mode 100644 src/teacher/__init__.py
 create mode 100644 src/teacher/admin.py
 create mode 100644 src/teacher/apps.py
 create mode 100644 src/teacher/migrations/0001_initial.py
 create mode 100644 src/teacher/migrations/__init__.py
 create mode 100644 src/teacher/models.py
 create mode 100644 src/teacher/tests.py
 create mode 100644 src/teacher/views.py

diff --git a/src/adega/settings.py b/src/adega/settings.py
index 9c35cda..7857546 100644
--- a/src/adega/settings.py
+++ b/src/adega/settings.py
@@ -42,6 +42,7 @@ INSTALLED_APPS = [
     'degree.apps.DegreeConfig',
     'klass.apps.KlassConfig',
     'student.apps.StudentConfig',
+    'teacher.apps.TeacherConfig',
 ]
 
 MIDDLEWARE = [
diff --git a/src/student/migrations/0002_student_admission.py b/src/student/migrations/0002_student_admission.py
new file mode 100644
index 0000000..56e234e
--- /dev/null
+++ b/src/student/migrations/0002_student_admission.py
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('admission', '0001_initial'),
+        ('student', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='student',
+            name='admission',
+            field=models.ForeignKey(default=None, to='admission.Admission'),
+            preserve_default=False,
+        ),
+    ]
diff --git a/src/student/models.py b/src/student/models.py
index 16ee1f2..4ecb711 100644
--- a/src/student/models.py
+++ b/src/student/models.py
@@ -2,7 +2,7 @@ from django.db import models
 from django.core.validators import MinValueValidator
 from degree.models import Curriculum
 from admission.models import Admission
-from utils.data import difference_semesters
+from utils.data import difference_between_semesters
 
 # Create your models here.
 class Student(models.Model):
@@ -26,5 +26,5 @@ class Student(models.Model):
 
         year_start = self.admission.year
         semester_start = self.admission.semester
-        difference = difference_semester(year_start, semester_start, year_end, semester_end)
+        difference = difference_between_semesters(year_start, semester_start, year_end, semester_end)
         return difference 
diff --git a/src/teacher/__init__.py b/src/teacher/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/teacher/admin.py b/src/teacher/admin.py
new file mode 100644
index 0000000..8c38f3f
--- /dev/null
+++ b/src/teacher/admin.py
@@ -0,0 +1,3 @@
+from django.contrib import admin
+
+# Register your models here.
diff --git a/src/teacher/apps.py b/src/teacher/apps.py
new file mode 100644
index 0000000..0d48caa
--- /dev/null
+++ b/src/teacher/apps.py
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class TeacherConfig(AppConfig):
+    name = 'teacher'
diff --git a/src/teacher/migrations/0001_initial.py b/src/teacher/migrations/0001_initial.py
new file mode 100644
index 0000000..24337bc
--- /dev/null
+++ b/src/teacher/migrations/0001_initial.py
@@ -0,0 +1,29 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.3 on 2017-07-31 13:44
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('degree', '0001_initial'),
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Teacher',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('coordinations', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='coordinators', to='degree.Degree')),
+                ('degrees', models.ManyToManyField(related_name='teachers', to='degree.Degree')),
+                ('user', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+    ]
diff --git a/src/teacher/migrations/__init__.py b/src/teacher/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/src/teacher/models.py b/src/teacher/models.py
new file mode 100644
index 0000000..5ba8889
--- /dev/null
+++ b/src/teacher/models.py
@@ -0,0 +1,10 @@
+from __future__ import unicode_literals
+
+from django.db import models
+from django.contrib.auth.models import User
+
+# Create your models here.
+class Teacher(models.Model):
+    user = models.OneToOneField(User, null=True)
+    degrees = models.ManyToManyField('degree.Degree', related_name="teachers")
+    coordinations = models.ForeignKey('degree.Degree', related_name="coordinators", null=True, blank=True)
diff --git a/src/teacher/tests.py b/src/teacher/tests.py
new file mode 100644
index 0000000..7ce503c
--- /dev/null
+++ b/src/teacher/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/src/teacher/views.py b/src/teacher/views.py
new file mode 100644
index 0000000..91ea44a
--- /dev/null
+++ b/src/teacher/views.py
@@ -0,0 +1,3 @@
+from django.shortcuts import render
+
+# Create your views here.
-- 
GitLab