Commit 4e7a61e4 authored by chenfenglei's avatar chenfenglei

来源码类别

parent 85011a13
...@@ -5,6 +5,12 @@ ...@@ -5,6 +5,12 @@
<el-form-item label="用户ID"> <el-form-item label="用户ID">
<el-input v-model="searchFrom.user_id" @change="getList"></el-input> <el-input v-model="searchFrom.user_id" @change="getList"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="用户昵称">
<el-input v-model="searchFrom.user_name" @change="getList"></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="searchFrom.mobile" @change="getList"></el-input>
</el-form-item>
<el-form-item label="商品名称"> <el-form-item label="商品名称">
<el-select v-model="searchFrom.goods_id" placeholder="请选择" @change="getList" clearable> <el-select v-model="searchFrom.goods_id" placeholder="请选择" @change="getList" clearable>
<el-option <el-option
...@@ -118,6 +124,9 @@ export default { ...@@ -118,6 +124,9 @@ export default {
if(this.searchFrom.goods_id){ if(this.searchFrom.goods_id){
json.goods_id=this.searchFrom.goods_id json.goods_id=this.searchFrom.goods_id
} }
if(this.searchFrom.mobile){
json.mobile=this.searchFrom.mobile
}
getClassConfigApi(json).then(res => { getClassConfigApi(json).then(res => {
this.total = res.total; this.total = res.total;
this.configList=res.list; this.configList=res.list;
...@@ -161,6 +170,9 @@ export default { ...@@ -161,6 +170,9 @@ export default {
} }
if(this.searchFrom.goods_id){ if(this.searchFrom.goods_id){
json.goods_id=this.searchFrom.goods_id json.goods_id=this.searchFrom.goods_id
}
if(this.searchFrom.mobile){
json.mobile=this.searchFrom.mobile
} }
exportExcelApi('/api/admin/user/receive/course/log/export',json) exportExcelApi('/api/admin/user/receive/course/log/export',json)
}, },
......
<template>
<div>
<el-dialog
:title="manageObj.title"
center
append-to-body
:visible.sync="manageObj.show"
width="800px">
<div class="head clear-both">
<el-button @click="add" plain type="primary" style="float: right" v-if="!$store.state.readonly">新增来源码类别</el-button>
</div>
<el-table
:data="sourceTypeList"
style="width: 100%">
<el-table-column
prop="desc"
label="描述">
</el-table-column>
<el-table-column
prop="value"
label="类别">
</el-table-column>
<el-table-column
prop="created_at"
label="创建时间">
</el-table-column>
<el-table-column
width="250"
v-if="!$store.state.readonly"
label="操作">
<template slot-scope="scope">
<el-button size="mini" plain type="warning" @click="edit(scope.row)">
编辑
</el-button>
<el-button size="mini" plain type="danger" @click="del(scope.row)" v-if="$store.state.deletePermission">
删除
</el-button>
</template>
</el-table-column>
</el-table>
</el-dialog>
<el-dialog
:title="addTypeObj.title"
center
append-to-body
:visible.sync="addTypeObj.show"
width="800px">
<el-form ref="form" :model="form" :rules="rules" >
<el-row>
<el-col :span="4"><label>来源码类别</label></el-col>
<el-col :span="8">
<el-form-item prop="value">
<el-input v-model="form.value"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4"><label>描述</label></el-col>
<el-col :span="8">
<el-form-item prop="desc">
<el-input v-model="form.desc" type="textarea"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addTypeObj.show = false">取 消</el-button>
<el-button type="primary" @click="sub">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import {getConfigListApi,saveConfigApi,updateConfigApi,deleteConfigApi ,getConfigDetailApi} from "../../service/api"
export default {
name:"manageDialog",
props:[
"manageObj"
],
data(){
return{
sourceTypeList:[],
addTypeObj:{
title:"来源码类别",
show:false,
},
form:{
value:'',
desc:'',
id:''
},
rules:{
value:[
{ required: true, message: '请输入类别', trigger: 'change' }
],
desc:[
{ message: '请输入描述', trigger: 'change' }
]
}
}
},
methods:{
sub(){
let json={
value:this.form.value,
key:"code_rule_type"
}
if(this.form.desc){
json.desc=this.form.desc
}
if(this.form.id){
this.$refs['form'].validate((valid) => {
if(valid){
this.$confirm('此操作将修改来源码?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
updateConfigApi(this.form.id,json).then(res=>{
this.$message({
type: 'success',
message: '修改成功!'
});
this.addTypeObj.show = false;
this.sourceTypeOptions();
})
})
}
});
}else{
this.$refs['form'].validate((valid) => {
if(valid){
this.$confirm('此操作将新增来源码?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
saveConfigApi(json).then(res=>{
this.$message({
type: 'success',
message: '新增成功!'
});
this.addTypeObj.show = false;
this.sourceTypeOptions();
})
})
}
});
}
},
add(){
this.form.id = '';
this.form.value = '';
this.form.desc = '';
this.addTypeObj.show=true;
},
sourceTypeOptions(){
let json={
limit: 2000,
page: 1,
key:"code_rule_type",
};
getConfigListApi(json).then(res => {
this.sourceTypeList=res.list
})
},
del(data){
this.$confirm('此操作将删除该记录?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteConfigApi(data.id).then(res=>{
this.$message({
type: 'success',
message: '删除成功!'
});
this.sourceTypeOptions()
});
});
},
edit(data){
getConfigDetailApi(data.id).then((res) => {
this.addTypeObj.show = true
this.form.id = res.id;
this.form.value = res.value;
this.form.desc = res.desc;
});
},
},
mounted(){
},
watch:{
"manageObj.show"(val){
if(val){
this.sourceTypeOptions();
}else{
this.$emit("reflash");
}
}
}
}
</script>
<style scoped>
</style>
<template> <template>
<div class="menu"> <div class="menu">
<el-form ref="searchFrom" :model="searchFrom" label-width="120px" inline>
<el-form-item label="来源码类别">
<el-select v-model="searchFrom.type_id" placeholder="请选择" @change="getList" clearable>
<el-option
v-for="(data,index) in codeType"
:key="index"
:label="data.value"
:value="data.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" plain @click="getList">搜索</el-button>
</el-form-item>
</el-form>
<div class="head clear-both"> <div class="head clear-both">
<el-button @click="add" plain type="success" style="float: right" v-if="!$store.state.readonly">新增来源码</el-button> <el-button @click="add" plain type="success" style="float: right" v-if="!$store.state.readonly">新增来源码</el-button>
<el-button @click="manageObj.show=true" plain type="primary" style="float: right;margin-right:30px">来源码类别管理</el-button>
</div> </div>
<el-table <el-table
:data="sourceList" :data="sourceList"
...@@ -29,6 +45,13 @@ ...@@ -29,6 +45,13 @@
<template slot-scope="scope"> <template slot-scope="scope">
<a href="javascript:void(0);" @click="getNoCashUser(scope.row.no_cash_user)">{{scope.row.no_cash_user}}</a> <a href="javascript:void(0);" @click="getNoCashUser(scope.row.no_cash_user)">{{scope.row.no_cash_user}}</a>
</template> </template>
</el-table-column>
<el-table-column
prop="type_id"
label="来源码类别">
<template slot-scope="scope">
{{scope.row.type_name }}
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="desc" prop="desc"
...@@ -68,6 +91,16 @@ ...@@ -68,6 +91,16 @@
<el-form-item label="来源CODE" prop="code"> <el-form-item label="来源CODE" prop="code">
<el-input v-model="dialog.form.code"></el-input> <el-input v-model="dialog.form.code"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="来源码类别" prop="type_id">
<el-select v-model="dialog.form.type_id" placeholder="请选择" clearable>
<el-option
v-for="(data,index) in codeType"
:key="index"
:label="data.value"
:value="data.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="是否可提现"> <el-form-item label="是否可提现">
<el-switch <el-switch
v-model="dialog.form.is_withdraw" v-model="dialog.form.is_withdraw"
...@@ -115,7 +148,7 @@ ...@@ -115,7 +148,7 @@
<el-row> <el-row>
<el-col :span="8" :offset="16"> <el-col :span="8" :offset="16">
<el-form-item> <el-form-item>
<el-button style="float: right" type="primary" plain @click="getUser">搜索</el-button> <el-button style="float: right" type="primary" plain @click="getList">搜索</el-button>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -169,19 +202,22 @@ ...@@ -169,19 +202,22 @@
</span> </span>
</el-dialog> </el-dialog>
<choose-good-dialog :dialogObj="chooseGoodDialogObj" @changeShow="changeShow"/> <choose-good-dialog :dialogObj="chooseGoodDialogObj" @changeShow="changeShow"/>
<manage-dialog :manageObj="manageObj" @reflash="sourceOptions" />
</div> </div>
</template> </template>
<script> <script>
import {getSourceListApi,addSourceApi,delSourceApi,updateSourceApi,getUserListApi} from "../../service/api"; import {getSourceListApi,addSourceApi,delSourceApi,updateSourceApi,getUserListApi,getConfigListApi} from "../../service/api";
import page from '../framework/page' import page from '../framework/page'
import userPage from '../framework/page' import userPage from '../framework/page'
import chooseGoodDialog from '../teacherDetail/chooseGoodDialog' import chooseGoodDialog from '../teacherDetail/chooseGoodDialog'
import manageDialog from "./dialog"
export default { export default {
components: { components: {
page, page,
userPage, userPage,
chooseGoodDialog chooseGoodDialog,
manageDialog
}, },
data(){ data(){
return { return {
...@@ -205,6 +241,9 @@ ...@@ -205,6 +241,9 @@
], ],
code: [ code: [
{required: true, message: '请填写来源码类型', trigger: 'change'}, {required: true, message: '请填写来源码类型', trigger: 'change'},
],
type_id: [
{required: true, message: '请填写来源码类别', trigger: 'change'},
] ]
}, },
form:{ form:{
...@@ -213,7 +252,8 @@ ...@@ -213,7 +252,8 @@
code:'', code:'',
is_withdraw: 0, is_withdraw: 0,
desc:'', desc:'',
no_cash_user: '' no_cash_user: '',
type_id:"",
} }
}, },
userDialog: { userDialog: {
...@@ -223,7 +263,9 @@ ...@@ -223,7 +263,9 @@
show: false show: false
}, },
userList: [], userList: [],
searchUserFrom: {}, searchUserFrom: {
type_id:"",
},
multipleSelection: [], multipleSelection: [],
noCashUserDialog: { noCashUserDialog: {
total: 0, total: 0,
...@@ -235,7 +277,15 @@ ...@@ -235,7 +277,15 @@
chooseGoodDialogObj: { chooseGoodDialogObj: {
show: false, show: false,
code: '' code: ''
} },
manageObj:{
show:false,
title:"来源码类别管理",
},
searchFrom:{
},
codeType:[],
} }
}, },
filters: { filters: {
...@@ -254,7 +304,7 @@ ...@@ -254,7 +304,7 @@
} else { } else {
return '否' return '否'
} }
} },
}, },
created(){ created(){
this.getList() this.getList()
...@@ -265,6 +315,9 @@ ...@@ -265,6 +315,9 @@
limit: this.limit, limit: this.limit,
page: this.nowPage page: this.nowPage
} }
if(this.searchFrom.type_id){
json.type_id=this.searchFrom.type_id;
}
getSourceListApi(json).then(res=>{ getSourceListApi(json).then(res=>{
if (res) { if (res) {
this.sourceList = res.list ? res.list : []; this.sourceList = res.list ? res.list : [];
...@@ -370,6 +423,7 @@ ...@@ -370,6 +423,7 @@
this.dialog.title = '编辑来源码'; this.dialog.title = '编辑来源码';
this.dialog.form.title = data.title; this.dialog.form.title = data.title;
this.dialog.form.code = data.code; this.dialog.form.code = data.code;
this.dialog.form.type_id = data.type_id;
this.dialog.form.is_withdraw = data.is_withdraw === 1; this.dialog.form.is_withdraw = data.is_withdraw === 1;
this.dialog.form.desc = data.desc; this.dialog.form.desc = data.desc;
this.dialog.form.no_cash_user = data.no_cash_user; this.dialog.form.no_cash_user = data.no_cash_user;
...@@ -380,6 +434,7 @@ ...@@ -380,6 +434,7 @@
this.dialog.title = '新增来源码'; this.dialog.title = '新增来源码';
this.dialog.form.title = ''; this.dialog.form.title = '';
this.dialog.form.code = 'USER'; this.dialog.form.code = 'USER';
this.dialog.form.type_id = '';
this.dialog.form.is_withdraw = false; this.dialog.form.is_withdraw = false;
this.dialog.form.desc = ''; this.dialog.form.desc = '';
this.dialog.form.no_cash_user = ''; this.dialog.form.no_cash_user = '';
...@@ -407,6 +462,7 @@ ...@@ -407,6 +462,7 @@
let json = { let json = {
title:dia.form.title, title:dia.form.title,
code:dia.form.code, code:dia.form.code,
type_id:dia.form.type_id,
is_withdraw:dia.form.is_withdraw ? 1 : 0, is_withdraw:dia.form.is_withdraw ? 1 : 0,
desc:dia.form.desc desc:dia.form.desc
}; };
...@@ -431,6 +487,7 @@ ...@@ -431,6 +487,7 @@
let json = { let json = {
title:dia.form.title, title:dia.form.title,
code:dia.form.code, code:dia.form.code,
type_id:dia.form.type_id,
no_cash_user:dia.form.no_cash_user, no_cash_user:dia.form.no_cash_user,
is_withdraw:dia.form.is_withdraw ? 1 : 0, is_withdraw:dia.form.is_withdraw ? 1 : 0,
desc:dia.form.desc desc:dia.form.desc
...@@ -463,8 +520,21 @@ ...@@ -463,8 +520,21 @@
createInviteLink(code){ createInviteLink(code){
this.chooseGoodDialogObj.show = true; this.chooseGoodDialogObj.show = true;
this.chooseGoodDialogObj.code = `CC-${code}`; this.chooseGoodDialogObj.code = `CC-${code}`;
},
sourceOptions(){
let json={
limit: 2000,
page: 1,
key:"code_rule_type",
};
getConfigListApi(json).then(res => {
this.codeType=res.list
})
},
},
mounted(){
this.sourceOptions();
} }
}
} }
</script> </script>
......
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