diff --git a/server/src/utils/wifiUtils.js b/server/src/utils/wifiUtils.js index 5eecbce..4d92638 100644 --- a/server/src/utils/wifiUtils.js +++ b/server/src/utils/wifiUtils.js @@ -36,21 +36,22 @@ async function updateDBWithOnlineDevices() { device.mac ) + const user = device.user + ? { connect: { sAMAccountName: device.user } } + : undefined + try { await prisma.wifiDevice.upsert({ where: { mac: device.mac }, create: { ...device, + hostname: device.hostname || device.mac, firstSeen: device.firstSeen || new Date(), - user: device.user - ? { connect: { sAMAccountName: device.user } } - : undefined + user }, update: { ...device, - user: device.user - ? { connect: { sAMAccountName: device.user } } - : undefined + user } }) } catch (e) { diff --git a/web/src/mixins/Nav.js b/web/src/mixins/Nav.js index c3c3dae..2771dbc 100644 --- a/web/src/mixins/Nav.js +++ b/web/src/mixins/Nav.js @@ -40,6 +40,17 @@ export default { route: { name: 'user-presence' }, role: 'watcher' }, + { + title: 'Criar token', + icon: 'mdi-qrcode', + route: { name: 'create-token' }, + role: 'tokenCreator' + } + ] + }, + { + groupTitle: 'SERTI', + items: [ { title: 'Dispositivos WiFi', icon: 'mdi-cellphone-wireless', @@ -47,10 +58,10 @@ export default { role: 'superAdmin' }, { - title: 'Criar token', - icon: 'mdi-qrcode', - route: { name: 'create-token' }, - role: 'tokenCreator' + title: 'Usuários WiFi', + icon: 'mdi-account-voice', + route: { name: 'wifi-users' }, + role: 'superAdmin' }, { title: 'Inspecionar Usuário', diff --git a/web/src/views/WifiDevices.vue b/web/src/views/WifiDevices.vue index f010a42..a4791a5 100644 --- a/web/src/views/WifiDevices.vue +++ b/web/src/views/WifiDevices.vue @@ -31,16 +31,8 @@ -

- {{ item.user.displayName }} -

-

- {{ item.essid }} -

- {{ item.status }} + {{ item.mac }} - {{ item.ip }} - {{ item.controller }}
@@ -59,7 +51,7 @@ export default { name: 'WifiDevices', components: { Avatar }, data: () => ({ - itemsPerPage: 6, + itemsPerPage: 24, itemsPerPageArray: [15, 30, 60, 120], page: 1 }), @@ -68,7 +60,7 @@ export default { fetchPolicy: 'cache-and-network', query: gql` query { - wifiDevices(nonIdentifiedOnly: true) { + wifiDevices { user { displayName sAMAccountName