Merge branch 'lichang' into lite
This commit is contained in:
@@ -5,13 +5,11 @@ import zhCN from 'ant-design-vue/es/locale/zh_CN';
|
|||||||
import enUS from 'ant-design-vue/es/locale/en_US';
|
import enUS from 'ant-design-vue/es/locale/en_US';
|
||||||
import { usePrefersColorScheme, viewTransitionTheme } from 'antdv-pro-layout';
|
import { usePrefersColorScheme, viewTransitionTheme } from 'antdv-pro-layout';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
import advancedFormat from 'dayjs/plugin/advancedFormat';
|
|
||||||
import useLayoutStore from '@/store/modules/layout';
|
import useLayoutStore from '@/store/modules/layout';
|
||||||
import useAppStore from '@/store/modules/app';
|
import useAppStore from '@/store/modules/app';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
const { t, currentLocale } = useI18n();
|
const { t, currentLocale } = useI18n();
|
||||||
const { themeConfig, initPrimaryColor, changeConf } = useLayoutStore();
|
const { themeConfig, initPrimaryColor, changeConf } = useLayoutStore();
|
||||||
dayjs.extend(advancedFormat);
|
|
||||||
// dayjs.locale('zh-cn'); // 默认中文
|
// dayjs.locale('zh-cn'); // 默认中文
|
||||||
let locale = ref(enUS); // 国际化初始中文
|
let locale = ref(enUS); // 国际化初始中文
|
||||||
|
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ import useAlarmStore from '@/store/modules/alarm';
|
|||||||
import { getServerTime } from '@/api';
|
import { getServerTime } from '@/api';
|
||||||
import { MENU_PATH_INLINE } from '@/constants/menu-constants';
|
import { MENU_PATH_INLINE } from '@/constants/menu-constants';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import { parseDateToStr } from '@/utils/date-utils';
|
import { getTimezoneOffset, parseDateUTCToStr } from '@/utils/date-utils';
|
||||||
import { parseUrlPath } from '@/plugins/file-static-url';
|
import { parseUrlPath } from '@/plugins/file-static-url';
|
||||||
const { proConfig, waterMarkContent } = useLayoutStore();
|
const { proConfig, waterMarkContent } = useLayoutStore();
|
||||||
const { t, currentLocale } = useI18n();
|
const { t, currentLocale } = useI18n();
|
||||||
@@ -196,6 +196,7 @@ onMounted(() => {
|
|||||||
// ==== 服务器时间显示 start
|
// ==== 服务器时间显示 start
|
||||||
let serverTimeInterval: any = null;
|
let serverTimeInterval: any = null;
|
||||||
let serverTime = 0;
|
let serverTime = 0;
|
||||||
|
let serverTimeZone = getTimezoneOffset();
|
||||||
|
|
||||||
// 获取服务器时间
|
// 获取服务器时间
|
||||||
function fnGetServerTime() {
|
function fnGetServerTime() {
|
||||||
@@ -204,12 +205,16 @@ function fnGetServerTime() {
|
|||||||
clearInterval(serverTimeInterval);
|
clearInterval(serverTimeInterval);
|
||||||
serverTimeInterval = null;
|
serverTimeInterval = null;
|
||||||
serverTime = res.data.timestamp;
|
serverTime = res.data.timestamp;
|
||||||
|
serverTimeZone = res.data.timezone;
|
||||||
// 用DOM直接修改
|
// 用DOM直接修改
|
||||||
const serverTimeDom = document.getElementById('serverTimeDom');
|
const serverTimeDom = document.getElementById('serverTimeDom');
|
||||||
serverTimeInterval = setInterval(() => {
|
serverTimeInterval = setInterval(() => {
|
||||||
serverTime += 1000;
|
serverTime += 1000;
|
||||||
if (serverTimeDom) {
|
if (serverTimeDom) {
|
||||||
serverTimeDom.innerText = parseDateToStr(serverTime);
|
serverTimeDom.innerText = parseDateUTCToStr(
|
||||||
|
serverTime,
|
||||||
|
serverTimeZone
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
clearInterval(serverTimeInterval);
|
clearInterval(serverTimeInterval);
|
||||||
serverTimeInterval = null;
|
serverTimeInterval = null;
|
||||||
|
|||||||
@@ -1,27 +1,19 @@
|
|||||||
// 依赖来源 https://github.com/iamkun/dayjs
|
// 依赖来源 https://github.com/iamkun/dayjs
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
|
import utc from 'dayjs/plugin/utc';
|
||||||
|
import timezone from 'dayjs/plugin/timezone';
|
||||||
|
dayjs.extend(utc);
|
||||||
|
dayjs.extend(timezone);
|
||||||
// 导入本地化语言并设为默认使用,只需要全局有引入就行
|
// 导入本地化语言并设为默认使用,只需要全局有引入就行
|
||||||
// import('dayjs/locale/zh-cn');
|
// import('dayjs/locale/zh-cn');
|
||||||
// dayjs.locale('zh-cn');
|
// dayjs.locale('zh-cn');
|
||||||
|
|
||||||
/**年 列如:2022 */
|
|
||||||
export const YYYY = 'YYYY';
|
|
||||||
|
|
||||||
/**年-月 列如:2022-12 */
|
|
||||||
export const YYYY_MM = 'YYYY-MM';
|
|
||||||
|
|
||||||
/**年-月-日 列如:2022-12-30 */
|
|
||||||
export const YYYY_MM_DD = 'YYYY-MM-DD';
|
|
||||||
|
|
||||||
/**年月日时分秒 列如:20221230010159 */
|
|
||||||
export const YYYYMMDDHHMMSS = 'YYYYMMDDHHmmss';
|
|
||||||
|
|
||||||
/**年-月-日 时:分:秒 列如:2022-12-30 01:01:59 */
|
/**年-月-日 时:分:秒 列如:2022-12-30 01:01:59 */
|
||||||
export const YYYY_MM_DD_HH_MM_SS = 'YYYY-MM-DD HH:mm:ss';
|
export const YYYY_MM_DD_HH_MM_SS = 'YYYY-MM-DD HH:mm:ss';
|
||||||
|
|
||||||
/**国际时间 列如:2022-12-30T01:01:59+08:00 */
|
/**国际时间 列如:2022-12-30T01:01:59+08:00 */
|
||||||
export const RFC3339 = 'YYYY-MM-DDTHH:mm:ssZ';
|
export const RFC3339 = 'YYYY-MM-DDTHH:mm:ssZ';
|
||||||
|
|
||||||
/**国际时间 列如:Thu, Nov 14 2024 10:19 GMT+08:00 */
|
/**国际时间 列如:Thu, Nov 14 2024 10:19 GMT+08:00 */
|
||||||
export const RFC822Z = 'ddd, MMM DD YYYY HH:mm [GMT]Z';
|
export const RFC822Z = 'ddd, MMM DD YYYY HH:mm [GMT]Z';
|
||||||
|
|
||||||
@@ -52,13 +44,34 @@ export function parseDateToStr(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 格式时间成日期路径
|
* 格式时间
|
||||||
*
|
* @param date 可转的Date对象
|
||||||
* 年/月 列如:2022/12
|
* @param offset 时间格式 默认 RFC3339
|
||||||
* @returns 时间格式字符串 YYYY/MM
|
* @returns 时间格式字符串
|
||||||
*/
|
*/
|
||||||
export function parseDatePath(date: number | Date = Date.now()): string {
|
export function parseDateUTCToStr(
|
||||||
return dayjs(date).format('YYYY/MM');
|
date: string | number | Date,
|
||||||
|
offset: string = '+0000'
|
||||||
|
): string {
|
||||||
|
// 将时间戳转换为 UTC 时间
|
||||||
|
const utcTime = dayjs.utc(date);
|
||||||
|
// 使用自定义时区偏移格式化时间
|
||||||
|
return utcTime.format(`YYYY-MM-DD HH:mm:ss [UTC${offset}]`);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取时区偏移量
|
||||||
|
* @returns +0800格式
|
||||||
|
*/
|
||||||
|
export function getTimezoneOffset(): string {
|
||||||
|
const offset = new Date().getTimezoneOffset();
|
||||||
|
const hours = Math.abs(Math.floor(offset / 60));
|
||||||
|
const minutes = Math.abs(offset % 60);
|
||||||
|
const sign = offset <= 0 ? '+' : '-';
|
||||||
|
return `${sign}${String(hours).padStart(2, '0')}${String(minutes).padStart(
|
||||||
|
2,
|
||||||
|
'0'
|
||||||
|
)}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import useTabsStore from '@/store/modules/tabs';
|
|||||||
import useDictStore from '@/store/modules/dict';
|
import useDictStore from '@/store/modules/dict';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const tabsStore = useTabsStore();
|
const tabsStore = useTabsStore();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
@@ -40,8 +41,8 @@ let dict: {
|
|||||||
sysCommonStatus: [],
|
sysCommonStatus: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
/**记录开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -54,9 +55,9 @@ let queryParams = reactive({
|
|||||||
/**执行状态 */
|
/**执行状态 */
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
/**记录开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**记录结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -68,8 +69,8 @@ function fnQueryReset() {
|
|||||||
if (jobId && jobId !== '0') {
|
if (jobId && jobId !== '0') {
|
||||||
queryParams = Object.assign(queryParams, {
|
queryParams = Object.assign(queryParams, {
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
@@ -85,7 +86,7 @@ function fnQueryReset() {
|
|||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -361,11 +362,17 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
// 时间范围
|
||||||
queryRangePicker.value = ['', ''];
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listJobLog(toRaw(queryParams)).then(res => {
|
listJobLog(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
@@ -475,12 +482,11 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="queryRangePicker"
|
v-model:value="queryRangePicker"
|
||||||
allow-clear
|
:bordered="true"
|
||||||
bordered
|
:allow-clear="true"
|
||||||
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|||||||
@@ -7,30 +7,29 @@ import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
|||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
import {
|
import {
|
||||||
YYYY_MM_DD_HH_MM_SS,
|
YYYY_MM_DD_HH_MM_SS,
|
||||||
parseDateToStr,
|
|
||||||
parseDateWithoutYear,
|
parseDateWithoutYear,
|
||||||
parseStrToDate,
|
parseStrToDate,
|
||||||
} from '@/utils/date-utils';
|
} from '@/utils/date-utils';
|
||||||
import { parseSizeFromKBs } from '@/utils/parse-utils';
|
import { parseSizeFromKBs } from '@/utils/parse-utils';
|
||||||
import dayjs, { Dayjs } from 'dayjs';
|
import dayjs, { type Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
|
|
||||||
/**开始结束时间类型 */
|
/**开始结束时间类型 */
|
||||||
type RangePickerType = {
|
type RangePickerType = {
|
||||||
placeholder: [string, string];
|
placeholder: [string, string];
|
||||||
ranges: Record<string, [Dayjs, Dayjs]>;
|
presets: { label: string; value: Dayjs[] }[] | undefined;
|
||||||
/**全局时间 */
|
/**全局时间 */
|
||||||
all: [string, string];
|
all: [Dayjs, Dayjs] | undefined;
|
||||||
/**平均负载 */
|
/**平均负载 */
|
||||||
load: [string, string];
|
load: [Dayjs, Dayjs] | undefined;
|
||||||
/**CPU */
|
/**CPU */
|
||||||
cpu: [string, string];
|
cpu: [Dayjs, Dayjs] | undefined;
|
||||||
/**内存 */
|
/**内存 */
|
||||||
memory: [string, string];
|
memory: [Dayjs, Dayjs] | undefined;
|
||||||
/**磁盘 */
|
/**磁盘 */
|
||||||
io: [string, string];
|
io: [Dayjs, Dayjs] | undefined;
|
||||||
/**网络 */
|
/**网络 */
|
||||||
network: [string, string];
|
network: [Dayjs, Dayjs] | undefined;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
@@ -39,42 +38,54 @@ let rangePicker = reactive<RangePickerType>({
|
|||||||
t('views.monitor.monitor.startTime'),
|
t('views.monitor.monitor.startTime'),
|
||||||
t('views.monitor.monitor.endTime'),
|
t('views.monitor.monitor.endTime'),
|
||||||
],
|
],
|
||||||
ranges: {
|
presets: [
|
||||||
[t('views.monitor.monitor.yesterday')]: [
|
{
|
||||||
dayjs().subtract(1, 'day').startOf('day'),
|
label: t('views.monitor.monitor.yesterday'),
|
||||||
dayjs().subtract(1, 'day').endOf('day'),
|
value: [
|
||||||
],
|
dayjs().subtract(1, 'day').startOf('day'),
|
||||||
[t('views.monitor.monitor.today')]: [dayjs().startOf('day'), dayjs()],
|
dayjs().subtract(1, 'day').endOf('day'),
|
||||||
[t('views.monitor.monitor.week')]: [
|
],
|
||||||
dayjs().startOf('week'),
|
},
|
||||||
dayjs().endOf('week'),
|
{
|
||||||
],
|
label: t('views.monitor.monitor.today'),
|
||||||
[t('views.monitor.monitor.month')]: [
|
value: [dayjs().startOf('day'), dayjs()],
|
||||||
dayjs().startOf('month'),
|
},
|
||||||
dayjs().endOf('month'),
|
{
|
||||||
],
|
label: t('views.monitor.monitor.week'),
|
||||||
},
|
value: [dayjs().startOf('week'), dayjs().endOf('week')],
|
||||||
all: ['', ''],
|
},
|
||||||
load: ['', ''],
|
{
|
||||||
cpu: ['', ''],
|
label: t('views.monitor.monitor.month'),
|
||||||
memory: ['', ''],
|
value: [dayjs().startOf('month'), dayjs().endOf('month')],
|
||||||
io: ['', ''],
|
},
|
||||||
network: ['', ''],
|
],
|
||||||
|
all: [dayjs().subtract(2, 'hour'), dayjs().endOf('hour')],
|
||||||
|
load: undefined,
|
||||||
|
cpu: undefined,
|
||||||
|
memory: undefined,
|
||||||
|
io: undefined,
|
||||||
|
network: undefined,
|
||||||
});
|
});
|
||||||
|
|
||||||
/**查询全部资源数据列表 */
|
/**查询全部资源数据列表 */
|
||||||
function fnGetList() {
|
function fnGetList() {
|
||||||
let beginTime = null;
|
let beginTime = null;
|
||||||
let endTime = null;
|
let endTime = null;
|
||||||
const dateNumber = rangePicker.all;
|
// 时间范围
|
||||||
if (dateNumber[0]) {
|
if (Array.isArray(rangePicker.all) && rangePicker.all.length > 0) {
|
||||||
beginTime = dateNumber[0];
|
beginTime = rangePicker.all[0].valueOf();
|
||||||
endTime = dateNumber[1];
|
endTime = rangePicker.all[1].valueOf();
|
||||||
|
// 设置初始时间段
|
||||||
|
const initRangePicker = rangePicker.all;
|
||||||
|
rangePicker.all = initRangePicker;
|
||||||
|
rangePicker.load = initRangePicker;
|
||||||
|
rangePicker.cpu = initRangePicker;
|
||||||
|
rangePicker.memory = initRangePicker;
|
||||||
|
rangePicker.io = initRangePicker;
|
||||||
|
rangePicker.network = initRangePicker;
|
||||||
} else {
|
} else {
|
||||||
const now = new Date();
|
beginTime = undefined;
|
||||||
now.setHours(0, 0, 0, 0);
|
endTime = undefined;
|
||||||
beginTime = `${now.getTime()}`;
|
|
||||||
endTime = `${new Date().getTime()}`;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
getLoad({
|
getLoad({
|
||||||
@@ -92,15 +103,6 @@ function fnGetList() {
|
|||||||
fnNetworkChart(res.data.network);
|
fnNetworkChart(res.data.network);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 设置初始时间段
|
|
||||||
const initRangePicker: [string, string] = [beginTime, endTime];
|
|
||||||
rangePicker.all = initRangePicker;
|
|
||||||
rangePicker.load = initRangePicker;
|
|
||||||
rangePicker.cpu = initRangePicker;
|
|
||||||
rangePicker.memory = initRangePicker;
|
|
||||||
rangePicker.io = initRangePicker;
|
|
||||||
rangePicker.network = initRangePicker;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**图表显示数据 */
|
/**图表显示数据 */
|
||||||
@@ -350,19 +352,14 @@ function fnNetworkChart(data: Record<string, any>[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**查询数据-平均负载/CPU/内存 */
|
/**查询数据-平均负载/CPU/内存 */
|
||||||
function fnGetQuery(
|
function fnGetQuery(type: 'load' | 'cpu' | 'memory', v: [Dayjs, Dayjs]) {
|
||||||
type: 'load' | 'cpu' | 'memory',
|
if (!Array.isArray(v) || v.length <= 0) {
|
||||||
dateString: [string, string]
|
|
||||||
) {
|
|
||||||
if (!dateString[0]) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const beginTime = parseStrToDate(dateString[0], YYYY_MM_DD_HH_MM_SS);
|
|
||||||
const endTime = parseStrToDate(dateString[1], YYYY_MM_DD_HH_MM_SS);
|
|
||||||
getLoad({
|
getLoad({
|
||||||
type: type,
|
type: type,
|
||||||
beginTime: beginTime.getTime(),
|
beginTime: v[0].valueOf(),
|
||||||
endTime: endTime.getTime(),
|
endTime: v[1].valueOf(),
|
||||||
neType: '#',
|
neType: '#',
|
||||||
neId: '#',
|
neId: '#',
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
@@ -381,16 +378,14 @@ function fnGetQuery(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**查询数据-IO */
|
/**查询数据-IO */
|
||||||
function fnGetQueryIO(v: any, dateString: [string, string]) {
|
function fnGetQueryIO(v: [string, string] | [Dayjs, Dayjs]) {
|
||||||
if (!v) {
|
if (!Array.isArray(v) || v.length <= 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const beginTime = parseStrToDate(dateString[0], YYYY_MM_DD_HH_MM_SS);
|
|
||||||
const endTime = parseStrToDate(dateString[1], YYYY_MM_DD_HH_MM_SS);
|
|
||||||
getLoad({
|
getLoad({
|
||||||
type: 'io',
|
type: 'io',
|
||||||
beginTime: beginTime.getTime(),
|
beginTime: v[0].valueOf(),
|
||||||
endTime: endTime.getTime(),
|
endTime: v[1].valueOf(),
|
||||||
neType: '#',
|
neType: '#',
|
||||||
neId: '#',
|
neId: '#',
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
@@ -401,16 +396,15 @@ function fnGetQueryIO(v: any, dateString: [string, string]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**查询数据-Network */
|
/**查询数据-Network */
|
||||||
function fnGetQueryNetwork(v: any, dateString: [string, string]) {
|
function fnGetQueryNetwork(v: [string, string] | [Dayjs, Dayjs]) {
|
||||||
if (!v) {
|
console.log(v);
|
||||||
|
if (!Array.isArray(v) || v.length <= 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const beginTime = parseStrToDate(dateString[0], YYYY_MM_DD_HH_MM_SS);
|
|
||||||
const endTime = parseStrToDate(dateString[1], YYYY_MM_DD_HH_MM_SS);
|
|
||||||
getLoad({
|
getLoad({
|
||||||
type: 'network',
|
type: 'network',
|
||||||
beginTime: beginTime.getTime(),
|
beginTime: v[0].valueOf(),
|
||||||
endTime: endTime.getTime(),
|
endTime: v[1].valueOf(),
|
||||||
neType: '#',
|
neType: '#',
|
||||||
neId: '#',
|
neId: '#',
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
@@ -441,14 +435,13 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="rangePicker.all"
|
v-model:value="rangePicker.all"
|
||||||
|
:placeholder="rangePicker.placeholder"
|
||||||
|
:presets="rangePicker.presets"
|
||||||
|
:bordered="true"
|
||||||
:allow-clear="false"
|
:allow-clear="false"
|
||||||
bordered
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
:placeholder="rangePicker.placeholder"
|
|
||||||
:ranges="rangePicker.ranges"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -479,10 +472,9 @@ onMounted(() => {
|
|||||||
bordered
|
bordered
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
:placeholder="rangePicker.placeholder"
|
:placeholder="rangePicker.placeholder"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
@change="(_:any, d:[string,string]) => fnGetQuery('load', d)"
|
@change="(v:any) => fnGetQuery('load', v)"
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -509,10 +501,9 @@ onMounted(() => {
|
|||||||
bordered
|
bordered
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
:placeholder="rangePicker.placeholder"
|
:placeholder="rangePicker.placeholder"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
@change="(_:any, d:[string,string]) => fnGetQuery('cpu', d)"
|
@change="(v:any) => fnGetQuery('cpu', v)"
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -537,10 +528,9 @@ onMounted(() => {
|
|||||||
bordered
|
bordered
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
:placeholder="rangePicker.placeholder"
|
:placeholder="rangePicker.placeholder"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
@change="(_:any, d:[string,string]) => fnGetQuery('memory', d)"
|
@change="(v:any) => fnGetQuery('memory', v)"
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -567,7 +557,6 @@ onMounted(() => {
|
|||||||
bordered
|
bordered
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
:placeholder="rangePicker.placeholder"
|
:placeholder="rangePicker.placeholder"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
@change="fnGetQueryIO"
|
@change="fnGetQueryIO"
|
||||||
@@ -595,10 +584,9 @@ onMounted(() => {
|
|||||||
bordered
|
bordered
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
:placeholder="rangePicker.placeholder"
|
:placeholder="rangePicker.placeholder"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
@change="fnGetQueryNetwork"
|
@ok="fnGetQueryNetwork"
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import { parseDateToStr } from '@/utils/date-utils';
|
|||||||
import useDictStore from '@/store/modules/dict';
|
import useDictStore from '@/store/modules/dict';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
|
|
||||||
@@ -32,7 +33,7 @@ let dict: {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -43,9 +44,9 @@ let queryParams = reactive({
|
|||||||
/**系统内置 */
|
/**系统内置 */
|
||||||
configType: undefined,
|
configType: undefined,
|
||||||
/**记录开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**记录结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -58,12 +59,12 @@ function fnQueryReset() {
|
|||||||
configName: '',
|
configName: '',
|
||||||
configKey: '',
|
configKey: '',
|
||||||
configType: undefined,
|
configType: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -439,13 +440,21 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
|
||||||
queryRangePicker.value = ['', ''];
|
// 时间范围
|
||||||
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listConfig(toRaw(queryParams)).then(res => {
|
listConfig(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
if (tableState.selectedRowKeys.length > 0) {
|
if (tableState.selectedRowKeys.length > 0) {
|
||||||
tableState.selectedRowKeys = [];
|
tableState.selectedRowKeys = [];
|
||||||
@@ -533,12 +542,11 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="queryRangePicker"
|
v-model:value="queryRangePicker"
|
||||||
allow-clear
|
:bordered="true"
|
||||||
bordered
|
:allow-clear="true"
|
||||||
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import useDictStore from '@/store/modules/dict';
|
|||||||
import { MENU_PATH_INLINE } from '@/constants/menu-constants';
|
import { MENU_PATH_INLINE } from '@/constants/menu-constants';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
@@ -37,7 +38,7 @@ let dict: {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -48,9 +49,9 @@ let queryParams = reactive({
|
|||||||
/**字典状态 */
|
/**字典状态 */
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
/**记录开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**记录结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -63,12 +64,12 @@ function fnQueryReset() {
|
|||||||
dictName: '',
|
dictName: '',
|
||||||
dictType: '',
|
dictType: '',
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -440,13 +441,19 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
// 时间范围
|
||||||
queryRangePicker.value = ['', ''];
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listType(toRaw(queryParams)).then(res => {
|
listType(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
if (tableState.selectedRowKeys.length > 0) {
|
if (tableState.selectedRowKeys.length > 0) {
|
||||||
tableState.selectedRowKeys = [];
|
tableState.selectedRowKeys = [];
|
||||||
@@ -531,12 +538,11 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="queryRangePicker"
|
v-model:value="queryRangePicker"
|
||||||
allow-clear
|
:bordered="true"
|
||||||
bordered
|
:allow-clear="true"
|
||||||
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -671,7 +677,10 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<template #bodyCell="{ column, record }">
|
<template #bodyCell="{ column, record }">
|
||||||
<template v-if="column.key === 'statusFlag'">
|
<template v-if="column.key === 'statusFlag'">
|
||||||
<DictTag :options="dict.sysNormalDisable" :value="record.statusFlag" />
|
<DictTag
|
||||||
|
:options="dict.sysNormalDisable"
|
||||||
|
:value="record.statusFlag"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="column.key === 'dictId'">
|
<template v-if="column.key === 'dictId'">
|
||||||
<a-space :size="8" align="center">
|
<a-space :size="8" align="center">
|
||||||
@@ -741,7 +750,10 @@ onMounted(() => {
|
|||||||
<a-form-item :label="t('views.system.dict.dictType')" name="dictType">
|
<a-form-item :label="t('views.system.dict.dictType')" name="dictType">
|
||||||
{{ modalState.from.dictType }}
|
{{ modalState.from.dictType }}
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item :label="t('views.system.dict.dictSatus')" name="statusFlag">
|
<a-form-item
|
||||||
|
:label="t('views.system.dict.dictSatus')"
|
||||||
|
name="statusFlag"
|
||||||
|
>
|
||||||
<DictTag
|
<DictTag
|
||||||
:options="dict.sysNormalDisable"
|
:options="dict.sysNormalDisable"
|
||||||
:value="modalState.from.statusFlag"
|
:value="modalState.from.statusFlag"
|
||||||
@@ -801,7 +813,10 @@ onMounted(() => {
|
|||||||
allow-clear
|
allow-clear
|
||||||
></a-input>
|
></a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item :label="t('views.system.dict.dictSatus')" name="statusFlag">
|
<a-form-item
|
||||||
|
:label="t('views.system.dict.dictSatus')"
|
||||||
|
name="statusFlag"
|
||||||
|
>
|
||||||
<a-select
|
<a-select
|
||||||
v-model:value="modalState.from.statusFlag"
|
v-model:value="modalState.from.statusFlag"
|
||||||
default-value="0"
|
default-value="0"
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import { parseDateToStr } from '@/utils/date-utils';
|
|||||||
import useDictStore from '@/store/modules/dict';
|
import useDictStore from '@/store/modules/dict';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
|
|
||||||
@@ -29,7 +30,7 @@ let dict: {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -39,10 +40,10 @@ let queryParams = reactive({
|
|||||||
userName: '',
|
userName: '',
|
||||||
/**登录状态 */
|
/**登录状态 */
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
/**开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -55,12 +56,12 @@ function fnQueryReset() {
|
|||||||
loginIp: '',
|
loginIp: '',
|
||||||
userName: '',
|
userName: '',
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -325,13 +326,21 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
|
||||||
queryRangePicker.value = ['', ''];
|
// 时间范围
|
||||||
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listSysLogLogin(toRaw(queryParams)).then(res => {
|
listSysLogLogin(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
if (tableState.selectedRowKeys.length > 0) {
|
if (tableState.selectedRowKeys.length > 0) {
|
||||||
tableState.selectedRowKeys = [];
|
tableState.selectedRowKeys = [];
|
||||||
@@ -424,12 +433,11 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="queryRangePicker"
|
v-model:value="queryRangePicker"
|
||||||
allow-clear
|
:bordered="true"
|
||||||
bordered
|
:allow-clear="true"
|
||||||
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -543,7 +551,10 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<template #bodyCell="{ column, record }">
|
<template #bodyCell="{ column, record }">
|
||||||
<template v-if="column.key === 'statusFlag'">
|
<template v-if="column.key === 'statusFlag'">
|
||||||
<DictTag :options="dict.sysCommonStatus" :value="record.statusFlag" />
|
<DictTag
|
||||||
|
:options="dict.sysCommonStatus"
|
||||||
|
:value="record.statusFlag"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
</a-table>
|
</a-table>
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import { parseDateToStr } from '@/utils/date-utils';
|
|||||||
import useDictStore from '@/store/modules/dict';
|
import useDictStore from '@/store/modules/dict';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
|
|
||||||
@@ -32,7 +33,7 @@ let dict: {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -44,10 +45,10 @@ let queryParams = reactive({
|
|||||||
businessType: undefined,
|
businessType: undefined,
|
||||||
/**操作状态 */
|
/**操作状态 */
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
/**开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -61,12 +62,12 @@ function fnQueryReset() {
|
|||||||
operaBy: '',
|
operaBy: '',
|
||||||
businessType: undefined,
|
businessType: undefined,
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -349,11 +350,17 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
// 时间范围
|
||||||
queryRangePicker.value = ['', ''];
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listSysLogOperate(toRaw(queryParams)).then(res => {
|
listSysLogOperate(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
@@ -456,12 +463,11 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="queryRangePicker"
|
v-model:value="queryRangePicker"
|
||||||
allow-clear
|
:bordered="true"
|
||||||
bordered
|
:allow-clear="true"
|
||||||
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ import { MENU_PATH_INLINE } from '@/constants/menu-constants';
|
|||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import useI18n from '@/hooks/useI18n';
|
import useI18n from '@/hooks/useI18n';
|
||||||
import useUserStore from '@/store/modules/user';
|
import useUserStore from '@/store/modules/user';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
@@ -49,7 +50,7 @@ let dict: {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -60,9 +61,9 @@ let queryParams = reactive({
|
|||||||
/**角色状态 */
|
/**角色状态 */
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
/**记录开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**记录结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -75,12 +76,12 @@ function fnQueryReset() {
|
|||||||
roleName: '',
|
roleName: '',
|
||||||
roleKey: '',
|
roleKey: '',
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -728,11 +729,17 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
// 时间范围
|
||||||
queryRangePicker.value = ['', ''];
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listRole(toRaw(queryParams)).then(res => {
|
listRole(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
@@ -816,12 +823,11 @@ onMounted(() => {
|
|||||||
>
|
>
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
v-model:value="queryRangePicker"
|
v-model:value="queryRangePicker"
|
||||||
allow-clear
|
:bordered="true"
|
||||||
bordered
|
:allow-clear="true"
|
||||||
|
style="width: 100%"
|
||||||
:show-time="{ format: 'HH:mm:ss' }"
|
:show-time="{ format: 'HH:mm:ss' }"
|
||||||
format="YYYY-MM-DD HH:mm:ss"
|
format="YYYY-MM-DD HH:mm:ss"
|
||||||
value-format="x"
|
|
||||||
style="width: 100%"
|
|
||||||
></a-range-picker>
|
></a-range-picker>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ import useUserStore from '@/store/modules/user';
|
|||||||
import { DataNode } from 'ant-design-vue/es/tree';
|
import { DataNode } from 'ant-design-vue/es/tree';
|
||||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||||
import { uploadFile } from '@/api/tool/file';
|
import { uploadFile } from '@/api/tool/file';
|
||||||
|
import type { Dayjs } from 'dayjs';
|
||||||
const { getDict } = useDictStore();
|
const { getDict } = useDictStore();
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
@@ -51,7 +52,7 @@ let dict: {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**开始结束时间 */
|
/**开始结束时间 */
|
||||||
let queryRangePicker = ref<[string, string]>(['', '']);
|
let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>(undefined);
|
||||||
|
|
||||||
/**查询参数 */
|
/**查询参数 */
|
||||||
let queryParams = reactive({
|
let queryParams = reactive({
|
||||||
@@ -64,9 +65,9 @@ let queryParams = reactive({
|
|||||||
/**用户状态 */
|
/**用户状态 */
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
/**记录开始时间 */
|
/**记录开始时间 */
|
||||||
beginTime: '',
|
beginTime: undefined as number | undefined,
|
||||||
/**记录结束时间 */
|
/**记录结束时间 */
|
||||||
endTime: '',
|
endTime: undefined as number | undefined,
|
||||||
/**当前页数 */
|
/**当前页数 */
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
/**每页条数 */
|
/**每页条数 */
|
||||||
@@ -80,12 +81,12 @@ function fnQueryReset() {
|
|||||||
phone: '',
|
phone: '',
|
||||||
deptId: undefined,
|
deptId: undefined,
|
||||||
statusFlag: undefined,
|
statusFlag: undefined,
|
||||||
beginTime: '',
|
beginTime: undefined,
|
||||||
endTime: '',
|
endTime: undefined,
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
});
|
});
|
||||||
queryRangePicker.value = ['', ''];
|
queryRangePicker.value = undefined;
|
||||||
tablePagination.current = 1;
|
tablePagination.current = 1;
|
||||||
tablePagination.pageSize = 20;
|
tablePagination.pageSize = 20;
|
||||||
fnGetList();
|
fnGetList();
|
||||||
@@ -747,11 +748,19 @@ function fnGetList(pageNum?: number) {
|
|||||||
if (pageNum) {
|
if (pageNum) {
|
||||||
queryParams.pageNum = pageNum;
|
queryParams.pageNum = pageNum;
|
||||||
}
|
}
|
||||||
if (!queryRangePicker.value) {
|
|
||||||
queryRangePicker.value = ['', ''];
|
// 时间范围
|
||||||
|
if (
|
||||||
|
Array.isArray(queryRangePicker.value) &&
|
||||||
|
queryRangePicker.value.length > 0
|
||||||
|
) {
|
||||||
|
queryParams.beginTime = queryRangePicker.value[0].valueOf();
|
||||||
|
queryParams.endTime = queryRangePicker.value[1].valueOf();
|
||||||
|
} else {
|
||||||
|
queryParams.beginTime = undefined;
|
||||||
|
queryParams.endTime = undefined;
|
||||||
}
|
}
|
||||||
queryParams.beginTime = queryRangePicker.value[0];
|
|
||||||
queryParams.endTime = queryRangePicker.value[1];
|
|
||||||
listUser(toRaw(queryParams)).then(res => {
|
listUser(toRaw(queryParams)).then(res => {
|
||||||
if (res.code === RESULT_CODE_SUCCESS) {
|
if (res.code === RESULT_CODE_SUCCESS) {
|
||||||
// 取消勾选
|
// 取消勾选
|
||||||
@@ -1061,7 +1070,10 @@ onMounted(() => {
|
|||||||
<template #icon><FormOutlined /></template>
|
<template #icon><FormOutlined /></template>
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
<a-tooltip placement="topLeft" v-if="record.userId != userStore.userId">
|
<a-tooltip
|
||||||
|
placement="topLeft"
|
||||||
|
v-if="record.userId != userStore.userId"
|
||||||
|
>
|
||||||
<template #title>{{ t('common.deleteText') }}</template>
|
<template #title>{{ t('common.deleteText') }}</template>
|
||||||
<a-button
|
<a-button
|
||||||
type="link"
|
type="link"
|
||||||
@@ -1071,7 +1083,10 @@ onMounted(() => {
|
|||||||
<template #icon><DeleteOutlined /></template>
|
<template #icon><DeleteOutlined /></template>
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
<a-tooltip placement="topLeft" v-if="record.userId != userStore.userId">
|
<a-tooltip
|
||||||
|
placement="topLeft"
|
||||||
|
v-if="record.userId != userStore.userId"
|
||||||
|
>
|
||||||
<template #title>
|
<template #title>
|
||||||
{{ t('views.system.user.resetPwd') }}
|
{{ t('views.system.user.resetPwd') }}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
Reference in New Issue
Block a user