%PDF- %PDF-
Direktori : /home/opti/workflow/src/routes/ |
Current File : /home/opti/workflow/src/routes/branch.js |
var express = require('express'); var router = express.Router(); var bcrypt = require('bcrypt') var formidable = require('formidable'); var fs = require('fs'); var path = require('path'); var con = require('../../config'); var secured = require('../middleware/login'); var db = require('../models'); router.get('/', secured, function(req, res, next) { var user = req.user; // user.password = null; // console.log(user) db.Branch.findAll({where:{orgId:user.orgId},include: [ { model: db.Region, as: 'region' }, { model: db.User, as: 'head' }, { model: db.User, as:'assistant' } ]}) .then(branches =>{ console.log(branches, "Branches") db.Region.findAll({where: {orgId: user.orgId}}).then(function(regions){ res.render('branch/branch', {title: 'Branches', user: user, regions, script: "branches",branches}); }) }) }); router.get('/add',secured, function(req, res, next) { var user = req.user; db.Region.findAll({where:{orgId:user.orgId}}) .then(regions =>{ res.render('branch/addBranch', {title: 'Branches', user: user, regions}); }) }); router.post('/add', secured, (req, res) => { let user = req.user, name = req.body.name, description = req.body.description, regionId = req.body.regionId, headId = req.body.headId, assistantId = req.body.assistantId, email = req.body.email; db.Branch.create({ orgId: user.orgId, name, description, regionId, headId, assistantId, email}) .then(function(region){ res.redirect('/branch') }) }); router.post('/delete', secured, (req, res, next) => { var user = req.user; var id = req.body.id; db.Branch.findOne({where:{orgId: user.orgId, id: id}}).then(function(branch){ branch.destroy().then(function(){ console.log("Branch destroyed"); req.flash('info', 'Branch removed'); res.redirect('/branch'); }).catch(function(){ console.log('Error removing branch') }) }) }) router.get('/update/:branchId', secured, async (req, res) => { let user = req.user; let id = req.params.branchId; const branch = await db.Branch.findOne({where: {orgId: user.orgId, id: id}}); const regions = await db.Region.findAll({where: {orgId: user.orgId}}); res.render('branch/update', {user, branch, regions, 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; let branchObj = { name, description, email, regionId, headId, assistantId } let branch = await db.Branch.findOne({where: {id : id, orgId: user.orgId}}); console.log(branch, "Branch") try{ if(branch !== null){ await branch.update(branchObj); } console.log(branch, "Updated branch") } 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('/branch'); } res.redirect('/branch'); }) router.get('/get/:regionId', secured, (req, res) => { var regionId = req.params.regionId; var user = req.user; db.Branch.findAll({where:{orgId: user.orgId, regionId: regionId }}) .then(function(branches){ res.json(branches); }) }) router.get('/api/all', secured, (req, res) => { var user = req.user; db.Branch.findAll({where:{orgId: user.orgId}}) .then(function(branches){ res.json(branches); }) }) function saveFile(file){ const name = `${Math.floor(Date.now() / 1000)}_${Math.round(Math.random() * 10000)}.${file.name.split('.').pop()}`; const dest = path.join(__dirname, '..', 'public', 'assets', 'images', 'users', name); const data = fs.readFileSync(file.path); fs.writeFileSync(dest, data); fs.unlinkSync(file.path); // uploadInfo.fileSize = fileUpload.size; // uploadInfo.fileType = fileUpload.type; return name; } module.exports = router;