From 8c09a2df8fecfd5d817eeacc88b27ff9fd32b7c0 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 27 四月 2026 13:22:51 +0800
Subject: [PATCH] 天津宝东app 1.权限修改

---
 src/pages/works.vue |  181 ++++++++++++++++++++------------------------
 1 files changed, 82 insertions(+), 99 deletions(-)

diff --git a/src/pages/works.vue b/src/pages/works.vue
index 88a7c66..360fc0e 100644
--- a/src/pages/works.vue
+++ b/src/pages/works.vue
@@ -89,27 +89,27 @@
       </view>
     </view>
     <!-- 浜哄姏璧勬簮妯″潡 -->
-    <view class="common-module collaboration-module"
-          v-if="hasHumanResourcesItems">
-      <view class="module-header">
-        <view class="module-title-container">
-          <text class="module-title">浜哄姏璧勬簮</text>
-        </view>
-      </view>
-      <view class="module-content">
-        <up-grid :border="false"
-                 col="4">
-          <up-grid-item v-for="(item, index) in humanResourcesItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container">
-              <image :src="item.icon" class="item-icon"></image>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
+<!--    <view class="common-module collaboration-module"-->
+<!--          v-if="hasHumanResourcesItems">-->
+<!--      <view class="module-header">-->
+<!--        <view class="module-title-container">-->
+<!--          <text class="module-title">浜哄姏璧勬簮</text>-->
+<!--        </view>-->
+<!--      </view>-->
+<!--      <view class="module-content">-->
+<!--        <up-grid :border="false"-->
+<!--                 col="4">-->
+<!--          <up-grid-item v-for="(item, index) in humanResourcesItems"-->
+<!--                        :key="index"-->
+<!--                        @click="handleCommonItemClick(item)">-->
+<!--            <view class="icon-container">-->
+<!--              <image :src="item.icon" class="item-icon"></image>-->
+<!--            </view>-->
+<!--            <text class="item-label">{{item.label}}</text>-->
+<!--          </up-grid-item>-->
+<!--        </up-grid>-->
+<!--      </view>-->
+<!--    </view>-->
     <!-- 鐢熶骇绠℃帶妯″潡 -->
     <view class="common-module equipment-module"
           v-if="hasProductionItems">
@@ -154,50 +154,28 @@
         </up-grid>
       </view>
     </view>
-    <!-- 妗f绠$悊妯″潡 -->
-    <view class="common-module archive-module"
-          v-if="hasArchiveManagementItems">
-      <view class="module-header">
-        <view class="module-title-container">
-          <text class="module-title">妗f绠$悊</text>
-        </view>
-      </view>
-      <view class="module-content">
-        <up-grid :border="false"
-                 col="4">
-          <up-grid-item v-for="(item, index) in archiveManagementItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container">
-              <image :src="item.icon" class="item-icon"></image>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
     <!-- 鍞悗鏈嶅姟妯″潡 -->
-    <view class="common-module after-sales-module"
-          v-if="hasAfterSalesServiceItems">
-      <view class="module-header">
-        <view class="module-title-container">
-          <text class="module-title">鍞悗鏈嶅姟</text>
-        </view>
-      </view>
-      <view class="module-content">
-        <up-grid :border="false"
-                 col="4">
-          <up-grid-item v-for="(item, index) in afterSalesServiceItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container">
-              <image :src="item.icon" class="item-icon"></image>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
+<!--    <view class="common-module after-sales-module"-->
+<!--          v-if="hasAfterSalesServiceItems">-->
+<!--      <view class="module-header">-->
+<!--        <view class="module-title-container">-->
+<!--          <text class="module-title">鍞悗鏈嶅姟</text>-->
+<!--        </view>-->
+<!--      </view>-->
+<!--      <view class="module-content">-->
+<!--        <up-grid :border="false"-->
+<!--                 col="4">-->
+<!--          <up-grid-item v-for="(item, index) in afterSalesServiceItems"-->
+<!--                        :key="index"-->
+<!--                        @click="handleCommonItemClick(item)">-->
+<!--            <view class="icon-container">-->
+<!--              <image :src="item.icon" class="item-icon"></image>-->
+<!--            </view>-->
+<!--            <text class="item-label">{{item.label}}</text>-->
+<!--          </up-grid-item>-->
+<!--        </up-grid>-->
+<!--      </view>-->
+<!--    </view>-->
     <!-- 璐ㄩ噺绠$悊妯″潡 -->
     <view class="common-module collaboration-module"
           v-if="hasQualityItems">
@@ -243,38 +221,44 @@
       </view>
     </view>
     <!-- 瀹夊叏鐢熶骇妯″潡 -->
-    <view class="common-module collaboration-module"
-          v-if="hasSafetyItems">
-      <view class="module-header">
-        <view class="module-title-container">
-          <text class="module-title">瀹夊叏鐢熶骇</text>
-        </view>
-      </view>
-      <view class="module-content">
-        <up-grid :border="false"
-                 col="4">
-          <up-grid-item v-for="(item, index) in safetyItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container">
-              <image :src="item.icon" class="item-icon"></image>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
+<!--    <view class="common-module collaboration-module"-->
+<!--          v-if="hasSafetyItems">-->
+<!--      <view class="module-header">-->
+<!--        <view class="module-title-container">-->
+<!--          <text class="module-title">瀹夊叏鐢熶骇</text>-->
+<!--        </view>-->
+<!--      </view>-->
+<!--      <view class="module-content">-->
+<!--        <up-grid :border="false"-->
+<!--                 col="4">-->
+<!--          <up-grid-item v-for="(item, index) in safetyItems"-->
+<!--                        :key="index"-->
+<!--                        @click="handleCommonItemClick(item)">-->
+<!--            <view class="icon-container">-->
+<!--              <image :src="item.icon" class="item-icon"></image>-->
+<!--            </view>-->
+<!--            <text class="item-label">{{item.label}}</text>-->
+<!--          </up-grid-item>-->
+<!--        </up-grid>-->
+<!--      </view>-->
+<!--    </view>-->
+
+    <DownloadProgressMask />
   </view>
 </template>
 
 <script setup>
   import { ref, onMounted, nextTick, reactive, computed } from "vue";
+  import { onShow } from "@dcloudio/uni-app";
   import { userLoginFacotryList } from "@/api/login";
   import { getProductWorkOrderById } from "@/api/productionManagement/productionReporting";
+  import { createVersionUpgradeChecker } from "@/utils/versionUpgrade";
+  import DownloadProgressMask from "@/components/DownloadProgressMask.vue";
   import modal from "@/plugins/modal";
   import useUserStore from "@/store/modules/user";
 
   const userStore = useUserStore();
+  const { triggerVersionCheck } = createVersionUpgradeChecker({ logPrefix: "[version-works]" });
   const show = ref(false);
   const factoryList = ref([]);
   const factoryListTem = ref([]);
@@ -301,7 +285,7 @@
   const marketingItems = reactive([
     {
       icon: "/static/images/icon/kehudangan.svg",
-      label: "瀹㈡埛妗f",
+      label: "瀹㈡埛妗f(绉佹捣)",
     },
     {
       icon: "/static/images/icon/xiaoshoubaojia.svg",
@@ -326,6 +310,10 @@
     {
       icon: "/static/images/icon/gongyingshangwanglai.svg",
       label: "渚涘簲鍟嗗線鏉�",
+    },
+    {
+      icon: "/static/images/icon/gongyingshangdangan.svg",
+      label: "渚涘簲鍟嗘。妗�",
     },
     {
       icon: "/static/images/icon/caigouguanli.svg",
@@ -378,14 +366,6 @@
     {
       icon: "/static/images/icon/jiekuanguanli.svg",
       label: "鍊熸绠$悊",
-    },
-  ]);
-
-  // 妗f绠$悊鍔熻兘鏁版嵁
-  const archiveManagementItems = reactive([
-    {
-      icon: "/static/images/icon/gongyingshangdangan.svg",
-      label: "渚涘簲鍟嗘。妗�",
     },
   ]);
 
@@ -559,7 +539,7 @@
   const handleCommonItemClick = item => {
     // 鏍规嵁涓嶅悓鐨勫姛鑳介」杩涜璺宠浆
     switch (item.label) {
-      case "瀹㈡埛妗f":
+      case "瀹㈡埛妗f(绉佹捣)":
         uni.navigateTo({
           url: "/pages/basicData/customerFile/index",
         });
@@ -1104,8 +1084,8 @@
 
     // 瀹氫箟鑿滃崟閰嶇疆鏄犲皠
     const menuMapping = {
+      purchase: { target: purchaseItems, specialMapping: { "渚涘簲鍟嗘。妗�": "渚涘簲鍟嗙鐞�" } },
       collaboration: { target: collaborationItems, specialMapping: { "瑙勭珷鍒跺害": "瑙勭珷鍒跺害绠$悊" } },
-      archiveManagement: { target: archiveManagementItems, specialMapping: { "渚涘簲鍟嗘。妗�": "渚涘簲鍟嗙鐞�" } },
     };
     console.log(allowedMenuTitles)
     // 閫氱敤杩囨护鍑芥暟
@@ -1122,9 +1102,8 @@
 
     // 杩囨护鍚勪釜妯″潡
     filterArray(marketingItems);
-    filterArray(purchaseItems);
+    filterArray(purchaseItems, menuMapping.purchase.specialMapping);
     filterArray(financeManagementItems);
-    filterArray(archiveManagementItems, menuMapping.archiveManagement.specialMapping);
     filterArray(collaborationItems, menuMapping.collaboration.specialMapping);
     filterArray(safetyItems);
     filterArray(humanResourcesItems);
@@ -1138,7 +1117,6 @@
   const hasMarketingItems = computed(() => marketingItems.length > 0);
   const hasPurchaseItems = computed(() => purchaseItems.length > 0);
   const hasFinanceManagementItems = computed(() => financeManagementItems.length > 0);
-  const hasArchiveManagementItems = computed(() => archiveManagementItems.length > 0);
   const hasAfterSalesServiceItems = computed(() => afterSalesServiceItems.length > 0);
   const hasCollaborationItems = computed(() => collaborationItems.length > 0);
   const hasSafetyItems = computed(() => safetyItems.length > 0);
@@ -1149,6 +1127,7 @@
   const hasEquipmentItems = computed(() => equipmentItems.length > 0);
 
   onMounted(() => {
+    triggerVersionCheck("onMounted");
     // 姣忔杩涘叆棣栭〉閮藉己鍒跺埛鏂扮敤鎴蜂俊鎭拰璺敱鏉冮檺锛屼笉鍋氭湰鍦扮紦瀛樺垽鏂�
     userStore.getInfo().then(() => {
       userStore
@@ -1164,6 +1143,10 @@
     // 鍚姩閫氱煡鐘舵�佸畾鏃跺櫒
     startStatusTimer();
   });
+
+  onShow(() => {
+    triggerVersionCheck("onShow");
+  });
 </script>
 
 

--
Gitblit v1.9.3