From 02236f98731b45a1daa24c513d45c67b0e62f093 Mon Sep 17 00:00:00 2001 From: sosokker Date: Fri, 3 Nov 2023 12:49:46 +0700 Subject: [PATCH] Remove Reminders from model --- .../0005_task_google_calendar_id.py | 18 +++++++++++ .../migrations/0006_alter_task_difficulty.py | 18 +++++++++++ ..._task_reminders_task_end_event_and_more.py | 30 +++++++++++++++++++ backend/tasks/misc/serializers.py | 6 +--- backend/tasks/misc/views.py | 7 ++--- backend/tasks/models.py | 16 +++------- backend/tasks/urls.py | 3 +- 7 files changed, 74 insertions(+), 24 deletions(-) create mode 100644 backend/tasks/migrations/0005_task_google_calendar_id.py create mode 100644 backend/tasks/migrations/0006_alter_task_difficulty.py create mode 100644 backend/tasks/migrations/0007_remove_task_reminders_task_end_event_and_more.py diff --git a/backend/tasks/migrations/0005_task_google_calendar_id.py b/backend/tasks/migrations/0005_task_google_calendar_id.py new file mode 100644 index 0000000..bc59e7f --- /dev/null +++ b/backend/tasks/migrations/0005_task_google_calendar_id.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.6 on 2023-11-02 07:31 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('tasks', '0004_rename_time_reminder_alerttime_and_more'), + ] + + operations = [ + migrations.AddField( + model_name='task', + name='google_calendar_id', + field=models.CharField(blank=True, max_length=255, null=True), + ), + ] diff --git a/backend/tasks/migrations/0006_alter_task_difficulty.py b/backend/tasks/migrations/0006_alter_task_difficulty.py new file mode 100644 index 0000000..2e58db5 --- /dev/null +++ b/backend/tasks/migrations/0006_alter_task_difficulty.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.6 on 2023-11-03 05:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('tasks', '0005_task_google_calendar_id'), + ] + + operations = [ + migrations.AlterField( + model_name='task', + name='difficulty', + field=models.PositiveSmallIntegerField(choices=[(1, 'Easy'), (2, 'Normal'), (3, 'Hard'), (4, 'Very Hard'), (5, 'Devil')], default=1), + ), + ] diff --git a/backend/tasks/migrations/0007_remove_task_reminders_task_end_event_and_more.py b/backend/tasks/migrations/0007_remove_task_reminders_task_end_event_and_more.py new file mode 100644 index 0000000..257bd25 --- /dev/null +++ b/backend/tasks/migrations/0007_remove_task_reminders_task_end_event_and_more.py @@ -0,0 +1,30 @@ +# Generated by Django 4.2.6 on 2023-11-03 05:48 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('tasks', '0006_alter_task_difficulty'), + ] + + operations = [ + migrations.RemoveField( + model_name='task', + name='reminders', + ), + migrations.AddField( + model_name='task', + name='end_event', + field=models.DateTimeField(blank=True, null=True), + ), + migrations.AddField( + model_name='task', + name='start_event', + field=models.DateTimeField(blank=True, null=True), + ), + migrations.DeleteModel( + name='Reminder', + ), + ] diff --git a/backend/tasks/misc/serializers.py b/backend/tasks/misc/serializers.py index 99b312e..c38723b 100644 --- a/backend/tasks/misc/serializers.py +++ b/backend/tasks/misc/serializers.py @@ -1,10 +1,6 @@ from rest_framework import serializers -from ..models import Reminder, Tag +from ..models import Tag -class ReminderSerializer(serializers.ModelSerializer): - class Meta: - model = Reminder - fields = '__all__' class TagSerializer(serializers.ModelSerializer): class Meta: diff --git a/backend/tasks/misc/views.py b/backend/tasks/misc/views.py index e5feb01..3fbc837 100644 --- a/backend/tasks/misc/views.py +++ b/backend/tasks/misc/views.py @@ -1,10 +1,7 @@ from rest_framework import viewsets -from ..models import Reminder, Tag -from .serializers import ReminderSerializer, TagSerializer +from ..models import Tag +from .serializers import TagSerializer -class ReminderViewSet(viewsets.ModelViewSet): - queryset = Reminder.objects.all() - serializer_class = ReminderSerializer class TagViewSet(viewsets.ModelViewSet): queryset = Tag.objects.all() diff --git a/backend/tasks/models.py b/backend/tasks/models.py index 2f3f34a..719379d 100644 --- a/backend/tasks/models.py +++ b/backend/tasks/models.py @@ -3,16 +3,6 @@ from django.conf import settings from django.core import validators -class Reminder(models.Model): - """ - Represents a reminder associated with a task. - Fields: - - startDate: The optional date for which the reminder is set. - - time: The time at which the reminder is triggered. - """ - startDate = models.DateField(auto_now_add=True, null=True, blank=True) - alertTime = models.DateTimeField(null=False, blank=False) - class Tag(models.Model): """ Represents a tag that can be associated with tasks. @@ -66,7 +56,7 @@ class Task(models.Model): validators.MinValueValidator(0.1), validators.MaxValueValidator(2), ]) - difficulty = models.PositiveSmallIntegerField(choices=DIFFICULTY_CHOICES) + difficulty = models.PositiveSmallIntegerField(choices=DIFFICULTY_CHOICES, default=1) attribute = models.CharField(max_length=15, choices=[ ('str', 'Strength'), ('int', 'Intelligence'), @@ -76,10 +66,12 @@ class Task(models.Model): ], default='str') user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) challenge = models.BooleanField(default=False) - reminders = models.ManyToManyField(Reminder, blank=True) fromSystem = models.BooleanField(default=False) creation_date = models.DateTimeField(auto_now_add=True) last_update = models.DateTimeField(auto_now=True) + google_calendar_id = models.CharField(blank=True, null=True, max_length=255) + start_event = models.DateTimeField(blank=True, null=True) + end_event = models.DateTimeField(blank=True, null=True) class Subtask(models.Model): diff --git a/backend/tasks/urls.py b/backend/tasks/urls.py index 2308167..c04bd68 100644 --- a/backend/tasks/urls.py +++ b/backend/tasks/urls.py @@ -2,10 +2,9 @@ from django.urls import path, include from rest_framework.routers import DefaultRouter from .api import GoogleCalendarEventViewset from .tasks.views import TaskCreateView, TaskRetrieveView, TaskUpdateView, TaskDeleteView -from .misc.views import TagViewSet, ReminderViewSet +from .misc.views import TagViewSet router = DefaultRouter() -router.register(r'reminders', ReminderViewSet) router.register(r'tags', TagViewSet) router.register(r'calendar-events', GoogleCalendarEventViewset, basename='calendar-events')