Browse Source

perf(系统监控-在线用户): 在线用户功能支持租户模式

shizhongming 2 years ago
parent
commit
04994098b5
  1. 26
      src/modules/smart-system/views/onlineUser/OnlineUserListView.config.ts
  2. 3
      src/modules/smart-system/views/onlineUser/OnlineUserListView.vue
  3. 3
      src/modules/smart-system/views/onlineUser/lang/zh_CN.ts
  4. 13
      src/utils/dateUtil.ts

26
src/modules/smart-system/views/onlineUser/OnlineUserListView.config.ts

@ -3,6 +3,7 @@ import {
type SmartSearchFormSchema,
tableBooleanColumnClass,
} from '@/components/SmartTable';
import { formatDuration } from '@/utils/dateUtil';
export const getTableColumns = (): SmartColumn[] => {
return [
@ -72,6 +73,31 @@ export const getTableExpandColumns = (): SmartColumn[] => {
field: 'loginIp',
minWidth: 200,
},
{
title: '{system.views.onlineUser.title.timeout}',
field: 'timeout',
width: 150,
formatter({ row }) {
const timeout = row.timeout;
if (!timeout) {
return '';
}
return formatDuration(timeout);
},
},
{
title: '{system.views.onlineUser.title.tenantCode}',
field: 'tenantCode',
width: 150,
},
{
title: '{system.views.onlineUser.title.tenantName}',
field: 'tenantName',
width: 100,
formatter({ row }) {
return row.tenantShotName || row.tenantName;
},
},
{
...tableBooleanColumnClass('{system.views.onlineUser.title.bindIp}', 'bindIp'),
width: 120,

3
src/modules/smart-system/views/onlineUser/OnlineUserListView.vue

@ -103,11 +103,12 @@
columns: getTableExpandColumns(),
border: true,
stripe: true,
showOverflow: 'tooltip',
});
</script>
<style scoped lang="less">
.expand-wrapper {
padding: 15px;
padding: 10px 0;
}
</style>

3
src/modules/smart-system/views/onlineUser/lang/zh_CN.ts

@ -8,6 +8,9 @@ export default {
loginTime: '登录时间',
loginIp: '登录IP',
bindIp: '是否绑定IP',
timeout: '有效时长',
tenantCode: '租户编码',
tenantName: '租户名字',
},
button: {
offline: '下线',

13
src/utils/dateUtil.ts

@ -2,9 +2,13 @@
* Independent time operation tool to facilitate subsequent switch to dayjs
*/
import dayjs from 'dayjs';
import duration, { DurationUnitType } from 'dayjs/plugin/duration';
dayjs.extend(duration);
const DATE_TIME_FORMAT = 'YYYY-MM-DD HH:mm:ss';
const DATE_FORMAT = 'YYYY-MM-DD';
const TIME_FORMAT = 'HH小时mm分钟ss秒';
export function formatToDateTime(date?: dayjs.ConfigType, format = DATE_TIME_FORMAT): string {
return dayjs(date).format(format);
@ -15,3 +19,12 @@ export function formatToDate(date?: dayjs.ConfigType, format = DATE_FORMAT): str
}
export const dateUtil = dayjs;
/**
*
* @param duration
* @param format
*/
export const formatDuration = (duration: number, format: DurationUnitType = 'seconds') => {
return dayjs.duration(duration, format).format(TIME_FORMAT);
};

Loading…
Cancel
Save