前端
This commit is contained in:
parent
00386746aa
commit
2a1e878492
@ -42,3 +42,9 @@ export function delExchange(id) {
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
export function getqueryGoods() {
|
||||
return request({
|
||||
url: 'business/convenience/goods/queryGoods',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
@ -51,7 +51,15 @@ export function deleteList(id) {
|
||||
|
||||
export function getoilnum(id) {
|
||||
return request({
|
||||
url: 'petrolStationManagement/oilNumber/getOilPrice/'+id,
|
||||
url: 'business/petrolStationManagement/oilNumber/getOilPrice/'+id,
|
||||
method: 'get',
|
||||
|
||||
})
|
||||
}
|
||||
// 统计
|
||||
export function getstatistics() {
|
||||
return request({
|
||||
url: 'business/marketingActivity/cardFuelRecord/selectFuelRecordCount',
|
||||
method: 'get',
|
||||
|
||||
})
|
||||
|
@ -142,7 +142,7 @@
|
||||
</el-card>
|
||||
<!-- 添加或修改兑换券对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="40%" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="100px">
|
||||
<el-form ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="140px">
|
||||
<!-- <el-form-item label="所属连锁店id" prop="chainStorId">-->
|
||||
<!-- <el-input v-model="form.chainStorId" placeholder="请输入所属连锁店id" />-->
|
||||
<!-- </el-form-item>-->
|
||||
@ -160,8 +160,16 @@
|
||||
</el-radio-group>
|
||||
<!-- <p v-if="form.type == 2" style="color: red">洗车卡为不限次数卡,仅在有效期内可用,如按次数,请选择洗车券</p>-->
|
||||
</el-form-item>
|
||||
<el-form-item label="选择兑换商品" prop="giftName">
|
||||
<el-input type="textarea" v-model="form.giftName" placeholder="请输入兑换礼品名"></el-input>
|
||||
<el-form-item label="选择兑换商品" prop="giftId">
|
||||
<!-- <el-input type="textarea" v-model="form.giftName" placeholder="请输入兑换礼品名"></el-input>-->
|
||||
<el-select v-model="form.giftId" placeholder="请选择" @change="change" >
|
||||
<el-option
|
||||
v-for="dict in goodsList"
|
||||
:key="dict.id.toString()"
|
||||
:label="dict.name"
|
||||
:value="dict.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="卡券有效期" prop="validity">
|
||||
<el-input type="number" placeholder="请输入卡券有效期" v-model="form.validity">
|
||||
@ -211,13 +219,15 @@ import {
|
||||
getExchange,
|
||||
delExchange,
|
||||
addExchange,
|
||||
updateExchange
|
||||
updateExchange,
|
||||
getqueryGoods
|
||||
} from '@/api/EventMarketing/cardExchange'
|
||||
|
||||
export default {
|
||||
name: 'Exchange',
|
||||
data() {
|
||||
return {
|
||||
goodsList:[],
|
||||
labelPosition:'left',
|
||||
centerDialogVisible: false,
|
||||
loadingdialog:true,
|
||||
@ -290,6 +300,11 @@ export default {
|
||||
|
||||
},
|
||||
methods: {
|
||||
change(e){
|
||||
console.log(e)
|
||||
this.form.giftId = e
|
||||
|
||||
},
|
||||
qrcodelook(url) {
|
||||
this.loadingdialog = true
|
||||
this.centerDialogVisible = true
|
||||
@ -317,6 +332,10 @@ export default {
|
||||
this.total = response.data.total
|
||||
this.loading = false
|
||||
})
|
||||
getqueryGoods().then(res=>{
|
||||
console.log(res)
|
||||
this.goodsList = res.data
|
||||
})
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
@ -377,6 +396,7 @@ export default {
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
console.log(this.form)
|
||||
this.$refs['form'].validate(valid => {
|
||||
if (valid) {
|
||||
if (this.form.id != null) {
|
||||
|
@ -50,65 +50,115 @@
|
||||
|
||||
</div>
|
||||
</el-card>
|
||||
<div class="tj">
|
||||
<div class="sshi">
|
||||
<el-card class="kar" >
|
||||
<div class="tj-num">总发卡量</div>
|
||||
</el-card>
|
||||
<el-card class="kar" v-for="(item,index) in onelist" :key="index" >
|
||||
<div class="ds" >
|
||||
<div class="tjaocuo">
|
||||
|
||||
<div class="tj-num">
|
||||
面值:{{item.cardAmount || 0}}
|
||||
<div class="sshi">
|
||||
<div class="tj-text">总发卡量</div>
|
||||
<el-divider></el-divider>
|
||||
<div class="tj-num" v-if="onelist&&onelist.length == 0 ">暂无数据...</div>
|
||||
<div>
|
||||
</div>
|
||||
<div class="ds"v-for="(item,index) in onelist" :key="index" >
|
||||
|
||||
<div class="tj-num">
|
||||
<div class="one-size">
|
||||
{{item.cardAmount || 0}}
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
总发卡金额:{{item.total || 0}}
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
总数量:{{item.count || 0}}
|
||||
<div >
|
||||
面值
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-card>
|
||||
<div class="tj-num">
|
||||
<div class="two-size">
|
||||
{{item.total || 0}}
|
||||
</div>
|
||||
<div>
|
||||
总发卡金额
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
<div class="three-size">{{item.count || 0}}</div>
|
||||
<div>
|
||||
总数量
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="sshi">
|
||||
<el-card class="kar" >
|
||||
<div class="tj-num">已使用卡量</div>
|
||||
</el-card>
|
||||
<el-card class="kar" v-for="(item,index) in twolist" :key="index" >
|
||||
<div class="ds">
|
||||
<div class="tj-text">已使用卡量</div>
|
||||
<el-divider></el-divider>
|
||||
<div class="tj-num" v-if="twolist&&twolist.length == 0 ">暂无数据...</div>
|
||||
<div>
|
||||
</div>
|
||||
<div class="ds"v-for="(item,index) in twolist" :key="index" >
|
||||
|
||||
<div class="tj-num">
|
||||
面值:{{item.cardAmount || 0}}
|
||||
<div class="tj-num">
|
||||
<div class="one-size">
|
||||
{{item.cardAmount || 0}}
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
总发卡金额:{{item.total || 0}}
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
总数量:{{item.count || 0}}
|
||||
<div >
|
||||
面值
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-card>
|
||||
<div class="tj-num">
|
||||
<div class="two-size">
|
||||
{{item.total || 0}}
|
||||
</div>
|
||||
<div>
|
||||
总发卡金额
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
<div class="three-size">{{item.count || 0}}</div>
|
||||
<div>
|
||||
总数量
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="sshi">
|
||||
<el-card class="kar" >
|
||||
<div class="tj-num">未使用卡量</div>
|
||||
</el-card>
|
||||
<el-card class="kar" v-for="(item,index) in threelist" :key="index" >
|
||||
<div class="ds">
|
||||
<div class="tj-text">未使用卡量</div>
|
||||
<el-divider></el-divider>
|
||||
<div class="tj-num" v-if="threelist&&threelist.length == 0 ">暂无数据...</div>
|
||||
<div>
|
||||
</div>
|
||||
<div class="ds"v-for="(item,index) in threelist" :key="index" >
|
||||
|
||||
<div class="tj-num">
|
||||
面值:{{item.cardAmount || 0}}
|
||||
<div class="tj-num">
|
||||
<div class="one-size">
|
||||
{{item.cardAmount || 0}}
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
总发卡金额:{{item.total || 0}}
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
总数量:{{item.count || 0}}
|
||||
<div >
|
||||
面值
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
<div class="two-size">
|
||||
{{item.total || 0}}
|
||||
</div>
|
||||
<div>
|
||||
总发卡金额
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="tj-num">
|
||||
<div class="three-size">{{item.count || 0}}</div>
|
||||
<div>
|
||||
总数量
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</el-card>
|
||||
</div>
|
||||
|
||||
|
||||
@ -452,9 +502,8 @@ import {
|
||||
.tj{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
|
||||
justify-content: space-between;
|
||||
margin-bottom: 20px;
|
||||
|
||||
}
|
||||
.kar{
|
||||
width: 100%;
|
||||
@ -462,14 +511,38 @@ import {
|
||||
margin-bottom: 10px;
|
||||
|
||||
}
|
||||
.one-size{
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
}
|
||||
.two-size{
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #78b0fb;
|
||||
}
|
||||
.three-size{
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #f73f3f;
|
||||
}
|
||||
.ds{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background: #f4f4f4;
|
||||
border-radius: 6px;
|
||||
margin-bottom: 15px;
|
||||
box-sizing: border-box;
|
||||
padding: 15px 5px;
|
||||
}
|
||||
.tj-text{
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.tj-num{
|
||||
margin: 5px auto;
|
||||
font-size: 28px;
|
||||
//font-size: 28px;
|
||||
color: #666;
|
||||
text-align: center;
|
||||
}
|
||||
@ -494,5 +567,21 @@ import {
|
||||
}
|
||||
.sshi{
|
||||
width: 33%;
|
||||
background: #FFFFFF;
|
||||
box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%);
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
border-radius: 6px;
|
||||
//background: #f9f9f9;
|
||||
}
|
||||
.tjaocuo{
|
||||
width: 100%;
|
||||
margin-bottom: 15px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
</style>
|
||||
|
@ -30,6 +30,20 @@
|
||||
<el-button type="primary" style="margin-left: 20px" icon="el-icon-search" @click="getlist">搜索</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
<el-card style="margin-bottom: 15px">
|
||||
<div style="margin-bottom: 15px">统计</div>
|
||||
<el-divider></el-divider>
|
||||
<div class="wrap-box">
|
||||
<div class="tjbox" v-for="(item,index) in tjlist" :key="index" >
|
||||
<div>油品名称: <span class="cu">{{item.oilName}}</span> </div>
|
||||
<div>总参与人数: <span class="cu">{{item.peoples}}</span></div>
|
||||
<div>售出总金额: <span class="cu">{{item.money}}</span></div>
|
||||
<div>售出总升数: <span class="cu">{{item.litres}}</span></div>
|
||||
</div>
|
||||
</div>
|
||||
</el-card>
|
||||
|
||||
|
||||
<el-card style="margin-bottom: 20px">
|
||||
<el-button type="primary" icon="el-icon-plus" style="margin-bottom: 10px " @click="addoilBlock()">新增囤油卡</el-button>
|
||||
<el-alert
|
||||
@ -41,76 +55,98 @@
|
||||
:data="tableData"
|
||||
style="width: 100%">
|
||||
<el-table-column
|
||||
label="序号"
|
||||
type="index"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="lockupPrice"
|
||||
label="囤油锁定价(元)/L"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="oilPrice"
|
||||
label="当前挂牌价(元)/L"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="gbPrice"
|
||||
label="当前国标价(元)/L"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="type"
|
||||
label="油卡类型"
|
||||
label="活动时间"
|
||||
width="330"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag>{{scope.row.type}}</el-tag>
|
||||
<div style="display: flex;align-items: center">
|
||||
<div>{{scope.row.createTime}}</div>
|
||||
<div> --- </div>
|
||||
<div>{{scope.row.endTime}}</div>
|
||||
</div>
|
||||
|
||||
<!-- <el-tag>{{scope.row.type}}</el-tag>-->
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="oilType"
|
||||
label="油品"
|
||||
>
|
||||
prop="type"
|
||||
label="限制时间"
|
||||
width="350"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div style="display: flex;align-items: center" v-if="scope.row.stipulateTimeS">
|
||||
<div>{{scope.row.stipulateTimeS}}</div>
|
||||
<div> --- </div>
|
||||
<div>{{scope.row.stipulateTimeE}}</div>
|
||||
</div>
|
||||
|
||||
<!-- <el-tag>{{scope.row.type}}</el-tag>-->
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="oilType"-->
|
||||
<!-- label="油品"-->
|
||||
<!-- >-->
|
||||
<!-- </el-table-column>-->
|
||||
<el-table-column
|
||||
prop="rechargeBalance"
|
||||
label="充值金额"
|
||||
label="充值金额(元)"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag>{{scope.row.rechargeBalance}}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="lockupPrice"
|
||||
label="锁价单价"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag>{{scope.row.lockupPrice}}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="lockupPrice"-->
|
||||
<!-- label="锁价单价"-->
|
||||
<!-- >-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <el-tag>{{scope.row.lockupPrice}}</el-tag>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<el-table-column
|
||||
prop="incomeLitres"
|
||||
label="升数"
|
||||
label="所得升数(L)"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag>{{scope.row.incomeLitres}}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="points"
|
||||
label="赠送积分"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag>{{scope.row.points}}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="activeTime"
|
||||
label="活动时间"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.activeTime == 1">不限时间</span>
|
||||
<span v-if="scope.row.activeTime == 2">自定义时间</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="activityProgress"
|
||||
label="活动进度"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag type="info"v-if="scope.row.activityProgress == 2">已结束</el-tag>
|
||||
<el-tag type="success" v-if="scope.row.activityProgress == 1">进行中</el-tag>
|
||||
<el-tag type="danger" v-if="scope.row.activityProgress == 0">待开始</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<!-- <el-table-column-->
|
||||
<!-- prop="points"-->
|
||||
<!-- label="赠送积分"-->
|
||||
<!-- >-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <el-tag>{{scope.row.points}}</el-tag>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
|
||||
|
||||
<el-table-column
|
||||
prop="activeStatus"
|
||||
label="状态"
|
||||
label="活动状态"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
|
||||
@ -125,11 +161,7 @@
|
||||
</el-switch>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
align="center"
|
||||
label="更新时间">
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column
|
||||
label="编辑"
|
||||
>
|
||||
@ -161,27 +193,20 @@
|
||||
center>
|
||||
|
||||
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="80px" class="demo-ruleForm">
|
||||
<div style="display: flex; align-items: center ">
|
||||
<el-form-item label="油品类型" prop="oilType">
|
||||
<el-select v-model="ruleForm.oilType" placeholder="请选择" @change="getoiltype" >
|
||||
<el-option
|
||||
v-for="dict in oilList"
|
||||
:key="dict.id.toString()"
|
||||
:label="dict.oilName"
|
||||
:value="dict.id.toString()">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<div style="margin-left: 10px" v-if="oilPrice&&gbPrice">今日油价:<span style="color: red">{{oilPrice || ''}}</span> 元/L 国标油价:<span style="color: red">{{oilPrice || ''}}</span>元/L </div>
|
||||
</div>
|
||||
|
||||
<el-form-item label="油品类型" prop="oilType">
|
||||
<el-select v-model="ruleForm.oilType" placeholder="请选择" >
|
||||
<el-option
|
||||
v-for="dict in oilList"
|
||||
:key="dict.id.toString()"
|
||||
:label="dict.oilName"
|
||||
:value="dict.id.toString()">
|
||||
</el-option>
|
||||
</el-select>
|
||||
|
||||
<!-- <el-radio-group v-model="ruleForm.oilType" >-->
|
||||
<!-- <el-radio-->
|
||||
<!-- v-for="dict in oilList"-->
|
||||
<!-- :key="dict.id"-->
|
||||
<!-- :label="dict.oilName"-->
|
||||
<!-- :value="dict.id"-->
|
||||
<!-- />-->
|
||||
<!-- </el-radio-group>-->
|
||||
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="锁价单价" prop="lockupPrice">
|
||||
<el-input v-model="ruleForm.lockupPrice" min="1">
|
||||
@ -255,12 +280,15 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getList,oilName,addList,eitList,getById,getoilnum} from "@/api/EventMarketing/oilBlock";
|
||||
import { getList,oilName,addList,eitList,getById,getoilnum,getstatistics} from "@/api/EventMarketing/oilBlock";
|
||||
export default {
|
||||
dicts: ['oil_type'],
|
||||
name: 'index',
|
||||
data(){
|
||||
return{
|
||||
gbPrice:null,
|
||||
oilPrice:null,
|
||||
tjlist:[],
|
||||
value:'',
|
||||
type:0,
|
||||
centerDialogVisible:false,
|
||||
@ -344,7 +372,6 @@
|
||||
},
|
||||
'ruleForm.lockupPrice':{
|
||||
handler: function() {
|
||||
|
||||
if(this.ruleForm.rechargeBalance != 0 && this.ruleForm.lockupPrice != 0 ){
|
||||
this.ruleForm.incomeLitres = this.ruleForm.rechargeBalance / this.ruleForm.lockupPrice
|
||||
|
||||
@ -366,8 +393,19 @@
|
||||
},
|
||||
|
||||
methods:{
|
||||
//
|
||||
//
|
||||
|
||||
getoiltype(e){
|
||||
|
||||
getoilnum(e).then(res=>{
|
||||
console.log(res)
|
||||
if(res.code == 200){
|
||||
this.gbPrice = res.data.gbPrice
|
||||
this.oilPrice = res.data.oilPrice
|
||||
}
|
||||
|
||||
})
|
||||
},
|
||||
|
||||
radiovalue(lable){
|
||||
this.oilList = []
|
||||
oilName(this.queryParams.type).then(res=>{
|
||||
@ -385,6 +423,10 @@
|
||||
this.total = res.data.total;
|
||||
}
|
||||
})
|
||||
getstatistics().then(res=>{
|
||||
console.log(res)
|
||||
this.tjlist = res.data
|
||||
})
|
||||
|
||||
},
|
||||
addoilBlock(){
|
||||
@ -454,4 +496,22 @@
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.tjbox{
|
||||
width: 19%;
|
||||
background: #f9f9f9;
|
||||
margin-right: 1%;
|
||||
margin-bottom: 1%;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
.cu{
|
||||
font-weight: bold;
|
||||
}
|
||||
.wrap-box{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user