Skip to content

Commit

Permalink
Merge branch 'master' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
pantierra committed Jun 12, 2019
2 parents b6f9a49 + e3c0e7d commit 91c1309
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 7 deletions.
4 changes: 2 additions & 2 deletions migrations/versions/22e7d7e0fa02_.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""empty message
Revision ID: 22e7d7e0fa02
Revises: fcd9cebaa79c
Revises: b25f088d40c2
Create Date: 2018-08-06 15:31:03.973448
"""
Expand All @@ -11,7 +11,7 @@

# revision identifiers, used by Alembic.
revision = '22e7d7e0fa02'
down_revision = 'fcd9cebaa79c'
down_revision = 'b25f088d40c2'
branch_labels = None
depends_on = None

Expand Down
24 changes: 24 additions & 0 deletions migrations/versions/b25f088d40c2_.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
"""empty message
Revision ID: b25f088d40c2
Revises: fcd9cebaa79c
Create Date: 2019-06-11 12:31:41.697842
"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = 'b25f088d40c2'
down_revision = 'fcd9cebaa79c'
branch_labels = None
depends_on = None


def upgrade():
op.create_foreign_key('messages_tasks', 'messages', 'tasks', ['task_id', 'project_id'], ['id', 'project_id'])


def downgrade():
op.drop_constraint('messages_tasks', 'messages', type_='foreignkey')
10 changes: 8 additions & 2 deletions server/models/postgis/message.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from enum import Enum
from server.models.dtos.message_dto import MessageDTO, MessagesDTO
from server.models.postgis.user import User
from server.models.postgis.task import Task
from server.models.postgis.project import Project
from server.models.postgis.utils import timestamp
from server.models.postgis.utils import NotFound
Expand All @@ -19,6 +20,10 @@ class Message(db.Model):
""" Describes an individual Message a user can send """
__tablename__ = "messages"

__table_args__ = (
db.ForeignKeyConstraint(['task_id', 'project_id'], ['tasks.id', 'tasks.project_id']),
)

id = db.Column(db.Integer, primary_key=True)
message = db.Column(db.String)
subject = db.Column(db.String)
Expand All @@ -33,8 +38,9 @@ class Message(db.Model):
# Relationships
from_user = db.relationship(User, foreign_keys=[from_user_id])
to_user = db.relationship(User, foreign_keys=[to_user_id], backref='messages')
project = db.relationship(Project, foreign_keys=[project_id], backref='messages', cascade='all,delete')

project = db.relationship(Project, foreign_keys=[project_id], backref='messages')
task = db.relationship(Task, primaryjoin="and_(Task.id == foreign(Message.task_id), Task.project_id == Message.project_id)",
backref='messages')

@classmethod
def from_dto(cls, to_user_id: int, dto: MessageDTO):
Expand Down
6 changes: 3 additions & 3 deletions server/services/messaging/message_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -260,13 +260,13 @@ def get_message_as_dto(message_id: int, user_id: int):
@staticmethod
def delete_message(message_id: int, user_id: int):
""" Deletes the specified message """
# message = MessageService.get_message(message_id, user_id)
# message.delete()
message = MessageService.get_message(message_id, user_id)
message.delete()

@staticmethod
def delete_multiple_messages(message_ids: list, user_id: int):
""" Deletes the specified messages to the user """
# Message.delete_multiple_messages(message_ids, user_id)
Message.delete_multiple_messages(message_ids, user_id)

@staticmethod
def get_task_link(project_id: int, task_id: int, base_url=None) -> str:
Expand Down

0 comments on commit 91c1309

Please sign in to comment.