diff --git a/wip-app/src/pages/ProjectPage/ProjectPage.js b/wip-app/src/pages/ProjectPage/ProjectPage.js index e69de29..6733585 100644 --- a/wip-app/src/pages/ProjectPage/ProjectPage.js +++ b/wip-app/src/pages/ProjectPage/ProjectPage.js @@ -0,0 +1,23 @@ +import React from "react"; +import { projectPage } from "../../utils/get-fetch"; + +const ProjectPage = () => { + const [projectData, setProjectData] = React.useState([]); + + React.useEffect(() => { + projectPage().then(setProjectData); + }, []); + + const { + id, + user_id, + project_name, + project_description, + project_status, + } = projectData; + // SELECT (SELECT username FROM users WHERE projects.user_id=users.id), project_name, project_description, project_status, steps.step_name, steps.step_link, steps.date, feedback_text, feedback_tag, feedback.date + // FROM projects JOIN users ON projects.user_id=users.id JOIN steps ON projects.id=steps.project_id JOIN feedback ON steps.id=feedback.step_id + // WHERE projects.id = 1; +}; + +export default ProjectPage; diff --git a/wip-app/src/utils/get-fetch.js b/wip-app/src/utils/get-fetch.js index a78b3c8..dac4f3c 100644 --- a/wip-app/src/utils/get-fetch.js +++ b/wip-app/src/utils/get-fetch.js @@ -55,4 +55,13 @@ function getUserPageProjects() { return getFetch(options); } -export { feedPage, getUser, explorePage, getUserPageProjects }; +function projectPage(projectid) { + const projectid = 1; + const options = { + endpoint: `project/${projectid}`, + errorMessage: "Project page error", + }; + return getFetch(options); +} + +export { feedPage, getUser, explorePage, getUserPageProjects, projectPage }; diff --git a/wip-rest-api/src/model/projects-model.js b/wip-rest-api/src/model/projects-model.js index f945974..dddbb1d 100644 --- a/wip-rest-api/src/model/projects-model.js +++ b/wip-rest-api/src/model/projects-model.js @@ -2,7 +2,10 @@ const db = require("../database/connection.js"); function getProjectFromDb(projectId) { return db - .query("SELECT * FROM projects WHERE id=($1)", [projectId]) + .query( + "SELECT (SELECT username FROM users WHERE projects.user_id=users.id), project_name, project_description, project_status, steps.id, steps.step_name, steps.step_link, steps.date FROM projects JOIN steps ON projects.id=steps.project_id WHERE projects.id=($1);", + [projectId] + ) .then((project) => project.rows[0]); }