Advertisement
Shell_Casing

Employees-CRUD-App

May 3rd, 2018
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const express = require('express');
  2. const router = express.Router();
  3.  
  4. const Employee = require('./models/employee');
  5.  
  6.  
  7. // fetch all employees from the database
  8. router.get('/', async (req, res) => {
  9.     try {
  10.         let employees = await Employee.find();
  11.         res.send(employees);
  12.     } catch (e) {
  13.         console.log(e);
  14.     }
  15. });
  16.  
  17. // fetch employee by name
  18. router.get('/:name', async (req, res) => {
  19.     try {
  20.         let employee = await Employee.findOne({name: req.params.name});
  21.         res.send(employee);
  22.     } catch (e) {
  23.         console.log(e);
  24.     }
  25. });
  26.  
  27. // fetch employees by position
  28. router.get('/:position', async (req, res) => {
  29.     try {
  30.         let employee = await Employee.findOne({position: req.params.position});
  31.         res.send(employee);
  32.     } catch (e) {
  33.         console.log(e);
  34.     }
  35. });
  36.  
  37. // fetch employees by branch
  38. router.get('/:branch', (req, res) => {
  39.     Employee.findOne({branch: req.params.branch}, (err, employee) => {
  40.         if(err) {
  41.             res.status(500).send({message: err.message || "Oops: Something went wrong!"});
  42.         } else {
  43.             res.send(employee);
  44.         }
  45.     })
  46. });
  47.  
  48.  
  49. // add an employee to the database
  50. router.post('/', async (req, res) => {
  51.     if(!req.body.name && !req.body.position && !req.body.branch) {
  52.         res.status(400).send({message: "Fill in all fields!"});
  53.     } else {
  54.         try {
  55.             let employee = new Employee({
  56.                 name: req.body.name,
  57.                 position: req.body.position,
  58.                 branch: req.body.branch,
  59.                 salary: req.body.salary
  60.             });
  61.             let result = await employee.save();
  62.             res.send(result);
  63.         } catch (e) {
  64.             console.log(e);
  65.         }
  66.     }
  67. });
  68.  
  69. module.exports = router;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement