陶杰
2024-12-29 92d14c511aa6432e1aa2f2ccf9e248625164fcea
pages/marketing/coupon/activity/index.vue
@@ -181,7 +181,7 @@
            commonRules: true,
            commonFormat: true,
            commonFormatProps: ['getStartDate', 'getEndDate'],
            rules: dateTimeRules,
            rules: dateTimeRules(),
          },
          {
            label: '使用时间:',
@@ -218,7 +218,31 @@
            commonFormatProps: ['usageStartDate', 'usageEndDate'],
            hidden: (row, item, mode) =>
              row.usageType !== 'fixed' || mode === 'view',
            rules: dateTimeRules,
            rules: (row) => {
              return [
                dateTimeRules(),
                {
                  validator: (rule, value, callback) => {
                    if (
                      Array.isArray(row.getStartDate) &&
                      row.getStartDate.filter((i) => !!i).length === 2 &&
                      Array.isArray(value) &&
                      value.filter((i) => !!i).length === 2
                    ) {
                      if (value[0] < row.getStartDate[0]) {
                        callback(new Error('使用开始时间不能小于领取开始时间'))
                      } else if (value[1] < row.getStartDate[1]) {
                        callback(new Error('使用结束时间不能小于领取结束时间'))
                      } else {
                        callback()
                      }
                    } else {
                      callback()
                    }
                  },
                },
              ]
            },
          },
          {
            label: '领取后有效时间:',
@@ -269,11 +293,23 @@
              controls: false,
            },
            unit: '张',
            rules: {
              required: true,
              message: '请输入每人限领',
              trigger: 'blur',
            },
            rules: (row) => [
              {
                required: true,
                message: '请输入每人限领',
                trigger: 'blur',
              },
              {
                validator: (rule, value, callback) => {
                  if (value > row.couponAmount) {
                    callback(new Error('每人限领不能大于发放数量'))
                  } else {
                    callback()
                  }
                },
                trigger: 'blur',
              },
            ],
          },
        ],
        extraButtons: [