// 数组包对象不能为空
let bol = this.tableDate.every((obj) => {
return Object.values(obj).every((value) => value !== '')
})
// 一项 不能为空
objectNull (obj) {
// 如果所有属性值都不为空,返回true,否则返回false。
return Object.values(obj).every((value) => value)
},
validateTableData (tableData) {
const regex = /^(?!0*(\.0+)?$)(?:\d+|\d{1,3}(?:,\d{3}){0,2})(?:\.\d{1,2})?$/
return tableData.every(
(item) =>
item.chargeType !== '' &&
item.unitPrice !== '' &&
item.calculationUnit !== '' &&
regex.test(item.unitPrice) &&
parseFloat(item.unitPrice) > 0 &&
parseFloat(item.unitPrice) < 1000000
)
},
数组对象 不能为空 并且找出哪一项是空的
submitForm () {
return new Promise((resolve, reject) => {
const validateForm = (formRef) => {
return new Promise((resolve) => {
formRef.validate((valid) => {
resolve(valid)
})
})
}
Promise.all([
validateForm(this.$refs.xianJieFormRef),
validateForm(this.$refs.yueJieFormRef),
validateForm(this.$refs.shuangYueJieFormRef),
validateForm(this.$refs.qianShouFormRef)
]).then((results) => {
this.qianShouForm.channelItemList.forEach((item) => {
item.invoiceTimeMonthType2 ? delete item.invoiceTimeMonthType2 : ''
})
let bol = this.qianShouForm.channelItemList.every((obj, index) => {
return Object.values(obj).every((value) => value !== '')
})
if (!bol) {
let firstFailedObj = this.qianShouForm.channelItemList.find((obj, index) => {
return Object.values(obj).some((value) => value === '')
})
if (firstFailedObj) {
this.$message.error(
`异常,签收结的【初始】生成规则【${firstFailedObj.channelTypeName}】数据不完整,请检查`
)
reject(new Error('异常,签收结的【初始】生成规则数据不完整,请检查'))
return
}
}
const isValid = results.every((valid) => valid)
if (isValid) {
let obj = {
orgOwner: null,
rules: []
}
obj.rules = [this.xianJieForm, this.yueJieForm, this.shuangYueJieForm, this.qianShouForm]
resolve(obj) // 解析带有对象的Promise
} else {
this.$message.error('请将必填项填写完整')
reject(new Error('表单校验失败了')) // 带有错误的Promise
}
})
})
},