Commit 0622e540 authored by hanfeng's avatar hanfeng

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform-ui into base-modify

parents 318591a4 7f3f4c8c
......@@ -7,7 +7,30 @@ import fetch from 'utils/fetch';
export function activityList(query) {
return fetch({
url: '/api/activity/management/activity/findAll',
method: 'get',
params: query
method: 'post',
data: query
});
}
/**
* 获取弹窗管理列表某一条数据
* @param query
*/
export function getObj(id) {
return fetch({
url: '/api/activity/management/getOne/'+id,
method: 'Get'
})
}
/**
* 编辑某一条数据
* @param query
*/
export function editObj(data) {
return fetch({
url: '/api/activity/management/update',
method: 'put',
data: data
})
}
\ No newline at end of file
......@@ -11,3 +11,51 @@ export function getModalList(query) {
data:query
});
}
/**
* 弹窗管理--添加
* @param query
*/
export function addObj(obj) {
return fetch({
url: '/api/activity/activityPopupManage',
method: 'post',
data: obj
});
}
/**
* 获取弹窗管理列表某一条数据
* @param query
*/
export function getObj(id) {
return fetch({
url: '/api/activity/activityPopupManage/manage/getOne/'+id,
method: 'Get'
})
}
/**
* 编辑某一条数据,上下架
* @param query
*/
export function editObj(data) {
return fetch({
url: '/api/activity/activityPopupManage/'+data.id,
method: 'put',
data: data
})
}
/**
* 删除数据
* @param query
*/
export function delObj(id) {
return fetch({
url: '/api/activity/activityPopupManage/' + id,
method: 'delete',
})
}
import fetch from 'utils/fetch';
/**
* 获取列表
* @param query
*/
export function getActivityList(query) {
return fetch({
url: '/api/activity/homeActivities/manage/activity/findAll',
method: 'POST',
data:query
});
}
/**
* 获取弹窗管理列表某一条数据
* @param query
*/
export function getObj(id) {
return fetch({
url: '/api/activity/homeActivities/manage/activity/getOne/'+id,
method: 'Get'
})
}
/**
* 弹窗管理--添加
* @param query
*/
export function addObj(obj) {
return fetch({
url: '/api/activity/homeActivities',
method: 'post',
data: obj
});
}
/**
* 编辑某一条数据,上下架
* @param query
*/
export function editObj(data) {
return fetch({
url: '/api/activity/homeActivities/'+data.id,
method: 'put',
data: data
})
}
/**
* 删除数据
* @param query
*/
export function delObj(id) {
return fetch({
url: '/api/activity/homeActivities/manage/activity/deleteOne/' + id,
method: 'delete',
})
}
......@@ -30,7 +30,7 @@ function loadFromServer(type) {
$.ajax({
type: 'get',
// url: process.env.BASE_API + '/vehicle/constant/type/' + type,
url: process.env.BASE_API + 'vehicle/area/findAll',
url: process.env.BASE_API + '/vehicle/area/findAll',
async: false,
headers: {
Authorization: headerAuthorization
......
......@@ -75,10 +75,18 @@ export function getCurrentMonth() {
return formatDate(today, 'MM');
}
/**
* 返回yyyy-MM-dd
* */
export function getYMD_hm(timestamp) {
let date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
return formatDate(date, 'yyyy-MM-dd hh:mm');
}
/**
* 返回yyyy-MM-dd
* */
export function getYMD(timestamp) {
let date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
return formatDate(date, 'yyyy-MM-dd');
}
}
\ No newline at end of file
<template>
<div class="app-container calendar-list-container" v-loading.body="showLoadingBody">
<div>
<el-table :key='tableKey' :data="list" border fit highlight-current-row
style="width: 100%;">
<el-table-column type="index" align="center" label="活动ID" width="200">
<el-table :key='tableKey' :data="list" border fit highlight-current-row style="width: 100%;">
<el-table-column type="index" align="center" label="活动ID" width="100">
<template scope="scope">
<span>{{scope.row.id}}</span>
</template>
......@@ -15,7 +14,7 @@
</template>
</el-table-column>
<el-table-column align="center" label="活动时间">
<el-table-column align="center" label="活动时间" width="400">
<template scope="scope">
<div v-if="scope.row.title">永久</div>
<div v-else><span>{{scope.row.startTimeStr}}</span> ~ <span>{{scope.row.endTimeStr}}</span></div>
......@@ -31,13 +30,13 @@
<span>{{scope.row.hasJoinNum}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="状态">
<el-table-column align="center" label="状态" width="100">
<template scope="scope">
<span v-if="scope.row.status==1">上架</span>
<span v-if="scope.row.status==2">下架</span>
</template>
</el-table-column>
<el-table-column align="center" label="操作">
<el-table-column align="center" label="操作" width="200">
<template scope="scope">
<el-button size="small" type="primary" @click="handleUpdate(scope.row)">编辑</el-button>
<el-button size="small" type="success" @click="handleActivityData(scope.row)" style="margin-left:0px">活动数据</el-button>
......@@ -51,35 +50,130 @@
</div>
</div>
<el-dialog title="编辑" :visible.sync="newPeopelVisible">
<el-form :model="formdata" :rules="rules" ref="form" >
<div style="font-weight: bold;">基础设置</div>
<el-row>
<el-col :span="5">
<el-form-item label="活动状态" label-width="70px">
<el-radio-group v-model="formdata.status_name" size="medium">
<el-radio-button label="上架"></el-radio-button>
<el-radio-button label="下架"></el-radio-button>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="参与人数" label-width="70px">
<el-input v-model="formdata.numLimit" placeholder="请输入参与人数"></el-input>
</el-form-item>
</el-col>
<el-col :span="14">
<el-form-item label="活动开始/结束时间" label-width="130px" style="padding-left:8px">
<el-date-picker v-model="formdata.starTimeStr" type = "datetime" placeholder = "开始时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsStart"></el-date-picker>
<span> - </span>
<el-date-picker v-model="formdata.endTimeStr" type = "datetime" placeholder = "结束时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsEnd"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="add('form')">确认添加</el-button>
<el-form :model="formdata" :rules="rules" ref="form" >
<div style="font-weight: bold;margin-bottom:20px">基础设置</div>
<el-row>
<el-col :span="5">
<el-form-item label="活动状态" label-width="70px">
<el-radio-group v-model="formdata.status_name" size="medium">
<el-radio-button label="上架"></el-radio-button>
<el-radio-button label="下架"></el-radio-button>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="参与人数" label-width="80px" prop="numLimit">
<el-input v-model="formdata.numLimit" placeholder="参与人数"></el-input>
</el-form-item>
</el-col>
<el-col :span="14">
<el-form-item label="活动开始/结束时间" label-width="130px" style="padding-left:8px">
<el-date-picker v-model="formdata.starTimeStr" type = "datetime" placeholder = "开始时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsStart"></el-date-picker>
<span> - </span>
<el-date-picker v-model="formdata.endTimeStr" type = "datetime" placeholder = "结束时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsEnd"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="update('form')">确定</el-button>
</div>
</el-dialog>
<!-- 新人活动 -->
<el-dialog title="活动数据" :visible.sync="newPeopelDataVisible">
<el-form :model="newPeopelDataQuery" style="margin-bottom:20px">
<el-row>
<el-date-picker v-model="newPeopelDataQuery.starTimeStr" type = "datetime" placeholder = "开始时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm"></el-date-picker>
<span> - </span>
<el-date-picker v-model="newPeopelDataQuery.endTimeStr" type = "datetime" placeholder = "结束时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="newPeopelpickerOptionsEnd"></el-date-picker>
<el-button class="filter-item" type="primary" v-waves icon="search" @click="handleNewPeopelFilter" style="margin-left:20px">搜索</el-button>
</el-row>
</el-form>
<el-table :key='newPeopeltableKey' :data="list" border fit highlight-current-row style="width: 100%;">
<el-table-column type="index" align="center" label="数据描述" width="200">
<template scope="scope">
<span>{{scope.row.id}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="pv(总)">
<template scope="scope">
<span>{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="pv(日均)">
<template scope="scope">
<div v-if="scope.row.title">永久</div>
<div v-else><span>{{scope.row.startTimeStr}}</span> ~ <span>{{scope.row.endTimeStr}}</span></div>
</template>
</el-table-column>
<el-table-column align="center" label="uv(总)">
<template scope="scope">
<span>{{scope.row.numLimit}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="uv(日均)">
<template scope="scope">
<span>{{scope.row.hasJoinNum}}</span>
</template>
</el-table-column>
</el-table>
<div class="pagination-container">
<el-pagination @size-change="newPeopelDataSizeChange" @current-change="newPeopelDataCurrentChange"
:current-page.sync="newPeopelDataQuery.page" :page-sizes="[10,20,30,40,50]" :page-size="newPeopelDataQuery.limit"
layout="total, sizes, prev, pager, next, jumper" :total="newPeopelDataTotal"></el-pagination>
</div>
</el-dialog>
<!-- 邀请有礼活动 -->
<el-dialog title="活动数据" :visible.sync="shareDataVisible">
<el-form :model="shareDataQuery" style="margin-bottom:20px">
<el-row>
<el-date-picker v-model="shareDataQuery.starTimeStr" type = "datetime" placeholder = "开始时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm"></el-date-picker>
<span> - </span>
<el-date-picker v-model="shareDataQuery.endTimeStr" type = "datetime" placeholder = "结束时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="shareDatapickerOptionsEnd"></el-date-picker>
<el-button class="filter-item" type="primary" v-waves icon="search" @click="handleShareDataFilter" style="margin-left:20px">搜索</el-button>
</el-row>
</el-form>
<el-table :key='shareDatatableKey' :data="list" border fit highlight-current-row style="width: 100%;">
<el-table-column type="index" align="center" label="数据描述" width="200">
<template scope="scope">
<span>{{scope.row.id}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="pv(总)">
<template scope="scope">
<span>{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="pv(日均)">
<template scope="scope">
<div v-if="scope.row.title">永久</div>
<div v-else><span>{{scope.row.startTimeStr}}</span> ~ <span>{{scope.row.endTimeStr}}</span></div>
</template>
</el-table-column>
<el-table-column align="center" label="uv(总)">
<template scope="scope">
<span>{{scope.row.numLimit}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="uv(日均)">
<template scope="scope">
<span>{{scope.row.hasJoinNum}}</span>
</template>
</el-table-column>
</el-table>
<div class="pagination-container">
<el-pagination @size-change="shareDataSizeChange" @current-change="shareDataCurrentChange"
:current-page.sync="shareDataQuery.page" :page-sizes="[10,20,30,40,50]" :page-size="shareDataQuery.limit"
layout="total, sizes, prev, pager, next, jumper" :total="shareDataTotal"></el-pagination>
</div>
</el-dialog>
</el-dialog>
</div>
</template>
......@@ -93,7 +187,8 @@
deepCopyDate,
newEast8Date,
convertDate2Str,
timestamp2Date
timestamp2Date,
getYMD_hm
} from 'utils/dateUtils';
import rsCode from '../../utils/rsCode';
......@@ -103,7 +198,9 @@
getToken
} from 'utils/auth';
import {
activityList
activityList,
getObj,
editObj
} from 'api/activityManagement';
import Element1 from "../admin/menu/components/element";
import ElRow from "element-ui/packages/row/src/row";
......@@ -119,36 +216,45 @@
data() {
return {
rules:{
phone: {
type: 'string',
required: true,
message: '请输入手机号',
trigger: 'blur'
},
num: {
type: 'string',
numLimit: {
required: true,
message: '请输入添加张数',
trigger: 'blur'
message: '请输入参与人数',
}
},
newPeopelVisible:false,
newPeopelDataVisible:false,
shareDataVisible:false,
BASE_API: process.env.BASE_API,
showLoadingBody: false,
list: null,
total: null,
shareDataList : null,
shareDataTotal : null,
newPeopelDataList : null,
newPeopelDataTotal : null,
listLoading: true,
listQuery: {
page: 1,
limit: 20,
},
newPeopelDataQuery:{
page: 1,
limit: 20,
starTimeStr:'',
endTimeStr:''
},
shareDataQuery:{
page: 1,
limit: 20,
starTimeStr:'',
endTimeStr:''
},
inline: true,
tableKey: 0,
formdata:{
phone:'',
num:'',
type:''
},
newPeopeltableKey:1,
shareDatatableKey:2,
formdata:{},
//编辑
pickerOptionsStart: {
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;
......@@ -158,7 +264,35 @@
disabledDate: time => {
const beginDateVal = new Date(this.formdata.starTimeStr).getTime()
if (beginDateVal) {
return time.getTime() < beginDateVal - 0
return time.getTime() < beginDateVal - 8.64e7
}
}
},
//邀请有礼活动数据弹窗
shareDatapickerOptionsStart:{
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;
}
},
shareDatapickerOptionsEnd: {
disabledDate: time => {
const beginDateVal = new Date(this.shareDataQuery.starTimeStr).getTime()
if (beginDateVal) {
return time.getTime() < beginDateVal - 8.64e7
}
}
},
//新人活动数据弹窗
newPeopelpickerOptionsStart:{
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;
}
},
newPeopelpickerOptionsEnd: {
disabledDate: time => {
const beginDateVal = new Date(this.newPeopelDataQuery.starTimeStr).getTime()
if (beginDateVal) {
return time.getTime() < beginDateVal - 8.64e7
}
}
},
......@@ -181,15 +315,13 @@
activityList(this.listQuery).then(response => {
let totalCountRs = undefined;
let listRs = undefined;
// if (!this.$utils.isEmpty(response.data) && this.$utils.isInteger(response.data.totalCount)) {
if (!this.$utils.isEmpty(response.data)) {
listRs = response.data;
listRs.map(function(item){
item.startTimeeStr = timestamp2Date(item.startTime);
if (!this.$utils.isEmpty(response.data.list) && this.$utils.isInteger(response.data.total)) {
listRs = response.data.list;
response.data.list.map(function(item){
item.startTimeStr = timestamp2Date(item.startTime);
item.endTimeStr = timestamp2Date(item.endTime);
item.visible1 = false;
item.visible2 = false;
});
totalCountRs = response.data.total;
}
this.listLoading = false;
this.list = listRs;
......@@ -205,14 +337,175 @@
this.listQuery.page = val;
this.getList();
},
giveCunpon(){
this.giveDialogVisible =true;
//新人活动-活动数据弹窗
handleNewPeopelFilter() {
this.newPeopelDataQuery.page = 1;
this.getNewPeopelDataList();
},
newPeopelDataSizeChange(val) {
this.newPeopelDataQuery.limit = val;
this.getNewPeopelDataList();
},
newPeopelDataCurrentChange(val) {
this.newPeopelDataQuery.page = val;
this.getNewPeopelDataList();
},
getNewPeopelDataList(){
var that =this;
this.listLoading = true;
if(this.newPeopelDataQuery.starTimeStr||this.newPeopelDataQuery.endTimeStr){
if(new Date(this.newPeopelDataQuery.endTimeStr).getTime()<new Date(this.newPeopelDataQuery.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
this.listLoading = false;
return false;
}
}
// activityList(this.listQuery).then(response => {
// let totalCountRs = undefined;
// let listRs = undefined;
// if (!this.$utils.isEmpty(response.data.list) && this.$utils.isInteger(response.data.total)) {
// listRs = response.data.list;
// totalCountRs = response.data.total;
// }
// this.listLoading = false;
// this.newPeopelDataList = listRs;
// this.newPeopelDataTotal = totalCountRs;
// })
},
//邀请有礼-活动数据弹窗
handleShareDataFilter() {
this.shareDataQuery.page = 1;
this.getShareDataList();
},
shareDataSizeChange(val) {
this.shareDataQuery.limit = val;
this.getShareDataList();
},
shareDataCurrentChange(val) {
this.shareDataQuery.page = val;
this.getShareDataList();
},
handleUpdate(item){
getShareDataList(){
var that =this;
this.listLoading = true;
if(this.shareDataQuery.starTimeStr||this.shareDataQuery.endTimeStr){
if(new Date(this.shareDataQuery.endTimeStr).getTime()<new Date(this.shareDataQuery.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
this.listLoading = false;
return false;
}
}
// activityList(this.listQuery).then(response => {
// let totalCountRs = undefined;
// let listRs = undefined;
// if (!this.$utils.isEmpty(response.data.list) && this.$utils.isInteger(response.data.total)) {
// listRs = response.data.list;
// totalCountRs = response.data.total;
// }
// this.listLoading = false;
// this.shareDataList = listRs;
// this.shareDataTotal = totalCountRs;
// })
},
handleUpdate(row){
var that = this;
that.formdata = item;
that.newPeopelVisible = true;
}
getObj(row.id).then(response => {
var item = response.data;
item.status_name = item.status==1?"上架":item.status==2?"下架":'';
if(item.startTime>0){
item.starTimeStr = getYMD_hm(item.startTime);
}else{
item.startTimeStr = '';
}
if(item.endTime>0){
item.endTimeStr = getYMD_hm(item.endTime);
}else{
item.endTimeStr = '';
}
this.formdata = item;
console.log(this.formdata)
that.newPeopelVisible = true;
})
},
handleActivityData(row){
// 1--新人尊享; 2--推广活动表
if(row.type==1){
this.newPeopelDataQuery={
page: 1,
limit: 20,
starTimeStr:'',
endTimeStr:''
}
this.newPeopelDataVisible = true;
}
if(row.type==2){
this.shareDataQuery={
page: 1,
limit: 20,
starTimeStr:'',
endTimeStr:''
}
this.shareDataVisible = true;
}
},
/**
* 编辑-更新
* */
update(formName) {
let that = this;
const set = this.$refs;
set[formName].validate(valid => {
if (valid) {
that.formdata.status = that.formdata.status_name=='上架'?1:that.formdata.status_name=='下架'?2:'';
that.formdata.startTime = new Date(this.formdata.starTimeStr).getTime();
that.formdata.endTime = new Date(this.formdata.endTimeStr).getTime();
if(new Date(this.formdata.endTimeStr).getTime()<new Date(this.formdata.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
return false;
}
editObj(this.formdata).then(response => {
if (response.status === 200) {
this.newPeopelVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '编辑成功',
type: 'success',
duration: 2000
});
} else {
this.$notify({
title: '失败',
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!',
type: 'error',
duration: 2000
});
}
});
} else {
return false;
}
});
},
}
}
</script>
......@@ -81,7 +81,7 @@
</el-select>
</el-form-item>
<el-form-item label="所属角色" prop="members">
<el-select v-model="form.members" multiple filterable placeholder="请选择" :loading="loading" :remote-method="remoteGroupsMethod" remote @change="changeMembers">
<el-select v-model="form.members" multiple filterable placeholder="请选择" :loading="loading" :remote-method="remoteGroupsMethod" remote>
<el-option
v-for="item in myGroups"
:key="item.id"
......@@ -154,9 +154,10 @@ export default {
password: undefined,
passwordEdit: undefined,
description: undefined,
dataLimit: [],
dataLimit: [],//数据权限
members: [],
},
editCompanyId: undefined,//编辑时公司id
baranchQuery: {
zoneId:null
},
......@@ -346,6 +347,7 @@ export default {
.then(res => {
this.allBranchCompany = res.data;
getObj(row.id).then(response => {
this.editCompanyId = response.data.companyId,//所属分公司id
this.form.username = response.data.username,
this.form.name = response.data.name,
this.form.sex = response.data.sex,
......@@ -393,9 +395,9 @@ export default {
this.dialogStatus = 'update';
}
},
changeMembers(){debugger
this.$set(this.form, "members", this.form.members)
},
// changeMembers(){debugger
// this.$set(this.form, "members", this.form.members)
// },
handleDelete(row) {
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
confirmButtonText: '确定',
......@@ -494,24 +496,47 @@ export default {
this.form.zoneId = item;
this.form.companyId = undefined;//片区修改后所属公司联动
this.baranchQuery.zoneId = item;
getAllBranchCompanyByZoneId(this.baranchQuery)
.then(response => {
this.allBranchCompany = response.data;
})
if(this.baranchQuery.zoneId){
getAllBranchCompanyByZoneId(this.baranchQuery)
.then(response => {debugger
this.allBranchCompany = response.data;
if(this.editCompanyId){
this.form.companyId = this.editCompanyId;
this.editCompanyId = undefined;
}
})
}
},
resetTemp() {
this.editCompanyId = undefined;
this.form = {
username: undefined,
name: undefined,
sex: '男',
zoneId: undefined,
passwordEdit:undefined,
companyId: undefined,
password: "",
description: undefined,
dataLimit: undefined,
members: [],
name: undefined,
sex: '男',
status: 1,
zoneId: undefined,//所属片区
companyId: undefined,//所属分公司id
companyName: "",//所属公司
state2: '',
password: undefined,
passwordEdit: undefined,
description: undefined,
dataLimit: [],//数据权限
members: [],
};
// this.form = {
// username: undefined,
// name: undefined,
// status: 1,
// sex: '男',
// zoneId: undefined,
// passwordEdit:undefined,
// companyId: undefined,
// password: "",
// description: undefined,
// dataLimit: [],
// members: [],
// };
},
// initGroups() {
// getUsers(this.groupId).then(response => {
......
......@@ -21,12 +21,12 @@
</el-table-column>
<el-table-column width="200" align="center" label="描述">
<template scope="scope">
<span>{{scope.row.descr}}</span>
<span>{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column width="150" align="center" label="显示条件">
<template scope="scope">
<span>{{scope.row.type==1?"通用":scope.row.type==2?"已登录":scope.row.type==3?"未登录":''}}</span>
<span>{{scope.row.type==1?"启动时":scope.row.type==2?"已登录":scope.row.type==3?"未登录":''}}</span>
</template>
</el-table-column>
<el-table-column width="300" align="center" label="跳转链接">
......@@ -36,7 +36,7 @@
</el-table-column>
<el-table-column width="300" align="center" label="弹窗图片">
<template scope="scope">
<img :src="scope.row.background" style="width:100%;max-height:50px;">
<img :src="scope.row.background" style="width:100%;max-height:100px;">
</template>
</el-table-column>
<el-table-column width="300" align="center" label="创建时间">
......@@ -53,7 +53,8 @@
<el-table-column align="center" width="200" label="操作">
<template scope="scope">
<el-button size="small" type="primary" @click="handleUpdate(scope.row)">编辑</el-button>
<el-button size="small" type="success" @click="handleUpdate(scope.row)" style="margin-left:0px">下架</el-button>
<el-button size="small" type="success" @click="handleDown(scope.row)" style="margin-left:0px" v-show="scope.row.status==1">下架</el-button>
<el-button size="small" type="success" @click="handleUp(scope.row)" style="margin-left:0px" v-show="scope.row.status==2">上架</el-button>
<el-popover
ref="popover5"
placement="top"
......@@ -65,7 +66,7 @@
<el-button type="primary" size="mini" @click="deleteHandler(scope.row)">确定</el-button>
</div>
</el-popover>
<el-button type="danger" size="small" v-popover:popover5>删除</el-button>
<el-button type="danger" size="small" v-popover:popover5 v-show="scope.row.status==2">删除</el-button>
</template>
</el-table-column>
</el-table>
......@@ -77,45 +78,54 @@
<!-- banner modal弹窗 -->
<el-dialog :title="modalTitle" :visible.sync="bannerDialogVisible">
<el-form :model="form" :rules="rules" ref="form" label-width="90px">
<el-form-item label="弹窗描述" prop="title">
<el-input v-model="form.title" placeholder="请输入弹窗描述"></el-input>
<el-form-item label="弹窗描述" prop="name">
<el-input v-model="form.name" placeholder="请输入弹窗描述"></el-input>
</el-form-item>
<el-form-item label="有效时间" >
<el-date-picker v-model="form.starTimeStr" type = "datetime" placeholder = "开始有效时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsStart"></el-date-picker>
<span> - </span>
<el-date-picker v-model="form.endTimeStr" type = "datetime" placeholder = "结束有效时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsEnd"></el-date-picker>
<el-form-item label="有效时间" prop="time">
<el-radio-group v-model="form.up_name" size="medium">
<el-radio-button label="不限"></el-radio-button>
<el-radio-button label="自定义"></el-radio-button>
</el-radio-group>
<div style="display:inline-block" v-show="form.up_name=='自定义'">
<el-date-picker v-model="form.starTimeStr" type = "datetime" placeholder = "开始时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsStart"></el-date-picker>
<span> - </span>
<el-date-picker v-model="form.endTimeStr" type = "datetime" placeholder = "结束时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsEnd"></el-date-picker>
</div>
</el-form-item>
<el-form-item label="显示条件" >
<el-form-item label="显示条件" prop="type">
<el-radio-group v-model="form.showType" size="medium">
<el-radio-button label="未登录"></el-radio-button>
<el-radio-button label="已登录" ></el-radio-button>
<el-radio-button label="启动时" ></el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="排序" prop="sort">
<el-input v-model="form.sort" placeholder="请输入排序"></el-input>
</el-form-item>
<!--BASE_API + -->
<el-form-item label="弹窗图片" prop="cover" :style="{display:'block'}">
<el-form-item label="弹窗图片" prop="background" :style="{display:'block'}">
<el-upload
class="avatar-uploader"
:action="'https://xxtest.upyuns.com/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false"
:headers="getHeaderWithToken"
:on-success="handleAvatarSuccess">
<img v-if="$utils.isString(form.modalImg) && !$utils.isEmpty(form.modalImg)" :src="form.modalImg" style="width:200px;max-height:200px;">
<img v-if="$utils.isString(form.background) && !$utils.isEmpty(form.background)" :src="form.background" style="width:200px;max-height:200px;">
<i v-else class="el-icon-plus avatar-uploader-icon" style="lineHeight:100px;width:100px;height: 100px;"></i>
</el-upload>
</el-form-item>
<el-form-item label="按钮图片" prop="cover" :style="{display:'block'}">
<el-form-item label="按钮图片" prop="buttonImages" :style="{display:'block'}">
<el-upload
class="avatar-uploader"
:action="'https://xxtest.upyuns.com/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false"
:headers="getHeaderWithToken"
:on-success="handleBtnSuccess">
<img v-if="$utils.isString(form.btnImg) && !$utils.isEmpty(form.btnImg)" :src="form.btnImg" style="width:100px;max-height:30px;">
<img v-if="$utils.isString(form.buttonImages) && !$utils.isEmpty(form.buttonImages)" :src="form.buttonImages" style="width:100px;max-height:30px;">
<i v-else class="el-icon-plus avatar-uploader-icon" style="lineHeight:100px;width:100px;height: 100px;"></i>
</el-upload>
</el-form-item>
<el-form-item label="跳转链接">
<el-form-item label="跳转链接" prop="url">
<el-input v-model="form.url" placeholder="请输入跳转链接"></el-input>
</el-form-item>
</el-form>
......@@ -140,11 +150,16 @@
deepCopyDate,
newEast8Date,
convertDate2Str,
timestamp2Date
timestamp2Date,
getYMD_hm
} from 'utils/dateUtils';
import {
getModalList
getModalList,
addObj,
getObj,
editObj,
delObj
} from 'src/api/appManagement/modalManagement';
import rsCode from '../../../utils/rsCode';
......@@ -172,17 +187,7 @@
BASE_API: process.env.BASE_API,
bannerDialogVisible: false,//添加、编辑弹框
showLoadingBody: false,
form: {
title: "",
url: "",
modalImg:"",
btnImg:'',
type: "0",
location: "0",
starTimeStr:'',
endTimeStr:'',
showType:'未登录'
},
form: {},
listQuery: {
page: 1,
limit: 20,
......@@ -190,22 +195,31 @@
},
rules: {
title: {
name: {
type: 'string',
required: true,
message: '请输入弹窗描述',
trigger: 'blur'
},
type:{
background: {
type: 'string',
required: true,
message: '请选择banner类型',
trigger: 'blur'
message: '请上传弹窗图片',
},
modalImg: {
buttonImages: {
type: 'string',
required: true,
message: '请上传图片',
message: '请上传按钮图片',
},
url: {
type: 'string',
required: true,
message: '请输入链接',
trigger: 'blur'
},
sort:{
required: true,
message: '请输入排序'
},
},
pickerOptionsStart: {
......@@ -217,7 +231,7 @@
disabledDate: time => {
const beginDateVal = new Date(this.form.starTimeStr).getTime()
if (beginDateVal) {
return time.getTime() < beginDateVal - 0
return time.getTime() < beginDateVal - 8.64e7
}
}
},
......@@ -240,7 +254,7 @@
},
},
methods: {
handleFilter() {
handleFilter() {
this.listQuery.page = 1;
this.$refs.queryForm.validate(valid => {
if (valid) {
......@@ -272,8 +286,25 @@
handleUpdate(row) {
this.modalTitle = '编辑';
this.cleanForm();
this.form = row;
this.bannerDialogVisible = true;
getObj(row.id).then(response => {
var item = response.data;
item.showType = item.type==1?"启动时":item.type==2?"已登录":item.type==3?"未登录":'';
item.up_name = item.timeType==0?'不限':item.timeType==1?'自定义':'';
if(item.startTime>0&&item.timeType==1){
item.starTimeStr = getYMD_hm(item.startTime);
}else{
item.starTimeStr = '';
}
if(item.endTime>0&&item.timeType==1){
item.endTimeStr = getYMD_hm(item.endTime);
}else{
item.endTimeStr = '';
}
this.form = item;
console.log(this.form)
this.bannerDialogVisible = true;
})
},
/**
* 弹框-取消
......@@ -287,15 +318,18 @@
* */
cleanForm() {
this.form = {
title: "",
modalImg:"",
btnImg:'',
url:"",
type: "0",
location: "0",
name: "",
startTime:'',
endTime:'',
starTimeStr:'',
endTimeStr:'',
showType:'未登录'
type:'',
up_name:'不限',
showType:'未登录',
background:"",
buttonImages:'',
url:"",
sort:0,
}
},
/**
......@@ -323,10 +357,29 @@
* 创建
* */
create(formName) {
let that = this;
const set = this.$refs;
set[formName].validate(valid => {
if (valid) {
addBanner(this.form)
that.form.type = that.form.showType=='启动时'?1:that.form.showType=='未登录'?3:that.form.showType=='已登录'?2:'';
if(that.form.up_name=='自定义'){
that.form.timeType=1;
that.form.startTime = new Date(this.form.starTimeStr).getTime();
that.form.endTime = new Date(this.form.endTimeStr).getTime();
if(new Date(this.form.endTimeStr).getTime()<new Date(this.form.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
return false;
}
}else{
that.form.timeType=0;
}
that.form.status = 2;
addObj(this.form)
.then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
......@@ -356,10 +409,28 @@
* 编辑-更新
* */
update(formName) {
let that = this;
const set = this.$refs;
set[formName].validate(valid => {
if (valid) {
editBanner(this.form).then(response => {
that.form.type = that.form.showType=='启动时'?1:that.form.showType=='未登录'?3:that.form.showType=='已登录'?2:'';
if(that.form.up_name=='自定义'){
that.form.timeType=1;
that.form.startTime = new Date(this.form.starTimeStr).getTime();
that.form.endTime = new Date(this.form.endTimeStr).getTime();
if(new Date(this.form.endTimeStr).getTime()<new Date(this.form.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
return false;
}
}else{
that.form.timeType=0;
}
editObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
......@@ -369,7 +440,6 @@
type: 'success',
duration: 2000
});
this.getList();
} else {
this.$notify({
title: '失败',
......@@ -384,6 +454,60 @@
}
});
},
/**
* 上架
* */
handleUp(row){
this.form = {};
this.form.id = row.id;
this.form.status = 1;
editObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '编辑成功',
type: 'success',
duration: 2000
});
} else {
this.$notify({
title: '失败',
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!',
type: 'error',
duration: 2000
});
}
});
},
/**
* 下架
* */
handleDown(row){
this.form = {};
this.form.id = row.id;
this.form.status = 2;
editObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '编辑成功',
type: 'success',
duration: 2000
});
} else {
this.$notify({
title: '失败',
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!',
type: 'error',
duration: 2000
});
}
});
},
/**
* 上传图片
* @param file
......@@ -403,18 +527,18 @@
return isJPG && isLt2M;
},
handleAvatarSuccess(res, file) {
this.form.modalImg = res.data;
this.form.background = res.data;
this.showLoadingBody = false;
},
handleBtnSuccess(res, file) {
this.form.btnImg = res.data;
this.form.buttonImages = res.data;
this.showLoadingBody = false;
},
/**
* 操作-删除
* */
deleteHandler(row) {
delBanner(row.id).then(response => {
delObj(row.id).then(response => {
if (response.status === 200) {
this.$notify({
title: '成功',
......
......@@ -5,7 +5,7 @@
<el-row>
<el-col :span="4">
<el-form-item label="描述">
<el-input v-model.number="listQuery.title" placeholder="请输入描述"></el-input>
<el-input v-model.number="listQuery.activitiesName" placeholder="请输入描述"></el-input>
</el-form-item>
</el-col>
<el-button class="filter-item" type="primary" v-waves icon="search" @click="handleFilter">搜索</el-button>
......@@ -21,7 +21,7 @@
</el-table-column>
<el-table-column width="200" align="center" label="描述">
<template scope="scope">
<span>{{scope.row.title}}</span>
<span>{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column width="300" align="center" label="跳转链接">
......@@ -31,28 +31,30 @@
</el-table-column>
<el-table-column width="300" align="center" label="banner图片">
<template scope="scope">
<img :src="scope.row.cover" style="width:100%;max-height:100px;">
<img :src="scope.row.picture" style="width:100%;max-height:100px;">
</template>
</el-table-column>
<el-table-column width="300" align="center" label="排序">
<template scope="scope">
<span>{{scope.row.url}}</span>
<span>{{scope.row.sort}}</span>
</template>
</el-table-column>
<el-table-column width="300" align="center" label="创建时间">
<template scope="scope">
<span>{{scope.row.url}}</span>
<span>{{scope.row.crtTimeStr}}</span>
</template>
</el-table-column>
<el-table-column width="300" align="center" label="状态">
<template scope="scope">
<span>{{scope.row.url}}</span>
<template scope="scope">
<span v-if="scope.row.status==1">上架</span>
<span v-if="scope.row.status==2">下架</span>
</template>
</el-table-column>
<el-table-column align="center" width="200" label="操作">
<template scope="scope">
<el-button size="small" type="primary" @click="handleUpdate(scope.row)">编辑</el-button>
<el-button size="small" type="success" @click="handleUpdate(scope.row)" style="margin-left:0px">下架</el-button>
<el-button size="small" type="success" @click="handleDown(scope.row)" style="margin-left:0px" v-show="scope.row.status==1">下架</el-button>
<el-button size="small" type="success" @click="handleUp(scope.row)" style="margin-left:0px" v-show="scope.row.status==2">上架</el-button>
<el-popover
ref="popover5"
placement="top"
......@@ -64,20 +66,20 @@
<el-button type="primary" size="mini" @click="deleteHandler(scope.row)">确定</el-button>
</div>
</el-popover>
<el-button type="danger" size="small" v-popover:popover5>删除</el-button>
<el-button type="danger" size="small" v-popover:popover5 v-show="scope.row.status==2">删除</el-button>
</template>
</el-table-column>
</el-table>
<div v-show="!listLoading" class="pagination-container">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page.sync="listQuery.pageNo" :page-sizes="[10,20,30,40,50]" :page-size="listQuery.pageSize"
:current-page.sync="listQuery.page" :page-sizes="[10,20,30,40,50]" :page-size="listQuery.limit"
layout="total, sizes, prev, pager, next, jumper" :total="total"></el-pagination>
</div>
<!-- banner modal弹窗 -->
<el-dialog :title="modalTitle" :visible.sync="bannerDialogVisible">
<el-form :model="form" :rules="rules" ref="form" label-width="90px">
<el-form-item label="描述" prop="title">
<el-input v-model="form.title" placeholder="请输入描述"></el-input>
<el-form-item label="描述" prop="name">
<el-input v-model="form.name" placeholder="请输入描述"></el-input>
</el-form-item>
<el-form-item label="上架时间" >
<el-radio-group v-model="form.up_name" size="medium">
......@@ -90,18 +92,21 @@
<el-date-picker v-model="form.endTimeStr" type = "datetime" placeholder = "结束时间" value-format=" yyyy-MM-dd HH:mm" format="yyyy-MM-dd HH:mm" :picker-options="pickerOptionsEnd"></el-date-picker>
</div>
</el-form-item>
<el-form-item label="图片" prop="banner" :style="{display:'block'}">
<el-form-item label="排序" prop="sort">
<el-input v-model="form.sort" placeholder="请输入排序"></el-input>
</el-form-item>
<el-form-item label="图片" prop="picture" :style="{display:'block'}">
<el-upload
class="avatar-uploader"
:action="'https://xxtest.upyuns.com/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false"
:headers="getHeaderWithToken"
:on-success="handleAvatarSuccess">
<img v-if="$utils.isString(form.banner) && !$utils.isEmpty(form.banner)" :src="form.banner" style="width:200px;max-height:200px;">
<img v-if="$utils.isString(form.picture) && !$utils.isEmpty(form.picture)" :src="form.picture" style="width:200px;max-height:200px;">
<i v-else class="el-icon-plus avatar-uploader-icon" style="lineHeight:100px;width:100px;height: 100px;"></i>
</el-upload>
</el-form-item>
<el-form-item label="跳转链接">
<el-form-item label="跳转链接" prop="url">
<el-input v-model="form.url" placeholder="请输入跳转链接"></el-input>
</el-form-item>
</el-form>
......@@ -125,15 +130,18 @@
toEast8Date,
deepCopyDate,
newEast8Date,
convertDate2Str
convertDate2Str,
timestamp2Date,
getYMD_hm
} from 'utils/dateUtils';
import {
getBannerList,
editBanner,
addBanner,
delBanner
} from 'api/tourManage';
getActivityList,
getObj,
addObj,
editObj,
delObj
} from 'src/api/appManagement/selectedActivities';
import rsCode from '../../../utils/rsCode';
......@@ -161,31 +169,42 @@
bannerDialogVisible: false,//添加、编辑弹框
showLoadingBody: false,
form: {
title: "",
name: "",
up_name:'自定义',
starTimeStr:'',
endTimeStr:'',
banner:'',
sort:'',
picture:'',
url:'',
},
listQuery: {
pageNo: 1,
pageSize: 20,
title: '',//描述
page: 1,
limit: 20,
activitiesName: '',//描述
},
rules: {
title: {
name: {
type: 'string',
required: true,
message: '请输入描述',
message: '请输入弹窗描述',
trigger: 'blur'
},
banner: {
picture: {
type: 'string',
required: true,
message: '请上传图片',
},
url: {
type: 'string',
required: true,
message: '请输入链接',
trigger: 'blur'
},
sort:{
required: true,
message: '请输入排序'
}
},
pickerOptionsStart: {
disabledDate(time) {
......@@ -196,7 +215,7 @@
disabledDate: time => {
const beginDateVal = new Date(this.form.starTimeStr).getTime()
if (beginDateVal) {
return time.getTime() < beginDateVal - 0
return time.getTime() < beginDateVal - 8.64e7
}
}
},
......@@ -219,8 +238,8 @@
},
},
methods: {
handleFilter() {
this.listQuery.pageNo = 1;
handleFilter() {
this.listQuery.page = 1;
this.$refs.queryForm.validate(valid => {
if (valid) {
this.getList();
......@@ -230,11 +249,11 @@
});
},
handleSizeChange(val) {
this.listQuery.pageSize = val;
this.listQuery.limit = val;
this.getList();
},
handleCurrentChange(val) {
this.listQuery.pageNo = val;
this.listQuery.page = val;
this.getList();
},
/**
......@@ -251,8 +270,23 @@
handleUpdate(row) {
this.modalTitle = '编辑';
this.cleanForm();
this.form = row;
this.bannerDialogVisible = true;
getObj(row.id).then(response => {
var item = response.data;
item.up_name = item.timeType==0?'不限':item.timeType==1?'自定义':'';
if(item.startTime>0&&item.timeType==1){
item.starTimeStr = getYMD_hm(item.startTime);
}else{
item.starTimeStr = '';
}
if(item.endTime>0&&item.timeType==1){
item.endTimeStr = getYMD_hm(item.endTime);
}else{
item.endTimeStr = '';
}
this.form = item;
this.bannerDialogVisible = true;
})
},
/**
* 弹框-取消
......@@ -266,12 +300,14 @@
* */
cleanForm() {
this.form = {
title: "",
name: "",
up_name:'自定义',
starTimeStr:'',
endTimeStr:'',
banner:'',
sort:'',
picture:'',
url:'',
sort:0,
}
},
/**
......@@ -279,17 +315,16 @@
* */
getList() {
this.listLoading = true;
getBannerList(this.listQuery).then(response => {
getActivityList(this.listQuery).then(response => {
let totalCountRs = undefined;
let listRs = undefined;
if (!this.$utils.isEmpty(response.data.data) && this.$utils.isInteger(response.data.totalCount)) {
listRs = response.data.data;
response.data.data.map(function(item){
item.type = item.type+"";
item.location = item.location?item.location+"": "0";
if (!this.$utils.isEmpty(response.data.list) && this.$utils.isInteger(response.data.total)) {
listRs = response.data.list;
response.data.list.map(function(item){
item.crtTimeStr = timestamp2Date(item.crtTime);
item.visible2 = false;
});
totalCountRs = response.data.totalCount;
totalCountRs = response.data.total;
}
this.listLoading = false;
this.list = listRs;
......@@ -300,14 +335,30 @@
* 创建
* */
create(formName) {
let that = this;
const set = this.$refs;
set[formName].validate(valid => {
if (valid) {
addBanner(this.form)
.then(response => {
if(that.form.up_name=='自定义'){
that.form.timeType=1;
that.form.startTime = new Date(this.form.starTimeStr).getTime();
that.form.endTime = new Date(this.form.endTimeStr).getTime();
if(new Date(this.form.endTimeStr).getTime()<new Date(this.form.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
return false;
}
}else{
that.form.timeType=0;
}
that.form.status = 2;
addObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '创建成功',
......@@ -333,13 +384,29 @@
* 编辑-更新
* */
update(formName) {
let that = this;
const set = this.$refs;
set[formName].validate(valid => {
if (valid) {
editBanner(this.form).then(response => {
if(that.form.up_name=='自定义'){
that.form.timeType=1;
that.form.startTime = new Date(this.form.starTimeStr).getTime();
that.form.endTime = new Date(this.form.endTimeStr).getTime();
if(new Date(this.form.endTimeStr).getTime()<new Date(this.form.starTimeStr).getTime()){
this.$notify({
title: '警告',
message: '结束时间不能小于起始时间',
type: 'warning',
duration: 2000
});
return false;
}
}else{
that.form.timeType=0;
}
editObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '编辑成功',
......@@ -360,6 +427,60 @@
return false;
}
});
},
/**
* 上架
* */
handleUp(row){
this.form = {};
this.form.id = row.id;
this.form.status = 1;
editObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '编辑成功',
type: 'success',
duration: 2000
});
} else {
this.$notify({
title: '失败',
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!',
type: 'error',
duration: 2000
});
}
});
},
/**
* 下架
* */
handleDown(row){
this.form = {};
this.form.id = row.id;
this.form.status = 2;
editObj(this.form).then(response => {
if (response.status === 200) {
this.bannerDialogVisible = false;
this.getList();
this.$notify({
title: '成功',
message: '编辑成功',
type: 'success',
duration: 2000
});
} else {
this.$notify({
title: '失败',
message: rsCode.msg[response.code] ? rsCode.msg[response.code] : '操作失败!',
type: 'error',
duration: 2000
});
}
});
},
/**
* 上传图片
......@@ -380,14 +501,14 @@
return isJPG && isLt2M;
},
handleAvatarSuccess(res, file) {
this.form.banner = res.data;
this.form.picture = res.data;
this.showLoadingBody = false;
},
/**
* 操作-删除
* */
deleteHandler(row) {
delBanner(row.id).then(response => {
delObj(row.id).then(response => {
if (response.status === 200) {
this.$notify({
title: '成功',
......
......@@ -50,7 +50,7 @@
</div>
<!-- banner modal弹窗 -->
<el-dialog :title="modalTitle" :visible.sync="dialogVisible" :before-close="handleDialogClose">
<el-form :model="dialogFrom" :rules="rules" ref="dialogFrom" label-width="90px">
<el-form :model="dialogFrom" :rules="rules" ref="dialogFrom" label-width="130px">
<el-form-item label="标题" prop="title">
<el-input v-model="dialogFrom.title" placeholder="请输入标题"></el-input>
</el-form-item>
......@@ -59,8 +59,8 @@
</el-form-item>
<el-row v-if="dialogFrom.type==88">
<el-col :span="12">
<el-form-item label="提现金额" prop="amount">
<el-input v-model="dialogFrom.amount" placeholder="请输入提现金额" ></el-input>
<el-form-item label="最低提现金额" prop="minAmount">
<el-input v-model="dialogFrom.minAmount" placeholder="请输入最低提现金额" ></el-input>
<span style="color:#bfcbd9;">钱包余额,最低提现额度,达到此金额后才能提现</span>
</el-form-item>
</el-col>
......@@ -73,6 +73,42 @@
</el-form-item>
</el-col>
</el-row>
<el-row v-if="dialogFrom.type==88" >
<el-col :span="12">
<el-form-item label="月额度" prop="amountOfMonth">
<el-input v-model="dialogFrom.amountOfMonth" placeholder="请输入月额度" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="dialogFrom.type==88" >
<el-col :span="12">
<el-form-item label="日额度" prop="amountOfDay">
<el-input v-model="dialogFrom.amountOfDay" placeholder="请输入日额度" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="dialogFrom.type==88" >
<el-col :span="12">
<el-form-item label="最多提现次数(月)" prop="maxNumberOfMonth">
<el-input v-model="dialogFrom.maxNumberOfMonth" placeholder="请输入最多提现次数(月)" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="dialogFrom.type==88" >
<el-col :span="12">
<el-form-item label="最多提现次数(日)" prop="maxNumberOfDay">
<el-input v-model="dialogFrom.maxNumberOfDay" placeholder="请输入最多提现次数(日)" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="dialogFrom.type==88" >
<el-col :span="12">
<el-form-item label="提现方式" prop="withdrawWay">
<el-radio v-model="dialogFrom.withdrawWay" label="1">线上</el-radio>
<el-radio v-model="dialogFrom.withdrawWay" label="2">线下</el-radio>
</el-form-item>
</el-col>
</el-row>
<el-tabs v-model="activeName2" type="card">
<el-tab-pane label="详情" name="first">
......@@ -178,8 +214,13 @@
title: "",
type: undefined,
value:"",
amount: 100,
proceduReates:0.001
minAmount: 100,
proceduReates:0.001,
amountOfMonth:'',
amountOfDay:'',
maxNumberOfMonth:'',
maxNumberOfDay:'',
withdrawWay:1
},
rules: {
title: {
......@@ -196,9 +237,29 @@
required: true,
message: '请输入提现手续费',
},
amount: {
minAmount: {
required: true,
message: '请输入最低提现金额',
},
amountOfMonth: {
required: true,
message: '请输入月额度',
},
amountOfDay: {
required: true,
message: '请输入日额度',
},
maxNumberOfMonth: {
required: true,
message: '请输入最多提现次数(月)',
},
maxNumberOfDay: {
required: true,
message: '请输入最多提现次数(日)',
},
withdrawWay: {
required: true,
message: '请选择提现方式',
}
},
list: null,
......@@ -283,8 +344,13 @@
title: "",
type: undefined,
value:"",
amount: 100,
proceduReates:0.001
minAmount: 100,
proceduReates:0.001,
amountOfMonth:'',
amountOfDay:'',
maxNumberOfMonth:'',
maxNumberOfDay:'',
withdrawWay:1
};
this.activeName2 = "";
},
......@@ -310,14 +376,19 @@
if(item.type == 88){
//提现规则
item.params = JSON.parse(item.params);
item.amount = item.params.amount;
item.minAmount = item.params.minAmount;
item.proceduReates = item.params.proceduReates;
item.amountOfMonth = item.params.amountOfMonth;
item.amountOfDay = item.params.amountOfDay;
item.maxNumberOfMonth = item.params.maxNumberOfMonth;
item.maxNumberOfDay = item.params.maxNumberOfDay;
item.withdrawWay = item.params.withdrawWay;
}
});
listRs = response.data.rows;
totalCountRs = response.data.total;
}debugger
// "{"amount":"11","proceduReates":"0.02"}"
}
// "{"minAmount":"11","proceduReates":"0.02"}"
this.listLoading = false;
this.list = listRs;
this.total = totalCountRs;
......@@ -338,8 +409,13 @@
if(this.dialogFrom.type == 88){
//提现规则
let p = {
amount: this.dialogFrom.amount,
proceduReates:this.dialogFrom.proceduReates
minAmount: this.dialogFrom.minAmount,
proceduReates:this.dialogFrom.proceduReates,
amountOfMonth:this.dialogFrom.amountOfMonth,
amountOfDay:this.dialogFrom.amountOfDay,
maxNumberOfMonth:this.dialogFrom.maxNumberOfMonth,
maxNumberOfDay:this.dialogFrom.maxNumberOfDay,
withdrawWay:this.dialogFrom.withdrawWay
};
params.params = JSON.stringify(p);
}
......@@ -383,8 +459,13 @@
if(this.dialogFrom.type == 88){
//提现规则
let p = {
amount: this.dialogFrom.amount,
proceduReates:this.dialogFrom.proceduReates
minAmount: this.dialogFrom.minAmount,
proceduReates:this.dialogFrom.proceduReates,
amountOfMonth:this.dialogFrom.amountOfMonth,
amountOfDay:this.dialogFrom.amountOfDay,
maxNumberOfMonth:this.dialogFrom.maxNumberOfMonth,
maxNumberOfDay:this.dialogFrom.maxNumberOfDay,
withdrawWay:this.dialogFrom.withdrawWay
};
params.params = JSON.stringify(p);
}
......
......@@ -6,12 +6,13 @@
<el-row>
<el-col :span="5">
<el-form-item label="标题">
<el-input v-model.number="listQuery.title" placeholder="请输入姓名"></el-input>
<el-input v-model.number="listQuery.title" placeholder="请输入标题"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item>
<el-select class="filter-item" v-model="listQuery.channel" placeholder="类型">
<el-option key="" label="全部" value=""> </el-option>
<el-option v-for="(item,index) in channelType" :key="index" :label="item.val" :value="item.id"> </el-option>
</el-select>
</el-form-item>
......@@ -349,7 +350,7 @@
page: 1,
limit: 20,
title: '',//标题
channel:0,//状态
channel:'',//状态
},
inline: true,
tableKey: 0,
......
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