From 9c834bbcc61702fe881cf5035647c4e78f355161 Mon Sep 17 00:00:00 2001 From: zq <136432190602163.com> Date: Mon, 16 Jun 2025 15:50:03 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=AB=AF=E5=8C=BA?= =?UTF-8?q?=E5=88=86=E8=B7=AF=E7=94=B1=E3=80=81=E5=90=AF=E5=8A=A8=E3=80=81?= =?UTF-8?q?=E6=89=93=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.admin | 1 + .env.client | 1 + package.json | 9 +- src/router/admin-routes.json | 175 +++++++++++++++++++ src/router/client-routes.json | 81 +++++++++ src/router/index.js | 379 ++++++++++++++++++++---------------------- src/utils/loadRoutes.js | 14 ++ 7 files changed, 459 insertions(+), 201 deletions(-) create mode 100644 .env.admin create mode 100644 .env.client create mode 100644 src/utils/loadRoutes.js diff --git a/.env.admin b/.env.admin new file mode 100644 index 0000000..c5f54ab --- /dev/null +++ b/.env.admin @@ -0,0 +1 @@ +VUE_APP_TYPE=admin \ No newline at end of file diff --git a/.env.client b/.env.client new file mode 100644 index 0000000..ee6f919 --- /dev/null +++ b/.env.client @@ -0,0 +1 @@ +VUE_APP_TYPE=client \ No newline at end of file diff --git a/package.json b/package.json index 9e024cc..d57e37b 100755 --- a/package.json +++ b/package.json @@ -2,10 +2,11 @@ "name": "newkuaile-vue-project2", "version": "0.1.0", "private": true, - "scripts": { - "serve": "vue-cli-service serve", - "build": "vue-cli-service build", - "lint": "vue-cli-service lint" + "scripts": { + "serve:client": "vue-cli-service serve --mode client", + "serve:admin": "vue-cli-service serve --mode admin", + "build:client": "vue-cli-service build --mode client", + "build:admin": "vue-cli-service build --mode admin" }, "dependencies": { "axios": "^1.8.3", diff --git a/src/router/admin-routes.json b/src/router/admin-routes.json index e69de29..10979ca 100644 --- a/src/router/admin-routes.json +++ b/src/router/admin-routes.json @@ -0,0 +1,175 @@ +[ + { + "path": "/super/ranking", + "component": "views/super/Ranking/Ranking.vue", + "webpackChunkName": "Ranking", + "children": [ + { + "path": "", + "redirect": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "总利润 - 年排行", + "rank_type": 1, + "type": "year", + "showDateSelect": false + } + }, + { + "path": "yearProfit", + "name": "年排行", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "总利润 - 年排行", + "rank_type": 1, + "type": "year", + "showDateSelect": false + } + }, + { + "path": "monthProfit", + "name": "月排行", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "总利润 - 月排行", + "rank_type": 1, + "type": "month", + "showDateSelect": true + } + }, + { + "path": "checkProfit", + "name": "产品毛利润排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 毛利润排行", + "rank_type": 1, + "type": "check_type" + } + }, + { + "path": "checkOrdernum", + "name": "产品订单数排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 订单数排行", + "rank_type": 2, + "type": "check_type" + } + }, + { + "path": "checkRefund", + "name": "产品退单数排行", + "component": "views/super/Ranking/RankList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 退单数排行", + "rank_type": 3, + "type": "check_type" + } + }, + { + "path": "loss", + "name": "产品负毛利排行", + "component": "views/super/Ranking/RankList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 负毛利排行", + "rank_type": 5, + "type": "loss" + } + }, + { + "path": "agentProfit", + "name": "代理商毛利润排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "代理商 - 毛利润排行", + "rank_type": 1, + "type": "agent" + } + }, + { + "path": "agentRecharge", + "name": "代理商充值排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "代理商 - 充值排行", + "rank_type": 4, + "type": "agent" + } + }, + { + "path": "agentNew", + "name": "代理商新加盟", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "代理商 - 新加盟", + "type": "agentnew", + "showDateSelect": false + } + }, + { + "path": "purchase", + "name": "采购价", + "component": "views/super/Ranking/Purchase.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "设置 - 采购价", + "type": "purchase" + } + }, + { + "path": "stagePurchase", + "name": "阶段采购价", + "component": "views/super/Ranking/Purchase.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "设置 - 阶段采购", + "type": "stagePurchase" + } + }, + { + "path": "detail", + "name": "详情", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "详情", + "type": "day", + "showDateSelect": false, + "lookMore": false + } + }, + { + "path": "list", + "name": "列表", + "component": "views/super/Ranking/RankList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "详情", + "showDateSelect": false, + "lookMore": false + } + }, + { + "path": "order", + "name": "订单统计", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "订单统计", + "type": "order", + "showDateSelect": false + } + } + ] + } + ] \ No newline at end of file diff --git a/src/router/client-routes.json b/src/router/client-routes.json index e69de29..7a2d077 100644 --- a/src/router/client-routes.json +++ b/src/router/client-routes.json @@ -0,0 +1,81 @@ +[ + { + "path": "/", + "name": "首页", + "component": "views/HomeView.vue" + }, + { + "path": "/register", + "name": "register", + "component": "views/Register.vue", + "webpackChunkName": "register", + "children": [] + }, + { + "path": "/ui", + "name": "ui组件", + "component": "views/elementGroups.vue", + "webpackChunkName": "ui" + }, + { + "path": "/franchise", + "name": "加盟", + "component": "views/Franchise.vue", + "webpackChunkName": "franchise" + }, + { + "path": "/configureServicePrices", + "name": "配置服务价格", + "component": "views/ConfigureServicePrices.vue", + "webpackChunkName": "configureServicePrices" + }, + { + "path": "/siteList", + "name": "站点列表", + "component": "views/SiteList.vue", + "webpackChunkName": "siteList" + }, + { + "path": "/siteSetting", + "name": "站点设置", + "component": "views/SiteSetting.vue", + "webpackChunkName": "SiteSetting", + "children": [ + { + "path": "", + "redirect": "views/SiteBaseSetting.vue", + "webpackChunkName": "siteBaseSetting" + }, + { + "path": "siteBaseSetting", + "name": "站点基础设置", + "component": "views/SiteBaseSetting.vue", + "webpackChunkName": "siteBaseSetting" + }, + { + "path": "sitePersonalization", + "name": "个性化设置", + "component": "views/SitePersonalization.vue", + "webpackChunkName": "sitePersonalization" + }, + { + "path": "siteH5", + "name": "移动端设置", + "component": "views/SiteH5.vue", + "webpackChunkName": "siteH5" + }, + { + "path": "siteSem", + "name": "营销推广", + "component": "views/SiteSem.vue", + "webpackChunkName": "siteSem" + } + ] + }, + { + "path": "/pageTemplete", + "name": "网页模板", + "component": "views/PageTemplete.vue", + "webpackChunkName": "pageTemplete" + } + ] \ No newline at end of file diff --git a/src/router/index.js b/src/router/index.js index 942ec7e..54d99d6 100755 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,7 +1,9 @@ import Vue from 'vue'; import VueRouter from 'vue-router'; import store from '../store'; -import HomeView from '../views/HomeView.vue'; +import clientRoutes from './client-routes.json'; +import adminRoutes from './admin-routes.json'; +import { loadRoutesFromJSON } from '../utils/loadRoutes' // import UserPosts from '../views/UserPosts.vue'; // import Franchise from '../views/Franchise.vue' @@ -18,211 +20,194 @@ const whiteFooterList = ['/', '/ui', '/configureServicePrices', '/super/ranking/checkRefund', '/super/ranking/agentProfit', '/super/ranking/agentRecharge', '/super/ranking/agentNew', '/super/ranking/purchase','/super/ranking/stagePurchase','/super/ranking/loss' ]; //底部白名单 -const routes = [{ - path: '/', - name: '首页', - component: HomeView, - // component: Franchise - }, - { - path: '/register', - name: 'register', - // route level code-splitting - // this generates a separate chunk (about.[hash].js) for this route - // which is lazy-loaded when the route is visited. - component: () => import( /* webpackChunkName: "register" */ '../views/Register.vue'), - children: [ // 这是子路由的定义开始 - // { - // path: '', // 当访问 /user 时,默认加载 UserProfile 组件 - // name: 'register', - // component: Register - // }, - // { - // path: 'posts', // 当访问 /user/posts 时,加载 UserPosts 组件 - // name: 'UserPosts', - // component: UserPosts, - // } - ] - }, - { - path: '/ui', - name: 'ui组件', - // route level code-splitting - // this generates a separate chunk (about.[hash].js) for this route - // which is lazy-loaded when the route is visited. - component: () => import( /* webpackChunkName: "ui" */ '../views/elementGroups.vue') - }, - { - path: '/franchise', - name: '加盟', - component: () => import( /* webpackChunkName: "franchise" */ '../views/Franchise.vue') - }, - { - path: '/configureServicePrices', - name: '配置服务价格', - component: () => import( /* webpackChunkName: "configureServicePrices" */ '../views/ConfigureServicePrices.vue') - }, - { - path: '/siteList', - name: '站点列表', - component: () => import( /* webpackChunkName: "siteList" */ '../views/SiteList.vue') - }, - { - path: '/siteSetting', - name: '站点设置', - component: () => import( /* webpackChunkName: "SiteSetting" */ '../views/SiteSetting.vue'), - children: [ - { - path: '', // 默认子路由 - redirect: () => import( /* webpackChunkName: "siteBaseSetting" */ '../views/SiteBaseSetting.vue') // 重定向到第一个页面 - }, - { - path: 'siteBaseSetting', - name: '站点基础设置', - component: () => import( /* webpackChunkName: "siteBaseSetting" */ '../views/SiteBaseSetting.vue'), - }, - { - path: 'sitePersonalization', - name: '个性化设置', - component: () => import( /* webpackChunkName: "sitePersonalization" */ '../views/SitePersonalization.vue') - }, - { - path: 'siteH5', - name: '移动端设置', - component: () => import( /* webpackChunkName: "siteH5" */ '../views/SiteH5.vue') - }, - { - path: 'siteSem', - name: '营销推广', - component: () => import( /* webpackChunkName: "siteSem" */ '../views/SiteSem.vue') - }, - // { - // path: 'demoTable', // 默认子路由 - // name: '测试页面', - // redirect: () => import( /* webpackChunkName: "demoTable" */ '../views/DemoTable.vue') // 重定向到第一个页面 - // }, - ] - }, - { - path: '/pageTemplete', - name: '网页模板', - component: () => import( /* webpackChunkName: "pageTemplete" */ '../views/PageTemplete.vue') - }, +// ...loadRoutesFromJSON(rankingRoutes), +const APP_TYPE = process.env.VUE_APP_TYPE || 'client'; + +const routes = APP_TYPE === 'admin' + ? [...loadRoutesFromJSON(adminRoutes)] + : [...loadRoutesFromJSON(clientRoutes)]; + + console.log(routes,'routes---000'); +const router = new VueRouter({ + mode: 'history', + routes +}); +// const routes = [ // { - // path: '/demo', - // name: 'demo页面', - // component: () => import( /* webpackChunkName: "Demo" */ '../views/Demo.vue'), + // path: '/', + // name: '首页', + // component: HomeView, + // // component: Franchise + // }, + // { + // path: '/register', + // name: 'register', + // component: () => import( /* webpackChunkName: "register" */ '../views/Register.vue'), + // children: [ // 这是子路由的定义开始 + // ] + // }, + // { + // path: '/ui', + // name: 'ui组件', + // component: () => import( /* webpackChunkName: "ui" */ '../views/elementGroups.vue') + // }, + // { + // path: '/franchise', + // name: '加盟', + // component: () => import( /* webpackChunkName: "franchise" */ '../views/Franchise.vue') + // }, + // { + // path: '/configureServicePrices', + // name: '配置服务价格', + // component: () => import( /* webpackChunkName: "configureServicePrices" */ '../views/ConfigureServicePrices.vue') + // }, + // { + // path: '/siteList', + // name: '站点列表', + // component: () => import( /* webpackChunkName: "siteList" */ '../views/SiteList.vue') + // }, + + // { + // path: '/siteSetting', + // name: '站点设置', + // component: () => import( /* webpackChunkName: "SiteSetting" */ '../views/SiteSetting.vue'), // children: [ // { // path: '', // 默认子路由 - // redirect: () => import( /* webpackChunkName: "DemoTable" */ '../views/DemoTable.vue') // 重定向到第一个页面 + // redirect: () => import( /* webpackChunkName: "siteBaseSetting" */ '../views/SiteBaseSetting.vue') // 重定向到第一个页面 + // }, + // { + // path: 'siteBaseSetting', + // name: '站点基础设置', + // component: () => import( /* webpackChunkName: "siteBaseSetting" */ '../views/SiteBaseSetting.vue'), + // }, + // { + // path: 'sitePersonalization', + // name: '个性化设置', + // component: () => import( /* webpackChunkName: "sitePersonalization" */ '../views/SitePersonalization.vue') + // }, + // { + // path: 'siteH5', + // name: '移动端设置', + // component: () => import( /* webpackChunkName: "siteH5" */ '../views/SiteH5.vue') + // }, + // { + // path: 'siteSem', + // name: '营销推广', + // component: () => import( /* webpackChunkName: "siteSem" */ '../views/SiteSem.vue') // }, // ] - // } + // }, + // { + // path: '/pageTemplete', + // name: '网页模板', + // component: () => import( /* webpackChunkName: "pageTemplete" */ '../views/PageTemplete.vue') + // }, - { - path: '/super/ranking', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Ranking.vue'), - children: [ - { - path: '', // 默认子路由 - redirect: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), - props: {pageTitle:'总利润 - 年排行', rank_type: 1, type: 'year', showDateSelect: false} - }, - { - path: 'yearProfit', - name: '年排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), - props: {pageTitle:'总利润 - 年排行', rank_type: 1, type: 'year', showDateSelect: false} - }, - { - path: 'monthProfit', - name: '月排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), - props: {pageTitle:'总利润 - 月排行', rank_type: 1, type: 'month', showDateSelect: true} - }, - { - path: 'checkProfit', - name: '产品毛利润排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), - props: {pageTitle:'产品 - 毛利润排行', rank_type: 1, type: 'check_type'} - }, - { - path: 'checkOrdernum', - name: '产品订单数排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), - props: {pageTitle:'产品 - 订单数排行', rank_type: 2, type: 'check_type'} - }, - { - path: 'checkRefund', - name: '产品退单数排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), - props: {pageTitle:'产品 - 退单数排行', rank_type: 3, type: 'check_type'} - }, - { - path: 'loss', - name: '产品负毛利排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), - props: {pageTitle:'产品 - 负毛利排行', rank_type: 5, type: 'loss'} - }, - { - path: 'agentProfit', - name: '代理商毛利润排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), - props: {pageTitle:'代理商 - 毛利润排行', rank_type: 1, type: 'agent'} - }, - { - path: 'agentRecharge', - name: '代理商充值排行', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), - props: {pageTitle:'代理商 - 充值排行', rank_type: 4, type: 'agent'} - }, - { - path: 'agentNew', - name: '代理商新加盟', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), - props: {pageTitle:'代理商 - 新加盟', type: 'agentnew', showDateSelect: false} - }, - { - path: 'purchase', - name: '采购价', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Purchase.vue'), - props: {pageTitle:'设置 - 采购价', type: 'purchase'} - }, - { - path: 'stagePurchase', - name: '阶段采购价', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Purchase.vue'), - props: {pageTitle:'设置 - 阶段采购', type: 'stagePurchase'} - }, - { - path: 'detail', - name: '详情', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), - props: {pageTitle:'详情', type: 'day', showDateSelect: false, lookMore:false} - }, - { - path: 'list', - name: '列表', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), - props: {pageTitle:'详情', showDateSelect: false, lookMore:false} - }, - { - path: 'order', - name: '订单统计', - component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), - props: {pageTitle:'订单统计', type: 'order', showDateSelect: false} - }, - ] - }, -] + // { + // path: '/super/ranking', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Ranking.vue'), + // children: [ + // { + // path: '', // 默认子路由 + // redirect: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), + // props: {pageTitle:'总利润 - 年排行', rank_type: 1, type: 'year', showDateSelect: false} + // }, + // { + // path: 'yearProfit', + // name: '年排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), + // props: {pageTitle:'总利润 - 年排行', rank_type: 1, type: 'year', showDateSelect: false} + // }, + // { + // path: 'monthProfit', + // name: '月排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), + // props: {pageTitle:'总利润 - 月排行', rank_type: 1, type: 'month', showDateSelect: true} + // }, + // { + // path: 'checkProfit', + // name: '产品毛利润排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), + // props: {pageTitle:'产品 - 毛利润排行', rank_type: 1, type: 'check_type'} + // }, + // { + // path: 'checkOrdernum', + // name: '产品订单数排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), + // props: {pageTitle:'产品 - 订单数排行', rank_type: 2, type: 'check_type'} + // }, + // { + // path: 'checkRefund', + // name: '产品退单数排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), + // props: {pageTitle:'产品 - 退单数排行', rank_type: 3, type: 'check_type'} + // }, + // { + // path: 'loss', + // name: '产品负毛利排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), + // props: {pageTitle:'产品 - 负毛利排行', rank_type: 5, type: 'loss'} + // }, + // { + // path: 'agentProfit', + // name: '代理商毛利润排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), + // props: {pageTitle:'代理商 - 毛利润排行', rank_type: 1, type: 'agent'} + // }, + // { + // path: 'agentRecharge', + // name: '代理商充值排行', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), + // props: {pageTitle:'代理商 - 充值排行', rank_type: 4, type: 'agent'} + // }, + // { + // path: 'agentNew', + // name: '代理商新加盟', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), + // props: {pageTitle:'代理商 - 新加盟', type: 'agentnew', showDateSelect: false} + // }, + // { + // path: 'purchase', + // name: '采购价', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Purchase.vue'), + // props: {pageTitle:'设置 - 采购价', type: 'purchase'} + // }, + // { + // path: 'stagePurchase', + // name: '阶段采购价', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Purchase.vue'), + // props: {pageTitle:'设置 - 阶段采购', type: 'stagePurchase'} + // }, + // { + // path: 'detail', + // name: '详情', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), + // props: {pageTitle:'详情', type: 'day', showDateSelect: false, lookMore:false} + // }, + // { + // path: 'list', + // name: '列表', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), + // props: {pageTitle:'详情', showDateSelect: false, lookMore:false} + // }, + // { + // path: 'order', + // name: '订单统计', + // component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), + // props: {pageTitle:'订单统计', type: 'order', showDateSelect: false} + // }, + // ] + // }, +// ] -const router = new VueRouter({ - mode: 'history', - base: process.env.BASE_URL, - routes -}) +// const router = new VueRouter({ +// mode: 'history', +// base: process.env.BASE_URL, +// routes +// }) +console.log(router,'router----'); router.beforeEach((to, from, next) => { console.log(to.path, 'to.path-----'); if (whiteSlideList.includes(to.path)) { diff --git a/src/utils/loadRoutes.js b/src/utils/loadRoutes.js new file mode 100644 index 0000000..2dc71dd --- /dev/null +++ b/src/utils/loadRoutes.js @@ -0,0 +1,14 @@ +import Vue from 'vue' +import VueRouter from 'vue-router' + +Vue.use(VueRouter) +export const loadRoutesFromJSON = (routesConfig) => { + return routesConfig.map(route => ({ + ...route, + component: () => import(/* webpackChunkName: route.webpackChunkName */ `@/${route.component}`), + ...(route.redirect ? { + redirect: () => import(/* webpackChunkName: route.webpackChunkName */ `@/${route.redirect}`) + } : {}), + children: route.children ? loadRoutesFromJSON(route.children) : [] + })) + } \ No newline at end of file From f8b5b31bb46753407726f9c32327f46a29fc3a69 Mon Sep 17 00:00:00 2001 From: zq <136432190602163.com> Date: Fri, 1 Aug 2025 18:46:00 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=B7=AF=E7=94=B1=E5=88=86=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + src/router/admin-routes copy.json | 175 +++++++ src/router/admin-routes.json | 373 ++++++++------- src/router/client-routes.json | 290 ++++++++++-- src/router/index.js | 532 +-------------------- src/utils/login.js | 2 +- src/views/DemoTable1.vue | 974 -------------------------------------- vue.config.js | 12 +- 8 files changed, 635 insertions(+), 1724 deletions(-) create mode 100644 src/router/admin-routes copy.json delete mode 100644 src/views/DemoTable1.vue diff --git a/package.json b/package.json index 46ec0fe..a8b4400 100755 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "0.1.0", "private": true, "scripts": { + "serve": "vue-cli-service serve", "serve:client": "vue-cli-service serve --mode client", "serve:admin": "vue-cli-service serve --mode admin", "build:client": "vue-cli-service build --mode client", diff --git a/src/router/admin-routes copy.json b/src/router/admin-routes copy.json new file mode 100644 index 0000000..10979ca --- /dev/null +++ b/src/router/admin-routes copy.json @@ -0,0 +1,175 @@ +[ + { + "path": "/super/ranking", + "component": "views/super/Ranking/Ranking.vue", + "webpackChunkName": "Ranking", + "children": [ + { + "path": "", + "redirect": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "总利润 - 年排行", + "rank_type": 1, + "type": "year", + "showDateSelect": false + } + }, + { + "path": "yearProfit", + "name": "年排行", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "总利润 - 年排行", + "rank_type": 1, + "type": "year", + "showDateSelect": false + } + }, + { + "path": "monthProfit", + "name": "月排行", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "总利润 - 月排行", + "rank_type": 1, + "type": "month", + "showDateSelect": true + } + }, + { + "path": "checkProfit", + "name": "产品毛利润排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 毛利润排行", + "rank_type": 1, + "type": "check_type" + } + }, + { + "path": "checkOrdernum", + "name": "产品订单数排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 订单数排行", + "rank_type": 2, + "type": "check_type" + } + }, + { + "path": "checkRefund", + "name": "产品退单数排行", + "component": "views/super/Ranking/RankList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 退单数排行", + "rank_type": 3, + "type": "check_type" + } + }, + { + "path": "loss", + "name": "产品负毛利排行", + "component": "views/super/Ranking/RankList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "产品 - 负毛利排行", + "rank_type": 5, + "type": "loss" + } + }, + { + "path": "agentProfit", + "name": "代理商毛利润排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "代理商 - 毛利润排行", + "rank_type": 1, + "type": "agent" + } + }, + { + "path": "agentRecharge", + "name": "代理商充值排行", + "component": "views/super/Ranking/RankBatchList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "代理商 - 充值排行", + "rank_type": 4, + "type": "agent" + } + }, + { + "path": "agentNew", + "name": "代理商新加盟", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "代理商 - 新加盟", + "type": "agentnew", + "showDateSelect": false + } + }, + { + "path": "purchase", + "name": "采购价", + "component": "views/super/Ranking/Purchase.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "设置 - 采购价", + "type": "purchase" + } + }, + { + "path": "stagePurchase", + "name": "阶段采购价", + "component": "views/super/Ranking/Purchase.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "设置 - 阶段采购", + "type": "stagePurchase" + } + }, + { + "path": "detail", + "name": "详情", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "详情", + "type": "day", + "showDateSelect": false, + "lookMore": false + } + }, + { + "path": "list", + "name": "列表", + "component": "views/super/Ranking/RankList.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "详情", + "showDateSelect": false, + "lookMore": false + } + }, + { + "path": "order", + "name": "订单统计", + "component": "views/super/Ranking/RankDetail.vue", + "webpackChunkName": "Ranking", + "props": { + "pageTitle": "订单统计", + "type": "order", + "showDateSelect": false + } + } + ] + } + ] \ No newline at end of file diff --git a/src/router/admin-routes.json b/src/router/admin-routes.json index 10979ca..c6fbd16 100644 --- a/src/router/admin-routes.json +++ b/src/router/admin-routes.json @@ -1,175 +1,200 @@ [ - { - "path": "/super/ranking", - "component": "views/super/Ranking/Ranking.vue", - "webpackChunkName": "Ranking", - "children": [ - { - "path": "", - "redirect": "views/super/Ranking/RankDetail.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "总利润 - 年排行", - "rank_type": 1, - "type": "year", - "showDateSelect": false - } - }, - { - "path": "yearProfit", - "name": "年排行", - "component": "views/super/Ranking/RankDetail.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "总利润 - 年排行", - "rank_type": 1, - "type": "year", - "showDateSelect": false - } - }, - { - "path": "monthProfit", - "name": "月排行", - "component": "views/super/Ranking/RankDetail.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "总利润 - 月排行", - "rank_type": 1, - "type": "month", - "showDateSelect": true - } - }, - { - "path": "checkProfit", - "name": "产品毛利润排行", - "component": "views/super/Ranking/RankBatchList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "产品 - 毛利润排行", - "rank_type": 1, - "type": "check_type" - } - }, - { - "path": "checkOrdernum", - "name": "产品订单数排行", - "component": "views/super/Ranking/RankBatchList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "产品 - 订单数排行", - "rank_type": 2, - "type": "check_type" - } - }, - { - "path": "checkRefund", - "name": "产品退单数排行", - "component": "views/super/Ranking/RankList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "产品 - 退单数排行", - "rank_type": 3, - "type": "check_type" - } - }, - { - "path": "loss", - "name": "产品负毛利排行", - "component": "views/super/Ranking/RankList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "产品 - 负毛利排行", - "rank_type": 5, - "type": "loss" - } - }, - { - "path": "agentProfit", - "name": "代理商毛利润排行", - "component": "views/super/Ranking/RankBatchList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "代理商 - 毛利润排行", - "rank_type": 1, - "type": "agent" - } - }, - { - "path": "agentRecharge", - "name": "代理商充值排行", - "component": "views/super/Ranking/RankBatchList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "代理商 - 充值排行", - "rank_type": 4, - "type": "agent" - } - }, - { - "path": "agentNew", - "name": "代理商新加盟", - "component": "views/super/Ranking/RankDetail.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "代理商 - 新加盟", - "type": "agentnew", - "showDateSelect": false - } - }, - { - "path": "purchase", - "name": "采购价", - "component": "views/super/Ranking/Purchase.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "设置 - 采购价", - "type": "purchase" - } - }, - { - "path": "stagePurchase", - "name": "阶段采购价", - "component": "views/super/Ranking/Purchase.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "设置 - 阶段采购", - "type": "stagePurchase" - } - }, - { - "path": "detail", - "name": "详情", - "component": "views/super/Ranking/RankDetail.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "详情", - "type": "day", - "showDateSelect": false, - "lookMore": false - } - }, - { - "path": "list", - "name": "列表", - "component": "views/super/Ranking/RankList.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "详情", - "showDateSelect": false, - "lookMore": false - } - }, - { - "path": "order", - "name": "订单统计", - "component": "views/super/Ranking/RankDetail.vue", - "webpackChunkName": "Ranking", - "props": { - "pageTitle": "订单统计", - "type": "order", - "showDateSelect": false - } - } - ] - } - ] \ No newline at end of file + { + "path": "/super/ranking/yearProfit", + "name": "年排行", + "component": "views/super/Ranking/RankDetail.vue", + "isFirst": true, + "props": { + "pageTitle": "总利润 - 年排行", + "rank_type": 1, + "type": "year", + "showDateSelect": false + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/monthProfit", + "name": "月排行", + "component": "views/super/Ranking/RankDetail.vue", + "isFirst": true, + "props": { + "pageTitle": "总利润 - 月排行", + "rank_type": 1, + "type": "month", + "showDateSelect": true + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/checkProfit", + "name": "产品毛利润排行", + "component": "views/super/Ranking/RankBatchList.vue", + "isFirst": true, + "props": { + "pageTitle": "产品 - 毛利润排行", + "rank_type": 1, + "type": "check_type" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/checkOrdernum", + "name": "产品订单数排行", + "component": "views/super/Ranking/RankBatchList.vue", + "isFirst": true, + "props": { + "pageTitle": "产品 - 订单数排行", + "rank_type": 2, + "type": "check_type" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/checkRefund", + "name": "产品退单数排行", + "component": "views/super/Ranking/RankList.vue", + "isFirst": true, + "props": { + "pageTitle": "产品 - 退单数排行", + "rank_type": 3, + "type": "check_type" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/loss", + "name": "产品负毛利排行", + "component": "views/super/Ranking/RankList.vue", + "isFirst": true, + "props": { + "pageTitle": "产品 - 负毛利排行", + "rank_type": 5, + "type": "loss" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/agentProfit", + "name": "代理商毛利润排行", + "component": "views/super/Ranking/RankBatchList.vue", + "isFirst": true, + "props": { + "pageTitle": "代理商 - 毛利润排行", + "rank_type": 1, + "type": "agent" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/agentRecharge", + "name": "代理商充值排行", + "component": "views/super/Ranking/RankBatchList.vue", + "isFirst": true, + "props": { + "pageTitle": "代理商 - 充值排行", + "rank_type": 1, + "type": "agent" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/agentNew", + "name": "代理商新加盟", + "component": "views/super/Ranking/RankDetail.vue", + "isFirst": true, + "props": { + "pageTitle": "代理商 - 新加盟", + "type": "agentnew", + "showDateSelect": false + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/purchase", + "name": "采购价", + "component": "views/super/Ranking/Purchase.vue", + "isFirst": true, + "props": { + "pageTitle": "设置 - 采购价", + "type": "purchase" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/stagePurchase", + "name": "阶段采购价", + "component": "views/super/Ranking/Purchase.vue", + "isFirst": true, + "props": { + "pageTitle": "设置 - 阶段采购", + "type": "stagePurchase" + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/detail", + "name": "详情", + "component": "views/super/Ranking/RankDetail.vue", + "isFirst": true, + "props": { + "pageTitle": "详情", + "type": "day", + "showDateSelect": false, + "lookMore": false + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/list", + "name": "列表", + "component": "views/super/Ranking/RankList.vue", + "isFirst": true, + "props": { + "pageTitle": "详情", + "showDateSelect": false, + "lookMore": false + }, + "meta": { + "hideBreadcrumb": true + } + }, + { + "path": "/super/ranking/order", + "name": "订单统计", + "component": "views/super/Ranking/RankDetail.vue", + "isFirst": true, + "props": { + "pageTitle": "订单统计", + "showDateSelect": false, + "type": "order" + }, + "meta": { + "hideBreadcrumb": true + } + } + +] \ No newline at end of file diff --git a/src/router/client-routes.json b/src/router/client-routes.json index 7a2d077..d9b7762 100644 --- a/src/router/client-routes.json +++ b/src/router/client-routes.json @@ -2,76 +2,268 @@ { "path": "/", "name": "首页", - "component": "views/HomeView.vue" + "component": "views/HomeView.vue", + "isFirst": true, + "meta": { + "title": "首页", + "hideBreadcrumb": true + } + }, + { + "path": "/agent/supplyList", + "name": "供货价格", + "isFirst": true, + "component": "views/agent/supplyList.vue", + "webpackChunkName": "supplyList", + "meta": { + "title": "首页", + "hideBreadcrumb": true + } + }, + { + "path": "/agent/domainList", + "name": "域名列表", + "isFirst": true, + "component": "views/agent/domainList.vue", + "webpackChunkName": "domainList", + "meta": { + "title": "首页", + "hideBreadcrumb": true + } + }, + { + "path": "/agent/noticeList", + "name": "系统通知", + "isFirst": true, + "component": "views/agent/noticeList.vue", + "webpackChunkName": "noticeList", + "meta": { + "title": "系统通知", + "breadcrumbParent": "首页" + } }, { "path": "/register", "name": "register", + "isFirst": true, "component": "views/Register.vue", "webpackChunkName": "register", - "children": [] + "meta": { + "title": "注册页", + "hideBreadcrumb": true + } }, { "path": "/ui", "name": "ui组件", + "isFirst": true, "component": "views/elementGroups.vue", - "webpackChunkName": "ui" + "webpackChunkName": "ui", + "meta": { + "title": "公共组件示例", + "hideBreadcrumb": true + } + }, + { + "path": "/agent/checkOrderList", + "name": "查重订单", + "isFirst": true, + "component": "views/agent/checkOrderList.vue", + "webpackChunkName": "checkOrderList", + "meta": { + "title": "查重订单", + "breadcrumbParent": "首页", + "hideBreadcrumb": true + }, + "props": { + "list_type": "check" + } + }, + { + "path": "/agent/aiOrderList", + "name": "查重订单", + "isFirst": true, + "component": "views/agent/checkOrderList.vue", + "webpackChunkName": "aiOrderList", + "meta": { + "title": "AI写作订单", + "breadcrumbParent": "首页", + "hideBreadcrumb": true + }, + "props": { + "list_type": "ai" + } + }, + { + "path": "/agent/siteList", + "name": "站点列表", + "isFirst": true, + "component": "views/agent/siteList.vue", + "webpackChunkName": "siteList", + "meta": { + "title": "站点列表", + "breadcrumbParent": "首页", + "hideBreadcrumb": true + } + }, + { + "path": "/agent/siteServiceList", + "name": "服务列表", + "isFirst": true, + "component": "views/agent/siteServiceList.vue", + "webpackChunkName": "siteServiceList", + "meta": { + "title": "服务列表", + "breadcrumbParent": "站点列表" + } + }, + { + "path": "/agent/siteServiceAdd", + "name": "服务列表-添加", + "component": "views/agent/siteServiceAdd.vue", + "webpackChunkName": "siteServiceAdd", + "meta": { + "title": "添加服务", + "breadcrumbParent": "服务列表" + } + }, + { + "path": "/agent/siteAdd", + "name": "添加站点", + "isFirst": true, + "component": "views/agent/siteAdd.vue", + "webpackChunkName": "siteAdd", + "meta": { + "title": "添加站点", + "hideBreadcrumb": true + } + }, + + { + "path": "/agent/siteAddFinally", + "name": "添加站点-添加服务", + "component": "views/agent/siteServiceAdd.vue", + "webpackChunkName": "siteServiceAdd", + "meta": { + "title": "添加服务", + "breadcrumbParent": "添加站点" + } }, { + "path": "/agent/siteBaseSetting", + "name": "站点基本设置", + "component": "views/agent/siteBaseSetting.vue", + "webpackChunkName": "siteBaseSetting", + "meta": { + "title": "站点设置", + "breadcrumbParent": "站点列表" + } + }, + { + "path": "/agent/siteMobileSetting", + "name": "移动端设置", + "component": "views/agent/siteMobileSetting.vue", + "webpackChunkName": "siteMobileSetting", + "meta": { + "title": "站点设置", + "breadcrumbParent": "站点列表" + } + }, + { + "path": "/agent/siteSemSetting", + "name": "营销推广", + "component": "views/agent/siteSemSetting.vue", + "webpackChunkName": "siteSemSetting", + "meta": { + "title": "站点设置", + "breadcrumbParent": "站点列表" + } + }, + { + "path": "/agent/sitePersonalization", + "name": "个性化设置", + "component": "views/agent/sitePersonalization.vue", + "webpackChunkName": "sitePersonalization", + "meta": { + "title": "站点设置", + "breadcrumbParent": "站点列表" + } + }, + { + "path": "/agent/siteTemplate", + "name": "模板设置", + "component": "views/agent/siteTemplate.vue", + "webpackChunkName": "siteTemplate", + "meta": { + "title": "站点设置", + "breadcrumbParent": "站点列表" + } + }, + { + "path": "/agent/payList", + "name": "收款方式", + "isFirst": true, + "component": "views/agent/payList.vue", + "webpackChunkName": "payList", + "meta": { + "title": "收款方式", + "breadcrumbParent": "首页", + "hideBreadcrumb": true + } + }, + { + "path": "/agent/payInfoSetting", + "name": "收款方式设置", + "component": "views/agent/payInfoSetting.vue", + "webpackChunkName": "payInfoSetting", + "meta": { + "title": "收款方式设置", + "breadcrumbParent": "收款方式" + } + }, + { + "path": "/agent/paySetting", + "name": "收款方式设置", + "component": "views/agent/paySetting.vue", + "webpackChunkName": "paySetting", + "meta": { + "title": "收款方式设置", + "breadcrumbParent": "收款方式" + } + }, + { + "path": "/agent/payCertSetting", + "name": "钱款交易设置", + "component": "views/agent/payCertSetting.vue", + "webpackChunkName": "payCertSetting", + "meta": { + "title": "钱款交易设置", + "breadcrumbParent": "收款方式" + } + }, + + + + + { "path": "/franchise", "name": "加盟", - "component": "views/Franchise.vue", - "webpackChunkName": "franchise" + "component": "views/agent/Franchise.vue", + "webpackChunkName": "franchise", + "meta": { + "hideBreadcrumb": true + } }, { "path": "/configureServicePrices", "name": "配置服务价格", "component": "views/ConfigureServicePrices.vue", - "webpackChunkName": "configureServicePrices" - }, - { - "path": "/siteList", - "name": "站点列表", - "component": "views/SiteList.vue", - "webpackChunkName": "siteList" - }, - { - "path": "/siteSetting", - "name": "站点设置", - "component": "views/SiteSetting.vue", - "webpackChunkName": "SiteSetting", - "children": [ - { - "path": "", - "redirect": "views/SiteBaseSetting.vue", - "webpackChunkName": "siteBaseSetting" - }, - { - "path": "siteBaseSetting", - "name": "站点基础设置", - "component": "views/SiteBaseSetting.vue", - "webpackChunkName": "siteBaseSetting" - }, - { - "path": "sitePersonalization", - "name": "个性化设置", - "component": "views/SitePersonalization.vue", - "webpackChunkName": "sitePersonalization" - }, - { - "path": "siteH5", - "name": "移动端设置", - "component": "views/SiteH5.vue", - "webpackChunkName": "siteH5" - }, - { - "path": "siteSem", - "name": "营销推广", - "component": "views/SiteSem.vue", - "webpackChunkName": "siteSem" - } - ] + "webpackChunkName": "configureServicePrices", + "meta": { + "hideBreadcrumb": true + } }, + { "path": "/pageTemplete", "name": "网页模板", diff --git a/src/router/index.js b/src/router/index.js index 3d4aac0..00b8741 100755 --- a/src/router/index.js +++ b/src/router/index.js @@ -46,543 +46,25 @@ const blackFooterList = [ // '/super/ranking/purchase','/super/ranking/stagePurchase','/super/ranking/loss' // ]; -// const routes = [{ -// path: '/', -// name: '首页', -// component: () => import( /* webpackChunkName: "register" */ '../views/agent/home.vue'), -// isFirst: true, //是否属于一级路由 -// meta: { -// title: '首页', //面包屑名称(此页面确认不需要放置在面包屑可以不添加此属性;如果获取不到title 会自动 获取 name 作为面包屑名称) -// hideBreadcrumb: true // 是否隐藏面包屑 -// } -// }, -// { -// path: '/agent/supplyList', -// name: '供货价格', -// component: () => import( /* webpackChunkName: "register" */ '../views/agent/supplyList.vue'), -// isFirst: true, //是否属于一级路由 -// meta: { -// title: '首页', //面包屑名称(此页面确认不需要放置在面包屑可以不添加此属性;如果获取不到title 会自动 获取 name 作为面包屑名称) -// hideBreadcrumb: true // 是否隐藏面包屑 -// } -// }, -// { -// path: '/agent/domainList', -// name: '域名列表', -// component: () => import( /* webpackChunkName: "register" */ '../views/agent/domainList.vue'), -// isFirst: true, //是否属于一级路由 -// meta: { -// title: '首页', //面包屑名称(此页面确认不需要放置在面包屑可以不添加此属性;如果获取不到title 会自动 获取 name 作为面包屑名称) -// hideBreadcrumb: true // 是否隐藏面包屑 -// } -// }, -// { -// path: '/agent/noticeList', -// name: '首页', -// component: () => import( /* webpackChunkName: "register" */ '../views/agent/noticeList.vue'), -// isFirst: true, //是否属于一级路由 -// meta: { -// title: '系统通知', //面包屑名称(此页面确认不需要放置在面包屑可以不添加此属性;如果获取不到title 会自动 获取 name 作为面包屑名称) -// breadcrumbParent: '首页', -// // hideBreadcrumb: true // 是否隐藏面包屑 -// } -// }, -// { -// path: '/register', -// name: 'register', -// // this generates a separate chunk (about.[hash].js) for this route -// // which is lazy-loaded when the route is visited. -// component: () => import( /* webpackChunkName: "register" */ '../views/Register.vue'), -// meta: { -// title: '注册页', -// hideBreadcrumb: true, // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/ui', -// name: 'ui组件', -// isFirst: true, -// component: () => import( /* webpackChunkName: "ui" */ '../views/elementGroups.vue'), -// meta: { -// title: '公共组件示例', -// hideBreadcrumb: true, // 一级页面不显示面包屑 -// // breadcrumbParent:'首页' -// } -// }, -// { -// path: '/agent/checkOrderList', -// name: '查重订单', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/checkOrderList.vue'), -// props: { -// list_type: 'check', -// }, -// meta: { -// title: '查重订单', -// breadcrumbParent: '首页', -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/aiOrderList', -// name: 'AI写作订单', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/checkOrderList.vue'), -// props: { -// list_type: 'ai', -// }, -// meta: { -// title: 'AI写作订单', -// breadcrumbParent: '首页', -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/ocpcList', -// name: 'OCPC订单', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/ocpcList.vue'), -// meta: { -// title: 'OCPC订单', -// breadcrumbParent: '首页', -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteList', -// name: '站点列表', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteList.vue'), -// meta: { -// title: '站点列表', -// breadcrumbParent: '首页', -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteAdd', -// name: '添加站点', -// // this generates a separate chunk (about.[hash].js) for this route -// // which is lazy-loaded when the route is visited. -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteAdd.vue'), -// meta: { -// title: '添加站点', -// hideBreadcrumb: true, // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteAddFinally', -// name: '添加站点-添加服务', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteServiceAdd.vue'), -// meta: { -// title: '添加服务', -// breadcrumbParent: '添加站点', -// // hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteServiceList', -// name: '服务列表', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteServiceList.vue'), -// meta: { -// title: '服务列表', -// breadcrumbParent: '站点列表', -// // hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteServiceAdd', -// name: '服务列表-添加', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteServiceAdd.vue'), -// meta: { -// title: '添加服务', -// breadcrumbParent: '服务列表', -// // hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteServiceEdit', -// name: '服务列表-修改', -// isFirst: true, -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteServiceEdit.vue'), -// meta: { -// title: '修改服务', -// breadcrumbParent: '服务列表', -// // hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/siteBaseSetting', -// name: '站点基本设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteBaseSetting.vue'), -// meta: { -// title: '站点设置', -// breadcrumbParent: '站点列表' // 手动指定父级 -// // 如果想隐藏中间层级 -// // breadcrumbParent: '首页', // 跳过医生信息 -// // hideInBreadcrumb: true // 可选:隐藏当前项 -// } -// }, -// { -// path: '/agent/siteMobileSetting', -// name: '移动端设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteMobileSetting.vue'), -// meta: { -// title: '站点设置', -// breadcrumbParent: '站点列表' // 手动指定父级 -// // 如果想隐藏中间层级 -// // breadcrumbParent: '首页', // 跳过医生信息 -// // hideInBreadcrumb: true // 可选:隐藏当前项 -// } -// }, -// { -// path: '/agent/siteSemSetting', -// name: '营销推广', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteSemSetting.vue'), -// meta: { -// title: '站点设置', -// breadcrumbParent: '站点列表' // 手动指定父级 -// } -// }, -// { -// path: '/agent/sitePersonalization', -// name: '个性化设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/sitePersonalization.vue'), -// meta: { -// title: '站点设置', -// breadcrumbParent: '站点列表' // 手动指定父级 -// } -// }, -// { -// path: '/agent/siteTemplate', -// name: '个性化设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/siteTemplate.vue'), -// // meta: { -// // title: '站点设置', -// // breadcrumbParent: '站点列表' // 手动指定父级 -// // } -// }, -// { -// path: '/agent/payList', -// isFirst: true, -// name: '收款方式', -// // route level code-splitting -// // this generates a separate chunk (about.[hash].js) for this route -// // which is lazy-loaded when the route is visited. -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/payList.vue'), -// meta: { -// title: '收款方式', -// breadcrumbParent: '首页', -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/agent/payInfoSetting', -// name: '收款方式设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/payInfoSetting.vue'), -// meta: { -// title: '收款方式设置', -// breadcrumbParent: '收款方式' // 手动指定父级 -// // 如果想隐藏中间层级 -// // breadcrumbParent: '首页', // 跳过医生信息 -// // hideInBreadcrumb: true // 可选:隐藏当前项 -// } -// }, -// { -// path: '/agent/paySetting', -// name: '收款方式设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/paySetting.vue'), -// meta: { -// title: '收款方式设置', -// breadcrumbParent: '收款方式' // 手动指定父级 -// // 如果想隐藏中间层级 -// // breadcrumbParent: '首页', // 跳过医生信息 -// // hideInBreadcrumb: true // 可选:隐藏当前项 -// } -// }, -// { -// path: '/agent/payCertSetting', -// name: '钱款交易设置', -// component: () => import( /* webpackChunkName: "siteList" */ '../views/agent/payCertSetting.vue'), -// meta: { -// title: '钱款交易设置', -// breadcrumbParent: '收款方式' // 手动指定父级 -// // 如果想隐藏中间层级 -// // breadcrumbParent: '首页', // 跳过医生信息 -// // hideInBreadcrumb: true // 可选:隐藏当前项 -// } -// }, -// { -// path: '/franchise', -// name: '加盟', -// component: () => import( /* webpackChunkName: "franchise" */ '../views/agent/Franchise.vue'), -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/configureServicePrices', -// name: '配置服务价格', -// component: () => import( /* webpackChunkName: "configureServicePrices" */ '../views/ConfigureServicePrices.vue') -// }, -// { -// path: '/demoPage', -// name: '示例', -// component: () => import( /* webpackChunkName: "configureServicePrices" */ '../views/demoPage.vue'), -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// // 暂时废弃 -// // { -// // path: '/siteSetting', -// // name: '站点设置', -// // component: () => import( /* webpackChunkName: "SiteSetting" */ '../views/SiteSetting.vue'), -// // children: [ -// // { -// // path: '', // 默认子路由 -// // redirect: () => import( /* webpackChunkName: "siteBaseSetting" */ '../views/SiteBaseSetting.vue') // 重定向到第一个页面 -// // }, -// // { -// // path: 'siteBaseSetting', -// // name: '站点基础设置', -// // component: () => import( /* webpackChunkName: "siteBaseSetting" */ '../views/SiteBaseSetting.vue'), -// // }, -// // { -// // path: 'sitePersonalization', -// // name: '个性化设置', -// // component: () => import( /* webpackChunkName: "sitePersonalization" */ '../views/SitePersonalization.vue') -// // }, -// // { -// // path: 'siteH5', -// // name: '移动端设置', -// // component: () => import( /* webpackChunkName: "siteH5" */ '../views/SiteH5.vue') -// // }, -// // { -// // path: 'demoTable', // 默认子路由 -// // name: '测试页面', -// // redirect: () => import( /* webpackChunkName: "demoTable" */ '../views/DemoTable.vue') // 重定向到第一个页面 -// // }, -// // ] -// // }, -// { -// path: '/pageTemplete', -// name: '网页模板', -// component: () => import( /* webpackChunkName: "pageTemplete" */ '../views/PageTemplete.vue') -// }, - - -// // -----------------分隔符----------- -// // 管理员start -// { -// path: '/super/ranking/yearProfit', -// name: '年排行', -// component: () => import( /* webpackChunkName: "Rankåing" */ '../views/super/Ranking/RankDetail.vue'), -// props: { -// pageTitle: '总利润 - 年排行', -// rank_type: 1, -// type: 'year', -// showDateSelect: false -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } - -// }, -// { -// path: '/super/ranking/monthProfit', -// name: '月排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), -// props: { -// pageTitle: '总利润 - 月排行', -// rank_type: 1, -// type: 'month', -// showDateSelect: true -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/checkProfit', -// name: '产品毛利润排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), -// props: { -// pageTitle: '产品 - 毛利润排行', -// rank_type: 1, -// type: 'check_type' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/checkOrdernum', -// name: '产品订单数排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), -// props: { -// pageTitle: '产品 - 订单数排行', -// rank_type: 2, -// type: 'check_type' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/checkRefund', -// name: '产品退单数排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), -// props: { -// pageTitle: '产品 - 退单数排行', -// rank_type: 3, -// type: 'check_type' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/loss', -// name: '产品负毛利排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), -// props: { -// pageTitle: '产品 - 负毛利排行', -// rank_type: 5, -// type: 'loss' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/agentProfit', -// name: '代理商毛利润排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), -// props: { -// pageTitle: '代理商 - 毛利润排行', -// rank_type: 1, -// type: 'agent' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/agentRecharge', -// name: '代理商充值排行', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankBatchList.vue'), -// props: { -// pageTitle: '代理商 - 充值排行', -// rank_type: 4, -// type: 'agent' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/agentNew', -// name: '代理商新加盟', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), -// props: { -// pageTitle: '代理商 - 新加盟', -// type: 'agentnew', -// showDateSelect: false -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/purchase', -// name: '采购价', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Purchase.vue'), -// props: { -// pageTitle: '设置 - 采购价', -// type: 'purchase' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/stagePurchase', -// name: '阶段采购价', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/Purchase.vue'), -// props: { -// pageTitle: '设置 - 阶段采购', -// type: 'stagePurchase' -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/detail', -// name: '详情', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), -// props: { -// pageTitle: '详情', -// type: 'day', -// showDateSelect: false, -// lookMore: false -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/list', -// name: '列表', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankList.vue'), -// props: { -// pageTitle: '详情', -// showDateSelect: false, -// lookMore: false -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// { -// path: '/super/ranking/order', -// name: '订单统计', -// component: () => import( /* webpackChunkName: "Ranking" */ '../views/super/Ranking/RankDetail.vue'), -// props: { -// pageTitle: '订单统计', -// type: 'order', -// showDateSelect: false -// }, -// meta: { -// hideBreadcrumb: true // 一级页面不显示面包屑 -// } -// }, -// // 管理员end - -// ] const APP_TYPE = process.env.VUE_APP_TYPE || 'client'; -first_child_router = routes.filter(item => item.isFirst); -// const router = new VueRouter({ -// mode: 'history', -// base: process.env.BASE_URL, -// routes -// }) - const routes = APP_TYPE === 'admin' ? [...loadRoutesFromJSON(adminRoutes)] : [...loadRoutesFromJSON(clientRoutes)]; console.log(routes,'routes---000'); + first_child_router = routes.filter(item => item.isFirst); + const router = new VueRouter({ mode: 'history', routes }); router.beforeEach((to, from, next) => { + // 根据启动 进行首页 重定向 + if (to.path === '/') { + const redirectPath = process.env.VUE_APP_TYPE === 'client' ? '/' : '/super/ranking/yearProfit' + next(redirectPath) + } // 有关路由跳转时,部分状态重置 store.commit('SET_SECOND_MENU', []); if(store.state.componentsName){ diff --git a/src/utils/login.js b/src/utils/login.js index bd9ee97..269e119 100644 --- a/src/utils/login.js +++ b/src/utils/login.js @@ -8,7 +8,7 @@ export async function autoLoginByToken() { if (token) { try { - const res = await axios.post('/api/agentnew/token_login', { token: token },{ + const res = await axios.post('/agentnew/token_login', { token: token },{ headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, diff --git a/src/views/DemoTable1.vue b/src/views/DemoTable1.vue deleted file mode 100644 index 74ef70c..0000000 --- a/src/views/DemoTable1.vue +++ /dev/null @@ -1,974 +0,0 @@ - - - \ No newline at end of file diff --git a/vue.config.js b/vue.config.js index 7a19718..1c424bd 100755 --- a/vue.config.js +++ b/vue.config.js @@ -1,5 +1,6 @@ const path = require('path'); const TerserPlugin = require('terser-webpack-plugin'); +const webpack = require('webpack') module.exports = { // publicPath: '/new/', devServer: { @@ -9,7 +10,7 @@ module.exports = { changeOrigin: true, }, '/agentnew': { - target: 'http://kuaile.checkcopy.com', + target: 'http://adminnew.pengda.checkcopy.com/', changeOrigin: true, } } @@ -42,6 +43,15 @@ module.exports = { filename: '[name].[contenthash:8].js', chunkFilename: '[name].[contenthash:8].js' }, + plugins: [ + new webpack.DefinePlugin({ + 'process.env.ROUTES_FILE': JSON.stringify( + process.env.VUE_APP_TYPE === 'client' + ? 'client-routes.json' + : 'admin-routes.json' + ) + }) + ], resolve:{ alias:{ '@':path.resolve(__dirname, 'src/') From c5f6faa65838eaea1e438738ab8ddec84b7cc970 Mon Sep 17 00:00:00 2001 From: zq <136432190602163.com> Date: Wed, 13 Aug 2025 11:40:18 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E9=87=8D?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E9=A1=B5=E9=9D=A2=E9=80=82=E9=85=8D=E5=8F=8A?= =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/SliderMenu.vue | 2 +- src/style/theme/index.css | 10 ++++++---- src/views/agent/checkOrderList.vue | 20 ++++++++++++-------- 3 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/components/SliderMenu.vue b/src/components/SliderMenu.vue index 068ebba..5af6846 100644 --- a/src/components/SliderMenu.vue +++ b/src/components/SliderMenu.vue @@ -32,7 +32,7 @@
+ activeColor="#006AFF" :isActive="item.index == currentMenuItem && currentMenuItem[index]" /> {{ item.title }}
diff --git a/src/style/theme/index.css b/src/style/theme/index.css index b9ceb8a..2de108e 100644 --- a/src/style/theme/index.css +++ b/src/style/theme/index.css @@ -4328,7 +4328,7 @@ border-color:#006AFF !important; color: #1e2226 } -.el-menu-item:focus, +/* .el-menu-item:focus, */ .el-menu-item:hover { outline: 0; background-color: #e6f0ff @@ -4386,7 +4386,7 @@ border-color:#006AFF !important; color: #1e2226 } -.el-submenu__title:focus, +/* .el-submenu__title:focus, */ .el-submenu__title:hover { outline: 0; background-color: #e6f0ff @@ -12530,15 +12530,17 @@ border-color:#006AFF !important; vertical-align: middle; float: left; font-size: 14px; - color: #1e2226; + color: #626573; line-height: 18px; white-space: nowrap; padding: 0 12px 0 0; -webkit-box-sizing: border-box; - box-sizing: border-box + box-sizing: border-box; + letter-spacing: 0.08em; } .column .el-form-item__label{ margin-bottom: 12px; + color: #1e2226; } .el-form-item__content { line-height: 40px; diff --git a/src/views/agent/checkOrderList.vue b/src/views/agent/checkOrderList.vue index 2d812d9..013ac6f 100644 --- a/src/views/agent/checkOrderList.vue +++ b/src/views/agent/checkOrderList.vue @@ -45,7 +45,7 @@
- 筛选及导出列表 + 筛选及导出列表
清空 筛选 @@ -53,19 +53,19 @@
-

时间范围

+

时间范围

+ start-placeholder="开始日期" end-placeholder="结束日期" style="min-width:210px;flex:1" format="yyyy-MM-dd" value-format="yyyy-MM-dd"> - - -
@@ -151,13 +151,13 @@ -