|
@@ -26,7 +26,7 @@ const product = ref('')
|
|
|
const size = ref(5)
|
|
|
const memberId = ref('')
|
|
|
const tag = ref('invited')
|
|
|
-const tagSecond = ref('all')
|
|
|
+const tagSecond = ref('all')
|
|
|
const userList = ref([])
|
|
|
const directoryEmail = ref('')
|
|
|
const directoryMemberId = ref('')
|
|
@@ -86,14 +86,14 @@ const getDirectoryUser = async () => {
|
|
|
// 获取删除目录用户列表
|
|
|
const getDeleteDirectoryUser = async () => {
|
|
|
const { data } = await get('/pdf-tech/vppRTeamMemberRole/pageForSSOMember?page=' +
|
|
|
- currentPage.value +
|
|
|
- '&pageSize=' +
|
|
|
- size.value +
|
|
|
- '&status=0' +
|
|
|
- '&queryString=' +
|
|
|
- queryString.value +
|
|
|
- '&domain=' +
|
|
|
- domain.value)
|
|
|
+ currentPage.value +
|
|
|
+ '&pageSize=' +
|
|
|
+ size.value +
|
|
|
+ '&status=0' +
|
|
|
+ '&queryString=' +
|
|
|
+ queryString.value +
|
|
|
+ '&domain=' +
|
|
|
+ domain.value)
|
|
|
loading.value = false
|
|
|
deleteDirectoryData.value = data.result.list
|
|
|
deleteDirectoryTotal.value = data.result.total
|
|
@@ -149,12 +149,18 @@ const handleCurrentChange = (val) => {
|
|
|
}
|
|
|
// 获取团队管理列表
|
|
|
const getTeamList = () => {
|
|
|
- get('/pdf-tech/vppTeam/getManageTeamList', {
|
|
|
- teamId: '',
|
|
|
- keyword: ''
|
|
|
- }).then((res) => {
|
|
|
+ // get('/pdf-tech/vppTeam/getManageTeamList', {
|
|
|
+ // teamId: '',
|
|
|
+ // keyword: ''
|
|
|
+ // }).then((res) => {
|
|
|
+ // if (res.data.code === 200) {
|
|
|
+ // teamList.value = res.data.result.list
|
|
|
+ // }
|
|
|
+ // })
|
|
|
+ //获取团队列表
|
|
|
+ get('/pdf-tech/vppTeam/listWithAdmin').then((res) => {
|
|
|
if (res.data.code === 200) {
|
|
|
- teamList.value = res.data.result.list
|
|
|
+ teamList.value = res.data.result
|
|
|
}
|
|
|
})
|
|
|
}
|
|
@@ -169,34 +175,34 @@ const getManageMemberList = () => {
|
|
|
// 初始化表格
|
|
|
tableData.value = []
|
|
|
get('/pdf-tech/vppRTeamMemberRole/pageForMember?page=' +
|
|
|
- currentPage.value +
|
|
|
- '&pageSize=' +
|
|
|
- size.value +
|
|
|
- '&teamId=' +
|
|
|
- teamId.value +
|
|
|
- '&status=' +
|
|
|
- status.value +
|
|
|
- '&queryString=' +
|
|
|
- queryString.value +
|
|
|
- '&productCode=' +
|
|
|
- product.value).then((res) => {
|
|
|
- let data = res.data.result.list
|
|
|
- data = productListNameMapping(data)
|
|
|
- for (let i = 0; i < data.length; i++) {
|
|
|
- if (data[i].validFlag === '0') {
|
|
|
- data[i].validFlag = 'Deleted'
|
|
|
- } else if (data[i].validFlag === '1') {
|
|
|
- data[i].validFlag = 'Joined'
|
|
|
- } else {
|
|
|
- data[i].validFlag = 'Invited'
|
|
|
+ currentPage.value +
|
|
|
+ '&pageSize=' +
|
|
|
+ size.value +
|
|
|
+ '&teamId=' +
|
|
|
+ teamId.value +
|
|
|
+ '&status=' +
|
|
|
+ status.value +
|
|
|
+ '&queryString=' +
|
|
|
+ queryString.value +
|
|
|
+ '&productCode=' +
|
|
|
+ product.value).then((res) => {
|
|
|
+ let data = res.data.result.list
|
|
|
+ data = productListNameMapping(data)
|
|
|
+ for (let i = 0; i < data.length; i++) {
|
|
|
+ if (data[i].validFlag === '0') {
|
|
|
+ data[i].validFlag = 'Deleted'
|
|
|
+ } else if (data[i].validFlag === '1') {
|
|
|
+ data[i].validFlag = 'Joined'
|
|
|
+ } else {
|
|
|
+ data[i].validFlag = 'Invited'
|
|
|
+ }
|
|
|
+ data[i].productNames = res.data.result.list[i].productNames
|
|
|
+ ?.replace(/,/g, ',|')
|
|
|
+ .split('|')
|
|
|
}
|
|
|
- data[i].productNames = res.data.result.list[i].productNames
|
|
|
- ?.replace(/,/g, ',|')
|
|
|
- .split('|')
|
|
|
- }
|
|
|
- tableData.value = data
|
|
|
- total.value = res.data.result.total
|
|
|
- })
|
|
|
+ tableData.value = data
|
|
|
+ total.value = res.data.result.total
|
|
|
+ })
|
|
|
}
|
|
|
// 团队成员列表导出
|
|
|
const exportManageMemberList = () => {
|
|
@@ -447,8 +453,7 @@ const handleDownload = () => {
|
|
|
<div>
|
|
|
<h1 class="mb-16px">Manage Member</h1>
|
|
|
<div class="flex">
|
|
|
- <span
|
|
|
- class="flex justify-center bg-[#C6C9CC] rounded-t-8px items-center font-bold w-200px h-32px cursor-pointer"
|
|
|
+ <span class="flex justify-center bg-[#C6C9CC] rounded-t-8px items-center font-bold w-200px h-32px cursor-pointer"
|
|
|
@click="changeTag('directory')" :class="tag === 'directory' && 'active'">Directory Users</span>
|
|
|
<span
|
|
|
class="flex justify-center bg-[#C6C9CC] rounded-t-8px items-center font-bold w-200px h-32px cursor-pointer ml-8px"
|
|
@@ -461,10 +466,13 @@ const handleDownload = () => {
|
|
|
<a class="w-28px h-28px border-1 border-[#D9D9D9] rounded-4px bg-[#F9FAFB] flex justify-center items-center mr-12px cursor-pointer relative"
|
|
|
@click="exportManageMemberList">
|
|
|
<img src="@/assets/images/download.svg" alt="download" />
|
|
|
- <div class="hidden absolute w-110px bg-[#373A47] rounded-4px px-8px py-2px text-14px leading-20px text-white top-33px z-3 left-[-40px]">Download data</div>
|
|
|
+ <div
|
|
|
+ class="hidden absolute w-110px bg-[#373A47] rounded-4px px-8px py-2px text-14px leading-20px text-white top-33px z-3 left-[-40px]">
|
|
|
+ Download data</div>
|
|
|
</a>
|
|
|
<router-link :to="{ name: 'AddManageMember' }">
|
|
|
- <div class="h-28px px-10px py-4px bg-[#1460F3] rounded-4px text-14px leading-20px font-400 text-[#fff] cursor-pointer hover:opacity-80">
|
|
|
+ <div
|
|
|
+ class="h-28px px-10px py-4px bg-[#1460F3] rounded-4px text-14px leading-20px font-400 text-[#fff] cursor-pointer hover:opacity-80">
|
|
|
Add Member
|
|
|
</div>
|
|
|
</router-link>
|
|
@@ -478,19 +486,22 @@ const handleDownload = () => {
|
|
|
{{ item.name }}
|
|
|
</option>
|
|
|
</select>
|
|
|
- <select name="status" class="min-w-100px mr-16px" v-model="status" :class="{ '!text-[#232A40]': status !== '' }">
|
|
|
+ <select name="status" class="min-w-100px mr-16px" v-model="status"
|
|
|
+ :class="{ '!text-[#232A40]': status !== '' }">
|
|
|
<option value="" selected>Status</option>
|
|
|
<option value="1">Joined</option>
|
|
|
<option value="0">Deleted</option>
|
|
|
</select>
|
|
|
- <select name="Assigned Product" class="min-w-100px mr-16px" v-model="product" :class="{ '!text-[#232A40]': product !== '' }">
|
|
|
+ <select name="Assigned Product" class="min-w-100px mr-16px" v-model="product"
|
|
|
+ :class="{ '!text-[#232A40]': product !== '' }">
|
|
|
<option value="" selected>Assigned Product</option>
|
|
|
<option v-for="item in productList" :key="item.value" :value="item.code">
|
|
|
{{ item.name }}
|
|
|
</option>
|
|
|
</select>
|
|
|
<div class="relative mr-16px">
|
|
|
- <el-input v-model="queryString" size="mini" clearable class="!w-316px input-with-select" placeholder="Search Member Name/Email">
|
|
|
+ <el-input v-model="queryString" size="mini" clearable class="!w-316px input-with-select"
|
|
|
+ placeholder="Search Member Name/Email">
|
|
|
</el-input>
|
|
|
<button class="absolute top-8px right-8px" @click="searchInfo()">
|
|
|
<Search />
|
|
@@ -513,19 +524,22 @@ const handleDownload = () => {
|
|
|
<el-table-column label="Assigned Product" min-width="150px">
|
|
|
<template slot-scope="scope">
|
|
|
<span v-for="(item, index) in scope.row.productNames" :key="index">
|
|
|
- {{ item }}<br/>
|
|
|
+ {{ item }}<br />
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="Action" min-width="100px">
|
|
|
<template slot-scope="scope">
|
|
|
<div>
|
|
|
- <router-link :to="{ name: 'EditManageMember', query: { MemberName: scope.row.fullName, Email: scope.row.email, Team: scope.row.teamName, Id: scope.row.id } }">
|
|
|
- <div class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer mb-8px">
|
|
|
+ <router-link
|
|
|
+ :to="{ name: 'EditManageMember', query: { MemberName: scope.row.fullName, Email: scope.row.email, Team: scope.row.teamName, Id: scope.row.id } }">
|
|
|
+ <div
|
|
|
+ class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer mb-8px">
|
|
|
Edit
|
|
|
</div>
|
|
|
</router-link>
|
|
|
- <div class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer"
|
|
|
+ <div
|
|
|
+ class="w-61px h-20px border-1 border-[#1460F3] rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer"
|
|
|
@click="handleClick(scope.row)">
|
|
|
Delete
|
|
|
</div>
|
|
@@ -542,26 +556,33 @@ const handleDownload = () => {
|
|
|
<div v-show="tag === 'directory'" class="block directory p-40px">
|
|
|
<h2 class="!text-28px !leading-40px mb-12px">Content</h2>
|
|
|
<div class="border-b-2px border-[#F1F1F2] text-[#404653] flex mb-12px">
|
|
|
- <div class="py-12px tet-14px leading-20px mb-[-2px] cursor-pointer mr-20px" :class="tagSecond === 'all' && 'border-b-2px border-[#1460F3] text-[#065CBC]'" @click="changeSecondTag('all')">All Users</div>
|
|
|
- <div class="py-12px tet-14px leading-20px mb-[-2px] cursor-pointer" :class="tagSecond === 'delete' && 'border-b-2px border-[#1460F3] text-[#065CBC]'" @click="changeSecondTag('delete')">Removed Users</div>
|
|
|
+ <div class="py-12px tet-14px leading-20px mb-[-2px] cursor-pointer mr-20px"
|
|
|
+ :class="tagSecond === 'all' && 'border-b-2px border-[#1460F3] text-[#065CBC]'" @click="changeSecondTag('all')">
|
|
|
+ All Users</div>
|
|
|
+ <div class="py-12px tet-14px leading-20px mb-[-2px] cursor-pointer"
|
|
|
+ :class="tagSecond === 'delete' && 'border-b-2px border-[#1460F3] text-[#065CBC]'"
|
|
|
+ @click="changeSecondTag('delete')">Removed Users</div>
|
|
|
</div>
|
|
|
<!-- 筛选模块 -->
|
|
|
<div class="flex justify-between mb-12px pt-24px">
|
|
|
<div class="flex">
|
|
|
<div class="relative mr-16px">
|
|
|
- <el-input v-model="queryString" size="mini" clearable class="!w-316px input-with-select" placeholder="Search user name or email">
|
|
|
+ <el-input v-model="queryString" size="mini" clearable class="!w-316px input-with-select"
|
|
|
+ placeholder="Search user name or email">
|
|
|
</el-input>
|
|
|
<button class="absolute top-8px right-8px" @click="searchInfo()">
|
|
|
<Search />
|
|
|
</button>
|
|
|
</div>
|
|
|
- <select name="Status" v-show="tagSecond === 'all'" class="min-w-50px mr-16px" v-model="directoryStatus" :class="{ '!text-[#232A40]': directoryStatus !== '' }">
|
|
|
+ <select name="Status" v-show="tagSecond === 'all'" class="min-w-50px mr-16px" v-model="directoryStatus"
|
|
|
+ :class="{ '!text-[#232A40]': directoryStatus !== '' }">
|
|
|
<option value="" selected>Status</option>
|
|
|
<option value="">All</option>
|
|
|
<option value="1">Available access</option>
|
|
|
<option value="3">Revoked</option>
|
|
|
</select>
|
|
|
- <select name="Domains" v-show="tagSecond === 'all'" class="min-w-100px mr-16px" v-model="domain" :class="{ '!text-[#232A40]': domain !== '' }">
|
|
|
+ <select name="Domains" v-show="tagSecond === 'all'" class="min-w-100px mr-16px" v-model="domain"
|
|
|
+ :class="{ '!text-[#232A40]': domain !== '' }">
|
|
|
<option value="" selected>Domains</option>
|
|
|
<option v-for="(item, index) in domainList" :key="index" :value="item.domain">{{ item.domain }}</option>
|
|
|
</select>
|
|
@@ -574,7 +595,9 @@ const handleDownload = () => {
|
|
|
<a class="w-28px h-28px border-1 border-[#D9D9D9] rounded-4px bg-[#F9FAFB] flex justify-center items-center mx-12px cursor-pointer relative"
|
|
|
@click="handleDownload">
|
|
|
<img src="@/assets/images/download.svg" alt="download" />
|
|
|
- <div class="hidden absolute bg-[#373A47] rounded-4px px-8px py-2px text-14px leading-20px text-white top-33px z-3 left-[-16px]">Export</div>
|
|
|
+ <div
|
|
|
+ class="hidden absolute bg-[#373A47] rounded-4px px-8px py-2px text-14px leading-20px text-white top-33px z-3 left-[-16px]">
|
|
|
+ Export</div>
|
|
|
</a>
|
|
|
<button v-show="tagSecond === 'all'" :disabled="!userList.length" @click="handleClickSecond"
|
|
|
class="h-28px px-10px py-4px bg-[#1460F3] rounded-4px text-14px leading-20px font-400 text-[#fff] cursor-pointer hover:opacity-80"
|
|
@@ -585,21 +608,17 @@ const handleDownload = () => {
|
|
|
</div>
|
|
|
</div>
|
|
|
<!-- 所有用户 -->
|
|
|
- <el-table
|
|
|
- v-show="tagSecond === 'all'"
|
|
|
- ref="multipleTable"
|
|
|
- v-loading="loading"
|
|
|
- :data="directoryData"
|
|
|
- tooltip-effect="dark"
|
|
|
- @selection-change="handleSelectionChange"
|
|
|
- >
|
|
|
+ <el-table v-show="tagSecond === 'all'" ref="multipleTable" v-loading="loading" :data="directoryData"
|
|
|
+ tooltip-effect="dark" @selection-change="handleSelectionChange">
|
|
|
<el-table-column type="selection" width="55"></el-table-column>
|
|
|
<el-table-column prop="fullName" label="User Name" min-width="100px"></el-table-column>
|
|
|
<el-table-column prop="email" label="Email" min-width="100px"></el-table-column>
|
|
|
<el-table-column label="Status" min-width="100px">
|
|
|
<template slot-scope="scope">
|
|
|
- <div class="text-14px leading-20px flex items-center" :class="Number(scope.row.validFlag) === 1 ? 'text-[#41CC00]' : 'text-[#808185]'">
|
|
|
- <span class="flex w-6px h-6px rounded-[50%] mr-8px" :class="Number(scope.row.validFlag) === 1 ? 'bg-[#41CC00]' : 'bg-[#808185]'"></span>
|
|
|
+ <div class="text-14px leading-20px flex items-center"
|
|
|
+ :class="Number(scope.row.validFlag) === 1 ? 'text-[#41CC00]' : 'text-[#808185]'">
|
|
|
+ <span class="flex w-6px h-6px rounded-[50%] mr-8px"
|
|
|
+ :class="Number(scope.row.validFlag) === 1 ? 'bg-[#41CC00]' : 'bg-[#808185]'"></span>
|
|
|
<template v-if="Number(scope.row.validFlag) === 1">
|
|
|
Available access
|
|
|
</template>
|
|
@@ -619,11 +638,13 @@ const handleDownload = () => {
|
|
|
<div class="flex">
|
|
|
<div class="h-20px rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer"
|
|
|
@click="directoryEmail = scope.row.email, directoryMemberId = scope.row.id">
|
|
|
- <span @click="unRevoke" v-if="Number(scope.row.validFlag) === 3" class="hover:text-[#0C3A92]">Access</span>
|
|
|
+ <span @click="unRevoke" v-if="Number(scope.row.validFlag) === 3"
|
|
|
+ class="hover:text-[#0C3A92]">Access</span>
|
|
|
<span @click="revokeDialogVisible = true" v-else class="hover:text-[#0C3A92]">Revoke</span>
|
|
|
</div>
|
|
|
<span class="text-[#D9D9D9]">丨</span>
|
|
|
- <div class="h-20px rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer hover:text-[#0C3A92]"
|
|
|
+ <div
|
|
|
+ class="h-20px rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer hover:text-[#0C3A92]"
|
|
|
@click="openDeleteDialog(), directoryEmail = scope.row.email, directoryMemberId = scope.row.id, handleMultiple = false">
|
|
|
Remove
|
|
|
</div>
|
|
@@ -637,13 +658,17 @@ const handleDownload = () => {
|
|
|
</el-table>
|
|
|
<!-- 吊销对话框 -->
|
|
|
<el-dialog :visible.sync="revokeDialogVisible" width="556px" top="30vh" center :show-close="false">
|
|
|
- <h5 class="w-full text-24px leading-32px font-bold text-[#232A40] flex justify-between items-center"><p>Revoke</p><CloseBig class="cursor-pointer" @click.native="revokeDialogVisible = false" /></h5>
|
|
|
+ <h5 class="w-full text-24px leading-32px font-bold text-[#232A40] flex justify-between items-center">
|
|
|
+ <p>Revoke</p>
|
|
|
+ <CloseBig class="cursor-pointer" @click.native="revokeDialogVisible = false" />
|
|
|
+ </h5>
|
|
|
<p class="text-left mt-12px text-14px leading-20px text-[#808185]">
|
|
|
You are about to revoke user access for:
|
|
|
- <ul class="py-12px">
|
|
|
- <li class="flex items-center pl-12px"><span class="flex w-4px h-4px rounded-[50%] bg-[#808185] mr-8px"></span>{{ directoryEmail }}</li>
|
|
|
- </ul>
|
|
|
- This user won't be able to use your site. You can give them access again at any time.
|
|
|
+ <ul class="py-12px">
|
|
|
+ <li class="flex items-center pl-12px"><span class="flex w-4px h-4px rounded-[50%] bg-[#808185] mr-8px"></span>{{
|
|
|
+ directoryEmail }}</li>
|
|
|
+ </ul>
|
|
|
+ This user won't be able to use your site. You can give them access again at any time.
|
|
|
</p>
|
|
|
<div slot="footer" class="dialog-footer flex justify-end">
|
|
|
<el-button @click="revokeDialogVisible = false" class="!font-700">Cancel</el-button>
|
|
@@ -652,9 +677,13 @@ const handleDownload = () => {
|
|
|
</el-dialog>
|
|
|
<!-- 删除目录用户对话框 -->
|
|
|
<el-dialog :visible.sync="deleteDialogVisible" width="556px" top="30vh" center :show-close="false">
|
|
|
- <h5 class="w-full text-24px leading-32px font-bold text-[#232A40] flex justify-between items-center"><p>Remove</p><CloseBig class="cursor-pointer" @click.native="deleteDialogVisible = false" /></h5>
|
|
|
+ <h5 class="w-full text-24px leading-32px font-bold text-[#232A40] flex justify-between items-center">
|
|
|
+ <p>Remove</p>
|
|
|
+ <CloseBig class="cursor-pointer" @click.native="deleteDialogVisible = false" />
|
|
|
+ </h5>
|
|
|
<p class="text-left mt-12px text-14px leading-20px text-[#808185]">
|
|
|
- The licenses of these users will be removed. They will no longer have access to this site and won't be able to collaborate with your team. You can restore these users in removed users list.
|
|
|
+ The licenses of these users will be removed. They will no longer have access to this site and won't be able to
|
|
|
+ collaborate with your team. You can restore these users in removed users list.
|
|
|
</p>
|
|
|
<div slot="footer" class="dialog-footer flex justify-end">
|
|
|
<el-button @click="deleteDialogVisible = false" class="!font-700">Cancel</el-button>
|
|
@@ -662,21 +691,16 @@ const handleDownload = () => {
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
<!-- 已删除用户 -->
|
|
|
- <el-table
|
|
|
- v-show="tagSecond === 'delete'"
|
|
|
- ref="multipleTable"
|
|
|
- v-loading="loading"
|
|
|
- :data="deleteDirectoryData"
|
|
|
- tooltip-effect="dark"
|
|
|
- @selection-change="handleSelectionChange"
|
|
|
- >
|
|
|
+ <el-table v-show="tagSecond === 'delete'" ref="multipleTable" v-loading="loading" :data="deleteDirectoryData"
|
|
|
+ tooltip-effect="dark" @selection-change="handleSelectionChange">
|
|
|
<el-table-column type="selection" width="55"> </el-table-column>
|
|
|
<el-table-column prop="fullName" label="User Name" min-width="100px"></el-table-column>
|
|
|
<el-table-column prop="email" label="Email" min-width="275px"></el-table-column>
|
|
|
<el-table-column prop="action" label="Actions" min-width="100px">
|
|
|
<template slot-scope="scope">
|
|
|
<div class="flex">
|
|
|
- <div class="h-20px rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer hover:text-[#0C3A92]"
|
|
|
+ <div
|
|
|
+ class="h-20px rounded-4px text-center text-14px leading-20px text-[#1460F3] cursor-pointer hover:text-[#0C3A92]"
|
|
|
@click="restore(scope.row), handleMultiple = false">
|
|
|
Restore
|
|
|
</div>
|
|
@@ -701,17 +725,10 @@ const handleDownload = () => {
|
|
|
<el-button type="primary" @click="deleteMember()">Delete</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <el-pagination
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- :current-page.sync="currentPage"
|
|
|
- :page-sizes="[5, 10, 20]"
|
|
|
- :page-size="1"
|
|
|
- :background="true"
|
|
|
- layout="prev, pager, next, sizes, jumper"
|
|
|
+ <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="currentPage"
|
|
|
+ :page-sizes="[5, 10, 20]" :page-size="1" :background="true" layout="prev, pager, next, sizes, jumper"
|
|
|
:total="tag === 'invited' ? total : tagSecond === 'all' ? directoryTotal : deleteDirectoryTotal"
|
|
|
- class="px-24px !rounded-0 rounded-b-8px flex justify-end"
|
|
|
- >
|
|
|
+ class="px-24px !rounded-0 rounded-b-8px flex justify-end">
|
|
|
</el-pagination>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -720,15 +737,18 @@ const handleDownload = () => {
|
|
|
.block {
|
|
|
border-top-left-radius: 0px;
|
|
|
}
|
|
|
+
|
|
|
.active {
|
|
|
color: #1460f3;
|
|
|
background-color: #fff;
|
|
|
}
|
|
|
+
|
|
|
.relative:hover {
|
|
|
.hidden {
|
|
|
display: block;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.el-table::v-deep thead {
|
|
|
color: #000 !important;
|
|
|
}
|
|
@@ -761,9 +781,11 @@ const handleDownload = () => {
|
|
|
font-weight: 400;
|
|
|
color: #808185;
|
|
|
}
|
|
|
+
|
|
|
.el-table::v-deep .cell {
|
|
|
word-break: break-word;
|
|
|
}
|
|
|
+
|
|
|
.dialog-footer {
|
|
|
::v-deep .el-button {
|
|
|
height: 40px;
|