feat: 统一button4种样式:primary/outline/text/default
This commit is contained in:
@ -17,7 +17,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<p class="m-0 p-0 mb-24px s2 ml-32px">退出登录后,你将无法收到该账号的通知</p>
|
<p class="m-0 p-0 mb-24px s2 ml-32px">退出登录后,你将无法收到该账号的通知</p>
|
||||||
<div class="flex items-center justify-end">
|
<div class="flex items-center justify-end">
|
||||||
<a-button class="cancel-btn" size="medium" @click="onClose">返回</a-button>
|
<a-button class="!rounded-4px" size="medium" @click="onClose">返回</a-button>
|
||||||
<a-button type="primary" class="ml-16px danger-btn" status="danger" size="medium" @click="onLogout"
|
<a-button type="primary" class="ml-16px danger-btn" status="danger" size="medium" @click="onLogout"
|
||||||
>退出登录</a-button
|
>退出登录</a-button
|
||||||
>
|
>
|
||||||
@ -83,15 +83,12 @@ defineExpose({ open });
|
|||||||
}
|
}
|
||||||
.cancel-btn {
|
.cancel-btn {
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
&:hover {
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
.danger-btn {
|
.danger-btn {
|
||||||
border-radius: 4px;
|
|
||||||
background: var(--Functional-Danger-6, #f64b31) !important;
|
background: var(--Functional-Danger-6, #f64b31) !important;
|
||||||
border: none !important;
|
&:hover {
|
||||||
|
background: var(--Functional-Danger-6, #f64b31) !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -63,7 +63,7 @@ const onEnterpriseItemClick = async (item) => {
|
|||||||
<a-menu-item v-for="item in menuList" :key="String(item.id)">
|
<a-menu-item v-for="item in menuList" :key="String(item.id)">
|
||||||
<template v-if="item.children">
|
<template v-if="item.children">
|
||||||
<a-dropdown :popup-max-height="false" class="layout-menu-item-dropdown">
|
<a-dropdown :popup-max-height="false" class="layout-menu-item-dropdown">
|
||||||
<a-button>
|
<a-button type="text">
|
||||||
<span class="menu-item-text mr-2px"> {{ item.name }}</span>
|
<span class="menu-item-text mr-2px"> {{ item.name }}</span>
|
||||||
<icon-caret-down size="16" class="arco-icon-down !mr-0" />
|
<icon-caret-down size="16" class="arco-icon-down !mr-0" />
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|||||||
67
src/styles/components/button.scss
Normal file
67
src/styles/components/button.scss
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
$disabled-ele: '.arco-btn-disabled';
|
||||||
|
|
||||||
|
.arco-btn {
|
||||||
|
border-radius: 2px;
|
||||||
|
border: 1px solid #d7d7d9 !important;
|
||||||
|
color: #3c4043 !important;
|
||||||
|
font-family: $font-family-regular;
|
||||||
|
font-size: 14px !important;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400 !important;
|
||||||
|
line-height: 22px !important;
|
||||||
|
&.arco-btn-disabled {
|
||||||
|
border-color: #f2f3f5 !important;
|
||||||
|
color: #b1b2b5 !important;
|
||||||
|
}
|
||||||
|
&:not(.arco-btn-disabled) {
|
||||||
|
&:hover {
|
||||||
|
border-color: #e6e6e8 !important;
|
||||||
|
color: #737478 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.arco-btn-primary {
|
||||||
|
background-color: #6d4cfe !important;
|
||||||
|
border: none !important;
|
||||||
|
color: #fff !important;
|
||||||
|
&.arco-btn-disabled {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: #c5b7ff !important;
|
||||||
|
}
|
||||||
|
&:not(.arco-btn-disabled) {
|
||||||
|
&:hover {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: #8a70fe !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.arco-btn-outline {
|
||||||
|
border: 1px solid #6d4cfe !important;
|
||||||
|
color: #6d4cfe !important;
|
||||||
|
&.arco-btn-disabled {
|
||||||
|
border-color: #c5b7ff !important;
|
||||||
|
color: #c5b7ff !important;
|
||||||
|
}
|
||||||
|
&:not(.arco-btn-disabled) {
|
||||||
|
&:hover {
|
||||||
|
border-color: #8a70fe !important;
|
||||||
|
color: #8a70fe !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.arco-btn-text {
|
||||||
|
background-color: transparent !important;
|
||||||
|
border: none !important;
|
||||||
|
color: #6d4cfe !important;
|
||||||
|
&.arco-btn-disabled {
|
||||||
|
color: #c5b7ff !important;
|
||||||
|
}
|
||||||
|
&:not(.arco-btn-disabled) {
|
||||||
|
&:hover {
|
||||||
|
color: #8a70fe !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -6,4 +6,5 @@
|
|||||||
@import './modal.scss';
|
@import './modal.scss';
|
||||||
@import "./textarea.scss";
|
@import "./textarea.scss";
|
||||||
@import "./select.scss";
|
@import "./select.scss";
|
||||||
@import "./date-picker.scss"
|
@import "./date-picker.scss";
|
||||||
|
@import "./button.scss";
|
||||||
@ -54,16 +54,15 @@
|
|||||||
</div>
|
</div>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item hide-label class="mt-68px mb-16px">
|
<a-form-item hide-label class="mt-68px mb-16px">
|
||||||
<div
|
<a-button
|
||||||
type="primary"
|
type="primary"
|
||||||
class="w-480 h-48 text-16px rounded-8px text-center text-white leading-48px"
|
class="w-480 h-48 !text-16px !rounded-8px"
|
||||||
:class="disabledSubmitBtn ? 'cursor-no-drop' : 'cursor-pointer'"
|
:class="disabledSubmitBtn ? 'cursor-no-drop' : 'cursor-pointer'"
|
||||||
:style="{ backgroundColor: disabledSubmitBtn ? '#C5B7FF' : '#6D4CFE' }"
|
|
||||||
:disabled="disabledSubmitBtn"
|
:disabled="disabledSubmitBtn"
|
||||||
@click="handleSubmit"
|
@click="handleSubmit"
|
||||||
>
|
>
|
||||||
{{ isLogin ? '登录' : '注册并开通企业账号' }}
|
{{ isLogin ? '登录' : '注册并开通企业账号' }}
|
||||||
</div>
|
</a-button>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-form>
|
</a-form>
|
||||||
<a-space class="text-12px color-#737478 justify-start items-center">
|
<a-space class="text-12px color-#737478 justify-start items-center">
|
||||||
|
|||||||
@ -21,13 +21,13 @@
|
|||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-row flex">
|
<div class="filter-row flex">
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -3,23 +3,11 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.edit-btn) {
|
:deep(.edit-btn) {
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
||||||
color: #6d4cfe;
|
color: #6d4cfe;
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
|
|
||||||
.table-wrap {
|
.table-wrap {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
|
|||||||
@ -25,13 +25,13 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="filter-row flex">
|
<div class="filter-row flex">
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium">
|
<a-button type="outline" class="mr-12px" size="medium">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium">
|
<a-button size="medium">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -25,13 +25,13 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="filter-row flex">
|
<div class="filter-row flex">
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium">
|
<a-button type="outline" class="mr-12px" size="medium">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium">
|
<a-button size="medium">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -15,11 +15,11 @@
|
|||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a-button class="w-110px search-btn mr-12px" size="medium" @click="handleExport">
|
<a-button type="outline" class="w-110px mr-12px" size="medium" @click="handleExport">
|
||||||
<template #icon> <icon-download /> </template>
|
<template #icon> <icon-download /> </template>
|
||||||
<template #default>导出数据</template>
|
<template #default>导出数据</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-110px search-btn" size="medium" @click="openCustomColumn">
|
<a-button type="outline" class="w-110px" size="medium" @click="openCustomColumn">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon1" width="14" height="14" />
|
<img :src="icon1" width="14" height="14" />
|
||||||
</template>
|
</template>
|
||||||
@ -119,7 +119,7 @@
|
|||||||
}}
|
}}
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
||||||
<a-button type="outline" size="small" class="search-btn" @click="handleDetail(record)">详情</a-button>
|
<a-button type="outline" size="small" @click="handleDetail(record)">详情</a-button>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-else-if="column.isRateField" #cell="{ record }">
|
<template v-else-if="column.isRateField" #cell="{ record }">
|
||||||
@ -148,7 +148,7 @@
|
|||||||
</a-table-column>
|
</a-table-column>
|
||||||
<a-table-column data-index="operation" fixed="right" width="100" title="操作">
|
<a-table-column data-index="operation" fixed="right" width="100" title="操作">
|
||||||
<template #cell="{ record }">
|
<template #cell="{ record }">
|
||||||
<a-button type="outline" size="small" class="search-btn" @click="handleDetail(record)">详情</a-button>
|
<a-button type="outline" size="small" @click="handleDetail(record)">详情</a-button>
|
||||||
</template>
|
</template>
|
||||||
</a-table-column>
|
</a-table-column>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -47,13 +47,13 @@
|
|||||||
</a-select>
|
</a-select>
|
||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="w-84px mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button class="w-84px" size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -2,16 +2,6 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
.filter-wrap {
|
.filter-wrap {
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
border: 1px solid #e6e6e8;
|
border: 1px solid #e6e6e8;
|
||||||
|
|||||||
@ -36,13 +36,13 @@
|
|||||||
/>
|
/>
|
||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="w-84px mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button class="w-84px" size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -19,16 +19,6 @@
|
|||||||
padding: 10px 0;
|
padding: 10px 0;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
|
|
||||||
.table-wrap {
|
.table-wrap {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|||||||
@ -76,7 +76,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="operate-row">
|
<div class="operate-row">
|
||||||
<a-dropdown trigger="hover">
|
<a-dropdown trigger="hover">
|
||||||
<a-button class="w-52px search-btn mr-8px" size="mini">
|
<a-button class="w-52px mr-8px" type="outline" size="mini">
|
||||||
<template #default>更多</template>
|
<template #default>更多</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<template #content>
|
<template #content>
|
||||||
@ -89,7 +89,7 @@
|
|||||||
>
|
>
|
||||||
<a-doption class="color-#F64B31" @click="openDelete(item)">删除</a-doption>
|
<a-doption class="color-#F64B31" @click="openDelete(item)">删除</a-doption>
|
||||||
</template>
|
</template>
|
||||||
<a-button class="search-btn" size="mini" @click="onBtnClick(item)">
|
<a-button type="outline" size="mini" @click="onBtnClick(item)">
|
||||||
<template #default>{{ getBtnText(item) }}</template>
|
<template #default>{{ getBtnText(item) }}</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-dropdown>
|
</a-dropdown>
|
||||||
@ -101,8 +101,8 @@
|
|||||||
<span class="name !mb-0">更新数据失败</span>
|
<span class="name !mb-0">更新数据失败</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a-button class="search-btn mr-8px" size="mini" @click="onDeleteSyncStatus(item)">取消</a-button>
|
<a-button type="outline" class="mr-8px" size="mini" @click="onDeleteSyncStatus(item)">取消</a-button>
|
||||||
<a-button class="search-btn" size="mini" @click="syncData(item)">重新更新</a-button>
|
<a-button type="outline" class="" size="mini" @click="syncData(item)">重新更新</a-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-spin>
|
</a-spin>
|
||||||
|
|||||||
@ -59,13 +59,13 @@
|
|||||||
<TagSelect v-model="query.tag_ids" :options="tags" @change="handleSearch" />
|
<TagSelect v-model="query.tag_ids" :options="tags" @change="handleSearch" />
|
||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="w-84px mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button class="w-84px" size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -8,19 +8,19 @@
|
|||||||
<div class="top flex h-64px px-24px py-10px justify-between items-center">
|
<div class="top flex h-64px px-24px py-10px justify-between items-center">
|
||||||
<p class="text-18px font-400 lh-26px color-#211F24 title">账号管理</p>
|
<p class="text-18px font-400 lh-26px color-#211F24 title">账号管理</p>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a-button class="w-112px mr-12px search-btn" size="medium" @click="handleOpenTagsModal">
|
<a-button class="w-112px mr-12px" type="outline" size="medium" @click="handleOpenTagsModal">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon3" width="16" height="16" />
|
<img :src="icon3" width="16" height="16" />
|
||||||
</template>
|
</template>
|
||||||
<template #default>标签管理</template>
|
<template #default>标签管理</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-112px mr-12px search-btn" size="medium" @click="handleOpenGroupModal">
|
<a-button class="w-112px mr-12px" type="outline" size="medium" @click="handleOpenGroupModal">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon2" width="16" height="16" />
|
<img :src="icon2" width="16" height="16" />
|
||||||
</template>
|
</template>
|
||||||
<template #default>分组管理</template>
|
<template #default>分组管理</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button type="primary" class="w-112px search-btn" size="medium" @click="handleOpenAccountModal">
|
<a-button type="primary" class="w-112px" size="medium" @click="handleOpenAccountModal">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon1" width="16" height="16" />
|
<img :src="icon1" width="16" height="16" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -2,16 +2,6 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
.filter-wrap {
|
.filter-wrap {
|
||||||
.top {
|
.top {
|
||||||
.title {
|
.title {
|
||||||
|
|||||||
@ -0,0 +1,32 @@
|
|||||||
|
<template>
|
||||||
|
<a-modal
|
||||||
|
v-model:visible="visible"
|
||||||
|
title="添加项目"
|
||||||
|
modal-class="add-project-modal"
|
||||||
|
width="960px"
|
||||||
|
:mask-closable="false"
|
||||||
|
@close="onClose"
|
||||||
|
>
|
||||||
|
<template #footer>
|
||||||
|
<a-button size="large" class="cancel-btn" @click="onClose">取消</a-button>
|
||||||
|
<a-button type="primary" size="large" @click="onSubmit">确定</a-button>
|
||||||
|
</template>
|
||||||
|
</a-modal>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
const visible = ref(false);
|
||||||
|
const emits = defineEmits(['update']);
|
||||||
|
|
||||||
|
const open = () => {
|
||||||
|
visible.value = true;
|
||||||
|
};
|
||||||
|
const onClose = () => {
|
||||||
|
visible.value = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
const onSubmit = () => {
|
||||||
|
console.log('onSubmit');
|
||||||
|
};
|
||||||
|
defineExpose({ open });
|
||||||
|
</script>
|
||||||
@ -0,0 +1,3 @@
|
|||||||
|
.add-project-modal {
|
||||||
|
|
||||||
|
}
|
||||||
@ -4,7 +4,7 @@
|
|||||||
* @Date: 2025-06-25 14:02:40
|
* @Date: 2025-06-25 14:02:40
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="container px-24px pt-12px pb-24px">
|
<div class="filter-wrap px-24px pt-12px pb-24px">
|
||||||
<div class="filter-row flex">
|
<div class="filter-row flex">
|
||||||
<div class="filter-row-item flex items-center">
|
<div class="filter-row-item flex items-center">
|
||||||
<span class="label">项目名称</span>
|
<span class="label">项目名称</span>
|
||||||
@ -24,13 +24,13 @@
|
|||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-row-item flex items-center">
|
<div class="filter-row-item flex items-center">
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
.container {
|
.filter-wrap {
|
||||||
.filter-row {
|
.filter-row {
|
||||||
.filter-row-item {
|
.filter-row-item {
|
||||||
&:not(:last-child) {
|
&:not(:last-child) {
|
||||||
|
|||||||
@ -13,6 +13,7 @@ export const TABLE_COLUMNS = [
|
|||||||
title: '项目预算',
|
title: '项目预算',
|
||||||
dataIndex: 'key1',
|
dataIndex: 'key1',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
prefix: "¥"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '关联平台账号',
|
title: '关联平台账号',
|
||||||
|
|||||||
@ -41,7 +41,7 @@
|
|||||||
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<img class="mr-8px cursor-pointer" :src="icon1" width="14" height="14" @click="onDelete(record)" />
|
<img class="mr-8px cursor-pointer" :src="icon1" width="14" height="14" @click="onDelete(record)" />
|
||||||
<a-button type="outline" size="mini" class="search-btn" @click="onEdit(record)">编辑</a-button>
|
<a-button type="outline" size="mini" @click="onEdit(record)">编辑</a-button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@ -37,6 +37,8 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<AddProjectModal ref="addProjectModalRef"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -46,6 +48,7 @@ import { useTableSelectionWithPagination } from '@/hooks/useTableSelectionWithPa
|
|||||||
|
|
||||||
import FilterBlock from './components/filter-block';
|
import FilterBlock from './components/filter-block';
|
||||||
import ProjectTable from './components/project-table';
|
import ProjectTable from './components/project-table';
|
||||||
|
import AddProjectModal from './components/add-project-modal';
|
||||||
|
|
||||||
import icon1 from '@/assets/img/media-account/icon-add.png';
|
import icon1 from '@/assets/img/media-account/icon-add.png';
|
||||||
|
|
||||||
|
|||||||
@ -2,16 +2,6 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
.filter-wrap {
|
.filter-wrap {
|
||||||
.top {
|
.top {
|
||||||
.title {
|
.title {
|
||||||
|
|||||||
@ -43,13 +43,13 @@
|
|||||||
<a-range-picker v-model="query.data_time" size="medium" allow-clear format="YYYY-MM-DD" class="w-100%" />
|
<a-range-picker v-model="query.data_time" size="medium" allow-clear format="YYYY-MM-DD" class="w-100%" />
|
||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -16,11 +16,11 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a-button class="w-110px search-btn mr-12px" size="medium" @click="handleExport">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleExport">
|
||||||
<template #icon> <icon-download /> </template>
|
<template #icon> <icon-download /> </template>
|
||||||
<template #default>导出数据</template>
|
<template #default>导出数据</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-110px search-btn" size="medium" @click="openCustomColumn">
|
<a-button type="outline" size="medium" @click="openCustomColumn">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon1" width="14" height="14" />
|
<img :src="icon1" width="14" height="14" />
|
||||||
</template>
|
</template>
|
||||||
@ -106,7 +106,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
||||||
<a-button type="outline" size="small" class="search-btn" @click="handleDetail(record)">详情</a-button>
|
<a-button type="outline" size="small" @click="handleDetail(record)">详情</a-button>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-else-if="column.isRateField" #cell="{ record }">
|
<template v-else-if="column.isRateField" #cell="{ record }">
|
||||||
|
|||||||
@ -55,13 +55,13 @@
|
|||||||
/>
|
/>
|
||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -16,11 +16,11 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a-button class="w-110px search-btn mr-12px" size="medium" @click="handleExport">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleExport">
|
||||||
<template #icon> <icon-download /> </template>
|
<template #icon> <icon-download /> </template>
|
||||||
<template #default>导出数据</template>
|
<template #default>导出数据</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-110px search-btn" size="medium" @click="openCustomColumn">
|
<a-button type="outline" size="medium" @click="openCustomColumn">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon1" width="14" height="14" />
|
<img :src="icon1" width="14" height="14" />
|
||||||
</template>
|
</template>
|
||||||
@ -106,7 +106,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
<template v-else-if="column.dataIndex === 'operation'" #cell="{ record }">
|
||||||
<a-button type="outline" size="small" class="search-btn" @click="handleDetail(record)">详情</a-button>
|
<a-button type="outline" size="small" @click="handleDetail(record)">详情</a-button>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-else-if="column.isRateField" #cell="{ record }">
|
<template v-else-if="column.isRateField" #cell="{ record }">
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
<a-tab-pane key="1" title="账户"></a-tab-pane>
|
<a-tab-pane key="1" title="账户"></a-tab-pane>
|
||||||
<a-tab-pane key="2" title="计划"></a-tab-pane>
|
<a-tab-pane key="2" title="计划"></a-tab-pane>
|
||||||
<template v-if="!isAccountTab" #extra>
|
<template v-if="!isAccountTab" #extra>
|
||||||
<a-button class="w-112px mr-12px search-btn flex items-center" size="medium" @click="handleOpenGroupModal">
|
<a-button type="outline" class="mr-12px flex items-center" size="medium" @click="handleOpenGroupModal">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon2" width="16" height="16" />
|
<img :src="icon2" width="16" height="16" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -2,16 +2,6 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
.filter-wrap {
|
.filter-wrap {
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
border: 1px solid #e6e6e8;
|
border: 1px solid #e6e6e8;
|
||||||
|
|||||||
@ -53,17 +53,18 @@
|
|||||||
<img :src="icon1" width="16" height="16" class="mr-8px cursor-pointer" @click="openDelete(item)" />
|
<img :src="icon1" width="16" height="16" class="mr-8px cursor-pointer" @click="openDelete(item)" />
|
||||||
<a-button
|
<a-button
|
||||||
v-if="showPauseButton(item.status)"
|
v-if="showPauseButton(item.status)"
|
||||||
class="w-64px search-btn mr-8px"
|
type="outline"
|
||||||
|
class="mr-8px"
|
||||||
size="mini"
|
size="mini"
|
||||||
@click="handlePause(item)"
|
@click="handlePause(item)"
|
||||||
>
|
>
|
||||||
<template #default>暂停同步</template>
|
<template #default>暂停同步</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-64px search-btn mr-8px" size="mini" @click="handleReauthorize(item)">
|
<a-button type="outline" class="mr-8px" size="mini" @click="handleReauthorize(item)">
|
||||||
<template #default>获取凭证</template>
|
<template #default>获取凭证</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
|
|
||||||
<a-button class="w-40px search-btn" size="mini" @click="openEdit(item)">
|
<a-button type="outline" size="mini" @click="openEdit(item)">
|
||||||
<template #default>编辑</template>
|
<template #default>编辑</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -47,13 +47,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="filter-row flex">
|
<div class="filter-row flex">
|
||||||
<a-button class="w-84px search-btn mr-12px" size="medium" @click="handleSearch">
|
<a-button type="outline" class="mr-12px" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
<div class="top flex h-64px px-24px py-10px justify-between items-center">
|
<div class="top flex h-64px px-24px py-10px justify-between items-center">
|
||||||
<p class="text-18px font-400 lh-26px color-#211F24 title">账户管理</p>
|
<p class="text-18px font-400 lh-26px color-#211F24 title">账户管理</p>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a-button type="primary" class="w-112px search-btn" size="medium" @click="handleOpenAccountModal">
|
<a-button type="primary" class="w-112px" size="medium" @click="handleOpenAccountModal">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<img :src="icon1" width="16" height="16" />
|
<img :src="icon1" width="16" height="16" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -2,16 +2,6 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
:deep(.search-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--Brand-Brand-6, #6d4cfe);
|
|
||||||
color: #6d4cfe;
|
|
||||||
}
|
|
||||||
:deep(.reset-btn) {
|
|
||||||
border-radius: 4px;
|
|
||||||
border: 1px solid var(--BG-500, #b1b2b5);
|
|
||||||
background: var(--BG-white, #fff);
|
|
||||||
}
|
|
||||||
.filter-wrap {
|
.filter-wrap {
|
||||||
.top {
|
.top {
|
||||||
.title {
|
.title {
|
||||||
|
|||||||
@ -35,13 +35,13 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="filter-row-item flex items-center">
|
<div class="filter-row-item flex items-center">
|
||||||
<a-button class="w-84px search-btn mr-12px" :disabled="disabled" size="medium" @click="handleSearch">
|
<a-button type="outline" class="mr-12px" :disabled="disabled" size="medium" @click="handleSearch">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-search />
|
<icon-search />
|
||||||
</template>
|
</template>
|
||||||
<template #default>搜索</template>
|
<template #default>搜索</template>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button class="w-84px reset-btn" size="medium" @click="handleReset">
|
<a-button size="medium" @click="handleReset">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<icon-refresh />
|
<icon-refresh />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
Reference in New Issue
Block a user