<a-col :span="16">
<a-form-item label="毛重">
<a-input v-decorator="[`wareSkuExtList[${index}].netWeight`, { rules: [{ required: true, validator: (rule, value, cb) => validatorGross(rule, value, cb, index) }] }]"
placeholder="请输入"
suffix="kg" />
</a-form-item>
</a-col>
<a-col :span="16">
<a-form-item label="净重">
<a-input v-decorator="[`wareSkuExtList[${index}].weight`, { rules: [{ required: true, validator: (rule, value, cb) => validatorNet(rule, value, cb, index) }] }]"
placeholder="请输入"
suffix="kg" />
</a-form-item>
</a-col>
// 毛重
validatorGross (rule, value, cbfn, index) {
const form = this.form
// 获取净重
let pkgList = form.getFieldsValue()
console.log('pkgList', pkgList)
let pkgs = pkgList.wareSkuExtList || []
let net = pkgs[index].weight
if (!value) {
cbfn('请输入毛重')
} else if (!value.trim().length) {
cbfn('请输入范围为1到99的数字')
} else if (isNaN(value)) {
cbfn('请输入范围为1到99的数字')
} else if (Number(value) > 99 || Number(value) < 1) {
cbfn('请输入范围为1到99的数字')
} else if (net) {
form.validateFields([`wareSkuExtList[${index}].weight`], { force: true })
}
cbfn()
},
// 净重
validatorNet (rule, value, cbfn, index) {
const form = this.form
// 获取净重
let pkgList = form.getFieldsValue()
let pkgs = pkgList.wareSkuExtList || []
let gross = pkgs[index].netWeight
if (!value) {
cbfn('请输入净重')
} else if (gross && (Number(value) > Number(gross))) {
cbfn('净重应小于毛重')
}
cbfn()
},
网友评论