%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/opti/workflow/src/routes/
Upload File :
Create Path :
Current File : /home/opti/workflow/src/routes/region.js

var express = require('express');
var router = express.Router();

var con = require('../../config');

var secured = require('../middleware/login');
var db = require('../models');

router.get('/', secured, (req, res) => {
  var user = req.user;
  db.Region.findAll({where: {orgId: user.orgId}, include: [
    {
      model: db.User,
      as: 'head'
    },
    {
      model: db.User,
      as: 'assistant'
    }
  ]})
  .then(function(regions){
    console.log(regions, "Regions")
    res.render('region/index', {user, regions, scripts: 'regionList'})
  })
});

router.get('/add', secured, (req, res) => {
  var user = req.user;

    res.render('region/addRegion', {user, scripts: 'regionList'})

});

router.post('/add', secured, (req, res) => {
  let user = req.user,
      name = req.body.name,
      description = req.body.description,
      address = req.body.address,
      lga = req.body.lga,
      state = req.body.state,
      country = req.body.country,
      headId = req.body.headId,
      assistantId = req.body.headAssistantId,
      email = req.body.email;

      let regionObj = {
        name,
        description,
        address,
        lga,
        state,
        country,
        headId,
        assistantId,
        email,
        address
      }

      console.log(user.orgId);
      db.Region.create({ orgId: user.orgId, ...regionObj})
      .then(function(region){
        res.redirect('/region')
      })
});

router.post('/delete', secured, (req, res) => {
  var regionId = req.body.id;
  db.Region.findOne({where:{id: regionId}}).then(function(region){
    region.destroy().then(function(){
      res.redirect('/region')
    })
  })
})

router.get('/update/:regionId', secured, async (req, res) => {
  let user = req.user;
  let id = req.params.regionId;
  const region = await db.Region.findOne({where: {orgId: user.orgId, id: id}});
  res.render('region/update', {user, region, script: 'index', })
})

router.post('/update', secured, async (req, res) => {
  let user = req.user;
  console.log(req.body)
  let id = req.body.id;
  let name = req.body.name,
      description = req.body.description,
      email = req.body.email,
      regionId = req.body.regionId,
      headId = req.body.headId,
      assistantId = req.body.headAssistantId,
      address = req.body.address,
      lga = req.body.lga,
      state = req.body.state,
      country = req.body.country;

      let regionObj = {
        name,
        description,
        email,
        regionId,
        headId,
        assistantId,
        address,
        lga,
        state,
        country
      }

  let region = await db.Region.findOne({where: {id : id, orgId: user.orgId}});
console.log(region, "Region")
  try{
    if(region !== null){
      await region.update(regionObj);
    }
   console.log(region, "Updated Region")
  } catch(err){
    console.log("There was an error deleting the region. please try again.")
    req.flash('info', 'There was an error deleting the region. please try again.');
    return res.redirect('/region');
  }

  res.redirect('/region');

})

router.get('/api/all', secured, async (req, res) => {
  var user = req.user;
  var regions = await db.Region.findAll({where: {orgId: user.orgId}});
  res.json(regions);
})

module.exports = router;

Zerion Mini Shell 1.0