This commit is contained in:
user 2023-11-08 16:38:22 +08:00
parent c1b7ef61b5
commit 94f072b247
2 changed files with 219 additions and 5 deletions

View File

@ -12,10 +12,25 @@ export function listFavorable(query) {
// 查询优惠券详细 // 查询优惠券详细
export function getFavorable(id) { export function getFavorable(id) {
return request({ return request({
url: '/business/marketingActivity/cardFavorable/' + id, url: 'business/marketingActivity/cardFavorableRecord/count' + id,
method: 'get' method: 'get'
}) })
} }
// 查询优惠券统计
export function getcount(id) {
return request({
url: 'business/marketingActivity/cardFavorableRecord/count?id=' + id,
method: 'get'
})
}
// 查询优惠券统计列表
export function getcountList(query) {
return request({
url: 'business/marketingActivity/cardFavorableRecord',
method: 'get',
params: query
})
}
// 新增优惠券 // 新增优惠券
export function addFavorable(data) { export function addFavorable(data) {

View File

@ -13,13 +13,13 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="" prop="region"> <el-form-item label="" prop="region">
<el-select v-model="queryParams.isonline" placeholder="优惠类型"> <el-select v-model="queryParams.discountType" placeholder="优惠类型">
<el-option label="满减券" value="0"></el-option> <el-option label="满减券" value="0"></el-option>
<el-option label="折扣券" value="1"></el-option> <el-option label="折扣券" value="1"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="" prop="region"> <el-form-item label="" prop="region">
<el-select v-model="queryParams.isonline" placeholder="卡券类型"> <el-select v-model="queryParams.type" placeholder="卡券类型">
<el-option label="油品券" value="0"></el-option> <el-option label="油品券" value="0"></el-option>
<el-option label="商品券" value="1"></el-option> <el-option label="商品券" value="1"></el-option>
<el-option label="通用券" value="2"></el-option> <el-option label="通用券" value="2"></el-option>
@ -105,10 +105,21 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
>修改</el-button> >修改</el-button>
<el-button
size="mini"
type="text"
@click="tableciick(scope.row)"
>统计</el-button>
<el-button
size="mini"
type="text"
v-if="scope.row.isonline == 0"
@click="ordai(scope.row)"
>下线</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -259,17 +270,90 @@
<el-button type="primary" @click="centerDialogVisible = false"> </el-button> <el-button type="primary" @click="centerDialogVisible = false"> </el-button>
</span> </span>
</el-dialog> </el-dialog>
<el-drawer
title="统计!"
:visible.sync="table"
direction="rtl"
size="50%">
<div style="box-sizing: border-box;padding: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="" prop="name">
<el-input v-model="tongji.mobile" placeholder="手机号"></el-input>
</el-form-item>
<el-form-item label="" prop="region">
<el-select v-model="tongji.status" placeholder="卡券状态">
<el-option label="已使用" value="0"></el-option>
<el-option label="未使用" value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="gettongji" >查询</el-button>
</el-form-item>
</el-form>
<div style="display: flex;align-items: center">
<div class="hui-box">
<div>已领取数量</div>
<div class="sizewit">{{fourdata.tatol}}</div>
</div>
<div class="hui-box">
<div>已使用数量</div>
<div class="sizewit">{{fourdata.usedTatal}}</div>
</div>
<div class="hui-box">
<div>未使用数量</div>
<div class="sizewit">{{fourdata.unTatal}}</div>
</div>
<div class="hui-box">
<div>过期数量</div>
<div class="sizewit">{{fourdata.outTatal}}</div>
</div>
</div>
<el-table :data="gridData">
<el-table-column property="createTime" label="领取时间"></el-table-column>
<el-table-column property="mobile" label="会员"></el-table-column>
<el-table-column property="startTime" label="有效期开始" ></el-table-column>
<el-table-column property="endTime" label="有效期结束"></el-table-column>
<el-table-column property="status" label="券状态">
</el-table-column>
<el-table-column property="exchangeFrom" label="描述信息"></el-table-column>
</el-table>
</div>
</el-drawer>
</div> </div>
</template> </template>
<script> <script>
import QRCode from 'qrcodejs2' import QRCode from 'qrcodejs2'
import { listFavorable, getFavorable, delFavorable, addFavorable, updateFavorable } from "@/api/EventMarketing/cardFavorable"; import { listFavorable, getFavorable,getcount,getcountList, delFavorable, addFavorable, updateFavorable } from "@/api/EventMarketing/cardFavorable";
export default { export default {
name: "Favorable", name: "Favorable",
data() { data() {
return { return {
table: false,
gridData: [
{
date: '2016-05-02',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-04',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-01',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-03',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}],
cities: ['1', '2', '3', '4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24'], cities: ['1', '2', '3', '4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24'],
oillist:['92#','95#','98#','0#','-10#','LNG','CNG','京92#','京95#','京0#',], oillist:['92#','95#','98#','0#','-10#','LNG','CNG','京92#','京95#','京0#',],
checkboxGroup1: ['1'], checkboxGroup1: ['1'],
@ -289,6 +373,7 @@ export default {
total: 0, total: 0,
// //
favorableList: [], favorableList: [],
fourdata:[],
// //
title: "", title: "",
// //
@ -322,10 +407,69 @@ export default {
qrCodeLink: null, qrCodeLink: null,
status: null, status: null,
}, },
tongji:{
id:'',
pageNum: 1,
pageSize: 10,
},
// //
form: {availablePeriod:[]}, form: {availablePeriod:[]},
// //
rules: { rules: {
chainStorId: [
{ required: true, message: '不能为空', trigger: 'change' }
],
storeId: [
{ required: true, message: '不能为空', trigger: 'change' }
],
isonline: [
{ required: true, message: '不能为空', trigger: 'change' }
],
name: [
{ required: true, message: '不能为空', trigger: 'change' }
],
type: [
{ required: true, message: '不能为空', trigger: 'change' }
],
discountType: [
{ required: true, message: '不能为空', trigger: 'change' }
],
oilType: [
{ required: true, message: '不能为空', trigger: 'change' }
],
fullDeduction: [
{ required: true, message: '不能为空', trigger: 'change' }
],
discountAmount: [
{ required: true, message: '不能为空', trigger: 'change' }
],
satisfiedAmount: [
{ required: true, message: '不能为空', trigger: 'change' }
],
specialDiscount: [
{ required: true, message: '不能为空', trigger: 'change' }
],
discountOffset: [
{ required: true, message: '不能为空', trigger: 'change' }
],
validity: [
{ required: true, message: '不能为空', trigger: 'change' }
],
effectiveDate: [
{ required: true, message: '不能为空', trigger: 'change' }
],
effectiveTime: [
{ required: true, message: '不能为空', trigger: 'change' }
],
availablePeriod: [
{ required: true, message: '不能为空', trigger: 'change' }
],
status: [
{ required: true, message: '不能为空', trigger: 'change' }
],
} }
}; };
}, },
@ -333,6 +477,22 @@ export default {
this.getList(); this.getList();
}, },
methods: { methods: {
gettongji(){
let data = {
pageNum: 1,
pageSize: 10,
status:this.tongji.status,
mobile:this.tongji.mobile,
id:this.tongji.id
}
getcountList(data).then(res=>{
if(res.code == 200){
this.gridData = res.data.records
}
})
},
qrcodelook(url) { qrcodelook(url) {
this.loadingdialog = true this.loadingdialog = true
this.centerDialogVisible = true this.centerDialogVisible = true
@ -431,6 +591,29 @@ export default {
this.title = "修改优惠券"; this.title = "修改优惠券";
}, },
tableciick(row){
this.table = true
this.tongji.id = row.id
getcount(row.id).then(res =>{
this.fourdata = res.data
})
getcountList(row.id).then(res=>{
this.gridData = res.data.records
})
},
ordai(row){
let data = row
data.isonline = 1
updateFavorable(data).then(res => {
if (res.code == 200) {
this.$message.success('下线成功')
this.getList()
}
})
},
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate(valid => {
@ -470,3 +653,19 @@ export default {
} }
}; };
</script> </script>
<style scoped>
.hui-box{
width: 150px ;
height: 80px;
background: #f9f9f9;
margin: 0px 10px;
box-sizing: border-box;
padding: 15px;
}
.sizewit{
font-size: 18px;
font-weight: bold;
margin: 5px 0px;
}
</style>