Files
trunk-server/backend/controllers/systems.js
2023-01-30 22:15:12 -05:00

52 lines
1.6 KiB
JavaScript

var mongoose = require("mongoose");
var User = require("../models/user");
var System = require("../models/system");
exports.get_systems = function (req, res) {
let fromDate = new Date(Date.now() - 60 * 60 * 24 * 30 * 1000);
System.find({lastActive: {$gte: fromDate}}).populate('userId', "screenName").
exec(function (err, results) {
if (err) {
console.error("Error - get_systems: " + err.message);
res.json({
success: false,
message: err
});
return;
}
var systemList = [];
for (var result in results) {
var clientCount = 0;
if (req.systemClients.hasOwnProperty(results[result].shortName)) {
clientCount = req.systemClients[results[result].shortName];
}
var system = {
name: results[result].name,
shortName: results[result].shortName,
systemType: results[result].systemType,
county: results[result].count,
country: results[result].country,
city: results[result].city,
state: results[result].state,
active: results[result].active,
lastActive: results[result].lastActive,
callAvg: results[result].callAvg,
description: results[result].description,
clientCount: clientCount
}
if (results[result].showScreenName && results[result].userId) {
system.screenName = results[result].userId.screenName
} else {
system.screenName = null;
}
systemList.push(system);
}
res.contentType('json');
res.send(JSON.stringify({
success: true,
systems: systemList
}));
});
}