From 97d8f9cb365e5e086d037ad63e39a4616512edc6 Mon Sep 17 00:00:00 2001 From: Okandze-Diessy Date: Tue, 20 Aug 2024 18:18:34 +0100 Subject: [PATCH 1/6] Diessy Okandze --- .../contact/controller/contact.controller.js | 69 +++++++++++++++++++ feature/contact/model/contact.model.js | 42 +++++++++++ feature/contact/route/contact.route.js | 30 ++++++++ .../problem/controller/problem.controller.js | 69 +++++++++++++++++++ feature/problem/model/problem.model.js | 36 ++++++++++ feature/problem/route/problem.route.js | 31 +++++++++ server.js | 9 +++ 7 files changed, 286 insertions(+) create mode 100644 feature/contact/controller/contact.controller.js create mode 100644 feature/contact/model/contact.model.js create mode 100644 feature/contact/route/contact.route.js create mode 100644 feature/problem/controller/problem.controller.js create mode 100644 feature/problem/model/problem.model.js create mode 100644 feature/problem/route/problem.route.js diff --git a/feature/contact/controller/contact.controller.js b/feature/contact/controller/contact.controller.js new file mode 100644 index 0000000..f338853 --- /dev/null +++ b/feature/contact/controller/contact.controller.js @@ -0,0 +1,69 @@ +const ContactModel= require('../model/contact.model') + +//getAll : + +module.exports.getAll =(async(req,res)=>{ + const contacts= await ContactModel.find({}) + res.status(200).json({success: true, data: contacts}); +}) + + +//getById : + +module.exports.getById= (async(req,res)=>{ + const contact= await ContactModel.findById(req.params.id) + if(!contact){ + res.status(200).json({success: false,data: "NoData"}); + return; + } + res.status(200).json({success: true, data: contact}) +}) + + +//getOne : + +module.exports.getOne= (async(req,res)=>{ + const contact= await ContactModel.findOne({lastname: req.params.lastname}); + if(!contact){ + res.status(200).json({success: false,data: "NoData"}); + return; + } + res.status(200).json({success: true,data: contact}); +}) + + +//create : + +module.exports.create= (async(req,res)=>{ + let contact= req.body + contact= await ContactModel.create(contact); + res.status(200).json({success: true,data: contact}) +}) + + +//update : + +module.exports.update= async(req,res)=>{ + let contact= await ContactModel.findById(req.params.id); + if(!contact){ + res.status(200).json({success:false,data: "NoData"}) + return + } + await ContactModel.updateOne({_id: req.params.id},req.body) + contact= await ContactModel.findById(req.params.id) + res.status(200).json({success: true,data: contact}) +} + + +//delete : + +module.exports.delete= (async(req,res)=>{ + let contact= await contactModel.find({}) + if(!contact){ + res.status(200).json({sucess: false,data: "NoData"}) + return + } + await contactModel.deleteOne(req.params.id) + res.status(200).json({success: true, data: {}}) +}) + diff --git a/feature/contact/model/contact.model.js b/feature/contact/model/contact.model.js new file mode 100644 index 0000000..d04d8e0 --- /dev/null +++ b/feature/contact/model/contact.model.js @@ -0,0 +1,42 @@ +const mongoose = require('mongoose'); +const schema = new mongoose.Schema({ + codeObject: String, + lastname: { + type: String, + require: true, + maxLength: 70, + minLength: 2, + default: "" + }, + firstname: { + type: String, + require: true, + maxLength: 70, + default: "" + }, + phone: { + type: String, + require: true, + maxLength: 20, + default: "" + }, + mail: { + type: String, + require: true, + default: "" + }, + vehicle: { + type: mongoose.Schema.ObjectId, + ref: 'vehicle' + }, + status: String, + createdBy: { + type: String, + ref: 'user' + } +}, + { + timestamps:true + }) + +module.exports= mongoose.model('contact',schema) \ No newline at end of file diff --git a/feature/contact/route/contact.route.js b/feature/contact/route/contact.route.js new file mode 100644 index 0000000..1ea0368 --- /dev/null +++ b/feature/contact/route/contact.route.js @@ -0,0 +1,30 @@ +const contactController= require('../controller/contact.controller') + +const router= require('express').Router() + +//getAll : + +router.route('/').get(contactController.getAll) + +//getById : + +router.route('/:id').get(contactController.getById) + + +//getOne : + +router.route('/lastname/:lastname').get(contactController.getOne) + + +//create : + +router.route('/').post(contactController.create) + +//update : +router.route('/:id').put(contactController.update) + +//delete : + +router.route('/:id').delete(contactController.delete) + +module.exports=router; \ No newline at end of file diff --git a/feature/problem/controller/problem.controller.js b/feature/problem/controller/problem.controller.js new file mode 100644 index 0000000..6a7cbea --- /dev/null +++ b/feature/problem/controller/problem.controller.js @@ -0,0 +1,69 @@ +const ProblemModel= require('../model/problem.model') + +//getAll : + +module.exports.getAll =(async(req,res)=>{ + const problems= await ProblemModel.find({}); + res.status(200).json({success: true, data: problems}); +}) + + +//getById : + +module.exports.getById= (async(req,res)=>{ + const problem= await ProblemModel.findById(req.params.id) + if(!problem){ + res.status(200).json({success: false,data: "NoData"}); + return; + } + res.status(200).json({success: true, data: problem}) +}) + + +//getOne : + +module.exports.getOne= (async(req,res)=>{ + const problem= await ProblemModel.findOne({lastname: req.params.lastname}); + if(!problem){ + res.status(200).json({success: false,data: "NoData"}); + return; + } + res.status(200).json({success: true,data: problem}); +}) + + +//create : + +module.exports.create= (async(req,res)=>{ + let problem= req.body + problem= await ProblemModel.create(problem); + res.status(200).json({success: true,data: problem}) +}) + + +//update : + +module.exports.update= (async(req,res)=>{ + let problem= await ProblemModel.findById(req.params.id); + if(!problem){ + res.status(200).json({success:false,data: "NoData"}) + return + } + await ProblemModel.updateOne({_id: req.params.id},req.body) + problem= await ProblemModel.findById(req.params.id) + res.status(200).json({success: true,data: problem}) +}) + + +//delete : + +module.exports.delete= (async(req,res)=>{ + let problem= await ProblemModel.find({}) + if(!problem){ + res.status(200).json({success: false,data: "NoData"}) + return + } + await ProblemModel.deleteOne(req.params.id) + res.status(200).json({success: true, data: {}}) +}) + diff --git a/feature/problem/model/problem.model.js b/feature/problem/model/problem.model.js new file mode 100644 index 0000000..98004fb --- /dev/null +++ b/feature/problem/model/problem.model.js @@ -0,0 +1,36 @@ +const mongoose= require('mongoose') + +const schema= new mongoose.Schema({ + codeObject: String, + description: { + type: String, + default: "" + }, + date: { + type: Date, + default: "" + }, + state: { + type: String, + default: "" + }, + status: { + type: String, + default: "" + }, + vehicle: { + type: mongoose.Schema.ObjectId, + ref: 'vehicle' + }, + createdBy: { + type: mongoose.Schema.ObjectId, + ref: 'user' + } + + +}, + { + timestamps: true + }) + +module.exports=mongoose.model('problem',schema) \ No newline at end of file diff --git a/feature/problem/route/problem.route.js b/feature/problem/route/problem.route.js new file mode 100644 index 0000000..4f7df49 --- /dev/null +++ b/feature/problem/route/problem.route.js @@ -0,0 +1,31 @@ +const problemController= require('../controller/problem.controller') + +const router= require('express').Router() + +//getAll : + +router.route('/').get(problemController.getAll) + +//getById : + +router.route('/:id').get(problemController.getById) + + +//getOne : + +router.route('/lastname/:lastname').get(problemController.getOne) + + +//create : + +router.route('/').post(problemController.create) + +//update : +router.route('/:id').put(problemController.update) + +//delete : + +router.route('/:id').delete(problemController.delete) + +module.exports=router; + diff --git a/server.js b/server.js index 4bb9172..e4f4ed8 100644 --- a/server.js +++ b/server.js @@ -15,6 +15,15 @@ app.use(cors()); const vehicleRoute = require("./feature/vehicle/route/vehicle.route"); app.use("/vehicle", vehicleRoute); +//route contact : +const contactRoute= require('./feature/contact/route/contact.route') +app.use("/contact",contactRoute) + +//route problem : + +const problemRoute= require('./feature/problem/route/problem.route') +app.use("/problem",problemRoute) + const server = app.listen(5000, ()=>{ console.log('Vous êtés connecter au port 5000'.yellow.bold); }) From 64bdf1f8a2f691949af8ce4127ad34afd034ccdf Mon Sep 17 00:00:00 2001 From: HP Date: Wed, 21 Aug 2024 20:33:32 +0200 Subject: [PATCH 2/6] gailaur --- feature/contact/model/contact.model.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/feature/contact/model/contact.model.js b/feature/contact/model/contact.model.js index d04d8e0..5270679 100644 --- a/feature/contact/model/contact.model.js +++ b/feature/contact/model/contact.model.js @@ -6,7 +6,7 @@ const schema = new mongoose.Schema({ require: true, maxLength: 70, minLength: 2, - default: "" + default: '' }, firstname: { type: String, From e0ca0f360789f0f98aeb45d05a4b6432fd08629f Mon Sep 17 00:00:00 2001 From: Okandze-Diessy Date: Thu, 22 Aug 2024 12:09:30 +0100 Subject: [PATCH 3/6] Diessy Okandze --- feature/contact/controller/contact.controller.js | 8 ++++---- feature/contact/model/contact.model.js | 8 ++++---- feature/contact/route/contact.route.js | 4 +++- feature/problem/controller/problem.controller.js | 6 +++--- feature/problem/model/problem.model.js | 2 +- feature/problem/route/problem.route.js | 6 +++++- shared/middleware/advanced-result.js | 11 +++++++---- 7 files changed, 27 insertions(+), 18 deletions(-) diff --git a/feature/contact/controller/contact.controller.js b/feature/contact/controller/contact.controller.js index f338853..7154448 100644 --- a/feature/contact/controller/contact.controller.js +++ b/feature/contact/controller/contact.controller.js @@ -3,8 +3,8 @@ const ContactModel= require('../model/contact.model') //getAll : module.exports.getAll =(async(req,res)=>{ - const contacts= await ContactModel.find({}) - res.status(200).json({success: true, data: contacts}); + // const contacts= await ContactModel.find({}) + res.status(200).json(res.advancedResults); }) @@ -58,12 +58,12 @@ module.exports.update= async(req,res)=>{ //delete : module.exports.delete= (async(req,res)=>{ - let contact= await contactModel.find({}) + let contact= await ContactModel.find({}) if(!contact){ res.status(200).json({sucess: false,data: "NoData"}) return } - await contactModel.deleteOne(req.params.id) + await ContactModel.deleteOne({_id: req.params.id}) res.status(200).json({success: true, data: {}}) }) diff --git a/feature/contact/model/contact.model.js b/feature/contact/model/contact.model.js index 5270679..0d3e1e7 100644 --- a/feature/contact/model/contact.model.js +++ b/feature/contact/model/contact.model.js @@ -30,10 +30,10 @@ const schema = new mongoose.Schema({ ref: 'vehicle' }, status: String, - createdBy: { - type: String, - ref: 'user' - } + // createdBy: { + // type: String, + // ref: 'user' + // } }, { timestamps:true diff --git a/feature/contact/route/contact.route.js b/feature/contact/route/contact.route.js index 1ea0368..4ee6b19 100644 --- a/feature/contact/route/contact.route.js +++ b/feature/contact/route/contact.route.js @@ -1,10 +1,12 @@ const contactController= require('../controller/contact.controller') +const advancedResults = require('../../../shared/middleware/advanced-result') +const ContactModel= require('../model/contact.model') const router= require('express').Router() //getAll : -router.route('/').get(contactController.getAll) +router.route('/').get(advancedResults(ContactModel),contactController.getAll) //getById : diff --git a/feature/problem/controller/problem.controller.js b/feature/problem/controller/problem.controller.js index 6a7cbea..91d017e 100644 --- a/feature/problem/controller/problem.controller.js +++ b/feature/problem/controller/problem.controller.js @@ -3,8 +3,8 @@ const ProblemModel= require('../model/problem.model') //getAll : module.exports.getAll =(async(req,res)=>{ - const problems= await ProblemModel.find({}); - res.status(200).json({success: true, data: problems}); + // const problems= await ProblemModel.find({}); + res.status(200).json(res.advancedResults); }) @@ -63,7 +63,7 @@ module.exports.delete= (async(req,res)=>{ res.status(200).json({success: false,data: "NoData"}) return } - await ProblemModel.deleteOne(req.params.id) + await ProblemModel.deleteOne({_id: req.params.id}) res.status(200).json({success: true, data: {}}) }) diff --git a/feature/problem/model/problem.model.js b/feature/problem/model/problem.model.js index 98004fb..0fdd6b3 100644 --- a/feature/problem/model/problem.model.js +++ b/feature/problem/model/problem.model.js @@ -7,7 +7,7 @@ const schema= new mongoose.Schema({ default: "" }, date: { - type: Date, + type: String, default: "" }, state: { diff --git a/feature/problem/route/problem.route.js b/feature/problem/route/problem.route.js index 4f7df49..fbc36c8 100644 --- a/feature/problem/route/problem.route.js +++ b/feature/problem/route/problem.route.js @@ -1,10 +1,14 @@ const problemController= require('../controller/problem.controller') +const advancedResults= require('../../../shared/middleware/advanced-result') + +const ProblemModel= require('../model/problem.model') + const router= require('express').Router() //getAll : -router.route('/').get(problemController.getAll) +router.route('/').get(advancedResults(ProblemModel),problemController.getAll) //getById : diff --git a/shared/middleware/advanced-result.js b/shared/middleware/advanced-result.js index 7578503..cc6609b 100644 --- a/shared/middleware/advanced-result.js +++ b/shared/middleware/advanced-result.js @@ -2,10 +2,10 @@ const advancedResult =(model)=> async (req, res, next) => { //search : l'information que je cherche //fields : les colonnes je veux utiliser pour la recherche - const fields = req.query.fields; - const search = req.query.search; - let page = req.query.page; - let limit = req.query.limit; + const fields = req.query.fields; //Permet de récupérer les champs qu'on va effectuer la recherche du front. + const search = req.query.search; //Permet de récupérer la recherche + let page = req.query.page; //Permet de récupérer la page actuelle + let limit = req.query.limit; //Permet de récupérer la page de limite let find = {} @@ -14,6 +14,9 @@ const advancedResult =(model)=> async (req, res, next) => { //Recherche l'element search dans le tableau de propriété fields const query = { + //$or: c'est pour faire la recherche sur plusieurs champs, $regex : permet de stocker la recherche + //i : c'est pour mettre le texte insensible à la casse. + //-i: sensible à la casse. $or: fields.map(property => ({ [property]: {$regex: search, $options: 'i'} })) From 04889f3af637f6594a27795988e3a469c49ad781 Mon Sep 17 00:00:00 2001 From: CATHERINA-LUCE Date: Fri, 23 Aug 2024 13:39:59 +0100 Subject: [PATCH 4/6] thirst commit --- feature/place/controller/place.controller.js | 52 ++++++++++++++++++ feature/place/model/place.model.js | 40 ++++++++++++++ feature/place/route/place.route.js | 27 ++++++++++ .../service/controller/service.controller.js | 53 +++++++++++++++++++ feature/service/model/service.model.js | 32 +++++++++++ feature/service/route/service.route.js | 27 ++++++++++ server.js | 6 +++ 7 files changed, 237 insertions(+) create mode 100644 feature/place/controller/place.controller.js create mode 100644 feature/place/model/place.model.js create mode 100644 feature/place/route/place.route.js create mode 100644 feature/service/controller/service.controller.js create mode 100644 feature/service/model/service.model.js create mode 100644 feature/service/route/service.route.js diff --git a/feature/place/controller/place.controller.js b/feature/place/controller/place.controller.js new file mode 100644 index 0000000..61ecb26 --- /dev/null +++ b/feature/place/controller/place.controller.js @@ -0,0 +1,52 @@ +const PlaceModel = require("../model/place.model") + + + +module.exports.getAll = (async (req, res)=>{ + + + res.status(200).json(res.advancedResults); +}) + +//getById +module.exports.getById = (async (req, res)=>{ + //req.params.id + const place = await PlaceModel.findById(req.params.id); + if(!place){ + res.status(200).json({success: false, data : "noData"}); + return; + } + res.status(200).json({success: true, data :place }); +}) + +//create +module.exports.create = (async (req, res)=>{ + let place = req.body; + place = await PlaceModel.create(place); + res.status(200).json({success: true, data :place }); +}) + +//update +module.exports.update = (async (req, res)=>{ + let place = await PlaceModel.findById(req.params.id); + if(!place){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await PlaceModel.updateOne({_id:req.params.id}, req.body); + place = await PlaceModel.findById(req.params.id); + res.status(200).json({success: true, data :place }); +}) + +//delete +module.exports.delete = (async (req, res)=>{ + let place = await PlaceModel.findById(req.params.id); + if(!place){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await PlaceModel.deleteOne({_id:req.params.id}); + res.status(200).json({success: true, data :{} }); +}) \ No newline at end of file diff --git a/feature/place/model/place.model.js b/feature/place/model/place.model.js new file mode 100644 index 0000000..2eacbc4 --- /dev/null +++ b/feature/place/model/place.model.js @@ -0,0 +1,40 @@ +const mongoose = require("mongoose"); + +const schema = new mongoose.Schema({ + //String, Number, Boolean, MongoObject, Object + etage: { + type:String, + default: "" + }, + taille: { + type:String, + default: "" + }, + disponibilite: { + type:String, + default: "" + }, + vehiculeOccupe: { + type:String, + default: "" + }, + dateEntree: { + type:String, + default: "" + }, + + dateSortie: { + type:String, + default: "" + }, + + proprietaire: { + type:String, + default: "" + } + + + +}, { timestamps : true}); + +module.exports = mongoose.model('place', schema, 'places'); diff --git a/feature/place/route/place.route.js b/feature/place/route/place.route.js new file mode 100644 index 0000000..9948fc2 --- /dev/null +++ b/feature/place/route/place.route.js @@ -0,0 +1,27 @@ +const express = require("express"); +const router = express.Router(); +const placeController = require("../controller/place.controller"); +const PlaceModel = require("../model/place.model"); +const advancedResults = require("../../../shared/middleware/advanced-result") + +//get All +//router.route('/').get(vehicleController.getAll); + +router + .route('/') + .get(advancedResults(PlaceModel), placeController.getAll) // path , ref et nom de l'entité + + +//getById +router.route('/:id').get(placeController.getById); + +//create +router.route('/').post(placeController.create); + +//update +router.route('/:id').put(placeController.update); + +//delete +router.route('/:id').delete(placeController.delete); + +module.exports = router \ No newline at end of file diff --git a/feature/service/controller/service.controller.js b/feature/service/controller/service.controller.js new file mode 100644 index 0000000..574377a --- /dev/null +++ b/feature/service/controller/service.controller.js @@ -0,0 +1,53 @@ +const ServiceModel = require("../model/service.model") + + +//getAll +module.exports.getAll = (async (req, res)=>{ + + + + res.status(200).json(res.advancedResults); +}) + +//getById +module.exports.getById = (async (req, res)=>{ + //req.params.id + const service = await ServiceModel.findById(req.params.id); + if(!service){ + res.status(200).json({success: false, data : "noData"}); + return; + } + res.status(200).json({success: true, data :service }); +}) + +//create +module.exports.create = (async (req, res)=>{ + let service = req.body; + service = await ServiceModel.create(service); + res.status(200).json({success: true, data :service }); +}) + +//update +module.exports.update = (async (req, res)=>{ + let service = await ServiceModel.findById(req.params.id); + if(!service){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await ServiceModel.findByIdAndUpdate({_id:req.params.id}, req.body); + service = await ServiceModel.findById(req.params.id); + res.status(200).json({success: true, data :service }); +}) + +//delete +module.exports.delete = (async (req, res)=>{ + let service = await ServiceModel.findById(req.params.id); + if(!service){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await ServiceModel.deleteOne({_id:req.params.id}); + res.status(200).json({success: true, data :{} }); +}) \ No newline at end of file diff --git a/feature/service/model/service.model.js b/feature/service/model/service.model.js new file mode 100644 index 0000000..34084cd --- /dev/null +++ b/feature/service/model/service.model.js @@ -0,0 +1,32 @@ +const mongoose = require("mongoose"); + +const schema = mongoose.Schema({ + //String, Number, Boolean, MongoObject, Object + vente: { + type:String, + default: "" + }, + financement: { + type:String, + default: "" + }, + assurance: { + type:String, + default: "" + }, + programme: { + type:String, + default: "" + }, + location: { + type:String, + default: "" + }, + + gestion: { + type:String, + default: "" + } +}, { timestamps : true}); + +module.exports = mongoose.model('service', schema, 'services'); diff --git a/feature/service/route/service.route.js b/feature/service/route/service.route.js new file mode 100644 index 0000000..d12e976 --- /dev/null +++ b/feature/service/route/service.route.js @@ -0,0 +1,27 @@ +const express = require("express"); +const router = express.Router(); +const serviceController = require("../controller/service.controller"); +const ServiceModel = require("../model/service.model"); +const advancedResults = require("../../../shared/middleware/advanced-result") + +//get All +//router.route('/').get(vehicleController.getAll); + +router + .route('/') + .get(advancedResults(ServiceModel), serviceController.getAll) // path , ref et nom de l'entité + + +//getById +router.route('/:id').get(serviceController.getById); + +//create +router.route('/').post(serviceController.create); + +//update +router.route('/:id').put(serviceController.update); + +//delete +router.route('/:id').delete(serviceController.delete); + +module.exports = router \ No newline at end of file diff --git a/server.js b/server.js index e4f4ed8..7b7f585 100644 --- a/server.js +++ b/server.js @@ -24,6 +24,12 @@ app.use("/contact",contactRoute) const problemRoute= require('./feature/problem/route/problem.route') app.use("/problem",problemRoute) +const placeRoute= require('./feature/place/route/place.route') +app.use("/place",placeRoute) + +const serviceRoute= require('./feature/service/route/service.route') +app.use("/service",serviceRoute) + const server = app.listen(5000, ()=>{ console.log('Vous êtés connecter au port 5000'.yellow.bold); }) From 4cf3f4fd5231e852bb44cbe0f6b23796238a2cd5 Mon Sep 17 00:00:00 2001 From: Richedman Date: Fri, 23 Aug 2024 15:21:58 +0200 Subject: [PATCH 5/6] thirst commit --- .../controller/carburant.controller.js | 53 +++++++++++++++++++ feature/carburant/model/carburant.model.js | 20 +++++++ feature/carburant/route/carburant.route.js | 27 ++++++++++ .../controller/utilisateur.controller.js | 53 +++++++++++++++++++ .../utilisateur/model/utilisateur.model.js | 29 ++++++++++ .../utilisateur/route/utilisateur.route.js | 27 ++++++++++ server.js | 7 +++ 7 files changed, 216 insertions(+) create mode 100644 feature/carburant/controller/carburant.controller.js create mode 100644 feature/carburant/model/carburant.model.js create mode 100644 feature/carburant/route/carburant.route.js create mode 100644 feature/utilisateur/controller/utilisateur.controller.js create mode 100644 feature/utilisateur/model/utilisateur.model.js create mode 100644 feature/utilisateur/route/utilisateur.route.js diff --git a/feature/carburant/controller/carburant.controller.js b/feature/carburant/controller/carburant.controller.js new file mode 100644 index 0000000..77cad2e --- /dev/null +++ b/feature/carburant/controller/carburant.controller.js @@ -0,0 +1,53 @@ +const CarburantModel = require("../model/carburant.model") + + +//getAll +module.exports.getAll = (async (req, res)=>{ + + + //res.status(200).json({success: true, data : carburant}); + res.status(200).json(res.advancedResults); +}) + +//getById +module.exports.getById = (async (req, res)=>{ + //req.params.id + const carburant = await CarburantModel.findById(req.params.id); + if(!carburant){ + res.status(200).json({success: false, data : "noData"}); + return; + } + res.status(200).json({success: true, data :carburant }); +}) + +//create +module.exports.create = (async (req, res)=>{ + let carburant = req.body; + carburant = await CarburantModel.create(carburant); + res.status(200).json({success: true, data :carburant }); +}) + +//update +module.exports.update = (async (req, res)=>{ + let carburant = await CarburantModel.findById(req.params.id); + if(!carburant){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await CarburantModel.updateOne({_id:req.params.id}, req.body); + carburant = await CarburantModel.findById(req.params.id); + res.status(200).json({success: true, data :carburant }); +}) + +//delete +module.exports.delete = (async (req, res)=>{ + let carburant = await CarburantModel.findById(req.params.id); + if(!carburant){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await CarburantModel.deleteOne({_id:req.params.id}); + res.status(200).json({success: true, data :{} }); +}) \ No newline at end of file diff --git a/feature/carburant/model/carburant.model.js b/feature/carburant/model/carburant.model.js new file mode 100644 index 0000000..f572e7b --- /dev/null +++ b/feature/carburant/model/carburant.model.js @@ -0,0 +1,20 @@ +const mongoose = require("mongoose"); + +const schema= mongoose.Schema({ + //String, Number, Boolean, MongoObject, Object + type: { + type: String, + default: "" + }, + prix: { + type: String, + default: "" + } +}, { timestamps : true}); + + + + +module.exports = mongoose.model('carburant', schema, 'carburants'); + + diff --git a/feature/carburant/route/carburant.route.js b/feature/carburant/route/carburant.route.js new file mode 100644 index 0000000..ab4de98 --- /dev/null +++ b/feature/carburant/route/carburant.route.js @@ -0,0 +1,27 @@ +const express = require("express"); +const router = express.Router(); +const carburantController = require("../controller/carburant.controller"); +const carburantModel = require("../model/carburant.model"); +const advancedResults = require("../../../shared/middleware/advanced-result") + +//get All +//router.route('/').get(carburantController.getAll); + +router + .route('/') + .get(advancedResults(carburantModel), carburantController.getAll) // path , ref et nom de l'entité + + +//getById +router.route('/:id').get(carburantController.getById); + +//create +router.route('/').post(carburantController.create); + +//update +router.route('/:id').put(carburantController.update); + +//delete +router.route('/:id').delete(carburantController.delete); + +module.exports = router \ No newline at end of file diff --git a/feature/utilisateur/controller/utilisateur.controller.js b/feature/utilisateur/controller/utilisateur.controller.js new file mode 100644 index 0000000..a672b5c --- /dev/null +++ b/feature/utilisateur/controller/utilisateur.controller.js @@ -0,0 +1,53 @@ +const UtilisateurModel = require("../model/utilisateur.model") + + +//getAll +module.exports.getAll = (async (req, res)=>{ + + + //res.status(200).json({success: true, data : utilisateur}); + res.status(200).json(res.advancedResults); +}) + +//getById +module.exports.getById = (async (req, res)=>{ + //req.params.id + const utilisateur = await UtilisateurModel.findById(req.params.id); + if(!utilisateur){ + res.status(200).json({success: false, data : "noData"}); + return; + } + res.status(200).json({success: true, data :utilisateur }); +}) + +//create +module.exports.create = (async (req, res)=>{ + let utilisateur = req.body; + utilisateur = await UtilisateurModel.create(utilisateur); + res.status(200).json({success: true, data :utilisateur }); +}) + +//update +module.exports.update = (async (req, res)=>{ + let utilisateur = await UtilisateurModel.findById(req.params.id); + if(!utilisateur){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await UtilisateurModel.updateOne({_id:req.params.id}, req.body); + utilisateur = await UtilisateurModel.findById(req.params.id); + res.status(200).json({success: true, data :utilisateur }); +}) + +//delete +module.exports.delete = (async (req, res)=>{ + let utilisateur = await UtilisateurModel.findById(req.params.id); + if(!utilisateur){ + res.status(200).json({success: false, data : "noData"}); + return; + } + + await UtilisateurModel.deleteOne({_id:req.params.id}); + res.status(200).json({success: true, data :{} }); +}) \ No newline at end of file diff --git a/feature/utilisateur/model/utilisateur.model.js b/feature/utilisateur/model/utilisateur.model.js new file mode 100644 index 0000000..6e6e43c --- /dev/null +++ b/feature/utilisateur/model/utilisateur.model.js @@ -0,0 +1,29 @@ +const mongoose = require("mongoose"); +const string_decoder = require("string_decoder"); + +const schema= mongoose.Schema({ + //String, Number, Boolean, MongoObject, Object + name: { + type: String, + default: "" + }, + firstname: { + type: String, + default: "" + }, + country: { + type: String, + default: "" + }, + city: { + type: String, + default: "" + } +}, { timestamps : true}); + + + + +module.exports = mongoose.model('utilisateur', schema, 'utilisateurs'); + + diff --git a/feature/utilisateur/route/utilisateur.route.js b/feature/utilisateur/route/utilisateur.route.js new file mode 100644 index 0000000..694e87f --- /dev/null +++ b/feature/utilisateur/route/utilisateur.route.js @@ -0,0 +1,27 @@ +const express = require("express"); +const router = express.Router(); +const utilisateurController = require("../controller/utilisateur.controller"); +const utilisateurModel = require("../model/utilisateur.model"); +const advancedResults = require("../../../shared/middleware/advanced-result") + +//get All +//router.route('/').get(utilisateurController.getAll); + +router + .route('/') + .get(advancedResults(utilisateurModel), utilisateurController.getAll) // path , ref et nom de l'entité + + +//getById +router.route('/:id').get(utilisateurController.getById); + +//create +router.route('/').post(utilisateurController.create); + +//update +router.route('/:id').put(utilisateurController.update); + +//delete +router.route('/:id').delete(utilisateurController.delete); + +module.exports = router \ No newline at end of file diff --git a/server.js b/server.js index 7b7f585..d5241cf 100644 --- a/server.js +++ b/server.js @@ -30,6 +30,13 @@ app.use("/place",placeRoute) const serviceRoute= require('./feature/service/route/service.route') app.use("/service",serviceRoute) +// route carburant +const carburantRoute = require("./feature/carburant/route/carburant.route"); +app.use("/carburant", carburantRoute); +// route utilisateur +const utilisateurRoute = require("./feature/utilisateur/route/utilisateur.route"); +app.use("/utilisateur", utilisateurRoute); + const server = app.listen(5000, ()=>{ console.log('Vous êtés connecter au port 5000'.yellow.bold); }) From 3fc8f1befdcdd45cd137c2c1e2403d9900225c20 Mon Sep 17 00:00:00 2001 From: HP Date: Fri, 23 Aug 2024 15:51:21 +0200 Subject: [PATCH 6/6] gailaur --- shared/middleware/advanced-result.js | 1 - 1 file changed, 1 deletion(-) diff --git a/shared/middleware/advanced-result.js b/shared/middleware/advanced-result.js index cc6609b..91c88da 100644 --- a/shared/middleware/advanced-result.js +++ b/shared/middleware/advanced-result.js @@ -1,4 +1,3 @@ - const advancedResult =(model)=> async (req, res, next) => { //search : l'information que je cherche //fields : les colonnes je veux utiliser pour la recherche