214 lines
5.0 KiB
JavaScript
214 lines
5.0 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
let RfidDevice = require('../models/devices');
|
|
var utils = require('../js/utils');
|
|
const Vehicle = require('../models/vehicle');
|
|
|
|
// RFID Device lista
|
|
router.get('/list', utils.ensureAuthenticated, function(req, res) {
|
|
var admin=false;
|
|
|
|
|
|
/* RfidDevice.find({} ,function(err, rfidDevices){
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else {
|
|
res.render('device_rfid_list', {
|
|
title: 'RFID Eszközök',
|
|
rfidDevices: rfidDevices,
|
|
|
|
// articles: workSign
|
|
});
|
|
}
|
|
});*/
|
|
RfidDevice.aggregate([
|
|
//{ $match: { bdTable: 'zzzz' } },
|
|
{ $lookup: {
|
|
from: 'vehicles',
|
|
let: { vehicle_id: '$vehicle_id' },
|
|
pipeline: [
|
|
{ $match: {
|
|
$expr: {
|
|
$eq: [
|
|
"$_id",
|
|
"$$vehicle_id"
|
|
]
|
|
}
|
|
} },
|
|
{
|
|
$project: {
|
|
name: 1,
|
|
vehicle_id: 1,
|
|
}
|
|
}
|
|
],
|
|
as: 'vehicle'
|
|
} },
|
|
]
|
|
,function(err, rfidDevices){
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else {
|
|
res.render('device_rfid_list', {
|
|
title: 'RFID Eszközök',
|
|
rfidDevices: rfidDevices,
|
|
|
|
// articles: workSign
|
|
});
|
|
}
|
|
});
|
|
|
|
|
|
});
|
|
// Járművek listázása
|
|
// RFID Device lista
|
|
router.get('/view', utils.ensureAuthenticated, function(req, res) {
|
|
var admin=false;
|
|
|
|
|
|
RfidDevice.find({} ,function(err, rfidDevices){
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else {
|
|
res.render('devicesview', {
|
|
title: 'Eszközök',
|
|
rfidDevices: rfidDevices,
|
|
|
|
// articles: workSign
|
|
});
|
|
}
|
|
});
|
|
|
|
});
|
|
// Edit RFID Device
|
|
// Add Devices ToRoute
|
|
router.get('/edit/:id', utils.ensureAuthenticated,function (req,res) {
|
|
RfidDevice.findById(req.params.id,function(err,rfidDev){
|
|
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else
|
|
{
|
|
Vehicle.find({},function(err,vehicle){
|
|
if(err)
|
|
{
|
|
console.log(err);
|
|
}else
|
|
{
|
|
res.render('device_rfid_edit', {
|
|
title: 'RFID Eszköz Módosítás',
|
|
user:req.user,
|
|
rfidDev:rfidDev,
|
|
vehicles:vehicle
|
|
})
|
|
}
|
|
});
|
|
}
|
|
|
|
})
|
|
|
|
});
|
|
// Add Devices ToRoute
|
|
router.post('/edit/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
let rfidDev={};
|
|
|
|
req.checkBody('Name','Eszköz mgnevezése kötelező!').notEmpty();
|
|
req.checkBody('Assignment','Eszköz hozzárendelés nincs megadva!').notEmpty();
|
|
req.checkBody('Imei','Eszköz IMEI szám kötelező!').notEmpty();
|
|
req.checkBody('Ccid','Eszköz CCID megadása kötelező!').notEmpty();
|
|
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
if(errors)
|
|
{
|
|
res.render('device_rfid_edit', {
|
|
title: 'RFID Eszköz Módosítása',
|
|
user:req.user,
|
|
rfidDev: req.params.id,
|
|
errors:errors
|
|
})
|
|
}
|
|
else
|
|
{
|
|
rfidDev.name=req.body.Name;
|
|
rfidDev.assignment = req.body.Assignment;
|
|
rfidDev.imei = req.body.Imei
|
|
rfidDev.ccid = req.body.Ccid;
|
|
rfidDev.state = req.body.selectedMode;
|
|
rfidDev.vehicle_id=req.body.selectedVehicle;
|
|
let query = {_id:req.params.id}
|
|
|
|
RfidDevice.updateOne(query, rfidDev, function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
// logging.logAppend("RFID Eszköz Módosítva.",req.user,rfidDev.id,RfidDevice.db.name,'RFIDEDIT');
|
|
req.flash('success','RFID Eszköz adatok sikeresen szerkesztve');
|
|
res.redirect('/devicesrfid/list');
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
|
|
// Add RFID Device
|
|
router.get('/new', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
res.render('device_rfid_new', {
|
|
title: 'RFID Eszköz Felvétele',
|
|
user:req.user
|
|
|
|
});
|
|
});
|
|
|
|
// Add Submit POST Route
|
|
router.post('/new', utils.ensureAuthenticated,function(req,res){
|
|
req.checkBody('Name','Eszköz mgnevezése kötelező!').notEmpty();
|
|
req.checkBody('Assignment','Eszköz hozzárendelés nincs megadva!').notEmpty();
|
|
req.checkBody('Imei','Eszköz IMEI szám kötelező!').notEmpty();
|
|
req.checkBody('Ccid','Eszköz CCID megadása kötelező!').notEmpty();
|
|
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
if(errors)
|
|
{
|
|
res.render('device_rfid_new', {
|
|
title: 'RFID Eszköz Felvétele',
|
|
user:req.user,
|
|
errors:errors
|
|
})
|
|
} else {
|
|
let rfidDev=new RfidDevice();
|
|
|
|
rfidDev.name=req.body.Name;
|
|
rfidDev.assignment = req.body.Assignment;
|
|
rfidDev.imei = req.body.Imei
|
|
rfidDev.ccid = req.body.Ccid;
|
|
rfidDev.state = req.body.selectedMode;
|
|
rfidDev.save(function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
req.flash('success','RFID eszköz sikeresen hozzáadva');
|
|
console.log('RFID eszköz sikeresen hozzáadva');
|
|
res.redirect('/devicesrfid/list');
|
|
}
|
|
});
|
|
|
|
}
|
|
});
|
|
|
|
module.exports = router; |