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