From 26ec28bc8764a48b029a301effa4c7f7345b1d6b Mon Sep 17 00:00:00 2001
From: zhang_12370 <z2864490065@outlook.com>
Date: 星期六, 12 七月 2025 14:32:02 +0800
Subject: [PATCH] 1、删除无用模块并配置个性化新增方案 2、完善领用记录的查看功能等功能

---
 src/views/equipment/management/index.vue                            |   72 ++++++++++++++++++-----------------
 src/views/equipment/management/mould/equipmentRequisitionDialog.vue |   31 +++++++++++----
 src/views/equipment/management/mould/managementDialog.vue           |   16 ++++----
 3 files changed, 67 insertions(+), 52 deletions(-)

diff --git a/src/views/equipment/management/index.vue b/src/views/equipment/management/index.vue
index 5c29464..8c9d8be 100644
--- a/src/views/equipment/management/index.vue
+++ b/src/views/equipment/management/index.vue
@@ -30,8 +30,11 @@
 
       <!-- 鎿嶄綔鎸夐挳鍖� -->
       <el-row :gutter="24" class="table-toolbar">
-        <el-button :icon="Plus" type="primary" @click="handleAdd"
-          >鏂板缓</el-button
+        <el-button :icon="Plus" type="primary" v-show="activeTab === 'management'" @click="handleAdd"
+          >璁惧鏂板</el-button
+        >
+        <el-button :icon="Plus" type="primary" v-show="activeTab === 'equipmentRequisition'" @click="handleAdd"
+          >棰嗙敤</el-button
         >
         <el-button :icon="Delete" type="danger" @click="handleDelete"
           >鍒犻櫎</el-button
@@ -40,6 +43,7 @@
       <!-- 琛ㄦ牸缁勪欢 -->
       <div>
         <data-table
+          :showOverflowTooltip="false"
           :border="true"
           :columns="columns"
           :loading="loading"
@@ -51,6 +55,7 @@
           @selection-change="handleSelectionChange"
           :operations="['edit', 'viewRow']"
           :operationsWidth="200"
+          
         >
           <!-- 瀛楁鍚嶇О鍒楃殑鑷畾涔夋彃妲� - 鏄剧ず涓烘爣绛� -->
           <template
@@ -99,16 +104,17 @@
         v-model="equipmentRequisitionDialog"
         :formData="form"
         :maxQuantity="getMaxQuantity()"
+        :addOrEdit="addOrEdit"
         @submit="onEquipmentRequisitionSubmit"
       />
-      <UsageRecord
+      <!-- <UsageRecord
         v-if="activeTab == 'usageRecord'"
         v-model:copyForm="copyForm"
         v-model:usageRecordDialog="usageRecordDialog"
         :addOrEdit="addOrEdit"
         :form="form"
         @submit="getList"
-      />
+      /> -->
     </el-card>
   </div>
 </template>
@@ -164,14 +170,9 @@
     columns: [
       { prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
       { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
-      { prop: "quantity", label: "鏁伴噺", minWidth: 100 },
+      { prop: "quantity", label: "鎬绘暟閲�", minWidth: 100 },
+      { prop: "usedNo", label: "宸蹭娇鐢ㄦ暟閲�", minWidth: 100 },
       { prop: "specification", label: "瑙勬牸鍨嬪彿", minWidth: 100 },
-      { 
-        prop: "usageStatus", 
-        label: "浣跨敤鐘舵��", 
-        minWidth: 100,
-        formatter: (row) => row.usageStatus == 1 ? "鍚敤" : "绂佺敤"
-      },
       { prop: "purchaseDate", label: "閲囪喘鏃ユ湡", minWidth: 100 },
       { prop: "purchasePrice", label: "閲囪喘浠锋牸", minWidth: 100 },
     ]
@@ -183,41 +184,42 @@
     api: getUsageRecordList,
     deleteApi: null,
     columns: [
-      { prop: "userId", label: "棰嗙敤浜�", minWidth: 100 },
-      { prop: "equipmentId", label: "璁惧ID", minWidth: 100 },
+      { prop: "userName", label: "棰嗙敤浜�", minWidth: 100 },
+      { prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
+      { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
       { prop: "usageQuantity", label: "棰嗙敤鏁伴噺", minWidth: 100 },
       { 
         prop: "equipmentStatus", 
         label: "浣跨敤鐘舵��", 
         minWidth: 100,
-        formatter: (row) => row.usageStatus == 1 ? "鍚敤" : "绂佺敤"
+        formatter: (row) => row.usageStatus == 1 ? "浣跨敤涓�" : "宸插綊杩�"
       },
       { prop: "usageStartTime", label: "浣跨敤寮�濮嬫椂闂�", minWidth: 100 },
       { prop: "usageEndTime", label: "浣跨敤缁撴潫鏃堕棿", minWidth: 100 },
       { prop: "remarks", label: "澶囨敞", minWidth: 100 },
     ]
   },
-  usageRecord:{
-    label: "棰嗙敤璁板綍",
-    searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
-    showSearch: true,
-    api: getManagementList,
-    deleteApi: delEquipment,
-    columns: [
-      { prop: "equipmentId", label: "璁惧缂栧彿", minWidth: 100 },
-      { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
-      { prop: "quantity", label: "鏁伴噺", minWidth: 100 },
-      { prop: "specification", label: "瑙勬牸鍨嬪彿", minWidth: 100 },
-      { 
-        prop: "usageStatus", 
-        label: "浣跨敤鐘舵��", 
-        minWidth: 100,
-        formatter: (row) => row.usageStatus == 1 ? "鍚敤" : "绂佺敤"
-      },
-      { prop: "purchaseDate", label: "閲囪喘鏃ユ湡", minWidth: 100 },
-      { prop: "purchasePrice", label: "閲囪喘浠锋牸", minWidth: 100 },
-    ]
-  },
+  // usageRecord:{
+  //   label: "棰嗙敤璁板綍",
+  //   searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
+  //   showSearch: true,
+  //   api: getManagementList,
+  //   deleteApi: delEquipment,
+  //   columns: [
+  //     { prop: "equipmentId", label: "璁惧缂栧彿", minWidth: 100 },
+  //     { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
+  //     { prop: "quantity", label: "鏁伴噺", minWidth: 100 },
+  //     { prop: "specification", label: "瑙勬牸鍨嬪彿", minWidth: 100 },
+  //     { 
+  //       prop: "usageStatus", 
+  //       label: "浣跨敤鐘舵��", 
+  //       minWidth: 100,
+  //       formatter: (row) => row.usageStatus == 1 ? "鍚敤" : "绂佺敤"
+  //     },
+  //     { prop: "purchaseDate", label: "閲囪喘鏃ユ湡", minWidth: 100 },
+  //     { prop: "purchasePrice", label: "閲囪喘浠锋牸", minWidth: 100 },
+  //   ]
+  // },
 
   // 鍚庣画鍙互鍦ㄨ繖閲屾坊鍔犳柊鐨勬爣绛鹃〉閰嶇疆
 };
diff --git a/src/views/equipment/management/mould/equipmentRequisitionDialog.vue b/src/views/equipment/management/mould/equipmentRequisitionDialog.vue
index 8f58ee2..a31f0d0 100644
--- a/src/views/equipment/management/mould/equipmentRequisitionDialog.vue
+++ b/src/views/equipment/management/mould/equipmentRequisitionDialog.vue
@@ -7,7 +7,7 @@
   >
     <el-form :model="form" :rules="rules" ref="formRef" label-width="150px">
       <el-form-item label="棰嗙敤浜�" prop="userId">
-        <el-select v-model="form.userId" placeholder="璇烽�夋嫨">
+        <el-select v-model="form.userId" placeholder="璇烽�夋嫨" :disabled="isViewMode">
           <el-option
             v-for="item in userList"
             :key="item.userId"
@@ -17,7 +17,7 @@
         </el-select>
       </el-form-item>
       <el-form-item label="璁惧鍚嶇О" prop="equipmentId">
-        <el-select v-model="form.equipmentId" placeholder="璇烽�夋嫨">
+        <el-select v-model="form.equipmentId" placeholder="璇烽�夋嫨" :disabled="isViewMode">
           <el-option
             v-for="item in equipmentList"
             :key="item.id"
@@ -42,6 +42,7 @@
           :min="1"
           :max="maxQuantity || 999"
           style="width: 100%"
+          :disabled="isViewMode"
         />
         <span
           v-if="maxQuantity !== null"
@@ -50,12 +51,9 @@
         >
       </el-form-item>
       <el-form-item label="浣跨敤鐘舵��" prop="equipmentStatus">
-        <el-select v-model="form.equipmentStatus" placeholder="璇烽�夋嫨">
-          <el-option label="鍚敤" :value="1" />
-          <el-option label="绂佺敤" :value="0" />
-          <el-option label="缁翠慨涓�" :value="2" />
-          <el-option label="鎶ュ簾" :value="3" />
-          <el-option label="寰呴鐢�" :value="4" />
+        <el-select v-model="form.equipmentStatus" placeholder="璇烽�夋嫨" :disabled="isViewMode">
+          <el-option label="浣跨敤涓�" :value="1" />
+          <el-option label="宸插綊杩�" :value="0" />
         </el-select>
       </el-form-item>
       <el-form-item label="浣跨敤寮�濮嬫椂闂�" prop="usageStartTime">
@@ -66,6 +64,7 @@
           style="width: 100%"
           value-format="YYYY-MM-DD"
           format="YYYY-MM-DD"
+          :disabled="isViewMode"
         />
       </el-form-item>
       <!-- <el-form-item label="浣跨敤缁撴潫鏃堕棿" prop="usageEndTime">
@@ -81,12 +80,13 @@
           v-model="form.remarks"
           type="textarea"
           placeholder="璇疯緭鍏ュ娉�"
+          :disabled="isViewMode"
         />
       </el-form-item>
     </el-form>
     <template #footer>
       <el-button @click="handleClose">鍙栨秷</el-button>
-      <el-button type="primary" @click="handleSubmit">纭畾</el-button>
+      <el-button type="primary" @click="handleSubmit" v-if="!isViewMode">纭畾</el-button>
     </template>
   </el-dialog>
 </template>
@@ -116,6 +116,18 @@
     type: Object,
     default: () => ({}),
   },
+  beforeClose: {
+    type: Function,
+    default: () => {},
+  },
+  addOrEdit: {
+    type: String,
+    default: "add",
+  },
+  title: {
+    type: String,
+    default: "",
+  },
 });
 const maxQuantity = computed(() => {
   if (!form.value.equipmentId) return 0;
@@ -131,6 +143,7 @@
   get: () => props.modelValue,
   set: (v) => emit("update:modelValue", v),
 });
+const isViewMode = computed(() => props.addOrEdit === "view" || props.addOrEdit === "viewRow");
 
 const isEdit = computed(() => !!props.formData?.id);
 const formRef = ref();
diff --git a/src/views/equipment/management/mould/managementDialog.vue b/src/views/equipment/management/mould/managementDialog.vue
index b092d33..e2b3e72 100644
--- a/src/views/equipment/management/mould/managementDialog.vue
+++ b/src/views/equipment/management/mould/managementDialog.vue
@@ -16,9 +16,9 @@
       >
         <el-row :gutter="20">
           <el-col :span="11">
-            <el-form-item label="璁惧缂栧彿" prop="equipmentId">
+            <el-form-item label="璁惧缂栧彿" prop="equipmentName">
               <el-input
-                v-model="formData.equipmentId"
+                v-model="formData.equipmentName"
                 placeholder="璇疯緭鍏ヨ澶囩紪鍙�"
                 :disabled="isViewMode"
                 style="width: 100%"
@@ -55,8 +55,8 @@
               />
             </el-form-item>
           </el-col>
-          <el-col :span="11">
-            <el-form-item label="浣跨敤鐘舵��" prop="usageStatus">
+          <!-- <el-col :span="11"> -->
+            <!-- <el-form-item label="浣跨敤鐘舵��" prop="usageStatus">
               <el-select
                 v-model="formData.usageStatus"
                 placeholder="璇烽�夋嫨浣跨敤鐘舵��"
@@ -65,8 +65,8 @@
                 <el-option label="鍚敤" value="1" />
                 <el-option label="绂佺敤" value="0" />
               </el-select>
-            </el-form-item>
-          </el-col>
+            </el-form-item> -->
+          <!-- </el-col> -->
           <el-col :span="11">
             <el-form-item label="浣跨敤閮ㄩ棬" prop="usingDepartment">
               <el-input
@@ -112,7 +112,7 @@
           </el-col>
         </el-row>
         <el-form-item class="dialog-footer">
-          <el-button v-if="!isViewMode" @click="cancelForm">鍙栨秷</el-button>
+          <el-button @click="cancelForm">鍙栨秷</el-button>
           <el-button v-if="!isViewMode" type="primary" @click="submitForm">纭畾</el-button>
         </el-form-item>
       </el-form>
@@ -219,7 +219,7 @@
   closeDialog();
 };
 const rules = reactive({
-  equipmentId: [
+  equipmentName: [
     { required: true, message: "璇疯緭鍏ヤ緵璐у晢鍚嶇О", trigger: "blur" },
   ],
 });

--
Gitblit v1.9.3