From 74c036b0034fc5dcd0800e049735bf5904aed23b Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期五, 23 一月 2026 11:29:29 +0800
Subject: [PATCH] 首页协同办公图标太多整理

---
 src/pages/index.vue |  724 +++++++++++++++++++++++++++++-------------------------
 1 files changed, 389 insertions(+), 335 deletions(-)

diff --git a/src/pages/index.vue b/src/pages/index.vue
index 5f0b494..f39559a 100644
--- a/src/pages/index.vue
+++ b/src/pages/index.vue
@@ -18,7 +18,7 @@
     <view class="hero-section">
       <view class="bg-img">
         <view class="hero-content">
-          <text class="hero-title">娴峰窛寮�蹇冮鍝�</text>
+          <text class="hero-title">鍐涙嘲浼熶笟</text>
         </view>
         <view class="hero-wave"></view>
       </view>
@@ -38,54 +38,54 @@
     <!--			</view>-->
     <!--		</view>-->
     <!-- 钀ラ攢绠$悊妯″潡 -->
-    <view class="common-module marketing-module">
-      <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 marketingItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container"
-                  :style="{ background: item.bgColor }">
-              <up-icon :name="item.icon"
-                       :size="58"
-                       color="#ffffff"></up-icon>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
-    <!-- 閲囪喘绠$悊妯″潡 -->
-    <view class="common-module purchase-module">
-      <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 purchaseItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container"
-                  :style="{ background: item.bgColor }">
-              <up-icon :name="item.icon"
-                       :size="58"
-                       color="#ffffff"></up-icon>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
-    <!-- 鍗忓悓鍔炲叕妯″潡 -->
+    <!--    <view class="common-module marketing-module">-->
+    <!--      <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 marketingItems"-->
+    <!--                        :key="index"-->
+    <!--                        @click="handleCommonItemClick(item)">-->
+    <!--            <view class="icon-container"-->
+    <!--                  :style="{ background: item.bgColor }">-->
+    <!--              <up-icon :name="item.icon"-->
+    <!--                       :size="58"-->
+    <!--                       color="#ffffff"></up-icon>-->
+    <!--            </view>-->
+    <!--            <text class="item-label">{{item.label}}</text>-->
+    <!--          </up-grid-item>-->
+    <!--        </up-grid>-->
+    <!--      </view>-->
+    <!--    </view>-->
+    <!--    &lt;!&ndash; 閲囪喘绠$悊妯″潡 &ndash;&gt;-->
+    <!--    <view class="common-module purchase-module">-->
+    <!--      <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 purchaseItems"-->
+    <!--                        :key="index"-->
+    <!--                        @click="handleCommonItemClick(item)">-->
+    <!--            <view class="icon-container"-->
+    <!--                  :style="{ background: item.bgColor }">-->
+    <!--              <up-icon :name="item.icon"-->
+    <!--                       :size="58"-->
+    <!--                       color="#ffffff"></up-icon>-->
+    <!--            </view>-->
+    <!--            <text class="item-label">{{item.label}}</text>-->
+    <!--          </up-grid-item>-->
+    <!--        </up-grid>-->
+    <!--      </view>-->
+    <!--    </view>-->
+    <!--    &lt;!&ndash; 鍗忓悓鍔炲叕妯″潡 &ndash;&gt;-->
     <view class="common-module collaboration-module">
       <view class="module-header">
         <view class="module-title-container">
@@ -109,32 +109,37 @@
         </up-grid>
       </view>
     </view>
-    <!-- 鍏ュ簱绠$悊 -->
-    <view class="common-module collaboration-module">
-      <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 inventoryManagement"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container"
-                  :style="{ background: item.bgColor }">
-              <up-icon :name="item.icon"
-                       :size="58"
-                       color="#ffffff"></up-icon>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
     <!-- 鐢熶骇绠℃帶妯″潡 -->
-    <view class="common-module production-module">
+    <!--		<view class="common-module production-module">-->
+    <!--			<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 productionItems"-->
+    <!--						:key="index"-->
+    <!--						@click="handleCommonItemClick(item)"-->
+    <!--					>-->
+    <!--						<view class="icon-container" :style="{ background: item.bgColor }">-->
+    <!--							<up-icon-->
+    <!--								:name="item.icon"-->
+    <!--								:size="58"-->
+    <!--								color="#ffffff"-->
+    <!--							></up-icon>-->
+    <!--						</view>-->
+    <!--						<text class="item-label">{{item.label}}</text>-->
+    <!--					</up-grid-item>-->
+    <!--				</up-grid>-->
+    <!--			</view>-->
+    <!--		</view>-->
+    <!-- 鐢熶骇绠℃帶妯″潡 -->
+    <view class="common-module equipment-module">
       <view class="module-header">
         <view class="module-title-container">
           <text class="module-title">鐢熶骇绠℃帶</text>
@@ -158,39 +163,38 @@
       </view>
     </view>
     <!-- 璁惧绠$悊妯″潡 -->
-    <view class="common-module equipment-module">
-      <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 equipmentItems"
-                        :key="index"
-                        @click="handleCommonItemClick(item)">
-            <view class="icon-container"
-                  :style="{ background: item.bgColor }">
-              <up-icon :name="item.icon"
-                       :size="58"
-                       color="#ffffff"></up-icon>
-            </view>
-            <text class="item-label">{{item.label}}</text>
-          </up-grid-item>
-        </up-grid>
-      </view>
-    </view>
+    <!--    <view class="common-module equipment-module">-->
+    <!--      <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 equipmentItems"-->
+    <!--                        :key="index"-->
+    <!--                        @click="handleCommonItemClick(item)">-->
+    <!--            <view class="icon-container"-->
+    <!--                  :style="{ background: item.bgColor }">-->
+    <!--              <up-icon :name="item.icon"-->
+    <!--                       :size="58"-->
+    <!--                       color="#ffffff"></up-icon>-->
+    <!--            </view>-->
+    <!--            <text class="item-label">{{item.label}}</text>-->
+    <!--          </up-grid-item>-->
+    <!--        </up-grid>-->
+    <!--      </view>-->
+    <!--    </view>-->
   </view>
 </template>
 
 <script setup>
   import { ref, onMounted, nextTick, reactive } from "vue";
-  import dayjs from "dayjs";
-  import { userLoginFacotryList, noticesList } from "@/api/login";
+  import { userLoginFacotryList } from "@/api/login";
+  import { getProductWorkOrderById } from "@/api/productionManagement/productionReporting";
   import modal from "@/plugins/modal";
   import useUserStore from "@/store/modules/user";
-  import { onShow } from "@dcloudio/uni-app";
 
   const userStore = useUserStore();
   const factoryId = ref("");
@@ -274,94 +278,135 @@
 
   // 鍗忓悓鍔炲叕鍔熻兘鏁版嵁
   const collaborationItems = reactive([
+    // {
+    //   icon: "/static/images/icon/gongchuguanli@2x.png",
+    //   label: "鍏嚭绠$悊",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "璇峰亣绠$悊",
+    // },
+    // {
+    //   icon: "/static/images/icon/chuchaiguanli@2x.png",
+    //   label: "鍑哄樊绠$悊",
+    // },
     {
-      icon: "/static/images/icon/gongchuguanli@2x.png",
-      label: "鍏嚭绠$悊",
-    },
-    {
-      icon: "/static/images/icon/qingjiaguanli@2x.png",
-      label: "璇峰亣绠$悊",
+      icon: "/static/images/icon/chuchaiguanli@2x.png",
+      label: "鑰冨嫟绠$悊",
     },
     {
       icon: "/static/images/icon/chuchaiguanli@2x.png",
-      label: "鍑哄樊绠$悊",
+      label: "璐㈠姟绠$悊",
     },
+    // {
+    //   icon: "/static/images/icon/chuchaiguanli@2x.png",
+    //   label: "鎶ラ攢绠$悊",
+    // },
+    // {
+    //   icon: "/static/images/icon/chuchaiguanli@2x.png",
+    //   label: "閲囪喘绠$悊",
+    // },
+    // {
+    //   icon: "/static/images/icon/chuchaiguanli@2x.png",
+    //   label: "鎶ヤ环绠$悊",
+    // },
+    // {
+    //   icon: "/static/images/icon/chuchaiguanli@2x.png",
+    //   label: "鍑哄簱绠$悊",
+    // },
     {
       icon: "/static/images/icon/chuchaiguanli@2x.png",
-      label: "鎶ラ攢绠$悊",
+      label: "浼氳绠$悊",
     },
-    {
-      icon: "/static/images/icon/chuchaiguanli@2x.png",
-      label: "閲囪喘绠$悊",
-    },
-    {
-      icon: "/static/images/icon/chuchaiguanli@2x.png",
-      label: "鎶ヤ环绠$悊",
-    },
-    {
-      icon: "/static/images/icon/chuchaiguanli@2x.png",
-      label: "鍑哄簱绠$悊",
-    },
-    {
-      icon: "/static/images/icon/xietongshenpi@2x.png",
-      label: "鍗忓悓瀹℃壒",
-    },
-    {
-      icon: "/static/images/icon/kehubaifang@2x.png",
-      label: "瀹㈡埛鎷滆",
-    },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳璁剧疆",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳鍒楄〃",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳鐢宠",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳瀹℃壒",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳鍙戝竷",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳鎬荤粨",
+    // },
+    // {
+    //   icon: "/static/images/icon/qingjiaguanli@2x.png",
+    //   label: "浼氳鐪嬫澘",
+    // },
     {
       icon: "/static/images/icon/qingjiaguanli@2x.png",
       label: "閫氱煡鍏憡",
     },
-  ]);
-  // 鍗忓悓鍔炲叕鍔熻兘鏁版嵁inventoryManagement/receiptManagement
-  const inventoryManagement = reactive([
     {
-      icon: "/static/images/icon/rukuguanli@2x.png",
-      label: "鑷畾涔夊叆搴�",
+      icon: "/static/images/icon/qingjiaguanli@2x.png",
+      label: "鐭ヨ瘑搴�",
     },
     {
-      icon: "/static/images/icon/zidingyichuku.png",
-      label: "鑷畾涔夊嚭搴�",
+      icon: "/static/images/icon/qingjiaguanli@2x.png",
+      label: "鐢ㄥ嵃绠$悊",
+    },
+    {
+      icon: "/static/images/icon/qingjiaguanli@2x.png",
+      label: "瑙勭珷鍒跺害",
+    },
+    // {
+    //   icon: "/static/images/icon/xietongshenpi@2x.png",
+    //   label: "鍗忓悓瀹℃壒",
+    // },
+    {
+      icon: "/static/images/icon/kehubaifang@2x.png",
+      label: "瀹㈡埛鎷滆",
     },
   ]);
 
   // 鐢熶骇绠℃帶鍔熻兘鏁版嵁
   const productionItems = reactive([
-    {
-      icon: "/static/images/icon/shengchandingdan@2x.png",
-      label: "鐢熶骇璁㈠崟",
-      bgColor: "#FF9800",
-    },
-    {
-      icon: "/static/images/icon/shengchanpaigong@2x.png",
-      label: "鐢熶骇娲惧伐",
-      bgColor: "#FF6B35",
-    },
-    {
-      icon: "/static/images/icon/shengchanpaichan@2x.png",
-      label: "宸ュ簭鎺掍骇",
-      bgColor: "#E91E63",
-    },
+    // {
+    //   icon: "/static/images/icon/shengchandingdan@2x.png",
+    //   label: "鐢熶骇璁㈠崟",
+    //   bgColor: "#FF9800",
+    // },
+    // {
+    //   icon: "/static/images/icon/shengchanpaigong@2x.png",
+    //   label: "鐢熶骇娲惧伐",
+    //   bgColor: "#FF6B35",
+    // },
+    // {
+    //   icon: "/static/images/icon/shengchanpaichan@2x.png",
+    //   label: "宸ュ簭鎺掍骇",
+    //   bgColor: "#E91E63",
+    // },
     {
       icon: "/static/images/icon/shengchanbaogong@2x.png",
       label: "鐢熶骇鎶ュ伐",
       bgColor: "#673AB7",
     },
-    {
-      icon: "/static/images/icon/shengchanhesuan@2x.png",
-      label: "鐢熶骇鏍哥畻",
-      bgColor: "#3F51B5",
-    },
+    // {
+    //   icon: "/static/images/icon/shengchanhesuan@2x.png",
+    //   label: "鐢熶骇鏍哥畻",
+    //   bgColor: "#3F51B5",
+    // },
   ]);
 
   // 璁惧绠$悊鍔熻兘鏁版嵁
   const equipmentItems = reactive([
-    {
-      icon: "/static/images/icon/shebeitaizhang@2x.png",
-      label: "璁惧鍙拌处",
-    },
+    // {
+    // 	icon: '/static/images/icon/shebeitaizhang@2x.png',
+    // 	label: '璁惧鍙拌处',
+    // },
     {
       icon: "/static/images/icon/shbeibaoxiu@2x.png",
       label: "璁惧鎶ヤ慨",
@@ -374,26 +419,26 @@
       icon: "/static/images/icon/xunjianshangchuan@2x.png",
       label: "宸℃涓婁紶",
     },
-    // {
-    // 	icon: '/static/images/icon/guzhangfenxi@2x.png',
-    // 	label: '鍒嗘瀽杩芥函',
-    // 	bgColor: '#ff9800'
-    // },
-    // {
-    // 	icon: '/static/images/icon/zhinengpaidan@2x.png',
-    // 	label: '鏅鸿兘娲惧崟',
-    // 	bgColor: '#ff6b35'
-    // },
-    // {
-    // 	icon: '/static/images/icon/zuoyezhidao@2x.png',
-    // 	label: '浣滀笟鎸囧',
-    // 	bgColor: '#4caf50'
-    // },
-    // {
-    // 	icon: '/static/images/icon/jieguoyanzheng@2x.png',
-    // 	label: '缁撴灉楠岃瘉',
-    // 	bgColor: '#9c27b0'
-    // }
+    {
+      icon: "/static/images/icon/guzhangfenxi@2x.png",
+      label: "鍒嗘瀽杩芥函",
+      bgColor: "#ff9800",
+    },
+    {
+      icon: "/static/images/icon/zhinengpaidan@2x.png",
+      label: "鏅鸿兘娲惧崟",
+      bgColor: "#ff6b35",
+    },
+    {
+      icon: "/static/images/icon/zuoyezhidao@2x.png",
+      label: "浣滀笟鎸囧",
+      bgColor: "#4caf50",
+    },
+    {
+      icon: "/static/images/icon/jieguoyanzheng@2x.png",
+      label: "缁撴灉楠岃瘉",
+      bgColor: "#9c27b0",
+    },
   ]);
 
   // 澶勭悊甯哥敤鍔熻兘鐐瑰嚮
@@ -480,6 +525,21 @@
           url: "/pages/cooperativeOffice/collaborativeApproval/index4",
         });
         break;
+      case "鑰冨嫟绠$悊":
+        uni.navigateTo({
+          url: "/pages/indexItem?label=鑰冨嫟绠$悊",
+        });
+        break;
+      case "璐㈠姟绠$悊":
+        uni.navigateTo({
+          url: "/pages/indexItem?label=璐㈠姟绠$悊",
+        });
+        break;
+      case "浼氳绠$悊":
+        uni.navigateTo({
+          url: "/pages/indexItem?label=浼氳绠$悊",
+        });
+        break;
       case "閲囪喘绠$悊":
         uni.navigateTo({
           url: "/pages/cooperativeOffice/collaborativeApproval/index5",
@@ -495,6 +555,62 @@
           url: "/pages/cooperativeOffice/collaborativeApproval/index7",
         });
         break;
+      case "浼氳璁剧疆":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetingSettings/index",
+        });
+        break;
+      case "浼氳鍒楄〃":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetingList/index",
+        });
+        break;
+      case "浼氳鐢宠":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetApplication/index",
+        });
+        break;
+      case "浼氳瀹℃壒":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetExamine/index",
+        });
+        break;
+      case "浼氳鍙戝竷":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetPublish/index",
+        });
+        break;
+      case "浼氳鎬荤粨":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetSummary/index",
+        });
+        break;
+      case "浼氳鐪嬫澘":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/meetingBoard/index",
+        });
+        break;
+      case "閫氱煡鍏憡":
+        uni.navigateTo({
+          url: "/pages/cooperativeOffice/noticeManagement/index",
+        });
+        break;
+      case "鐭ヨ瘑搴�":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/knowledgeBase/index",
+        });
+        break;
+      case "鐢ㄥ嵃绠$悊":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/sealManagement/index",
+        });
+        break;
+      case "瑙勭珷鍒跺害":
+        uni.navigateTo({
+          url: "/pages/managementMeetings/rulesRegulationsManagement/index",
+        });
+        break;
+
       case "鍗忓悓瀹℃壒":
         uni.navigateTo({
           url: "/pages/cooperativeOffice/collaborativeApproval/index",
@@ -503,21 +619,6 @@
       case "瀹㈡埛鎷滆":
         uni.navigateTo({
           url: "/pages/cooperativeOffice/clientVisit/index",
-        });
-        break;
-      case "閫氱煡鍏憡":
-        uni.navigateTo({
-          url: "/pages/cooperativeOffice/noticeManagement/index",
-        });
-        break;
-      case "鑷畾涔夊叆搴�":
-        uni.navigateTo({
-          url: "/pages/inventoryManagement/receiptManagement/index",
-        });
-        break;
-      case "鑷畾涔夊嚭搴�":
-        uni.navigateTo({
-          url: "/pages/inventoryManagement/issueManagement/index",
         });
         break;
       case "鐢熶骇璁㈠崟":
@@ -532,18 +633,15 @@
         break;
       case "宸ュ簭鎺掍骇":
         uni.navigateTo({
-          url: "/pages/productionManagement/operationScheduling/index",
+          url: "/pages/productionManagement/processScheduling/index",
         });
         break;
       case "鐢熶骇鎶ュ伐":
         getcode();
-        // uni.navigateTo({
-        // 	url: '/pages/productionManagement/productionReporting/index'
-        // });
         break;
       case "鐢熶骇鏍哥畻":
         uni.navigateTo({
-          url: "/pages/productionManagement/productionCosting/index",
+          url: "/pages/productionManagement/productionAccounting/index",
         });
         break;
       case "璁惧鍙拌处":
@@ -593,53 +691,12 @@
         });
     }
   };
-  const getcode = () => {
-    uni.scanCode({
-      success: res => {
-        // 瑙f瀽浜岀淮鐮佸唴瀹�
-        const scanResult = res.result;
-        let orderRow = "";
 
-        // 灏濊瘯浠庢壂鐮佺粨鏋滀腑鎻愬彇orderRow鍙傛暟
-        try {
-          // 澶勭悊娣峰悎鏍煎紡: http://...?orderRow={...}
-          const orderRowStart = scanResult.indexOf("orderRow={");
-          // 鎻愬彇浠巓rderRow={寮�濮嬬殑JSON鍐呭
-          const jsonPart = scanResult.substring(orderRowStart + 9); // 9鏄�"orderRow=".length
-          // 灏濊瘯鐩存帴浣跨敤杩欎釜JSON閮ㄥ垎
-          orderRow = jsonPart;
-        } catch (e) {
-          orderRow = "";
-        }
-        try {
-          JSON.parse(orderRow);
-        } catch (error) {
-          modal.msgError("璁㈠崟瑙f瀽澶辫触");
-          return;
-        }
-        // 鎵爜鎴愬姛鍚庤烦杞埌鐢熶骇鎶ュ伐椤甸潰锛屽苟浼犻�抩rderRow鍙傛暟
-        uni.navigateTo({
-          url: `/pages/productionManagement/productionReporting/index?orderRow=${orderRow}`,
-        });
-      },
-      fail: err => {
-        uni.showToast({
-          title: "鎵爜澶辫触",
-          icon: "none",
-        });
-        // uni.navigateTo({
-        //   url: `/pages/productionManagement/productionReporting/index`,
-        // });
-      },
-    });
-  };
   // 鍒涘缓瀵瑰瓙缁勪欢鐨勫紩鐢�
   const uToastRef = ref(null);
 
   function getUserLoginFacotryList() {
-    userLoginFacotryList({
-      userName: userStore.nickName,
-    })
+    userLoginFacotryList({ userName: userStore.nickName })
       .then(res => {
         // 妫�鏌es.data鏄惁涓烘暟缁�
         factoryList.value[0] = [];
@@ -659,6 +716,92 @@
         factoryList.value = [];
       });
   }
+  const getcode = () => {
+    uni.scanCode({
+      success: async res => {
+        // 瑙f瀽浜岀淮鐮佸唴瀹�
+        const scanResult = res.result;
+        let orderRow = "";
+
+        // 鍒ゆ柇鎵弿缁撴灉鏄惁涓虹函鏁板瓧锛坕d锛�
+        const isNumericId = /^\d+$/.test(scanResult.trim());
+
+        if (isNumericId) {
+          // 濡傛灉鏄函鏁板瓧锛屾牴鎹� id 鑾峰彇宸ュ崟鏁版嵁
+          const workOrderId = scanResult.trim();
+          modal.loading("姝e湪鑾峰彇宸ュ崟淇℃伅...");
+          try {
+            const workRes = await getProductWorkOrderById({ id: workOrderId });
+            modal.closeLoading();
+
+            console.log("宸ュ崟鏌ヨ缁撴灉:", workRes);
+
+            if (workRes.code === 200 && workRes.data) {
+              // 鏂版帴鍙h繑鍥炵殑鏄崟涓璞★紝涓嶆槸鏁扮粍
+              const workData = workRes.data;
+              console.log("宸ュ崟鏁版嵁:", workData);
+
+              orderRow = JSON.stringify({
+                id: workData.id || workOrderId,
+                planQuantity: workData.planQuantity - workData.completeQuantity,
+                productProcessRouteItemId:
+                  workData.productProcessRouteItemId ||
+                  workData.浜у搧宸ヨ壓璺嚎椤笽D ||
+                  "",
+              });
+
+              console.log("鏋勯�犵殑orderRow:", orderRow);
+            } else {
+              modal.msgError("鏈壘鍒板搴旂殑宸ュ崟淇℃伅");
+              return;
+            }
+          } catch (error) {
+            modal.closeLoading();
+            console.error("鑾峰彇宸ュ崟淇℃伅澶辫触:", error);
+            modal.msgError("鑾峰彇宸ュ崟淇℃伅澶辫触: " + (error.message || "鏈煡閿欒"));
+            return;
+          }
+        } else {
+          // 濡傛灉涓嶆槸绾暟瀛楋紝灏濊瘯浠庢壂鐮佺粨鏋滀腑鎻愬彇orderRow鍙傛暟
+          try {
+            // 澶勭悊娣峰悎鏍煎紡: http://...?orderRow={...}
+            const orderRowStart = scanResult.indexOf("orderRow={");
+            if (orderRowStart !== -1) {
+              // 鎻愬彇浠巓rderRow={寮�濮嬬殑JSON鍐呭
+              const jsonPart = scanResult.substring(orderRowStart + 9); // 9鏄�"orderRow=".length
+              orderRow = jsonPart;
+            } else {
+              // 濡傛灉鐩存帴鏄疛SON瀛楃涓诧紝灏濊瘯瑙f瀽
+              orderRow = scanResult;
+            }
+          } catch (e) {
+            console.error(e, "瑙f瀽澶辫触====????=====");
+            orderRow = "";
+          }
+
+          // 楠岃瘉鏄惁涓烘湁鏁堢殑JSON
+          try {
+            JSON.parse(orderRow);
+          } catch (error) {
+            modal.msgError("璁㈠崟瑙f瀽澶辫触锛岃妫�鏌ヤ簩缁寸爜鏍煎紡");
+            return;
+          }
+        }
+
+        console.log(orderRow, "orderRow======@@@@@@@@");
+        // 鎵爜鎴愬姛鍚庤烦杞埌鐢熶骇鎶ュ伐椤甸潰锛屽苟浼犻�抩rderRow鍙傛暟
+        uni.navigateTo({
+          url: `/pages/productionManagement/productionReport/index?orderRow=${orderRow}`,
+        });
+      },
+      fail: err => {
+        uni.showToast({
+          title: "鎵爜澶辫触",
+          icon: "none",
+        });
+      },
+    });
+  };
   const changeFactory = async arr => {
     show.value = false;
     const factoryId = factoryListTem.value[arr.indexs[0]].deptId;
@@ -680,7 +823,6 @@
         modal.closeLoading();
       });
   };
-
   function loginSuccess(result) {
     uni.reLaunch({
       url: "/pages/index",
@@ -693,68 +835,6 @@
       uToastRef.value.success(`鐐瑰嚮浜嗙${name + 1}涓猔); // 娉ㄦ剰锛氳繖閲屽姞1鏄洜涓洪�氬父鎴戜滑鏄粠绗�1涓紑濮嬭鏁扮殑
     }
   };
-  const isShowNoticesList = ref(true);
-  // 鑾峰彇鍏憡鏁伴噺
-  const getNoticesList = () => {
-    if (!isShowNoticesList.value) {
-      return;
-    }
-    const current_date = dayjs().format("YYYY-MM-DD");
-    noticesList({
-      current: -1,
-      size: -1,
-      status: 1,
-      current_date,
-    })
-      .then(resp => {
-        console.log("noticesList", resp);
-        if (
-          resp.code != 200 ||
-          !resp.data ||
-          !resp.data.records ||
-          !resp.data.records.length
-        ) {
-          return;
-        }
-        const res = uni.getAppAuthorizeSetting();
-        if (res.notificationAuthorized == "denied") {
-          uni.showModal({
-            title: "鎻愮ず",
-            content: "璇峰湪璁剧疆涓紑鍚�氱煡鏉冮檺",
-            success: res => {
-              if (res.confirm) {
-                uni.openAppAuthorizeSetting({
-                  success: res => {},
-                });
-              } else {
-                isShowNoticesList.value = false;
-              }
-            },
-          });
-          return;
-        }
-        resp.data.records.map(item => {
-          createPushMessage(item.title);
-        });
-      })
-      .catch(error => {
-        // modal.msgError("鑾峰彇鍏憡鏁伴噺:", error);
-      });
-  };
-
-  const createPushMessage = text => {
-    uni.createPushMessage({
-      title: "鍏憡閫氱煡",
-      content: text || "",
-      success: resp => {
-        console.log("success", resp);
-        isShowNoticesList.value = false;
-      },
-      fail: resp => {
-        console.log("fail", resp);
-      },
-    });
-  };
 
   onMounted(() => {
     // 璁剧疆鐢ㄦ埛淇℃伅
@@ -763,10 +843,8 @@
     // 鍚姩閫氱煡鐘舵�佸畾鏃跺櫒
     startStatusTimer();
   });
-  onShow(() => {
-    getNoticesList();
-  });
 </script>
+
 
 <style scoped lang="scss">
   .content {
@@ -916,12 +994,10 @@
     letter-spacing: 0.03125rem;
     text-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.5);
   }
-
   .hero-subtitle {
     font-size: 0.8125rem;
     margin-top: 0.375rem;
   }
-
   .hero-wave {
     height: 2.75rem;
   }
@@ -1002,7 +1078,6 @@
     0% {
       transform: translateX(-100%) translateY(-100%) rotate(45deg);
     }
-
     100% {
       transform: translateX(100%) translateY(100%) rotate(45deg);
     }
@@ -1013,7 +1088,6 @@
       opacity: 0;
       transform: translateY(-1.25rem);
     }
-
     to {
       opacity: 1;
       transform: translateY(0);
@@ -1025,7 +1099,6 @@
       opacity: 0;
       transform: translateY(1.25rem);
     }
-
     to {
       opacity: 1;
       transform: translateY(0);
@@ -1037,7 +1110,6 @@
       opacity: 0;
       transform: translateY(0.5rem) scale(0.96);
     }
-
     100% {
       opacity: 1;
       transform: translateY(0) scale(1);
@@ -1097,9 +1169,10 @@
   }
 
   .notice-unit {
-    color: #666666;
-    font-size: 0.875rem;
-    margin-left: 0.125rem;
+    font-weight: 600;
+    font-size: 1rem;
+    color: #1976d2;
+    margin-left: 0.25rem;
   }
 
   /* 鍔熻兘妯″潡鏍峰紡 */
@@ -1273,20 +1346,16 @@
     .content {
       background: linear-gradient(135deg, #121317 0%, #161a20 100%);
     }
-
     .content::before {
       background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="dots" width="20" height="20" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="rgba(255, 255, 255, 0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23dots)"/></svg>');
     }
-
     .common-module {
       background: linear-gradient(135deg, #1e1f24 0%, #23252b 100%);
       box-shadow: 0 0.375rem 1.5rem rgba(0, 0, 0, 0.35);
     }
-
     .module-title {
       color: #e9edf3;
     }
-
     .module-subtitle,
     .item-label,
     .notice-text,
@@ -1294,18 +1363,15 @@
     .notice-label {
       color: #c7cbd3;
     }
-
     .notice {
       background: linear-gradient(135deg, #1b2330 0%, #1a2432 100%);
       border-color: rgba(255, 255, 255, 0.06);
       box-shadow: 0 0.375rem 1.25rem rgba(0, 0, 0, 0.4);
     }
-
     .notice-status,
     .notice-number {
       color: #8ab4ff;
     }
-
     .bg-img {
       background: linear-gradient(135deg, #1f4fb9 0%, #0e3a8a 100%);
     }
@@ -1315,7 +1381,6 @@
     from {
       transform: rotate(0deg);
     }
-
     to {
       transform: rotate(360deg);
     }
@@ -1326,7 +1391,6 @@
       opacity: 0;
       transform: translateY(-1.25rem);
     }
-
     to {
       opacity: 1;
       transform: translateY(0);
@@ -1338,7 +1402,6 @@
       opacity: 0;
       transform: translateY(1.25rem);
     }
-
     to {
       opacity: 1;
       transform: translateY(0);
@@ -1350,7 +1413,6 @@
       opacity: 0;
       transform: translateY(0.5rem) scale(0.96);
     }
-
     100% {
       opacity: 1;
       transform: translateY(0) scale(1);
@@ -1360,31 +1422,25 @@
   .notice-left {
     margin-right: 1rem;
   }
-
   .notice-status {
     font-size: 1rem;
   }
-
   .notice-separator {
     width: 0.0625rem;
     height: 1.5rem;
     margin-right: 1rem;
   }
-
   .notice-label {
     font-size: 0.875rem;
     margin-right: 0.75rem;
   }
-
   .notice-text {
     font-size: 0.875rem;
   }
-
   .notice-number {
     font-size: 1rem;
     margin-left: 0.25rem;
   }
-
   .notice-unit {
     font-size: 0.875rem;
     margin-left: 0.125rem;
@@ -1500,7 +1556,6 @@
     margin-top: 0.25rem;
     margin-bottom: 0.625rem;
   }
-
   .grid-text {
     font-size: 0.875rem;
   }
@@ -1509,7 +1564,6 @@
     .common-module {
       box-shadow: 0 0.375rem 1.5rem rgba(0, 0, 0, 0.35);
     }
-
     .notice {
       box-shadow: 0 0.375rem 1.25rem rgba(0, 0, 0, 0.4);
     }

--
Gitblit v1.9.3