From 7a0ffb0048adeda9ebfbca1d0b525eb224c173e3 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 29 八月 2025 17:00:16 +0800
Subject: [PATCH] 修改组件

---
 src/pages/equipmentManagement/upkeep/add.vue |  100 ++++++++++++++++++++++---------------------------
 1 files changed, 45 insertions(+), 55 deletions(-)

diff --git a/src/pages/equipmentManagement/upkeep/add.vue b/src/pages/equipmentManagement/upkeep/add.vue
index fc6c5f7..82892ad 100644
--- a/src/pages/equipmentManagement/upkeep/add.vue
+++ b/src/pages/equipmentManagement/upkeep/add.vue
@@ -1,85 +1,75 @@
 <template>
 	<view class="upkeep-add">
 		<!-- 浣跨敤閫氱敤椤甸潰澶撮儴缁勪欢 -->
-		<PageHeader title="鏂板淇濆吇" @back="goBack" />
+		<PageHeader :title="operationType === 'edit' ? '缂栬緫淇濆吇璁″垝' : '鏂板淇濆吇璁″垝'" @back="goBack" />
 		
 		<!-- 琛ㄥ崟鍐呭 -->
-		<u-form @submit="sendForm" ref="formRef" label-width="110" input-align="right" error-message-align="right">
+		<van-form @submit="sendForm" ref="formRef" label-width="110px" input-align="right" error-message-align="right" scroll-to-error scroll-to-error-position="center">
 			<!-- 鍩烘湰淇℃伅 -->
-			<u-cell-group title="鍩烘湰淇℃伅">
-				<u-form-item label="璁惧鍚嶇О" prop="deviceName" required border-bottom>
-					<u-input
-						v-model="deviceNameText"
-						placeholder="璇烽�夋嫨璁惧鍚嶇О"
-						readonly
-						@click="showDevicePicker"
-						clearable
-					>
-						<template #suffix>
-							<u-icon name="scan" @click.stop="startScan" class="scan-icon" />
-						</template>
-					</u-input>
-				</u-form-item>
-				<u-form-item label="瑙勬牸鍨嬪彿" border-bottom>
-					<u-input
-						v-model="form.deviceModel"
-						placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�"
-						readonly
-						clearable
-					/>
-				</u-form-item>
-				<u-form-item label="淇濆吇鏃ユ湡" prop="upkeepDate" required border-bottom>
-					<u-input
-						v-model="form.upkeepDate"
-						placeholder="璇烽�夋嫨淇濆吇鏃ユ湡"
-						readonly
-						@click="showDatePicker"
-						clearable
-					/>
-				</u-form-item>
-			</u-cell-group>
+			<van-cell-group title="鍩烘湰淇℃伅" inset>
+				<van-field
+					v-model="deviceNameText"
+					label="璁惧鍚嶇О"
+					placeholder="璇烽�夋嫨璁惧鍚嶇О"
+					:rules="formRules.deviceLedgerId"
+					required
+					readonly
+					@click="showDevicePicker"
+					clearable
+				>
+					<template #right-icon>
+						<van-icon name="scan" @click.stop="startScan" class="scan-icon" />
+					</template>
+				</van-field>
+				<van-field
+					v-model="form.deviceModel"
+					label="瑙勬牸鍨嬪彿"
+					placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�"
+					readonly
+					clearable
+				/>
+				<van-field
+					v-model="form.maintenancePlanTime"
+					label="璁″垝淇濆吇鏃ユ湡"
+					placeholder="璇烽�夋嫨璁″垝淇濆吇鏃ユ湡"
+					:rules="formRules.maintenancePlanTime"
+					required
+					readonly
+					@click="showDatePicker"
+					clearable
+				/>
+			</van-cell-group>
 			
 			<!-- 鎻愪氦鎸夐挳 -->
 			<view class="footer-btns">
-				<u-button class="cancel-btn" @click="goBack">鍙栨秷</u-button>
-				<u-button class="save-btn" type="primary" @click="sendForm" :loading="loading">淇濆瓨</u-button>
+				<van-button class="cancel-btn" @click="goBack">鍙栨秷</van-button>
+				<van-button class="save-btn" native-type="submit" form-type="submit" :loading="loading">淇濆瓨</van-button>
 			</view>
-		</u-form>
+		</van-form>
 
 		<!-- 璁惧閫夋嫨鍣� -->
-		<u-popup v-model="showDevice" mode="bottom">
-			<u-picker
-				v-model="devicePickerValue"
+		<van-popup v-model:show="showDevice" position="bottom">
+			<van-picker
+				:model-value="devicePickerValue"
 				:columns="deviceColumns"
 				@confirm="onDeviceConfirm"
 				@cancel="showDevice = false"
 			/>
-		</u-popup>
+		</van-popup>
 
 		<!-- 鏃ユ湡閫夋嫨鍣� -->
-		<u-popup v-model="showDate" mode="bottom">
-			<u-datetime-picker
+		<van-popup v-model:show="showDate" position="bottom">
+			<van-date-picker
 				v-model="currentDate"
 				title="閫夋嫨鏃ユ湡"
 				@confirm="onDateConfirm"
 				@cancel="showDate = false"
 			/>
-		</u-popup>
+		</van-popup>
 	</view>
 </template>
 
 <script setup>
-// 鏇挎崲 Vant 鐨� toast
-// import { showToast } from 'vant';
-
-// 鏇挎崲 toast 鏂规硶
-const showToast = (message) => {
-  uni.showToast({
-    title: message,
-    icon: 'none'
-  })
-}
-
 import { ref, computed, onMounted, onUnmounted } from 'vue';
 import { onShow } from '@dcloudio/uni-app';
 import PageHeader from '@/components/PageHeader.vue';

--
Gitblit v1.9.3