|
@@ -0,0 +1,221 @@
|
|
|
+<template>
|
|
|
+ <!-- 常用工具 -->
|
|
|
+ <div class="commonToolsPage flex-col">
|
|
|
+ <s-header :name="$t('home.commonTools')" :noback="false"></s-header>
|
|
|
+ <div class="commonToolsBox flex-col">
|
|
|
+ <div class="outer11 flex-row">
|
|
|
+ <div class="main25 flex-col" v-for="(item, index) in pushToolList" :key="index"
|
|
|
+ @click="pushToolPage(item.value)">
|
|
|
+ <img class="mod7 flex-col" :src="showLogo(item.value)" />
|
|
|
+ <div class="TextGroup14 flex-col">
|
|
|
+ <!-- <span class="info15" v-html="item.label"></span> -->
|
|
|
+ <span class="info15">{{ $t(item.label) }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+
|
|
|
+<script>
|
|
|
+import { onMounted, reactive } from 'vue';
|
|
|
+import sHeader from "@/components/SimpleHeader";
|
|
|
+import { useRouter } from "vue-router";
|
|
|
+import { getLoginUser, styleUrl, $M_Menus } from "../../common/js/utils";
|
|
|
+import { useI18n } from "vue-i18n";
|
|
|
+
|
|
|
+export default {
|
|
|
+ components: { sHeader },
|
|
|
+ setup() {
|
|
|
+ const router = useRouter();
|
|
|
+ const user = getLoginUser();
|
|
|
+ const pushToolList = reactive([]);
|
|
|
+ const menuList = [];
|
|
|
+
|
|
|
+ const { t } = useI18n();
|
|
|
+ // 赋值菜单
|
|
|
+ pushToolList.value = menuList;
|
|
|
+
|
|
|
+ // 设置菜单权限
|
|
|
+ const menuSet = () => {
|
|
|
+
|
|
|
+ // 清空菜单列表
|
|
|
+ // menuList.length = 0;
|
|
|
+ pushToolList.length = 0;
|
|
|
+
|
|
|
+ // 组合菜单权限
|
|
|
+ user.menuCodeList.forEach((item) => {
|
|
|
+ for (const key in $M_Menus) {
|
|
|
+ // 设备管理M1,设备查看M2,订单数据M4,任务消息M6,销售排行M11,数据概览M14,订单退款M16,系统脱机M17 这些图标不用加载到底部菜单上
|
|
|
+ if (
|
|
|
+ item === key &&
|
|
|
+ (
|
|
|
+ item !== "M1" &&
|
|
|
+ item !== "M2" && // M2本身就无logo
|
|
|
+ item !== "M4" &&
|
|
|
+ item !== "M6" &&
|
|
|
+ item !== "M11" &&
|
|
|
+ item !== "M14" &&
|
|
|
+ item !== "M16" &&
|
|
|
+ item !== "M17"
|
|
|
+ )
|
|
|
+ ) {
|
|
|
+ menuList.push({
|
|
|
+ label: $M_Menus[key],
|
|
|
+ value: item
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ // 赋值菜单
|
|
|
+ // pushToolList.value = menuList;
|
|
|
+ pushToolList.push(...menuList);
|
|
|
+
|
|
|
+ // 查询是否有apk管理权限
|
|
|
+ const isApkMan = user.menuCodeList.some((item) => {
|
|
|
+ return item === "M19";
|
|
|
+ });
|
|
|
+
|
|
|
+ // 查询是否有账号权限
|
|
|
+ const isAccount = user.menuCodeList.some((item) => {
|
|
|
+ return item === "M8";
|
|
|
+ });
|
|
|
+
|
|
|
+ // 查询是否有订单数据权限
|
|
|
+ // isOrderData.value = user.menuCodeList.some((item) => {
|
|
|
+ // return item === "M4";
|
|
|
+ // })
|
|
|
+
|
|
|
+ // 查询是否有订单导出权限
|
|
|
+ // const isOrderExport = user.menuCodeList.some((item) => {
|
|
|
+ // return item === "M9";
|
|
|
+ // })
|
|
|
+
|
|
|
+ // 查询是否有数据概览权限
|
|
|
+ // const isDataOverview = user.menuCodeList.some((item) => {
|
|
|
+ // return item === "M14";
|
|
|
+ // })
|
|
|
+
|
|
|
+ // 如果没有apk管理
|
|
|
+ if (!isApkMan) {
|
|
|
+ // 如果是公司人,要把apk添加上去
|
|
|
+ // if (user.type === 0 || user.type === 1) {
|
|
|
+ // pushToolList.value.push({
|
|
|
+ // label: t("home.apkMan"),
|
|
|
+ // value: "M19"
|
|
|
+ // });
|
|
|
+ // }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 如果没有账号权限
|
|
|
+ if (!isAccount) {
|
|
|
+ // 如果是公司人type=0,要把账号权限添加上去
|
|
|
+ if (user.type === 0) {
|
|
|
+ pushToolList.value.push({
|
|
|
+ label: t("home.accountPermission"),
|
|
|
+ value: "M8"
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 子商家以上级别,默认可以看到订单详情
|
|
|
+ // if (user.type === 0 || user.type === 2) {
|
|
|
+ // showDataDiv.value = true;
|
|
|
+ // } else {
|
|
|
+ // // 如果有数据概览权限 和 订单数据权限
|
|
|
+ // if (isDataOverview && isOrderData.value) {
|
|
|
+ // showDataDiv.value = true;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ };
|
|
|
+
|
|
|
+ // 常用操作跳转页面
|
|
|
+ const pushToolPage = (index) => {
|
|
|
+ // console.log("常用操作跳转页面menuList >>> " + menuList);
|
|
|
+ switch (index) {
|
|
|
+ case "M1":
|
|
|
+ router.push({ path: "/device" }); // 设备管理
|
|
|
+ break;
|
|
|
+ case "M3":
|
|
|
+ // router.push({ path: "/distributionSet" });
|
|
|
+ router.push({ path: "/accountOperation" }); // 账户操作
|
|
|
+ break;
|
|
|
+ case "M4":
|
|
|
+ router.push({ path: "/orderCenter" }); // 订单数据
|
|
|
+ break;
|
|
|
+ case "M5":
|
|
|
+ router.push({ path: "/advertManage" }); // 广告管理
|
|
|
+ break;
|
|
|
+ case "M6":
|
|
|
+ router.push({ path: "/taskMessage" });
|
|
|
+ break;
|
|
|
+ case "M7":
|
|
|
+ router.push({ path: "/discountCode" });
|
|
|
+ break;
|
|
|
+ case "M8":
|
|
|
+ router.push({ path: "/accountPer" });
|
|
|
+ break;
|
|
|
+ case "M9":
|
|
|
+ router.push({ path: "/orderExport" });
|
|
|
+ break;
|
|
|
+ case "M10":
|
|
|
+ router.push({ path: "/subLedgerManage" });
|
|
|
+ break;
|
|
|
+ case "M11":
|
|
|
+ router.push({ path: "/robotranking" });
|
|
|
+ break;
|
|
|
+ case "M12":
|
|
|
+ router.push({ path: "/joinpayMch" });
|
|
|
+ break;
|
|
|
+ case "M13":
|
|
|
+ router.push({ path: "/shandeMch" });
|
|
|
+ break;
|
|
|
+ case "M15":
|
|
|
+ router.push({ path: "/alarmHistory" }); // 报警历史
|
|
|
+ break;
|
|
|
+ case "M18":
|
|
|
+ router.push({ path: "/labelMan" });
|
|
|
+ break;
|
|
|
+ case "M19":
|
|
|
+ router.push({ path: "/apkManage" });
|
|
|
+ break;
|
|
|
+ case "M20":
|
|
|
+ router.push({ path: "/merchantManage" });
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+ // 显示logo
|
|
|
+ const showLogo = (url) => {
|
|
|
+ return require(`../../assets/home/${url}.png`);
|
|
|
+ };
|
|
|
+
|
|
|
+ // 初始化页面获取列表
|
|
|
+ onMounted(async () => {
|
|
|
+ styleUrl('commonTools');
|
|
|
+ // 设置菜单权限
|
|
|
+ menuSet();
|
|
|
+ });
|
|
|
+ const pushPageList = (url) => {
|
|
|
+ router.push(url);
|
|
|
+ }
|
|
|
+ return {
|
|
|
+ pushToolList,
|
|
|
+ pushPageList,
|
|
|
+ user,
|
|
|
+ pushToolPage,
|
|
|
+ // showDataDiv,
|
|
|
+ showLogo,
|
|
|
+ };
|
|
|
+ }
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less" scoped>
|
|
|
+@import "../../common/style/common.less";
|
|
|
+</style>
|