2024-03-08 16:51:24 +08:00
|
|
|
<template>
|
2024-04-22 13:15:18 +08:00
|
|
|
<div class="admin_page">
|
2024-08-05 16:15:43 +08:00
|
|
|
<div class="admin_table_search">
|
|
|
|
|
<div class="admin_state">
|
|
|
|
|
<div class="admin_state_item">
|
|
|
|
|
<span>Create Time:</span>
|
|
|
|
|
<a-range-picker
|
|
|
|
|
style="width: 250px"
|
|
|
|
|
class="range_picker"
|
|
|
|
|
v-model:value="rangePickerValue"
|
|
|
|
|
:placeholder="[
|
|
|
|
|
$t('HistoryPage.StartDate'),
|
|
|
|
|
$t('HistoryPage.EndDate'),
|
|
|
|
|
]"
|
|
|
|
|
valueFormat="YYYY-MM-DD"
|
|
|
|
|
>
|
|
|
|
|
<template #suffixIcon>
|
|
|
|
|
<span
|
|
|
|
|
class="icon iconfont range_picker_icon icon-rili"
|
|
|
|
|
></span>
|
|
|
|
|
</template>
|
|
|
|
|
</a-range-picker>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div class="admin_state_item">
|
|
|
|
|
<span>Type:</span>
|
|
|
|
|
<a-select v-model:value="userType" size="large" style="width:250px" optionFilterProp="label" :options="state" placeholder="Please select" allowClear show-search></a-select>
|
|
|
|
|
</div> -->
|
|
|
|
|
<div class="admin_state_item">
|
|
|
|
|
<span>Country:</span>
|
|
|
|
|
<a-select
|
|
|
|
|
v-model:value="country"
|
|
|
|
|
:allowClear="true"
|
|
|
|
|
show-search
|
|
|
|
|
style="width: 250px"
|
|
|
|
|
:filter-option="filterOption"
|
|
|
|
|
placeholder="Select Item..."
|
|
|
|
|
max-tag-count="responsive"
|
|
|
|
|
:options="allCountry"
|
|
|
|
|
></a-select>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="admin_state_item">
|
|
|
|
|
<span>Email:</span>
|
|
|
|
|
<input
|
|
|
|
|
v-model="email"
|
|
|
|
|
placeholder="Please enter email"
|
|
|
|
|
@keydown.enter="gettrialList"
|
|
|
|
|
type="text"
|
|
|
|
|
style="width: 250px"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="admin_state_item">
|
|
|
|
|
<span>User Name:</span>
|
|
|
|
|
<a-select
|
|
|
|
|
v-model:value="ids"
|
|
|
|
|
mode="multiple"
|
|
|
|
|
style="width: 250px"
|
|
|
|
|
:filter-option="filterOption"
|
|
|
|
|
placeholder="Select Item..."
|
|
|
|
|
max-tag-count="responsive"
|
|
|
|
|
:options="allUserList"
|
|
|
|
|
@keydown.enter="gettrialList"
|
|
|
|
|
></a-select>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="admin_state_item">
|
|
|
|
|
<span>User Type:</span>
|
|
|
|
|
<a-select
|
|
|
|
|
v-model:value="systemUser"
|
|
|
|
|
size="large"
|
|
|
|
|
style="width: 250px"
|
|
|
|
|
optionFilterProp="label"
|
|
|
|
|
:options="state"
|
|
|
|
|
placeholder="Please select"
|
|
|
|
|
allowClear
|
|
|
|
|
show-search
|
|
|
|
|
></a-select>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="admin_search">
|
|
|
|
|
<div class="admin_search_item" @click="searchHistoryList">
|
|
|
|
|
Search
|
|
|
|
|
</div>
|
|
|
|
|
<div class="admin_search_item" @click="addhHistoryList">
|
|
|
|
|
Add
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="admin_state_list">
|
|
|
|
|
<div
|
|
|
|
|
class="admin_state_list_item"
|
|
|
|
|
@click="lastGeTrialList('year')"
|
|
|
|
|
>
|
2024-11-08 10:37:46 +08:00
|
|
|
Nearly a year
|
2024-08-05 16:15:43 +08:00
|
|
|
</div>
|
|
|
|
|
<div
|
|
|
|
|
class="admin_state_list_item"
|
|
|
|
|
@click="lastGeTrialList('month')"
|
|
|
|
|
>
|
|
|
|
|
Last month
|
|
|
|
|
</div>
|
|
|
|
|
<div
|
|
|
|
|
class="admin_state_list_item"
|
|
|
|
|
@click="lastGeTrialList('week')"
|
|
|
|
|
>
|
|
|
|
|
Last week
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2024-03-08 16:51:24 +08:00
|
|
|
|
2024-08-05 16:15:43 +08:00
|
|
|
<div class="admin_table_content" ref="historyTable">
|
|
|
|
|
<a-table
|
|
|
|
|
@resizeColumn="handleResizeColumn"
|
|
|
|
|
:loading="tableLoading"
|
|
|
|
|
:columns="columns"
|
|
|
|
|
:data-source="dataList"
|
|
|
|
|
:scroll="{ y: historyTableHeight }"
|
|
|
|
|
@change="changePage"
|
|
|
|
|
:showSorterTooltip='false'
|
|
|
|
|
:pagination="{
|
|
|
|
|
showSizeChanger: true,
|
|
|
|
|
current: currentPage,
|
|
|
|
|
pageSize: pageSize,
|
|
|
|
|
total: total,
|
|
|
|
|
showQuickJumper: true,
|
|
|
|
|
bordered: false,
|
|
|
|
|
}"
|
|
|
|
|
>
|
|
|
|
|
<template #bodyCell="{ column, text, record, index }">
|
|
|
|
|
<div class="operate_list" v-if="column?.Operations">
|
|
|
|
|
<div
|
|
|
|
|
class="operate_item"
|
|
|
|
|
@click="setAagree(record)"
|
|
|
|
|
>
|
|
|
|
|
Edit
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div
|
|
|
|
|
class="operate_item"
|
|
|
|
|
@click="deleteGroup(record, index)"
|
|
|
|
|
>
|
|
|
|
|
Delete
|
|
|
|
|
</div> -->
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
</a-table>
|
|
|
|
|
</div>
|
|
|
|
|
<allUserPoerationsVue ref="allUserPoerationsVue" @searchHistoryList="searchHistoryList"></allUserPoerationsVue>
|
2024-03-08 16:51:24 +08:00
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<script lang="ts">
|
2024-08-05 16:15:43 +08:00
|
|
|
import {
|
|
|
|
|
defineComponent,
|
|
|
|
|
ref,
|
|
|
|
|
createVNode,
|
|
|
|
|
computed,
|
|
|
|
|
reactive,
|
|
|
|
|
toRefs,
|
|
|
|
|
onMounted,
|
|
|
|
|
} from "vue";
|
|
|
|
|
import { formatTime } from "@/tool/util";
|
2024-08-22 14:49:46 +08:00
|
|
|
import { useStore } from "vuex";
|
2024-03-08 16:51:24 +08:00
|
|
|
import { Https } from "@/tool/https";
|
2024-08-05 16:15:43 +08:00
|
|
|
import allUserPoerationsVue from "./allUserPoerations.vue";
|
2024-03-08 16:51:24 +08:00
|
|
|
export default defineComponent({
|
2024-08-05 16:15:43 +08:00
|
|
|
components: {allUserPoerationsVue,},
|
2024-03-08 16:51:24 +08:00
|
|
|
setup() {
|
2024-08-22 14:49:46 +08:00
|
|
|
const store:any = useStore()
|
2024-08-05 16:15:43 +08:00
|
|
|
let filter: any = reactive({
|
|
|
|
|
dataList: [],
|
|
|
|
|
tableLoading: false,
|
2024-08-22 14:49:46 +08:00
|
|
|
allUserList: computed(()=>{
|
|
|
|
|
return store.state.adminPage.allUserList
|
|
|
|
|
}),
|
2024-08-05 16:15:43 +08:00
|
|
|
allCountry:[]
|
|
|
|
|
});
|
|
|
|
|
let filterData: any = reactive({
|
|
|
|
|
rangePickerValue: [],
|
|
|
|
|
currentPage: 1,
|
|
|
|
|
pageSize: 10,
|
|
|
|
|
total: 0,
|
|
|
|
|
country: "",
|
|
|
|
|
email: "",
|
|
|
|
|
userType: "",
|
|
|
|
|
ids: [],
|
|
|
|
|
occupation: "",
|
|
|
|
|
systemUser: "",
|
|
|
|
|
order: "", //'Ascending 升序 Descending 降序'
|
|
|
|
|
orderBy:'',
|
|
|
|
|
userName: "",
|
|
|
|
|
});
|
|
|
|
|
let state: any = ref([
|
|
|
|
|
{
|
|
|
|
|
label: "all",
|
|
|
|
|
value: "",
|
|
|
|
|
},
|
|
|
|
|
{
|
2024-08-06 10:05:50 +08:00
|
|
|
label:'visitor',
|
|
|
|
|
value:'0',
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:'yearly',
|
|
|
|
|
value:'1',
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:'monthly',
|
|
|
|
|
value:'2',
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
label:'trial',
|
|
|
|
|
value:'3',
|
|
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
{
|
|
|
|
|
label: "userInEvent",
|
|
|
|
|
value: "4",
|
|
|
|
|
},
|
|
|
|
|
]);
|
2024-03-08 16:51:24 +08:00
|
|
|
let renameData: any = ref({}); //修改名字选中的数据
|
2024-08-05 16:15:43 +08:00
|
|
|
const columns: any = computed(() => {
|
|
|
|
|
return [
|
2024-03-08 16:51:24 +08:00
|
|
|
{
|
2024-08-05 16:15:43 +08:00
|
|
|
title: "User Id",
|
2024-03-08 16:51:24 +08:00
|
|
|
align: "center",
|
2024-03-15 09:21:17 +08:00
|
|
|
dataIndex: "id",
|
|
|
|
|
key: "id",
|
2024-08-05 16:15:43 +08:00
|
|
|
width:100,
|
|
|
|
|
fixed: "left",
|
|
|
|
|
sorter: true,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: "Email",
|
|
|
|
|
align: "center",
|
|
|
|
|
dataIndex: "userEmail",
|
|
|
|
|
key: "userEmail",
|
|
|
|
|
width:200,
|
|
|
|
|
ellipsis:true
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
{
|
|
|
|
|
title: "User Name",
|
2024-03-08 16:51:24 +08:00
|
|
|
align: "center",
|
2024-03-15 09:21:17 +08:00
|
|
|
dataIndex: "userName",
|
|
|
|
|
key: "userName",
|
2024-08-05 16:15:43 +08:00
|
|
|
width:150,
|
|
|
|
|
ellipsis:true
|
|
|
|
|
// customRender: (record: any) => {
|
|
|
|
|
// let time = formatTime(
|
|
|
|
|
// record.text / 1000,
|
|
|
|
|
// "YYYY-MM-DD hh:mm:ss"
|
|
|
|
|
// );
|
|
|
|
|
// return time;
|
|
|
|
|
// },
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
{
|
|
|
|
|
title: "language",
|
2024-03-08 16:51:24 +08:00
|
|
|
align: "center",
|
2024-08-05 16:15:43 +08:00
|
|
|
dataIndex: "language",
|
|
|
|
|
key: "language",
|
|
|
|
|
width:100,
|
|
|
|
|
ellipsis:true,
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-03-15 09:21:17 +08:00
|
|
|
{
|
2024-08-05 16:15:43 +08:00
|
|
|
title: "Valid Start Time",
|
2024-03-08 16:51:24 +08:00
|
|
|
align: "center",
|
2024-08-06 11:41:57 +08:00
|
|
|
dataIndex: "validStartTime",
|
2024-08-05 16:15:43 +08:00
|
|
|
key: "validstartTime",
|
|
|
|
|
width:200,
|
2024-08-06 11:41:57 +08:00
|
|
|
ellipsis:true,
|
|
|
|
|
customRender: (record: any) => {
|
|
|
|
|
let time = ''
|
|
|
|
|
if(record.text){
|
|
|
|
|
time = formatTime(record.text / 1000, 'YYYY-MM-DD hh:mm:ss')
|
|
|
|
|
}
|
|
|
|
|
return time
|
|
|
|
|
},
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
{
|
|
|
|
|
title: "Valid End Time",
|
2024-03-08 16:51:24 +08:00
|
|
|
align: "center",
|
2024-08-06 11:41:57 +08:00
|
|
|
dataIndex: "validEndTime",
|
2024-08-05 16:15:43 +08:00
|
|
|
key: "validendTime",
|
|
|
|
|
width:200,
|
2024-08-06 11:41:57 +08:00
|
|
|
ellipsis:true,
|
|
|
|
|
customRender: (record: any) => {
|
|
|
|
|
let time = ''
|
|
|
|
|
if(record.text){
|
|
|
|
|
time = formatTime(record.text / 1000, 'YYYY-MM-DD hh:mm:ss')
|
|
|
|
|
}
|
|
|
|
|
return time
|
|
|
|
|
},
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
{
|
|
|
|
|
title: "Country",
|
2024-03-08 16:51:24 +08:00
|
|
|
align: "center",
|
2024-03-15 09:21:17 +08:00
|
|
|
dataIndex: "country",
|
|
|
|
|
key: "country",
|
2024-08-05 16:15:43 +08:00
|
|
|
width:100,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: "Create Date",
|
|
|
|
|
align: "center",
|
|
|
|
|
dataIndex: "createDate",
|
|
|
|
|
key: "createDate",
|
|
|
|
|
width:200,
|
|
|
|
|
sorter: true,
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
{
|
|
|
|
|
title: "Is Beginner",
|
|
|
|
|
align: "center",
|
|
|
|
|
dataIndex: "isBeginner",
|
|
|
|
|
key: "isBeginner",
|
|
|
|
|
width:80,
|
|
|
|
|
ellipsis:true,
|
|
|
|
|
customRender: (record: any) => {
|
|
|
|
|
let str;
|
|
|
|
|
if (record.value == 1) {
|
|
|
|
|
str = "Yes";
|
|
|
|
|
} else {
|
|
|
|
|
str = "No";
|
|
|
|
|
}
|
|
|
|
|
return str;
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: 'Machine Room Ip',
|
|
|
|
|
align: "center",
|
|
|
|
|
dataIndex: "browserIdentifiers",
|
|
|
|
|
key: "browserIdentifiers",
|
|
|
|
|
width:200,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: "Credits",
|
|
|
|
|
align: "center",
|
|
|
|
|
// width: 150,
|
|
|
|
|
// minWidth: 100,
|
|
|
|
|
// maxWidth: 200,
|
|
|
|
|
// resizable: true,
|
|
|
|
|
dataIndex: "credits",
|
|
|
|
|
key: "credits",
|
|
|
|
|
width:100,
|
|
|
|
|
sorter: true,
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: 'User Type',
|
|
|
|
|
align: "center",
|
|
|
|
|
// width: 150,
|
|
|
|
|
// minWidth: 100,
|
|
|
|
|
// maxWidth: 200,
|
|
|
|
|
// resizable: true,
|
|
|
|
|
dataIndex: "systemUser",
|
|
|
|
|
key: "systemUser",
|
|
|
|
|
width:100,
|
|
|
|
|
customRender: (record: any) => {
|
|
|
|
|
let str;
|
|
|
|
|
if (record.value == 0) {
|
|
|
|
|
str = "visitor";
|
|
|
|
|
} else if (record.value == 1) {
|
|
|
|
|
str = "yearly";
|
|
|
|
|
} else if (record.value == 2) {
|
|
|
|
|
str = "monthly";
|
|
|
|
|
} else if (record.value == 3) {
|
|
|
|
|
str = "trial";
|
|
|
|
|
} else if (record.value == 4) {
|
|
|
|
|
str = "userInEvent";
|
|
|
|
|
}
|
|
|
|
|
return str;
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: "Operations",
|
|
|
|
|
key: "operation",
|
|
|
|
|
width:120,
|
|
|
|
|
align: "center",
|
|
|
|
|
fixed: "right",
|
|
|
|
|
// slots:{customRender:'action'}
|
|
|
|
|
Operations: true,
|
|
|
|
|
},
|
|
|
|
|
];
|
|
|
|
|
});
|
|
|
|
|
//改变页码
|
|
|
|
|
let changePage = (e: any, filters:any, sorter:any) => {
|
|
|
|
|
filterData.currentPage = e.current;
|
|
|
|
|
filterData.pageSize = e.pageSize;
|
|
|
|
|
if(sorter.order){
|
|
|
|
|
if(sorter.columnKey == 'id'){
|
|
|
|
|
filterData.orderBy = 'id'
|
|
|
|
|
}else if(sorter.columnKey == "createDate"){
|
|
|
|
|
filterData.orderBy = 'time'
|
|
|
|
|
}else if(sorter.columnKey == "credits"){
|
|
|
|
|
filterData.orderBy = 'credits'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
filterData.order = sorter.order == "descend" ? "Descending" : "Ascending";
|
|
|
|
|
|
|
|
|
|
gettrialList();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//查询列表
|
|
|
|
|
let searchHistoryList = () => {
|
|
|
|
|
filterData.currentPage = 1;
|
|
|
|
|
gettrialList();
|
|
|
|
|
};
|
|
|
|
|
let clearHistoryList = () => {
|
|
|
|
|
filterData.rangePickerValue = [],
|
|
|
|
|
filterData.currentPage = 1,
|
|
|
|
|
filterData.pageSize = 10,
|
|
|
|
|
filterData.total = 0,
|
|
|
|
|
filterData.country = "",
|
|
|
|
|
filterData.email = "",
|
|
|
|
|
filterData.userType = "",
|
|
|
|
|
filterData.ids = [],
|
|
|
|
|
filterData.occupation = "",
|
|
|
|
|
filterData.order = "", //'Ascending 升序 Descending 降序'
|
|
|
|
|
filterData.orderBy = "", //'Ascending 升序 Descending 降序'
|
|
|
|
|
filterData.systemUser = "",
|
|
|
|
|
filterData.userName = "";
|
|
|
|
|
};
|
|
|
|
|
let setHistoryListData = () => {
|
|
|
|
|
let startDate: any = filterData.rangePickerValue?.[0]
|
|
|
|
|
? filterData.rangePickerValue[0] + " " + "00:00:00"
|
|
|
|
|
: "";
|
|
|
|
|
let endDate: any = filterData.rangePickerValue?.[1]
|
|
|
|
|
? filterData.rangePickerValue[1] + " " + "00:00:00"
|
|
|
|
|
: "";
|
|
|
|
|
let data = {
|
|
|
|
|
endTime: endDate,
|
|
|
|
|
startTime: startDate,
|
|
|
|
|
size: filterData.pageSize,
|
|
|
|
|
page: filterData.currentPage,
|
|
|
|
|
systemUser: filterData.systemUser,
|
|
|
|
|
country: filterData.country,
|
|
|
|
|
email: filterData.email,
|
|
|
|
|
userType: filterData.userType,
|
|
|
|
|
ids: filterData.ids,
|
|
|
|
|
occupation: filterData.occupation,
|
|
|
|
|
order: filterData.order,
|
|
|
|
|
orderBy: filterData.orderBy,
|
|
|
|
|
userName: filterData.userName,
|
|
|
|
|
};
|
|
|
|
|
return data;
|
|
|
|
|
};
|
|
|
|
|
//获取列表
|
|
|
|
|
let gettrialList = () => {
|
|
|
|
|
filter.tableLoading = true;
|
|
|
|
|
let data = setHistoryListData();
|
|
|
|
|
Https.axiosPost(Https.httpUrls.getUserInfo, data).then(
|
|
|
|
|
(rv: any) => {
|
|
|
|
|
if (rv) {
|
|
|
|
|
// this.dataList = rv
|
|
|
|
|
filter.dataList = rv.records;
|
|
|
|
|
filterData.total = rv.total;
|
|
|
|
|
filter.tableLoading = false;
|
|
|
|
|
|
|
|
|
|
// this.workspaceItem.position = this.singleTypeList[0].label
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
let lastGeTrialList = (str: string) => {
|
|
|
|
|
clearHistoryList();
|
|
|
|
|
let currentDate = new Date();
|
|
|
|
|
let currentTimestamp = Math.floor(currentDate.getTime() / 1000);
|
|
|
|
|
// 计算30天前的时间戳
|
|
|
|
|
let thirtyDaysAgoTimestamp;
|
|
|
|
|
if (str == "year") {
|
|
|
|
|
thirtyDaysAgoTimestamp = currentTimestamp - 360 * 24 * 60 * 60;
|
|
|
|
|
} else if (str == "month") {
|
|
|
|
|
thirtyDaysAgoTimestamp = currentTimestamp - 30 * 24 * 60 * 60;
|
|
|
|
|
} else if (str == "week") {
|
|
|
|
|
thirtyDaysAgoTimestamp = currentTimestamp - 7 * 24 * 60 * 60;
|
|
|
|
|
}
|
|
|
|
|
filterData.rangePickerValue[0] = formatTime(
|
|
|
|
|
thirtyDaysAgoTimestamp,
|
|
|
|
|
"YYYY-MM-DD"
|
|
|
|
|
);
|
|
|
|
|
gettrialList();
|
|
|
|
|
};
|
|
|
|
|
let filterOption = (input: any, option: any) => {
|
|
|
|
|
// 使用 option.label 进行搜索
|
|
|
|
|
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
|
|
|
|
|
};
|
|
|
|
|
let addhHistoryList = () => {
|
|
|
|
|
allUserPoerationsVue.value.init('Add','')
|
|
|
|
|
};
|
|
|
|
|
let allUserPoerationsVue = ref()
|
|
|
|
|
let setAagree = (data:any) =>{
|
|
|
|
|
allUserPoerationsVue.value.init('Edit',data)
|
|
|
|
|
}
|
|
|
|
|
onMounted(() => {
|
|
|
|
|
let allCountry: any = sessionStorage.getItem("allCountry");
|
|
|
|
|
if (allCountry) {
|
|
|
|
|
filter.allCountry = JSON.parse(allCountry);
|
|
|
|
|
}
|
|
|
|
|
gettrialList();
|
|
|
|
|
});
|
2024-03-08 16:51:24 +08:00
|
|
|
return {
|
2024-08-05 16:15:43 +08:00
|
|
|
...toRefs(filter),
|
|
|
|
|
...toRefs(filterData),
|
|
|
|
|
state,
|
2024-03-08 16:51:24 +08:00
|
|
|
columns,
|
|
|
|
|
renameData,
|
2024-08-05 16:15:43 +08:00
|
|
|
changePage,
|
|
|
|
|
searchHistoryList,
|
|
|
|
|
addhHistoryList,
|
|
|
|
|
lastGeTrialList,
|
|
|
|
|
gettrialList,
|
|
|
|
|
filterOption,
|
|
|
|
|
allUserPoerationsVue,
|
|
|
|
|
setAagree,
|
2024-03-08 16:51:24 +08:00
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
historyTableHeight: 0,
|
2024-08-05 16:15:43 +08:00
|
|
|
handleResizeColumn: (w: any, col: any) => {
|
|
|
|
|
col.width = w;
|
|
|
|
|
},
|
2024-03-08 16:51:24 +08:00
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
let historyTable: any = this.$refs.historyTable;
|
2024-04-22 13:15:18 +08:00
|
|
|
this.historyTableHeight = historyTable.clientHeight - 200;
|
2024-03-08 16:51:24 +08:00
|
|
|
},
|
2024-08-05 16:15:43 +08:00
|
|
|
methods: {},
|
2024-03-08 16:51:24 +08:00
|
|
|
});
|
|
|
|
|
</script>
|
2024-08-05 16:15:43 +08:00
|
|
|
<style lang="less" scoped>
|
|
|
|
|
.admin_page .admin_table_search .admin_state {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-wrap: wrap;
|
2024-03-08 16:51:24 +08:00
|
|
|
}
|
|
|
|
|
</style>
|