105 lines
2.3 KiB
Vue
105 lines
2.3 KiB
Vue
<template>
|
||
<div class="crm-page">
|
||
<div class="page-header">
|
||
<div>
|
||
<h2>基本设置</h2>
|
||
<p>维护 CRM 各模块的基础数据,设置后立即在对应业务表单中生效</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="setting-grid">
|
||
<div class="setting-card" @click="go('/apps/crm/setting/unit')">
|
||
<div class="card-icon">
|
||
<el-icon><Box /></el-icon>
|
||
</div>
|
||
<div class="card-body">
|
||
<div class="card-title">单位设置</div>
|
||
<div class="card-desc">维护产品、报价等业务使用的计量单位(套 / 台 / 个 …)</div>
|
||
</div>
|
||
<el-icon class="card-arrow"><ArrowRight /></el-icon>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
|
||
<script setup>
|
||
import { useRouter } from "vue-router";
|
||
import { Box, ArrowRight } from "@element-plus/icons-vue";
|
||
|
||
const router = useRouter();
|
||
|
||
function go(path) {
|
||
router.push(path);
|
||
}
|
||
</script>
|
||
|
||
<style lang="less" scoped src="../styles/crm-page.less"></style>
|
||
|
||
<style lang="less" scoped>
|
||
.setting-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
|
||
gap: 12px;
|
||
}
|
||
|
||
.setting-card {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 12px;
|
||
padding: 16px;
|
||
background: var(--el-bg-color);
|
||
border: 1px solid var(--el-border-color-lighter);
|
||
border-radius: 6px;
|
||
cursor: pointer;
|
||
transition: border-color 0.2s, box-shadow 0.2s;
|
||
|
||
&:hover {
|
||
border-color: var(--el-color-primary-light-5);
|
||
box-shadow: 0 2px 12px 0 var(--el-color-primary-light-9);
|
||
|
||
.card-arrow {
|
||
color: var(--el-color-primary);
|
||
transform: translateX(2px);
|
||
}
|
||
}
|
||
|
||
.card-icon {
|
||
width: 40px;
|
||
height: 40px;
|
||
flex-shrink: 0;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
border-radius: 6px;
|
||
font-size: 20px;
|
||
color: var(--el-color-primary);
|
||
background: var(--el-color-primary-light-9);
|
||
}
|
||
|
||
.card-body {
|
||
flex: 1;
|
||
min-width: 0;
|
||
|
||
.card-title {
|
||
font-size: 15px;
|
||
font-weight: 600;
|
||
color: var(--el-text-color-primary);
|
||
}
|
||
|
||
.card-desc {
|
||
margin-top: 4px;
|
||
font-size: 12px;
|
||
color: var(--el-text-color-secondary);
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
}
|
||
}
|
||
|
||
.card-arrow {
|
||
color: var(--el-text-color-placeholder);
|
||
transition: color 0.2s, transform 0.2s;
|
||
}
|
||
}
|
||
</style>
|