diff --git a/frontend/src/views/desktop/Leaves.vue b/frontend/src/views/desktop/Leaves.vue
index 27cd479..76c43a7 100644
--- a/frontend/src/views/desktop/Leaves.vue
+++ b/frontend/src/views/desktop/Leaves.vue
@@ -138,7 +138,9 @@ async function handleSave() {
dialogVisible.value = false
await loadLeaves()
} catch (e: any) {
- ElMessage.error('保存失败: ' + (e.response?.data?.detail || e.message))
+ const detail = e.response?.data?.detail
+ const msg = Array.isArray(detail) ? detail.map((d: any) => d.msg).join('; ') : (detail || e.message)
+ ElMessage.error('保存失败: ' + msg)
}
}
@@ -276,12 +278,14 @@ function onStatusChange(val: string) {
type="date"
placeholder="开始日期"
style="width:100%; margin-bottom: 8px"
+ value-format="YYYY-MM-DD"
/>
diff --git a/frontend/src/views/mobile/LeaveForm.vue b/frontend/src/views/mobile/LeaveForm.vue
index cafd8f2..14ba88b 100644
--- a/frontend/src/views/mobile/LeaveForm.vue
+++ b/frontend/src/views/mobile/LeaveForm.vue
@@ -70,7 +70,9 @@ async function handleSubmit() {
}
router.push('/m/leaves')
} catch (e: any) {
- ElMessage.error((isEdit ? '更新' : '提交') + '失败: ' + (e.response?.data?.detail || e.message))
+ const detail = e.response?.data?.detail
+ const msg = Array.isArray(detail) ? detail.map((d: any) => d.msg).join('; ') : (detail || e.message)
+ ElMessage.error((isEdit ? '更新' : '提交') + '失败: ' + msg)
} finally { submitLoading.value = false }
}
@@ -124,12 +126,12 @@ async function handleDelete() {
开始日期 *
-
+
结束日期 *
-
+