Refactor
This commit is contained in:
parent
3b32c64bd1
commit
54d6596c81
|
@ -34,7 +34,11 @@ export async function wifiUsers(parent, { take = 100, skip = 0, search }) {
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
include: { wifiDevices: true },
|
include: {
|
||||||
|
wifiDevices: {
|
||||||
|
include: { accessPoint: true }
|
||||||
|
}
|
||||||
|
},
|
||||||
orderBy: [
|
orderBy: [
|
||||||
{ wifiDevices: { _count: 'desc' } },
|
{ wifiDevices: { _count: 'desc' } },
|
||||||
{ displayName: 'asc' }],
|
{ displayName: 'asc' }],
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
import prisma from '../prisma'
|
import prisma from '../prisma'
|
||||||
|
|
||||||
|
import { logError } from '../lib/logger'
|
||||||
|
|
||||||
const WifiDevice = {
|
const WifiDevice = {
|
||||||
lastSeen: parent => parent.lastSeen?.toISOString(),
|
lastSeen: parent => parent.lastSeen?.toISOString(),
|
||||||
|
|
||||||
|
@ -16,15 +18,22 @@ const WifiDevice = {
|
||||||
accessPoint: async parent => {
|
accessPoint: async parent => {
|
||||||
|
|
||||||
if (!parent.accessPointId && parent.apName) {
|
if (!parent.accessPointId && parent.apName) {
|
||||||
await prisma.wifiDevice.update({
|
try {
|
||||||
where: { id: parent.id }, data: {
|
await prisma.wifiDevice.update({
|
||||||
accessPoint: {
|
where: { id: parent.id }, data: {
|
||||||
connect: {
|
accessPoint: {
|
||||||
hostname: parent.apName
|
connect: {
|
||||||
|
hostname: parent.apName
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
})
|
} catch (e) {
|
||||||
|
logError({
|
||||||
|
tags: ['wifiDevice', 'accessPoint'],
|
||||||
|
message: `Failed to connect ${parent.mac} to access point ${parent.apName}`,
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return prisma.accessPoint.findUnique({ where: { id: parent.accessPointId } })
|
return prisma.accessPoint.findUnique({ where: { id: parent.accessPointId } })
|
||||||
|
|
|
@ -234,7 +234,7 @@ const typeDefs = gql`
|
||||||
uptime: String
|
uptime: String
|
||||||
apName: String
|
apName: String
|
||||||
status: Status
|
status: Status
|
||||||
accessPoint: AccessPoint!
|
accessPoint: AccessPoint
|
||||||
}
|
}
|
||||||
|
|
||||||
"A user that is on the Wi-Fi network reach"
|
"A user that is on the Wi-Fi network reach"
|
||||||
|
|
|
@ -129,7 +129,9 @@
|
||||||
</v-list-item-subtitle>
|
</v-list-item-subtitle>
|
||||||
</v-list-item-content>
|
</v-list-item-content>
|
||||||
</v-list-item>
|
</v-list-item>
|
||||||
<v-list-item v-if="device.accessPoint.local">
|
<v-list-item
|
||||||
|
v-if="device.accessPoint && device.accessPoint.local"
|
||||||
|
>
|
||||||
<v-list-item-action>
|
<v-list-item-action>
|
||||||
<v-icon>mdi-map-marker-radius</v-icon>
|
<v-icon>mdi-map-marker-radius</v-icon>
|
||||||
</v-list-item-action>
|
</v-list-item-action>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user