From 3d3addba8618bd44db53f7089732e3fae16bdfef Mon Sep 17 00:00:00 2001
From: zhang_12370 <z2864490065@outlook.com>
Date: 星期二, 15 七月 2025 18:01:28 +0800
Subject: [PATCH] 1、修改配置删除文件 2、优化设备领用 使用户归还完以后 无法重新选择使用中
---
src/views/equipment/management/index.vue | 79 +++++++++++++++++++++++++--------------
src/views/equipment/management/mould/equipmentRequisitionDialog.vue | 6 ++
src/hooks/useDelete.js | 3 -
3 files changed, 56 insertions(+), 32 deletions(-)
diff --git a/src/hooks/useDelete.js b/src/hooks/useDelete.js
index 60615b3..bfdde61 100644
--- a/src/hooks/useDelete.js
+++ b/src/hooks/useDelete.js
@@ -125,13 +125,10 @@
ElMessage.success(successText);
return true;
} else {
- ElMessage.error("鍒犻櫎澶辫触锛�" + (res.msg || "鏈煡閿欒"));
return false;
}
} catch (error) {
if (error !== "cancel") {
- console.error("鍒犻櫎鎿嶄綔澶辫触:", error);
- ElMessage.error("鍒犻櫎澶辫触锛�" + (error.message || "璇风◢鍚庨噸璇�"));
} else {
ElMessage.info("宸插彇娑堝垹闄�");
}
diff --git a/src/views/equipment/management/index.vue b/src/views/equipment/management/index.vue
index 876a4b1..97ca889 100644
--- a/src/views/equipment/management/index.vue
+++ b/src/views/equipment/management/index.vue
@@ -30,13 +30,25 @@
<!-- 鎿嶄綔鎸夐挳鍖� -->
<el-row :gutter="24" class="table-toolbar">
- <el-button :icon="Plus" type="primary" v-show="activeTab === 'management'" @click="handleAdd"
+ <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
+ :icon="Plus"
+ type="primary"
+ v-show="activeTab === 'equipmentRequisition'"
+ @click="handleAdd"
>棰嗙敤</el-button
>
- <el-button :icon="Delete" type="danger" v-show="activeTab === 'management'" @click="handleDelete"
+ <el-button
+ :icon="Delete"
+ type="danger"
+ v-show="activeTab === 'management'"
+ @click="handleDelete"
>鍒犻櫎</el-button
>
</el-row>
@@ -55,7 +67,6 @@
@selection-change="handleSelectionChange"
:operations="['edit', 'viewRow']"
:operationsWidth="200"
-
>
<!-- 瀛楁鍚嶇О鍒楃殑鑷畾涔夋彃妲� - 鏄剧ず涓烘爣绛� -->
<template
@@ -77,8 +88,7 @@
</el-tag>
</template>
<template v-else>
- <el-tag size="small" type="primary">
- </el-tag>
+ <el-tag size="small" type="primary"> </el-tag>
</template>
</template>
</data-table>
@@ -92,7 +102,7 @@
@pagination="handPagination"
/>
<managementDialog
- v-if="activeTab == 'management'"
+ v-if="activeTab == 'management'"
v-model:copyForm="copyForm"
v-model:managementFormDialog="manaDialog"
:addOrEdit="addOrEdit"
@@ -105,6 +115,7 @@
:formData="form"
:maxQuantity="getMaxQuantity()"
:addOrEdit="addOrEdit"
+ :equipmentStatus="form.equipmentStatus"
@submit="onEquipmentRequisitionSubmit"
/>
<!-- <UsageRecord
@@ -133,7 +144,10 @@
// API 鏈嶅姟瀵煎叆
import { useDelete } from "@/hooks/useDelete.js";
-import { getManagementList, delEquipment } from "@/api/equipment/management/index.js";
+import {
+ getManagementList,
+ delEquipment,
+} from "@/api/equipment/management/index.js";
import { getUsageRecordList } from "@/api/equipment/requisition/index.js";
// 鍝嶅簲寮忕姸鎬佺鐞�
@@ -156,7 +170,7 @@
// 鏌ヨ鍙傛暟
const queryParams = reactive({
- searchAll: ""
+ searchAll: "",
});
// 鏍囩椤甸厤缃� - 渚夸簬鍚庣画鎵╁睍
@@ -175,9 +189,9 @@
{ prop: "specification", label: "瑙勬牸鍨嬪彿", minWidth: 100 },
{ prop: "purchaseDate", label: "閲囪喘鏃ユ湡", minWidth: 100 },
{ prop: "purchasePrice", label: "閲囪喘浠锋牸", minWidth: 100 },
- ]
+ ],
},
- equipmentRequisition:{
+ equipmentRequisition: {
label: "璁惧棰嗙敤",
searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
showSearch: true,
@@ -188,16 +202,16 @@
{ prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
{ prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
{ prop: "usageQuantity", label: "棰嗙敤鏁伴噺", minWidth: 100 },
- {
- prop: "equipmentStatus",
- label: "浣跨敤鐘舵��",
+ {
+ prop: "equipmentStatus",
+ label: "浣跨敤鐘舵��",
minWidth: 100,
- formatter: (row) => row.equipmentStatus == "0" ? "浣跨敤涓�" : "宸插綊杩�"
+ formatter: (row) => (row.equipmentStatus == "0" ? "浣跨敤涓�" : "宸插綊杩�"),
},
{ prop: "usageStartTime", label: "浣跨敤寮�濮嬫椂闂�", minWidth: 100 },
{ prop: "usageEndTime", label: "浣跨敤缁撴潫鏃堕棿", minWidth: 100 },
{ prop: "remarks", label: "澶囨敞", minWidth: 100 },
- ]
+ ],
},
// usageRecord:{
// label: "棰嗙敤璁板綍",
@@ -210,9 +224,9 @@
// { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
// { prop: "quantity", label: "鏁伴噺", minWidth: 100 },
// { prop: "specification", label: "瑙勬牸鍨嬪彿", minWidth: 100 },
- // {
- // prop: "usageStatus",
- // label: "浣跨敤鐘舵��",
+ // {
+ // prop: "usageStatus",
+ // label: "浣跨敤鐘舵��",
// minWidth: 100,
// formatter: (row) => row.usageStatus == 1 ? "鍚敤" : "绂佺敤"
// },
@@ -228,7 +242,7 @@
const tabs = reactive(
Object.entries(tabsConfig).map(([name, config]) => ({
name,
- label: config.label
+ label: config.label,
}))
);
@@ -236,8 +250,12 @@
const currentTabConfig = computed(() => tabsConfig[activeTab.value]);
// 璁$畻灞炴��
-const searchPlaceholder = computed(() => currentTabConfig.value?.searchPlaceholder || "璇疯緭鍏ユ悳绱俊鎭�");
-const shouldShowSearch = computed(() => currentTabConfig.value?.showSearch || false);
+const searchPlaceholder = computed(
+ () => currentTabConfig.value?.searchPlaceholder || "璇疯緭鍏ユ悳绱俊鎭�"
+);
+const shouldShowSearch = computed(
+ () => currentTabConfig.value?.showSearch || false
+);
const columns = computed(() => currentTabConfig.value?.columns || []);
const selectedCount = computed(() => selectedRows.value.length);
@@ -323,7 +341,6 @@
selectedRows.value = selection;
};
-
// 鍒犻櫎澶勭悊
const { handleDeleteBatch: handleDelete } = useDelete({
deleteApi: () => currentTabConfig.value.deleteApi,
@@ -338,7 +355,9 @@
// 鑾峰彇璁惧鏈�澶у彲棰嗙敤鏁伴噺
const getMaxQuantity = () => {
if (form.value.equipmentId) {
- const equipment = tableData.value.find(item => item.equipmentId === form.value.equipmentId);
+ const equipment = tableData.value.find(
+ (item) => item.equipmentId === form.value.equipmentId
+ );
return equipment ? equipment.quantity : null;
}
return null;
@@ -346,8 +365,12 @@
// 璁惧棰嗙敤寮圭獥鎻愪氦澶勭悊
const onEquipmentRequisitionSubmit = (formData) => {
- console.log("鎻愪氦鐨勯鐢ㄦ暟鎹細", formData);
- ElMessage.success('璁惧棰嗙敤鎴愬姛');
+ console.log("璁惧棰嗙敤鎻愪氦鏁版嵁锛�", formData);
+ if (formData.equipmentStatus == "1") {
+ ElMessage.success("璁惧褰掕繕鎴愬姛");
+ } else {
+ ElMessage.success("璁惧棰嗙敤鎴愬姛");
+ }
equipmentRequisitionDialog.value = false;
nextTick(() => {
form.value = {};
@@ -368,7 +391,7 @@
const { data, code } = await currentTabConfig.value.api(apiParams);
if (code !== 200) {
- ElMessage.error("鑾峰彇鏁版嵁澶辫触锛�" + (data?.msg || "鏈煡閿欒"));
+ // ElMessage.error("鑾峰彇鏁版嵁澶辫触锛�" + (data?.msg || "鏈煡閿欒"));
return;
}
@@ -407,7 +430,7 @@
flex-wrap: wrap;
gap: 10px;
}
-.app-container{
+.app-container {
padding: 18px !important;
}
/* 鍝嶅簲寮忚〃鏍� */
diff --git a/src/views/equipment/management/mould/equipmentRequisitionDialog.vue b/src/views/equipment/management/mould/equipmentRequisitionDialog.vue
index c3be23d..82b6f85 100644
--- a/src/views/equipment/management/mould/equipmentRequisitionDialog.vue
+++ b/src/views/equipment/management/mould/equipmentRequisitionDialog.vue
@@ -129,6 +129,10 @@
type: String,
default: "",
},
+ equipmentStatus:{
+ type: String,
+ default: "0"
+ }
});
const maxQuantity = computed(() => {
if (!form.value.equipmentId) return 0;
@@ -144,7 +148,7 @@
get: () => props.modelValue,
set: (v) => emit("update:modelValue", v),
});
-const isViewMode = computed(() => props.addOrEdit === "view" || props.addOrEdit === "viewRow");
+const isViewMode = computed(() => props.addOrEdit === "view" || props.addOrEdit === "viewRow" || props.equipmentStatus ==="1");
const isEdit = computed(() => !!props.formData?.id);
const formRef = ref();
--
Gitblit v1.9.3