|
@@ -56,7 +56,8 @@ const validateForm = (dataForm: any): boolean => {
|
|
|
message.error(`请选择月度固定项目${i + 1}的项目名称`)
|
|
message.error(`请选择月度固定项目${i + 1}的项目名称`)
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
- if (!item.actualAmount || item.actualAmount < 0) {
|
|
|
|
|
|
|
+ const actualAmountNum = Number(item.actualAmount)
|
|
|
|
|
+ if (item.actualAmount === '' || item.actualAmount === null || item.actualAmount === undefined || Number.isNaN(actualAmountNum) || actualAmountNum < 0) {
|
|
|
message.error(`请输入月度固定项目${i + 1}的费用金额`)
|
|
message.error(`请输入月度固定项目${i + 1}的费用金额`)
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
@@ -75,7 +76,8 @@ const validateForm = (dataForm: any): boolean => {
|
|
|
message.error(`请选择一次性收费项目${i + 1}的项目名称`)
|
|
message.error(`请选择一次性收费项目${i + 1}的项目名称`)
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
- if (!item.actualAmount || item.actualAmount < 0) {
|
|
|
|
|
|
|
+ const actualAmountNum2 = Number(item.actualAmount)
|
|
|
|
|
+ if (item.actualAmount === '' || item.actualAmount === null || item.actualAmount === undefined || Number.isNaN(actualAmountNum2) || actualAmountNum2 < 0) {
|
|
|
message.error(`请输入一次性收费项目${i + 1}的费用金额`)
|
|
message.error(`请输入一次性收费项目${i + 1}的费用金额`)
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
@@ -94,10 +96,18 @@ const validateForm = (dataForm: any): boolean => {
|
|
|
message.error(`请选择阶段收费项目${i + 1}的项目名称`)
|
|
message.error(`请选择阶段收费项目${i + 1}的项目名称`)
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
- // 检查金额:优先检查 actualAmount,如果没有则检查 amount
|
|
|
|
|
- const amount = item.actualAmount || item.amount
|
|
|
|
|
- if (!amount || amount < 0) {
|
|
|
|
|
- message.error(`请输入阶段收费项目${i + 1}的费用金额`)
|
|
|
|
|
|
|
+ // 检查金额:优先检查 actualAmount,如果没有则检查 amount,汇总到一个变量后统一校验
|
|
|
|
|
+ const amount = item.actualAmount !== undefined && item.actualAmount !== null && item.actualAmount !== '' ? item.actualAmount : item.amount
|
|
|
|
|
+ const amountNum = Number(amount)
|
|
|
|
|
+ const isValidAmount = amount !== '' && amount !== null && amount !== undefined && !Number.isNaN(amountNum) && amountNum >= 0
|
|
|
|
|
+ if (!isValidAmount) {
|
|
|
|
|
+ message.error(`请输入阶段收费项目${i + 1}的费用金额,金额不能小于0`)
|
|
|
|
|
+ return false
|
|
|
|
|
+ }
|
|
|
|
|
+ // 同时校验 totalAmount 也不能小于0
|
|
|
|
|
+ const totalAmountNum = Number(item.totalAmount)
|
|
|
|
|
+ if (Number.isNaN(totalAmountNum) || totalAmountNum < 0) {
|
|
|
|
|
+ message.error(`阶段收费项目${i + 1}的单项小计不能小于0`)
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
// 如果选中了分期,分期期数是必选的
|
|
// 如果选中了分期,分期期数是必选的
|