forked from verdnatura/hedera-web
Access log view migration
This commit is contained in:
parent
efa49fccdd
commit
48f00a9400
|
@ -7,8 +7,7 @@ import VnList from 'src/components/ui/VnList.vue';
|
|||
|
||||
import { formatDateTitle } from 'src/lib/filters.js';
|
||||
|
||||
const jApi = inject('jApi');
|
||||
|
||||
const api = inject('api');
|
||||
const route = useRoute();
|
||||
|
||||
const accessLogs = ref([]);
|
||||
|
@ -17,15 +16,32 @@ const user = ref(null);
|
|||
const getUser = async () => {
|
||||
try {
|
||||
if (!route.params.id) return;
|
||||
const [data] = await jApi.query(
|
||||
`SELECT u.id, u.name user, u.nickname, u.email, c.phone, r.name role
|
||||
FROM account.user u
|
||||
JOIN account.role r ON r.id = u.role
|
||||
LEFT JOIN vn.client c ON c.id = u.id
|
||||
WHERE u.id = #user`,
|
||||
{ user: route.params.id }
|
||||
);
|
||||
user.value = data;
|
||||
|
||||
const filter = {
|
||||
where: { id: route.params.id },
|
||||
include: [
|
||||
{
|
||||
relation: 'role',
|
||||
scope: {
|
||||
fields: ['name']
|
||||
}
|
||||
},
|
||||
{
|
||||
relation: 'worker',
|
||||
scope: {
|
||||
fields: ['phone']
|
||||
}
|
||||
}
|
||||
]
|
||||
};
|
||||
const { data } = await api.get('VnUsers/preview', {
|
||||
params: {
|
||||
filter: JSON.stringify(filter)
|
||||
}
|
||||
});
|
||||
|
||||
if (!data || !data.length) return;
|
||||
user.value = data[0];
|
||||
} catch (error) {
|
||||
console.error('Error getting user:', error);
|
||||
}
|
||||
|
@ -33,16 +49,12 @@ const getUser = async () => {
|
|||
|
||||
const getAccessLogs = async () => {
|
||||
try {
|
||||
accessLogs.value = await jApi.query(
|
||||
`SELECT u.stamp, a.platform, a.browser, a.version, a.javascript, a.cookies
|
||||
FROM visitUser u
|
||||
JOIN visitAccess c ON c.id = u.accessFk
|
||||
JOIN visitAgent a ON a.id = c.agentFk
|
||||
WHERE u.userFk = #user
|
||||
ORDER BY u.stamp DESC
|
||||
LIMIT 8`,
|
||||
{ user: route.params.id }
|
||||
);
|
||||
const { data } = await api.get('visitUsers/getUserVisits', {
|
||||
params: {
|
||||
userId: route.params.id
|
||||
}
|
||||
});
|
||||
accessLogs.value = data;
|
||||
} catch (error) {
|
||||
console.error('Error getting access logs:', error);
|
||||
}
|
||||
|
@ -68,9 +80,9 @@ onMounted(async () => {
|
|||
{{ user?.nickname }}
|
||||
</span>
|
||||
<span>#{{ user?.id }} - {{ user.user }} </span>
|
||||
<span>{{ user?.role }} </span>
|
||||
<span>{{ user?.role?.name }} </span>
|
||||
<span>{{ user?.email }} </span>
|
||||
<span>{{ user?.phone }} </span>
|
||||
<span>{{ user?.worker?.phone }} </span>
|
||||
</template>
|
||||
</CardList>
|
||||
<VnList :rows="accessLogs">
|
||||
|
|
Loading…
Reference in New Issue