mod: 删除无用文件
This commit is contained in:
parent
d46119e174
commit
b0daac8471
|
@ -24,6 +24,7 @@ module.exports = defineConfig({
|
||||||
'plugin:prettier/recommended'
|
'plugin:prettier/recommended'
|
||||||
],
|
],
|
||||||
rules: {
|
rules: {
|
||||||
|
'vue/no-setup-props-destructure': 'off',
|
||||||
'vue/script-setup-uses-vars': 'error',
|
'vue/script-setup-uses-vars': 'error',
|
||||||
'vue/no-reserved-component-names': 'off',
|
'vue/no-reserved-component-names': 'off',
|
||||||
'@typescript-eslint/ban-ts-ignore': 'off',
|
'@typescript-eslint/ban-ts-ignore': 'off',
|
||||||
|
|
|
@ -1,130 +0,0 @@
|
||||||
name: Automerge
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
types:
|
|
||||||
- labeled
|
|
||||||
- unlabeled
|
|
||||||
- synchronize
|
|
||||||
- opened
|
|
||||||
- edited
|
|
||||||
- ready_for_review
|
|
||||||
- reopened
|
|
||||||
- unlocked
|
|
||||||
pull_request_review:
|
|
||||||
types:
|
|
||||||
- submitted
|
|
||||||
status: {}
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
# 合并发布版本的 pr 到 master
|
|
||||||
auto-merge:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Automerge
|
|
||||||
uses: 'pascalgn/automerge-action@v0.14.3'
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: '${{ secrets.TOKEN }}'
|
|
||||||
MERGE_LABELS: ''
|
|
||||||
MERGE_FILTER_AUTHOR: 'kailong321200875'
|
|
||||||
|
|
||||||
push-to-gh-pages:
|
|
||||||
needs: [auto-merge]
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- name: Setup Pnpm
|
|
||||||
uses: pnpm/action-setup@v2
|
|
||||||
with:
|
|
||||||
version: latest
|
|
||||||
|
|
||||||
- name: use Node.js 16
|
|
||||||
uses: actions/setup-node@v2.1.2
|
|
||||||
with:
|
|
||||||
node-version: '16.x'
|
|
||||||
|
|
||||||
- name: Set SSH Environment
|
|
||||||
env:
|
|
||||||
DOCS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/.ssh/
|
|
||||||
echo "$ACTIONS_DEPLOY_KEY" > ~/.ssh/id_rsa
|
|
||||||
chmod 600 ~/.ssh/id_rsa
|
|
||||||
ssh-keyscan github.com > ~/.ssh/known_hosts
|
|
||||||
chmod 700 ~/.ssh && chmod 600 ~/.ssh/*
|
|
||||||
git config --local user.email "321200875@qq.com"
|
|
||||||
git config --local user.name "kailong321200875"
|
|
||||||
|
|
||||||
# 发布到 github
|
|
||||||
- name: Build Github
|
|
||||||
run: |
|
|
||||||
pnpm install --no-frozen-lockfile
|
|
||||||
pnpm run build:pro
|
|
||||||
|
|
||||||
- name: Deploy Github
|
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
|
||||||
with:
|
|
||||||
deploy_key: ${{secrets.ACTIONS_DEPLOY_KEY}}
|
|
||||||
publish_branch: gh-pages
|
|
||||||
publish_dir: ./dist-pro
|
|
||||||
force_orphan: true
|
|
||||||
cname: element-plus-admin.cn
|
|
||||||
|
|
||||||
push-to-gh-pages-gitee:
|
|
||||||
needs: [auto-merge]
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- name: Setup Pnpm
|
|
||||||
uses: pnpm/action-setup@v2
|
|
||||||
with:
|
|
||||||
version: latest
|
|
||||||
|
|
||||||
- name: use Node.js 16
|
|
||||||
uses: actions/setup-node@v2.1.2
|
|
||||||
with:
|
|
||||||
node-version: '16.x'
|
|
||||||
|
|
||||||
- name: Set SSH Environment
|
|
||||||
env:
|
|
||||||
DOCS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/.ssh/
|
|
||||||
echo "$ACTIONS_DEPLOY_KEY" > ~/.ssh/id_rsa
|
|
||||||
chmod 600 ~/.ssh/id_rsa
|
|
||||||
ssh-keyscan github.com > ~/.ssh/known_hosts
|
|
||||||
chmod 700 ~/.ssh && chmod 600 ~/.ssh/*
|
|
||||||
git config --local user.email "321200875@qq.com"
|
|
||||||
git config --local user.name "kailong321200875"
|
|
||||||
|
|
||||||
- name: Build Gitee
|
|
||||||
run: |
|
|
||||||
pnpm install --no-frozen-lockfile
|
|
||||||
pnpm run build:gitee
|
|
||||||
|
|
||||||
# 发布到 gitee
|
|
||||||
- name: Deploy Gitee
|
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
|
||||||
with:
|
|
||||||
deploy_key: ${{secrets.ACTIONS_DEPLOY_KEY}}
|
|
||||||
publish_branch: gh-pages-gitee
|
|
||||||
publish_dir: ./dist-pro
|
|
||||||
force_orphan: true
|
|
||||||
|
|
||||||
- name: Sync Github Repos To Gitee # 名字随便起
|
|
||||||
uses: Yikun/hub-mirror-action@v1.1 # 使用Yikun/hub-mirror-action
|
|
||||||
with:
|
|
||||||
src: github/kailong321200875 # 源端账户名(github)
|
|
||||||
dst: gitee/kailong110120130 # 目的端账户名(gitee)
|
|
||||||
dst_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} # SSH密钥对中的私钥
|
|
||||||
dst_token: ${{ secrets.GITEE_TOKEN }} # Gitee账户的私人令牌
|
|
||||||
account_type: user # 账户类型
|
|
||||||
clone_style: 'https' # 使用https方式进行clone,也可以使用ssh
|
|
||||||
debug: true # 启用后会显示所有执行命令
|
|
||||||
force_update: true # 启用后,强制同步,即强制覆盖目的端仓库
|
|
||||||
static_list: 'vue-element-plus-admin' # 静态同步列表,在此填写需要同步的仓库名称,可填写多个
|
|
||||||
timeout: '600s' # git超时设置,超时后会自动重试git操作
|
|
|
@ -1,25 +0,0 @@
|
||||||
# on:
|
|
||||||
# push:
|
|
||||||
# branches:
|
|
||||||
# - master
|
|
||||||
|
|
||||||
# jobs:
|
|
||||||
# contrib-readme-en-job:
|
|
||||||
# runs-on: ubuntu-latest
|
|
||||||
# name: A job to automate contrib in readme
|
|
||||||
# steps:
|
|
||||||
# - name: Contribute List
|
|
||||||
# uses: akhilmhdh/contributors-readme-action@v2.3.4
|
|
||||||
# env:
|
|
||||||
# GITHUB_TOKEN: ${{ secrets.CONTRIBUTORS_TOKEN }}
|
|
||||||
|
|
||||||
# contrib-readme-job:
|
|
||||||
# runs-on: ubuntu-latest
|
|
||||||
# name: A job to automate contrib in readme.zh-CN
|
|
||||||
# steps:
|
|
||||||
# - name: Contribute List
|
|
||||||
# uses: akhilmhdh/contributors-readme-action@v2.3.4
|
|
||||||
# with:
|
|
||||||
# readme_path: README.zh-CN.md
|
|
||||||
# env:
|
|
||||||
# GITHUB_TOKEN: ${{ secrets.CONTRIBUTORS_TOKEN }}
|
|
|
@ -1,18 +0,0 @@
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- release
|
|
||||||
|
|
||||||
name: Release
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
release-please:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: GoogleCloudPlatform/release-please-action@v3
|
|
||||||
id: release
|
|
||||||
with:
|
|
||||||
token: ${{ secrets.TOKEN }}
|
|
||||||
release-type: node
|
|
||||||
package-name: standard-version
|
|
||||||
changelog-types: '[{"type": "types", "section":"Types", "hidden": false},{"type": "revert", "section":"Reverts", "hidden": false},{"type": "feat", "section": "Features", "hidden": false},{"type": "fix", "section": "Bug Fixes", "hidden": false},{"type": "improvement", "section": "Feature Improvements", "hidden": false},{"type": "docs", "section":"Docs", "hidden": false},{"type": "style", "section":"Styling", "hidden": false},{"type": "refactor", "section":"Code Refactoring", "hidden": false},{"type": "perf", "section":"Performance Improvements", "hidden": false},{"type": "test", "section":"Tests", "hidden": false},{"type": "build", "section":"Build System", "hidden": false},{"type": "ci", "section":"CI", "hidden":false}]'
|
|
|
@ -1,97 +0,0 @@
|
||||||
import config from '@/config/axios/config'
|
|
||||||
import { MockMethod } from 'vite-plugin-mock'
|
|
||||||
|
|
||||||
const { code } = config
|
|
||||||
|
|
||||||
const timeout = 1000
|
|
||||||
|
|
||||||
export default [
|
|
||||||
// 分析页统计接口
|
|
||||||
{
|
|
||||||
url: '/analysis/total',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
users: 102400,
|
|
||||||
messages: 81212,
|
|
||||||
moneys: 9280,
|
|
||||||
shoppings: 13600
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 用户来源
|
|
||||||
{
|
|
||||||
url: '/analysis/userAccessSource',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{ value: 1000, name: 'analysis.directAccess' },
|
|
||||||
{ value: 310, name: 'analysis.mailMarketing' },
|
|
||||||
{ value: 234, name: 'analysis.allianceAdvertising' },
|
|
||||||
{ value: 135, name: 'analysis.videoAdvertising' },
|
|
||||||
{ value: 1548, name: 'analysis.searchEngines' }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 每周用户活跃量
|
|
||||||
{
|
|
||||||
url: '/analysis/weeklyUserActivity',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{ value: 13253, name: 'analysis.monday' },
|
|
||||||
{ value: 34235, name: 'analysis.tuesday' },
|
|
||||||
{ value: 26321, name: 'analysis.wednesday' },
|
|
||||||
{ value: 12340, name: 'analysis.thursday' },
|
|
||||||
{ value: 24643, name: 'analysis.friday' },
|
|
||||||
{ value: 1322, name: 'analysis.saturday' },
|
|
||||||
{ value: 1324, name: 'analysis.sunday' }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 每月销售额
|
|
||||||
{
|
|
||||||
url: '/analysis/monthlySales',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{ estimate: 100, actual: 120, name: 'analysis.january' },
|
|
||||||
{ estimate: 120, actual: 82, name: 'analysis.february' },
|
|
||||||
{ estimate: 161, actual: 91, name: 'analysis.march' },
|
|
||||||
{ estimate: 134, actual: 154, name: 'analysis.april' },
|
|
||||||
{ estimate: 105, actual: 162, name: 'analysis.may' },
|
|
||||||
{ estimate: 160, actual: 140, name: 'analysis.june' },
|
|
||||||
{ estimate: 165, actual: 145, name: 'analysis.july' },
|
|
||||||
{ estimate: 114, actual: 250, name: 'analysis.august' },
|
|
||||||
{ estimate: 163, actual: 134, name: 'analysis.september' },
|
|
||||||
{ estimate: 185, actual: 56, name: 'analysis.october' },
|
|
||||||
{ estimate: 118, actual: 99, name: 'analysis.november' },
|
|
||||||
{ estimate: 123, actual: 123, name: 'analysis.december' }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
] as MockMethod[]
|
|
|
@ -1,219 +0,0 @@
|
||||||
import config from '@/config/axios/config'
|
|
||||||
import { MockMethod } from 'vite-plugin-mock'
|
|
||||||
import { toAnyString } from '@/utils'
|
|
||||||
import Mock from 'mockjs'
|
|
||||||
|
|
||||||
const { code } = config
|
|
||||||
|
|
||||||
const departmentList: any = []
|
|
||||||
|
|
||||||
const citys = ['厦门总公司', '北京分公司', '上海分公司', '福州分公司', '深圳分公司', '杭州分公司']
|
|
||||||
|
|
||||||
for (let i = 0; i < 5; i++) {
|
|
||||||
departmentList.push({
|
|
||||||
// 部门名称
|
|
||||||
departmentName: citys[i],
|
|
||||||
id: toAnyString(),
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
// 备注
|
|
||||||
remark: '@cword(10, 15)',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
// 部门名称
|
|
||||||
departmentName: '研发部',
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
remark: '@cword(10, 15)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
// 部门名称
|
|
||||||
departmentName: '产品部',
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
remark: '@cword(10, 15)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
// 部门名称
|
|
||||||
departmentName: '运营部',
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
remark: '@cword(10, 15)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
// 部门名称
|
|
||||||
departmentName: '市场部',
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
remark: '@cword(10, 15)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
// 部门名称
|
|
||||||
departmentName: '销售部',
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
remark: '@cword(10, 15)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
// 部门名称
|
|
||||||
departmentName: '客服部',
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 状态
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
remark: '@cword(10, 15)'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export default [
|
|
||||||
// 列表接口
|
|
||||||
{
|
|
||||||
url: '/department/list',
|
|
||||||
method: 'get',
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
list: departmentList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
url: '/department/table/list',
|
|
||||||
method: 'get',
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
list: departmentList,
|
|
||||||
total: 5
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
url: '/department/users',
|
|
||||||
method: 'get',
|
|
||||||
timeout: 1000,
|
|
||||||
response: ({ query }) => {
|
|
||||||
const { pageSize } = query
|
|
||||||
// 根据pageSize来创建数据
|
|
||||||
const mockList: any = []
|
|
||||||
for (let i = 0; i < pageSize; i++) {
|
|
||||||
mockList.push(
|
|
||||||
Mock.mock({
|
|
||||||
// 用户名
|
|
||||||
username: '@cname',
|
|
||||||
// 账号
|
|
||||||
account: '@first',
|
|
||||||
// 邮箱
|
|
||||||
email: '@EMAIL',
|
|
||||||
// 创建时间
|
|
||||||
createTime: '@datetime',
|
|
||||||
// 角色
|
|
||||||
role: '@first',
|
|
||||||
// 用户id
|
|
||||||
id: toAnyString()
|
|
||||||
})
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
total: 100,
|
|
||||||
list: mockList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 保存接口
|
|
||||||
{
|
|
||||||
url: '/department/user/save',
|
|
||||||
method: 'post',
|
|
||||||
timeout: 1000,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 删除接口
|
|
||||||
{
|
|
||||||
url: '/department/user/delete',
|
|
||||||
method: 'post',
|
|
||||||
response: ({ body }) => {
|
|
||||||
const ids = body.ids
|
|
||||||
if (!ids) {
|
|
||||||
return {
|
|
||||||
code: '500',
|
|
||||||
message: '请选择需要删除的数据'
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 保存接口
|
|
||||||
{
|
|
||||||
url: '/department/save',
|
|
||||||
method: 'post',
|
|
||||||
timeout: 1000,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 删除接口
|
|
||||||
{
|
|
||||||
url: '/department/delete',
|
|
||||||
method: 'post',
|
|
||||||
response: ({ body }) => {
|
|
||||||
const ids = body.ids
|
|
||||||
if (!ids) {
|
|
||||||
return {
|
|
||||||
code: '500',
|
|
||||||
message: '请选择需要删除的数据'
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
] as MockMethod[]
|
|
|
@ -1,67 +0,0 @@
|
||||||
import config from '@/config/axios/config'
|
|
||||||
import { MockMethod } from 'vite-plugin-mock'
|
|
||||||
|
|
||||||
const { code } = config
|
|
||||||
|
|
||||||
const timeout = 1000
|
|
||||||
|
|
||||||
const dictObj: Recordable = {
|
|
||||||
importance: [
|
|
||||||
{
|
|
||||||
value: 0,
|
|
||||||
label: 'tableDemo.commonly'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 1,
|
|
||||||
label: 'tableDemo.good'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 2,
|
|
||||||
label: 'tableDemo.important'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
export default [
|
|
||||||
// 字典接口
|
|
||||||
{
|
|
||||||
url: '/dict/list',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: dictObj
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 获取某个字典
|
|
||||||
{
|
|
||||||
url: '/dict/one',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{
|
|
||||||
label: 'test1',
|
|
||||||
value: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'test2',
|
|
||||||
value: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'test3',
|
|
||||||
value: 2
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
] as MockMethod[]
|
|
|
@ -1,246 +0,0 @@
|
||||||
import config from '@/config/axios/config'
|
|
||||||
import { MockMethod } from 'vite-plugin-mock'
|
|
||||||
import Mock from 'mockjs'
|
|
||||||
import { toAnyString } from '@/utils'
|
|
||||||
|
|
||||||
const { code } = config
|
|
||||||
|
|
||||||
const timeout = 1000
|
|
||||||
|
|
||||||
export default [
|
|
||||||
// 列表接口
|
|
||||||
{
|
|
||||||
url: '/menu/list',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
list: [
|
|
||||||
{
|
|
||||||
path: '/dashboard',
|
|
||||||
component: '#',
|
|
||||||
redirect: '/dashboard/analysis',
|
|
||||||
name: 'Dashboard',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '首页',
|
|
||||||
icon: 'ant-design:dashboard-filled',
|
|
||||||
alwaysShow: true
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'analysis',
|
|
||||||
component: 'views/Dashboard/Analysis',
|
|
||||||
name: 'Analysis',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '分析页',
|
|
||||||
noCache: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'workplace',
|
|
||||||
component: 'views/Dashboard/Workplace',
|
|
||||||
name: 'Workplace',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '工作台',
|
|
||||||
noCache: true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: '/external-link',
|
|
||||||
component: '#',
|
|
||||||
meta: {
|
|
||||||
title: '文档',
|
|
||||||
icon: 'clarity:document-solid'
|
|
||||||
},
|
|
||||||
name: 'ExternalLink',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'https://element-plus-admin-doc.cn/',
|
|
||||||
name: 'DocumentLink',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '文档'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: '/level',
|
|
||||||
component: '#',
|
|
||||||
redirect: '/level/menu1/menu1-1/menu1-1-1',
|
|
||||||
name: 'Level',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '菜单',
|
|
||||||
icon: 'carbon:skill-level-advanced'
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'menu1',
|
|
||||||
name: 'Menu1',
|
|
||||||
component: '##',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
redirect: '/level/menu1/menu1-1/menu1-1-1',
|
|
||||||
meta: {
|
|
||||||
title: '菜单1'
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'menu1-1',
|
|
||||||
name: 'Menu11',
|
|
||||||
component: '##',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
redirect: '/level/menu1/menu1-1/menu1-1-1',
|
|
||||||
meta: {
|
|
||||||
title: '菜单1-1',
|
|
||||||
alwaysShow: true
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'menu1-1-1',
|
|
||||||
name: 'Menu111',
|
|
||||||
component: 'views/Level/Menu111',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '菜单1-1-1',
|
|
||||||
permission: ['edit', 'add']
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'menu1-2',
|
|
||||||
name: 'Menu12',
|
|
||||||
component: 'views/Level/Menu12',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '菜单1-2',
|
|
||||||
permission: ['edit', 'add']
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'menu2',
|
|
||||||
name: 'Menu2Demo',
|
|
||||||
component: 'views/Level/Menu2',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '菜单2',
|
|
||||||
permission: ['edit', 'add']
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: '/example',
|
|
||||||
component: '#',
|
|
||||||
redirect: '/example/example-dialog',
|
|
||||||
name: 'Example',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '综合示例',
|
|
||||||
icon: 'ep:management',
|
|
||||||
alwaysShow: true
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'example-dialog',
|
|
||||||
component: 'views/Example/Dialog/ExampleDialog',
|
|
||||||
name: 'ExampleDialog',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '综合示例-弹窗',
|
|
||||||
permission: ['edit', 'add', 'delete']
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'example-page',
|
|
||||||
component: 'views/Example/Page/ExamplePage',
|
|
||||||
name: 'ExamplePage',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '综合示例-页面',
|
|
||||||
permission: ['edit', 'add', 'delete']
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'example-add',
|
|
||||||
component: 'views/Example/Page/ExampleAdd',
|
|
||||||
name: 'ExampleAdd',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '综合示例-新增',
|
|
||||||
noTagsView: true,
|
|
||||||
noCache: true,
|
|
||||||
hidden: true,
|
|
||||||
showMainRoute: true,
|
|
||||||
activeMenu: '/example/example-page',
|
|
||||||
permission: ['edit', 'add', 'delete']
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'example-edit',
|
|
||||||
component: 'views/Example/Page/ExampleEdit',
|
|
||||||
name: 'ExampleEdit',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '综合示例-编辑',
|
|
||||||
noTagsView: true,
|
|
||||||
noCache: true,
|
|
||||||
hidden: true,
|
|
||||||
showMainRoute: true,
|
|
||||||
activeMenu: '/example/example-page',
|
|
||||||
permission: ['edit', 'add', 'delete']
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'example-detail',
|
|
||||||
component: 'views/Example/Page/ExampleDetail',
|
|
||||||
name: 'ExampleDetail',
|
|
||||||
status: Mock.Random.integer(0, 1),
|
|
||||||
id: toAnyString(),
|
|
||||||
meta: {
|
|
||||||
title: '综合示例-详情',
|
|
||||||
noTagsView: true,
|
|
||||||
noCache: true,
|
|
||||||
hidden: true,
|
|
||||||
showMainRoute: true,
|
|
||||||
activeMenu: '/example/example-page',
|
|
||||||
permission: ['edit', 'add', 'delete']
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
] as MockMethod[]
|
|
|
@ -1,268 +0,0 @@
|
||||||
import config from '@/config/axios/config'
|
|
||||||
import { MockMethod } from 'vite-plugin-mock'
|
|
||||||
import { toAnyString } from '@/utils'
|
|
||||||
import Mock from 'mockjs'
|
|
||||||
|
|
||||||
const { code } = config
|
|
||||||
|
|
||||||
const timeout = 1000
|
|
||||||
|
|
||||||
const count = 100
|
|
||||||
|
|
||||||
const baseContent =
|
|
||||||
'<p>I am testing data, I am testing data.</p><p><img src="https://wpimg.wallstcn.com/4c69009c-0fd4-4153-b112-6cb53d1cf943"></p>'
|
|
||||||
|
|
||||||
interface ListProps {
|
|
||||||
id: string
|
|
||||||
author: string
|
|
||||||
title: string
|
|
||||||
content: string
|
|
||||||
importance: number
|
|
||||||
display_time: string
|
|
||||||
pageviews: number
|
|
||||||
image_uri: string
|
|
||||||
}
|
|
||||||
|
|
||||||
interface TreeListProps {
|
|
||||||
id: string
|
|
||||||
author: string
|
|
||||||
title: string
|
|
||||||
content: string
|
|
||||||
importance: number
|
|
||||||
display_time: string
|
|
||||||
pageviews: number
|
|
||||||
children: TreeListProps[]
|
|
||||||
}
|
|
||||||
|
|
||||||
let List: ListProps[] = []
|
|
||||||
|
|
||||||
for (let i = 0; i < count; i++) {
|
|
||||||
List.push(
|
|
||||||
Mock.mock({
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)',
|
|
||||||
image_uri: Mock.Random.image('@integer(300, 5000)x@integer(300, 5000)')
|
|
||||||
})
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
const treeList: TreeListProps[] = []
|
|
||||||
|
|
||||||
for (let i = 0; i < count; i++) {
|
|
||||||
treeList.push(
|
|
||||||
Mock.mock({
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)',
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: toAnyString(),
|
|
||||||
// timestamp: +Mock.Random.date('T'),
|
|
||||||
author: '@first',
|
|
||||||
title: '@title(5, 10)',
|
|
||||||
content: baseContent,
|
|
||||||
importance: '@integer(1, 3)',
|
|
||||||
display_time: '@datetime',
|
|
||||||
pageviews: '@integer(300, 5000)'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
// image_uri
|
|
||||||
})
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default [
|
|
||||||
// 树形列表接口
|
|
||||||
{
|
|
||||||
url: '/example/treeList',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: ({ query }) => {
|
|
||||||
const { title, pageIndex, pageSize } = query
|
|
||||||
const mockList = treeList.filter((item) => {
|
|
||||||
if (title && item.title.indexOf(title) < 0) return false
|
|
||||||
return true
|
|
||||||
})
|
|
||||||
const pageList = mockList.filter(
|
|
||||||
(_, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1)
|
|
||||||
)
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
total: mockList.length,
|
|
||||||
list: pageList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 列表接口
|
|
||||||
{
|
|
||||||
url: '/example/list',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: ({ query }) => {
|
|
||||||
const { title, pageIndex, pageSize } = query
|
|
||||||
const mockList = List.filter((item) => {
|
|
||||||
if (title && item.title.indexOf(title) < 0) return false
|
|
||||||
return true
|
|
||||||
})
|
|
||||||
const pageList = mockList.filter(
|
|
||||||
(_, index) => index < pageSize * pageIndex && index >= pageSize * (pageIndex - 1)
|
|
||||||
)
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
total: mockList.length,
|
|
||||||
list: pageList
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 保存接口
|
|
||||||
{
|
|
||||||
url: '/example/save',
|
|
||||||
method: 'post',
|
|
||||||
timeout,
|
|
||||||
response: ({ body }) => {
|
|
||||||
if (!body.id) {
|
|
||||||
List = [
|
|
||||||
Object.assign(body, {
|
|
||||||
id: toAnyString()
|
|
||||||
})
|
|
||||||
].concat(List)
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
List.map((item) => {
|
|
||||||
if (item.id === body.id) {
|
|
||||||
for (const key in item) {
|
|
||||||
item[key] = body[key]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 详情接口
|
|
||||||
{
|
|
||||||
url: '/example/detail',
|
|
||||||
method: 'get',
|
|
||||||
response: ({ query }) => {
|
|
||||||
const { id } = query
|
|
||||||
for (const example of List) {
|
|
||||||
if (example.id === id) {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: example
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 删除接口
|
|
||||||
{
|
|
||||||
url: '/example/delete',
|
|
||||||
method: 'post',
|
|
||||||
response: ({ body }) => {
|
|
||||||
const ids = body.ids
|
|
||||||
if (!ids) {
|
|
||||||
return {
|
|
||||||
code: '500',
|
|
||||||
message: '请选择需要删除的数据'
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
let i = List.length
|
|
||||||
while (i--) {
|
|
||||||
if (ids.indexOf(List[i].id) !== -1) {
|
|
||||||
List.splice(i, 1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: 'success'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
] as MockMethod[]
|
|
|
@ -1,182 +0,0 @@
|
||||||
import config from '@/config/axios/config'
|
|
||||||
import { MockMethod } from 'vite-plugin-mock'
|
|
||||||
|
|
||||||
const { code } = config
|
|
||||||
|
|
||||||
const timeout = 1000
|
|
||||||
|
|
||||||
export default [
|
|
||||||
// 获取统计
|
|
||||||
{
|
|
||||||
url: '/workplace/total',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: {
|
|
||||||
project: 40,
|
|
||||||
access: 2340,
|
|
||||||
todo: 10
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 获取项目
|
|
||||||
{
|
|
||||||
url: '/workplace/project',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{
|
|
||||||
name: 'Github',
|
|
||||||
icon: 'akar-icons:github-fill',
|
|
||||||
message: 'workplace.introduction',
|
|
||||||
personal: 'Archer',
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Vue',
|
|
||||||
icon: 'logos:vue',
|
|
||||||
message: 'workplace.introduction',
|
|
||||||
personal: 'Archer',
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Angular',
|
|
||||||
icon: 'logos:angular-icon',
|
|
||||||
message: 'workplace.introduction',
|
|
||||||
personal: 'Archer',
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'React',
|
|
||||||
icon: 'logos:react',
|
|
||||||
message: 'workplace.introduction',
|
|
||||||
personal: 'Archer',
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Webpack',
|
|
||||||
icon: 'logos:webpack',
|
|
||||||
message: 'workplace.introduction',
|
|
||||||
personal: 'Archer',
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Vite',
|
|
||||||
icon: 'vscode-icons:file-type-vite',
|
|
||||||
message: 'workplace.introduction',
|
|
||||||
personal: 'Archer',
|
|
||||||
time: new Date()
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 获取动态
|
|
||||||
{
|
|
||||||
url: '/workplace/dynamic',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{
|
|
||||||
keys: ['workplace.push', 'Github'],
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
keys: ['workplace.push', 'Github'],
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
keys: ['workplace.push', 'Github'],
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
keys: ['workplace.push', 'Github'],
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
keys: ['workplace.push', 'Github'],
|
|
||||||
time: new Date()
|
|
||||||
},
|
|
||||||
{
|
|
||||||
keys: ['workplace.push', 'Github'],
|
|
||||||
time: new Date()
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 获取团队信息
|
|
||||||
{
|
|
||||||
url: '/workplace/team',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{
|
|
||||||
name: 'Github',
|
|
||||||
icon: 'akar-icons:github-fill'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Vue',
|
|
||||||
icon: 'logos:vue'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Angular',
|
|
||||||
icon: 'logos:angular-icon'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'React',
|
|
||||||
icon: 'logos:react'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Webpack',
|
|
||||||
icon: 'logos:webpack'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'Vite',
|
|
||||||
icon: 'vscode-icons:file-type-vite'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 获取指数
|
|
||||||
{
|
|
||||||
url: '/workplace/radar',
|
|
||||||
method: 'get',
|
|
||||||
timeout,
|
|
||||||
response: () => {
|
|
||||||
return {
|
|
||||||
data: {
|
|
||||||
code: code,
|
|
||||||
data: [
|
|
||||||
{ name: 'workplace.quote', max: 65, personal: 42, team: 50 },
|
|
||||||
{ name: 'workplace.contribution', max: 160, personal: 30, team: 140 },
|
|
||||||
{ name: 'workplace.hot', max: 300, personal: 20, team: 28 },
|
|
||||||
{ name: 'workplace.yield', max: 130, personal: 35, team: 35 },
|
|
||||||
{ name: 'workplace.follow', max: 100, personal: 80, team: 90 }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
] as MockMethod[]
|
|
|
@ -93,7 +93,6 @@
|
||||||
"rollup": "^3.26.3",
|
"rollup": "^3.26.3",
|
||||||
"stylelint": "^15.10.1",
|
"stylelint": "^15.10.1",
|
||||||
"stylelint-config-html": "^1.1.0",
|
"stylelint-config-html": "^1.1.0",
|
||||||
"stylelint-config-prettier": "^9.0.5",
|
|
||||||
"stylelint-config-recommended": "^13.0.0",
|
"stylelint-config-recommended": "^13.0.0",
|
||||||
"stylelint-config-standard": "^34.0.0",
|
"stylelint-config-standard": "^34.0.0",
|
||||||
"stylelint-order": "^6.0.3",
|
"stylelint-order": "^6.0.3",
|
||||||
|
|
|
@ -5,16 +5,12 @@ import type { RouteRecordRaw } from 'vue-router'
|
||||||
import { useTitle } from '@/hooks/web/useTitle'
|
import { useTitle } from '@/hooks/web/useTitle'
|
||||||
import { useNProgress } from '@/hooks/web/useNProgress'
|
import { useNProgress } from '@/hooks/web/useNProgress'
|
||||||
import { usePermissionStoreWithOut } from '@/store/modules/permission'
|
import { usePermissionStoreWithOut } from '@/store/modules/permission'
|
||||||
import { useDictStoreWithOut } from '@/store/modules/dict'
|
|
||||||
import { usePageLoading } from '@/hooks/web/usePageLoading'
|
import { usePageLoading } from '@/hooks/web/usePageLoading'
|
||||||
import { getDictApi } from '@/api/common'
|
|
||||||
|
|
||||||
const permissionStore = usePermissionStoreWithOut()
|
const permissionStore = usePermissionStoreWithOut()
|
||||||
|
|
||||||
const appStore = useAppStoreWithOut()
|
const appStore = useAppStoreWithOut()
|
||||||
|
|
||||||
const dictStore = useDictStoreWithOut()
|
|
||||||
|
|
||||||
const { getStorage } = useStorage()
|
const { getStorage } = useStorage()
|
||||||
|
|
||||||
const { start, done } = useNProgress()
|
const { start, done } = useNProgress()
|
||||||
|
@ -30,14 +26,6 @@ router.beforeEach(async (to, from, next) => {
|
||||||
if (to.path === '/login') {
|
if (to.path === '/login') {
|
||||||
next({ path: '/' })
|
next({ path: '/' })
|
||||||
} else {
|
} else {
|
||||||
if (!dictStore.getIsSetDict) {
|
|
||||||
// 获取所有字典
|
|
||||||
const res = await getDictApi()
|
|
||||||
if (res) {
|
|
||||||
dictStore.setDictObj(res.data)
|
|
||||||
dictStore.setIsSetDict(true)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (permissionStore.getIsAddRouters) {
|
if (permissionStore.getIsAddRouters) {
|
||||||
next()
|
next()
|
||||||
return
|
return
|
||||||
|
|
|
@ -45,7 +45,7 @@ export default ({ command, mode }: ConfigEnv): UserConfig => {
|
||||||
if (name === 'click-outside') {
|
if (name === 'click-outside') {
|
||||||
return ''
|
return ''
|
||||||
}
|
}
|
||||||
return `element-plus/es/components/${name.substring(3)}/style/css`
|
return `element-plus/es/components/${name.replace(/^el-/, '')}/style/css`
|
||||||
}
|
}
|
||||||
}]
|
}]
|
||||||
}),
|
}),
|
||||||
|
|
Loading…
Reference in New Issue