diff --git a/server/src/lib/subnetInfo.js b/server/src/lib/subnetInfo.js index 371d51e..4222856 100644 --- a/server/src/lib/subnetInfo.js +++ b/server/src/lib/subnetInfo.js @@ -40,3 +40,15 @@ export function getSubnetInfo(ip) { return subnet } + +export function getSubnetInfoByShorName(shortName) { + const subnet = subNets.find(subnet => subnet.shortName == shortName) + + if (!subnet) + return { + shortName: '??', + name: 'Rede desconhecida' + } + + return subnet +} diff --git a/server/src/resolvers/User.js b/server/src/resolvers/User.js index b6fa61b..254c32d 100755 --- a/server/src/resolvers/User.js +++ b/server/src/resolvers/User.js @@ -1,3 +1,4 @@ +import { getSubnetInfoByShorName } from '../lib/subnetInfo' import prisma from '../prisma' const User = { @@ -62,6 +63,14 @@ const User = { return campus || '--' }, + campusFull: parent => { + const campus = parent.extensionAttribute1?.split('-')[0] + + if (!campus) return '--' + + return getSubnetInfoByShorName(campus).name + }, + onlineWifiDevicesCount: (parent, data, { auth }) => prisma.wifiDevice.count({ where: { diff --git a/server/src/typeDefs.js b/server/src/typeDefs.js index 71e7606..3109970 100644 --- a/server/src/typeDefs.js +++ b/server/src/typeDefs.js @@ -136,6 +136,7 @@ const typeDefs = gql` sharedFolders: [String!] sharedPrinters: [String!] campus: String + campusFull: String firstName: String