feat(borrow): 借库申请前端必填拦截与星标——申请原因、预计归还日期(长期借用除外)

- 提交前拦截:申请原因为空或(未勾长期借用且无归还日期)提示并 return
- 表单加必填星标:申请原因恒必填;预计归还日期仅在非长期借用时 required
This commit is contained in:
yueli
2026-09-09 10:53:16 +08:00
parent aa9322bcbc
commit e622697d7c

View File

@ -412,7 +412,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="预计归还日期">
<el-form-item label="预计归还日期" :required="!requestIndefinite">
<el-date-picker
v-model="requestExpectedReturn"
type="date"
@ -426,12 +426,12 @@
长期借用
</el-checkbox>
</el-form-item>
<el-form-item label="申请原因">
<el-form-item label="申请原因" required>
<el-input
v-model="requestRemark"
type="textarea"
:rows="3"
placeholder="请填写借库申请原因(填)"
placeholder="请填写借库申请原因(填)"
maxlength="200"
show-word-limit
/>
@ -1102,6 +1102,17 @@ const buildRemarkWithShortage = (baseRemark: string): string => {
}
const confirmSubmitRequest = async () => {
// ★ 借库申请必填拦截:申请原因;预计归还日期(除非长期借用/不限归还)
const _reasonText = requestRemark.value.trim()
if (!_reasonText) {
ElMessage.warning('请填写借库申请原因')
return
}
if (!requestIndefinite.value && !requestExpectedReturn.value) {
ElMessage.warning('请填写预计归还日期,或勾选“长期借用(不限归还)”')
return
}
requestSubmitting.value = true
try {
const items = validSelectedItems.value.map((item: any) => ({