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