初始项目
This commit is contained in:
16
mallplusui-web-admin/src/views/fenxiao/fenxiaoChecks/add.vue
Normal file
16
mallplusui-web-admin/src/views/fenxiao/fenxiaoChecks/add.vue
Normal file
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoChecks-detail :is-edit='false'>
|
||||
</fenxiaoChecks-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoChecksDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'addFenxiaoChecks',
|
||||
components: {FenxiaoChecksDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,180 @@
|
||||
<template>
|
||||
<el-card class="form-container" shadow="never">
|
||||
<el-form :model="fenxiaoChecks" :rules="rules" ref="FenxiaoChecksFrom" label-width="150px">
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="会员编号"
|
||||
prop="memberId">
|
||||
<el-input v-model="fenxiaoChecks.memberId" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="会员手机"
|
||||
prop="phone">
|
||||
<el-input v-model="fenxiaoChecks.phone" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="审核状态"
|
||||
prop="status">
|
||||
<el-input v-model="fenxiaoChecks.status" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="onSubmit('FenxiaoChecksFrom')">提交</el-button>
|
||||
<el-button v-if="!isEdit" @click="resetForm('FenxiaoChecksFrom')">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
</template>
|
||||
<script>
|
||||
import {createFenxiaoChecks, getFenxiaoChecks, updateFenxiaoChecks} from '@/api/fenxiao/fenxiaoChecks'
|
||||
import SingleUpload from '@/components/Upload/singleUpload'
|
||||
|
||||
const defaultFenxiaoChecks = {
|
||||
name: ''
|
||||
};
|
||||
export default {
|
||||
name: 'FenxiaoChecksDetail',
|
||||
components: {SingleUpload},
|
||||
props: {
|
||||
isEdit: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
fenxiaoChecks:
|
||||
Object.assign({},
|
||||
defaultFenxiaoChecks),
|
||||
rules: {
|
||||
name: [
|
||||
{required: true, message: '请输入品牌名称', trigger: 'blur'},
|
||||
{min: 2, max: 140, message: '长度在 2 到 140 个字符', trigger: 'blur'}
|
||||
],
|
||||
logo
|
||||
:
|
||||
[
|
||||
{required: true, message: '请输入品牌logo', trigger: 'blur'}
|
||||
],
|
||||
sort
|
||||
:
|
||||
[
|
||||
{type: 'number', message: '排序必须为数字'}
|
||||
],
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (this.isEdit) {
|
||||
getFenxiaoChecks(this.$route.query.id).then(response => {
|
||||
this.fenxiaoChecks = response.data;
|
||||
})
|
||||
;
|
||||
} else {
|
||||
this.fenxiaoChecks = Object.assign({},
|
||||
defaultFenxiaoChecks)
|
||||
;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onSubmit(formName) {
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if(valid) {
|
||||
this.$confirm('是否提交数据', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
if(this.isEdit
|
||||
)
|
||||
{
|
||||
updateFenxiaoChecks(this.$route.query.id, this.fenxiaoChecks).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
else
|
||||
{
|
||||
createFenxiaoChecks(this.fenxiaoChecks).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoChecks = Object.assign({},
|
||||
defaultFenxiaoChecks)
|
||||
;
|
||||
this.$message({
|
||||
message: '提交成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
})
|
||||
;
|
||||
|
||||
} else {
|
||||
this.$message({
|
||||
message: '验证失败',
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
return false;
|
||||
}
|
||||
})
|
||||
;
|
||||
},
|
||||
resetForm(formName) {
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoChecks = Object.assign({},
|
||||
defaultFenxiaoChecks)
|
||||
;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
286
mallplusui-web-admin/src/views/fenxiao/fenxiaoChecks/index.vue
Normal file
286
mallplusui-web-admin/src/views/fenxiao/fenxiaoChecks/index.vue
Normal file
@@ -0,0 +1,286 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-card class="filter-container" shadow="never">
|
||||
<div>
|
||||
<i class="el-icon-search"></i>
|
||||
<span>筛选搜索</span>
|
||||
<el-button
|
||||
style="float: right"
|
||||
@click="searchFenxiaoChecksList()"
|
||||
type="primary"
|
||||
size="small">
|
||||
查询结果
|
||||
</el-button>
|
||||
</div>
|
||||
<div style="margin-top: 15px">
|
||||
<el-form :inline="true" :model="listQuery" size="small" label-width="140px">
|
||||
<el-form-item label="输入搜索:">
|
||||
<el-input style="width: 203px" v-model="listQuery.keyword" placeholder="类型名称/关键字"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-card>
|
||||
<el-card class="operate-container" shadow="never">
|
||||
<i class="el-icon-tickets"></i>
|
||||
<span>数据列表</span>
|
||||
|
||||
</el-card>
|
||||
<div class="table-container">
|
||||
<el-table ref="fenxiaoChecksTable"
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
@selection-change="handleSelectionChange"
|
||||
v-loading="listLoading"
|
||||
border>
|
||||
<el-table-column type="selection" width="60" align="center"></el-table-column>
|
||||
|
||||
|
||||
|
||||
<el-table-column prop="id"
|
||||
label="编号">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.id }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="memberId"
|
||||
label="会员编号">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.memberId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="phone"
|
||||
label="会员手机">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.phone }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column label="状态" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-switch
|
||||
@change="handleShowChange(scope.$index, scope.row)"
|
||||
:active-value="1"
|
||||
:inactive-value="0"
|
||||
v-model="scope.row.status">
|
||||
</el-switch>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="createTime"
|
||||
label="创建时间">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.createTime |formatCreateTime}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="updateTime"
|
||||
label="审核时间">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.updateTime |formatCreateTime}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column label="操作" width="200" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
@click="handleUpdate(scope.$index, scope.row)">编辑
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="danger"
|
||||
@click="handleDelete(scope.$index, scope.row)">删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="batch-operate-container">
|
||||
|
||||
</div>
|
||||
<div class="pagination-container">
|
||||
<el-pagination
|
||||
background
|
||||
@size-change="handleSizeChange"
|
||||
@current-change="handleCurrentChange"
|
||||
layout="total, sizes,prev, pager, next,jumper"
|
||||
:page-size="listQuery.pageSize"
|
||||
:page-sizes="[5,10,15]"
|
||||
:current-page.sync="listQuery.pageNum"
|
||||
:total="total">
|
||||
</el-pagination>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
//将$都替换为$
|
||||
import {fetchList, deleteFenxiaoChecks} from '@/api/fenxiao/fenxiaoChecks'
|
||||
import {formatDate} from '@/utils/date';
|
||||
|
||||
export default {
|
||||
name: 'fenxiaoChecksList',
|
||||
data() {
|
||||
return {
|
||||
operates: [],
|
||||
operateType: null,
|
||||
listQuery: {
|
||||
keyword: null,
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
list: null,
|
||||
total: null,
|
||||
listLoading: true,
|
||||
multipleSelection: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
filters: {
|
||||
formatCreateTime(time) {
|
||||
let date = new Date(time);
|
||||
return formatDate(date, 'yyyy-MM-dd hh:mm:ss')
|
||||
},
|
||||
|
||||
formatStatus(value) {
|
||||
if (value === 1) {
|
||||
return '审核中';
|
||||
} else if (value === 2) {
|
||||
return '审核失败';
|
||||
} else if (value === 3) {
|
||||
return '审核成功';
|
||||
} else if (value === 4) {
|
||||
return '已失效';
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.listLoading = true;
|
||||
fetchList(this.listQuery).then(response => {
|
||||
this.listLoading = false;
|
||||
this.list = response.data.records;
|
||||
this.total = response.data.total;
|
||||
this.totalPage = response.data.pages;
|
||||
this.pageSize = response.data.size;
|
||||
})
|
||||
;
|
||||
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
this.multipleSelection = val;
|
||||
},
|
||||
handleUpdate(index, row) {
|
||||
this.$router.push(
|
||||
{path: '/fenxiao/updateFenxiaoChecks', query: {id: row.id}})
|
||||
},
|
||||
handleDelete(index, row) {
|
||||
this.$confirm('是否要删除该类型', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
deleteFenxiaoChecks(row.id
|
||||
).
|
||||
then(response => {
|
||||
this.$message({
|
||||
message: '删除成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.getList();
|
||||
})
|
||||
;
|
||||
|
||||
})
|
||||
;
|
||||
|
||||
},
|
||||
handleShowChange(index, row) {
|
||||
let params = new URLSearchParams();
|
||||
params.append('ids', row.id);
|
||||
params.append('status', row.status);
|
||||
updateShowStatus(params).then(response => {
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
handleSizeChange(val) {
|
||||
this.listQuery.pageNum = 1;
|
||||
this.listQuery.pageSize = val;
|
||||
this.getList();
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.listQuery.pageNum = val;
|
||||
this.getList();
|
||||
},
|
||||
searchFenxiaoChecksList() {
|
||||
this.listQuery.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
handleBatchOperate() {
|
||||
console.log(this.multipleSelection);
|
||||
if (this.multipleSelection < 1) {
|
||||
this.$message({
|
||||
message: '请选择一条记录',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let showStatus = 0;
|
||||
if (this.operateType === 'showFenxiaoChecks') {
|
||||
showStatus = 1;
|
||||
} else if (this.operateType === 'hideFenxiaoChecks') {
|
||||
showStatus = 0;
|
||||
} else {
|
||||
this.$message({
|
||||
message: '请选择批量操作类型',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let ids = [];
|
||||
for (let i = 0; i < this.multipleSelection.length; i++) {
|
||||
ids.push(this.multipleSelection[i].id);
|
||||
}
|
||||
let data = new URLSearchParams();
|
||||
data.append("ids", ids);
|
||||
data.append("showStatus", showStatus);
|
||||
updateShowStatus(data).then(response => {
|
||||
this.getList();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
})
|
||||
;
|
||||
},
|
||||
addFenxiaoChecks() {
|
||||
//手动将router,改成$router
|
||||
this.$router.push({path: '/fenxiao/addFenxiaoChecks'})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoChecks-detail :is-edit='true'>
|
||||
</fenxiaoChecks-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoChecksDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'updateFenxiaoChecks',
|
||||
components: {FenxiaoChecksDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
16
mallplusui-web-admin/src/views/fenxiao/fenxiaoConfig/add.vue
Normal file
16
mallplusui-web-admin/src/views/fenxiao/fenxiaoConfig/add.vue
Normal file
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoConfig-detail :is-edit='false'>
|
||||
</fenxiaoConfig-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoConfigDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'addFenxiaoConfig',
|
||||
components: {FenxiaoConfigDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,217 @@
|
||||
<template>
|
||||
<el-card class="form-container" shadow="never">
|
||||
<el-form :model="fenxiaoConfig" :rules="rules" ref="FenxiaoConfigFrom" label-width="150px">
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="状态"
|
||||
prop="status">
|
||||
<el-input v-model="fenxiaoConfig.status" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="返佣类型"
|
||||
prop="type">
|
||||
<el-input v-model="fenxiaoConfig.type" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="商品返佣比例"
|
||||
prop="fanPercent">
|
||||
<el-input v-model="fenxiaoConfig.fanPercent" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="到账类型"
|
||||
prop="fanType">
|
||||
<el-input v-model="fenxiaoConfig.fanType" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="提现方式"
|
||||
prop="withdrawType">
|
||||
<el-input v-model="fenxiaoConfig.withdrawType" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="一级返佣"
|
||||
prop="onePercent">
|
||||
<el-input v-model="fenxiaoConfig.onePercent" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="二级返佣"
|
||||
prop="twoPercent">
|
||||
<el-input v-model="fenxiaoConfig.twoPercent" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="三级返佣"
|
||||
prop="threePercent">
|
||||
<el-input v-model="fenxiaoConfig.threePercent" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="onSubmit('FenxiaoConfigFrom')">提交</el-button>
|
||||
<el-button v-if="!isEdit" @click="resetForm('FenxiaoConfigFrom')">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
</template>
|
||||
<script>
|
||||
import {createFenxiaoConfig, getFenxiaoConfig, updateFenxiaoConfig} from '@/api/fenxiao/fenxiaoConfig'
|
||||
import SingleUpload from '@/components/Upload/singleUpload'
|
||||
|
||||
const defaultFenxiaoConfig = {
|
||||
name: ''
|
||||
};
|
||||
export default {
|
||||
name: 'FenxiaoConfigDetail',
|
||||
components: {SingleUpload},
|
||||
props: {
|
||||
isEdit: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
fenxiaoConfig:
|
||||
Object.assign({}, defaultFenxiaoConfig),
|
||||
rules: {
|
||||
name: [
|
||||
{required: true, message: '请输入品牌名称', trigger: 'blur'},
|
||||
{min: 2, max: 140, message: '长度在 2 到 140 个字符', trigger: 'blur'}
|
||||
],
|
||||
logo
|
||||
:
|
||||
[
|
||||
{required: true, message: '请输入品牌logo', trigger: 'blur'}
|
||||
],
|
||||
sort
|
||||
:
|
||||
[
|
||||
{type: 'number', message: '排序必须为数字'}
|
||||
],
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (this.isEdit) {
|
||||
getFenxiaoConfig(this.$route.query.id).then(response => {
|
||||
this.fenxiaoConfig = response.data;
|
||||
})
|
||||
;
|
||||
} else {
|
||||
this.fenxiaoConfig = Object.assign({},
|
||||
defaultFenxiaoConfig)
|
||||
;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onSubmit(formName) {
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if(valid) {
|
||||
this.$confirm('是否提交数据', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
if(this.isEdit
|
||||
)
|
||||
{
|
||||
updateFenxiaoConfig(this.$route.query.id, this.fenxiaoConfig).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
else
|
||||
{
|
||||
createFenxiaoConfig(this.fenxiaoConfig).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoConfig = Object.assign({},
|
||||
defaultFenxiaoConfig)
|
||||
;
|
||||
this.$message({
|
||||
message: '提交成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
})
|
||||
;
|
||||
|
||||
} else {
|
||||
this.$message({
|
||||
message: '验证失败',
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
return false;
|
||||
}
|
||||
})
|
||||
;
|
||||
},
|
||||
resetForm(formName) {
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoConfig = Object.assign({},
|
||||
defaultFenxiaoConfig)
|
||||
;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
144
mallplusui-web-admin/src/views/fenxiao/fenxiaoConfig/index.vue
Normal file
144
mallplusui-web-admin/src/views/fenxiao/fenxiaoConfig/index.vue
Normal file
@@ -0,0 +1,144 @@
|
||||
<template>
|
||||
<el-card class="form-container" shadow="never">
|
||||
<el-form :model="fenxiaoConfig"
|
||||
ref="fenxiaoConfigForm"
|
||||
label-width="150px">
|
||||
<el-form-item label="状态:">
|
||||
<el-radio-group v-model="fenxiaoConfig.status">
|
||||
<el-radio :label="1">开启</el-radio>
|
||||
<el-radio :label="0">关闭</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="返佣类型:">
|
||||
<el-radio-group v-model="fenxiaoConfig.type">
|
||||
<el-radio :label="1">现金返佣</el-radio>
|
||||
<el-radio :label="0">积分返佣</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="商品返佣比例"
|
||||
prop="fanPercent">
|
||||
<el-input v-model="fenxiaoConfig.fanPercent" style="width: 370px;"/>
|
||||
<span class="note-margin">%</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="到账类型:">
|
||||
<el-radio-group v-model="fenxiaoConfig.fanType">
|
||||
<el-radio :label="1">支付成功</el-radio>
|
||||
<el-radio :label="0">交易成功</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="提现方式:">
|
||||
<el-radio-group v-model="fenxiaoConfig.withdrawType">
|
||||
<el-radio :label="1">人工提现</el-radio>
|
||||
<el-radio :label="0">微信打款</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="一级返佣"
|
||||
prop="onePercent">
|
||||
<el-input v-model="fenxiaoConfig.onePercent" style="width: 370px;"/>
|
||||
<span class="note-margin">%</span>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="二级返佣"
|
||||
prop="twoPercent">
|
||||
<el-input v-model="fenxiaoConfig.twoPercent" style="width: 370px;"/>
|
||||
<span class="note-margin">%</span>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="三级返佣"
|
||||
prop="threePercent">
|
||||
<el-input v-model="fenxiaoConfig.threePercent" style="width: 370px;"/>
|
||||
<span class="note-margin">%</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button
|
||||
@click="confirm('fenxiaoConfigForm')"
|
||||
type="primary">提交</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
</template>
|
||||
<script>
|
||||
|
||||
import { getFenxiaoConfig, updateFenxiaoConfig} from '@/api/fenxiao/fenxiaoConfig'
|
||||
const defaultOrderSetting = {
|
||||
status: 0,
|
||||
type:1,
|
||||
fanPercent:1,
|
||||
fanType:1,
|
||||
onePercent:0,
|
||||
twoPercent:0,
|
||||
threePercent:0
|
||||
};
|
||||
|
||||
export default {
|
||||
name: 'fenxiaoConfig',
|
||||
data() {
|
||||
return {
|
||||
fenxiaoConfig: Object.assign({}, defaultOrderSetting),
|
||||
|
||||
}
|
||||
},
|
||||
created(){
|
||||
this.getDetail();
|
||||
},
|
||||
methods:{
|
||||
confirm(formName){
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if (valid) {
|
||||
this.$confirm('是否要提交修改?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
updateFenxiaoConfig(1,this.fenxiaoConfig).then(response=>{
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: '提交成功!',
|
||||
duration:1000
|
||||
});
|
||||
})
|
||||
});
|
||||
} else {
|
||||
this.$message({
|
||||
message: '提交参数不合法',
|
||||
type: 'warning'
|
||||
});
|
||||
return false;
|
||||
}
|
||||
});
|
||||
},
|
||||
getDetail(){
|
||||
getFenxiaoConfig(1).then(response=>{
|
||||
console.log(response.data)
|
||||
if(response.data){
|
||||
this.fenxiaoConfig=response.data;
|
||||
}
|
||||
console.log(this.fenxiaoConfig)
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
.input-width {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.note-margin {
|
||||
margin-left: 15px;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoConfig-detail :is-edit='true'>
|
||||
</fenxiaoConfig-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoConfigDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'updateFenxiaoConfig',
|
||||
components: {FenxiaoConfigDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoRecords-detail :is-edit='false'>
|
||||
</fenxiaoRecords-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoRecordsDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'addFenxiaoRecords',
|
||||
components: {FenxiaoRecordsDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,200 @@
|
||||
<template>
|
||||
<el-card class="form-container" shadow="never">
|
||||
<el-form :model="fenxiaoRecords" :rules="rules" ref="FenxiaoRecordsFrom" label-width="150px">
|
||||
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="orderId"
|
||||
prop="orderId">
|
||||
<el-input v-model="fenxiaoRecords.orderId" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="memberId"
|
||||
prop="memberId">
|
||||
<el-input v-model="fenxiaoRecords.memberId" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="inviteId"
|
||||
prop="inviteId">
|
||||
<el-input v-model="fenxiaoRecords.inviteId" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="money"
|
||||
prop="money">
|
||||
<el-input v-model="fenxiaoRecords.money" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="level"
|
||||
prop="level">
|
||||
<el-input v-model="fenxiaoRecords.level" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="status"
|
||||
prop="status">
|
||||
<el-input v-model="fenxiaoRecords.status" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="onSubmit('FenxiaoRecordsFrom')">提交</el-button>
|
||||
<el-button v-if="!isEdit" @click="resetForm('FenxiaoRecordsFrom')">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
</template>
|
||||
<script>
|
||||
import {createFenxiaoRecords, getFenxiaoRecords, updateFenxiaoRecords} from '@/api/fenxiao/fenxiaoRecords'
|
||||
import SingleUpload from '@/components/Upload/singleUpload'
|
||||
|
||||
const defaultFenxiaoRecords = {
|
||||
name: ''
|
||||
};
|
||||
export default {
|
||||
name: 'FenxiaoRecordsDetail',
|
||||
components: {SingleUpload},
|
||||
props: {
|
||||
isEdit: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
fenxiaoRecords:
|
||||
Object.assign({},
|
||||
defaultFenxiaoRecords),
|
||||
rules: {
|
||||
name: [
|
||||
{required: true, message: '请输入品牌名称', trigger: 'blur'},
|
||||
{min: 2, max: 140, message: '长度在 2 到 140 个字符', trigger: 'blur'}
|
||||
],
|
||||
logo
|
||||
:
|
||||
[
|
||||
{required: true, message: '请输入品牌logo', trigger: 'blur'}
|
||||
],
|
||||
sort
|
||||
:
|
||||
[
|
||||
{type: 'number', message: '排序必须为数字'}
|
||||
],
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (this.isEdit) {
|
||||
getFenxiaoRecords(this.$route.query.id).then(response => {
|
||||
this.fenxiaoRecords = response.data;
|
||||
})
|
||||
;
|
||||
} else {
|
||||
this.fenxiaoRecords = Object.assign({},
|
||||
defaultFenxiaoRecords)
|
||||
;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onSubmit(formName) {
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if(valid) {
|
||||
this.$confirm('是否提交数据', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
if(this.isEdit
|
||||
)
|
||||
{
|
||||
updateFenxiaoRecords(this.$route.query.id, this.fenxiaoRecords).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
else
|
||||
{
|
||||
createFenxiaoRecords(this.fenxiaoRecords).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoRecords = Object.assign({},
|
||||
defaultFenxiaoRecords)
|
||||
;
|
||||
this.$message({
|
||||
message: '提交成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
})
|
||||
;
|
||||
|
||||
} else {
|
||||
this.$message({
|
||||
message: '验证失败',
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
return false;
|
||||
}
|
||||
})
|
||||
;
|
||||
},
|
||||
resetForm(formName) {
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoRecords = Object.assign({},
|
||||
defaultFenxiaoRecords)
|
||||
;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
292
mallplusui-web-admin/src/views/fenxiao/fenxiaoRecords/index.vue
Normal file
292
mallplusui-web-admin/src/views/fenxiao/fenxiaoRecords/index.vue
Normal file
@@ -0,0 +1,292 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-card class="filter-container" shadow="never">
|
||||
<div>
|
||||
<i class="el-icon-search"></i>
|
||||
<span>筛选搜索</span>
|
||||
<el-button
|
||||
style="float: right"
|
||||
@click="searchFenxiaoRecordsList()"
|
||||
type="primary"
|
||||
size="small">
|
||||
查询结果
|
||||
</el-button>
|
||||
</div>
|
||||
<div style="margin-top: 15px">
|
||||
<el-form :inline="true" :model="listQuery" size="small" label-width="140px">
|
||||
<el-form-item label="输入搜索:">
|
||||
<el-input style="width: 203px" v-model="listQuery.keyword" placeholder="类型名称/关键字"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-card>
|
||||
<el-card class="operate-container" shadow="never">
|
||||
<i class="el-icon-tickets"></i>
|
||||
<span>数据列表</span>
|
||||
|
||||
</el-card>
|
||||
<div class="table-container">
|
||||
<el-table ref="fenxiaoRecordsTable"
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
@selection-change="handleSelectionChange"
|
||||
v-loading="listLoading"
|
||||
border>
|
||||
<el-table-column type="selection" width="60" align="center"></el-table-column>
|
||||
|
||||
|
||||
|
||||
<el-table-column prop="id"
|
||||
label="id">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.id }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-table-column prop="memberId"
|
||||
label="会员编号">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.memberId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="inviteId"
|
||||
label="邀请会员">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.inviteId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="money"
|
||||
label="佣金">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.money }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="level"
|
||||
label="级别">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.level }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="orderId"
|
||||
label="订单编号">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.orderId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="goodsId"
|
||||
label="商品编号">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.goodsId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column prop="status"
|
||||
label="结算类">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.status }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="createTime"
|
||||
label="创建时间">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.createTime |formatCreateTime}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<el-table-column label="操作" width="200" align="center">
|
||||
<template slot-scope="scope">
|
||||
|
||||
<el-button
|
||||
size="mini"
|
||||
type="danger"
|
||||
@click="handleDelete(scope.$index, scope.row)">删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="batch-operate-container">
|
||||
|
||||
</div>
|
||||
<div class="pagination-container">
|
||||
<el-pagination
|
||||
background
|
||||
@size-change="handleSizeChange"
|
||||
@current-change="handleCurrentChange"
|
||||
layout="total, sizes,prev, pager, next,jumper"
|
||||
:page-size="listQuery.pageSize"
|
||||
:page-sizes="[5,10,15]"
|
||||
:current-page.sync="listQuery.pageNum"
|
||||
:total="total">
|
||||
</el-pagination>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
//将$都替换为$
|
||||
import {fetchList, deleteFenxiaoRecords} from '@/api/fenxiao/fenxiaoRecords'
|
||||
import {formatDate} from '@/utils/date';
|
||||
|
||||
export default {
|
||||
name: 'fenxiaoRecordsList',
|
||||
data() {
|
||||
return {
|
||||
operates: [],
|
||||
operateType: null,
|
||||
listQuery: {
|
||||
keyword: null,
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
list: null,
|
||||
total: null,
|
||||
listLoading: true,
|
||||
multipleSelection: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
filters: {
|
||||
formatCreateTime(time) {
|
||||
let date = new Date(time);
|
||||
return formatDate(date, 'yyyy-MM-dd hh:mm:ss')
|
||||
},
|
||||
|
||||
formatStatus(value) {
|
||||
if (value === 1) {
|
||||
return '未开始';
|
||||
} else if (value === 2) {
|
||||
return '活动中';
|
||||
} else if (value === 3) {
|
||||
return '已结束';
|
||||
} else if (value === 4) {
|
||||
return '已失效';
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.listLoading = true;
|
||||
fetchList(this.listQuery).then(response => {
|
||||
this.listLoading = false;
|
||||
this.list = response.data.records;
|
||||
this.total = response.data.total;
|
||||
this.totalPage = response.data.pages;
|
||||
this.pageSize = response.data.size;
|
||||
})
|
||||
;
|
||||
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
this.multipleSelection = val;
|
||||
},
|
||||
handleUpdate(index, row) {
|
||||
this.$router.push(
|
||||
{path: '/fenxiao/updateFenxiaoRecords', query: {id: row.id}})
|
||||
},
|
||||
handleDelete(index, row) {
|
||||
this.$confirm('是否要删除该类型', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
deleteFenxiaoRecords(row.id
|
||||
).
|
||||
then(response => {
|
||||
this.$message({
|
||||
message: '删除成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.getList();
|
||||
})
|
||||
;
|
||||
|
||||
})
|
||||
;
|
||||
|
||||
},
|
||||
|
||||
|
||||
handleSizeChange(val) {
|
||||
this.listQuery.pageNum = 1;
|
||||
this.listQuery.pageSize = val;
|
||||
this.getList();
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.listQuery.pageNum = val;
|
||||
this.getList();
|
||||
},
|
||||
searchFenxiaoRecordsList() {
|
||||
this.listQuery.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
handleBatchOperate() {
|
||||
console.log(this.multipleSelection);
|
||||
if (this.multipleSelection < 1) {
|
||||
this.$message({
|
||||
message: '请选择一条记录',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let showStatus = 0;
|
||||
if (this.operateType === 'showFenxiaoRecords') {
|
||||
showStatus = 1;
|
||||
} else if (this.operateType === 'hideFenxiaoRecords') {
|
||||
showStatus = 0;
|
||||
} else {
|
||||
this.$message({
|
||||
message: '请选择批量操作类型',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let ids = [];
|
||||
for (let i = 0; i < this.multipleSelection.length; i++) {
|
||||
ids.push(this.multipleSelection[i].id);
|
||||
}
|
||||
let data = new URLSearchParams();
|
||||
data.append("ids", ids);
|
||||
data.append("showStatus", showStatus);
|
||||
updateShowStatus(data).then(response => {
|
||||
this.getList();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
})
|
||||
;
|
||||
},
|
||||
addFenxiaoRecords() {
|
||||
//手动将router,改成$router
|
||||
this.$router.push({path: '/fenxiao/addFenxiaoRecords'})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoRecords-detail :is-edit='true'>
|
||||
</fenxiaoRecords-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoRecordsDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'updateFenxiaoRecords',
|
||||
components: {FenxiaoRecordsDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoUserRelate-detail :is-edit='false'>
|
||||
</fenxiaoUserRelate-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoUserRelateDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'addFenxiaoUserRelate',
|
||||
components: {FenxiaoUserRelateDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,180 @@
|
||||
<template>
|
||||
<el-card class="form-container" shadow="never">
|
||||
<el-form :model="fenxiaoUserRelate" :rules="rules" ref="FenxiaoUserRelateFrom" label-width="150px">
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="邀请人"
|
||||
prop="memberId">
|
||||
<el-input v-model="fenxiaoUserRelate.memberId" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="被邀请人"
|
||||
prop="inviteId">
|
||||
<el-input v-model="fenxiaoUserRelate.inviteId" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
<el-form-item
|
||||
label="邀请级别"
|
||||
prop="level">
|
||||
<el-input v-model="fenxiaoUserRelate.level" style="width: 370px;"/>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="onSubmit('FenxiaoUserRelateFrom')">提交</el-button>
|
||||
<el-button v-if="!isEdit" @click="resetForm('FenxiaoUserRelateFrom')">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
</template>
|
||||
<script>
|
||||
import {createFenxiaoUserRelate, getFenxiaoUserRelate, updateFenxiaoUserRelate} from '@/api/fenxiao/fenxiaoUserRelate'
|
||||
import SingleUpload from '@/components/Upload/singleUpload'
|
||||
|
||||
const defaultFenxiaoUserRelate = {
|
||||
name: ''
|
||||
};
|
||||
export default {
|
||||
name: 'FenxiaoUserRelateDetail',
|
||||
components: {SingleUpload},
|
||||
props: {
|
||||
isEdit: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
fenxiaoUserRelate:
|
||||
Object.assign({},
|
||||
defaultFenxiaoUserRelate),
|
||||
rules: {
|
||||
name: [
|
||||
{required: true, message: '请输入品牌名称', trigger: 'blur'},
|
||||
{min: 2, max: 140, message: '长度在 2 到 140 个字符', trigger: 'blur'}
|
||||
],
|
||||
logo
|
||||
:
|
||||
[
|
||||
{required: true, message: '请输入品牌logo', trigger: 'blur'}
|
||||
],
|
||||
sort
|
||||
:
|
||||
[
|
||||
{type: 'number', message: '排序必须为数字'}
|
||||
],
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (this.isEdit) {
|
||||
getFenxiaoUserRelate(this.$route.query.id).then(response => {
|
||||
this.fenxiaoUserRelate = response.data;
|
||||
})
|
||||
;
|
||||
} else {
|
||||
this.fenxiaoUserRelate = Object.assign({},
|
||||
defaultFenxiaoUserRelate)
|
||||
;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onSubmit(formName) {
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if(valid) {
|
||||
this.$confirm('是否提交数据', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
if(this.isEdit
|
||||
)
|
||||
{
|
||||
updateFenxiaoUserRelate(this.$route.query.id, this.fenxiaoUserRelate).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
else
|
||||
{
|
||||
createFenxiaoUserRelate(this.fenxiaoUserRelate).then(response => {
|
||||
if(response.code == 200
|
||||
)
|
||||
{
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoUserRelate = Object.assign({},
|
||||
defaultFenxiaoUserRelate)
|
||||
;
|
||||
this.$message({
|
||||
message: '提交成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.$router.back();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$message({
|
||||
message: response.msg,
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
;
|
||||
}
|
||||
})
|
||||
;
|
||||
|
||||
} else {
|
||||
this.$message({
|
||||
message: '验证失败',
|
||||
type: 'error',
|
||||
duration: 1000
|
||||
});
|
||||
return false;
|
||||
}
|
||||
})
|
||||
;
|
||||
},
|
||||
resetForm(formName) {
|
||||
this.$refs[formName].resetFields();
|
||||
this.fenxiaoUserRelate = Object.assign({},
|
||||
defaultFenxiaoUserRelate)
|
||||
;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,276 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-card class="filter-container" shadow="never">
|
||||
<div>
|
||||
<i class="el-icon-search"></i>
|
||||
<span>筛选搜索</span>
|
||||
<el-button
|
||||
style="float: right"
|
||||
@click="searchFenxiaoUserRelateList()"
|
||||
type="primary"
|
||||
size="small">
|
||||
查询结果
|
||||
</el-button>
|
||||
</div>
|
||||
<div style="margin-top: 15px">
|
||||
<el-form :inline="true" :model="listQuery" size="small" label-width="140px">
|
||||
<el-form-item label="输入搜索:">
|
||||
<el-input style="width: 203px" v-model="listQuery.keyword" placeholder="类型名称/关键字"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-card>
|
||||
<el-card class="operate-container" shadow="never">
|
||||
<i class="el-icon-tickets"></i>
|
||||
<span>数据列表</span>
|
||||
<el-button
|
||||
class="btn-add"
|
||||
@click="addFenxiaoUserRelate()"
|
||||
size="mini">
|
||||
添加
|
||||
</el-button>
|
||||
</el-card>
|
||||
<div class="table-container">
|
||||
<el-table ref="fenxiaoUserRelateTable"
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
@selection-change="handleSelectionChange"
|
||||
v-loading="listLoading"
|
||||
border>
|
||||
<el-table-column type="selection" width="60" align="center"></el-table-column>
|
||||
|
||||
|
||||
|
||||
<el-table-column prop="id"
|
||||
label="编号">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.id }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="memberId"
|
||||
label="邀请人">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.memberId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="inviteId"
|
||||
label="被邀请人">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.inviteId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="level"
|
||||
label="邀请级别">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.level }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="createTime"
|
||||
label="创建时间">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.createTime }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column prop="storeId"
|
||||
label="storeId">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.storeId }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
<el-table-column label="操作" width="200" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
@click="handleUpdate(scope.$index, scope.row)">编辑
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="danger"
|
||||
@click="handleDelete(scope.$index, scope.row)">删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
<div class="batch-operate-container">
|
||||
|
||||
</div>
|
||||
<div class="pagination-container">
|
||||
<el-pagination
|
||||
background
|
||||
@size-change="handleSizeChange"
|
||||
@current-change="handleCurrentChange"
|
||||
layout="total, sizes,prev, pager, next,jumper"
|
||||
:page-size="listQuery.pageSize"
|
||||
:page-sizes="[5,10,15]"
|
||||
:current-page.sync="listQuery.pageNum"
|
||||
:total="total">
|
||||
</el-pagination>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
//将$都替换为$
|
||||
import {fetchList, deleteFenxiaoUserRelate} from '@/api/fenxiao/fenxiaoUserRelate'
|
||||
import {formatDate} from '@/utils/date';
|
||||
|
||||
export default {
|
||||
name: 'fenxiaoUserRelateList',
|
||||
data() {
|
||||
return {
|
||||
operates: [],
|
||||
operateType: null,
|
||||
listQuery: {
|
||||
keyword: null,
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
list: null,
|
||||
total: null,
|
||||
listLoading: true,
|
||||
multipleSelection: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
filters: {
|
||||
formatCreateTime(time) {
|
||||
let date = new Date(time);
|
||||
return formatDate(date, 'yyyy-MM-dd hh:mm:ss')
|
||||
},
|
||||
|
||||
formatStatus(value) {
|
||||
if (value === 1) {
|
||||
return '未开始';
|
||||
} else if (value === 2) {
|
||||
return '活动中';
|
||||
} else if (value === 3) {
|
||||
return '已结束';
|
||||
} else if (value === 4) {
|
||||
return '已失效';
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
this.listLoading = true;
|
||||
fetchList(this.listQuery).then(response => {
|
||||
this.listLoading = false;
|
||||
this.list = response.data.records;
|
||||
this.total = response.data.total;
|
||||
this.totalPage = response.data.pages;
|
||||
this.pageSize = response.data.size;
|
||||
})
|
||||
;
|
||||
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
this.multipleSelection = val;
|
||||
},
|
||||
handleUpdate(index, row) {
|
||||
this.$router.push(
|
||||
{path: '/fenxiao/updateFenxiaoUserRelate', query: {id: row.id}})
|
||||
},
|
||||
handleDelete(index, row) {
|
||||
this.$confirm('是否要删除该类型', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
deleteFenxiaoUserRelate(row.id
|
||||
).
|
||||
then(response => {
|
||||
this.$message({
|
||||
message: '删除成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
this.getList();
|
||||
})
|
||||
;
|
||||
|
||||
})
|
||||
;
|
||||
|
||||
},
|
||||
|
||||
|
||||
handleSizeChange(val) {
|
||||
this.listQuery.pageNum = 1;
|
||||
this.listQuery.pageSize = val;
|
||||
this.getList();
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.listQuery.pageNum = val;
|
||||
this.getList();
|
||||
},
|
||||
searchFenxiaoUserRelateList() {
|
||||
this.listQuery.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
handleBatchOperate() {
|
||||
console.log(this.multipleSelection);
|
||||
if (this.multipleSelection < 1) {
|
||||
this.$message({
|
||||
message: '请选择一条记录',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let showStatus = 0;
|
||||
if (this.operateType === 'showFenxiaoUserRelate') {
|
||||
showStatus = 1;
|
||||
} else if (this.operateType === 'hideFenxiaoUserRelate') {
|
||||
showStatus = 0;
|
||||
} else {
|
||||
this.$message({
|
||||
message: '请选择批量操作类型',
|
||||
type: 'warning',
|
||||
duration: 1000
|
||||
});
|
||||
return;
|
||||
}
|
||||
let ids = [];
|
||||
for (let i = 0; i < this.multipleSelection.length; i++) {
|
||||
ids.push(this.multipleSelection[i].id);
|
||||
}
|
||||
let data = new URLSearchParams();
|
||||
data.append("ids", ids);
|
||||
data.append("showStatus", showStatus);
|
||||
updateShowStatus(data).then(response => {
|
||||
this.getList();
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success',
|
||||
duration: 1000
|
||||
});
|
||||
})
|
||||
;
|
||||
},
|
||||
addFenxiaoUserRelate() {
|
||||
//手动将router,改成$router
|
||||
this.$router.push({path: '/fenxiao/addFenxiaoUserRelate'})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<template>
|
||||
<fenxiaoUserRelate-detail :is-edit='true'>
|
||||
</fenxiaoUserRelate-detail>
|
||||
</template>
|
||||
<script>
|
||||
import FenxiaoUserRelateDetail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'updateFenxiaoUserRelate',
|
||||
components: {FenxiaoUserRelateDetail}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
</style>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user