|
@@ -2,7 +2,7 @@
|
|
|
<div class="m-container">
|
|
|
<h2>
|
|
|
<div class="squrt"></div>
|
|
|
- 会员设置
|
|
|
+ 学练宝设置
|
|
|
</h2>
|
|
|
<div class="m-core">
|
|
|
<save-form
|
|
@@ -18,12 +18,30 @@
|
|
|
<el-input
|
|
|
v-model.trim="searchForm.search"
|
|
|
clearable
|
|
|
- placeholder="会员名称"
|
|
|
+ placeholder="学练宝名称"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="createTimer">
|
|
|
+ <el-date-picker
|
|
|
+ v-model.trim="searchForm.createTimer"
|
|
|
+ type="daterange"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="更新开始时间"
|
|
|
+ end-placeholder="更新结束时间"
|
|
|
+ :picker-options="{ firstDayOfWeek: 1 }"
|
|
|
+ ></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-input
|
|
|
+ v-model.trim="searchForm.updateName"
|
|
|
+ clearable
|
|
|
+ placeholder="更新人"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button native-type="submit" type="danger">搜索</el-button>
|
|
|
- <!-- <el-button native-type="reset" type="primary">重置</el-button> -->
|
|
|
+ <el-button native-type="reset" type="primary">重置</el-button>
|
|
|
</el-form-item>
|
|
|
</save-form>
|
|
|
<el-button
|
|
@@ -31,56 +49,48 @@
|
|
|
style="margin-bottom: 20px"
|
|
|
v-permission="'memberRankSetting/add'"
|
|
|
@click="addLeave"
|
|
|
- >新增会员等级</el-button
|
|
|
+ >新增</el-button
|
|
|
>
|
|
|
<el-table
|
|
|
:data="tableList"
|
|
|
:header-cell-style="{ background: '#EDEEF0', color: '#444' }"
|
|
|
+ row-key="id"
|
|
|
+ :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
|
|
|
>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
prop="name"
|
|
|
- label="会员名称"
|
|
|
+ label="学练宝名称"
|
|
|
></el-table-column>
|
|
|
- <el-table-column align="center" prop="type" label="会员标识">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-image
|
|
|
- style="width: 100px; height: 100px"
|
|
|
- :src="scope.row.icon"
|
|
|
- :preview-src-list="[scope.row.icon]"
|
|
|
- >
|
|
|
- </el-image>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column align="center" prop="type" label="试用会员标识">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-image
|
|
|
- style="width: 100px; height: 100px"
|
|
|
- :src="scope.row.experienceIcon"
|
|
|
- :preview-src-list="[scope.row.experienceIcon]"
|
|
|
- >
|
|
|
- </el-image>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <!-- <el-table-column
|
|
|
+
|
|
|
+ <el-table-column
|
|
|
+ align="center"
|
|
|
+ prop="name"
|
|
|
+ label="学练宝介绍"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
align="center"
|
|
|
- prop="type"
|
|
|
- label="是否新用户试用"
|
|
|
- ></el-table-column> -->
|
|
|
+ prop="name"
|
|
|
+ label="曲目数量"
|
|
|
+ ></el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
prop="updateTime"
|
|
|
- width="100px"
|
|
|
- label="修改时间"
|
|
|
+ label="更新时间"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
prop="operatorName"
|
|
|
- label="修改人"
|
|
|
+ label="更新人"
|
|
|
></el-table-column>
|
|
|
<el-table-column align="center" label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
<div>
|
|
|
+ <auth auths="memberRankSetting/get">
|
|
|
+ <el-button type="text" @click="resetMember(scope.row)"
|
|
|
+ >添加了项</el-button
|
|
|
+ >
|
|
|
+ </auth>
|
|
|
<!-- memberRankSetting/add -->
|
|
|
<auth auths="memberRankSetting/get">
|
|
|
<el-button type="text" @click="resetMember(scope.row)"
|
|
@@ -120,18 +130,28 @@
|
|
|
>
|
|
|
<el-form :model="form" :inline="true" ref="ruleForm">
|
|
|
<el-alert
|
|
|
- title="会员信息"
|
|
|
+ title="学练宝信息"
|
|
|
type="info"
|
|
|
:closable="false"
|
|
|
style="margin-bottom: 20px"
|
|
|
>
|
|
|
</el-alert>
|
|
|
-
|
|
|
<el-form-item
|
|
|
- label="会员名称"
|
|
|
+ label="父级"
|
|
|
+ prop="name"
|
|
|
+ :label-width="formLabelWidth"
|
|
|
+ >
|
|
|
+ <el-input
|
|
|
+ :disabled="true"
|
|
|
+ v-model.trim="form.name"
|
|
|
+ style="width: 620px"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="学练宝名称"
|
|
|
prop="name"
|
|
|
:label-width="formLabelWidth"
|
|
|
- :rules="[{ required: true, message: '请输入会员名称' }]"
|
|
|
+ :rules="[{ required: true, message: '请输入学练宝名称' }]"
|
|
|
>
|
|
|
<el-input
|
|
|
:disabled="addDisabled"
|
|
@@ -143,10 +163,10 @@
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item
|
|
|
- label="会员介绍"
|
|
|
+ label="学练宝介绍"
|
|
|
prop="intro"
|
|
|
:label-width="formLabelWidth"
|
|
|
- :rules="[{ required: true, message: '请输入会员介绍' }]"
|
|
|
+ :rules="[{ required: true, message: '请输入学练宝介绍' }]"
|
|
|
>
|
|
|
<el-input
|
|
|
maxlength="200"
|
|
@@ -159,74 +179,8 @@
|
|
|
style="width: 620px"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="会员标识"
|
|
|
- prop="icon"
|
|
|
- :label-width="formLabelWidth"
|
|
|
- :rules="[{ required: true, message: '请上传会员标识' }]"
|
|
|
- >
|
|
|
- <!-- <upload
|
|
|
- v-if="!addDisabled"
|
|
|
- v-model="form.icon"
|
|
|
- :imageWidthM="200"
|
|
|
- :disabled="addDisabled"
|
|
|
- :imageHeightM="200"
|
|
|
- ></upload>
|
|
|
- <img v-else :src="form.icon" alt="" width="120px" height="120px" /> -->
|
|
|
- <image-cropper :options="cropperOptions" :disabled="addDisabled" :imgSize="2" :imageUrl="form.icon" @crop-upload-success="cropSuccess2" />
|
|
|
- <!-- <p style="color: red" v-if="!addDisabled">
|
|
|
- 请上传200*200像素,大小2M以内,格式为jpg、png、gif图片
|
|
|
- </p> -->
|
|
|
- </el-form-item>
|
|
|
- <br>
|
|
|
- <el-form-item
|
|
|
- label="试用会员标识"
|
|
|
- prop="experienceIcon"
|
|
|
- :label-width="formLabelWidth"
|
|
|
- :rules="[{ required: true, message: '请上传试用会员标识' }]"
|
|
|
- >
|
|
|
- <!-- <upload
|
|
|
- v-if="!addDisabled"
|
|
|
- v-model="form.experienceIcon"
|
|
|
- :imageWidthM="200"
|
|
|
- :disabled="addDisabled"
|
|
|
- :imageHeightM="200"
|
|
|
- ></upload> -->
|
|
|
- <image-cropper :options="cropperOptions" :disabled="addDisabled" :imgSize="2" :imageUrl="form.experienceIcon" @crop-upload-success="cropSuccess" />
|
|
|
- <!-- <img v-else :src="form.experienceIcon" alt="" width="120px" height="120px" /> -->
|
|
|
- <p style="color: red" v-if="!addDisabled">
|
|
|
- 请上传大小2M以内,格式为jpg、png、gif图片
|
|
|
- </p>
|
|
|
- </el-form-item>
|
|
|
- <!-- <br />
|
|
|
- <el-form-item
|
|
|
- label="是否新用户试用"
|
|
|
- prop="name"
|
|
|
- :label-width="formLabelWidth"
|
|
|
- >
|
|
|
- <el-select
|
|
|
- v-model.trim="form.isProbationPeriod"
|
|
|
- clearable
|
|
|
- filterable
|
|
|
- placeholder="请选择是否试用"
|
|
|
- >
|
|
|
- <el-option label="是" :value="true"></el-option>
|
|
|
- <el-option label="否" :value="false"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="试用期限"
|
|
|
- prop="name"
|
|
|
- :label-width="formLabelWidth"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- style="width: 200px"
|
|
|
- v-model.trim="form.name"
|
|
|
- autocomplete="off"
|
|
|
- >
|
|
|
- <template slot="append">天</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item> -->
|
|
|
+
|
|
|
+
|
|
|
<el-alert
|
|
|
title="会员权益"
|
|
|
type="info"
|
|
@@ -245,7 +199,7 @@
|
|
|
<el-button type="primary" @click="onReSetRole">重置</el-button>
|
|
|
</el-form-item>
|
|
|
<br />
|
|
|
- <el-form-item label="会员功能" :label-width="formLabelWidth">
|
|
|
+ <el-form-item label="学练宝内容" :label-width="formLabelWidth">
|
|
|
<el-checkbox
|
|
|
:disabled="addDisabled"
|
|
|
:indeterminate="isIndeterminate"
|
|
@@ -272,6 +226,34 @@
|
|
|
</el-tree>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
+
|
|
|
+
|
|
|
+ <el-form-item label="学练宝功能" :label-width="formLabelWidth">
|
|
|
+ <el-checkbox
|
|
|
+ :disabled="addDisabled"
|
|
|
+ :indeterminate="isIndeterminate"
|
|
|
+ @change="onCheckAll"
|
|
|
+ v-model.trim="checkAll"
|
|
|
+ >全选</el-checkbox
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <el-tree
|
|
|
+ class="tree"
|
|
|
+ :data="treeData"
|
|
|
+ show-checkbox
|
|
|
+ node-key="id"
|
|
|
+ @check="onTreeCheck"
|
|
|
+ :filter-node-method="filterNode"
|
|
|
+ highlight-current
|
|
|
+ :default-checked-keys="checkList"
|
|
|
+ :props="defaultProps"
|
|
|
+ >
|
|
|
+ <div slot-scope="{ node, data }">
|
|
|
+ {{ node.label }}
|
|
|
+ </div>
|
|
|
+ </el-tree>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
</el-form>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button v-if="!addDisabled" @click="branchStatus = false"
|
|
@@ -293,6 +275,7 @@ import {
|
|
|
getmemberRankDetail,
|
|
|
resetMemberRank,
|
|
|
} from "./api";
|
|
|
+import { getTimes } from "@/utils";
|
|
|
import { getMemberPrivilegesItem } from "@/views/dictionaryManager/api";
|
|
|
export default {
|
|
|
components: { pagination, Upload, ImageCropper },
|
|
@@ -302,6 +285,8 @@ export default {
|
|
|
formLabelWidth: "120px",
|
|
|
searchForm: {
|
|
|
search: null,
|
|
|
+ updateName: null,
|
|
|
+ createTimer: [],
|
|
|
},
|
|
|
rules: {
|
|
|
// 分页规则
|
|
@@ -315,9 +300,9 @@ export default {
|
|
|
branchStatus: false,
|
|
|
form: {
|
|
|
name: "",
|
|
|
- icon: "",
|
|
|
- into: "",
|
|
|
- experienceIcon:'',
|
|
|
+ // icon: "",
|
|
|
+ // into: "",
|
|
|
+ // experienceIcon:'',
|
|
|
},
|
|
|
addDisabled: false,
|
|
|
checkAll: false,
|
|
@@ -354,12 +339,12 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
onFormClose(ruleForm) {
|
|
|
- (this.form = {
|
|
|
+ this.form = {
|
|
|
name: "",
|
|
|
icon: "",
|
|
|
into: "",
|
|
|
- }),
|
|
|
- this.$refs.trees.setCheckedNodes([]);
|
|
|
+ }
|
|
|
+ this.$refs.trees.setCheckedNodes([]);
|
|
|
this.onTreeCheck();
|
|
|
this.$refs[ruleForm].resetFields();
|
|
|
},
|
|
@@ -367,17 +352,20 @@ export default {
|
|
|
this.rules.page = 1;
|
|
|
this.getList();
|
|
|
},
|
|
|
- onReSet() {},
|
|
|
- cropSuccess(data) {
|
|
|
- this.form.experienceIcon = data.data.url;
|
|
|
- },
|
|
|
- cropSuccess2(data) {
|
|
|
- this.form.icon = data.data.url;
|
|
|
+ onReSet() {
|
|
|
+ this.searchForm = {
|
|
|
+ search: null,
|
|
|
+ updateName: null,
|
|
|
+ createTimer: [],
|
|
|
+ }
|
|
|
+ this.search()
|
|
|
},
|
|
|
async getList() {
|
|
|
try {
|
|
|
+ let { createTimer, ...reset } = this.searchForm;
|
|
|
const res = await getmemberRankList({
|
|
|
- search: this.searchForm.search,
|
|
|
+ ...reset,
|
|
|
+ ...getTimes(createTimer, ["startDate", "endDate"], "YYYY-MM-DD"),
|
|
|
rows: this.rules.limit,
|
|
|
page: this.rules.page,
|
|
|
});
|
|
@@ -387,7 +375,7 @@ export default {
|
|
|
},
|
|
|
async addLeave() {
|
|
|
this.checkList = [];
|
|
|
- this.title = "新增会员等级";
|
|
|
+ this.title = "新增";
|
|
|
this.addDisabled = false;
|
|
|
this.pageType = "create";
|
|
|
await this.getNewTree();
|
|
@@ -454,7 +442,6 @@ export default {
|
|
|
},
|
|
|
onReSetRole() {
|
|
|
this.seachRoleValue = "";
|
|
|
- // this.data = this.setTableData(this.silderList);
|
|
|
this.$refs.trees.filter(this.seachRoleValue);
|
|
|
// console.log(this.data);
|
|
|
},
|
|
@@ -484,7 +471,7 @@ export default {
|
|
|
this.branchStatus = true;
|
|
|
await this.resetTree(row);
|
|
|
if (type) {
|
|
|
- this.title = "修改会员等级";
|
|
|
+ this.title = "修改";
|
|
|
this.pageType = "update";
|
|
|
this.addDisabled = false;
|
|
|
this.slideCount = 0;
|
|
@@ -494,7 +481,7 @@ export default {
|
|
|
);
|
|
|
} else {
|
|
|
this.addDisabled = true;
|
|
|
- this.title = "查看会员等级";
|
|
|
+ this.title = "查看";
|
|
|
this.pageType = "";
|
|
|
this.slideCount = 0;
|
|
|
this.treeData = await this.setTableData(
|