From 363270378aea434a61269ebfcbc2b6bce7c8fc4f Mon Sep 17 00:00:00 2001
From: YuanHuakk <1751826683@qq.com>
Date: Fri, 8 Sep 2023 10:29:31 +0800
Subject: [PATCH] feat(custom): i
---
.env | 2 +-
.env.development | 6 +-
.env.production | 6 +-
.idea/.gitignore | 5 +
.idea/codeStyles/Project.xml | 65 +++++++
.idea/codeStyles/codeStyleConfig.xml | 5 +
.idea/mer.iml | 12 ++
.idea/modules.xml | 8 +
.idea/vcs.xml | 6 +
README.EN.md | 209 --------------------
README.md | 217 ---------------------
build/constant.js | 24 +--
src/components/Editor.vue | 110 +++++++++++
src/components/Upload.vue | 67 +++++++
src/components/common/AppFooter.vue | 4 +-
src/layout/components/header/index.vue | 8 +-
src/router/index.js | 2 +-
src/router/routes/index.js | 74 +++----
src/store/modules/goods/index.js | 19 ++
src/store/modules/index.js | 1 +
src/store/modules/user/index.js | 20 +-
src/utils/auth/token.js | 2 +-
src/utils/http/interceptors.js | 2 +-
src/views/demo/base/index.vue | 100 ----------
src/views/demo/base/keep-alive/index.vue | 31 ---
src/views/demo/base/route.js | 43 -----
src/views/demo/base/unocss/index.vue | 69 -------
src/views/demo/editor/md-editor.vue | 47 -----
src/views/demo/editor/rich-text.vue | 46 -----
src/views/demo/route.js | 65 -------
src/views/demo/table/api.js | 9 -
src/views/demo/table/index.vue | 233 -----------------------
src/views/demo/upload/index.vue | 84 --------
src/views/error-page/route.js | 1 +
src/views/goods/add/api.js | 6 +
src/views/goods/add/index.vue | 173 +++++++++++++++++
src/views/goods/index/api.js | 6 +
src/views/goods/index/index.vue | 170 +++++++++++++++++
src/views/goods/route.js | 31 +++
src/views/login/api.js | 2 +-
src/views/login/index.vue | 7 +-
src/views/multi-menu/a-1/a-1-1/index.vue | 3 -
src/views/multi-menu/a-1/a-1-2/index.vue | 3 -
src/views/multi-menu/a-1/index.vue | 8 -
src/views/multi-menu/a-2/a-2-1/index.vue | 3 -
src/views/multi-menu/a-2/index.vue | 8 -
src/views/multi-menu/index.vue | 8 -
src/views/multi-menu/route.js | 75 --------
src/views/order/index/api.js | 5 +
src/views/order/index/index.vue | 105 ++++++++++
src/views/order/route.js | 26 +++
src/views/settlement/index/api.js | 5 +
src/views/settlement/index/index.vue | 75 ++++++++
src/views/settlement/jf_list/api.js | 5 +
src/views/settlement/jf_list/index.vue | 80 ++++++++
src/views/settlement/route.js | 35 ++++
src/views/user/index/api.js | 5 +
src/views/user/index/index.vue | 102 ++++++++++
src/views/user/route.js | 20 ++
src/views/workbench/index.vue | 8 +-
60 files changed, 1234 insertions(+), 1342 deletions(-)
create mode 100644 .idea/.gitignore
create mode 100644 .idea/codeStyles/Project.xml
create mode 100644 .idea/codeStyles/codeStyleConfig.xml
create mode 100644 .idea/mer.iml
create mode 100644 .idea/modules.xml
create mode 100644 .idea/vcs.xml
delete mode 100644 README.EN.md
delete mode 100644 README.md
create mode 100644 src/components/Editor.vue
create mode 100644 src/components/Upload.vue
create mode 100644 src/store/modules/goods/index.js
delete mode 100644 src/views/demo/base/index.vue
delete mode 100644 src/views/demo/base/keep-alive/index.vue
delete mode 100644 src/views/demo/base/route.js
delete mode 100644 src/views/demo/base/unocss/index.vue
delete mode 100644 src/views/demo/editor/md-editor.vue
delete mode 100644 src/views/demo/editor/rich-text.vue
delete mode 100644 src/views/demo/route.js
delete mode 100644 src/views/demo/table/api.js
delete mode 100644 src/views/demo/table/index.vue
delete mode 100644 src/views/demo/upload/index.vue
create mode 100644 src/views/goods/add/api.js
create mode 100644 src/views/goods/add/index.vue
create mode 100644 src/views/goods/index/api.js
create mode 100644 src/views/goods/index/index.vue
create mode 100644 src/views/goods/route.js
delete mode 100644 src/views/multi-menu/a-1/a-1-1/index.vue
delete mode 100644 src/views/multi-menu/a-1/a-1-2/index.vue
delete mode 100644 src/views/multi-menu/a-1/index.vue
delete mode 100644 src/views/multi-menu/a-2/a-2-1/index.vue
delete mode 100644 src/views/multi-menu/a-2/index.vue
delete mode 100644 src/views/multi-menu/index.vue
delete mode 100644 src/views/multi-menu/route.js
create mode 100644 src/views/order/index/api.js
create mode 100644 src/views/order/index/index.vue
create mode 100644 src/views/order/route.js
create mode 100644 src/views/settlement/index/api.js
create mode 100644 src/views/settlement/index/index.vue
create mode 100644 src/views/settlement/jf_list/api.js
create mode 100644 src/views/settlement/jf_list/index.vue
create mode 100644 src/views/settlement/route.js
create mode 100644 src/views/user/index/api.js
create mode 100644 src/views/user/index/index.vue
create mode 100644 src/views/user/route.js
diff --git a/.env b/.env
index d407df6..473e5b8 100644
--- a/.env
+++ b/.env
@@ -1,3 +1,3 @@
-VITE_TITLE = 'Vue Naive Admin'
+VITE_TITLE = '捷兑通 - 商家端'
VITE_PORT = 3100
diff --git a/.env.development b/.env.development
index 9feaca6..5ee0032 100644
--- a/.env.development
+++ b/.env.development
@@ -2,10 +2,10 @@
VITE_PUBLIC_PATH = '/'
# 是否启用MOCK
-VITE_USE_MOCK = true
+VITE_USE_MOCK = false
-# 是否启用MOCK
+# 是否启用代理
VITE_USE_PROXY = true
# base api
-VITE_BASE_API = '/api'
+VITE_BASE_API = '/store'
diff --git a/.env.production b/.env.production
index 67c17e2..d01b461 100644
--- a/.env.production
+++ b/.env.production
@@ -1,11 +1,11 @@
# 资源公共路径,需要以 /开头和结尾
-VITE_PUBLIC_PATH = '/'
+VITE_PUBLIC_PATH = '/static/mer'
# 是否启用MOCK
-VITE_USE_MOCK = true
+VITE_USE_MOCK = false
# base api
-VITE_BASE_API = '/api'
+VITE_BASE_API = 'https://www.wanzhuanyongcheng.cn/store'
# 是否启用压缩
VITE_USE_COMPRESS = true
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..10b731c
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,5 @@
+# 默认忽略的文件
+/shelf/
+/workspace.xml
+# 基于编辑器的 HTTP 客户端请求
+/httpRequests/
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..7b84c3a
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..307554b
--- /dev/null
+++ b/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/mer.iml b/.idea/mer.iml
new file mode 100644
index 0000000..0b872d8
--- /dev/null
+++ b/.idea/mer.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..947e478
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..c8397c9
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/README.EN.md b/README.EN.md
deleted file mode 100644
index 7852dea..0000000
--- a/README.EN.md
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- 英文 |
- 中文
-
-
-### Introduction
-
-[Vue Naive Admin](https://github.com/zclzone/vue-naive-admin) is a **completely open source free and commercially allowed ** admin template,Based on the latest technology stack of front-end such as `Vue3、Vite3、Pinia、Unocss and Naive UI`. Compared with other more popular backend management templates, this project is more concise, lightweight, fresh style, very low learning costs, ideal for small and medium-sized projects or personal projects.
-
-### Features
-
-- 🍒 Integrated [Naive UI](https://www.naiveui.com),recommended by Evan You.
-- 🍑 Integrated login, logout and permission verification.
-- 🍐 Integrated multi-environment configuration, dev, test, production and github pages environments.
-- 🍎 Integrated `eslint + prettier`.
-- 🍌 Integrated `husky + commitlint`.
-- 🍉 Integrated `Mock`.
-- 🍍 Integrated `pinia`,lightweight, simple and easy to use alternative to vuex.
-- 📦 Integrated `unplugin` auto import.
-- 🤹 Integrated `iconify` icon,support custom svg icons.
-- 🍇 Integrated `unocss`.
-
-### Preview
-
-[https://template.qszone.com](https://template.qszone.com)
-
-[https://base.isme.top](https://base.isme.top)
-
-### Docs
-
-[Vue Naive Admin Docs](https://zclzone.github.io/vue-naive-admin-docs)
-
-
-### Getting Started
-
-```shell
-# Recommended setup git autocrlf 为 false
-git config --global core.autocrlf false
-
-# Clone Project
-git clone https://github.com/zclzone/vue-naive-admin.git
-
-cd vue-naive-admin
-
-# Install dependencies(Recommended use pnpm: https://pnpm.io/zh/installation)
-npm i -g pnpm # Installed and can be ignored
-pnpm i # or npm i
-
-# Start
-pnpm dev
-```
-
-### Build and Release
-
-```shell
-# Test Environment
-pnpm build:test
-
-# Github Environment
-pnpm build:github
-
-# Prod Environment
-pnpm build
-```
-
-### Other
-
-```shell
-# eslint check
-pnpm lint
-
-# eslint check and fix
-pnpm lint:fix
-
-# Preview(Need to build first)
-pnpm preview
-
-# Commit(husky+commitlint)
-pnpm cz
-```
-
-### Directory description
-
-```
-Vue Naive Admin
-|-- .github // github相关,如推送github仓库后自动部署gh pages
-|-- .husky // git commit钩子
-|-- .vscode // vscode编辑器相关
-| |-- extensions.json // 插件推荐
-| |-- settings.json // 项目级别的vscode配置,优先级大于全局vscode配置
-|-- build // 构建相关配置
-| |-- constant.js // 构建相关的常量
-| |-- utils.js // 构建相关的工具方法
-| |-- config
-| | |-- define.js // 注入全局常量,启动或打包后将添加到window中
-| | |-- proxy.js // 代理配置
-| |-- plugin
-| | |-- html.js // vite-plugin-html插件,用于注入变量或者html标签
-| | |-- mock.js // vite-plugin-mock插件,处理mock
-| | |-- unplugin.js // unplugin相关插件,包含DefineOptions和自动导入
-| |-- script // 打包完成后执行的一些node脚本(不重要)
-| |-- build-cname.js // 自动生成cname
-|-- mock // mock
-| |-- utils.js // mock请求需要用到的工具方法
-| |-- api // mock接口
-|-- public // 公共资源,文件夹下的文件会在打包后会直接加到dist根目录下
-|-- settings // 项目配置
-| |-- proxy-config.js // 代理配置文件
-| |-- theme.json // 主题配置项,主题色等
-|-- src
-| |-- api // 公共api
-| |-- assets // 静态资源
-| | |-- images // 图片
-| | |-- svg // svg图标
-| |-- components // 全局组件
-| | |-- common // 公共组件
-| | |-- icon // icon相关组件
-| | |-- page // 页面组件
-| | |-- query-bar // 查询选项
-| | |-- table // 封装的表格组件
-| |-- composables // 封装的组合式函数
-| |-- layout // 布局相关组件
-| | |-- components
-| | |-- AppMain.vue // 主体内容
-| | |-- header // 头部
-| | |-- sidebar // 侧边菜单栏
-| | |-- tags // 多页签栏
-| |-- router // 路由
-| | |-- guard // 路由守卫
-| | |-- routes // 路由列表
-| |-- store // 状态管理(pinia)
-| | |-- modules // 模块
-| | |-- app // 管理页面重新加载、折叠菜单栏和keepAlive等
-| | |-- permission // 权限相关,管理权限菜单
-| | |-- tags // 管理多页签
-| | |-- user // 用户模块,管理用户信息、登录登出
-| |-- styles // 样式
-| |-- utils // 封装的工具方法
-| | |-- auth // 权限相关,如token、跳转登录页等
-| | |-- common // 通用
-| | |-- http // 封装axios
-| | |-- storage // 封装localStorage和sessionStorage
-| |-- views // 页面
-| | |-- demo // 示例
-| | |-- error-page // 错误页
-| | |-- login // 登录页
-| | |-- workbench // 首页
-| |-- App.vue
-| |-- main.js
-|-- .cz-config.js // git提交配置
-|-- .editorconfig // 编辑器配置
-|-- .env // 环境文件,所有环境都会载入
-|-- .env.development // 开发环境文件
-|-- .env.production // 生产环境文件
-|-- .env.test // 测试环境文件
-|-- .eslintignore // eslint忽略
-|-- .eslintrc.js // eslint配置
-|-- .gitignore // git忽略
-|-- .prettierignore // prettier格式化忽略
-|-- commitlint.config.js // commitlint规范配置
-|-- index.html
-|-- jsconfig.json // js配置
-|-- LICENSE // 协议
-|-- package.json // 依赖描述文件
-|-- pnpm-lock.yaml // 依赖锁定文件
-|-- prettier.config.js // prettier格式化配置
-|-- README.md // 项目描述文档(英文)
-|-- README.zh-CN.md // 项目描述文档(中文)
-|-- unocss.config.js // unocss配置
-|-- vite.config.js // vite配置
-```
-
-### TS version: Qs Admin
-
-#### source code
-
-- github: [https://github.com/zclzone/qs-admin](https://github.com/zclzone/qs-admin)
-- gitee: [https://gitee.com/zclzone/qs-admin-ts](https://gitee.com/zclzone/qs-admin-ts)
-
-#### preview
-
-- [https://admin.qszone.com](https://admin.qszone.com)
-- [https://zclzone.github.io/qs-admin](https://zclzone.github.io/qs-admin)
-
-### Open source projects that use this project:
-
-- [gin-vue-blog](https://github.com/szluyu99/gin-vue-blog): A full-stack blog project in Golang, the frontend of the blog backend is based on vue-naive-admin and integrates with a real backend service, implementing features such as backend-controlled routing.
-
-### Communication group & About the author
-
-
-
-
-
-
-
-
-
diff --git a/README.md b/README.md
deleted file mode 100644
index 137757b..0000000
--- a/README.md
+++ /dev/null
@@ -1,217 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- 中文 |
- English
-
-
-### 简介
-
-[Vue Naive Admin](https://github.com/zclzone/vue-naive-admin) 是一个 **完全开源免费且允许商用** 的后台管理模板,基于 `Vue3、Vite3、Pinia、Unocss 和 Naive UI` 等前端最新技术栈。相较于其他比较流行的后台管理模板,此项目更加简洁、轻量,风格清新,学习成本非常低,非常适合中小型项目或者个人项目。
-
-### 功能
-
-- 🍒 集成 [Naive UI](https://www.naiveui.com)
-- 🍑 集成登陆、注销及权限验证
-- 🍐 集成多环境配置,dev、测试、生产和github pages环境
-- 🍎 集成 `eslint + prettier`,代码约束和格式化统一
-- 🍌 集成 `husky + commitlint`,代码提交规范化
-- 🍉 集成 `mock` 接口服务,dev 环境和发布环境都支持,可动态配置是否启用 mock 服务,不启用时不会加载 mock 包,减少打包体积
-- 🍍 集成 `pinia`,vuex 的替代方案,轻量、简单、易用
-- 📦 集成 `unplugin` 插件,自动导入,解放双手,开发效率直接起飞
-- 🤹 集成 `iconify` 图标,支持自定义 svg 图标, 优雅使用icon
-- 🍇 集成 `unocss`,antfu 开源的原子 css 解决方案,非常轻量
-
-### 预览
-
-[https://template.qszone.com](https://template.qszone.com)
-
-[https://base.isme.top](https://base.isme.top)
-
-### 文档
-
-[Vue Naive Admin Docs](https://zclzone.github.io/vue-naive-admin-docs)
-
-[语雀文档:Vue Naive Admin](https://www.yuque.com/qszone/vue-naive-admin)
-
-### 快速开始
-
-```shell
-# 推荐配置git autocrlf 为 false(本项目规范使用lf换行符,此配置是为防止git自动将源文件转换为crlf)
-# 不清楚为什么要这样做的请参考这篇文章:https://www.freesion.com/article/4532642129
-git config --global core.autocrlf false
-
-# 克隆项目
-git clone https://github.com/zclzone/vue-naive-admin.git
-
-# 进入项目目录
-cd vue-naive-admin
-
-# 安装依赖(建议使用pnpm: https://pnpm.io/zh/installation)
-npm i -g pnpm # 装了可忽略
-pnpm i # 或者 npm i
-
-# 启动
-pnpm dev
-```
-
-### 构建发布
-
-```shell
-# 构建测试环境
-pnpm build:test
-
-# 构建github pages环境
-pnpm build:github
-
-# 构建生产环境
-pnpm build
-```
-
-### 其他指令
-
-```shell
-# eslint代码格式检查
-pnpm lint
-
-# 代码检查并修复
-pnpm lint:fix
-
-# 预览发布包效果(需先执行构建指令)
-pnpm preview
-
-# 提交代码(husky+commitlint)
-pnpm cz
-```
-
-
-### 目录说明
-
-```
-Vue Naive Admin
-|-- .github // github相关,如推送github仓库后自动部署gh pages
-|-- .husky // git commit钩子
-|-- .vscode // vscode编辑器相关
-| |-- extensions.json // 插件推荐
-| |-- settings.json // 项目级别的vscode配置,优先级大于全局vscode配置
-|-- build // 构建相关配置
-| |-- constant.js // 构建相关的常量
-| |-- utils.js // 构建相关的工具方法
-| |-- config
-| | |-- define.js // 注入全局常量,启动或打包后将添加到window中
-| | |-- proxy.js // 代理配置
-| |-- plugin
-| | |-- html.js // vite-plugin-html插件,用于注入变量或者html标签
-| | |-- mock.js // vite-plugin-mock插件,处理mock
-| | |-- unplugin.js // unplugin相关插件,包含DefineOptions和自动导入
-| |-- script // 打包完成后执行的一些node脚本(不重要)
-| |-- build-cname.js // 自动生成cname
-|-- mock // mock
-| |-- utils.js // mock请求需要用到的工具方法
-| |-- api // mock接口
-|-- public // 公共资源,文件夹下的文件会在打包后会直接加到dist根目录下
-|-- settings // 项目配置
-| |-- proxy-config.js // 代理配置文件
-| |-- theme.json // 主题配置项,主题色等
-|-- src
-| |-- api // 公共api
-| |-- assets // 静态资源
-| | |-- images // 图片
-| | |-- svg // svg图标
-| |-- components // 全局组件
-| | |-- common // 公共组件
-| | |-- icon // icon相关组件
-| | |-- page // 页面组件
-| | |-- query-bar // 查询选项
-| | |-- table // 封装的表格组件
-| |-- composables // 封装的组合式函数
-| |-- layout // 布局相关组件
-| | |-- components
-| | |-- AppMain.vue // 主体内容
-| | |-- header // 头部
-| | |-- sidebar // 侧边菜单栏
-| | |-- tags // 多页签栏
-| |-- router // 路由
-| | |-- guard // 路由守卫
-| | |-- routes // 路由列表
-| |-- store // 状态管理(pinia)
-| | |-- modules // 模块
-| | |-- app // 管理页面重新加载、折叠菜单栏和keepAlive等
-| | |-- permission // 权限相关,管理权限菜单
-| | |-- tags // 管理多页签
-| | |-- user // 用户模块,管理用户信息、登录登出
-| |-- styles // 样式
-| |-- utils // 封装的工具方法
-| | |-- auth // 权限相关,如token、跳转登录页等
-| | |-- common // 通用
-| | |-- http // 封装axios
-| | |-- storage // 封装localStorage和sessionStorage
-| |-- views // 页面
-| | |-- demo // 示例
-| | |-- error-page // 错误页
-| | |-- login // 登录页
-| | |-- workbench // 首页
-| |-- App.vue
-| |-- main.js
-|-- .cz-config.js // git提交配置
-|-- .editorconfig // 编辑器配置
-|-- .env // 环境文件,所有环境都会载入
-|-- .env.development // 开发环境文件
-|-- .env.production // 生产环境文件
-|-- .env.test // 测试环境文件
-|-- .eslintignore // eslint忽略
-|-- .eslintrc.js // eslint配置
-|-- .gitignore // git忽略
-|-- .prettierignore // prettier格式化忽略
-|-- commitlint.config.js // commitlint规范配置
-|-- index.html
-|-- jsconfig.json // js配置
-|-- LICENSE // 协议
-|-- package.json // 依赖描述文件
-|-- pnpm-lock.yaml // 依赖锁定文件
-|-- prettier.config.js // prettier格式化配置
-|-- README.md // 项目描述文档(英文)
-|-- README.zh-CN.md // 项目描述文档(中文)
-|-- unocss.config.js // unocss配置
-|-- vite.config.js // vite配置
-```
-
-### TS 版本: Qs Admin
-
-#### 源码
-
-- github: [https://github.com/zclzone/qs-admin](https://github.com/zclzone/qs-admin)
-- gitee: [https://gitee.com/zclzone/qs-admin-ts](https://gitee.com/zclzone/qs-admin-ts)
-
-#### 预览
-
-- [https://admin.qszone.com](https://admin.qszone.com)
-- [https://zclzone.github.io/qs-admin](https://zclzone.github.io/qs-admin)
-
-### 使用该项目的开源项目
-
-- [gin-vue-blog](https://github.com/szluyu99/gin-vue-blog): Golang 全栈博客项目, 博客后台的前端基于 vue-naive-admin,对接真实后端服务,实现了后端控制路由等特性。
-
-
-### 入群交流 & 关于作者
-
-
-
-
-
-### ☕ 赞助我
-
-> 开源不易,请作者喝杯咖啡吧
-
-
-
-
diff --git a/build/constant.js b/build/constant.js
index e63072c..9abc498 100644
--- a/build/constant.js
+++ b/build/constant.js
@@ -6,28 +6,28 @@ export const PROXY_CONFIG = {
* @请求路径 http://localhost:3100/api/user
* @转发路径 http://localhost:8080/user
*/
- '/api': {
- target: 'http://localhost:8080',
+ '/store': {
+ target: 'https://test.wanzhuanyongcheng.cn',
changeOrigin: true,
- rewrite: (path) => path.replace(new RegExp('^/api'), ''),
+ // rewrite: (path) => path.replace(new RegExp('^/api'), ''),
},
/**
* @desc 不替换匹配值
* @请求路径 http://localhost:3100/api/v2/user
* @转发路径 http://localhost:8080/api/v2/user
*/
- '/api/v2': {
- target: 'http://localhost:8080',
- changeOrigin: true,
- },
+ // '/api/v2': {
+ // target: 'http://localhost:8080',
+ // changeOrigin: true,
+ // },
/**
* @desc 替换部分匹配值
* @请求路径 http://localhost:3100/api/v3/user
* @转发路径 http://localhost:8080/user
*/
- '/api/v3': {
- target: 'http://localhost:8080',
- changeOrigin: true,
- rewrite: (path) => path.replace(new RegExp('^/api'), ''),
- },
+ // '/api/v3': {
+ // target: 'http://localhost:8080',
+ // changeOrigin: true,
+ // rewrite: (path) => path.replace(new RegExp('^/api'), ''),
+ // },
}
diff --git a/src/components/Editor.vue b/src/components/Editor.vue
new file mode 100644
index 0000000..7495264
--- /dev/null
+++ b/src/components/Editor.vue
@@ -0,0 +1,110 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/Upload.vue b/src/components/Upload.vue
new file mode 100644
index 0000000..b7e2859
--- /dev/null
+++ b/src/components/Upload.vue
@@ -0,0 +1,67 @@
+
+
+ 点击上传
+
+
+
+
+
+
diff --git a/src/components/common/AppFooter.vue b/src/components/common/AppFooter.vue
index 6a56b41..5fd978c 100644
--- a/src/components/common/AppFooter.vue
+++ b/src/components/common/AppFooter.vue
@@ -1,6 +1,6 @@
diff --git a/src/layout/components/header/index.vue b/src/layout/components/header/index.vue
index 571ab26..4f8c0c0 100644
--- a/src/layout/components/header/index.vue
+++ b/src/layout/components/header/index.vue
@@ -4,9 +4,9 @@
-
+
-
+
@@ -17,7 +17,7 @@ import BreadCrumb from './components/BreadCrumb.vue'
import MenuCollapse from './components/MenuCollapse.vue'
import FullScreen from './components/FullScreen.vue'
import UserAvatar from './components/UserAvatar.vue'
-import GithubSite from './components/GithubSite.vue'
+// import GithubSite from './components/GithubSite.vue'
import ThemeMode from './components/ThemeMode.vue'
-import MessageNotification from './components/MessageNotification.vue'
+// import MessageNotification from './components/MessageNotification.vue'
diff --git a/src/router/index.js b/src/router/index.js
index e30129b..9ed22eb 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -4,7 +4,7 @@ import { basicRoutes, EMPTY_ROUTE, NOT_FOUND_ROUTE } from './routes'
import { getToken, isNullOrWhitespace } from '@/utils'
import { useUserStore, usePermissionStore } from '@/store'
-const isHash = import.meta.env.VITE_USE_HASH === 'true'
+const isHash = true
export const router = createRouter({
history: isHash ? createWebHashHistory('/') : createWebHistory('/'),
routes: basicRoutes,
diff --git a/src/router/routes/index.js b/src/router/routes/index.js
index e293376..b9ab945 100644
--- a/src/router/routes/index.js
+++ b/src/router/routes/index.js
@@ -1,4 +1,4 @@
-const Layout = () => import('@/layout/index.vue')
+// const Layout = () => import('@/layout/index.vue')
export const basicRoutes = [
{
@@ -18,42 +18,42 @@ export const basicRoutes = [
},
},
- {
- name: 'ExternalLink',
- path: '/external-link',
- component: Layout,
- meta: {
- title: '外部链接',
- icon: 'mdi:link-variant',
- order: 4,
- },
- children: [
- {
- name: 'LinkGithubSrc',
- path: 'https://github.com/zclzone/vue-naive-admin',
- meta: {
- title: '源码 - github',
- icon: 'mdi:github',
- },
- },
- {
- name: 'LinkGiteeSrc',
- path: 'https://gitee.com/zclzone/vue-naive-admin',
- meta: {
- title: '源码 - gitee',
- icon: 'simple-icons:gitee',
- },
- },
- {
- name: 'LinkDocs',
- path: 'https://zclzone.github.io/vue-naive-admin-docs',
- meta: {
- title: '文档 - vuepress',
- icon: 'mdi:vuejs',
- },
- },
- ],
- },
+ // {
+ // name: 'ExternalLink',
+ // path: '/external-link',
+ // component: Layout,
+ // meta: {
+ // title: '外部链接',
+ // icon: 'mdi:link-variant',
+ // order: 4,
+ // },
+ // children: [
+ // {
+ // name: 'LinkGithubSrc',
+ // path: 'https://github.com/zclzone/vue-naive-admin',
+ // meta: {
+ // title: '源码 - github',
+ // icon: 'mdi:github',
+ // },
+ // },
+ // {
+ // name: 'LinkGiteeSrc',
+ // path: 'https://gitee.com/zclzone/vue-naive-admin',
+ // meta: {
+ // title: '源码 - gitee',
+ // icon: 'simple-icons:gitee',
+ // },
+ // },
+ // {
+ // name: 'LinkDocs',
+ // path: 'https://zclzone.github.io/vue-naive-admin-docs',
+ // meta: {
+ // title: '文档 - vuepress',
+ // icon: 'mdi:vuejs',
+ // },
+ // },
+ // ],
+ // },
]
export const NOT_FOUND_ROUTE = {
diff --git a/src/store/modules/goods/index.js b/src/store/modules/goods/index.js
new file mode 100644
index 0000000..8a0bacf
--- /dev/null
+++ b/src/store/modules/goods/index.js
@@ -0,0 +1,19 @@
+import { defineStore } from 'pinia'
+
+export const useGoodsStore = defineStore('goods', {
+ state() {
+ return {
+ goodType: 'add',
+ row: {},
+ }
+ },
+ actions: {
+ setRow(row) {
+ this.row = row
+ },
+
+ setType(row) {
+ this.goodType = row
+ },
+ },
+})
diff --git a/src/store/modules/index.js b/src/store/modules/index.js
index edeeee1..1714fb0 100644
--- a/src/store/modules/index.js
+++ b/src/store/modules/index.js
@@ -2,3 +2,4 @@ export * from './app'
export * from './permission'
export * from './tags'
export * from './user'
+export * from './goods'
diff --git a/src/store/modules/user/index.js b/src/store/modules/user/index.js
index f14fb7f..ba8d2d1 100644
--- a/src/store/modules/user/index.js
+++ b/src/store/modules/user/index.js
@@ -2,7 +2,7 @@ import { defineStore } from 'pinia'
import { resetRouter } from '@/router'
import { useTagsStore, usePermissionStore } from '@/store'
import { removeToken, toLogin } from '@/utils'
-import api from '@/api'
+// import api from '@/api'
export const useUserStore = defineStore('user', {
state() {
@@ -26,14 +26,18 @@ export const useUserStore = defineStore('user', {
},
actions: {
async getUserInfo() {
- try {
- const res = await api.getUser()
- const { id, name, avatar, role } = res.data
- this.userInfo = { id, name, avatar, role }
- return Promise.resolve(res.data)
- } catch (error) {
- return Promise.reject(error)
+ const typeMer = localStorage.getItem('type')
+ this.userInfo = {
+ role: [typeMer],
}
+ // try {
+ // const res = await api.getUser()
+ // const { id, name, avatar, role } = res.data
+ // this.userInfo = { id, name, avatar, role }
+ // return Promise.resolve(res.data)
+ // } catch (error) {
+ // return Promise.reject(error)
+ // }
},
async logout() {
const { resetTags } = useTagsStore()
diff --git a/src/utils/auth/token.js b/src/utils/auth/token.js
index 463d54d..0101664 100644
--- a/src/utils/auth/token.js
+++ b/src/utils/auth/token.js
@@ -1,7 +1,7 @@
import { lStorage } from '@/utils'
import api from '@/api'
-const TOKEN_CODE = 'access_token'
+const TOKEN_CODE = 'mer_token'
const DURATION = 6 * 60 * 60
export function getToken() {
diff --git a/src/utils/http/interceptors.js b/src/utils/http/interceptors.js
index 531109d..4cd80e8 100644
--- a/src/utils/http/interceptors.js
+++ b/src/utils/http/interceptors.js
@@ -28,7 +28,7 @@ export function reqReject(error) {
export function resResolve(response) {
// TODO: 处理不同的 response.headers
const { data, status, config, statusText } = response
- if (data?.code !== 0) {
+ if (data?.code !== 200) {
const code = data?.code ?? status
/** 根据code处理对应的操作,并返回处理后的message */
diff --git a/src/views/demo/base/index.vue b/src/views/demo/base/index.vue
deleted file mode 100644
index 3a0e63f..0000000
--- a/src/views/demo/base/index.vue
+++ /dev/null
@@ -1,100 +0,0 @@
-
-
-
-
-
- Default
- Tertiary
- Primary
- Info
- Success
- Warning
- Error
-
-
-
-
-
-
-
- 新增
-
-
-
- 删除
-
-
-
- 编辑
-
-
-
- 查看
-
-
-
-
-
-
-
-
- 信息
- 成功
- 警告
- 错误
-
-
-
-
-
-
- 删除
-
-
-
-
-
-
- 登陆
-
-
-
-
-
-
-
diff --git a/src/views/demo/base/keep-alive/index.vue b/src/views/demo/base/keep-alive/index.vue
deleted file mode 100644
index a97286e..0000000
--- a/src/views/demo/base/keep-alive/index.vue
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
注:右击标签重新加载可重置keep-alive
-
-
-
-
-
diff --git a/src/views/demo/base/route.js b/src/views/demo/base/route.js
deleted file mode 100644
index 0eac9eb..0000000
--- a/src/views/demo/base/route.js
+++ /dev/null
@@ -1,43 +0,0 @@
-const Layout = () => import('@/layout/index.vue')
-
-export default {
- name: 'Test',
- path: '/base',
- component: Layout,
- redirect: '/base/index',
- meta: {
- title: '基础功能',
- icon: 'majesticons:compass-line',
- order: 1,
- },
- children: [
- {
- name: 'BaseComponents',
- path: 'index',
- component: () => import('./index.vue'),
- meta: {
- title: '基础组件',
- icon: 'material-symbols:auto-awesome-outline-rounded',
- },
- },
- {
- name: 'Unocss',
- path: 'unocss',
- component: () => import('./unocss/index.vue'),
- meta: {
- title: 'Unocss',
- icon: 'material-symbols:auto-awesome-outline-rounded',
- },
- },
- {
- name: 'KeepAlive',
- path: 'keep-alive',
- component: () => import('./keep-alive/index.vue'),
- meta: {
- title: 'KeepAlive',
- icon: 'material-symbols:auto-awesome-outline-rounded',
- keepAlive: true,
- },
- },
- ],
-}
diff --git a/src/views/demo/base/unocss/index.vue b/src/views/demo/base/unocss/index.vue
deleted file mode 100644
index b9bef1f..0000000
--- a/src/views/demo/base/unocss/index.vue
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
- 文档:
-
- https://uno.antfu.me/
-
-
-
- playground:
-
- https://unocss.antfu.me/play/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Flex 骰子
-
-
-
diff --git a/src/views/demo/editor/md-editor.vue b/src/views/demo/editor/md-editor.vue
deleted file mode 100644
index 722c855..0000000
--- a/src/views/demo/editor/md-editor.vue
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
- 保存
-
-
-
-
-
-
-
-
-
diff --git a/src/views/demo/editor/rich-text.vue b/src/views/demo/editor/rich-text.vue
deleted file mode 100644
index 4598e22..0000000
--- a/src/views/demo/editor/rich-text.vue
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/demo/route.js b/src/views/demo/route.js
deleted file mode 100644
index 1bade33..0000000
--- a/src/views/demo/route.js
+++ /dev/null
@@ -1,65 +0,0 @@
-const Layout = () => import('@/layout/index.vue')
-
-export default {
- name: 'Demo',
- path: '/demo',
- component: Layout,
- redirect: '/demo/crud',
- meta: {
- title: '示例页面',
- customIcon: 'logo',
- role: ['admin'],
- requireAuth: true,
- order: 3,
- },
- children: [
- {
- name: 'Crud',
- path: 'crud',
- component: () => import('./table/index.vue'),
- meta: {
- title: 'CRUD表格',
- icon: 'ic:baseline-table-view',
- role: ['admin'],
- requireAuth: true,
- keepAlive: true,
- },
- },
- {
- name: 'MDEditor',
- path: 'md-editor',
- component: () => import('./editor/md-editor.vue'),
- meta: {
- title: 'MD编辑器',
- icon: 'ri:markdown-line',
- role: ['admin'],
- requireAuth: true,
- keepAlive: true,
- },
- },
- {
- name: 'RichTextEditor',
- path: 'rich-text',
- component: () => import('./editor/rich-text.vue'),
- meta: {
- title: '富文本编辑器',
- icon: 'ic:sharp-text-rotation-none',
- role: ['admin'],
- requireAuth: true,
- keepAlive: true,
- },
- },
- {
- name: 'Upload',
- path: 'upload',
- component: () => import('./upload/index.vue'),
- meta: {
- title: '图片上传',
- icon: 'mdi:upload',
- role: ['admin'],
- requireAuth: true,
- keepAlive: true,
- },
- },
- ],
-}
diff --git a/src/views/demo/table/api.js b/src/views/demo/table/api.js
deleted file mode 100644
index 0365f34..0000000
--- a/src/views/demo/table/api.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import { request } from '@/utils'
-
-export default {
- getPosts: (params = {}) => request.get('posts', { params }),
- getPostById: (id) => request.get(`/post/${id}`),
- addPost: (data) => request.post('/post', data),
- updatePost: (data) => request.put(`/post/${data.id}`, data),
- deletePost: (id) => request.delete(`/post/${id}`),
-}
diff --git a/src/views/demo/table/index.vue b/src/views/demo/table/index.vue
deleted file mode 100644
index 897a821..0000000
--- a/src/views/demo/table/index.vue
+++ /dev/null
@@ -1,233 +0,0 @@
-
-
-
-
-
-
- 导出
-
-
-
- 新建文章
-
-
-
-
- (tableData = data)"
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/demo/upload/index.vue b/src/views/demo/upload/index.vue
deleted file mode 100644
index f1e924d..0000000
--- a/src/views/demo/upload/index.vue
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
- 点击或者拖动文件到该区域来上传
-
-
-
-
-
-
-
-
-
-
-
-
- url
-
- MD
-
-
- img
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/error-page/route.js b/src/views/error-page/route.js
index 8ea7655..ea2829b 100644
--- a/src/views/error-page/route.js
+++ b/src/views/error-page/route.js
@@ -5,6 +5,7 @@ export default {
path: '/error-page',
component: Layout,
redirect: '/error-page/404',
+ isHidden: true,
meta: {
title: '错误页',
icon: 'mdi:alert-circle-outline',
diff --git a/src/views/goods/add/api.js b/src/views/goods/add/api.js
new file mode 100644
index 0000000..69a2184
--- /dev/null
+++ b/src/views/goods/add/api.js
@@ -0,0 +1,6 @@
+import { request } from '@/utils'
+
+export default {
+ getGoodClass: (data) => request.post('/goods/class', data),
+ addGoods: (data) => request.post('/goods/edit', data),
+}
diff --git a/src/views/goods/add/index.vue b/src/views/goods/add/index.vue
new file mode 100644
index 0000000..2b8ae95
--- /dev/null
+++ b/src/views/goods/add/index.vue
@@ -0,0 +1,173 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 提交
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/goods/index/api.js b/src/views/goods/index/api.js
new file mode 100644
index 0000000..5d5161d
--- /dev/null
+++ b/src/views/goods/index/api.js
@@ -0,0 +1,6 @@
+import { request } from '@/utils'
+
+export default {
+ getGoods: (data) => request.post('/goods', data),
+ getGoodClass: (data) => request.post('/goods/class', data),
+}
diff --git a/src/views/goods/index/index.vue b/src/views/goods/index/index.vue
new file mode 100644
index 0000000..c4b0fff
--- /dev/null
+++ b/src/views/goods/index/index.vue
@@ -0,0 +1,170 @@
+
+
+ 添加商品
+
+
+
+
+
+
+
diff --git a/src/views/goods/route.js b/src/views/goods/route.js
new file mode 100644
index 0000000..6f5a5a3
--- /dev/null
+++ b/src/views/goods/route.js
@@ -0,0 +1,31 @@
+const Layout = () => import('@/layout/index.vue')
+
+export default {
+ name: '商品管理',
+ path: '/goods',
+ component: Layout,
+ redirect: '/goods_list',
+ children: [
+ {
+ name: 'Goodslist',
+ path: 'goods_list',
+ component: () => import('./index/index.vue'),
+ meta: {
+ title: '商品列表',
+ icon: 'mdi:account-multiple',
+ order: 10,
+ },
+ },
+ {
+ name: 'Goodsadd',
+ path: 'goods_add',
+ isHidden: true,
+ component: () => import('./add/index.vue'),
+ meta: {
+ title: '添加/编辑商品',
+ icon: 'mdi:account-multiple',
+ order: 10,
+ },
+ },
+ ],
+}
diff --git a/src/views/login/api.js b/src/views/login/api.js
index d1c539c..940f30b 100644
--- a/src/views/login/api.js
+++ b/src/views/login/api.js
@@ -1,5 +1,5 @@
import { request } from '@/utils'
export default {
- login: (data) => request.post('/auth/login', data, { noNeedToken: true }),
+ login: (data) => request.post('/login', data, { noNeedToken: true }),
}
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index e9d23b0..d61fe53 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -19,7 +19,7 @@
v-model:value="loginInfo.name"
autofocus
class="h-50 items-center pl-10 text-16"
- placeholder="admin"
+ placeholder="请输入账号"
:maxlength="20"
/>
@@ -29,7 +29,7 @@
class="h-50 items-center pl-10 text-16"
type="password"
show-password-on="mousedown"
- placeholder="123456"
+ placeholder="请输入密码"
:maxlength="20"
@keypress.enter="handleLogin"
/>
@@ -99,9 +99,10 @@ async function handleLogin() {
try {
loading.value = true
$message.loading('正在验证...')
- const res = await api.login({ name, password: password.toString() })
+ const res = await api.login({ phone: name, password: password.toString() })
$message.success('登录成功')
setToken(res.data.token)
+ window.localStorage.setItem('type', res.data.type)
if (isRemember.value) {
lStorage.set('loginInfo', { name, password })
} else {
diff --git a/src/views/multi-menu/a-1/a-1-1/index.vue b/src/views/multi-menu/a-1/a-1-1/index.vue
deleted file mode 100644
index 417f6d9..0000000
--- a/src/views/multi-menu/a-1/a-1-1/index.vue
+++ /dev/null
@@ -1,3 +0,0 @@
-
- a-1-1
-
diff --git a/src/views/multi-menu/a-1/a-1-2/index.vue b/src/views/multi-menu/a-1/a-1-2/index.vue
deleted file mode 100644
index 7b0c204..0000000
--- a/src/views/multi-menu/a-1/a-1-2/index.vue
+++ /dev/null
@@ -1,3 +0,0 @@
-
- a-1-2
-
diff --git a/src/views/multi-menu/a-1/index.vue b/src/views/multi-menu/a-1/index.vue
deleted file mode 100644
index 8d93e98..0000000
--- a/src/views/multi-menu/a-1/index.vue
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
- a-1
-
-
-
-
-
diff --git a/src/views/multi-menu/a-2/a-2-1/index.vue b/src/views/multi-menu/a-2/a-2-1/index.vue
deleted file mode 100644
index 7460f24..0000000
--- a/src/views/multi-menu/a-2/a-2-1/index.vue
+++ /dev/null
@@ -1,3 +0,0 @@
-
- a-2-1
-
diff --git a/src/views/multi-menu/a-2/index.vue b/src/views/multi-menu/a-2/index.vue
deleted file mode 100644
index 8059025..0000000
--- a/src/views/multi-menu/a-2/index.vue
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
- a-2
-
-
-
-
-
diff --git a/src/views/multi-menu/index.vue b/src/views/multi-menu/index.vue
deleted file mode 100644
index 709b19c..0000000
--- a/src/views/multi-menu/index.vue
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
- a
-
-
-
-
-
diff --git a/src/views/multi-menu/route.js b/src/views/multi-menu/route.js
deleted file mode 100644
index 278ae75..0000000
--- a/src/views/multi-menu/route.js
+++ /dev/null
@@ -1,75 +0,0 @@
-const Layout = () => import('@/layout/index.vue')
-
-export default {
- name: 'MultipleMenu',
- path: '/multi-menu',
- component: Layout,
- meta: {
- title: '多级菜单',
- icon: 'ic:baseline-menu',
- role: ['admin'],
- requireAuth: true,
- order: 4,
- },
- children: [
- {
- name: 'a-1',
- path: 'multiple-menu',
- component: () => import('./a-1/index.vue'),
- meta: {
- title: 'a-1',
- icon: 'ic:baseline-menu',
- role: ['admin'],
- requireAuth: true,
- },
- children: [
- {
- name: 'a-1-1',
- path: 'a-1-1',
- component: () => import('./a-1/a-1-1/index.vue'),
- meta: {
- title: 'a-1-1',
- icon: 'ic:baseline-menu',
- role: ['admin'],
- requireAuth: true,
- },
- },
- {
- name: 'a-1-2',
- path: 'a-1-2',
- component: () => import('./a-1/a-1-2/index.vue'),
- meta: {
- title: 'a-1-2',
- icon: 'ic:baseline-menu',
- role: ['admin'],
- requireAuth: true,
- },
- },
- ],
- },
- {
- name: 'a-2',
- path: 'a-2',
- component: () => import('./a-2/index.vue'),
- meta: {
- title: 'a-2',
- icon: 'ic:baseline-menu',
- role: ['admin'],
- requireAuth: true,
- },
- children: [
- {
- name: 'a-2-1',
- path: 'a-2-1',
- component: () => import('./a-2/a-2-1/index.vue'),
- meta: {
- title: 'a-2-1(单个子菜单)',
- icon: 'ic:baseline-menu',
- role: ['admin'],
- requireAuth: true,
- },
- },
- ],
- },
- ],
-}
diff --git a/src/views/order/index/api.js b/src/views/order/index/api.js
new file mode 100644
index 0000000..d3cdc33
--- /dev/null
+++ b/src/views/order/index/api.js
@@ -0,0 +1,5 @@
+import { request } from '@/utils'
+
+export default {
+ getOrder: (data) => request.post('/order', data),
+}
diff --git a/src/views/order/index/index.vue b/src/views/order/index/index.vue
new file mode 100644
index 0000000..299954b
--- /dev/null
+++ b/src/views/order/index/index.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/views/order/route.js b/src/views/order/route.js
new file mode 100644
index 0000000..0fb58a5
--- /dev/null
+++ b/src/views/order/route.js
@@ -0,0 +1,26 @@
+const Layout = () => import('@/layout/index.vue')
+
+export default {
+ name: 'Order',
+ path: '/order',
+ component: Layout,
+ redirect: '/order_list',
+ meta: {
+ title: '订单管理',
+ icon: 'majesticons:compass-line',
+ order: 1,
+ // requireAuth: true,
+ // role: ['1'],
+ },
+ children: [
+ {
+ name: 'OrderList',
+ path: 'order_list',
+ component: () => import('./index/index.vue'),
+ meta: {
+ title: '订单列表',
+ icon: 'material-symbols:auto-awesome-outline-rounded',
+ },
+ },
+ ],
+}
diff --git a/src/views/settlement/index/api.js b/src/views/settlement/index/api.js
new file mode 100644
index 0000000..676555e
--- /dev/null
+++ b/src/views/settlement/index/api.js
@@ -0,0 +1,5 @@
+import { request } from '@/utils'
+
+export default {
+ getJF: (data) => request.post('/record', data),
+}
diff --git a/src/views/settlement/index/index.vue b/src/views/settlement/index/index.vue
new file mode 100644
index 0000000..adcfaf0
--- /dev/null
+++ b/src/views/settlement/index/index.vue
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/settlement/jf_list/api.js b/src/views/settlement/jf_list/api.js
new file mode 100644
index 0000000..52a5f2a
--- /dev/null
+++ b/src/views/settlement/jf_list/api.js
@@ -0,0 +1,5 @@
+import { request } from '@/utils'
+
+export default {
+ getList: (data) => request.post('/order', data),
+}
diff --git a/src/views/settlement/jf_list/index.vue b/src/views/settlement/jf_list/index.vue
new file mode 100644
index 0000000..2ef3116
--- /dev/null
+++ b/src/views/settlement/jf_list/index.vue
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/settlement/route.js b/src/views/settlement/route.js
new file mode 100644
index 0000000..efec032
--- /dev/null
+++ b/src/views/settlement/route.js
@@ -0,0 +1,35 @@
+const Layout = () => import('@/layout/index.vue')
+
+export default {
+ name: '积分管理',
+ path: '/settlement',
+ component: Layout,
+ redirect: '/settlement_list',
+ meta: {
+ requireAuth: true,
+ order: 1,
+ role: ['2'],
+ },
+ children: [
+ {
+ name: 'Settlementlist',
+ path: 'settlement_list',
+ component: () => import('./index/index.vue'),
+ meta: {
+ title: '积分明细',
+ icon: 'mdi:account-multiple',
+ order: 10,
+ },
+ },
+ // {
+ // name: 'Jflist',
+ // path: 'jf_list',
+ // component: () => import('./jf_list/index.vue'),
+ // meta: {
+ // title: '积分列表',
+ // icon: 'mdi:account-multiple',
+ // order: 10,
+ // },
+ // },
+ ],
+}
diff --git a/src/views/user/index/api.js b/src/views/user/index/api.js
new file mode 100644
index 0000000..0ba8fa2
--- /dev/null
+++ b/src/views/user/index/api.js
@@ -0,0 +1,5 @@
+import { request } from '@/utils'
+
+export default {
+ getUser: (data) => request.post('/user', data),
+}
diff --git a/src/views/user/index/index.vue b/src/views/user/index/index.vue
new file mode 100644
index 0000000..c8a19f1
--- /dev/null
+++ b/src/views/user/index/index.vue
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/views/user/route.js b/src/views/user/route.js
new file mode 100644
index 0000000..4c36893
--- /dev/null
+++ b/src/views/user/route.js
@@ -0,0 +1,20 @@
+const Layout = () => import('@/layout/index.vue')
+
+export default {
+ name: '用户管理',
+ path: '/user',
+ component: Layout,
+ redirect: '/user_list',
+ children: [
+ {
+ name: 'Userlist',
+ path: 'user_list',
+ component: () => import('./index/index.vue'),
+ meta: {
+ title: '用户列表',
+ icon: 'mdi:account-multiple',
+ order: 10,
+ },
+ },
+ ],
+}
diff --git a/src/views/workbench/index.vue b/src/views/workbench/index.vue
index 563cc30..cc04749 100644
--- a/src/views/workbench/index.vue
+++ b/src/views/workbench/index.vue
@@ -8,7 +8,7 @@
Hello, {{ userStore.name }}
今天又是元气满满的一天
-
+
-
+