round 3
This commit is contained in:
@@ -1,5 +1,12 @@
|
||||
from flask import Blueprint, request, jsonify
|
||||
from tinydb import Query
|
||||
|
||||
from events.sse import send_event_to_user
|
||||
from events.types.event import Event
|
||||
from events.types.event_types import EventType
|
||||
from events.types.task_created import TaskCreated
|
||||
from events.types.task_deleted import TaskDeleted
|
||||
from events.types.task_edited import TaskEdited
|
||||
from models.task import Task
|
||||
from db.db import task_db, child_db
|
||||
|
||||
@@ -15,8 +22,10 @@ def add_task():
|
||||
image = data.get('image_id', '')
|
||||
if not name or points is None or is_good is None:
|
||||
return jsonify({'error': 'Name, points, and is_good are required'}), 400
|
||||
task = Task(name, points, is_good, image_id=image)
|
||||
task = Task(name=name, points=points, is_good=is_good, image_id=image)
|
||||
task_db.insert(task.to_dict())
|
||||
send_event_to_user("user123", Event(EventType.TASK_CREATED.value,
|
||||
TaskCreated(task.id, "created")))
|
||||
return jsonify({'message': f'Task {name} added.'}), 201
|
||||
|
||||
@task_api.route('/task/<id>', methods=['GET'])
|
||||
@@ -44,6 +53,9 @@ def delete_task(id):
|
||||
if id in tasks:
|
||||
tasks.remove(id)
|
||||
child_db.update({'tasks': tasks}, ChildQuery.id == child.get('id'))
|
||||
send_event_to_user("user123", Event(EventType.TASK_DELETED.value,
|
||||
TaskDeleted(id, "deleted")))
|
||||
|
||||
return jsonify({'message': f'Task {id} deleted.'}), 200
|
||||
return jsonify({'error': 'Task not found'}), 404
|
||||
|
||||
@@ -85,4 +97,6 @@ def edit_task(id):
|
||||
|
||||
task_db.update(updates, TaskQuery.id == id)
|
||||
updated = task_db.get(TaskQuery.id == id)
|
||||
send_event_to_user("user123", Event(EventType.TASK_EDITED.value,
|
||||
TaskEdited(id, "edited")))
|
||||
return jsonify(updated), 200
|
||||
|
||||
Reference in New Issue
Block a user