Commit b8d664b8 authored by zhangjianguo's avatar zhangjianguo

卡卷 积分 优惠券

parent 0938ab3f
<template>
<div class="IntegralRecord">
<div class="el-card__header">
<span>积分记录</span>
<div style="display: flex;flex-direction: row;align-items: center">
<el-button type="primary" class="el-button--small" @click="dialogVisible=true">导出全部</el-button>
</div>
</div>
<div class="content">
<div style="display: flex;flex-direction: row;align-items: center">
<div class="block">
<el-date-picker
style="padding: 3px 10px;width: 380px;height: 32px"
v-model="value"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd"
@change="change"
align="right">
</el-date-picker>
<div class="searchInput" style="width:250px">
<el-input style="display:inline-block;width:225px;height:30px"
placeholder="请输入昵称搜索"
v-model="msg.MemberName"
size="small"
clearable>
</el-input>
<span @click="getList" class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
</div>
</div>
</div>
<div style="padding: 20px;background: #fff;margin-top: 10px">
<el-table
:data="tableData"
header-cell-class-name="headClass"
style="width: 1707px;"
border
>
<el-table-column
prop="Id"
label="ID"
width="80">
</el-table-column>
<el-table-column
prop="MemberName"
label="昵称"
width="384">
</el-table-column>
<el-table-column
label="收支情况(元)"
width="180">
<template slot-scope="scope">
<div :class="scope.row.RecordTypeStr=='+' ? 'just':'negative'" style="font-size: 18px">
{{scope.row.RecordTypeStr}}{{scope.row.Integral}}
</div>
</template>
</el-table-column>
<el-table-column
prop="Description"
label="说明"
width="500">
</el-table-column>
<el-table-column
prop="Remarks"
label="备注"
width="383">
</el-table-column>
<el-table-column
prop="CreateDate"
label="充值时间"
>
</el-table-column>
</el-table>
<el-pagination style="text-align:right"
background
@current-change="handleCurrentChange"
:page-size="msg.pageSize"
layout="prev, pager, next"
:total="count">
</el-pagination>
</div>
<!-- 选择导出信息 -->
<el-dialog
title="选择导出信息"
:visible.sync="dialogVisible"
width="960px">
<el-form style="border: 1px solid #F0F2F7;" :model="addMsg" ref="addMsg" label-width="100px">
<div style="box-sizing: border-box;background-color: #F3F5F6;width: 100%;padding-left: 20px;height: 50px;line-height: 50px;">
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
</div>
<div style="margin: 15px 0;"></div>
<div style="padding: 10px 25px 20px;">
<el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
<el-checkbox style="margin-bottom:10px" v-for="city in cities" :label="city.Id" :key="city.Name">{{city.Name}}</el-checkbox>
</el-checkbox-group>
</div>
</el-form>
<div style="text-align:right;margin-top:20px">
<el-button size="small" type="primary" @click="Export">导出</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
name: "IntegralRecord",
data(){
return{
value:'',
msg:{
pageIndex:1,
pageSize:20,
MemberName:'',
StartDate:'',
EndDate:'',
},
tableData:[],
count:0,
loading:false,
dialogVisible:false,
checkAll: false,
checkedCities: [],
isIndeterminate: true,
cities: [],
cityOptions: [],
addMsg:{},
}
},
created(){
this.getDateList()
this.getDown();
},
methods:{
getDateList(){
if(this.value!=''){
this.msg.StartDate = this.value[0];
this.msg.EndDate = this.value[1];
}
this.loading=true;
this.apipost("/api/Integral/GetRechargeRulesPage", this.msg, res => {
this.loading=false;
if(res.data.resultCode==1){
this.tableData = res.data.data.pageData;
this.count = res.data.data.count;
}else {
this.Info(res.data.message);
}
})
},
getDown(){
this.cityOptions=[];
this.apipost("/api/Integral/GetIntegralExportEnumList",{}, res => {
this.cities=res.data.data;
let data=res.data.data;
data.forEach(item=>{
this.cityOptions.push(item.Id)
})
})
},
Export(){
let msg = {
MemberName:this.msg.MemberName,
StartDate :this.msg.StartDate ,
EndDate :this.msg.EndDate,
ExcelEnumIds:this.checkedCities
}
msg = JSON.parse(JSON.stringify(msg));
this.JavaGetLocalFile(
"/api/Integral/GetDistributorRemitListToExcel",
msg,
"积分记录.xls"
);
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getDateList();
},
change(val){
if(val == null ){
this.value='';
this.msg.StartDate='';
this.msg.EndDate='';
}
this.getDateList();
},
handleCheckAllChange(val) {
this.checkedCities = val ? this.cityOptions : [];
this.isIndeterminate = false;
},
handleCheckedCitiesChange(value) {
let checkedCount = value.length;
this.checkAll = checkedCount === this.cities.length;
this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length;
},
getList(){
this.getDateList();
}
}
}
</script>
<style>
.IntegralRecord .el-card__header{
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
background: #fff;
padding: 18px 20px;
}
.IntegralRecord .el-button--small{
padding: 9px 15px;
}
.IntegralRecord .content .searchInput{
border: 1px solid #DCDFE6;
border-radius: 4px;
margin-left: 20px;
}
.IntegralRecord .content .searchInput .el-input__inner{
border:none;outline:none;
height: 30px;
line-height: 30px;
}
.IntegralRecord .content .searchInput{
line-height: normal;
display: inline-table;
border-collapse: separate;
border-spacing: 0;
width:250px;
margin-right: 20px;
}
.IntegralRecord .content{
background: #fff;
margin-top:10px;
padding: 15px;
box-sizing: border-box;
}
.IntegralRecord .el-icon-date{
line-height: 24px;
}
.IntegralRecord .el-range-separator{
line-height: 24px;
}
.IntegralRecord .just{
color: rgb(104, 207, 61)
}
.IntegralRecord .negative{
color: red
}
.IntegralRecord .el-input__icon {
line-height: 24px;
}
</style>
<template>
<div class="addCardTicket">
<div class="form-box" style="margin-top: 0">
<div>
<span style="color: rgb(64, 158, 255);cursor: pointer;margin-left: 20px" @click="cancel">卡券</span>
<span style="margin: 0 5px;color: #C0C4CC;">/</span>
<span>卡券编辑</span>
</div>
</div>
<div id="pane-first">
<div class="form-box">
<el-form :model="msg" style="padding:0 50px;" :rules="rules" ref="msg" label-width="130px">
<el-form-item label="卡券名称" prop="Name" class="is-required">
<el-input v-model="msg.Name" class="el-input--small"/>
</el-form-item>
<el-form-item label="卡券图标" prop="CouponIco" class="is-required" >
<button class="el-button el-button--default el-button--small" @click="openChangeDig()">
选择图标
</button>
<div class="img_yuan inputM_l">
<img v-if="msg.CouponIco=='' || msg.CouponIco==null" src="../../assets/img/setup/default_img.png" alt="">
<img v-else :src="msg.CouponIco" alt="">
</div>
</el-form-item>
<el-form-item label="卡券有效期" class="is-required">
<el-radio-group v-model="msg.IndateType">
<el-radio :label="1">领取后N天内有效</el-radio>
<el-radio :label="2">时间段</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="有效天数" prop="IndateDay" class="is-required" v-if="msg.IndateType==1">
<el-input v-model="msg.IndateDay" class="el-input--small" step="1" min="0" onkeyup="this.value= this.value.match(/\d+(\d{0,2})?/) ? this.value.match(/\d+(\d{0,2})?/)[0] : ''"/>
</el-form-item>
<el-form-item label="有效期范围" prop="value" class="is-required" v-if="msg.IndateType==2">
<el-date-picker
style="padding: 3px 10px;width: 450px;height: 32px"
v-model="msg.value"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd HH:mm:ss"
align="right">
</el-date-picker>
</el-form-item>
<el-form-item label="核销总次数" prop="HeXiao" class="is-required">
<el-input v-model="msg.HeXiao" class="el-input--small" placeholder="请输入整数" step="1" min="0" onkeyup="this.value= this.value.match(/\d+(\d{0,2})?/) ? this.value.match(/\d+(\d{0,2})?/)[0] : ''"/>
<span style="color: rgb(201, 201, 201);">注:50≥核销总次数≥1</span>
</el-form-item>
<el-form-item label="可发放数量" prop="TotalNum" class="is-required">
<el-tooltip class="item" effect="dark" content="卡券可发放数量,-1表示不限制发放数量" placement="top"
style="position: absolute;left: -16px;top:13px">
<i class="el-tooltip el-icon-info"></i>
</el-tooltip>
<el-input v-model="msg.TotalNum" class="el-input--small" :disabled="checked" step="1" min="0" onkeyup="this.value= this.value.match(/\d+(\d{0,2})?/) ? this.value.match(/\d+(\d{0,2})?/)[0] : ''"/>
<el-checkbox v-model="checked" @change="checked==true? msg.TotalNum=-1:msg.TotalNum=0">无限制</el-checkbox>
</el-form-item>
<el-form-item label="卡券描述" prop="Describe" class="is-required">
<el-input
type="textarea"
:rows="2"
placeholder="请输入卡券描述"
v-model="msg.Describe">
</el-input>
</el-form-item>
</el-form>
</div>
<el-button type="primary" style="margin: 12px 0 " @click="preserve('msg')" v-loading="loading">保存</el-button>
<el-button style="margin: 12px 0 " @click="cancel">取消</el-button>
</div>
<!-- 选择文件 -->
<el-dialog title="选择文件" :visible.sync="changeState" width="1240px">
<ChooseImg @SelectId="SelectId" ref="mychild"></ChooseImg>
</el-dialog>
</div>
</template>
<script>
import ChooseImg from "@/components/global/ChooseImg.vue";
export default {
name: "addCardTicket",
components: {
ChooseImg,
},
data(){
return{
msg:{
ID:0,
Name:'',
CouponIco:'',
IndateType:1,
IndateDay:'',
HeXiao:'',
TotalNum:-1,
Describe:'',
StartDate:'',
EndDate:'',
value:'',
},
checked:true,
loading:false,
rules:{
Name:[
{required: true, message: "请输入卡券名称", trigger: "blur"}
],
CouponIco:[
{required: true, message: "请选择卡券图标", trigger: "blur"}
],
IndateDay:[
{required: true, message: "请输入有效天数", trigger: "blur"}
],
HeXiao:[
{required: true, message: "请输入可核销总次数", trigger: "blur"}
],
TotalNum:[
{required: true, message: "请输入可发放数量", trigger: "blur"}
],
Describe:[
{required: true, message: "请输入卡券描述", trigger: "blur"}
],
value:[
{ type: 'array', required: true, message: '请输入有效天数', trigger: 'change' }
]
},
changeState:false
}
},
created(){
if(this.$route.query.ID){
this.getCouponDetail(this.$route.query.ID)
}
},
methods:{
getCouponDetail(ID){
this.apipost("/api/Coupon/GetCouponDetail",{'ID':ID} , res => {
if (res.data.resultCode == 1) {
this.msg = res.data.data
this.msg.value = ''
if(res.data.data.IndateType==2){
this.msg.value.push(res.data.data.StartDate)
this.msg.value.push(res.data.data.EndDate)
}
if(res.data.data.TotalNum!=-1){
this.checked=false
}
} else {
this.Info(res.data.message);
}
})
},
cancel(){
this.$router.go(-1)
},
preserve(formName){
this.$refs[formName].validate((valid) => {
if (valid) {
if(this.msg.IndateType==2){
this.msg.StartDate=this.msg.value[0];
this.msg.EndDate=this.msg.value[1];
this.msg.IndateDay=0
}
// delete this.msg.value
this.loading= true
this.apipost("/api/Coupon/AddOrUpdateCoupon",this.msg , res => {
this.loading= false
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.$router.go(-1);//返回上一层
} else {
this.Info(res.data.message);
}
})
} else {
return false;
}
});
},
openChangeDig(){
this.changeState=true;
setTimeout(()=>{
this.$refs.mychild.InitData();
},10)
},
SelectId(msg){
this.changeState=false;
this.msg.CouponIco="http://viitto-1301420277.cos.ap-chengdu.myqcloud.com"+msg.url;
},
}
}
</script>
<style>
.addCardTicket .form-box {
background: #fff;
padding: 20px 50% 20px 0;
margin-top: 10px;
}
.addCardTicket .el-input--small .el-input__inner{
height: 32px;
line-height: 32px;
}
.addCardTicket .img_yuan{
width: 80px;
height: 80px;
margin-top: 5px;
position: relative;
}
.addCardTicket .img_yuan img{
width: 100%;
height: 100%;
}
.addCardTicket .el-date-editor .el-range__icon {
line-height: 24px;
}
.addCardTicket .el-date-editor .el-range-separator{
line-height: 24px;
}
.addCardTicket .el-date-editor .el-range__close-icon{
line-height: 24px;
}
.addCardTicket .el-form-item__label{
padding: 0 17px 0 0;
}
</style>
This diff is collapsed.
<template>
<div class="autorelease">
发放
</div>
</template>
<script>
export default {
name: "autorelease"
}
</script>
<style scoped>
</style>
...@@ -256,4 +256,7 @@ ...@@ -256,4 +256,7 @@
.balanceBudget .el-range-separator{ .balanceBudget .el-range-separator{
line-height: 24px; line-height: 24px;
} }
.balanceBudget .el-input__icon {
line-height: 24px;
}
</style> </style>
<template>
<div class="cardTicketList">
<div class="el-card__header">
<span>卡券列表</span>
<div style="display: flex;flex-direction: row;align-items: center">
<el-button type="primary" class="el-button--small" @click="addRecharge">添加卡券</el-button>
</div>
</div>
<div class="content">
<div style="display: flex;flex-direction: row;align-items: center">
<div class="block">
<div class="searchInput" style="width:250px">
<el-input style="display:inline-block;width:225px;height:30px"
placeholder="请输入卡券名称搜索"
v-model="msg.Name"
size="small"
clearable>
</el-input>
<span @click="getList" class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
</div>
</div>
</div>
<div style="padding: 20px;background: #fff;">
<el-table
:data="tableData"
header-cell-class-name="headClass"
style="width: 1707px;"
border
>
<el-table-column
prop="ID"
label="ID"
width="60">
</el-table-column>
<el-table-column
prop="Name"
label="卡券名称"
width="767">
</el-table-column>
<el-table-column
prop="HeXiao"
label="核销总次数"
width="100">
</el-table-column>
<el-table-column
label="卡券图标"
width="100">
<template slot-scope="scope">
<div :style="{backgroundImage:'url(' + scope.row.CouponIco + ')',backgroundSize:'cover'}" style="width: 50px;height: 50px;border-radius: 4px"></div>
</template>
</el-table-column>
<el-table-column
label="有效期"
width="320">
<template slot-scope="scope">
<div v-if="scope.row.IndateType==1">领取后{{scope.row.IndateDay}}天内有效</div>
<div v-if="scope.row.IndateType==2">开始时间:{{scope.row.StartDate}}</div>
<div v-if="scope.row.IndateType==2">结束时间:{{scope.row.EndDate}}</div>
</template>
</el-table-column>
<el-table-column
prop="CreateDate"
label="添加日期"
width="180">
</el-table-column>
<el-table-column
fixed="right"
label="操作"
>
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="编辑" placement="top" >
<img src="../../assets/img/setup/edit.png" alt="" class="imgstyle" @click="Edit(scope.row)">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top" >
<img src="../../assets/img/setup/del.png" alt="" class="imgstyle" @click="delete_b(scope.row)">
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right"
background
@current-change="handleCurrentChange"
:page-size="msg.pageSize"
layout="prev, pager, next"
:total="count">
</el-pagination>
</div>
</div>
</template>
<script>
export default {
name: "cardTicketList",
data(){
return{
msg:{
pageIndex:1,
pageSize:20,
Name:'',
},
tableData:[],
count:0,
loading:false
}
},
created(){
this.getDateList();
},
methods:{
getDateList(){
this.loading=true;
this.apipost("/api/Coupon/GetCouponPageList", this.msg, res => {
this.loading=false;
if(res.data.resultCode==1){
this.tableData = res.data.data.pageData;
this.count = res.data.data.count;
}else {
this.Info(res.data.message);
}
})
},
addRecharge(){
this.$router.push('/addCardTicket');
},
Edit(row){
this.$router.push({
name: 'addCardTicket',
query: {
ID:row.ID,
blank: "y"
}
});
},
delete_b(row){
let that=this;
that.Confirm("是否删除?", function () {
that.apipost(
"/api/Coupon/DelRules",
{Id:row.ID},
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getDateList();
} else {
that.Error(res.data.message);
}
},
);
});
},
SetUp(){
this.$router.push('/rechargeSet');
},
getList(){
this.getDateList()
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getDateList();
},
},
}
</script>
<style>
.cardTicketList .el-card__header{
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
background: #fff;
}
.cardTicketList .el-button--small{
padding: 9px 15px;
}
.cardTicketList .content .searchInput{
border: 1px solid #DCDFE6;
border-radius: 4px;
margin-left: 20px;
}
.cardTicketList .content .searchInput .el-input__inner{
border:none;outline:none;
height: 30px;
line-height: 30px;
}
.cardTicketList .content .searchInput{
line-height: normal;
display: inline-table;
border-collapse: separate;
border-spacing: 0;
width:250px;
}
.cardTicketList .content{
background: #fff;
margin-top:10px;
padding: 15px;
box-sizing: border-box;
}
</style>
<template>
<div class="couponManage">
<div class="el-card__header">
<span>优惠券管理</span>
<div style="display: flex;flex-direction: row;align-items: center">
<el-button type="primary" class="el-button--small" @click="addRecharge">新增</el-button>
</div>
</div>
<div class="content">
<div style="display: flex;flex-direction: row;align-items: center">
<div class="block">
<div class="searchInput" style="width:250px">
<el-input style="display:inline-block;width:225px;height:30px"
placeholder="请输入优惠券名称搜索"
v-model="msg.Name"
size="small"
clearable>
</el-input>
<span @click="getList" class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
</div>
</div>
</div>
<div style="padding: 20px;background: #fff;">
<el-table
:data="tableData"
header-cell-class-name="headClass"
style="width: 1707px;"
border
>
<el-table-column
prop="ID"
label="ID"
width="100">
</el-table-column>
<el-table-column
prop="Name"
label="优惠券名称"
width="647">
</el-table-column>
<el-table-column
prop="MinConsumePrice"
label="最低消费金额(元)"
width="100">
</el-table-column>
<el-table-column
label="优惠方式"
width="150">
<template slot-scope="scope">
<div >优惠:{{scope.row.DiscountsPrice}}</div>
</template>
</el-table-column>
<el-table-column
prop="UseTypeStr"
label="使用范围"
width="120">
</el-table-column>
<el-table-column
label="有效时间"
width="180">
<template slot-scope="scope">
<div v-if="scope.row.IndateType==1">领取后{{scope.row.IndateDay}}天内有效</div>
<div v-if="scope.row.IndateType==2">开始时间:{{scope.row.StartDate}}</div>
<div v-if="scope.row.IndateType==2">结束时间:{{scope.row.EndDate}}</div>
</template>
</el-table-column>
<el-table-column
label="数量"
width="150">
<template slot-scope="scope">
<div>总数量:{{scope.row.TotalNum ==-1? '无限制领取':scope.row.TotalNum}}</div>
<div v-if="scope.row.TotalNum !=-1">剩余发放数:{{scope.row.ResidueNum}}</div>
</template>
</el-table-column>
<el-table-column
label="加入领券中心 "
width="80">
<!--PickupType-->
<template slot-scope="scope">
<el-switch
:active-value="2"
:inactive-value="1"
v-model="scope.row.PickupType"
>
</el-switch>
</template>
</el-table-column>
<el-table-column
fixed="right"
label="操作"
>
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="发放优惠券" placement="top" >
<img src="../../assets/img/setup/send.png" alt="" class="imgstyle" @click="Edit(scope.row)">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="编辑" placement="top" >
<img src="../../assets/img/setup/edit.png" alt="" class="imgstyle" @click="Edit(scope.row)">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top" >
<img src="../../assets/img/setup/del.png" alt="" class="imgstyle" @click="delete_b(scope.row)">
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right"
background
@current-change="handleCurrentChange"
:page-size="msg.pageSize"
layout="prev, pager, next"
:total="count">
</el-pagination>
</div>
</div>
</template>
<script>
export default {
name: "couponManage",
data(){
return{
msg:{
pageIndex:1,
pageSize:20,
Name:'',
},
tableData:[],
count:0,
loading:false
}
},
created(){
this.getDateList();
},
methods:{
getDateList(){
this.loading=true;
this.apipost("/api/Coupon/GetDiscountCouponPageList", this.msg, res => {
this.loading=false;
if(res.data.resultCode==1){
this.tableData = res.data.data.pageData;
this.count = res.data.data.count;
}else {
this.Info(res.data.message);
}
})
},
addRecharge(){
this.$router.push('/addCoupon');
},
Edit(row){
this.$router.push({
name: 'addCardTicket',
query: {
ID:row.ID,
blank: "y"
}
});
},
delete_b(row){
let that=this;
that.Confirm("是否删除?", function () {
that.apipost(
"/api/Coupon/DelRules",
{Id:row.ID},
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getDateList();
} else {
that.Error(res.data.message);
}
},
);
});
},
SetUp(){
this.$router.push('/rechargeSet');
},
getList(){
this.getDateList()
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getDateList();
},
},
}
</script>
<style >
.couponManage .el-card__header{
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
background: #fff;
}
.couponManage .el-button--small{
padding: 9px 15px;
}
.couponManage .content .searchInput{
border: 1px solid #DCDFE6;
border-radius: 4px;
margin-left: 20px;
}
.couponManage .content .searchInput .el-input__inner{
border:none;outline:none;
height: 30px;
line-height: 30px;
}
.couponManage .content .searchInput{
line-height: normal;
display: inline-table;
border-collapse: separate;
border-spacing: 0;
width:250px;
}
.couponManage .content{
background: #fff;
margin-top:10px;
padding: 15px;
box-sizing: border-box;
}
</style>
<template>
<div class="integralSetting">
<div class="el-card__header">
<span>用户积分设置</span>
</div>
<div class="form-box">
<el-form :model="msg" style="padding:0 50px;" ref="msg" label-width="170px">
<el-form-item label="用户积分" >
<el-input v-model="msg.IntegralNum" class="el-input--small" step="1" min="0" onkeyup="this.value= this.value.match(/\d+(\.\d{0,2})?/) ? this.value.match(/\d+(\.\d{0,2})?/)[0] : ''" >
<template slot="append">积分抵扣1元</template>
</el-input>
</el-form-item>
<el-form-item label="用户积分使用规则" >
<el-input
type="textarea"
:rows="2"
v-model="msg.Explain">
</el-input>
</el-form-item>
</el-form>
</div>
<el-button type="primary" style="margin: 12px 0 " @click="preserve()" :loading="loading">保存</el-button>
</div>
</template>
<script>
export default {
name: "integralSetting",
data(){
return{
msg:{
ID:0,
IntegralNum:0,
Explain:'',
}
}
},
created(){
this.getIntegralSettingsList()
},
methods:{
getIntegralSettingsList(){
this.apipost("/api/Integral//GetIntegralSettingsList",{} , res => {
if (res.data.resultCode == 1) {
this.msg.ID =res.data.data.ID
this.msg.IntegralNum =res.data.data.IntegralNum
this.msg.Explain =res.data.data.Explain
} else {
this.Info(res.data.message);
}
})
},
preserve(){
this.apipost("/api/Integral//AddOrUpdateIntegralSettings",this.msg , res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
} else {
this.Info(res.data.message);
}
})
}
}
}
</script>
<style scoped>
.integralSetting .el-card__header{
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
background: #fff;
padding: 18px 20px;
}
.integralSetting .el-button--small{
padding: 9px 15px;
}
.integralSetting .form-box{
padding: 20px 0;
background-color: #fff;
margin-bottom: 20px;
padding-right: 50%;
}
.integralSetting .el-input__inner{
height: 32px;
line-height: 32px
}
.integralSetting .el-input--small .el-input__inner{
height: 32px;
line-height: 32px;
}
</style>
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<span>充值管理</span> <span>充值管理</span>
<div style="display: flex;flex-direction: row;align-items: center"> <div style="display: flex;flex-direction: row;align-items: center">
<el-button type="primary" class="el-button--small" @click="addRecharge">添加充值方案</el-button> <el-button type="primary" class="el-button--small" @click="addRecharge">添加充值方案</el-button>
<el-button type="primary" class="el-button--small" @click="add">设置</el-button> <el-button type="primary" class="el-button--small" @click="SetUp">设置</el-button>
</div> </div>
</div> </div>
<div class="content"> <div class="content">
...@@ -151,8 +151,8 @@ ...@@ -151,8 +151,8 @@
); );
}); });
}, },
add(){ SetUp(){
this.$router.push('/rechargeSet');
}, },
getList(){ getList(){
this.getDateList() this.getDateList()
......
<template>
<div class="rechargeSet">
<div class="form-box" style="margin-top: 0">
<div>
<span style="color: rgb(64, 158, 255);cursor: pointer;margin-left: 20px" @click="cancel">充值管理</span>
<span style="margin: 0 5px;color: #C0C4CC;">/</span>
<span>设置</span>
</div>
</div>
<div class="form-box">
<el-form :model="msg" style="padding:0 50px;" ref="msg" label-width="160px">
<el-form-item label="开启余额功能" >
<el-switch
style="margin-left: 10px"
:active-value="1"
:inactive-value="0"
v-model="msg.IsOpenBalance"
active-text=""
inactive-text="">
</el-switch>
</el-form-item>
<el-form-item label="是否开放自定义金额" >
<el-switch
style="margin-left: 10px"
:active-value="1"
:inactive-value="0"
v-model="msg.IsExploitMoney"
active-text=""
inactive-text="">
</el-switch>
</el-form-item>
<el-form-item label="背景图片" >
<button class="el-button el-button--default el-button--small inputM_l" @click="openChangeDig(1)">
选择图标
</button>
<div class="img_yuan inputM_l">
<img v-if="msg.BackImg=='' || msg.BackImg==null" src="../../assets/img/setup/default_img.png" alt="">
<img v-else :src="msg.BackImg" alt="">
</div>
</el-form-item>
<el-form-item label="广告图片" >
<button class="el-button el-button--default el-button--small inputM_l" @click="openChangeDig(2)">
选择图标
</button>
<div class="img_yuan inputM_l">
<img v-if="msg.AdvertisingImg=='' || msg.AdvertisingImg==null" src="../../assets/img/setup/default_img.png" alt="">
<img v-else :src="msg.AdvertisingImg" alt="">
</div>
</el-form-item>
<el-form-item label="跳转链接">
<el-input placeholder="请输入内容" v-model="msg.AdvertisingLink" :disabled="true">
<el-button slot="append" @click="isShowLink=true" style="background: white">选择链接</el-button>
</el-input>
</el-form-item>
<el-form-item label="充值说明图标" >
<button class="el-button el-button--default el-button--small inputM_l" @click="openChangeDig(3)">
选择图标
</button>
<div class="img_yuan inputM_l">
<img v-if="msg.ExplainIco=='' || msg.ExplainIco==null" src="../../assets/img/setup/default_img.png" alt="">
<img v-else :src="msg.ExplainIco" alt="">
</div>
</el-form-item>
<el-form-item label="充值说明" >
<el-input
type="textarea"
:rows="2"
v-model="msg.Explain">
</el-input>
</el-form-item>
</el-form>
</div>
<el-button type="primary" style="margin: 12px 0 " @click="preserve()" :loading="loading">提交</el-button>
<!-- 选择文件 -->
<el-dialog title="选择文件" :visible.sync="changeState" width="1240px">
<ChooseImg @SelectId="SelectId" ref="mychild"></ChooseImg>
</el-dialog>
<!-- 选择链接 -->
<el-dialog title="选择链接" :visible.sync="isShowLink" width="800px">
<chooseMeun ref="chooseMeun"></chooseMeun>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="isShowLink=false">取 消</el-button>
<el-button size="small" type="danger" @click="getChoiceLink()">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import ChooseImg from "@/components/global/ChooseImg.vue";
import chooseMeun from "../common/chooseMeun.vue";
export default {
name: "rechargeSet",
components: {
ChooseImg,
chooseMeun
},
data(){
return{
msg:{
IsOpenBalance:0,
IsExploitMoney:0,
BackImg:'',
AdvertisingImg:'',
AdvertisingLink:'',
ExplainIco:'',
Explain:'',
},
loading:false,
Choiceimg:0,
changeState:false,
isShowLink:false
}
},
created(){
this.getRechargeSettingsList()
},
methods:{
getRechargeSettingsList(){
this.apipost("/api/Recharge/GetRechargeSettingsList",{} , res => {
if (res.data.resultCode == 1) {
this.msg =res.data.data
} else {
this.Info(res.data.message);
}
})
},
cancel(){
this.$router.go(-1)
},
preserve(){
this.apipost("/api/Recharge/AddOrUpdateRechargeSettings",this.msg , res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.$router.go(-1)
} else {
this.Info(res.data.message);
}
})
},
openChangeDig(data){
this.Choiceimg = data
this.changeState=true;
setTimeout(()=>{
this.$refs.mychild.InitData();
},10)
},
SelectId(msg){
this.changeState=false;
if(this.Choiceimg == 1){
this.msg.BackImg="http://viitto-1301420277.cos.ap-chengdu.myqcloud.com"+msg.url;
}else if(this.Choiceimg == 2){
this.msg.AdvertisingImg="http://viitto-1301420277.cos.ap-chengdu.myqcloud.com"+msg.url;
}else if(this.Choiceimg == 3){
this.msg.ExplainIco ="http://viitto-1301420277.cos.ap-chengdu.myqcloud.com"+msg.url;
}
},
//获取选择链接
getChoiceLink(){
//调用子组件方法
var obj = this.$refs.chooseMeun.getChooseMenu();
this.msg.AdvertisingLink=obj.PageUrl;
this.isShowLink = false;
},
}
}
</script>
<style scoped>
.rechargeSet .form-box{
padding: 20px 0;
background-color: #fff;
margin-bottom: 20px;
padding-right: 50%;
}
.rechargeSet .el-input__inner{
height: 32px;
line-height: 32px
}
.rechargeSet .img_yuan{
width: 80px;
height: 80px;
margin-top: 5px;
position: relative;
}
.rechargeSet .img_yuan img{
width: 100%;
height: 100%;
}
</style>
...@@ -798,16 +798,8 @@ ...@@ -798,16 +798,8 @@
</el-form-item> </el-form-item>
<el-form-item label="跳转链接"> <el-form-item label="跳转链接">
<!--<el-row :gutter="0">-->
<!--<el-col class="userinfo" :span="18" >-->
<!--<el-input v-model="msg.TurnLink" :disabled="true"></el-input>-->
<!--</el-col>-->
<!--<el-col class="userinfo" :span="6" >-->
<!--<el-button type="info" plain>选择链接</el-button>-->
<!--</el-col>-->
<!--</el-row>-->
<el-input placeholder="请输入内容" v-model="msg.TurnLink" :disabled="true"> <el-input placeholder="请输入内容" v-model="msg.TurnLink" :disabled="true">
<el-button slot="append" @click="isShowLink=true">选择链接</el-button> <el-button slot="append" @click="isShowLink=true" style="background: white">选择链接</el-button>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment