Skip to content
Snippets Groups Projects
Commit 0d680b4e authored by Bernard Roland (Student Com20)'s avatar Bernard Roland (Student Com20)
Browse files

Added the project color to the tasks

parent 29d760c8
No related branches found
No related tags found
No related merge requests found
...@@ -102,6 +102,7 @@ describe('GET /project/:uuid/tasks', () => { ...@@ -102,6 +102,7 @@ describe('GET /project/:uuid/tasks', () => {
priority: 'low', priority: 'low',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [], assigned: [],
dependencies: [ '00000000-0000-4000-8000-000000000005' ], dependencies: [ '00000000-0000-4000-8000-000000000005' ],
requirements: [], requirements: [],
...@@ -116,6 +117,7 @@ describe('GET /project/:uuid/tasks', () => { ...@@ -116,6 +117,7 @@ describe('GET /project/:uuid/tasks', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-11-20'), edited: Date.parse('2020-11-20'),
color: '#f00',
assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ], assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -141,6 +143,7 @@ describe('GET /project/:uuid/tasks', () => { ...@@ -141,6 +143,7 @@ describe('GET /project/:uuid/tasks', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ ], requirements: [ ],
...@@ -163,6 +166,7 @@ describe('GET /project/:uuid/tasks', () => { ...@@ -163,6 +166,7 @@ describe('GET /project/:uuid/tasks', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ ], requirements: [ ],
......
...@@ -106,6 +106,7 @@ project.get('/:uuid/tasks', async (req, res) => { ...@@ -106,6 +106,7 @@ project.get('/:uuid/tasks', async (req, res) => {
const tasks = await database('team_members') const tasks = await database('team_members')
.innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id') .innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id')
.innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id') .innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id')
.innerJoin('projects', 'tasks.project_id', 'projects.id')
.leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id') .leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id')
.leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id') .leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id')
.leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id') .leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id')
...@@ -119,6 +120,7 @@ project.get('/:uuid/tasks', async (req, res) => { ...@@ -119,6 +120,7 @@ project.get('/:uuid/tasks', async (req, res) => {
priority: 'tasks.priority', priority: 'tasks.priority',
created: 'tasks.created', created: 'tasks.created',
edited: 'tasks.edited', edited: 'tasks.edited',
color: 'projects.color',
requirement_role: 'task_requirements.role_id', requirement_role: 'task_requirements.role_id',
requirement_time: 'task_requirements.time', requirement_time: 'task_requirements.time',
assigned_user: 'task_assignees.user_id', assigned_user: 'task_assignees.user_id',
......
...@@ -32,6 +32,7 @@ describe('GET /task', () => { ...@@ -32,6 +32,7 @@ describe('GET /task', () => {
priority: 'medium', priority: 'medium',
created: Date.parse('2020-10-05'), created: Date.parse('2020-10-05'),
edited: Date.parse('2020-10-10'), edited: Date.parse('2020-10-10'),
color: '#00f',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -56,6 +57,7 @@ describe('GET /task', () => { ...@@ -56,6 +57,7 @@ describe('GET /task', () => {
priority: 'high', priority: 'high',
created: Date.parse('2020-10-10'), created: Date.parse('2020-10-10'),
edited: Date.parse('2020-10-15'), edited: Date.parse('2020-10-15'),
color: '#0f0',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -80,6 +82,7 @@ describe('GET /task', () => { ...@@ -80,6 +82,7 @@ describe('GET /task', () => {
priority: 'low', priority: 'low',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [], assigned: [],
dependencies: [ '00000000-0000-4000-8000-000000000005' ], dependencies: [ '00000000-0000-4000-8000-000000000005' ],
requirements: [], requirements: [],
...@@ -94,6 +97,7 @@ describe('GET /task', () => { ...@@ -94,6 +97,7 @@ describe('GET /task', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-11-20'), edited: Date.parse('2020-11-20'),
color: '#f00',
assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ], assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -111,6 +115,7 @@ describe('GET /task', () => { ...@@ -111,6 +115,7 @@ describe('GET /task', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ ], requirements: [ ],
...@@ -125,6 +130,7 @@ describe('GET /task', () => { ...@@ -125,6 +130,7 @@ describe('GET /task', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ ], requirements: [ ],
...@@ -158,6 +164,7 @@ describe('GET /task/open', () => { ...@@ -158,6 +164,7 @@ describe('GET /task/open', () => {
priority: 'medium', priority: 'medium',
created: Date.parse('2020-10-05'), created: Date.parse('2020-10-05'),
edited: Date.parse('2020-10-10'), edited: Date.parse('2020-10-10'),
color: '#00f',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -182,6 +189,7 @@ describe('GET /task/open', () => { ...@@ -182,6 +189,7 @@ describe('GET /task/open', () => {
priority: 'low', priority: 'low',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [], assigned: [],
dependencies: [ '00000000-0000-4000-8000-000000000005' ], dependencies: [ '00000000-0000-4000-8000-000000000005' ],
requirements: [], requirements: [],
...@@ -196,6 +204,7 @@ describe('GET /task/open', () => { ...@@ -196,6 +204,7 @@ describe('GET /task/open', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-11-20'), edited: Date.parse('2020-11-20'),
color: '#f00',
assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ], assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -232,6 +241,7 @@ describe('GET /task/closed', () => { ...@@ -232,6 +241,7 @@ describe('GET /task/closed', () => {
priority: 'high', priority: 'high',
created: Date.parse('2020-10-10'), created: Date.parse('2020-10-10'),
edited: Date.parse('2020-10-15'), edited: Date.parse('2020-10-15'),
color: '#0f0',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -256,6 +266,7 @@ describe('GET /task/closed', () => { ...@@ -256,6 +266,7 @@ describe('GET /task/closed', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ ], requirements: [ ],
...@@ -289,6 +300,7 @@ describe('GET /task/suspended', () => { ...@@ -289,6 +300,7 @@ describe('GET /task/suspended', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-10-20'), edited: Date.parse('2020-10-20'),
color: '#f00',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ ], requirements: [ ],
...@@ -322,6 +334,7 @@ describe('GET /task/possible', () => { ...@@ -322,6 +334,7 @@ describe('GET /task/possible', () => {
priority: 'medium', priority: 'medium',
created: Date.parse('2020-10-05'), created: Date.parse('2020-10-05'),
edited: Date.parse('2020-10-10'), edited: Date.parse('2020-10-10'),
color: '#00f',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -346,6 +359,7 @@ describe('GET /task/possible', () => { ...@@ -346,6 +359,7 @@ describe('GET /task/possible', () => {
priority: 'urgent', priority: 'urgent',
created: Date.parse('2020-10-15'), created: Date.parse('2020-10-15'),
edited: Date.parse('2020-11-20'), edited: Date.parse('2020-11-20'),
color: '#f00',
assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ], assigned: [ { user: '00000000-0000-4000-8000-000000000000', time: 120, finished: false } ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
...@@ -373,6 +387,7 @@ describe('GET /task/:uuid', () => { ...@@ -373,6 +387,7 @@ describe('GET /task/:uuid', () => {
priority: 'medium', priority: 'medium',
created: Date.parse('2020-10-05'), created: Date.parse('2020-10-05'),
edited: Date.parse('2020-10-10'), edited: Date.parse('2020-10-10'),
color: '#00f',
assigned: [ ], assigned: [ ],
dependencies: [ ], dependencies: [ ],
requirements: [ requirements: [
......
...@@ -30,6 +30,7 @@ export interface Task { ...@@ -30,6 +30,7 @@ export interface Task {
assigned: Array<TaskAssignment>; assigned: Array<TaskAssignment>;
created: number; created: number;
edited: number; edited: number;
color: string;
} }
export function generateFromFlatResult(results: any[]): Task[] { export function generateFromFlatResult(results: any[]): Task[] {
...@@ -47,6 +48,7 @@ export function generateFromFlatResult(results: any[]): Task[] { ...@@ -47,6 +48,7 @@ export function generateFromFlatResult(results: any[]): Task[] {
priority: row.priority, priority: row.priority,
created: row.created, created: row.created,
edited: row.edited, edited: row.edited,
color: row.color,
requirements: [], requirements: [],
assigned: [], assigned: [],
dependencies: [], dependencies: [],
...@@ -97,6 +99,7 @@ task.get('/', async (req, res) => { ...@@ -97,6 +99,7 @@ task.get('/', async (req, res) => {
const tasks = await database('team_members') const tasks = await database('team_members')
.innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id') .innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id')
.innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id') .innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id')
.innerJoin('projects', 'tasks.project_id', 'projects.id')
.leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id') .leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id')
.leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id') .leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id')
.leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id') .leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id')
...@@ -110,6 +113,7 @@ task.get('/', async (req, res) => { ...@@ -110,6 +113,7 @@ task.get('/', async (req, res) => {
priority: 'tasks.priority', priority: 'tasks.priority',
created: 'tasks.created', created: 'tasks.created',
edited: 'tasks.edited', edited: 'tasks.edited',
color: 'projects.color',
requirement_role: 'task_requirements.role_id', requirement_role: 'task_requirements.role_id',
requirement_time: 'task_requirements.time', requirement_time: 'task_requirements.time',
assigned_user: 'task_assignees.user_id', assigned_user: 'task_assignees.user_id',
...@@ -137,6 +141,7 @@ task.get('/:status(open|closed|suspended)', async (req, res) => { ...@@ -137,6 +141,7 @@ task.get('/:status(open|closed|suspended)', async (req, res) => {
const tasks = await database('team_members') const tasks = await database('team_members')
.innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id') .innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id')
.innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id') .innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id')
.innerJoin('projects', 'tasks.project_id', 'projects.id')
.leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id') .leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id')
.leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id') .leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id')
.leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id') .leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id')
...@@ -150,6 +155,7 @@ task.get('/:status(open|closed|suspended)', async (req, res) => { ...@@ -150,6 +155,7 @@ task.get('/:status(open|closed|suspended)', async (req, res) => {
priority: 'tasks.priority', priority: 'tasks.priority',
created: 'tasks.created', created: 'tasks.created',
edited: 'tasks.edited', edited: 'tasks.edited',
color: 'projects.color',
requirement_role: 'task_requirements.role_id', requirement_role: 'task_requirements.role_id',
requirement_time: 'task_requirements.time', requirement_time: 'task_requirements.time',
assigned_user: 'task_assignees.user_id', assigned_user: 'task_assignees.user_id',
...@@ -178,6 +184,7 @@ task.get('/possible', async (req, res) => { ...@@ -178,6 +184,7 @@ task.get('/possible', async (req, res) => {
const tasks = await database('team_members') const tasks = await database('team_members')
.innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id') .innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id')
.innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id') .innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id')
.innerJoin('projects', 'tasks.project_id', 'projects.id')
.leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id') .leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id')
.leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id') .leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id')
.leftJoin({ 'require': 'tasks' }, 'task_dependencies.requires_id', 'require.id') .leftJoin({ 'require': 'tasks' }, 'task_dependencies.requires_id', 'require.id')
...@@ -192,6 +199,7 @@ task.get('/possible', async (req, res) => { ...@@ -192,6 +199,7 @@ task.get('/possible', async (req, res) => {
priority: 'tasks.priority', priority: 'tasks.priority',
created: 'tasks.created', created: 'tasks.created',
edited: 'tasks.edited', edited: 'tasks.edited',
color: 'projects.color',
requirement_role: 'task_requirements.role_id', requirement_role: 'task_requirements.role_id',
requirement_time: 'task_requirements.time', requirement_time: 'task_requirements.time',
assigned_user: 'task_assignees.user_id', assigned_user: 'task_assignees.user_id',
...@@ -350,6 +358,7 @@ task.get('/:uuid', async (req, res) => { ...@@ -350,6 +358,7 @@ task.get('/:uuid', async (req, res) => {
const task = await database('team_members') const task = await database('team_members')
.innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id') .innerJoin('team_projects', 'team_members.team_id', 'team_projects.team_id')
.innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id') .innerJoin('tasks', 'team_projects.project_id', 'tasks.project_id')
.innerJoin('projects', 'tasks.project_id', 'projects.id')
.select({ .select({
id: 'tasks.id', id: 'tasks.id',
project: 'tasks.project_id', project: 'tasks.project_id',
...@@ -360,6 +369,7 @@ task.get('/:uuid', async (req, res) => { ...@@ -360,6 +369,7 @@ task.get('/:uuid', async (req, res) => {
priority: 'tasks.priority', priority: 'tasks.priority',
created: 'tasks.created', created: 'tasks.created',
edited: 'tasks.edited', edited: 'tasks.edited',
color: 'projects.color',
}) })
.where({ .where({
'team_members.user_id': req.body.token.id, 'team_members.user_id': req.body.token.id,
......
...@@ -121,6 +121,7 @@ user.get('/tasks', async (req, res) => { ...@@ -121,6 +121,7 @@ user.get('/tasks', async (req, res) => {
try { try {
const tasks = await database({ 'ut': 'task_assignees' }) const tasks = await database({ 'ut': 'task_assignees' })
.innerJoin('tasks', 'ut.task_id', 'tasks.id') .innerJoin('tasks', 'ut.task_id', 'tasks.id')
.innerJoin('projects', 'tasks.project_id', 'projects.id')
.leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id') .leftJoin('task_requirements', 'tasks.id', 'task_requirements.task_id')
.leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id') .leftJoin('task_dependencies', 'tasks.id', 'task_dependencies.task_id')
.leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id') .leftJoin('task_assignees', 'tasks.id', 'task_assignees.task_id')
...@@ -134,6 +135,7 @@ user.get('/tasks', async (req, res) => { ...@@ -134,6 +135,7 @@ user.get('/tasks', async (req, res) => {
priority: 'tasks.priority', priority: 'tasks.priority',
created: 'tasks.created', created: 'tasks.created',
edited: 'tasks.edited', edited: 'tasks.edited',
color: 'projects.color',
requirement_role: 'task_requirements.role_id', requirement_role: 'task_requirements.role_id',
requirement_time: 'task_requirements.time', requirement_time: 'task_requirements.time',
assigned_user: 'task_assignees.user_id', assigned_user: 'task_assignees.user_id',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment