Sfoglia il codice sorgente

优惠券适用范围指定范围弹框筛选已选中盲票

DELL 3 anni fa
parent
commit
ee16809d9a

+ 9 - 2
src/views/business/coupon/add.vue

@@ -73,6 +73,7 @@
      <el-col :span="18" :offset="2">
        <div v-if="addData.useArea === 1" style="padding: 0 20px">
          <el-table :data="addData.ticketBoxList" height="300px">
+           <el-table-column label="盲票ID" prop="boxId" min-width="90" />
            <el-table-column label="盲票图片" prop="picUrl" align="center">
              <template slot-scope="{row}">
                <a target="_black" v-if="row.picUrl && row.picUrl.split(',').length > 0" :href="`${IMG_URL + row.picUrl}`"><img :src="`${IMG_URL + row.picUrl.split(',')[0]}`" style="max-height: 37px;max-width: 54px"></a>
@@ -98,7 +99,7 @@
            </el-table-column>
          </el-table>
          <br>
-         <el-button v-if="!readonly" type="primary" size="small" plain @click="selectShow = true">选择盲票</el-button> <span style="margin-left: 10px">已选盲票({{ addData.ticketBoxList.length }})</span>
+         <el-button v-if="!readonly" type="primary" size="small" plain @click="funSelectShow">选择盲票</el-button> <span style="margin-left: 10px">已选盲票({{ addData.ticketBoxList.length }})</span>
        </div>
      </el-col>
     </el-row>
@@ -111,7 +112,7 @@
     </el-row>
 
     <!-- 弹出层 -->
-    <SelectTicket :select-show="selectShow" :value="addData.ticketBoxList" @close="selectShow = false" @selectTicket="selectTicket"   v-if="selectShow"/>
+    <SelectTicket :select-show="selectShow" :value="addData.ticketBoxList" :excludeBoxIds="excludeBoxIds" @close="selectShow = false" @selectTicket="selectTicket"   v-if="selectShow"/>
   </div>
 </template>
 <script>
@@ -141,6 +142,7 @@ export default {
         minOrderAmt:0,
       },
       addIng: false,
+      excludeBoxIds: [],
       selectShow: false,
       rules: {
         title: [{ required: true, message: '请输入券名称', trigger: 'blur' }],
@@ -185,6 +187,11 @@ export default {
     }
   },
   methods: {
+    funSelectShow(){
+      this.excludeBoxIds = this.addData.ticketBoxList.map(item => { return item.boxId })
+      console.log(this.excludeBoxIds)
+      this.selectShow = true
+    },
     selectTicket(select) {
       this.addData.ticketBoxList = this.addData.ticketBoxList.concat(select)
     },

+ 8 - 0
src/views/business/coupon/components/selectTicket.vue

@@ -85,6 +85,10 @@ export default {
       type: Boolean,
       default: false,
     },
+    excludeBoxIds:{
+      type: Array,
+      default: []
+    },
   },
   data() {
     return {
@@ -113,6 +117,10 @@ export default {
       if (reset) {
         this.queryParams = { pageNum: 1, pageSize: 10 }
       }
+      if(this.excludeBoxIds){
+        this.queryParams.excludeBoxIds = this.excludeBoxIds
+      }
+
       getTicketList('pageNum='+this.queryParams.pageNum + '&pageSize='+this.queryParams.pageSize+'&', this.queryParams).then(res => {
         this.loading = false
         if (res.code === 0) {