From 7036cc397adccb4907b80a30143f7751b4e68db8 Mon Sep 17 00:00:00 2001 From: zhuzhuanzhuan Date: 星期三, 20 三月 2024 11:21:54 +0800 Subject: [PATCH] 实现首页公司级与分厂级看板布局及相关功能 --- src/views/dashboard/Analysis.vue | 117 ++++++++++++++++++++++++++-------------------------------- 1 files changed, 52 insertions(+), 65 deletions(-) diff --git a/src/views/dashboard/Analysis.vue b/src/views/dashboard/Analysis.vue index 209c1ab..59b71a3 100644 --- a/src/views/dashboard/Analysis.vue +++ b/src/views/dashboard/Analysis.vue @@ -1,90 +1,77 @@ <template> - <div class="page-container"> - <!--<index-chart v-if="indexStyle==1"></index-chart>--> - <!--<index-bdc v-if="indexStyle==2"></index-bdc>--> - <!--<index-task v-if="indexStyle==3"></index-task>--> - <!--<div style="width: 100%;text-align: right;margin-top: 20px">--> - <!--璇烽�夋嫨棣栭〉鏍峰紡锛�--> - <!--<!–<a-radio-group v-model="indexStyle">–>--> - <!--<!–<a-radio :value="1">缁熻鍥捐〃</a-radio>–>--> - <!--<!–<a-radio :value="2">缁熻鍥捐〃2</a-radio>–>--> - <!--<!–<a-radio :value="3">浠诲姟琛ㄦ牸</a-radio>–>--> - <!--<!–</a-radio-group>–>--> - <!--</div>--> - - <a-list - :grid="{ gutter: [{xs: 0, sm: 24, md: 24, lg: 56, xl: 64, xxl: 80},20], xs: 1, sm: 2, md: 2, lg: 3, xl: 4, xxl: 4 }" - :data-source="workshopList"> - <a-list-item slot="renderItem" slot-scope="item, index"> - <div class="workshop-name" @click="navigateToWorkshopSignage(item.id)">{{item.workshopName}}</div> - </a-list-item> - </a-list> - - </div> + <Component :is="currentSignage" :productionCode="productionCode" @switchToBranchFactory="switchToBranchFactory"> + <template #back_nav> + <dv-decoration-11 class="back-nav" v-if="userType===4"> + <div @click="backToLastSignage">杩斿洖涓婁竴绾�</div> + </dv-decoration-11> + </template> + </Component> </template> <script> - import IndexChart from './IndexChart' - import IndexTask from './IndexTask' - import IndexBdc from './IndexBdc' - import api from '@/api/mdc' + import signageApi from '@/api/signage' + import IndexSignage from './IndexSignage.vue' + import BranchFactorySignage from './BranchFactorySignage.vue' export default { name: 'Analysis', components: { - IndexChart, - IndexTask, - IndexBdc + IndexSignage, + BranchFactorySignage }, data() { return { - indexStyle: 1, - workshopList: [] + currentSignage: '', + productionCode: '', + userType: '' } }, created() { - this.getWorkshopListByApi() + this.showModuleByUserInfo() + }, + mounted() { }, methods: { - /** - * 閫氳繃杞﹂棿Id璺宠浆鑷崇浉搴旇溅闂村ぇ灞忕湅鏉� - * @param id 杞﹂棿Id - */ - navigateToWorkshopSignage(id) { - const url = this.$router.resolve(`/workshopSignage/${id}`).href - window.open(url, '_blank') + showModuleByUserInfo() { + const id = JSON.parse(localStorage.getItem('pro__Login_Userinfo')).value.id + signageApi.getUserByIdApi(id) + .then(res => { + this.userType = res.userType + console.log('瑙﹀彂鍒ゆ柇', this.userType) + switch (this.userType) { + case 1: + this.currentSignage = '' + break + case 2: + this.currentSignage = 'BranchFactorySignage' + break + case 3: + this.currentSignage = 'BranchFactorySignage' + break + case 4: + this.currentSignage = 'IndexSignage' + break + default: + this.currentSignage = '' + break + } + }) + }, - /** - * 鑾峰彇杞﹂棿鍒楄〃 - */ - getWorkshopListByApi() { - api.getWorkshopListInHomePageApi().then(res => { - console.log('res', res) - if (res.result && res.result.length > 0) { - this.workshopList = res.result - } - }) + + backToLastSignage() { + this.currentSignage = 'IndexSignage' + }, + + switchToBranchFactory(value) { + console.log('瀛愮粍浠秜alue', value) + this.currentSignage = 'BranchFactorySignage' + this.productionCode = value } } } </script> <style lang="less" scoped> - .page-container { - padding: 30px 30px 0; - - .workshop-name { - width: 100%; - background: #fff; - padding: 55px 0; - border-radius: 20px; - text-align: center; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - font-size: 30px; - cursor: pointer; - } - } </style> \ No newline at end of file -- Gitblit v1.9.3