feat: 搭建后台管理端

- 初始化 Vue 3 + TypeScript + Vite 管理端工程

- 增加登录、租户、组织、用户、名片与系统页面

- 补充路由、状态管理、接口封装与基础样式体系
This commit is contained in:
2026-03-20 12:43:53 +08:00
parent 9ef50288e9
commit 86c321e832
47 changed files with 9387 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
<svg viewBox="0 0 54 54" xmlns="http://www.w3.org/2000/svg">
<defs>
<filter id="shadow-back" x="-20%" y="-20%" width="140%" height="140%">
<feDropShadow dx="1" dy="2" stdDeviation="1.5" flood-color="#000" flood-opacity="0.12"/>
</filter>
<filter id="shadow-front" x="-30%" y="-30%" width="160%" height="160%">
<feDropShadow dx="-2" dy="4" stdDeviation="3" flood-color="#000" flood-opacity="0.35"/>
</filter>
<linearGradient id="grad-back" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#ffffff"/>
<stop offset="100%" stop-color="#ececf0"/>
</linearGradient>
<linearGradient id="grad-front" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#3c3d42"/>
<stop offset="100%" stop-color="#111214"/>
</linearGradient>
<linearGradient id="stroke-front" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#8a8b90"/>
<stop offset="100%" stop-color="#1a1b1d"/>
</linearGradient>
</defs>
<rect width="54" height="54" rx="16" fill="#ffffff" />
<g transform="translate(27, 27)">
<g transform="rotate(-8) translate(-11, -14)">
<rect x="0" y="0" width="15" height="20" rx="3.5" fill="url(#grad-back)" stroke="#dcdde0" stroke-width="1" filter="url(#shadow-back)"/>
<rect x="3" y="3" width="4" height="3" rx="1" fill="#d1d1d6"/>
<line x1="3" y1="8" x2="11" y2="8" stroke="#eaeaea" stroke-width="1.5" stroke-linecap="round"/>
</g>
<g transform="rotate(5) translate(-3, -4)">
<rect x="0" y="0" width="15" height="20" rx="3.5" fill="url(#grad-front)" stroke="url(#stroke-front)" stroke-width="1.2" filter="url(#shadow-front)"/>
<rect x="3" y="3" width="4" height="3" rx="1" fill="#5c5d63"/>
<line x1="3" y1="9" x2="10" y2="9" stroke="#222" stroke-width="1.5" stroke-linecap="round"/>
<line x1="3" y1="12" x2="7" y2="12" stroke="#222" stroke-width="1.5" stroke-linecap="round"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB