Procházet zdrojové kódy

fix: 修正部分字段

Sun před 3 roky
rodič
revize
39e40ab382
1 změnil soubory, kde provedl 27 přidání a 17 odebrání
  1. 27 17
      src/views/business/coupon/add.vue

+ 27 - 17
src/views/business/coupon/add.vue

@@ -49,13 +49,13 @@
           </el-form-item>
           <el-form-item v-if="addData.type === 1" label="使用范围:" prop="useArea">进票门店</el-form-item>
           <el-form-item v-else label="使用范围:" prop="useArea">
-            <el-radio-group v-model="useArea" :disabled="readonly">
-              <el-radio label="all">所有盲票</el-radio>
-              <el-radio label="spec">指定盲票</el-radio>
+            <el-radio-group v-model="addData.useArea" :disabled="readonly">
+              <el-radio :label="0">所有盲票</el-radio>
+              <!-- <el-radio :label="1">指定盲票</el-radio> -->
             </el-radio-group>
           </el-form-item>
         </el-form>
-        <div v-if="useArea === 'spec'" style="padding: 0 20px">
+        <div v-if="addData.useArea === 1" style="padding: 0 20px">
           <el-table :data="addData.ticketBoxList" height="300px">
             <el-table-column label="盲票图片" prop="picUrl" align="center" width="80">
               <template slot-scope="{row}">
@@ -114,21 +114,33 @@ export default {
       id: this.$route.query.id,
       readonly: this.$route.name === 'View',
       addData: {
-        ticketBoxList:[]
+        ticketBoxList:[],
+        useArea: 0
       },
       addIng: false,
       rules: {
         title: [{ required: true, message: '请输入券名称', trigger: 'blur' }],
         type: [{ required: true, message: '请输入券类型', trigger: 'blur' }],
-        quantity: [{ required: true, message: '请输入券类型', trigger: 'blur' }],
-        picUrl: [{ required: true, message: '请输入券类型', trigger: 'blur' }],
-        discount: [{ required: true, message: '请输入券面值', trigger: 'blur' }],
+        quantity: [
+          { required: true, message: '请输入券发放数量', trigger: 'blur' },
+          { min: 0, message: '请输入正确的数量', trigger: 'blur' }
+        ],
+        discount: [
+          { required: true, message: '请输入券面值', trigger: 'blur' },
+          { pattern: /^([1-9]\d*(\.\d{1,2})?|([0](\.([0][1-9]|[1-9]\d{0,1}))))$/, message: "请输入正确的面值,最多两位小数", trigger: ["blur", "change"] }
+        ],
         channelSharedRate: [{ required: true, message: '请输入门店默认承担比例', trigger: 'blur' }],
-        minOrderAmt: [{ required: true, message: '请输入最低消费金额', trigger: 'blur' }],
-        dueDays: [{ required: true, message: '请输入有效期', trigger: 'blur' }],
-        description: [{ required: true, message: '请输入使用说明', trigger: 'blur' }]
-      },
-      useArea: 'all'
+        minOrderAmt: [
+          { required: true, message: '请输入最低消费金额', trigger: 'blur' },
+          { pattern: /^([1-9]\d*(\.\d{1,2})?|([0](\.([0][1-9]|[1-9]\d{0,1}))))$/, message: "请输入正确的金额,最多两位小数", trigger: ["blur", "change"] }
+        ],
+        dueDays: [
+          { required: true, message: '请输入有效期', trigger: 'blur' },
+          { pattern: /^([1-9]\d*)$/, message: "请输入正确的数字", trigger: ["blur", "change"] }
+        ],
+        description: [{ required: true, message: '请输入使用说明', trigger: 'blur' }],
+        useArea: [{ required: true, message: '请选择使用范围', trigger: 'blur' }]
+      }
     }
   },
   created() {
@@ -136,9 +148,7 @@ export default {
       getCouponDetail(this.id).then(res => {
         this.addData = res.data
         this.addData.type = JSON.parse(res.data.type).value
-        if (res.data.ticketBoxList instanceof Array && res.data.ticketBoxList.length > 0) {
-          this.useArea = 'spec'
-        }
+        this.addData.useArea = JSON.parse(res.data.useArea).value
       })
     }
   },
@@ -147,7 +157,7 @@ export default {
       this.$refs.addItem.validate((valid, items) => {
         if (valid) {
           this.addIng = true
-          if(this.useArea === 'spec') {
+          if(this.addData.useArea === 1) {
             this.addData.boxIds = this.addData.ticketBoxList.map(item => { return item.boxId }).toString()
           }
           addCoupon(this.addData).then(res => {