From bbdd646b82cb8c84079598b7200b1102fd247b28 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 29 十二月 2025 16:08:48 +0800
Subject: [PATCH] 昭德-巡检上传开发调整

---
 src/pages/management/index.vue |  382 +++++++++++++++++++++++++++--------------------------
 1 files changed, 194 insertions(+), 188 deletions(-)

diff --git a/src/pages/management/index.vue b/src/pages/management/index.vue
index 3adfbd2..f08b67c 100644
--- a/src/pages/management/index.vue
+++ b/src/pages/management/index.vue
@@ -22,7 +22,7 @@
     </view>
     
     <!-- 鏍囩椤� -->
-    <view class="tabs-section">
+    <!-- <view class="tabs-section">
       <u-tabs
         :list="tabs"
         :current="activeTabIndex"
@@ -35,7 +35,7 @@
           fontWeight: 'bold'
         }"
       />
-    </view>
+    </view> -->
 
     <!-- 鍒楄〃鍖哄煙 -->
     <scroll-view 
@@ -66,7 +66,7 @@
             
             <view class="item-details">
               <!-- 璁惧鍒楄〃椤甸潰 -->
-              <template v-if="activeTab === 'management'">
+              <!-- <template v-if="activeTab === 'management'"> -->
                 <view class="detail-row">
                   <text class="detail-label">璁惧鍚嶇О</text>
                   <text class="detail-value">{{ item.equipmentName || '-' }}</text>
@@ -95,10 +95,10 @@
                   <text class="detail-label">閲囪喘浠锋牸</text>
                   <text class="detail-value">{{ item.purchasePrice ? `楼${item.purchasePrice}` : '-' }}</text>
                 </view>
-              </template>
+              <!-- </template> -->
               
               <!-- 璁惧棰嗙敤椤甸潰 -->
-              <template v-else-if="activeTab === 'equipmentRequisition'">
+              <!-- <template v-else-if="activeTab === 'equipmentRequisition'">
                 <view class="detail-row">
                   <text class="detail-label">棰嗙敤浜�</text>
                   <text class="detail-value">{{ item.userName || '-' }}</text>
@@ -133,11 +133,11 @@
                   <text class="detail-label">澶囨敞</text>
                   <text class="detail-value">{{ item.remarks }}</text>
                 </view>
-              </template>
+              </template> -->
             </view>
             
             <!-- 鎿嶄綔鎸夐挳 - 鍙湪璁惧棰嗙敤椤甸潰鏄剧ず -->
-            <template v-if="activeTab === 'equipmentRequisition'">
+            <!-- <template v-if="activeTab === 'equipmentRequisition'">
               <up-divider></up-divider>
               <view class="action-buttons">
                 <u-button
@@ -159,7 +159,7 @@
                   褰掕繕
                 </u-button>
               </view>
-            </template>
+            </template> -->
           </view>
         </view>
       </view>
@@ -171,34 +171,34 @@
     </scroll-view>
     
     <!-- 娴姩鎿嶄綔鎸夐挳 - 璁惧棰嗙敤椤甸潰鏄剧ず棰嗙敤鎸夐挳 -->
-    <view 
+    <!-- <view 
       v-if="activeTab === 'equipmentRequisition'" 
       class="fab-button" 
       @tap="handleAdd"
     >
       <up-icon name="plus" size="24" color="#ffffff"></up-icon>
-    </view>
+    </view> -->
     
     <!-- 寮圭獥缁勪欢 -->
-    <managementDialog
+    <!-- <managementDialog
       v-if="activeTab == 'management'"
       v-model:copyForm="copyForm"
       v-model:managementFormDialog="manaDialog"
       :addOrEdit="addOrEdit"
       :form="form"
       @submit="getList"
-    />
-    <EquipmentRequisition
+    /> -->
+    <!-- <EquipmentRequisition
       v-model="equipmentRequisitionDialog"
       :formData="form"
       :maxQuantity="getMaxQuantity()"
       :addOrEdit="addOrEdit"
       :equipmentStatus="form.equipmentStatus"
       @submit="onEquipmentRequisitionSubmit"
-    />
+    /> -->
     
     <!-- 鏌ョ湅璇︽儏寮圭獥 -->
-    <u-popup
+    <!-- <u-popup
       v-model="dialogTableVisible"
       :title="dialogTableTitle"
       mode="center"
@@ -211,7 +211,7 @@
           height="400px"
         />
       </view>
-    </u-popup>
+    </u-popup> -->
   </view>
 </template>
 
@@ -224,14 +224,14 @@
 
 // 缁勪欢瀵煎叆
 import PageHeader from "@/components/PageHeader.vue";
-import managementDialog from "./mould/managementDialog.vue";
-import EquipmentRequisition from "./mould/equipmentRequisitionDialog.vue";
+// import managementDialog from "./mould/managementDialog.vue";
+// import EquipmentRequisition from "./mould/equipmentRequisitionDialog.vue";
 
 // API 鏈嶅姟瀵煎叆
 import {
   getManagementList,
 } from "@/api/equipment/management/index.js";
-import { getUsageRecordList, getUsageDetailList } from "@/api/equipment/requisition/index.js";
+// import { getUsageRecordList, getUsageDetailList } from "@/api/equipment/requisition/index.js";
 
 // 璁惧鐘舵�佹灇涓�
 const EQUIPMENT_STATUS = {
@@ -330,40 +330,46 @@
       { prop: "purchasePrice", label: "閲囪喘浠锋牸", minWidth: 100 },
     ],
   },
-  equipmentRequisition: {
-    label: "璁惧棰嗙敤",
-    searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
-    showSearch: true,
-    api: getUsageRecordList,
-    columns: [
-      { prop: "userName", label: "棰嗙敤浜�", minWidth: 100 },
-      { prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
-      { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
-      { prop: "usageQuantity", label: "棰嗙敤鏁伴噺", minWidth: 100 },
-      {prop: "returnQuantity" , label: "褰掕繕鏁伴噺", minWidth: 100,
-        formatter: (row) => row.returnQuantity || 0
-      },
-      {
-        prop: "equipmentStatus",
-        label: "浣跨敤鐘舵��",
-        minWidth: 100,
-        formatter: (row) => getStatusText(row.equipmentStatus),
-        cellStyle: (row) => ({ color: getStatusColor(row.equipmentStatus) }),
-      },
-      { prop: "usageStartTime", label: "浣跨敤寮�濮嬫椂闂�", minWidth: 100 },
-      { prop: "usageEndTime", label: "浣跨敤缁撴潫鏃堕棿", minWidth: 100 },
-      { prop: "remarks", label: "澶囨敞", minWidth: 100 },
-    ],
-  },
+  // equipmentRequisition: {
+  //   label: "璁惧棰嗙敤",
+  //   searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
+  //   showSearch: true,
+  //   api: getUsageRecordList,
+  //   columns: [
+  //     { prop: "userName", label: "棰嗙敤浜�", minWidth: 100 },
+  //     { prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
+  //     { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
+  //     { prop: "usageQuantity", label: "棰嗙敤鏁伴噺", minWidth: 100 },
+  //     {prop: "returnQuantity" , label: "褰掕繕鏁伴噺", minWidth: 100,
+  //       formatter: (row) => row.returnQuantity || 0
+  //     },
+  //     {
+  //       prop: "equipmentStatus",
+  //       label: "浣跨敤鐘舵��",
+  //       minWidth: 100,
+  //       formatter: (row) => getStatusText(row.equipmentStatus),
+  //       cellStyle: (row) => ({ color: getStatusColor(row.equipmentStatus) }),
+  //     },
+  //     { prop: "usageStartTime", label: "浣跨敤寮�濮嬫椂闂�", minWidth: 100 },
+  //     { prop: "usageEndTime", label: "浣跨敤缁撴潫鏃堕棿", minWidth: 100 },
+  //     { prop: "remarks", label: "澶囨敞", minWidth: 100 },
+  //   ],
+  // },
 };
 
 // 鏍囩椤垫暟鎹� - u-tabs闇�瑕乶ame浣滀负鏄剧ず鏂囨湰
-const tabs = computed(() => 
-  Object.entries(tabsConfig).map(([name, config]) => ({
-    name: config.label,  // 浣跨敤label浣滀负鏄剧ず鏂囨湰
-    value: name,         // 淇濆瓨鍘熷name鍊�
-  }))
-);
+// const tabs = computed(() => 
+//   Object.entries(tabsConfig).map(([name, config]) => ({
+//     name: config.label,  // 浣跨敤label浣滀负鏄剧ず鏂囨湰
+//     value: name,         // 淇濆瓨鍘熷name鍊�
+//   }))
+// );
+const tabs = computed(() => [
+  {
+    name: tabsConfig.management.label,
+    value: 'management'
+  }
+]);
 
 // 褰撳墠鏍囩椤电储寮� - 浣跨敤ref鑰屼笉鏄痗omputed锛岀‘淇濆搷搴斿紡鏇存柊
 const activeTabIndex = ref(0);
@@ -380,68 +386,68 @@
 );
 
 // 鍒ゆ柇鏄惁鏄剧ず褰掕繕鎸夐挳
-const shouldShowReturnButton = (item) => {
-  if (activeTab.value !== 'equipmentRequisition') {
-    return false;
-  }
-  // 濡傛灉璁惧鐘舵�佹槸宸插綊杩橈紝涓嶆樉绀哄綊杩樻寜閽�
-  if (item.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
-    return false;
-  }
-  // 鍏朵粬鐘舵�侀兘鏄剧ず褰掕繕鎸夐挳锛堜娇鐢ㄤ腑銆侀儴鍒嗗綊杩樸�佹垨鑰呮病鏈夌姸鎬侊級
-  return true;
-};
+// const shouldShowReturnButton = (item) => {
+//   if (activeTab.value !== 'equipmentRequisition') {
+//     return false;
+//   }
+//   // 濡傛灉璁惧鐘舵�佹槸宸插綊杩橈紝涓嶆樉绀哄綊杩樻寜閽�
+//   if (item.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
+//     return false;
+//   }
+//   // 鍏朵粬鐘舵�侀兘鏄剧ず褰掕繕鎸夐挳锛堜娇鐢ㄤ腑銆侀儴鍒嗗綊杩樸�佹垨鑰呮病鏈夌姸鎬侊級
+//   return true;
+// };
 
 // 鍔ㄦ�佽幏鍙栬嚜瀹氫箟鎸夐挳閰嶇疆锛堜繚鐣欑敤浜庡叾浠栫敤閫旓級
-const getCustomButtons = () => {
-  const buttons = [];
-  
-  // 鍦ㄨ澶囬鐢ㄩ〉闈㈡坊鍔犲綊杩樻寜閽�
-  if (activeTab.value === 'equipmentRequisition') {
-    buttons.push({
-      name: 'return',
-      label: '褰掕繕',
-      type: 'success',
-      size: 'small',
-      link: true,
-      show: (row) => shouldShowReturnButton(row),
-      disabled: (row) => row.equipmentStatus === EQUIPMENT_STATUS.RETURNED,
-    });
-  }
-  
-  return buttons;
-};
+// const getCustomButtons = () => {
+//   const buttons = [];
+//   
+//   // 鍦ㄨ澶囬鐢ㄩ〉闈㈡坊鍔犲綊杩樻寜閽�
+//   if (activeTab.value === 'equipmentRequisition') {
+//     buttons.push({
+//       name: 'return',
+//       label: '褰掕繕',
+//       type: 'success',
+//       size: 'small',
+//       link: true,
+//       show: (row) => shouldShowReturnButton(row),
+//       disabled: (row) => row.equipmentStatus === EQUIPMENT_STATUS.RETURNED,
+//     });
+//   }
+//   
+//   return buttons;
+// };
 
 // 澶勭悊鑷畾涔夋寜閽偣鍑讳簨浠�
-const handleCustomButtonClick = ({ buttonName, row }) => {
-  switch (buttonName) {
-    case 'return':
-      handleReturn(row);
-      break;
-    // 鍙互鍦ㄨ繖閲屾坊鍔犳洿澶氳嚜瀹氫箟鎸夐挳鐨勫鐞嗛�昏緫
-    default:
-      console.warn(`鏈鐞嗙殑鑷畾涔夋寜閽�: ${buttonName}`);
-  }
-};
-const handleReturn = (row) => {
-  // 妫�鏌ヨ澶囩姸鎬�
-  if (row.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
-    showToast('璇ヨ澶囧凡褰掕繕瀹屾垚锛屾棤闇�鍐嶆褰掕繕', 'warning');
-    return;
-  }
-  
-  if (row.equipmentStatus !== EQUIPMENT_STATUS.USING && row.equipmentStatus !== EQUIPMENT_STATUS.PARTIAL_RETURN) {
-    showToast('璇ヨ澶囧綋鍓嶇姸鎬佷笉鏀寔褰掕繕鎿嶄綔', 'warning');
-    return;
-  }
-  
-  form.value = { ...row };
-  addOrEdit.value = "return"; // 璁剧疆涓哄綊杩樻ā寮�
-  title.value = `褰掕繕璁惧 - ${row.equipmentName || ''}`;
-  copyForm.value = { ...row };
-  equipmentRequisitionDialog.value = true;
-  console.log("褰掕繕璁惧锛�", row);
-};
+// const handleCustomButtonClick = ({ buttonName, row }) => {
+//   switch (buttonName) {
+//     case 'return':
+//       handleReturn(row);
+//       break;
+//     // 鍙互鍦ㄨ繖閲屾坊鍔犳洿澶氳嚜瀹氫箟鎸夐挳鐨勫鐞嗛�昏緫
+//     default:
+//       console.warn(`鏈鐞嗙殑鑷畾涔夋寜閽�: ${buttonName}`);
+//   }
+// };
+// const handleReturn = (row) => {
+//   // 妫�鏌ヨ澶囩姸鎬�
+//   if (row.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
+//     showToast('璇ヨ澶囧凡褰掕繕瀹屾垚锛屾棤闇�鍐嶆褰掕繕', 'warning');
+//     return;
+//   }
+//   
+//   if (row.equipmentStatus !== EQUIPMENT_STATUS.USING && row.equipmentStatus !== EQUIPMENT_STATUS.PARTIAL_RETURN) {
+//     showToast('璇ヨ澶囧綋鍓嶇姸鎬佷笉鏀寔褰掕繕鎿嶄綔', 'warning');
+//     return;
+//   }
+//   
+//   form.value = { ...row };
+//   addOrEdit.value = "return"; // 璁剧疆涓哄綊杩樻ā寮�
+//   title.value = `褰掕繕璁惧 - ${row.equipmentName || ''}`;
+//   copyForm.value = { ...row };
+//   equipmentRequisitionDialog.value = true;
+//   console.log("褰掕繕璁惧锛�", row);
+// };
 // 鏍囩椤靛垏鎹㈠鐞� - u-tabs鐨凘change浜嬩欢浼犻�掔殑鏄璞� { index: number }
 const handleTabChange = (e) => {
   const index = typeof e === 'object' && e.index !== undefined ? e.index : e;
@@ -482,63 +488,63 @@
 };
 
 // 澶勭悊鏂板棰嗙敤
-const handleAdd = () => {
-  console.log('handleAdd 琚皟鐢�', 'activeTab:', activeTab.value, 'activeTabIndex:', activeTabIndex.value);
-  addOrEdit.value = "add";
-  form.value = {};
-  title.value = `鏂板${currentTabConfig.value?.label || '璁惧棰嗙敤'}`;
-  copyForm.value = {};
-  console.log('鍑嗗鎵撳紑寮圭獥锛宔quipmentRequisitionDialog褰撳墠鍊�:', equipmentRequisitionDialog.value);
-  equipmentRequisitionDialog.value = true;
-  console.log('寮圭獥宸叉墦寮�锛宔quipmentRequisitionDialog鏂板��:', equipmentRequisitionDialog.value);
-};
+// const handleAdd = () => {
+//   console.log('handleAdd 琚皟鐢�', 'activeTab:', activeTab.value, 'activeTabIndex:', activeTabIndex.value);
+//   addOrEdit.value = "add";
+//   form.value = {};
+//   title.value = `鏂板${currentTabConfig.value?.label || '璁惧棰嗙敤'}`;
+//   copyForm.value = {};
+//   console.log('鍑嗗鎵撳紑寮圭獥锛宔quipmentRequisitionDialog褰撳墠鍊�:', equipmentRequisitionDialog.value);
+//   equipmentRequisitionDialog.value = true;
+//   console.log('寮圭獥宸叉墦寮�锛宔quipmentRequisitionDialog鏂板��:', equipmentRequisitionDialog.value);
+// };
 
-const handleView = async (row) => {
-  // 鍙鐞嗚澶囬鐢ㄩ〉闈㈢殑鏌ョ湅鍔熻兘
-  if (activeTab.value === 'equipmentRequisition') {
-    try {
-      dialogTableTitle.value = `${row.equipmentName || '璁惧'} - 鎿嶄綔璁板綍璇︽儏`;
-      
-      // 鏄剧ず鍔犺浇鐘舵��
-      dialogTableVisible.value = true;
-      dialogTableData.value = [];
-      
-      // 璋冪敤璇︽儏鎺ュ彛鑾峰彇鏁版嵁
-      const { data, code } = await getUsageDetailList(row.id);
-      if (code === 200 && data) {
-        // 澶勭悊鏁扮粍鏁版嵁锛岀洿鎺ユ樉绀烘搷浣滆褰曞垪琛�
-        if (Array.isArray(data)) {
-          dialogTableData.value = data;
-          dialogTableColumns.value = [
-            { prop: 'equipmentNo', label: '璁惧缂栧彿', minWidth: 100 },
-            { prop: 'equipmentName', label: '璁惧鍚嶇О', minWidth: 120 },
-            { prop: 'specification', label: '瑙勬牸鍨嬪彿', minWidth: 100 },
-            { 
-              prop: 'operationType', 
-              label: '鎿嶄綔绫诲瀷', 
-              minWidth: 80,
-              formatter: (row) => row.operationType === 1 ? '棰嗙敤' : '褰掕繕'
-            },
-            { prop: 'quantity', label: '鎿嶄綔鏁伴噺', minWidth: 80 },
-            { prop: 'operator', label: '鎿嶄綔浜�', minWidth: 80 },
-            { prop: 'remark', label: '澶囨敞', minWidth: 150, showOverflowTooltip: true },
-            { prop: 'createTime', label: '鎿嶄綔鏃堕棿', minWidth: 150 }
-          ];
-        } else {
-          showToast('鏆傛棤鎿嶄綔璁板綍', 'warning');
-        }
-      } else {
-        showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
-        dialogTableVisible.value = false;
-      }
-      
-    } catch (error) {
-      console.error('鑾峰彇璇︽儏澶辫触:', error);
-      showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
-      dialogTableVisible.value = false;
-    }
-  }
-};
+// const handleView = async (row) => {
+//   // 鍙鐞嗚澶囬鐢ㄩ〉闈㈢殑鏌ョ湅鍔熻兘
+//   if (activeTab.value === 'equipmentRequisition') {
+//     try {
+//       dialogTableTitle.value = `${row.equipmentName || '璁惧'} - 鎿嶄綔璁板綍璇︽儏`;
+//       
+//       // 鏄剧ず鍔犺浇鐘舵��
+//       dialogTableVisible.value = true;
+//       dialogTableData.value = [];
+//       
+//       // 璋冪敤璇︽儏鎺ュ彛鑾峰彇鏁版嵁
+//       const { data, code } = await getUsageDetailList(row.id);
+//       if (code === 200 && data) {
+//         // 澶勭悊鏁扮粍鏁版嵁锛岀洿鎺ユ樉绀烘搷浣滆褰曞垪琛�
+//         if (Array.isArray(data)) {
+//           dialogTableData.value = data;
+//           dialogTableColumns.value = [
+//             { prop: 'equipmentNo', label: '璁惧缂栧彿', minWidth: 100 },
+//             { prop: 'equipmentName', label: '璁惧鍚嶇О', minWidth: 120 },
+//             { prop: 'specification', label: '瑙勬牸鍨嬪彿', minWidth: 100 },
+//             { 
+//               prop: 'operationType', 
+//               label: '鎿嶄綔绫诲瀷', 
+//               minWidth: 80,
+//               formatter: (row) => row.operationType === 1 ? '棰嗙敤' : '褰掕繕'
+//             },
+//             { prop: 'quantity', label: '鎿嶄綔鏁伴噺', minWidth: 80 },
+//             { prop: 'operator', label: '鎿嶄綔浜�', minWidth: 80 },
+//             { prop: 'remark', label: '澶囨敞', minWidth: 150, showOverflowTooltip: true },
+//             { prop: 'createTime', label: '鎿嶄綔鏃堕棿', minWidth: 150 }
+//           ];
+//         } else {
+//           showToast('鏆傛棤鎿嶄綔璁板綍', 'warning');
+//         }
+//       } else {
+//         showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
+//         dialogTableVisible.value = false;
+//       }
+//       
+//     } catch (error) {
+//       console.error('鑾峰彇璇︽儏澶辫触:', error);
+//       showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
+//       dialogTableVisible.value = false;
+//     }
+//   }
+// };
 
 // 涓嬫媺鍒锋柊
 const onRefresh = async () => {
@@ -549,32 +555,32 @@
 };
 
 // 鑾峰彇璁惧鏈�澶у彲棰嗙敤鏁伴噺
-const getMaxQuantity = () => {
-  if (form.value.equipmentId) {
-    const equipment = tableData.value.find(
-      (item) => item.equipmentId === form.value.equipmentId
-    );
-    return equipment ? equipment.quantity : null;
-  }
-  return null;
-};
+// const getMaxQuantity = () => {
+//   if (form.value.equipmentId) {
+//     const equipment = tableData.value.find(
+//       (item) => item.equipmentId === form.value.equipmentId
+//     );
+//     return equipment ? equipment.quantity : null;
+//   }
+//   return null;
+// };
 
 // 璁惧棰嗙敤寮圭獥鎻愪氦澶勭悊
-const onEquipmentRequisitionSubmit = (formData) => {
-  if (formData.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
-    showToast("璁惧宸插畬鍏ㄥ綊杩�", 'success');
-  } else if (formData.equipmentStatus === EQUIPMENT_STATUS.PARTIAL_RETURN) {
-  } else if (formData.equipmentStatus === EQUIPMENT_STATUS.USING) {
-    showToast("璁惧棰嗙敤鎴愬姛", 'success');
-  } else {
-    showToast("鎿嶄綔鎴愬姛", 'success');
-  }
-  equipmentRequisitionDialog.value = false;
-  nextTick(() => {
-    form.value = {};
-    getList();
-  });
-};
+// const onEquipmentRequisitionSubmit = (formData) => {
+//   if (formData.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
+//     showToast("璁惧宸插畬鍏ㄥ綊杩�", 'success');
+//   } else if (formData.equipmentStatus === EQUIPMENT_STATUS.PARTIAL_RETURN) {
+//   } else if (formData.equipmentStatus === EQUIPMENT_STATUS.USING) {
+//     showToast("璁惧棰嗙敤鎴愬姛", 'success');
+//   } else {
+//     showToast("鎿嶄綔鎴愬姛", 'success');
+//   }
+//   equipmentRequisitionDialog.value = false;
+//   nextTick(() => {
+//     form.value = {};
+//     getList();
+//   });
+// };
 
 // 鏁版嵁鑾峰彇
 const getList = async () => {

--
Gitblit v1.9.3