เพิ่มค้นหาจากวัน + เพิ่มการแสดงusername
This commit is contained in:
parent
3b607da42d
commit
6fab5b90f3
3 changed files with 45 additions and 18 deletions
|
|
@ -7,7 +7,7 @@ import { storeToRefs } from "pinia";
|
||||||
|
|
||||||
/** importStore*/
|
/** importStore*/
|
||||||
const storeData = useDataStore();
|
const storeData = useDataStore();
|
||||||
const { logData, size, searchAfter, systemName } = storeToRefs(storeData);
|
const { logData, size, searchAfter, systemName, date } = storeToRefs(storeData);
|
||||||
const { date2Thai } = useCounterMixin();
|
const { date2Thai } = useCounterMixin();
|
||||||
const columns = ref<QTableProps["columns"]>([
|
const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
|
|
@ -25,7 +25,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "username",
|
name: "username",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "username",
|
label: "ผู้ใช้",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "username",
|
field: "username",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
|
|
@ -36,7 +36,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "host",
|
name: "host",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "host",
|
label: "Host",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "host",
|
field: "host",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
|
|
@ -47,7 +47,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "endpoint",
|
name: "endpoint",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "endpoint",
|
label: "Endpoint",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "endpoint",
|
field: "endpoint",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
|
|
@ -58,7 +58,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "method",
|
name: "method",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "method",
|
label: "Method",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "method",
|
field: "method",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
|
|
@ -69,7 +69,7 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
{
|
{
|
||||||
name: "responseCode",
|
name: "responseCode",
|
||||||
align: "left",
|
align: "left",
|
||||||
label: "responseCode",
|
label: "Response Code",
|
||||||
sortable: true,
|
sortable: true,
|
||||||
field: "responseCode",
|
field: "responseCode",
|
||||||
headerStyle: "font-size: 14px",
|
headerStyle: "font-size: 14px",
|
||||||
|
|
@ -102,7 +102,6 @@ const columns = ref<QTableProps["columns"]>([
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const inputSearch = defineModel<string>("inputSearch");
|
const inputSearch = defineModel<string>("inputSearch");
|
||||||
const selectDate = ref<Date>(new Date());
|
|
||||||
const pagination = ref({
|
const pagination = ref({
|
||||||
page: 1,
|
page: 1,
|
||||||
rowsPerPage: 0,
|
rowsPerPage: 0,
|
||||||
|
|
@ -128,12 +127,28 @@ function handleScroll(event: any) {
|
||||||
search: inputSearch.value ?? undefined,
|
search: inputSearch.value ?? undefined,
|
||||||
systemName: systemName.value ?? undefined,
|
systemName: systemName.value ?? undefined,
|
||||||
searchAfter: searchAfter.value ?? undefined,
|
searchAfter: searchAfter.value ?? undefined,
|
||||||
|
date: date.value,
|
||||||
},
|
},
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
setTimeout(() => {}, 500);
|
setTimeout(() => {}, 500);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function selectedDate() {
|
||||||
|
logData.value = [];
|
||||||
|
searchAfter.value = undefined;
|
||||||
|
storeData.fetchLog(
|
||||||
|
{
|
||||||
|
size: size.value ?? undefined,
|
||||||
|
search: inputSearch.value ?? undefined,
|
||||||
|
systemName: systemName.value ?? undefined,
|
||||||
|
searchAfter: searchAfter.value ?? undefined,
|
||||||
|
date: date.value,
|
||||||
|
},
|
||||||
|
true
|
||||||
|
);
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
|
@ -141,11 +156,11 @@ function handleScroll(event: any) {
|
||||||
<div class="row q-pa-md">
|
<div class="row q-pa-md">
|
||||||
<datepicker
|
<datepicker
|
||||||
menu-class-name="modalfix"
|
menu-class-name="modalfix"
|
||||||
v-model="selectDate"
|
v-model="date"
|
||||||
:locale="'th'"
|
:locale="'th'"
|
||||||
autoApply
|
autoApply
|
||||||
:enableTimePicker="false"
|
:enableTimePicker="false"
|
||||||
@update:modelValue="console.log('date')"
|
@update:modelValue="selectedDate"
|
||||||
week-start="0"
|
week-start="0"
|
||||||
>
|
>
|
||||||
<template #year="{ year }">{{ year + 543 }}</template>
|
<template #year="{ year }">{{ year + 543 }}</template>
|
||||||
|
|
@ -156,7 +171,7 @@ function handleScroll(event: any) {
|
||||||
<q-input
|
<q-input
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
:model-value="date2Thai(selectDate)"
|
:model-value="date2Thai(date ?? new Date())"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
>
|
>
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
|
|
@ -240,10 +255,13 @@ function handleScroll(event: any) {
|
||||||
>
|
>
|
||||||
<q-td v-for="col in props.cols" :key="col.id">
|
<q-td v-for="col in props.cols" :key="col.id">
|
||||||
<div v-if="col.name === 'username'">
|
<div v-if="col.name === 'username'">
|
||||||
{{ props.row.user }}
|
<template v-if="props.row.userName && props.row.user">
|
||||||
<div class="text-grey" style="font-size: 65%">
|
{{ props.row.userName ?? "-" }}
|
||||||
{{ props.row.userId }}
|
<div class="text-grey" style="font-size: 65%">
|
||||||
</div>
|
{{ props.row.user ?? "-" }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template v-else> - </template>
|
||||||
</div>
|
</div>
|
||||||
<div v-else-if="col.name === 'method'">
|
<div v-else-if="col.name === 'method'">
|
||||||
<q-badge
|
<q-badge
|
||||||
|
|
@ -278,7 +296,7 @@ function handleScroll(event: any) {
|
||||||
{{ col.value ?? "-" }}
|
{{ col.value ?? "-" }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-else class="ellipsis" style="max-width: 15vw">
|
<div v-else class="ellipsis" style="max-width: 10vw">
|
||||||
{{ col.value === "" || col.value === null ? "-" : col.value }}
|
{{ col.value === "" || col.value === null ? "-" : col.value }}
|
||||||
<q-tooltip> {{ col.value }} </q-tooltip>
|
<q-tooltip> {{ col.value }} </q-tooltip>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -22,21 +22,28 @@ const {
|
||||||
export const useDataStore = defineStore("storeData", () => {
|
export const useDataStore = defineStore("storeData", () => {
|
||||||
const size = ref<number>(30);
|
const size = ref<number>(30);
|
||||||
const logData = ref<ResLog[]>([]);
|
const logData = ref<ResLog[]>([]);
|
||||||
const systemName = ref<string>();
|
const systemName = ref<string>("JWS-SOS");
|
||||||
const searchAfter = ref<number>();
|
const searchAfter = ref<number>();
|
||||||
|
const date = ref<Date>(new Date());
|
||||||
async function fetchLog(
|
async function fetchLog(
|
||||||
opts?: {
|
opts?: {
|
||||||
size?: number;
|
size?: number;
|
||||||
search?: string;
|
search?: string;
|
||||||
searchAfter?: number;
|
searchAfter?: number;
|
||||||
systemName?: string;
|
systemName?: string;
|
||||||
|
date?: Date;
|
||||||
},
|
},
|
||||||
isBottom?: boolean
|
isBottom?: boolean
|
||||||
) {
|
) {
|
||||||
const params = new URLSearchParams();
|
const params = new URLSearchParams();
|
||||||
|
|
||||||
for (const [k, v] of Object.entries(opts || {})) {
|
for (const [k, v] of Object.entries(opts || {})) {
|
||||||
v !== undefined && params.append(k, v.toString());
|
if (v !== undefined)
|
||||||
|
if (v instanceof Date) {
|
||||||
|
params.append(k, v.toISOString());
|
||||||
|
} else {
|
||||||
|
params.append(k, v.toString());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const query = params.toString();
|
const query = params.toString();
|
||||||
|
|
@ -67,6 +74,7 @@ export const useDataStore = defineStore("storeData", () => {
|
||||||
logData,
|
logData,
|
||||||
searchAfter,
|
searchAfter,
|
||||||
systemName,
|
systemName,
|
||||||
|
date,
|
||||||
fetchLog,
|
fetchLog,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ import { storeToRefs } from "pinia";
|
||||||
|
|
||||||
/** importStore*/
|
/** importStore*/
|
||||||
const storeData = useDataStore();
|
const storeData = useDataStore();
|
||||||
const { logData, size, searchAfter, systemName } = storeToRefs(storeData);
|
const { logData, size, searchAfter, systemName, date } = storeToRefs(storeData);
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
/** use*/
|
/** use*/
|
||||||
const title = ref<string>("");
|
const title = ref<string>("");
|
||||||
|
|
@ -113,6 +113,7 @@ onMounted(async () => {
|
||||||
await storeData.fetchLog({
|
await storeData.fetchLog({
|
||||||
size: size.value,
|
size: size.value,
|
||||||
systemName: systemName.value ?? undefined,
|
systemName: systemName.value ?? undefined,
|
||||||
|
date: date.value,
|
||||||
});
|
});
|
||||||
if (route.query.system) {
|
if (route.query.system) {
|
||||||
const a = menuList.value.find((v) => {
|
const a = menuList.value.find((v) => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue