fuliqi
2024-01-24 29c1e7eb5ac16e90d8991a86c1c071bc312ec8d9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<template>
    <div>
        <p class="basicTip">
            小贴士:为防止失真热区图片尺寸需与区域大小严格一致
        </p>
        <div>
            <el-form-item label="热区图片:">
                <custom-upload-img
                  @handle-success="handleSuccess"
                  @handle-remove="handleRemove"
                  :fileList="fileList"
                  :form="form"
                  :isHot="true"
                >
                </custom-upload-img>
            </el-form-item>
            <el-form-item label="活动详情:" :required="true">
                <el-input class="diyInput" disabled v-model="form.content" :title="form.content" placeholder="请选择一个活动">
                    <el-button id="append" @click="selectedItem" slot="append">选择活动</el-button>
                </el-input>
            </el-form-item>
        </div>
        <pro-activity-selected  :show.sync ='selectedDialog.show' @selected-coupon="selectedCoupon" :title="selectedDialog.title" :multipleSelected="false">
            <el-table-column>
                  <template slot-scope="scope">
                    <el-button type="success" @click="choiceItem(scope.row)" size="mini">添加</el-button>
                  </template>
            </el-table-column>
       </pro-activity-selected>
    </div>
</template>
 
<script>
import proActivitySelected from '@/views/diy-form/set-up/components/selectLists/proActivitySelected.vue'
import { mapMutations } from 'vuex'
export default {
  props: ['form'],
  components: { proActivitySelected },
  data () {
    return {
      selectedDialog: {
        show: false,
        title: '选择活动'
      }
    }
  },
  computed: {
    fileList () {
      return this.form.fileUrl ? [{ url: this.form.fileUrl, id: this.form.fileId }] : []
    }
  },
  methods: {
    ...mapMutations(['updateCurrent']),
    /**
     * 当活动选择优惠券时
     */
    selectedCoupon (val) {
      let str = null
      switch (val) {
        case '5':
          str = '把用户引导到优惠券领取界面'
          break
        case '4':
          str = '把用户引导到限时秒杀界面'
          break
        case '7':
          str = '把用户引导到活动中心'
          break
        default:
          break
      }
      this.updateCurrent({ content: str, promotionId: null, promotionType: val })
    },
    // 打开选择活动弹出框
    selectedItem () {
      this.selectedDialog.show = true
    },
    // 选择活动
    choiceItem (row) {
      this.selectedDialog.show = false
      // 活动类型{1:满减2:满赠3:盲盒抽奖4:限时抢购5:优惠券,6:拼团活动,7:活动中心}
      const promotionType = row.promotionType
      this.updateCurrent({ content: row.promotionName, promotionId: row.promotionId, promotionType })
    },
    /**
     * 获取上传成功的图片
     */
    handleSuccess (data) {
      this.updateCurrent({ fileUrl: data.url, fileId: data.id })
    },
    /**
     * 移除图片
     */
    handleRemove (data) {
      this.updateCurrent({ fileUrl: null, fileId: null })
    }
  }
}
</script>
 
<style>
 
</style>