modified create task api, added badge count in notification list

This commit is contained in:
abutalib-kiwi
2023-09-05 19:29:57 +05:30
parent b5a89df59a
commit 8f214d11a7
4 changed files with 48 additions and 43 deletions

View File

@ -28,7 +28,7 @@ from base.constants import NUMBER, JUN, ZOD, GRD, Already_register_user, GUARDIA
from junior.models import Junior, JuniorPoints, JuniorGuardianRelationship
from .utils import real_time, convert_timedelta_into_datetime, update_referral_points
# notification's constant
from notifications.constants import TASK_APPROVED, TASK_REJECTED
from notifications.constants import TASK_APPROVED, TASK_REJECTED, TASK_ASSIGNED
# send notification function
from notifications.utils import send_notification
from django.core.exceptions import ValidationError
@ -229,21 +229,22 @@ class TaskSerializer(serializers.ModelSerializer):
return value
def create(self, validated_data):
"""create default task image data"""
guardian = Guardian.objects.filter(user=self.context['user']).last()
guardian = self.context['guardian']
# update image of the task
images = self.context['image']
junior_ids = self.context['junior_data']
junior_data = junior_ids[0].split(',')
junior_data = self.context['junior_data']
tasks_created = []
for junior_id in junior_data:
for junior in junior_data:
# create task
task_data = validated_data.copy()
task_data['guardian'] = guardian
task_data['default_image'] = images
task_data['junior'] = Junior.objects.filter(id=junior_id).last()
task_data['junior'] = junior
instance = JuniorTask.objects.create(**task_data)
tasks_created.append(instance)
send_notification.delay(TASK_ASSIGNED, guardian.user.id, GUARDIAN,
junior.auth.id, {'task_id': instance.id})
return instance
class GuardianDetailSerializer(serializers.ModelSerializer):