|
|
@@ -1,125 +1,43 @@
|
|
|
-const Sequelize = require('sequelize');
|
|
|
-const Model = Sequelize.Model;
|
|
|
const express = require('express');
|
|
|
const server= express();
|
|
|
+
|
|
|
const bd = require('body-parser');
|
|
|
+
|
|
|
server.use(bd.json());
|
|
|
|
|
|
-server.use(function (err, req, res, next) {
|
|
|
- console.error(err.stack);
|
|
|
- res.status(500).send(err.stack);
|
|
|
-
|
|
|
-});
|
|
|
+const personCtrl = require('./person_ctrl');
|
|
|
+const mailCtrl = require('./mail_address_ctrl');
|
|
|
|
|
|
-const personCtrl = {
|
|
|
- get_all(res) {
|
|
|
- Person.findAll().then(persons => {
|
|
|
- res.send(JSON.stringify(persons, null, 4));
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
- create(req, res, next) {
|
|
|
- if (req.query.firstname == undefined || req.query.lastname == undefined) {
|
|
|
- throw "Un des éléments est vide";
|
|
|
- }
|
|
|
- Person.create({lastname: req.query.firstname, firstname: req.query.lastname}).then(p => {
|
|
|
- res.send("ok");
|
|
|
- }) .catch(function (error) {
|
|
|
- next(error);
|
|
|
- })
|
|
|
- },
|
|
|
- get_by_id(req, res, next) {
|
|
|
- Person.findByPk(req.params.person_id).then(persons => {
|
|
|
- if (!persons) {
|
|
|
- throw "Pas bonne id"
|
|
|
- }
|
|
|
- res.send(JSON.stringify(persons, null, 4))
|
|
|
- }) .catch(function (error) {
|
|
|
- next(error);
|
|
|
- })
|
|
|
-
|
|
|
- },
|
|
|
- update_by_id(req, res, next) {
|
|
|
- Person.findByPk(req.params.person_id).then(persons => {
|
|
|
- if (!persons) {
|
|
|
- throw "Pas bonne id";
|
|
|
- } else {
|
|
|
- Person.update(req.body, {
|
|
|
- where: {
|
|
|
- id: req.params.person_id
|
|
|
- }
|
|
|
- }) .then(
|
|
|
- res.send("ok")
|
|
|
- )
|
|
|
- }
|
|
|
- }) .catch(function (error) {
|
|
|
- next(error);
|
|
|
- })
|
|
|
-
|
|
|
-
|
|
|
- },
|
|
|
- delete_by_id(req, res, next) {
|
|
|
- Person.destroy({
|
|
|
- where: {
|
|
|
- id: req.params.person_id
|
|
|
- }
|
|
|
- }) .then(data => {
|
|
|
- if (!data) {
|
|
|
- throw "Pas bonne id"
|
|
|
- }
|
|
|
- res.send("fait")}) .catch(function (error) {
|
|
|
- next(error);
|
|
|
- })
|
|
|
- }
|
|
|
-}
|
|
|
|
|
|
-const pCtrl = Object.create(personCtrl);
|
|
|
+server.get('/person', personCtrl.get_all);
|
|
|
|
|
|
-const sequelize = new Sequelize('w4aclem', 'clement.krebs', 'n4or2bgm', {
|
|
|
- host: 'mysql.iutrs.unistra.fr',
|
|
|
- dialect: 'mysql'
|
|
|
-});
|
|
|
+server.post('/person', personCtrl.create);
|
|
|
|
|
|
+server.get('/person/:person_id', personCtrl.get_by_id);
|
|
|
|
|
|
-class Person extends Model {}
|
|
|
-Person.init({
|
|
|
- lastname: Sequelize.STRING,
|
|
|
- firstname: Sequelize.STRING
|
|
|
-}, {sequelize, modelName: 'Person'});
|
|
|
+server.put('/person/:person_id', personCtrl.update_by_id);
|
|
|
|
|
|
-/*sequelize.sync()
|
|
|
-.then(() => Person.create({
|
|
|
- lastname: 'moi',
|
|
|
- firstname: 'toi'
|
|
|
-}))
|
|
|
-.then(moi => {
|
|
|
- console.log(moi.toJSON());
|
|
|
-});*/
|
|
|
+server.delete('/person/:person_id', personCtrl.delete_by_id);
|
|
|
|
|
|
-server.get('/person', function (req, res) {
|
|
|
- pCtrl.get_all(res);
|
|
|
-});
|
|
|
+server.get('/person/:person_id/mailAddress', personCtrl.load_by_id, mailCtrl.get_all);
|
|
|
|
|
|
-server.post('/person', function (req, res, next) {
|
|
|
- pCtrl.create(req, res, next);
|
|
|
-});
|
|
|
|
|
|
-server.get('/person/:person_id', function (req, res, next) {
|
|
|
- pCtrl.get_by_id(req, res, next);
|
|
|
-});
|
|
|
-
|
|
|
-server.put('/person/:person_id', function (req, res, next) {
|
|
|
- pCtrl.update_by_id(req, res, next);
|
|
|
-});
|
|
|
-
|
|
|
-server.delete('/person/:person_id', function (req, res, next) {
|
|
|
- pCtrl.delete_by_id(req, res, next);
|
|
|
-});
|
|
|
+server.post('/person/:person_id/mailAddress', personCtrl.load_by_id, mailCtrl.create);
|
|
|
|
|
|
+server.get('/person/:person_id/mailAddress/:mail_address_id', personCtrl.load_by_id, mailCtrl.get_by_id);
|
|
|
|
|
|
+server.put('/person/:person_id/mailAddress/:mail_address_id', personCtrl.load_by_id, mailCtrl.update_by_id);
|
|
|
|
|
|
+server.delete('/person/:person_id/mailAddress/:mail_address_id', personCtrl.load_by_id, mailCtrl.delete_by_id);
|
|
|
|
|
|
+server.use(function (err, req, res, next) {
|
|
|
+ if (err.status) {
|
|
|
+ res.status(err.status).send(err.message);
|
|
|
+ } else {
|
|
|
+ res.status(500).send(err.message);
|
|
|
+ }
|
|
|
+});
|
|
|
|
|
|
server.listen(8000, function () {
|
|
|
console.log('ouais ouais ouais !!!');
|
|
|
-});
|
|
|
+});
|