部分优化
This commit is contained in:
@@ -45,51 +45,51 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal_title_text">
|
||||
<div>{{ title.label }} User</div>
|
||||
<div>{{ title.label }} {{ $t('admin.User') }}</div>
|
||||
</div>
|
||||
<div class="allUserPoeration_center admin_page">
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeAllUser.UserName') }}: <span>*</span></span>
|
||||
<span>{{ $t('admin.UserName') }}: <span>*</span></span>
|
||||
<input
|
||||
v-model="userName"
|
||||
placeholder="Please enter user name"
|
||||
:placeholder="$t('admin.enterUserName')"
|
||||
type="text"
|
||||
style="width: 250px"
|
||||
/>
|
||||
</div>
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeAllUser.UserEmail') }}: <span>*</span></span>
|
||||
<span>{{ $t('admin.UserEmail') }}: <span>*</span></span>
|
||||
<input
|
||||
v-model="userEmail"
|
||||
placeholder="Please enter email"
|
||||
:placeholder="$t('admin.enterEmail')"
|
||||
type="text"
|
||||
style="width: 250px"
|
||||
/>
|
||||
</div>
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeAllUser.Password') }}: <span>*</span></span>
|
||||
<span>{{ $t('admin.Password') }}: <span>*</span></span>
|
||||
<input
|
||||
@focus="focus"
|
||||
@blur="blur"
|
||||
v-model="password"
|
||||
placeholder="Please enter password"
|
||||
:placeholder="$t('admin.enterPassword')"
|
||||
type="password"
|
||||
style="width: 250px"
|
||||
/>
|
||||
</div>
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeAllUser.MaximumCredits') }}:</span>
|
||||
<span>{{ $t('admin.MaximumCredits') }}:</span>
|
||||
<input
|
||||
v-model="credits"
|
||||
placeholder="Please enter credits"
|
||||
:placeholder="$t('admin.enterCredits')"
|
||||
type="text"
|
||||
style="width: 250px"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="allUserPoeration_btn admin_page">
|
||||
<div class="admin_search_item" @click="cancelDsign">{{ $t('adminSeAllUser.Close') }}</div>
|
||||
<div class="admin_search_item" @click="setOk">{{ $t('adminSeAllUser.OK') }}</div>
|
||||
<div class="admin_search_item" @click="cancelDsign">{{ $t('admin.Close') }}</div>
|
||||
<div class="admin_search_item" @click="setOk">{{ $t('admin.OK') }}</div>
|
||||
</div>
|
||||
</a-modal>
|
||||
<div class="mark_loading" v-show="loadingShow">
|
||||
@@ -212,7 +212,7 @@ export default defineComponent({
|
||||
if (operations.title?.value == "Add") {
|
||||
data = setAddData();
|
||||
if (!isEmail(data.userEmail)) {
|
||||
message.info(t('adminSeAllUser.jsContent1'));
|
||||
message.info(t('admin.jsContent1'));
|
||||
return;
|
||||
}
|
||||
if (
|
||||
@@ -220,7 +220,7 @@ export default defineComponent({
|
||||
!data.userEmail ||
|
||||
!data.userPassword
|
||||
)
|
||||
return message.warning(t('adminSeAllUser.jsContent2'));
|
||||
return message.warning(t('admin.jsContent2'));
|
||||
Https.axiosPost(Https.httpUrls.addOrUpdateSubAccount, data).then(
|
||||
(rv) => {
|
||||
if (rv) {
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<div class="admin_table_search">
|
||||
<div class="admin_state">
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeAllUser.CreateTime') }}:</span>
|
||||
<span>{{ $t('admin.CreateTime') }}:</span>
|
||||
<a-range-picker
|
||||
style="width: 230px"
|
||||
class="range_picker"
|
||||
@@ -45,14 +45,14 @@
|
||||
/>
|
||||
</div> -->
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeAllUser.UserName') }}:</span>
|
||||
<span>{{ $t('admin.UserName') }}:</span>
|
||||
<a-select
|
||||
v-model:value="ids"
|
||||
mode="multiple"
|
||||
style="width: 230px"
|
||||
:field-names="{ label: 'label', value: 'label' }"
|
||||
:filter-option="filterOption"
|
||||
placeholder="Select Item..."
|
||||
:placeholder="$t('admin.selectUserName')"
|
||||
max-tag-count="responsive"
|
||||
:options="allUserList"
|
||||
@keydown.enter="gettrialList"
|
||||
@@ -74,22 +74,22 @@
|
||||
</div>
|
||||
<div class="admin_search">
|
||||
<div class="admin_search_item" @click="searchHistoryList">
|
||||
{{ $t('adminSeAllUser.search') }}
|
||||
{{ $t('admin.search') }}
|
||||
</div>
|
||||
<div class="admin_search_item" @click="addhHistoryList">
|
||||
{{ $t('adminSeAllUser.add') }}
|
||||
{{ $t('admin.add') }}
|
||||
</div>
|
||||
<div class="admin_search_item" style="width: auto;padding: 0 2rem;" @click="downloadTemplate">
|
||||
{{ $t('adminSeAllUser.DownloadTemplate') }}
|
||||
{{ $t('admin.DownloadTemplate') }}
|
||||
</div>
|
||||
<div class="admin_search_item" style="width: auto;padding: 0 2rem;" @click="uploadTemplate">
|
||||
{{ $t('adminSeAllUser.UploadTemplate') }}
|
||||
{{ $t('admin.UploadTemplate') }}
|
||||
</div>
|
||||
<div class="admin_search_item" style="width: auto;padding: 0 2rem;" @click="ExportAccountData">
|
||||
{{ $t('adminSeAllUser.ExportAccountData') }}
|
||||
{{ $t('admin.ExportAccountData') }}
|
||||
</div>
|
||||
<div class="admin_search_item" style="width: auto;padding: 0 2rem;" @click="deleteList">
|
||||
{{ $t('adminSeAllUser.Delete') }}
|
||||
{{ $t('admin.Delete') }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="admin_state_list">
|
||||
@@ -97,19 +97,19 @@
|
||||
class="admin_state_list_item"
|
||||
@click="lastGeTrialList('year')"
|
||||
>
|
||||
{{ $t('adminSeAllUser.NearlyAYear') }}
|
||||
{{ $t('admin.NearlyAYear') }}
|
||||
</div>
|
||||
<div
|
||||
class="admin_state_list_item"
|
||||
@click="lastGeTrialList('month')"
|
||||
>
|
||||
{{ $t('adminSeAllUser.LastMonth') }}
|
||||
{{ $t('admin.LastMonth') }}
|
||||
</div>
|
||||
<div
|
||||
class="admin_state_list_item"
|
||||
@click="lastGeTrialList('week')"
|
||||
>
|
||||
{{ $t('adminSeAllUser.LastWeek') }}
|
||||
{{ $t('admin.LastWeek') }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -140,13 +140,13 @@
|
||||
@click="setAagree(record)"
|
||||
style="margin-right: 2rem;"
|
||||
>
|
||||
{{ $t('adminSeAllUser.Edit') }}
|
||||
{{ $t('admin.Edit') }}
|
||||
</div>
|
||||
<div
|
||||
class="operate_item"
|
||||
@click="deleteAagree(record)"
|
||||
>
|
||||
{{ $t('adminSeAllUser.Delete') }}
|
||||
{{ $t('admin.Delete') }}
|
||||
</div>
|
||||
<!-- <div
|
||||
class="operate_item"
|
||||
@@ -222,7 +222,7 @@ export default defineComponent({
|
||||
const columns: any = computed(() => {
|
||||
return [
|
||||
{
|
||||
title: t("adminSeAllUser.UserId"),
|
||||
title: t("admin.UserId"),
|
||||
align: "center",
|
||||
dataIndex: "id",
|
||||
key: "id",
|
||||
@@ -231,7 +231,7 @@ export default defineComponent({
|
||||
sorter: true,
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.Email"),
|
||||
title: t("admin.Email"),
|
||||
align: "center",
|
||||
dataIndex: "userEmail",
|
||||
key: "userEmail",
|
||||
@@ -239,7 +239,7 @@ export default defineComponent({
|
||||
ellipsis:true
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.UserName"),
|
||||
title: t("admin.UserName"),
|
||||
align: "center",
|
||||
dataIndex: "userName",
|
||||
key: "userName",
|
||||
@@ -254,15 +254,18 @@ export default defineComponent({
|
||||
// },
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.language"),
|
||||
title: t("admin.language"),
|
||||
align: "center",
|
||||
dataIndex: "language",
|
||||
key: "language",
|
||||
width:100,
|
||||
ellipsis:true,
|
||||
customRender: (record: any) => {
|
||||
return t(`admin.${record.text}`);
|
||||
},
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.CreateDate"),
|
||||
title: t("admin.CreateDate"),
|
||||
align: "center",
|
||||
dataIndex: "createDate",
|
||||
key: "createDate",
|
||||
@@ -270,7 +273,7 @@ export default defineComponent({
|
||||
sorter: true,
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.Credits"),
|
||||
title: t("admin.Credits"),
|
||||
align: "center",
|
||||
// width: 150,
|
||||
// minWidth: 100,
|
||||
@@ -282,7 +285,7 @@ export default defineComponent({
|
||||
sorter: true,
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.CreditsUsage"),
|
||||
title: t("admin.CreditsUsage"),
|
||||
align: "center",
|
||||
dataIndex: "creditsUsage",
|
||||
key: "creditsUsage",
|
||||
@@ -290,7 +293,7 @@ export default defineComponent({
|
||||
sorter: true,
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.CreditsUsageLimit"),
|
||||
title: t("admin.CreditsUsageLimit"),
|
||||
align: "center",
|
||||
dataIndex: "creditsUsageLimit",
|
||||
key: "creditsUsageLimit",
|
||||
@@ -298,7 +301,7 @@ export default defineComponent({
|
||||
sorter: true,
|
||||
},
|
||||
{
|
||||
title: t("adminSeAllUser.Operations"),
|
||||
title: t("admin.Operations"),
|
||||
key: "operation",
|
||||
width:120,
|
||||
align: "center",
|
||||
@@ -414,11 +417,11 @@ export default defineComponent({
|
||||
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
|
||||
};
|
||||
let addhHistoryList = () => {
|
||||
allUserPoerationsVue.value.init({value:'Add',label:t('adminSeAllUser.add')},'')
|
||||
allUserPoerationsVue.value.init({value:'Add',label:t('admin.add')},'')
|
||||
};
|
||||
let allUserPoerationsVue = ref()
|
||||
let setAagree = (data:any) =>{
|
||||
allUserPoerationsVue.value.init({value:'Edit',label:t('adminSeAllUser.Edit')},data)
|
||||
allUserPoerationsVue.value.init({value:'Edit',label:t('admin.Edit')},data)
|
||||
}
|
||||
const downloadTemplate = ()=>{
|
||||
Https.axiosGet(Https.httpUrls.subAccountImportExcelDownload,{responseType: 'blob',env:{binary:true}}).then((rv:any)=>{
|
||||
@@ -451,7 +454,6 @@ export default defineComponent({
|
||||
fileInput.onchange = (event:any) => {
|
||||
const file = event.target.files[0]; // 获取选择的文件
|
||||
if (file) {
|
||||
console.log('Selected file:', file);
|
||||
let param = new FormData();
|
||||
param.append('file',file);
|
||||
let config:any = {headers:{'Content-Type':'multipart/form-data','Accept':'*/*' }}
|
||||
@@ -467,7 +469,7 @@ export default defineComponent({
|
||||
const confirmDelete = ()=>{
|
||||
return new Promise<void>((resolve, reject) => {
|
||||
Modal.confirm({
|
||||
title: 'Are you sure you want to delete this item?',
|
||||
title: t('admin.jsDelete'),
|
||||
icon: createVNode(ExclamationCircleOutlined),
|
||||
okText: 'Yes',
|
||||
cancelText: 'No',
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<div class="admin_state">
|
||||
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeDesignDetail.StartDate') }}:</span>
|
||||
<span>{{ $t('admin.StartDate') }}:</span>
|
||||
<a-range-picker
|
||||
style="width:250px"
|
||||
class="range_picker"
|
||||
@@ -23,27 +23,27 @@
|
||||
</a-range-picker>
|
||||
</div>
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeDesignDetail.StartTime') }}:</span>
|
||||
<a-time-range-picker style="width:250px" class="range_picker" valueFormat="HH:mm:ss" v-model:value="rangeTimeValue" />
|
||||
<span>{{ $t('admin.StartTime') }}:</span>
|
||||
<a-time-range-picker style="width:250px" :placeholder="[$t('admin.startTime'), $t('admin.endTime'),]" class="range_picker" valueFormat="HH:mm:ss" v-model:value="rangeTimeValue" />
|
||||
</div>
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeDesignDetail.Email') }}:</span>
|
||||
<span>{{ $t('admin.Email') }}:</span>
|
||||
<input
|
||||
v-model="email"
|
||||
placeholder="Please enter email"
|
||||
:placeholder="$t('admin.enterEmail')"
|
||||
@keydown.enter="gettrialList"
|
||||
type="text"
|
||||
style="width: 250px"
|
||||
/>
|
||||
</div>
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('adminSeDesignDetail.UserName') }}:</span>
|
||||
<span>{{ $t('admin.UserName') }}:</span>
|
||||
<a-select
|
||||
v-model:value="ids"
|
||||
mode="multiple"
|
||||
style="width: 250px"
|
||||
:filter-option="filterOption"
|
||||
placeholder="Select Item..."
|
||||
:placeholder="$t('admin.selectUserName')"
|
||||
max-tag-count="responsive"
|
||||
:options="allUserList"
|
||||
@keydown.enter="gettrialList"
|
||||
@@ -51,7 +51,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="admin_search">
|
||||
<div class="admin_search_item" @click="searchHistoryList">Search</div>
|
||||
<div class="admin_search_item" @click="searchHistoryList">{{ $t('adminSeAllUser.search') }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -92,7 +92,7 @@ export default defineComponent({
|
||||
const columns: any = computed(() => {
|
||||
return [
|
||||
{
|
||||
title: t('adminSeDesignDetail.Email'),
|
||||
title: t('admin.Email'),
|
||||
align: "center",
|
||||
dataIndex: "userEmail",
|
||||
key: "userEmail",
|
||||
@@ -100,7 +100,7 @@ export default defineComponent({
|
||||
fixed: "left",
|
||||
},
|
||||
{
|
||||
title: t('adminSeDesignDetail.UserId'),
|
||||
title: t('admin.UserId'),
|
||||
align: "center",
|
||||
ellipsis: true,
|
||||
dataIndex: "accountId",
|
||||
@@ -108,7 +108,7 @@ export default defineComponent({
|
||||
width:100,
|
||||
},
|
||||
{
|
||||
title: t('adminSeDesignDetail.UserName'),
|
||||
title: t('admin.UserName'),
|
||||
align: "center",
|
||||
ellipsis: 200,
|
||||
dataIndex: "userName",
|
||||
@@ -123,7 +123,7 @@ export default defineComponent({
|
||||
// },
|
||||
},
|
||||
{
|
||||
title: t('adminSeDesignDetail.Frequency'),
|
||||
title: t('admin.Frequency'),
|
||||
align: "center",
|
||||
ellipsis: true,
|
||||
dataIndex: "designTimes",
|
||||
@@ -131,7 +131,7 @@ export default defineComponent({
|
||||
width:100,
|
||||
},
|
||||
{
|
||||
title: t('adminSeDesignDetail.CreateTime'),
|
||||
title: t('admin.CreateTime'),
|
||||
align: "center",
|
||||
ellipsis: true,
|
||||
// width: 150,
|
||||
@@ -143,7 +143,7 @@ export default defineComponent({
|
||||
width:200,
|
||||
},
|
||||
{
|
||||
title: t('adminSeDesignDetail.Credits'),
|
||||
title: t('admin.Credits'),
|
||||
align: "center",
|
||||
ellipsis: true,
|
||||
// width: 150,
|
||||
|
||||
232
src/component/Administrator/SE/recentActiveChart.vue
Normal file
232
src/component/Administrator/SE/recentActiveChart.vue
Normal file
@@ -0,0 +1,232 @@
|
||||
<template>
|
||||
<div class="recentActiveChart admin_page">
|
||||
<div class="admin_table_search">
|
||||
<div class="admin_state">
|
||||
|
||||
<div class="admin_state_item">
|
||||
<span>{{ $t('admin.StartTime') }}:</span>
|
||||
<a-range-picker
|
||||
style="width:280px"
|
||||
class="range_picker"
|
||||
v-model:value="rangePickerValue"
|
||||
:allowClear="false"
|
||||
: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>{{ $t('admin.UserName') }}:</span>
|
||||
<a-select
|
||||
v-model:value="userIdList"
|
||||
mode="multiple"
|
||||
style="width: 280px"
|
||||
:filter-option="filterOption"
|
||||
:placeholder="$t('admin.selectUserName')"
|
||||
max-tag-count="responsive"
|
||||
:options="dataList"
|
||||
></a-select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="admin_search">
|
||||
<div class="admin_search_item" @click="searchHistoryList">Search</div>
|
||||
</div>
|
||||
<div class="admin_state_list">
|
||||
<div
|
||||
class="admin_state_list_item"
|
||||
@click="lastGeTrialList('year')"
|
||||
>
|
||||
{{ $t('admin.NearlyAYear') }}
|
||||
</div>
|
||||
<div
|
||||
class="admin_state_list_item"
|
||||
@click="lastGeTrialList('month')"
|
||||
>
|
||||
{{ $t('admin.LastMonth') }}
|
||||
</div>
|
||||
<div
|
||||
class="admin_state_list_item"
|
||||
@click="lastGeTrialList('week')"
|
||||
>
|
||||
{{ $t('admin.LastWeek') }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="admin_table_content" ref="pageChartDom">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts">
|
||||
import { defineComponent, ref, createVNode, computed, reactive, toRefs, onMounted } from "vue";
|
||||
import { Https } from "@/tool/https";
|
||||
import { formatTime } from "@/tool/util";
|
||||
import * as echarts from 'echarts/core';
|
||||
import { TooltipComponent, LegendComponent } from 'echarts/components';
|
||||
import { PieChart } from 'echarts/charts';
|
||||
import { LabelLayout } from 'echarts/features';
|
||||
import { useStore } from "vuex";
|
||||
import { CanvasRenderer } from 'echarts/renderers';
|
||||
export default defineComponent({
|
||||
components: {
|
||||
},
|
||||
setup() {
|
||||
const store:any = useStore()
|
||||
let filter:any = reactive({
|
||||
dataList:computed(()=>{
|
||||
return store.state.adminPage.allUserList
|
||||
}),
|
||||
})
|
||||
|
||||
let filterData:any = reactive({
|
||||
rangePickerValue:[],
|
||||
userIdList:[]
|
||||
})
|
||||
//查询列表
|
||||
let searchHistoryList = ()=> {
|
||||
gettrialList();
|
||||
}
|
||||
//获取列表
|
||||
let gettrialList = async () =>{
|
||||
filter.tableLoading = true
|
||||
let startDate: any = filterData.rangePickerValue?.[0]
|
||||
? filterData.rangePickerValue[0]+' '+'00:00:00'
|
||||
: "";
|
||||
let endDate: any = filterData.rangePickerValue?.[1]
|
||||
? filterData.rangePickerValue[1]+' '+'23:59:59'
|
||||
: "";
|
||||
let data = {
|
||||
endTime:endDate,
|
||||
startTime:startDate,
|
||||
userIdList:filterData.userIdList.join(','),
|
||||
}
|
||||
Https.axiosGet(Https.httpUrls.getActiveUserFunc,{params:data}).then((rv: any) => {
|
||||
if (rv) {
|
||||
let data:any = []
|
||||
rv.names.forEach((item:any,index:number) => {
|
||||
let obj = {
|
||||
name : item,
|
||||
value:rv.values[index],
|
||||
}
|
||||
data.push(obj)
|
||||
});
|
||||
setEcharts(data)
|
||||
// this.workspaceItem.position = this.singleTypeList[0].label
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
let myChart:any
|
||||
let setEcharts = (data:any) =>{
|
||||
if (myChart) {
|
||||
myChart.setOption({
|
||||
series: [{
|
||||
data: data
|
||||
}]
|
||||
});
|
||||
}else{
|
||||
echarts.use([
|
||||
TooltipComponent,
|
||||
LegendComponent,
|
||||
PieChart,
|
||||
CanvasRenderer,
|
||||
LabelLayout
|
||||
]);
|
||||
var chartDom = pageChartDom.value;
|
||||
myChart = echarts.init(chartDom);
|
||||
var option;
|
||||
|
||||
option = {
|
||||
tooltip: {
|
||||
trigger: 'item'
|
||||
},
|
||||
legend: {
|
||||
top: '5%',
|
||||
left: 'center'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
type: 'pie',
|
||||
radius: ['40%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
|
||||
itemStyle: {
|
||||
borderRadius: 10
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
emphasis: {
|
||||
label: {
|
||||
show: true,
|
||||
fontSize: 30,
|
||||
fontWeight: 'bold'
|
||||
},
|
||||
},
|
||||
labelLine: {
|
||||
show: false
|
||||
},
|
||||
stillShowZeroSum:true,
|
||||
data: data
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
option && myChart.setOption(option);
|
||||
}
|
||||
|
||||
}
|
||||
let lastGeTrialList = (str:string)=>{
|
||||
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 = [formatTime(thirtyDaysAgoTimestamp,'YYYY-MM-DD'),formatTime(currentTimestamp,'YYYY-MM-DD')]
|
||||
gettrialList();
|
||||
}
|
||||
let pageChartDom:any = ref()
|
||||
let filterOption = (input:any, option:any)=>{
|
||||
// 使用 option.label 进行搜索
|
||||
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
|
||||
}
|
||||
onMounted(()=>{
|
||||
lastGeTrialList('month')
|
||||
})
|
||||
return {
|
||||
...toRefs(filter),
|
||||
...toRefs(filterData),
|
||||
searchHistoryList,
|
||||
gettrialList,
|
||||
pageChartDom,
|
||||
lastGeTrialList,
|
||||
filterOption,
|
||||
};
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
};
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
||||
},
|
||||
});
|
||||
</script>
|
||||
Reference in New Issue
Block a user