From 03a05815d7ea5612206b6cfe5d6537b4d4cedc0a Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 15 九月 2026 11:41:32 +0800
Subject: [PATCH] 天津潜宇塑胶app 1.添加采购需求、库存盘点、计件单价配置、产量统计、材料消耗核算、成本核算分析页面

---
 src/pages/works.vue |  137 ++++++++++++++++++++++++++++++++++-----------
 1 files changed, 103 insertions(+), 34 deletions(-)

diff --git a/src/pages/works.vue b/src/pages/works.vue
index 65fd28a..60e1a9a 100644
--- a/src/pages/works.vue
+++ b/src/pages/works.vue
@@ -1,28 +1,5 @@
 <template>
   <view class="content">
-    <!-- OA鍔炲叕妯″潡 -->
-    <view class="common-module oa-module"
-          v-if="hasOaItems">
-      <view class="module-header">
-        <view class="module-title-container">
-          <text class="module-title">OA鍔炲叕</text>
-        </view>
-      </view>
-      <view class="module-content">
-        <up-grid :border="false"
-                 col="4">
-          <up-grid-item v-for="(item, index) in oaItems"
-                        :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="hasCollaborationItems">
@@ -331,7 +308,6 @@
   import { userLoginFacotryList } from "@/api/login";
   import { getProductWorkOrderById } from "@/api/productionManagement/productionReporting";
   import DownloadProgressMask from "@/components/DownloadProgressMask.vue";
-  import { OA_WORKBENCH_ITEMS } from "@/config/oaWorkbench.js";
   import modal from "@/plugins/modal";
   import useUserStore from "@/store/modules/user";
 
@@ -415,6 +391,10 @@
       icon: "/static/images/icon/gongyingshangdangan.svg",
       label: "渚涘簲鍟嗘。妗�",
     },
+    {
+      icon: "/static/images/icon/caigouguanli.svg",
+      label: "閲囪喘闇�姹�",
+    },
   ]);
 
   // 璐㈠姟绠$悊鍔熻兘鏁版嵁
@@ -495,6 +475,10 @@
       icon: "/static/images/icon/kucunguanli.svg",
       label: "搴撳瓨绠$悊",
     },
+    {
+      icon: "/static/images/icon/kucunguanli.svg",
+      label: "搴撳瓨鐩樼偣",
+    },
   ]);
 
   const humanResourcesItems = reactive([
@@ -509,6 +493,21 @@
     {
       icon: "/static/images/icon/hetongguanli.svg",
       label: "鍚堝悓绠$悊",
+    },
+    {
+      icon: "/static/images/icon/hetongguanli.svg",
+      label: "杞鐢宠",
+      path: "/pages/oa/HrManage/regular-apply/index",
+    },
+    {
+      icon: "/static/images/icon/renyuanxinzi.svg",
+      label: "璋冨姩鐢宠",
+      path: "/pages/oa/HrManage/transfer-apply/index",
+    },
+    {
+      icon: "/static/images/icon/gongchuguanli.svg",
+      label: "宸ヤ綔浜ゆ帴",
+      path: "/pages/oa/HrManage/work-handover/index",
     },
   ]);
   const qualityItems = reactive([
@@ -559,17 +558,22 @@
       label: "瀹夊叏鍩硅鑰冩牳",
     },
   ]);
-  // OA鍔炲叕鍔熻兘鏁版嵁锛堢函鍓嶇閰嶇疆锛屼笉鍙備笌鍚庣鏉冮檺杩囨护锛�
-  const oaItems = reactive(
-    OA_WORKBENCH_ITEMS.map(item => ({ ...item }))
-  );
-
   // 鍗忓悓鍔炲叕鍔熻兘鏁版嵁
   const collaborationItems = reactive([
-    {
-      icon: "/static/images/icon/xietongshenpi.svg",
-      label: "鍗忓悓瀹℃壒",
-    },
+    // {
+    //   icon: "/static/images/icon/xietongshenpi.svg",
+    //   label: "鍗忓悓瀹℃壒",
+    // },
+		{
+			icon: "/static/images/icon/guizhangzhidu.svg",
+			label: "瀹℃壒绠$悊",
+			path: "/pages/oa/ApproveManage/approve-template/index",
+		},
+		{
+			icon: "/static/images/icon/xietongshenpi.svg",
+			label: "鍗忓悓瀹℃壒",
+			path: "/pages/oa/ApproveManage/approve-list/index",
+		},
     {
       icon: "/static/images/icon/huiyiguanli.svg",
       label: "浼氳绠$悊",
@@ -593,6 +597,26 @@
     {
       icon: "/static/images/icon/kehubaifang.svg",
       label: "瀹㈡埛鎷滆",
+    },
+    {
+      icon: "/static/images/icon/qingjiaguanli.svg",
+      label: "璇峰亣鐢宠",
+      path: "/pages/oa/AttendManage/leave-apply/index",
+    },
+    {
+      icon: "/static/images/icon/dakaqiandao.svg",
+      label: "鍔犵彮鐢宠",
+      path: "/pages/oa/AttendManage/overtime-apply/index",
+    },
+    {
+      icon: "/static/images/icon/chuchaiguanli.svg",
+      label: "宸梾鎶ラ攢",
+      path: "/pages/oa/ReimburseManage/travel-reimburse/index",
+    },
+    {
+      icon: "/static/images/icon/baoxiaoguanli.svg",
+      label: "璐圭敤鎶ラ攢",
+      path: "/pages/oa/ReimburseManage/cost-reimburse/index",
     },
   ]);
 
@@ -630,6 +654,22 @@
     {
       icon: "/static/images/icon/shengchanhesuan.svg",
       label: "鐢熶骇鏍哥畻",
+    },
+    {
+      icon: "/static/images/icon/shengchanbaogong.svg",
+      label: "璁′欢鍗曚环閰嶇疆",
+    },
+    {
+      icon: "/static/images/icon/shengchanshikuang.svg",
+      label: "浜ч噺缁熻",
+    },
+    {
+      icon: "/static/images/icon/shengchanhesuan.svg",
+      label: "鏉愭枡娑堣�楁牳绠�",
+    },
+    {
+      icon: "/static/images/icon/shengchanshikuang.svg",
+      label: "鎴愭湰鏍哥畻鍒嗘瀽",
     },
   ]);
 
@@ -758,6 +798,11 @@
       case "渚涘簲鍟嗘。妗�":
         uni.navigateTo({
           url: "/pages/basicData/supplierManage/index",
+        });
+        break;
+      case "閲囪喘闇�姹�":
+        uni.navigateTo({
+          url: "/pages/procurementManagement/procurementDemand/index",
         });
         break;
       case "鍏嚭绠$悊":
@@ -908,6 +953,26 @@
           url: "/pages/productionManagement/productionAccounting/index",
         });
         break;
+      case "璁′欢鍗曚环閰嶇疆":
+        uni.navigateTo({
+          url: "/pages/productionManagement/pieceRateConfig/index",
+        });
+        break;
+      case "浜ч噺缁熻":
+        uni.navigateTo({
+          url: "/pages/productionManagement/outputStatistics/index",
+        });
+        break;
+      case "鏉愭枡娑堣�楁牳绠�":
+        uni.navigateTo({
+          url: "/pages/productionManagement/materialConsumption/index",
+        });
+        break;
+      case "鎴愭湰鏍哥畻鍒嗘瀽":
+        uni.navigateTo({
+          url: "/pages/productionManagement/costAccounting/index",
+        });
+        break;
       case "鐢熶骇杩芥函":
         uni.navigateTo({
           url: "/pages/productionManagement/productionTraceability/index",
@@ -1036,6 +1101,11 @@
       case "搴撳瓨绠$悊":
         uni.navigateTo({
           url: "/pages/inventoryManagement/stockManagement/index",
+        });
+        break;
+      case "搴撳瓨鐩樼偣":
+        uni.navigateTo({
+          url: "/pages/inventoryManagement/stockCheck/index",
         });
         break;
       case "鍙嶉鐧昏":
@@ -1303,7 +1373,6 @@
   const hasAfterSalesServiceItems = computed(
     () => afterSalesServiceItems.length > 0
   );
-  const hasOaItems = computed(() => oaItems.length > 0);
   const hasCollaborationItems = computed(() => collaborationItems.length > 0);
   const hasSafetyItems = computed(() => safetyItems.length > 0);
   const hasQualityItems = computed(() => qualityItems.length > 0);

--
Gitblit v1.9.3