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">-->
-    <!--璇烽�夋嫨棣栭〉鏍峰紡锛�-->
-    <!--&lt;!&ndash;<a-radio-group v-model="indexStyle">&ndash;&gt;-->
-    <!--&lt;!&ndash;<a-radio :value="1">缁熻鍥捐〃</a-radio>&ndash;&gt;-->
-    <!--&lt;!&ndash;<a-radio :value="2">缁熻鍥捐〃2</a-radio>&ndash;&gt;-->
-    <!--&lt;!&ndash;<a-radio :value="3">浠诲姟琛ㄦ牸</a-radio>&ndash;&gt;-->
-    <!--&lt;!&ndash;</a-radio-group>&ndash;&gt;-->
-    <!--</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