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