add project creation and listing

This commit is contained in:
João Geonizeli
2022-07-09 10:05:01 -03:00
parent c3fe6e6f1c
commit e0dd6c2307
27 changed files with 256 additions and 26 deletions

View File

@@ -0,0 +1,40 @@
import { Router } from "express";
import { ProjectDto } from "../dto/poject.dto";
import { ProjectService } from "../service/project.service";
const router = Router();
const BASE_PATH = "/projects";
export const getAllPath = BASE_PATH;
router.get(getAllPath, async (req, res) => {
const projects = await ProjectService.listAllByUserId(req.userId)
const response: ProjectDto[] = projects.map<ProjectDto>(project => ({
name: project.name
}))
res.json(response)
});
export const createPath = BASE_PATH;
router.post(createPath, (req, res) => {
const { name } = req.body;
ProjectService.create({
name,
userId: req.userId
}).then(project => {
const respose: ProjectDto = {
name: project.name
}
res.json(respose);
}).catch(err => {
res.status(422).json({
error: err.message
});
})
});
export const ProjectRoutes = router;