refactor: 修改权限规范.

This commit is contained in:
lijiahang
2023-12-27 15:09:23 +08:00
parent 6fdd29b3fe
commit fda6085cc8
18 changed files with 118 additions and 65 deletions

View File

@@ -33,7 +33,7 @@
<span>{{ item.address }}</span>
<span>{{ item.location }}</span>
<a-tag v-if="item.current" color="arcoblue">当前会话</a-tag>
<a-button v-else-if="hasPermission('infra:system-user:offline-session')"
<a-button v-else-if="!user || hasPermission('infra:system-user:management:offline-session')"
style="font-weight: 600;"
type="text"
size="mini"
@@ -76,7 +76,7 @@
import { isMobile } from '@/utils/is';
import { Message } from '@arco-design/web-vue';
import usePermission from '@/hooks/permission';
import { getUserSessionList } from '@/api/user/user';
import { getUserSessionList, offlineUserSession } from '@/api/user/user';
const props = defineProps({
user: Object as PropType<UserQueryResponse>,
@@ -91,9 +91,18 @@
const offline = async (item: UserSessionQueryResponse) => {
try {
setLoading(true);
await offlineCurrentUserSession({
timestamp: item.loginTime
});
if (props.user) {
// 下线其他用户
await offlineUserSession({
userId: props.user?.id,
timestamp: item.loginTime
});
} else {
// 下线当前用户
await offlineCurrentUserSession({
timestamp: item.loginTime
});
}
Message.success('操作成功');
item.visible = false;
} catch (e) {

View File

@@ -14,7 +14,7 @@
</a-tab-pane>
<!-- 登录日志 -->
<a-tab-pane key="loginHistory"
v-if="!user || hasPermission('infra:operator-log:query')"
v-if="!user || hasPermission('infra:system-user:login-history')"
title="登录日志">
<login-history :user="user" />
</a-tab-pane>
@@ -48,8 +48,6 @@
</script>
<script lang="ts" setup>
import UserBaseInfo from './components/user-base-info.vue';
import LoginHistory from './components/login-history.vue';
import UserSession from './components/user-session.vue';
import OperatorLogList from './components/operator-log-list.vue';
import { useRoute, useRouter } from 'vue-router';
@@ -57,6 +55,8 @@
import usePermission from '@/hooks/permission';
import { useUserStore } from '@/store';
import { getUser, UserQueryResponse } from '@/api/user/user';
import UserBaseInfo from './components/user-base-info.vue';
import LoginHistory from './components/login-history.vue';
const route = useRoute();
const router = useRouter();