diff --git a/src/assets/header-line.svg b/src/assets/header-line.svg new file mode 100644 index 0000000..121cb73 --- /dev/null +++ b/src/assets/header-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/header-logo.png b/src/assets/header-logo.png index e5cb8ff..c8e2839 100644 Binary files a/src/assets/header-logo.png and b/src/assets/header-logo.png differ diff --git a/src/components/Header.vue b/src/components/Header.vue index e0aaa71..9000741 100644 --- a/src/components/Header.vue +++ b/src/components/Header.vue @@ -1,11 +1,11 @@ + \ No newline at end of file +// } \ No newline at end of file diff --git a/src/router/index.js b/src/router/index.js index 942ec7e..358ac3f 100755 --- a/src/router/index.js +++ b/src/router/index.js @@ -2,218 +2,38 @@ import Vue from 'vue'; import VueRouter from 'vue-router'; import store from '../store'; import HomeView from '../views/HomeView.vue'; -// import UserPosts from '../views/UserPosts.vue'; -// import Franchise from '../views/Franchise.vue' Vue.use(VueRouter) -const whiteSlideList = ['/', '/ui', '/siteList']; //侧边导航白名单 -const whiteHeaderList = ['/', '/ui', '/register', '/configureServicePrices', '/siteList','/siteSetting/siteBaseSetting','/siteSetting/sitePersonalization' - ,'/siteSetting/siteH5','/siteSetting/siteSem','/pageTemplete','/demo', - '/super/ranking/yearProfit', '/super/ranking/monthProfit', '/super/ranking/checkProfit', '/super/ranking/checkOrdernum', - '/super/ranking/checkRefund', '/super/ranking/agentProfit', '/super/ranking/agentRecharge', '/super/ranking/agentNew', - '/super/ranking/purchase','/super/ranking/stagePurchase','/super/ranking/loss' +const whiteSlideList = [ '/ui', '/siteList']; //侧边导航白名单 +const whiteHeaderList = ['/', ]; //头部导航白名单 -const whiteFooterList = ['/', '/ui', '/configureServicePrices', - '/super/ranking/yearProfit', '/super/ranking/monthProfit', '/super/ranking/checkProfit', '/super/ranking/checkOrdernum', - '/super/ranking/checkRefund', '/super/ranking/agentProfit', '/super/ranking/agentRecharge', '/super/ranking/agentNew', - '/super/ranking/purchase','/super/ranking/stagePurchase','/super/ranking/loss' +const whiteFooterList = ['/', ]; //底部白名单 -const routes = [{ +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') - }, - // { - // path: '/demo', - // name: 'demo页面', - // component: () => import( /* webpackChunkName: "Demo" */ '../views/Demo.vue'), - // children: [ - // { - // path: '', // 默认子路由 - // redirect: () => import( /* webpackChunkName: "DemoTable" */ '../views/DemoTable.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} - }, ] }, ] @@ -224,7 +44,6 @@ const router = new VueRouter({ routes }) router.beforeEach((to, from, next) => { - console.log(to.path, 'to.path-----'); if (whiteSlideList.includes(to.path)) { store.commit('SET_SIDEBAR', true); // 登录页面不显示侧边栏 } else { @@ -240,7 +59,14 @@ router.beforeEach((to, from, next) => { } else { store.commit('SET_HEADER', false); // 其他页面显示侧边栏 } + store.dispatch('showLoading') next(); }); +router.afterEach(() => { + // 添加延迟确保过渡效果 + setTimeout(() => { + store.dispatch('hideLoading') + }, 300) +}) export default router \ No newline at end of file diff --git a/src/store/index.js b/src/store/index.js index 401fd33..4f61ef0 100755 --- a/src/store/index.js +++ b/src/store/index.js @@ -140,9 +140,15 @@ export default new Vuex.Store({ } ] } - ] + ], + pageName:'医生管理' }, actions: { + SET_PAGENAME({ + commit + }) { + commit('SET_PAGENAME'); + }, SET_HEADER({ commit }) { @@ -207,6 +213,9 @@ export default new Vuex.Store({ SET_PAGETITLE(state, title) { state.pageTitle = title; }, + SET_PAGENAME(state, name) { + state.pageName = name; + }, SET_ADDSERVICELIST(state, list) { state.addServiceList = list; } diff --git a/src/style/theme/common.scss b/src/style/theme/common.scss index 8738e46..d36bdb7 100644 --- a/src/style/theme/common.scss +++ b/src/style/theme/common.scss @@ -17,6 +17,15 @@ body { overflow: hidden; /* 通用方法 */ scrollbar-width: none; /* Firefox */ } +.pageTitle{ + font-family: Microsoft YaHei UI; + font-size: 14px; + font-weight: bold; + line-height: normal; + letter-spacing: 0.08em; + color: #1E2226; + text-align: left; +} /* 对于WebKit浏览器 */ .element::-webkit-scrollbar { @@ -339,7 +348,7 @@ body { .el-button--form{ width: 88px; height: 33px; - border-radius: 2px; + border-radius: 4px; } .el-button--primary,.el-button--normal{ background: #006AFF; @@ -502,7 +511,7 @@ body { } .el-input__inner { - height: 39px; + height: 100%; padding: 10px 12px; border-radius: 4px; } diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue index ba93cc5..e071484 100644 --- a/src/views/HomeView.vue +++ b/src/views/HomeView.vue @@ -1,5 +1,244 @@ \ No newline at end of file +
+
+

医生列表

+ +
+
+
+ 全选 +
+ 共{{ totalNum }}条,已选{{ selectNum }}条 + 批量禁用 + 批量启用 +
+
+ 搜索医生 + + 新增医生 +
+
+
+
+
+ + + 张虎 + 13788990987 + + + 编辑 +
+
+ 添加医院 +
+ +
+ + + +
+
+
+
+ + + \ No newline at end of file