|  | @@ -11,17 +11,21 @@
 | 
	
		
			
				|  |  |                      <el-option v-for="item in groupList" :key="item.id" :value="item.id" :label="item.name"></el-option>
 | 
	
		
			
				|  |  |                  </el-select>
 | 
	
		
			
				|  |  |              </el-form-item>
 | 
	
		
			
				|  |  | -            <el-row :gutter="10" v-for="(item, index) in form.rewordList" :key="index">
 | 
	
		
			
				|  |  | +            <el-row :gutter="10" v-for="(reword, index) in form.rewordList" :key="index">
 | 
	
		
			
				|  |  |                  <el-col :span="12">
 | 
	
		
			
				|  |  | -                    <el-form-item :label="`奖品${++index}`" prop="name" label-width="100PX">
 | 
	
		
			
				|  |  | -                        <el-input v-model.trim="item.name"
 | 
	
		
			
				|  |  | +                    <el-form-item :label="`奖品${index + 1}`"
 | 
	
		
			
				|  |  | +                            label-width="100PX"
 | 
	
		
			
				|  |  | +                            :prop="'rewordList.' + index + '.name'"
 | 
	
		
			
				|  |  | +                            :rules="[{required: true, message:'请输入活动名称', trigger: 'blur'}]">
 | 
	
		
			
				|  |  | +                        <el-input v-model.trim="reword.name"
 | 
	
		
			
				|  |  |                                  autocomplete="off"
 | 
	
		
			
				|  |  |                                  placeholder="请输入奖品名称"></el-input>
 | 
	
		
			
				|  |  |                      </el-form-item>
 | 
	
		
			
				|  |  |                  </el-col>
 | 
	
		
			
				|  |  |                  <el-col :span="7">
 | 
	
		
			
				|  |  | -                    <el-form-item prop="chances">
 | 
	
		
			
				|  |  | -                        <el-input v-model.trim="item.chances"
 | 
	
		
			
				|  |  | +                    <el-form-item :prop="'rewordList.' + index + '.chances'"
 | 
	
		
			
				|  |  | +                            :rules="[{required: true, validator: validNumber, trigger: 'blur'}]">
 | 
	
		
			
				|  |  | +                        <el-input v-model.trim="reword.chances"
 | 
	
		
			
				|  |  |                                  type="number"
 | 
	
		
			
				|  |  |                                  autocomplete="off"
 | 
	
		
			
				|  |  |                                  placeholder="请输入中奖概率">
 | 
	
	
		
			
				|  | @@ -30,8 +34,9 @@
 | 
	
		
			
				|  |  |                      </el-form-item>
 | 
	
		
			
				|  |  |                  </el-col>
 | 
	
		
			
				|  |  |                  <el-col :span="5">
 | 
	
		
			
				|  |  | -                    <el-form-item prop="stock">
 | 
	
		
			
				|  |  | -                        <el-input v-model.trim="item.stock"
 | 
	
		
			
				|  |  | +                    <el-form-item :prop="'rewordList.' + index + '.stock'"
 | 
	
		
			
				|  |  | +                            :rules="[{required: true, validator: validNumber1, trigger: 'blur'}]">
 | 
	
		
			
				|  |  | +                        <el-input v-model.trim="reword.stock"
 | 
	
		
			
				|  |  |                                  type="number"
 | 
	
		
			
				|  |  |                                  autocomplete="off"
 | 
	
		
			
				|  |  |                                  placeholder="请输入库存">
 | 
	
	
		
			
				|  | @@ -62,11 +67,31 @@ import pagination from "@/components/Pagination/index";
 | 
	
		
			
				|  |  |  import dayjs from 'dayjs';
 | 
	
		
			
				|  |  |  import cleanDeep from 'clean-deep';
 | 
	
		
			
				|  |  |  import { luckDrawPrizeAdd } from './api'
 | 
	
		
			
				|  |  | +const validNumber1 = (rule, value, callback) => {
 | 
	
		
			
				|  |  | +    if (value == '' && typeof value == 'string' || value == null) {
 | 
	
		
			
				|  |  | +        callback(new Error('请输入库存'))
 | 
	
		
			
				|  |  | +    } else if (value < 0) {
 | 
	
		
			
				|  |  | +        callback(new Error('输入值不能小于0'))
 | 
	
		
			
				|  |  | +    } else {
 | 
	
		
			
				|  |  | +        callback()
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +const validNumber = (rule, value, callback) => {
 | 
	
		
			
				|  |  | +    if (value == '' && typeof value == 'string' || value == null) {
 | 
	
		
			
				|  |  | +        callback(new Error('请输入中奖概率'))
 | 
	
		
			
				|  |  | +    } else if (value < 0) {
 | 
	
		
			
				|  |  | +        callback(new Error('输入值不能小于0'))
 | 
	
		
			
				|  |  | +    } else {
 | 
	
		
			
				|  |  | +        callback()
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |      components: { pagination, Tooltip, },
 | 
	
		
			
				|  |  |      props: ['groupList', 'close', 'getList'],
 | 
	
		
			
				|  |  |      data () {
 | 
	
		
			
				|  |  |          return {
 | 
	
		
			
				|  |  | +            validNumber1: validNumber1,
 | 
	
		
			
				|  |  | +            validNumber: validNumber,
 | 
	
		
			
				|  |  |              form: {
 | 
	
		
			
				|  |  |                  groupId: null,
 | 
	
		
			
				|  |  |                  rewordList: [{
 | 
	
	
		
			
				|  | @@ -77,11 +102,7 @@ export default {
 | 
	
		
			
				|  |  |                  memo: null
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  |              rules: {
 | 
	
		
			
				|  |  | -                name: [{required: true, message:'请输入活动名称', trigger: 'blur'}],
 | 
	
		
			
				|  |  | -                groupId: [{required: true, message:'请选择所属活动', trigger: 'change'}],
 | 
	
		
			
				|  |  | -                chances: [{required: true, message:'请输入中奖概率', trigger: 'blur'}],
 | 
	
		
			
				|  |  | -                stock: [{required: true, message:'请输入库存', trigger: 'blur'}],
 | 
	
		
			
				|  |  | -                enabled: [{required: true, message:'请选择是否启用', trigger: 'change'}]
 | 
	
		
			
				|  |  | +                groupId: [{required: true, message:'请选择所属活动', trigger: 'change'}]
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  |              pageInfo: {
 | 
	
		
			
				|  |  |                  // 分页规则
 |