2024-08-16 18:26:19 +08:00
|
|
|
|
<template>
|
|
|
|
|
<div class="app-container">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<div class="cot-box">
|
2024-09-11 17:35:10 +08:00
|
|
|
|
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="90px" style="margin: 0 auto;width: 70%">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<el-form-item label="活动名称" prop="name">
|
|
|
|
|
<el-input v-model="ruleForm.name"></el-input>
|
|
|
|
|
</el-form-item>
|
2024-08-29 11:19:48 +08:00
|
|
|
|
<el-form-item label="活动时间" prop="activeTimeType">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<div class="d-s">
|
|
|
|
|
<div class="icon-type" v-for="(item,index) in activityTimeTypeList" :key="index"
|
|
|
|
|
:class="{ 'acvtive' : index === tindex1 }" @click="Typeindex1(index)">
|
|
|
|
|
<img src="@/assets/images/wx.png" style="width: 20px;height: 20px" v-if="index != tindex1">
|
|
|
|
|
<img src="@/assets/images/xz.png" style="width: 20px;height: 20px" v-if="index == tindex1">
|
|
|
|
|
{{ item }}
|
|
|
|
|
</div>
|
|
|
|
|
<el-date-picker
|
|
|
|
|
v-model="ruleForm.activeStartTime"
|
|
|
|
|
style="width: 160px"
|
|
|
|
|
type="date"
|
2024-08-29 11:19:48 +08:00
|
|
|
|
value-format="yyyy-MM-dd"
|
2024-08-29 09:00:21 +08:00
|
|
|
|
placeholder="开始日期">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
<span style="margin: 0 5px">至</span>
|
|
|
|
|
<el-date-picker
|
|
|
|
|
v-model="ruleForm.activeEndTime"
|
|
|
|
|
style="width: 160px"
|
|
|
|
|
type="date"
|
2024-08-29 11:19:48 +08:00
|
|
|
|
value-format="yyyy-MM-dd"
|
2024-08-29 09:00:21 +08:00
|
|
|
|
placeholder="结束日期">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</div>
|
|
|
|
|
</el-form-item>
|
2024-08-29 11:19:48 +08:00
|
|
|
|
<el-form-item label="通知内容" prop="noticeContent">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<div>
|
|
|
|
|
<el-button type="text" @click="ifWrite = !ifWrite">编辑</el-button>
|
|
|
|
|
</div>
|
|
|
|
|
<el-input type="textarea" :disabled="ifWrite" v-model="ruleForm.noticeContent"
|
|
|
|
|
placeholder="请输入通知内容"></el-input>
|
|
|
|
|
</el-form-item>
|
2024-08-29 11:19:48 +08:00
|
|
|
|
<el-form-item label="活动详情" prop="activityDetails">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<el-input type="textarea" v-model="ruleForm.activityDetails" placeholder="请输入活动详情"></el-input>
|
|
|
|
|
</el-form-item>
|
2024-08-29 11:19:48 +08:00
|
|
|
|
<el-form-item label="活动奖品" prop="courtesyReward">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<div style="display: flex">
|
|
|
|
|
<div style="width: 17%">
|
|
|
|
|
<el-checkbox-group v-model="ruleForm.courtesyReward">
|
2024-09-18 17:24:03 +08:00
|
|
|
|
<div >
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<el-checkbox label="3" name="type">赠送积分</el-checkbox>
|
|
|
|
|
</div>
|
2024-09-18 17:24:03 +08:00
|
|
|
|
<div style="margin: 10px 0">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<el-checkbox label="2" name="type">赠送成长值</el-checkbox>
|
|
|
|
|
</div>
|
2024-09-19 10:41:11 +08:00
|
|
|
|
<div style="display: flex;font-size: 14px;margin: 15px 0;align-items: center">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<el-checkbox label="0" name="type">赠送优惠券</el-checkbox>
|
|
|
|
|
<img src="@/assets/images/tjb.png"
|
2024-09-19 10:41:11 +08:00
|
|
|
|
style="width: 20px;height: 20px;cursor: pointer;margin-left: 10px;"
|
2024-08-29 09:00:21 +08:00
|
|
|
|
@click="addCoupons()">
|
|
|
|
|
</div>
|
|
|
|
|
</el-checkbox-group>
|
|
|
|
|
</div>
|
2024-09-12 15:44:25 +08:00
|
|
|
|
<div style="width: 100%">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<div style="display: flex;font-size: 14px;">
|
2024-09-11 17:35:10 +08:00
|
|
|
|
<div style="width: 10%">赠送</div>
|
|
|
|
|
<el-input placeholder="请输入赠送的积分数量" style="width: 100%;"
|
2024-08-29 09:00:21 +08:00
|
|
|
|
v-model="ruleForm.points">
|
|
|
|
|
<template slot="append">积分</template>
|
|
|
|
|
</el-input>
|
|
|
|
|
</div>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<div style="display: flex;font-size: 14px;margin: 15px 0">
|
2024-09-11 17:35:10 +08:00
|
|
|
|
<div style="width: 10%">赠送</div>
|
|
|
|
|
<el-input placeholder="请输入赠送的成长值数量" style="width: 100%;"
|
2024-08-29 09:00:21 +08:00
|
|
|
|
v-model="ruleForm.growthValue">
|
|
|
|
|
<template slot="append">成长值</template>
|
|
|
|
|
</el-input>
|
|
|
|
|
</div>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
2024-09-19 10:41:11 +08:00
|
|
|
|
<div v-for="(item,index) in couponList" :key="index" style="display: flex;font-size: 14px;align-items: center;margin: 20px 0">
|
2024-09-19 08:50:24 +08:00
|
|
|
|
<div style="width: 9.5%;">赠送</div>
|
2024-09-12 15:44:25 +08:00
|
|
|
|
<el-select v-model="item.vouchersId" style="width: 45%" placeholder="请选择">
|
2024-08-29 15:14:52 +08:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="(item1,index1) in cardCouponList"
|
|
|
|
|
:key="index1"
|
|
|
|
|
:label="item1.name"
|
|
|
|
|
:value="item1.id"></el-option>
|
2024-08-29 09:00:21 +08:00
|
|
|
|
</el-select>
|
2024-09-12 15:44:25 +08:00
|
|
|
|
<el-input style="width: 45%;margin-left: 10px" v-model="item.giftCardTotal">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<template slot="append">张</template>
|
|
|
|
|
</el-input>
|
2024-09-19 10:41:11 +08:00
|
|
|
|
<img src="@/assets/images/ljt.png" style="width: 25px;height: 25px;margin-left: 10px;"
|
2024-08-29 09:00:21 +08:00
|
|
|
|
@click="deleteCoupons(index)">
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item style="text-align: center">
|
2024-08-29 11:19:48 +08:00
|
|
|
|
<el-button @click="resetForm('ruleForm')">取消</el-button>
|
2024-08-29 09:00:21 +08:00
|
|
|
|
<el-button type="primary" @click="submitRuleForm('ruleForm')">保存</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
|
</div>
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
import {
|
|
|
|
|
listActiveNewlyweds,
|
|
|
|
|
getActiveNewlyweds,
|
|
|
|
|
delActiveNewlyweds,
|
|
|
|
|
addActiveNewlyweds,
|
|
|
|
|
updateActiveNewlyweds,
|
|
|
|
|
huiActiveNewlyweds,
|
2024-08-29 11:19:48 +08:00
|
|
|
|
editActiveNewlyweds, getInfoActiveNewlyweds, insertActiveNewlyweds, editActiveNewlyweds1
|
2024-08-16 18:26:19 +08:00
|
|
|
|
} from "@/api/EventMarketing/activeNewlyweds";
|
|
|
|
|
import {getoilName, listExchange, listFavorable, looklook, looklooklook} from "@/api/EventMarketing/activeConsumption";
|
|
|
|
|
import QRCode from "qrcodejs2";
|
|
|
|
|
import {
|
|
|
|
|
delActiveFullminus,
|
|
|
|
|
editActiveFullminus,
|
|
|
|
|
getActiveFullminus,
|
|
|
|
|
updateActiveFullminus
|
|
|
|
|
} from "@/api/EventMarketing/activeFullminus";
|
2024-08-29 11:19:48 +08:00
|
|
|
|
import {listCardCoupon} from "@/api/EventMarketing/cardCoupon";
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
name: "ActiveNewlyweds",
|
2024-09-12 15:44:25 +08:00
|
|
|
|
props: ['activeId'],
|
2024-08-16 18:26:19 +08:00
|
|
|
|
data() {
|
|
|
|
|
return {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
opendetails: false,
|
|
|
|
|
looklist: [],
|
|
|
|
|
statisticsyou: {},
|
|
|
|
|
labelPosition: 'left',
|
|
|
|
|
loadingdialog: false,
|
|
|
|
|
centerDialogVisible: false,
|
|
|
|
|
pdidlist: [],//判断优惠券id
|
|
|
|
|
pddhidlist: [],//判断兑换券id
|
2024-08-16 18:26:19 +08:00
|
|
|
|
tableData: [],//优惠券
|
2024-08-29 09:00:21 +08:00
|
|
|
|
tableDatadh: [],//兑换券
|
|
|
|
|
dialogTableVisible: false,//优惠券
|
|
|
|
|
dialogTableVisibledh: false,//兑换券
|
|
|
|
|
tableDatas: [],
|
2024-08-16 18:26:19 +08:00
|
|
|
|
//请求优惠券列表时的参数
|
2024-08-29 09:00:21 +08:00
|
|
|
|
youhuiquan: {
|
|
|
|
|
name: '',
|
2024-08-16 18:26:19 +08:00
|
|
|
|
pageNum: 1,
|
|
|
|
|
pageSize: 10,
|
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
ytotal: 0,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
//请求兑换券列表时的参数
|
2024-08-29 09:00:21 +08:00
|
|
|
|
duihuanquan: {
|
|
|
|
|
name: '',
|
2024-08-16 18:26:19 +08:00
|
|
|
|
pageNum: 1,
|
|
|
|
|
pageSize: 10,
|
2024-08-29 09:00:21 +08:00
|
|
|
|
total: 0
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
dtotal: 0,
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 遮罩层
|
|
|
|
|
loading: true,
|
|
|
|
|
// 选中数组
|
|
|
|
|
ids: [],
|
|
|
|
|
// 非单个禁用
|
|
|
|
|
single: true,
|
|
|
|
|
// 非多个禁用
|
|
|
|
|
multiple: true,
|
|
|
|
|
// 显示搜索条件
|
|
|
|
|
showSearch: true,
|
|
|
|
|
// 总条数
|
|
|
|
|
ztotal: 0,
|
|
|
|
|
// 新人有礼活动表格数据
|
|
|
|
|
activeNewlywedsList: [],
|
|
|
|
|
// 弹出层标题
|
|
|
|
|
title: "",
|
|
|
|
|
// 是否显示弹出层
|
|
|
|
|
open: false,
|
|
|
|
|
// 查询参数
|
|
|
|
|
queryParams: {
|
|
|
|
|
pageNum: 1,
|
|
|
|
|
pageSize: 10,
|
|
|
|
|
chainStoreId: null,
|
|
|
|
|
storeId: null,
|
|
|
|
|
name: null,
|
|
|
|
|
activeStartTime: null,
|
|
|
|
|
activeEndTime: null,
|
|
|
|
|
courtesyReward: null,
|
|
|
|
|
activeCode: null,
|
|
|
|
|
isonline: null,
|
|
|
|
|
status: null,
|
|
|
|
|
remainderTotal: null,
|
|
|
|
|
points: null,
|
|
|
|
|
growthValue: null,
|
|
|
|
|
},
|
|
|
|
|
activeFullminusList: [],
|
|
|
|
|
// 表单参数
|
|
|
|
|
form: {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
id: "",
|
|
|
|
|
tableDatas: [],
|
|
|
|
|
courtesyReward: [],
|
|
|
|
|
activeNewlywedsChildList: [],
|
|
|
|
|
},
|
|
|
|
|
|
2024-09-11 17:35:10 +08:00
|
|
|
|
ruleForm: {
|
2024-09-12 15:44:25 +08:00
|
|
|
|
activeTimeType: 0,
|
|
|
|
|
courtesyReward: []
|
2024-09-11 17:35:10 +08:00
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
ifWrite: true,
|
|
|
|
|
tindex1: 0,
|
|
|
|
|
activityTimeTypeList: [
|
|
|
|
|
"永久有效", "自定义"
|
|
|
|
|
],
|
|
|
|
|
couponList: [],
|
2024-08-29 11:19:48 +08:00
|
|
|
|
// 优惠券列表信息
|
2024-09-12 15:44:25 +08:00
|
|
|
|
cardCouponList: [],
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// 表单校验
|
|
|
|
|
rules: {
|
|
|
|
|
name: [
|
2024-08-29 11:19:48 +08:00
|
|
|
|
{required: true, message: '活动名称不能为空', trigger: 'blur'},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
],
|
2024-08-29 11:19:48 +08:00
|
|
|
|
activeTimeType: [
|
|
|
|
|
{required: true, message: '活动时间不能为空', trigger: 'blur'},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
],
|
2024-08-29 11:19:48 +08:00
|
|
|
|
noticeContent: [
|
|
|
|
|
{required: true, message: '通知内容不能为空', trigger: 'blur'},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
],
|
2024-08-29 11:19:48 +08:00
|
|
|
|
activityDetails: [
|
|
|
|
|
{required: true, message: '活动详情不能为空', trigger: 'blur'},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
],
|
2024-08-29 11:19:48 +08:00
|
|
|
|
courtesyReward: [
|
|
|
|
|
{required: true, message: '活动奖品不能为空', trigger: 'blur'},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
],
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
created() {
|
2024-09-12 15:44:25 +08:00
|
|
|
|
if (this.activeId) {
|
|
|
|
|
this.getInfo()
|
|
|
|
|
}
|
2024-08-29 11:19:48 +08:00
|
|
|
|
this.getCardCoupon()
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
|
|
|
|
methods: {
|
2024-09-12 15:44:25 +08:00
|
|
|
|
getCardCoupon() {
|
|
|
|
|
listCardCoupon({status: 1, putType: 1}).then(res => {
|
2024-08-29 11:19:48 +08:00
|
|
|
|
this.cardCouponList = res.data.records
|
|
|
|
|
})
|
|
|
|
|
},
|
2024-09-12 15:44:25 +08:00
|
|
|
|
getInfo() {
|
|
|
|
|
getInfoActiveNewlyweds(this.activeId).then(res => {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
if (res.data) {
|
|
|
|
|
this.ruleForm = res.data
|
|
|
|
|
if (res.data.courtesyReward) this.ruleForm.courtesyReward = res.data.courtesyReward.split(",")
|
|
|
|
|
if (res.data.activeTimeType) this.tindex1 = res.data.activeTimeType
|
|
|
|
|
if (res.data.couponList) this.couponList = res.data.couponList
|
2024-09-12 15:44:25 +08:00
|
|
|
|
} else {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.ruleForm = {
|
2024-09-12 15:44:25 +08:00
|
|
|
|
activeTimeType: 0,
|
|
|
|
|
courtesyReward: []
|
2024-08-29 09:00:21 +08:00
|
|
|
|
}
|
2024-08-29 15:14:52 +08:00
|
|
|
|
this.tindex1 = 0
|
2024-08-29 09:00:21 +08:00
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
addCoupons() {
|
|
|
|
|
let data = {
|
|
|
|
|
activeGift: 0,
|
|
|
|
|
vouchersId: "",
|
|
|
|
|
giftCardTotal: "",
|
|
|
|
|
}
|
|
|
|
|
this.couponList.push(data)
|
|
|
|
|
},
|
|
|
|
|
deleteCoupons(index) {
|
|
|
|
|
this.couponList.splice(index, 1);
|
|
|
|
|
},
|
|
|
|
|
Typeindex1(index) {
|
|
|
|
|
this.tindex1 = index
|
|
|
|
|
this.ruleForm.activeTimeType = index
|
|
|
|
|
},
|
|
|
|
|
submitRuleForm(formName) {
|
2024-09-12 15:44:25 +08:00
|
|
|
|
if (this.tindex1 == 1) {
|
|
|
|
|
if (!this.ruleForm.activeStartTime || !this.ruleForm.activeEndTime) {
|
2024-08-29 11:19:48 +08:00
|
|
|
|
this.$message.error("请选择活动开始时间")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-09-18 13:34:55 +08:00
|
|
|
|
let flag = false;
|
2024-09-13 16:30:17 +08:00
|
|
|
|
if (this.ruleForm.courtesyReward && this.ruleForm.courtesyReward.includes("0")) {
|
|
|
|
|
if (!this.couponList || this.couponList.length == 0) {
|
|
|
|
|
this.$message.error("请先选择赠送优惠券信息!")
|
|
|
|
|
return;
|
2024-09-18 13:34:55 +08:00
|
|
|
|
}else {
|
|
|
|
|
this.couponList.forEach(item => {
|
|
|
|
|
if (!item.vouchersId || !item.giftCardTotal){
|
|
|
|
|
flag = true
|
|
|
|
|
}
|
|
|
|
|
})
|
2024-09-13 16:30:17 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
2024-09-18 13:34:55 +08:00
|
|
|
|
if (flag){
|
|
|
|
|
this.$message.error("请先确保赠送优惠券信息已经填写!")
|
|
|
|
|
return;
|
|
|
|
|
}
|
2024-09-13 16:30:17 +08:00
|
|
|
|
if (this.ruleForm.courtesyReward && this.ruleForm.courtesyReward.includes("3")) {
|
|
|
|
|
if (!this.ruleForm.points) {
|
|
|
|
|
this.$message.error("请输入赠送积分!")
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (this.ruleForm.courtesyReward && this.ruleForm.courtesyReward.includes("2")) {
|
|
|
|
|
if (!this.ruleForm.growthValue) {
|
|
|
|
|
this.$message.error("请输入赠送成长值!")
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.$refs[formName].validate((valid) => {
|
|
|
|
|
if (valid) {
|
|
|
|
|
if (this.ruleForm.courtesyReward) this.ruleForm.courtesyReward = this.ruleForm.courtesyReward.toString()
|
|
|
|
|
if (this.couponList) this.ruleForm.couponList = this.couponList
|
|
|
|
|
if (this.ruleForm.id) {
|
2024-08-29 11:19:48 +08:00
|
|
|
|
editActiveNewlyweds1(this.ruleForm).then(response => {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.$modal.msgSuccess("修改成功");
|
2024-09-11 17:35:10 +08:00
|
|
|
|
// this.getInfo()
|
2024-09-12 15:44:25 +08:00
|
|
|
|
this.$router.push({path: "/EventMarketing/center/index", query: {id: '6'}})
|
2024-08-29 09:00:21 +08:00
|
|
|
|
});
|
2024-09-12 15:44:25 +08:00
|
|
|
|
} else {
|
2024-08-29 11:19:48 +08:00
|
|
|
|
insertActiveNewlyweds(this.ruleForm).then(response => {
|
2024-09-12 15:44:25 +08:00
|
|
|
|
if (response.data == 1) {
|
2024-09-11 17:35:10 +08:00
|
|
|
|
this.$modal.msgSuccess("新增成功");
|
|
|
|
|
// this.getInfo()
|
2024-09-12 15:44:25 +08:00
|
|
|
|
this.$router.push({path: "/EventMarketing/center/index", query: {id: '6'}})
|
|
|
|
|
} else {
|
2024-09-11 17:35:10 +08:00
|
|
|
|
this.$modal.msgError("新增失败");
|
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
resetForm(formName) {
|
|
|
|
|
this.$refs[formName].resetFields();
|
2024-08-29 11:19:48 +08:00
|
|
|
|
this.ifWrite = true
|
2024-09-11 17:35:10 +08:00
|
|
|
|
// this.getInfo()
|
2024-09-15 20:26:35 +08:00
|
|
|
|
this.$router.push({path: "/EventMarketing/center/index",query: {activeId:this.activeId}})
|
2024-08-29 09:00:21 +08:00
|
|
|
|
},
|
2024-08-16 18:26:19 +08:00
|
|
|
|
/** 查询新人有礼活动列表 */
|
|
|
|
|
getList() {
|
|
|
|
|
this.loading = true;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
listActiveNewlyweds(this.queryParams).then(res => {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.activeFullminusList = res.data.records
|
|
|
|
|
this.ztotal = res.data.total;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
console.log('wwwwwc', res)
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.loading = false;
|
|
|
|
|
})
|
|
|
|
|
// this.loading = true;
|
|
|
|
|
// listActiveNewlyweds(this.queryParams).then(response => {
|
|
|
|
|
// this.activeNewlywedsList = response.data.records;
|
|
|
|
|
// this.total = response.data.total;
|
|
|
|
|
// this.loading = false;
|
|
|
|
|
// });
|
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
getoilName() {
|
|
|
|
|
getoilName().then(res => {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
console.log(res)
|
|
|
|
|
this.oillist = res.data
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
addDatas() {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.open = true
|
|
|
|
|
this.form = {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
id: "",
|
|
|
|
|
tableDatas: [],
|
|
|
|
|
courtesyReward: [],
|
|
|
|
|
activeNewlywedsChildList: [],
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
|
|
|
|
this.form.tableDatas = []
|
|
|
|
|
this.tableDatas = []
|
|
|
|
|
this.pdidlist = []
|
|
|
|
|
this.pddhidlist = []
|
|
|
|
|
},
|
|
|
|
|
qrcodelook(url) {
|
|
|
|
|
this.loadingdialog = true
|
|
|
|
|
this.centerDialogVisible = true
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.creatQrCode(url)
|
|
|
|
|
this.loadingdialog = false
|
|
|
|
|
}, 1000);
|
|
|
|
|
},
|
|
|
|
|
creatQrCode(url) {
|
|
|
|
|
document.getElementById("qrCode").innerHTML = ""
|
|
|
|
|
new QRCode(this.$refs.qrCodeUrl, {
|
|
|
|
|
text: url, // 二维码的内容
|
|
|
|
|
width: 300,
|
|
|
|
|
height: 300,
|
|
|
|
|
colorDark: '#000',
|
|
|
|
|
colorLight: '#fff',
|
|
|
|
|
correctLevel: QRCode.CorrectLevel.H
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 取消按钮
|
|
|
|
|
cancel() {
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.reset();
|
|
|
|
|
},
|
|
|
|
|
// 表单重置
|
|
|
|
|
reset() {
|
|
|
|
|
this.form = {
|
|
|
|
|
id: 1,
|
|
|
|
|
chainStoreId: null,
|
|
|
|
|
storeId: null,
|
|
|
|
|
name: null,
|
|
|
|
|
activeStartTime: null,
|
|
|
|
|
activeEndTime: null,
|
|
|
|
|
courtesyReward: [],
|
2024-08-29 09:00:21 +08:00
|
|
|
|
tableDatas: [],
|
|
|
|
|
activeNewlywedsChildList: [],
|
2024-08-16 18:26:19 +08:00
|
|
|
|
activeCode: null,
|
|
|
|
|
isonline: null,
|
|
|
|
|
status: null,
|
|
|
|
|
remainderTotal: null,
|
|
|
|
|
points: null,
|
|
|
|
|
growthValue: null,
|
|
|
|
|
remark: null,
|
|
|
|
|
createBy: null,
|
|
|
|
|
createTime: null,
|
|
|
|
|
updateBy: null,
|
|
|
|
|
updateTime: null
|
|
|
|
|
};
|
|
|
|
|
this.pdidlist = []
|
|
|
|
|
this.form.tableDatas = []
|
|
|
|
|
this.pddhidlist = []
|
|
|
|
|
this.tableDatas = []
|
|
|
|
|
this.resetForm("form");
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
// 请求兑换券
|
2024-08-29 09:00:21 +08:00
|
|
|
|
getlistExchange() {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.tableDatadh = []
|
2024-08-29 09:00:21 +08:00
|
|
|
|
listExchange(this.duihuanquan).then(res => {
|
|
|
|
|
if (res.code == 200) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.dialogTableVisibledh = true
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.tableDatadh = res.data.records
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.dtotal = res.data.total
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
// 请求优惠券
|
2024-08-29 09:00:21 +08:00
|
|
|
|
getlistFavorable() {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.tableData = []
|
2024-08-29 09:00:21 +08:00
|
|
|
|
listFavorable(this.youhuiquan).then(res => {
|
|
|
|
|
if (res.code == 200) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.dialogTableVisible = true
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.tableData = res.data.records
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.ytotal = res.data.total
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
// 兑换券券列表选择
|
2024-08-29 09:00:21 +08:00
|
|
|
|
Favorabledata(row) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.dialogTableVisibledh = false
|
2024-08-29 09:00:21 +08:00
|
|
|
|
if (this.pddhidlist.indexOf(row.id) > -1) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.$message.error("该兑换卡券已存在")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.pddhidlist.push(row.id)
|
|
|
|
|
console.log(row)
|
2024-08-29 09:00:21 +08:00
|
|
|
|
let data = {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
activeGift: 2, //活动奖品 0:赠送积分1:赠送优惠券 2. 赠送兑换券 3:赠送成长值 4. 赠送实物
|
|
|
|
|
goodsIds: "", //商品id
|
2024-08-29 09:00:21 +08:00
|
|
|
|
goodsName: "", //商品名称
|
2024-08-16 18:26:19 +08:00
|
|
|
|
goodsTotal: "", //商品数量
|
2024-08-29 09:00:21 +08:00
|
|
|
|
vouchersId: row.id, //券id
|
|
|
|
|
giftCardName: row.name, //赠送卡券名称
|
2024-08-16 18:26:19 +08:00
|
|
|
|
giftCardType: row.type, //券类型
|
|
|
|
|
validityZero: null,
|
|
|
|
|
validityOne: null,
|
2024-08-29 09:00:21 +08:00
|
|
|
|
validityTwo: null,
|
|
|
|
|
validity: row.validity,
|
|
|
|
|
giftCardDetail: row.cardDetail, //券详情
|
2024-08-16 18:26:19 +08:00
|
|
|
|
giftCardTime: row.validity, //券有效期
|
|
|
|
|
giftCardTotal: 1, //券数量
|
|
|
|
|
instruction: row.useInstructions, //使用说明
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.tableDatas.push(data)
|
|
|
|
|
this.$message.success("新增成功")
|
|
|
|
|
},
|
|
|
|
|
// 优惠券列表选择
|
2024-08-29 09:00:21 +08:00
|
|
|
|
chosedata(row) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.dialogTableVisible = false
|
2024-08-29 09:00:21 +08:00
|
|
|
|
if (this.pdidlist.indexOf(row.id) > -1) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.$message.error("该优惠卡券已存在")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.pdidlist.push(row.id)
|
|
|
|
|
|
2024-08-29 09:00:21 +08:00
|
|
|
|
let data = {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
activeGift: 1, //活动奖品 0:赠送积分1:赠送优惠券 2. 赠送兑换券 3:赠送成长值 4. 赠送实物
|
|
|
|
|
goodsIds: "", //商品id
|
2024-08-29 09:00:21 +08:00
|
|
|
|
goodsName: "", //商品名称
|
2024-08-16 18:26:19 +08:00
|
|
|
|
goodsTotal: "", //商品数量
|
2024-08-29 09:00:21 +08:00
|
|
|
|
vouchersId: row.id, //券id
|
|
|
|
|
giftCardName: row.name, //赠送卡券名称
|
2024-08-16 18:26:19 +08:00
|
|
|
|
giftCardType: row.discountType, //券类型
|
|
|
|
|
timeType: row.timeType,
|
|
|
|
|
validityZero: row.validityZero,
|
|
|
|
|
validityOne: row.validityOne,
|
2024-08-29 09:00:21 +08:00
|
|
|
|
validityTwo: row.validityTwo,
|
|
|
|
|
giftCardDetail: row.cardDetail, //券详情
|
2024-08-16 18:26:19 +08:00
|
|
|
|
giftCardTime: "", //券有效期
|
|
|
|
|
giftCardTotal: 1,//券数量
|
|
|
|
|
instruction: row.instruction,//使用说明
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.form.tableDatas.push(data)
|
|
|
|
|
|
|
|
|
|
this.$message.success("新增成功")
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
// 优惠券删除
|
2024-08-29 09:00:21 +08:00
|
|
|
|
deletedata(row) {
|
|
|
|
|
if (this.form.tableDatas && this.form.tableDatas.length > 0) {
|
|
|
|
|
let delIdx = -1;
|
|
|
|
|
for (let item of this.form.tableDatas) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
delIdx++;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
if (item.id === row.id) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
break
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.pdidlist.splice(delIdx, 1);
|
|
|
|
|
this.form.tableDatas.splice(delIdx, 1);
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 兑换券删除
|
2024-08-29 09:00:21 +08:00
|
|
|
|
deletedhdata(row) {
|
|
|
|
|
if (this.tableDatas && this.tableDatas.length > 0) {
|
|
|
|
|
let delIdx = -1;
|
|
|
|
|
for (let item of this.tableDatas) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
delIdx++;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
if (item.id === row.id) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
break
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.pddhidlist.splice(delIdx, 1);
|
|
|
|
|
this.tableDatas.splice(delIdx, 1);
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
lookDetail(row) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.opendetails = true
|
|
|
|
|
let data = {
|
2024-08-29 09:00:21 +08:00
|
|
|
|
id: row.id,
|
|
|
|
|
exchangeFrom: "新人有礼"
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
looklook(data).then(res => {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.looklist = res.data
|
|
|
|
|
|
2024-08-29 09:00:21 +08:00
|
|
|
|
console.log('详情', res)
|
2024-08-16 18:26:19 +08:00
|
|
|
|
})
|
2024-08-29 09:00:21 +08:00
|
|
|
|
looklooklook(row.id).then(resp => {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.statisticsyou = resp.data
|
2024-08-29 09:00:21 +08:00
|
|
|
|
console.log('优惠券详情统计', resp)
|
2024-08-16 18:26:19 +08:00
|
|
|
|
})
|
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
Deleteshan(row) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
const ids = row.id || this.ids;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.$modal.confirm('是否确认删除此条新人有礼活动的信息?').then(function () {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
return delActiveNewlyweds(ids);
|
|
|
|
|
}).then(() => {
|
|
|
|
|
this.getList();
|
|
|
|
|
this.$modal.msgSuccess("删除成功");
|
2024-08-29 09:00:21 +08:00
|
|
|
|
}).catch(() => {
|
|
|
|
|
});
|
2024-08-16 18:26:19 +08:00
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
/** 搜索按钮操作 */
|
|
|
|
|
handleQuery() {
|
|
|
|
|
this.queryParams.pageNum = 1;
|
|
|
|
|
this.getList();
|
|
|
|
|
},
|
|
|
|
|
/** 重置按钮操作 */
|
|
|
|
|
resetQuery() {
|
|
|
|
|
this.resetForm("queryForm");
|
|
|
|
|
this.handleQuery();
|
|
|
|
|
},
|
|
|
|
|
// 多选框选中数据
|
|
|
|
|
handleSelectionChange(selection) {
|
|
|
|
|
this.ids = selection.map(item => item.id)
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.single = selection.length !== 1
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.multiple = !selection.length
|
|
|
|
|
},
|
|
|
|
|
/** 新增按钮操作 */
|
|
|
|
|
handleAdd() {
|
|
|
|
|
this.reset();
|
|
|
|
|
this.open = true;
|
|
|
|
|
this.title = "添加新人有礼活动";
|
|
|
|
|
},
|
|
|
|
|
/** 修改按钮操作 */
|
2024-08-29 09:00:21 +08:00
|
|
|
|
handleUpdate(row) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.reset()
|
|
|
|
|
getActiveNewlyweds(row.id).then(response => {
|
|
|
|
|
this.form = response.data;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
if (response.data.activeNewlywedsChildList) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
this.form.tableDatas = response.data.activeNewlywedsChildList.filter(item => item.activeGift == '1')
|
|
|
|
|
this.tableDatas = response.data.activeNewlywedsChildList.filter(item => item.activeGift == '2')
|
|
|
|
|
}
|
|
|
|
|
this.open = true;
|
|
|
|
|
this.title = "编辑";
|
|
|
|
|
});
|
|
|
|
|
},
|
2024-08-29 09:00:21 +08:00
|
|
|
|
handleDeletexia(row, isonline) {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
// getActiveNewlyweds(row.id).then(response => {
|
|
|
|
|
//
|
|
|
|
|
// let data = response.data
|
|
|
|
|
// data.isonline = 1
|
|
|
|
|
// updateActiveNewlyweds(data).then(response => {
|
|
|
|
|
// this.$modal.msgSuccess("下线成功");
|
|
|
|
|
// this.open = false;
|
|
|
|
|
// this.getList();
|
|
|
|
|
// });
|
|
|
|
|
//
|
|
|
|
|
// });
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.$modal.confirm('确定上线此条新人有礼活动信息?').then(function () {
|
|
|
|
|
return editActiveNewlyweds({id: row.id, isonline: isonline});
|
2024-08-16 18:26:19 +08:00
|
|
|
|
}).then(() => {
|
|
|
|
|
this.$modal.msgSuccess("上线成功");
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.getList();
|
2024-08-29 09:00:21 +08:00
|
|
|
|
}).catch(() => {
|
|
|
|
|
});
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
|
|
|
|
submitForm() {
|
|
|
|
|
// this.form.activeNewlywedsChildList
|
|
|
|
|
this.form.activeNewlywedsChildList = this.form.tableDatas.concat(this.tableDatas);
|
|
|
|
|
this.$refs["form"].validate(valid => {
|
|
|
|
|
if (valid) {
|
|
|
|
|
console.log(this.form)
|
|
|
|
|
if (this.form.id) {
|
|
|
|
|
|
|
|
|
|
updateActiveNewlyweds(this.form).then(response => {
|
|
|
|
|
this.$modal.msgSuccess("修改成功");
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.getList();
|
|
|
|
|
});
|
2024-08-29 09:00:21 +08:00
|
|
|
|
} else {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
addActiveNewlyweds(this.form).then(response => {
|
|
|
|
|
this.$modal.msgSuccess("新增成功");
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.getList();
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
/** 提交按钮 */
|
|
|
|
|
// submitForm() {
|
|
|
|
|
// // this.form.activeNewlywedsChildList
|
|
|
|
|
// this.form.activeNewlywedsChildList = this.form.tableDatas.concat(this.tableDatas);
|
|
|
|
|
// this.$refs["form"].validate(valid => {
|
|
|
|
|
// if (valid) {
|
|
|
|
|
// if (this.form.id != null) {
|
|
|
|
|
// updateActiveNewlyweds(this.form).then(response => {
|
|
|
|
|
// this.$modal.msgSuccess("修改成功");
|
|
|
|
|
// this.open = false;
|
|
|
|
|
// this.getList();
|
|
|
|
|
// });
|
|
|
|
|
// } else {
|
|
|
|
|
// addActiveNewlyweds(this.form).then(response => {
|
|
|
|
|
// this.$modal.msgSuccess("新增成功");
|
|
|
|
|
// this.open = false;
|
|
|
|
|
// this.getList();
|
|
|
|
|
// });
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
// },
|
|
|
|
|
/** 删除按钮操作 */
|
|
|
|
|
handleDelete(row) {
|
|
|
|
|
const ids = row.id || this.ids;
|
2024-08-29 09:00:21 +08:00
|
|
|
|
this.$modal.confirm('是否确认删除此条新人有礼活动信息?').then(function () {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
return delActiveNewlyweds(ids);
|
|
|
|
|
}).then(() => {
|
|
|
|
|
this.getList();
|
|
|
|
|
this.$modal.msgSuccess("删除成功");
|
2024-08-29 09:00:21 +08:00
|
|
|
|
}).catch(() => {
|
|
|
|
|
});
|
2024-08-16 18:26:19 +08:00
|
|
|
|
},
|
|
|
|
|
/** 导出按钮操作 */
|
|
|
|
|
handleExport() {
|
|
|
|
|
this.download('business/marketingActivity/activeNewlyweds/export', {
|
|
|
|
|
...this.queryParams
|
|
|
|
|
}, `activeNewlyweds_${new Date().getTime()}.xlsx`)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
</script>
|
|
|
|
|
<style scoped lang="scss">
|
2024-08-29 09:00:21 +08:00
|
|
|
|
.box-bt {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
width: 100%;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
font-size: 18px;
|
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
|
|
|
|
|
.x-box {
|
2024-08-16 18:26:19 +08:00
|
|
|
|
background: #f9f9f9;
|
|
|
|
|
border-radius: 6px;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
padding: 15px;
|
|
|
|
|
width: 45%;
|
|
|
|
|
}
|
2024-08-29 09:00:21 +08:00
|
|
|
|
|
|
|
|
|
.cot-box {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 89vh;
|
|
|
|
|
border-radius: 8px;
|
|
|
|
|
background: #fff;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
padding: 20px;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.d-s {
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.icon-type {
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
color: #999999;
|
|
|
|
|
margin-right: 20px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.acvtive {
|
|
|
|
|
color: #FF770F !important;
|
|
|
|
|
}
|
|
|
|
|
|
2024-08-16 18:26:19 +08:00
|
|
|
|
</style>
|