From 14e880475bdc908c1ce670a1a5e892347d636562 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期六, 16 五月 2026 13:41:49 +0800
Subject: [PATCH] 新增设备报修验收功能,更新报修表单,增加验收人字段,调整状态管理,优化报修详情展示。
---
src/pages/equipmentManagement/repair/add.vue | 70 ++++++++++++++++++++++++++++------
1 files changed, 57 insertions(+), 13 deletions(-)
diff --git a/src/pages/equipmentManagement/repair/add.vue b/src/pages/equipmentManagement/repair/add.vue
index 076acb0..d641f14 100644
--- a/src/pages/equipmentManagement/repair/add.vue
+++ b/src/pages/equipmentManagement/repair/add.vue
@@ -62,11 +62,19 @@
</template>
</u-form-item>
<u-form-item label="鎶ヤ慨浜�"
- prop="repairName"
+ prop="maintenanceName"
required
border-bottom>
- <u-input v-model="form.repairName"
+ <u-input v-model="form.maintenanceName"
placeholder="璇疯緭鍏ユ姤淇汉"
+ clearable />
+ </u-form-item>
+ <u-form-item label="楠屾敹浜�"
+ prop="acceptanceName"
+ required
+ border-bottom>
+ <u-input v-model="form.acceptanceName"
+ placeholder="璇疯緭鍏ラ獙鏀朵汉"
clearable />
</u-form-item>
<u-form-item label="鏁呴殰鐜拌薄"
@@ -150,6 +158,9 @@
} from "@/api/equipmentManagement/repair";
import dayjs from "dayjs";
import { formatDateToYMD } from "@/utils/ruoyi";
+ import useUserStore from "@/store/modules/user";
+
+ const userStore = useUserStore();
const showToast = message => {
uni.showToast({
title: message,
@@ -195,7 +206,12 @@
repairTime: [
{ required: true, trigger: "change", message: "璇烽�夋嫨鎶ヤ慨鏃ユ湡" },
],
- repairName: [{ required: true, trigger: "blur", message: "璇疯緭鍏ユ姤淇汉" }],
+ maintenanceName: [
+ { required: true, trigger: "blur", message: "璇疯緭鍏ユ姤淇汉" },
+ ],
+ acceptanceName: [
+ { required: true, trigger: "blur", message: "璇疯緭鍏ラ獙鏀朵汉" },
+ ],
remark: [{ required: true, trigger: "blur", message: "璇疯緭鍏ユ晠闅滅幇璞�" }],
};
@@ -204,7 +220,9 @@
deviceLedgerId: undefined, // 璁惧ID
deviceModel: undefined, // 瑙勬牸鍨嬪彿
repairTime: dayjs().format("YYYY-MM-DD"), // 鎶ヤ慨鏃ユ湡
- repairName: undefined, // 鎶ヤ慨浜�
+ status: "0",
+ maintenanceName: userStore.nickName || userStore.name || "", // 鎶ヤ慨浜�
+ acceptanceName: undefined, // 楠屾敹浜�
remark: undefined, // 鏁呴殰鐜拌薄
});
@@ -413,10 +431,11 @@
// 鎶ヤ慨鐘舵�侀�夐」
const repairStatusOptions = ref([
{ name: "寰呯淮淇�", value: "0" },
- { name: "瀹岀粨", value: "1" },
- { name: "澶辫触", value: "2" },
+ { name: "寰呴獙鏀�", value: "3" },
+ { name: "瀹屾垚", value: "1" },
+ { name: "缁翠慨澶辫触", value: "2" },
]);
- const repairStatusText = ref("");
+ const repairStatusText = ref("寰呯淮淇�");
// 鎵撳紑鎶ヤ慨鐘舵�侀�夋嫨鍣�
const openRepairStatusPicker = () => {
@@ -458,12 +477,19 @@
form.value.deviceLedgerId = data.deviceLedgerId;
form.value.deviceModel = data.deviceModel;
form.value.repairTime = dayjs(data.repairTime).format("YYYY-MM-DD");
- form.value.repairName = data.repairName;
+ form.value.maintenanceName =
+ data.maintenanceName || data.repairName || "";
+ form.value.acceptanceName = data.acceptanceName || "";
form.value.remark = data.remark;
+ form.value.status =
+ data.status !== undefined && data.status !== null
+ ? String(data.status)
+ : "0";
await fetchRepairFileList(id);
repairStatusText.value =
- repairStatusOptions.value.find(item => item.value == data.status)
- ?.name || "";
+ repairStatusOptions.value.find(
+ item => item.value == String(data.status)
+ )?.name || "寰呯淮淇�";
// 璁剧疆璁惧鍚嶇О鏄剧ず
const device = deviceOptions.value.find(
item => item.id === data.deviceLedgerId
@@ -476,8 +502,13 @@
showToast("鑾峰彇璇︽儏澶辫触");
}
} else {
- // 鏂板妯″紡
operationType.value = "add";
+ form.value.status = "0";
+ repairStatusText.value = "寰呯淮淇�";
+ if (!form.value.maintenanceName) {
+ form.value.maintenanceName =
+ userStore.nickName || userStore.name || "";
+ }
}
};
@@ -604,9 +635,18 @@
} else if (!form.value.repairTime || form.value.repairTime.trim() === "") {
isValid = false;
errorMessage = "璇烽�夋嫨鎶ヤ慨鏃ユ湡";
- } else if (!form.value.repairName || form.value.repairName.trim() === "") {
+ } else if (
+ !form.value.maintenanceName ||
+ form.value.maintenanceName.trim() === ""
+ ) {
isValid = false;
errorMessage = "璇疯緭鍏ユ姤淇汉";
+ } else if (
+ !form.value.acceptanceName ||
+ form.value.acceptanceName.trim() === ""
+ ) {
+ isValid = false;
+ errorMessage = "璇疯緭鍏ラ獙鏀朵汉";
} else if (!form.value.remark || form.value.remark.trim() === "") {
isValid = false;
errorMessage = "璇疯緭鍏ユ晠闅滅幇璞�";
@@ -621,7 +661,11 @@
const id = getPageId();
// 鍑嗗鎻愪氦鏁版嵁
- const submitData = { ...form.value };
+ const submitData = {
+ ...form.value,
+ status: Number(form.value.status ?? 0),
+ repairName: form.value.maintenanceName,
+ };
const result = id
? await editRepair({ id: id, ...submitData })
--
Gitblit v1.9.3