diff --git a/server/src/resolvers/Query/wifiDevices.js b/server/src/resolvers/Query/wifiDevices.js index e48a3ef..a413484 100644 --- a/server/src/resolvers/Query/wifiDevices.js +++ b/server/src/resolvers/Query/wifiDevices.js @@ -1,10 +1,12 @@ import prisma from '../../prisma' -export async function wifiDevices(parent, { take = 50, skip = 0, search, sortBy, sortDesc }) { +export async function wifiDevices(parent, { take = 50, skip = 0, search, sortBy, sortDesc, onlineOnly }) { const mode = 'insensitive' if (!search) search = '' + if (!onlineOnly) onlineOnly = undefined + const where = { OR: [ { hostname: { contains: search, mode } }, @@ -16,7 +18,8 @@ export async function wifiDevices(parent, { take = 50, skip = 0, search, sortBy, { controller: { contains: search, mode } }, { user: { displayName: { contains: search, mode } } }, { user: { sAMAccountName: { contains: search, mode } } } - ] + ], + status: onlineOnly && 'ONLINE' } return { diff --git a/server/src/typeDefs.js b/server/src/typeDefs.js index ddb1a01..9ae5d8d 100644 --- a/server/src/typeDefs.js +++ b/server/src/typeDefs.js @@ -37,7 +37,8 @@ const typeDefs = gql` take: Int skip: Int sortBy: WifiDevicesResultSortBy = "signalStrength" - sortDesc: Boolean = false + sortDesc: Boolean = false, + onlineOnly: Boolean = false ): WifiDevicesResult! @auth(roles: ["superAdmin"]) "Users that uses the Wi-Fi" diff --git a/web/src/views/WifiDevices.vue b/web/src/views/WifiDevices.vue index 3b87ff4..38e66c0 100644 --- a/web/src/views/WifiDevices.vue +++ b/web/src/views/WifiDevices.vue @@ -3,17 +3,25 @@ - + +