|
|
@@ -390,6 +390,26 @@ export default {
|
|
|
const cityIndex = districtStr.indexOf('市');
|
|
|
this.form.dist = cityIndex !== -1 ? districtStr.substring(cityIndex + 1) : districtStr;
|
|
|
},
|
|
|
+ // 整单优惠:数量/金额是否已填写(0 或空视为未填)
|
|
|
+ isMeetFieldFilled(val) {
|
|
|
+ if (val === '' || val === undefined || val === null) {
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ const num = parseFloat(val)
|
|
|
+ return !isNaN(num) && num > 0
|
|
|
+ },
|
|
|
+ // 整单满扎数、整单满金额须同时填写或同时留空
|
|
|
+ validateMeetRule() {
|
|
|
+ const hasNum = this.isMeetFieldFilled(this.form.meetNum)
|
|
|
+ const hasAmount = this.isMeetFieldFilled(this.form.meetAmount)
|
|
|
+ if (hasNum && !hasAmount) {
|
|
|
+ return '请填写整单满金额'
|
|
|
+ }
|
|
|
+ if (hasAmount && !hasNum) {
|
|
|
+ return '请填写整单满扎数'
|
|
|
+ }
|
|
|
+ return ''
|
|
|
+ },
|
|
|
confirmFn() {
|
|
|
let hostFn = this.option.id ? update : add
|
|
|
if (this.option.id) {
|
|
|
@@ -436,6 +456,11 @@ export default {
|
|
|
let checkRes = validator.validation(formData, rules)
|
|
|
// 验证通过!
|
|
|
if (!checkRes) {
|
|
|
+ const meetErr = this.validateMeetRule()
|
|
|
+ if (meetErr) {
|
|
|
+ this.$msg(meetErr)
|
|
|
+ return
|
|
|
+ }
|
|
|
this.confirmFn()
|
|
|
} else {
|
|
|
this.$msg(checkRes)
|