Commit 124b7c18 authored by rencs's avatar rencs

10.23 佣金

parent 1c6207d7
...@@ -3,12 +3,13 @@ ...@@ -3,12 +3,13 @@
<div> <div>
<el-button <el-button
class="filter-item" class="filter-item"
style="margin-bottom: 10px;" style="margin-bottom: 10px"
@click="newMembershipGrade" @click="newMembershipGrade"
type="primary" type="primary"
icon="edit" icon="edit"
v-if="memberManagement_btn_add" v-if="memberManagement_btn_add"
>添加会员等级</el-button> >添加会员等级</el-button
>
</div> </div>
<el-table <el-table
:key="tableKey" :key="tableKey"
...@@ -21,12 +22,12 @@ ...@@ -21,12 +22,12 @@
> >
<el-table-column align="center" label="等级序号"> <el-table-column align="center" label="等级序号">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.level}}</span> <span>{{ scope.row.level }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="名称"> <el-table-column align="center" label="名称">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.name}}</span> <span>{{ scope.row.name }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="图标"> <el-table-column align="center" label="图标">
...@@ -52,22 +53,27 @@ ...@@ -52,22 +53,27 @@
</el-table-column> </el-table-column>
<el-table-column align="center" label="折扣"> <el-table-column align="center" label="折扣">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.discount}}</span> <span>{{ scope.row.discount }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="免费天数"> <el-table-column align="center" label="免费天数">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.number}}</span> <span>{{ scope.row.number }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="价格"> <el-table-column align="center" label="价格">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.price}}</span> <span>{{ scope.row.price }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="佣金比例">
<template slot-scope="scope">
<span>{{ scope.row.extract }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="有效期"> <el-table-column align="center" label="有效期">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.endDate}}</span> <span>{{ scope.row.endDate }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="操作" fixed="right"> <el-table-column align="center" label="操作" fixed="right">
...@@ -75,26 +81,42 @@ ...@@ -75,26 +81,42 @@
<el-button <el-button
size="small" size="small"
class="el-button el-button--text el-button--small" class="el-button el-button--text el-button--small"
style="color:red" style="color: red"
@click="delMembership(scope.row)" @click="delMembership(scope.row)"
v-if="memberManagement_btn_del" v-if="memberManagement_btn_del"
>删除</el-button> >删除</el-button
>
<el-button <el-button
size="small" size="small"
class="el-button el-button--text el-button--small" class="el-button el-button--text el-button--small"
@click="compileShip(scope.row)" @click="compileShip(scope.row)"
>编辑</el-button> >编辑</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div> <div>
<el-dialog :title="vipTitle" :visible.sync="addMembershipGrade" class="mGrade" @close='cllsePop'> <el-dialog
<el-form :model="add" :rules="rules" ref="membershipGrade" label-width="110px"> :title="vipTitle"
:visible.sync="addMembershipGrade"
class="mGrade"
@close="cllsePop"
>
<el-form
:model="add"
:rules="rules"
ref="membershipGrade"
label-width="110px"
>
<el-row> <el-row>
<el-col :span="16"> <el-col :span="16">
<el-form-item label="会员等级名称" prop="name"> <el-form-item label="会员等级名称" prop="name">
<el-input type="text" v-model="add.name" placeholder="请填写会员等级名称"></el-input> <el-input
type="text"
v-model="add.name"
placeholder="请填写会员等级名称"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -122,7 +144,7 @@ ...@@ -122,7 +144,7 @@
:disabled="forbid" :disabled="forbid"
> >
<el-option <el-option
v-for="(val, key, index) in endDatelist " v-for="(val, key, index) in endDatelist"
:key="val.id" :key="val.id"
:label="val.name" :label="val.name"
:value="val.id" :value="val.id"
...@@ -158,6 +180,21 @@ ...@@ -158,6 +180,21 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row>
<el-col :span="16">
<el-form-item label="佣金比例">
<el-input-number
type="number"
:min="0"
:max="100"
:step="1"
:precision="0"
v-model="add.extract"
placeholder="佣金比例"
></el-input-number>
</el-form-item>
</el-col>
</el-row>
<el-row> <el-row>
<el-col :span="16"> <el-col :span="16">
<el-form-item label="价格" prop="price"> <el-form-item label="价格" prop="price">
...@@ -172,11 +209,13 @@ ...@@ -172,11 +209,13 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item label="图标" :style="{display:'block'}"> <el-form-item label="图标" :style="{ display: 'block' }">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:headers="getHeaderWithToken" :headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'" :action="
BASE_API + '/api/universal/file/app/unauth/admin/upload'
"
:show-file-list="false" :show-file-list="false"
:on-success="handleAvatarSuccess" :on-success="handleAvatarSuccess"
list-type="picture" list-type="picture"
...@@ -184,66 +223,93 @@ ...@@ -184,66 +223,93 @@
<img <img
v-if="$utils.isString(add.icon) && !$utils.isEmpty(add.icon)" v-if="$utils.isString(add.icon) && !$utils.isEmpty(add.icon)"
:src="add.icon" :src="add.icon"
style="width:300px;max-height:300px;" style="width: 300px; max-height: 300px"
/> />
<i <i
v-else v-else
class="el-icon-plus avatar-uploader-icon" class="el-icon-plus avatar-uploader-icon"
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;" style="
lineheight: 100px;
width: 300px;
height: 100px;
border: 1px dashed #ccc;
"
></i> ></i>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item label="大图标" :style="{display:'block'}"> <el-form-item label="大图标" :style="{ display: 'block' }">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:headers="getHeaderWithToken" :headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'" :action="
BASE_API + '/api/universal/file/app/unauth/admin/upload'
"
:show-file-list="false" :show-file-list="false"
:on-success="handleAvatarSuccessBig" :on-success="handleAvatarSuccessBig"
list-type="picture" list-type="picture"
> >
<img <img
v-if="$utils.isString(add.bigIcon) && !$utils.isEmpty(add.bigIcon)" v-if="
$utils.isString(add.bigIcon) && !$utils.isEmpty(add.bigIcon)
"
:src="add.bigIcon" :src="add.bigIcon"
style="width:300px;max-height:300px;" style="width: 300px; max-height: 300px"
/> />
<i <i
v-else v-else
class="el-icon-plus avatar-uploader-icon" class="el-icon-plus avatar-uploader-icon"
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;" style="
lineheight: 100px;
width: 300px;
height: 100px;
border: 1px dashed #ccc;
"
></i> ></i>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item label="商品图片" :style="{display:'block'}"> <el-form-item label="商品图片" :style="{ display: 'block' }">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:headers="getHeaderWithToken" :headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'" :action="
BASE_API + '/api/universal/file/app/unauth/admin/upload'
"
:show-file-list="false" :show-file-list="false"
:on-success="product" :on-success="product"
list-type="picture" list-type="picture"
> >
<img <img
v-if="$utils.isString(add.itemImg) && !$utils.isEmpty(add.itemImg)" v-if="
$utils.isString(add.itemImg) && !$utils.isEmpty(add.itemImg)
"
:src="add.itemImg" :src="add.itemImg"
style="width:300px;max-height:300px;" style="width: 300px; max-height: 300px"
/> />
<i <i
v-else v-else
class="el-icon-plus avatar-uploader-icon" class="el-icon-plus avatar-uploader-icon"
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;" style="
lineheight: 100px;
width: 300px;
height: 100px;
border: 1px dashed #ccc;
"
></i> ></i>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
</el-row> </el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="cancelSetMemberArea('membershipGrade')">取消</el-button> <el-button @click="cancelSetMemberArea('membershipGrade')"
<el-button type="primary" @click="save('membershipGrade')">确 定</el-button> >取消</el-button
>
<el-button type="primary" @click="save('membershipGrade')"
>确 定</el-button
>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
...@@ -255,7 +321,7 @@ import { ...@@ -255,7 +321,7 @@ import {
getMembers, getMembers,
delMembershipGrade, delMembershipGrade,
addMembershipGrade, addMembershipGrade,
update update,
} from "src/api/admin/member/index"; } from "src/api/admin/member/index";
import { mapGetters } from "vuex"; import { mapGetters } from "vuex";
import { getToken } from "src/utils/auth"; import { getToken } from "src/utils/auth";
...@@ -271,7 +337,7 @@ export default { ...@@ -271,7 +337,7 @@ export default {
listLoading: true, listLoading: true,
tableKey: 0, tableKey: 0,
addMembershipGrade: false, addMembershipGrade: false,
activeId:'', activeId: "",
add: { add: {
level: undefined, level: undefined,
name: undefined, name: undefined,
...@@ -281,7 +347,7 @@ export default { ...@@ -281,7 +347,7 @@ export default {
endDate: undefined, endDate: undefined,
icon: undefined, icon: undefined,
bigIcon: null, bigIcon: null,
itemImg:null itemImg: null,
}, },
endDatelist: [ endDatelist: [
{ id: 0, name: "永久" }, { id: 0, name: "永久" },
...@@ -290,16 +356,16 @@ export default { ...@@ -290,16 +356,16 @@ export default {
{ id: 3, name: "二年" }, { id: 3, name: "二年" },
{ id: 4, name: "三年" }, { id: 4, name: "三年" },
{ id: 5, name: "四年" }, { id: 5, name: "四年" },
{ id: 6, name: "五年" } { id: 6, name: "五年" },
], ],
year: { year: {
"-1": "永久", "-1": "永久",
"0": "半年", 0: "半年",
"1": "一年", 1: "一年",
"2": "二年", 2: "二年",
"3": "三年", 3: "三年",
"4": "四年", 4: "四年",
"5": "五年" 5: "五年",
}, },
rules: { rules: {
name: [ name: [
...@@ -307,31 +373,31 @@ export default { ...@@ -307,31 +373,31 @@ export default {
type: "string", type: "string",
required: true, required: true,
message: "请输入消息内容", message: "请输入消息内容",
trigger: "blur" trigger: "blur",
}, },
{ {
min: 0, min: 0,
max: 50, max: 50,
message: "长度小于 50个字符", message: "长度小于 50个字符",
trigger: "blur" trigger: "blur",
} },
], ],
level: [ level: [
{ {
required: true, required: true,
message: "请输入消息内容", message: "请输入消息内容",
trigger: "blur" trigger: "blur",
}, },
{ {
min: 0, min: 0,
max: 20, max: 20,
message: "长度小于 20个字符", message: "长度小于 20个字符",
trigger: "blur" trigger: "blur",
} },
] ],
}, },
memberManagement_btn_add: false, //添加 memberManagement_btn_add: false, //添加
memberManagement_btn_del: false //删除 memberManagement_btn_del: false, //删除
}; };
}, },
created() { created() {
...@@ -346,12 +412,12 @@ export default { ...@@ -346,12 +412,12 @@ export default {
*/ */
getHeaderWithToken() { getHeaderWithToken() {
return { Authorization: getToken() }; return { Authorization: getToken() };
} },
}, },
methods: { methods: {
cllsePop(){ cllsePop() {
// console.log('0000'); // console.log('0000');
this.cancelSetMemberArea('membershipGrade') this.cancelSetMemberArea("membershipGrade");
}, },
//编辑 //编辑
compileShip(row) { compileShip(row) {
...@@ -365,16 +431,17 @@ export default { ...@@ -365,16 +431,17 @@ export default {
discount: row.discount, discount: row.discount,
number: row.number, number: row.number,
price: row.price, price: row.price,
extract: row.extract,
endDate: row.endDate, endDate: row.endDate,
icon: row.icon, icon: row.icon,
bigIcon: row.bigIcon, bigIcon: row.bigIcon,
itemImg:row.itemImg itemImg: row.itemImg,
}; };
this.activeId = row.id this.activeId = row.id;
}, },
getList() { getList() {
this.listLoading = true; this.listLoading = true;
getMembers().then(res => { getMembers().then((res) => {
for (let dataKey of res.data) { for (let dataKey of res.data) {
if (dataKey.endDate == 0) { if (dataKey.endDate == 0) {
dataKey.endDate = "半年"; dataKey.endDate = "半年";
...@@ -390,16 +457,16 @@ export default { ...@@ -390,16 +457,16 @@ export default {
* 删除会员等级 * 删除会员等级
* */ * */
delMembership(row) { delMembership(row) {
delMembershipGrade(row.id).then(res => { delMembershipGrade(row.id).then((res) => {
if (res.rel) { if (res.rel) {
this.$notify.success({ this.$notify.success({
title: "成功", title: "成功",
message: `success` message: `success`,
}); });
} else { } else {
this.$notify.warning({ this.$notify.warning({
title: "失败", title: "失败",
message: `failed` message: `failed`,
}); });
} }
this.getList(); this.getList();
...@@ -426,18 +493,18 @@ export default { ...@@ -426,18 +493,18 @@ export default {
save(refName) { save(refName) {
let membership = JSON.parse(JSON.stringify(this.add)); let membership = JSON.parse(JSON.stringify(this.add));
membership.endDate = membership.endDate - 1; membership.endDate = membership.endDate - 1;
membership.id = this.activeId membership.id = this.activeId;
if (this.vipTitle == "增加会员等级") { if (this.vipTitle == "增加会员等级") {
addMembershipGrade(membership).then(res => { addMembershipGrade(membership).then((res) => {
if (!res.rel) { if (!res.rel) {
this.$notify.success({ this.$notify.success({
title: "成功", title: "成功",
message: `success` message: `success`,
}); });
} else { } else {
this.$notify.warning({ this.$notify.warning({
title: "失败", title: "失败",
message: `failed` message: `failed`,
}); });
} }
this.getList(); this.getList();
...@@ -447,16 +514,16 @@ export default { ...@@ -447,16 +514,16 @@ export default {
this.addMembershipGrade = false; this.addMembershipGrade = false;
}); });
} else { } else {
update(membership).then(data => { update(membership).then((data) => {
if (data.status == 200) { if (data.status == 200) {
this.$notify.success({ this.$notify.success({
title: "成功", title: "成功",
message: `success` message: `success`,
}); });
} else { } else {
this.$notify.warning({ this.$notify.warning({
title: "失败", title: "失败",
message: `failed` message: `failed`,
}); });
} }
this.getList(); this.getList();
...@@ -481,8 +548,8 @@ export default { ...@@ -481,8 +548,8 @@ export default {
//商品展示 //商品展示
product(res) { product(res) {
this.add.itemImg = res.data; this.add.itemImg = res.data;
} },
} },
}; };
</script> </script>
<style> <style>
......
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