提交 fe93ba3e 编写于 作者: alex.zhang's avatar alex.zhang

工作站菜单从后台动态获取

上级 96b23c5f
...@@ -34,6 +34,7 @@ export const envConfig = { ...@@ -34,6 +34,7 @@ export const envConfig = {
// reportUrl: 'https://uat-sc-report.yunqueyi.com/', // reportUrl: 'https://uat-sc-report.yunqueyi.com/',
excelUrl: 'https://uat-file.yunqueyi.com/File/template/portal/', excelUrl: 'https://uat-file.yunqueyi.com/File/template/portal/',
itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/', itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/',
msUrl: 'https://dev-sc.yunqueyi.com/contents/',
}, },
dev: { dev: {
baseUrl: 'https://dev-sc.yunqueyi.com/', baseUrl: 'https://dev-sc.yunqueyi.com/',
...@@ -51,6 +52,7 @@ export const envConfig = { ...@@ -51,6 +52,7 @@ export const envConfig = {
reportUrl: 'https://dev-sc-report.yunqueyi.com/', reportUrl: 'https://dev-sc-report.yunqueyi.com/',
excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/', excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/',
itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/', itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/',
msUrl: 'https://dev-sc.yunqueyi.com/contents/',
}, },
test: { test: {
baseUrl: 'https://test1-sc.yunqueyi.com/', baseUrl: 'https://test1-sc.yunqueyi.com/',
...@@ -68,6 +70,7 @@ export const envConfig = { ...@@ -68,6 +70,7 @@ export const envConfig = {
reportUrl: 'https://test1-sc-report.yunqueyi.com/', reportUrl: 'https://test1-sc-report.yunqueyi.com/',
excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/', excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/',
itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/', itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/',
msUrl: 'https://test1-sc.yunqueyi.com/contents/',
}, },
test2: { test2: {
baseUrl: 'https://test2-work.yunqueyi.com/sc/', baseUrl: 'https://test2-work.yunqueyi.com/sc/',
...@@ -84,6 +87,7 @@ export const envConfig = { ...@@ -84,6 +87,7 @@ export const envConfig = {
reportUrl: 'https://test2-sc-report.yunqueyi.com/', reportUrl: 'https://test2-sc-report.yunqueyi.com/',
excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/', excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/',
itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/', itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/',
msUrl: 'https://test2-sc.yunqueyi.com/contents/',
}, },
uat: { uat: {
baseUrl: 'https://uat-sc.yunqueyi.com/', baseUrl: 'https://uat-sc.yunqueyi.com/',
...@@ -101,6 +105,7 @@ export const envConfig = { ...@@ -101,6 +105,7 @@ export const envConfig = {
reportUrl: 'https://uat-sc-report.yunqueyi.com/', reportUrl: 'https://uat-sc-report.yunqueyi.com/',
excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/', excelUrl: 'https://test-file.yunqueyi.com/File/template/portal/',
itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/', itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/',
msUrl: 'https://uat-sc.yunqueyi.com/contents/',
}, },
pro: { pro: {
baseUrl: 'https://sc.yunqueyi.com/', baseUrl: 'https://sc.yunqueyi.com/',
...@@ -118,5 +123,6 @@ export const envConfig = { ...@@ -118,5 +123,6 @@ export const envConfig = {
reportUrl: 'https://sc-report.yunqueyi.com/', reportUrl: 'https://sc-report.yunqueyi.com/',
excelUrl: 'https://file.yunqueyi.com/File/template/portal/', excelUrl: 'https://file.yunqueyi.com/File/template/portal/',
itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/', itemFileUrl: 'http://pica-test-huabei2.oss-cn-beijing.aliyuncs.com/File/template/portal/',
msUrl: 'https://sc.yunqueyi.com/contents/',
} }
} }
...@@ -15,6 +15,22 @@ export const getUserTypeReq = (type) => { ...@@ -15,6 +15,22 @@ export const getUserTypeReq = (type) => {
}) })
}; };
// 获取动态slideBar
export const getSlideData = (req) => {
console.log("getSlideData() : token = " + localStorage.getItem('storageToken') + ", device_ip =" +
localStorage.getItem("ipAddress") + ", browser_ver = " + localStorage.getItem("browser"));
return fetch({
headers,
url: getBaseUrl(`contents/login/menu/list`),
method: 'post',
data: req,
// token: localStorage.getItem('storageToken'),
// system_type: 22,
// device_ip: localStorage.getItem("ipAddress"),
// browser_ver: localStorage.getItem("browser"),
})
};
export const getSelectListReq = (type) => { export const getSelectListReq = (type) => {
return fetch({ return fetch({
url: getBaseUrl(`cme/constants/list?code=${type}`), url: getBaseUrl(`cme/constants/list?code=${type}`),
......
<template> <template>
<div id="slidebar-container" class="slidebar-container"> <div id="slidebar-container" class="slidebar-container">
<el-menu :default-active="onRoutes" class="el-menu-vertical-demo" theme="dark" unique-opened router> <el-menu
:default-active="onRoutes"
class="el-menu-vertical-demo"
theme="dark"
unique-opened
router
>
<template v-if="isOutsideGetted && isOutsideUser"> <template v-if="isOutsideGetted && isOutsideUser">
<el-menu-item v-for="(outItem, outIndex) in outsideItems" :index="'/'+outItem.index" :key="outIndex"> <el-menu-item
v-for="(outItem, outIndex) in outsideItems"
:index="'/' + outItem.index"
:key="outIndex"
>
<i :class="outItem.icon"></i>{{ outItem.title }} <i :class="outItem.icon"></i>{{ outItem.title }}
</el-menu-item> </el-menu-item>
</template> </template>
<template v-if="isOutsideGetted && !isOutsideUser"> <template v-if="isOutsideGetted && !isOutsideUser">
<template v-for="(item,_index) in items"> <template v-for="(item, _index) in items">
<template v-if="item.subs"> <template v-if="item.subs && !('' == item.subs || null == item.subs || undefined == item.subs || null == item.subs)">
<el-submenu :index=" 'index_' + _index" :key="item.index"> <el-submenu :index="'index_' + _index" :key="item.index + _index">
<template slot="title"><i :class="item.icon"></i>{{item.title}}</template> <template slot="title"
<el-menu-item v-for="(subItem,i) in item.subs" :key="i" :index="'/'+subItem.index"> ><i :class="item.icon"></i>{{ item.title }}</template
>
<el-menu-item
v-for="(subItem, i) in item.subs"
:key="i"
:index="'/' + subItem.index"
>
<i class="sub-icon" :class="subItem.icon"></i> <i class="sub-icon" :class="subItem.icon"></i>
{{subItem.title}} {{ subItem.title }}
<p class="redNum" <p
v-if="subItem.title == '资料不全居民' class="redNum"
&&notCompleteCount v-if="
&&$route.path!='/patients-manage/not-complete/uncompleted-list'" subItem.title == '资料不全居民' &&
notCompleteCount &&
$route.path !=
'/patients-manage/not-complete/uncompleted-list'
"
> >
<span v-if="notCompleteCount>999">+999</span> <span v-if="notCompleteCount > 999">+999</span>
<span v-else>{{notCompleteCount}}</span> <span v-else>{{ notCompleteCount }}</span>
</p> </p>
</el-menu-item> </el-menu-item>
</el-submenu> </el-submenu>
</template> </template>
<template v-else> <template v-else>
<template v-if="item.isMessageSend"> <template v-if="item.isMessageSend">
<el-menu-item :index="'/'+item.index" :key="item.index" @click="goToMessageSendPage(item.checkAuth)" class="set-normal-background"> <el-menu-item
:index="'/' + item.index"
:key="item.index"
@click="goToMessageSendPage(item.checkAuth)"
class="set-normal-background"
>
<i :class="item.icon"></i>{{ item.title }} <i :class="item.icon"></i>{{ item.title }}
</el-menu-item> </el-menu-item>
</template> </template>
<template v-else> <template v-else>
<el-menu-item :index="'/'+item.index" :key="item.index"> <el-menu-item :index="'/' + item.index" :key="item.index">
<i :class="item.icon"></i>{{ item.title }} <i :class="item.icon"></i>{{ item.title }}
</el-menu-item> </el-menu-item>
</template> </template>
</template> </template>
</template> </template>
</template> </template>
<!--<template v-if="isOutsideGetted && isOutsideUser && isShowGoods">--> <!--<template v-if="isOutsideGetted && isOutsideUser && isShowGoods">-->
<!--<el-menu-item v-for="(outItem, outIndex) in outsideGoodsItem" :index="'/'+outItem.index" :key="outIndex">--> <!--<el-menu-item v-for="(outItem, outIndex) in outsideGoodsItem" :index="'/'+outItem.index" :key="outIndex">-->
<!--<i :class="outItem.icon"></i>{{ outItem.title }}--> <!--<i :class="outItem.icon"></i>{{ outItem.title }}-->
<!--</el-menu-item>--> <!--</el-menu-item>-->
<!--</template>--> <!--</template>-->
</el-menu> </el-menu>
</div> </div>
</template> </template>
<script> <script>
import utils from '@/utils/followup/followupUtils'; import utils from "@/utils/followup/followupUtils";
import { mapGetters } from 'vuex' import { mapGetters } from "vuex";
import { setTimeout } from 'timers' import { setTimeout } from "timers";
import { isNotEmptyUtils } from '../../utils/utils' import { isNotEmptyUtils } from "../../utils/utils";
import { getUserTypeReq, circleMenu } from '@/utils/cme/cmeApi' import { getUserTypeReq, circleMenu, getSlideData } from "@/utils/cme/cmeApi";
import { getCircleRole } from '@/utils/patients/patientsapi' import { getCircleRole } from "@/utils/patients/patientsapi";
import { queryShopAuth } from '@/utils/shop'; import { queryShopAuth } from "@/utils/shop";
let vm = null let vm = null;
export default { export default {
props: { props: {
storageIdType: { storageIdType: {
type: Number, type: Number,
default: 0 default: 0,
}, },
tokenValue: { tokenValue: {
type: String type: String,
}, },
authList: { authList: {
type: Object, type: Object,
default: () => {} default: () => {},
}, },
notCompleteCount: { notCompleteCount: {
type: Number, type: Number,
}, },
masterFlag: { masterFlag: {
type: Boolean, type: Boolean,
default: false default: false,
},
roleObj: {
type: Object,
default() {
return {
mainManager: null,
manager: null,
ordinary: null,
};
}, },
roleObj: {
type: Object,
default(){
return {
mainManager: null,
manager: null,
ordinary: null,
}
}
}
}, },
data() { },
return { data() {
isOutsideUser: false, // 是否是外部用户;(外部用户:只展示一个页面路由; 非外部用户:正常展示之前的逻辑) return {
isOutsideGetted: false, isOutsideUser: false, // 是否是外部用户;(外部用户:只展示一个页面路由; 非外部用户:正常展示之前的逻辑)
isShowGoods: false, isOutsideGetted: false,
items: [ isShowGoods: false,
{ items: [
title: '数据总览', {
icon: 'el-icon-menu', title: "数据总览",
index: 'home', icon: "el-icon-menu",
},{ index: "home",
title: '教培项目', },
icon: 'el-icon-message', // {
index: 'item', // title: "教培项目",
subs: [ // icon: "el-icon-message",
{ // index: "item",
title: '下载报告', // subs: [
icon: 'el-icon-document', // {
index: 'export-download' // title: "下载报告",
}, // icon: "el-icon-document",
{ // index: "export-download",
title: '项目管理', // },
icon: 'el-icon-setting', // {
index: 'item-manager' // title: "项目管理",
}, // icon: "el-icon-setting",
] // index: "item-manager",
}, // },
{ // ],
title: '系统管理', // },
icon: 'el-icon-menu', // {
index: 'system', // title: "系统管理",
subs: [ // icon: "el-icon-menu",
{ // index: "system",
title: '角色管理', // subs: [
icon: 'el-icon-setting', // {
index: 'role' // title: "角色管理",
} // icon: "el-icon-setting",
] // index: "role",
}, // },
// { // ],
// title: '云鹊店铺', // },
// icon: 'el-icon-first-aid-kit', // // {
// index: 'shop' // // title: '云鹊店铺',
// }, // // icon: 'el-icon-first-aid-kit',
], // // index: 'shop'
outsideItems: [ // 外部用户 路由 // // },
{ ],
title: '学分发放管理', outsideItems: [
icon: 'el-icon-document', // 外部用户 路由
index: 'credit-send-manage' {
}, title: "学分发放管理",
], icon: "el-icon-document",
/*outsideGoodsItem: [//只有通过店铺管理操作才可展示 index: "credit-send-manage",
},
],
/*outsideGoodsItem: [//只有通过店铺管理操作才可展示
{ {
title: '商品管理', title: '商品管理',
icon: 'el-icon-first-aid-kit', icon: 'el-icon-first-aid-kit',
...@@ -152,425 +180,477 @@ ...@@ -152,425 +180,477 @@
index: 'order-manage' index: 'order-manage'
}, },
],*/ ],*/
} };
}, },
computed: { computed: {
onRoutes() { onRoutes() {
return this.$route.path; return this.$route.path;
}
},
created() {
vm = this;
this.getUserType();
},
mounted(){
if(this.storageIdType == 1){
vm.setEntrySide();
} else if(this.storageIdType == 2) {
vm.setFollowSide();
vm.getRoleObj();
}
vm.setShopSide()
vm.setCircleSlide()
// vm.getGoodsAuth();
},
watch: {
authList(newVal, oldVal){
if(!newVal.P001) { // 项目管理
vm.items[1].subs[1].index = 'blank'
}
if(!newVal.P002) { // 组件管理
vm.items[1].subs[0].index = 'blank'
}
if(!newVal.P003) { // 角色管理
vm.items[2].subs[0].index = 'blank'
}
},
storageIdType(val){
if(val == 1){
vm.setEntrySide();
} else if(val == 2) {
vm.setFollowSide();
vm.getRoleObj();
}
},
}, },
methods: { },
getUserType() { created() {
// console.log('当前路由地址:', this.$route.path, typeof this.$route.path) vm = this;
let currentPath = this.$route.path || ''; this.getUserType();
let req = {}; },
// console.log('isOutsideUser: ', this.$store.state.cmeStore.isOutsideUser) mounted() {
getUserTypeReq(req).then(res => { console.log("mounted() : this.storageIdType = " + this.storageIdType);
// if (this.storageIdType == 1) {
// vm.setEntrySide();
// } else if (this.storageIdType == 2) {
// vm.setFollowSide();
// vm.getRoleObj();
// }
// vm.setShopSide();
// vm.setCircleSlide();
},
watch: {
// authList(newVal, oldVal) {
// if (!newVal.P001) {
// // 项目管理
// vm.items[1].subs[1].index = "blank";
// }
// if (!newVal.P002) {
// // 组件管理
// vm.items[1].subs[0].index = "blank";
// }
// if (!newVal.P003) {
// // 角色管理
// vm.items[2].subs[0].index = "blank";
// }
// },
// storageIdType(val) {
// console.log("storageIdType() : val = " + val);
// if (val == 1) {
// vm.setEntrySide();
// } else if (val == 2) {
// vm.setFollowSide();
// vm.getRoleObj();
// }
// },
},
methods: {
getUserType() {
// console.log('当前路由地址:', this.$route.path, typeof this.$route.path)
let currentPath = this.$route.path || "";
let req = {};
// console.log('isOutsideUser: ', this.$store.state.cmeStore.isOutsideUser)
getUserTypeReq(req)
.then((res) => {
// debugger; // debugger;
this.isOutsideGetted = true; this.isOutsideGetted = true;
if (res.code == '000000') { if (res.code == "000000") {
if (res.data.code == "yes") { // 外部用户,siderbar只展示一个:学分发放管理页面 console.log("getUserType() : res.data.code = " + res.data.code);
this.getSlideData();
if (res.data.code == "yes") {
// 外部用户,siderbar只展示一个:学分发放管理页面
this.isOutsideUser = true; this.isOutsideUser = true;
this.$store.dispatch('cmeStore/updateOutUserStatus', true); this.$store.dispatch("cmeStore/updateOutUserStatus", true);
if (currentPath && currentPath == '/apply-detail') { // 申请明细页面 则刷新时不重定向 if (currentPath && currentPath == "/apply-detail") {
// 申请明细页面 则刷新时不重定向
return; return;
} }
this.$router.replace({ this.$router.replace({
path: '/credit-send-manage' path: "/credit-send-manage",
}); });
} else { // 非外部用户 正常展示多路由 } else {
// 非外部用户 正常展示多路由
this.isOutsideUser = false; this.isOutsideUser = false;
this.$store.dispatch('cmeStore/updateOutUserStatus', false); this.$store.dispatch("cmeStore/updateOutUserStatus", false);
} }
} }
}).catch(err => { })
this.$message.error('请求失败'); .catch((err) => {
console.log("getUserTypeReq() : err = " + err);
this.$message.error("请求失败");
}); });
}, },
setStoreData(value) {
if (value){ getSlideData() {
return 1; let self = this;
}else {
return 0; //获取菜单
} // let url = localStorage.getItem("msUrl") + "login/menu/list";
}, let req = {
getRoleObj() { // token: localStorage.getItem("token"),
getCircleRole({}).then((res) => { system_type: 25,
localStorage.removeItem('highMainManager'); device_ip: localStorage.getItem("ipAddress"),
localStorage.removeItem('mainManager'); browser_ver: localStorage.getItem("browser"),
localStorage.removeItem('manager'); };
localStorage.removeItem('ordinary');
localStorage.removeItem('createCircle'); // let headers = {
if(res.code == '000000') { // headers: {
//mainManager主管理员,manager管理员,ordinary普通人 // token: localStorage.getItem("token") || null,
const { highMainManager, mainManager, manager, ordinary, createCircle} = res.data; // },
localStorage.setItem('highMainManager', vm.setStoreData(highMainManager)) // };
localStorage.setItem('mainManager', vm.setStoreData(mainManager)) getSlideData(req)
localStorage.setItem('manager', vm.setStoreData(manager)) .then((res) => {
localStorage.setItem('ordinary', vm.setStoreData(ordinary)) // responseCheck(res, self);
localStorage.setItem('createCircle', vm.setStoreData(createCircle)) // console.log("getSlideData 获取菜单成功===========", res);
if (highMainManager || mainManager || manager) { // self.items = res.data.data.picapMenuModels;
// vm.items.push(yqRange); // let data = JSON.parse(JSON.stringify(res.data.data)); //通过这个实现深拷贝
vm.setCircleSize(); // localStorage.setItem(
} // "privilege_data",
} else { // JSON.stringify(data.picapMenuModels)
vm.$message.info(res.message) // );
} // localStorage.setItem("user_name", data.user_name);
// localStorage.setItem("function_role", data.function_role);
// localStorage.setItem("initFlag", "1");
vm.items = res.data.picapMenuModels;
}) })
}, .catch(function (error) {
setCircleSize(){ console.log("获取菜单失败!%s", error);
console.log('设置云鹊小圈') errorResponseCheck(error, self);
const yqRange = { });
title: '云鹊小圈', },
icon: 'el-icon-setting',
index: 'yq-range'
};
vm.items.push(yqRange);
},
setFollowSide(){
const followSider = {
title: '履约管理',
icon: 'el-icon-edit-outline',
index: 'followup',
subs: [
{
title: '计划管理',
icon: 'el-icon-setting',
index: 'followup/plan-manage/plan-list'
},
{
title: '预约管理',
icon: 'el-icon-setting',
index: 'followup/reservation-manage/reservation-list'
},
{
title: '录入管理',
icon: 'el-icon-setting',
index: 'followup/record-manage/record-list'
}
]
}
const patients = { setStoreData(value) {
title: '居民管理', if (value) {
icon: 'el-icon-patients-manage', return 1;
index: 'patients-manage', } else {
subs: [ return 0;
{ }
title: '我的居民', },
icon: 'el-icon-setting', getRoleObj() {
index: 'patients-manage/mypatients-manage/patients-list' getCircleRole({}).then((res) => {
}, localStorage.removeItem("highMainManager");
{ localStorage.removeItem("mainManager");
title: '新增居民', localStorage.removeItem("manager");
icon: 'el-icon-setting', localStorage.removeItem("ordinary");
index: 'patients-manage/new-manage/new-patient' localStorage.removeItem("createCircle");
}, if (res.code == "000000") {
{ //mainManager主管理员,manager管理员,ordinary普通人
title: '分组管理', const {
icon: 'el-icon-setting', highMainManager,
index: 'patients-manage/labels-manage/labels-list' mainManager,
}, manager,
{ ordinary,
title: '资料不全居民', createCircle,
icon: 'el-icon-setting', } = res.data;
index: 'patients-manage/not-complete/uncompleted-list' localStorage.setItem(
} "highMainManager",
] vm.setStoreData(highMainManager)
);
localStorage.setItem("mainManager", vm.setStoreData(mainManager));
localStorage.setItem("manager", vm.setStoreData(manager));
localStorage.setItem("ordinary", vm.setStoreData(ordinary));
localStorage.setItem("createCircle", vm.setStoreData(createCircle));
if (highMainManager || mainManager || manager) {
// vm.items.push(yqRange);
vm.setCircleSize();
}
} else {
vm.$message.info(res.message);
} }
});
},
setCircleSize() {
console.log("设置云鹊小圈");
const yqRange = {
title: "云鹊小圈",
icon: "el-icon-setting",
index: "yq-range",
};
vm.items.push(yqRange);
},
setFollowSide() {
const followSider = {
title: "履约管理",
icon: "el-icon-edit-outline",
index: "followup",
subs: [
{
title: "计划管理",
icon: "el-icon-setting",
index: "followup/plan-manage/plan-list",
},
{
title: "预约管理",
icon: "el-icon-setting",
index: "followup/reservation-manage/reservation-list",
},
{
title: "录入管理",
icon: "el-icon-setting",
index: "followup/record-manage/record-list",
},
],
};
const message = { const patients = {
title: '消息推送', title: "居民管理",
icon: 'el-icon-message', icon: "el-icon-patients-manage",
index: 'msg-push', index: "patients-manage",
isMessageSend: true, subs: [
checkAuth: true, {
} title: "我的居民",
icon: "el-icon-setting",
index: "patients-manage/mypatients-manage/patients-list",
},
{
title: "新增居民",
icon: "el-icon-setting",
index: "patients-manage/new-manage/new-patient",
},
{
title: "分组管理",
icon: "el-icon-setting",
index: "patients-manage/labels-manage/labels-list",
},
{
title: "资料不全居民",
icon: "el-icon-setting",
index: "patients-manage/not-complete/uncompleted-list",
},
],
};
const yqRange = { const message = {
title: '云鹊小圈', title: "消息推送",
icon: 'el-icon-setting', icon: "el-icon-message",
index: 'yq-range' index: "msg-push",
}; isMessageSend: true,
checkAuth: true,
};
vm.items[1].title = '教育培训'; const yqRange = {
vm.items.push(followSider); title: "云鹊小圈",
vm.items.push(patients); icon: "el-icon-setting",
vm.items.push(message); index: "yq-range",
};
// let mainManager = localStorage.getItem('mainManager') vm.items[1].title = "教育培训";
// let manager = localStorage.getItem('manager') vm.items.push(followSider);
// if (mainManager == 1 || manager == 1) { vm.items.push(patients);
// vm.items.push(yqRange); vm.items.push(message);
// }
},
setEntrySide() { // let mainManager = localStorage.getItem('mainManager')
const itemComponent = { // let manager = localStorage.getItem('manager')
title: '项目组件', // if (mainManager == 1 || manager == 1) {
icon: 'el-icon-setting', // vm.items.push(yqRange);
index: 'item-component' // }
}; },
const followSider = {
title: '入口管理',
icon: 'el-icon-setting',
index: 'entry-manager'
};
const templateManager = {
title: '模板管理',
icon: 'el-icon-setting',
index: 'template-manager'
};
const advertSimpleManage = {
title: '教培项目广告位管理',
icon: 'el-icon-setting',
index: 'advert-simple-manage'
};
const subjectManager = { setEntrySide() {
title: '学科管理', const itemComponent = {
icon: 'el-icon-setting', title: "项目组件",
index: 'subject-manager' icon: "el-icon-setting",
}; index: "item-component",
};
const followSider = {
title: "入口管理",
icon: "el-icon-setting",
index: "entry-manager",
};
const templateManager = {
title: "模板管理",
icon: "el-icon-setting",
index: "template-manager",
};
const advertSimpleManage = {
title: "教培项目广告位管理",
icon: "el-icon-setting",
index: "advert-simple-manage",
};
const eduRole = { const subjectManager = {
title: '角色权限', title: "学科管理",
icon: 'el-icon-menu', icon: "el-icon-setting",
index: 'role', index: "subject-manager",
subs: [ };
{
title: '发起教培项目赋权',
icon: 'el-icon-setting',
index: 'edu-role'
}
]
}
const cme = {
title: 'CME',
icon: 'el-icon-reading',
index: 'credit-manage',
subs: [
{
title: '学分管理列表',
icon: 'el-icon-document',
index: 'credit-manage'
},
{
title: '审核权限管理',
icon: 'el-icon-document',
index: 'review-access-manage'
},
{
title: '学分发放管理',
icon: 'el-icon-document',
index: 'credit-send-manage'
},
// {
// title: '外部资源管理',
// icon: 'el-icon-document',
// index: 'external-resource-manage'
// },
]
}
const yqRange = { const eduRole = {
title: '云鹊小圈', title: "角色权限",
icon: 'el-icon-setting', icon: "el-icon-menu",
index: 'yq-range' index: "role",
}; subs: [
{
title: "发起教培项目赋权",
icon: "el-icon-setting",
index: "edu-role",
},
],
};
const cme = {
title: "CME",
icon: "el-icon-reading",
index: "credit-manage",
subs: [
{
title: "学分管理列表",
icon: "el-icon-document",
index: "credit-manage",
},
{
title: "审核权限管理",
icon: "el-icon-document",
index: "review-access-manage",
},
{
title: "学分发放管理",
icon: "el-icon-document",
index: "credit-send-manage",
},
// {
// title: '外部资源管理',
// icon: 'el-icon-document',
// index: 'external-resource-manage'
// },
],
};
const outResourceManage = { const yqRange = {
title: '外部资源管理', title: "云鹊小圈",
icon: 'el-icon-reading', icon: "el-icon-setting",
index: 'external-resource-manage', index: "yq-range",
subs: [ };
{
title: '外部资源列表',
icon: 'el-icon-document',
index: 'external-resource-manage'
},
]
};
vm.items[1].subs.push(subjectManager); const outResourceManage = {
vm.items[1].subs.push(itemComponent); title: "外部资源管理",
vm.items[1].subs.push(templateManager); icon: "el-icon-reading",
vm.items[1].subs.push(followSider); index: "external-resource-manage",
vm.items[1].subs.push(advertSimpleManage); subs: [
vm.items.push(eduRole); {
vm.items.push(cme); title: "外部资源列表",
vm.items.push(yqRange); icon: "el-icon-document",
vm.items.push(outResourceManage); index: "external-resource-manage",
}, },
setShopSide(){ ],
queryShopAuth().then(res => { };
// 0 表示超级管理员,大于0 表示小店或供应商,null 表示非法用户
if (res.data >= 0) {
const shop = {
title: '云鹊店铺',
icon: 'el-icon-first-aid-kit',
index: 'shop-list'
};
vm.items.push(shop);
}else {
return;
}
})
/*const shop = {
title: '云鹊店铺',
icon: 'el-icon-first-aid-kit',
index: 'shop-list'
};
vm.items.push(shop);
const shop1 = {
title: '商品管理',
icon: 'el-icon-first-aid-kit',
index: 'goods-manage'
};
vm.items.push(shop1);
const shop2 = {
title: '订单管理',
icon: 'el-icon-first-aid-kit',
index: 'order-manage'
};
vm.items.push(shop2);*/
},
goToMessageSendPage(checkAuth) { vm.items[1].subs.push(subjectManager);
if(checkAuth){ vm.items[1].subs.push(itemComponent);
utils.checkAuthFunc().then(res=>{ vm.items[1].subs.push(templateManager);
console.log(res) vm.items[1].subs.push(followSider);
if(res==3){ vm.items[1].subs.push(advertSimpleManage);
}else{ vm.items.push(eduRole);
return vm.items.push(cme);
} vm.items.push(yqRange);
let env = process.env.BUILD_ENV; vm.items.push(outResourceManage);
let src = ''; },
if( (env == 'development') || (env == 'dev') ){ // 本地开发环境 || jenkins dev setShopSide() {
src = 'https://dev-saas.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message' queryShopAuth().then((res) => {
}else if( (env == 'test') || (env == 'test2') ){ // test // 0 表示超级管理员,大于0 表示小店或供应商,null 表示非法用户
src = 'https://test1.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message'; if (res.data >= 0) {
}else if( env == 'uat' ){ // uat const shop = {
src = 'https://uat.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message'; title: "云鹊店铺",
}else if( env == 'pro' ){ // 线上 icon: "el-icon-first-aid-kit",
src = 'https://www.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message'; index: "shop-list",
} };
location.href = src; vm.items.push(shop);
// let newTab=window.open('about:blank'); } else {
// newTab.location = src; return;
})
} }
}, });
},
// judge/menu goToMessageSendPage(checkAuth) {
setCircleSlide() { if (checkAuth) {
circleMenu({}).then((res) => { utils.checkAuthFunc().then((res) => {
if (res.data === true) { console.log(res);
this.items[2].subs.push({ if (res == 3) {
title: '新建小圈权限分配', } else {
icon: 'el-icon-setting', return;
index: 'circle-limit' }
}) let env = process.env.BUILD_ENV;
} let src = "";
}) if (env == "development" || env == "dev") {
// 本地开发环境 || jenkins dev
src =
"https://dev-saas.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message";
} else if (env == "test" || env == "test2") {
// test
src =
"https://test1.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message";
} else if (env == "uat") {
// uat
src =
"https://uat.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message";
} else if (env == "pro") {
// 线上
src =
"https://www.yunqueyi.com/pica-frontend/patientEduManage/pica_patient_edu_manage.html#/pageTab/message";
}
location.href = src;
// let newTab=window.open('about:blank');
// newTab.location = src;
});
} }
} },
}
// judge/menu
setCircleSlide() {
circleMenu({}).then((res) => {
if (res.data === true) {
this.items[2].subs.push({
title: "新建小圈权限分配",
icon: "el-icon-setting",
index: "circle-limit",
});
}
});
},
},
};
</script> </script>
<style lang="scss"> <style lang="scss">
.slidebar-container { .slidebar-container {
display: block; display: block;
position: absolute; position: absolute;
left: 0; left: 0;
top: 64px; top: 64px;
bottom: 0; bottom: 0;
width: 255px; width: 255px;
background: #06232C; background: #06232c;
overflow-y: scroll; overflow-y: scroll;
.el-menu { .el-menu {
background: #06232C; background: #06232c;
border-right: none; border-right: none;
.sub-icon { .sub-icon {
font-size: 12px; font-size: 12px;
}
.el-menu-item, .el-submenu__title {
color: #8FA4AC;
}
.el-menu-item.is-active {
color: #fff;
background: #509284 !important
}
.el-menu-item:hover,
.el-submenu__title:hover,
.slidebar-container .el-menu .el-menu-item:hover,
.slidebar-container .el-menu .el-submenu__title:hover {
color: #fff;
background: #06232C;
}
// .el-menu-item:focus, .el-menu-item:hover {
// background: #06232C !important;
// }
.el-icon-patients-manage{
width: 17px;
height: 17px;
background: url('../../assets/image/patients-icon.png');
margin: 0 8px 0 3px ;
background-size: 17px 17px;
opacity: 0.6;
}
.set-normal-background{
background: #06232C;
}
} }
.redNum { .el-menu-item,
display: inline-block; .el-submenu__title {
border-radius: 10px; color: #8fa4ac;
margin-left: 15px; }
background: #EE263E; .el-menu-item.is-active {
color: #fff; color: #fff;
font-size: 12px; background: #509284 !important;
line-height: 12px; }
/*padding: 5px 10px;*/ .el-menu-item:hover,
padding: 2px 5px; .el-submenu__title:hover,
span { .slidebar-container .el-menu .el-menu-item:hover,
display: block; .slidebar-container .el-menu .el-submenu__title:hover {
} color: #fff;
background: #06232c;
}
// .el-menu-item:focus, .el-menu-item:hover {
// background: #06232C !important;
// }
.el-icon-patients-manage {
width: 17px;
height: 17px;
background: url("../../assets/image/patients-icon.png");
margin: 0 8px 0 3px;
background-size: 17px 17px;
opacity: 0.6;
}
.set-normal-background {
background: #06232c;
}
}
.redNum {
display: inline-block;
border-radius: 10px;
margin-left: 15px;
background: #ee263e;
color: #fff;
font-size: 12px;
line-height: 12px;
/*padding: 5px 10px;*/
padding: 2px 5px;
span {
display: block;
} }
} }
}
</style> </style>
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册