Browse Source

系统收费

1
mo 4 years ago
parent
commit
191656704f

+ 2 - 0
src/router/index.js

@@ -220,6 +220,8 @@ export const asyncRoutes = {
   globalSubjects: () => import('@/views/categroyManager/globalSubjects'),
   // 全局乐团设置
   globalMusicGroup: () => import('@/views/categroyManager/globalMusicGroup'),
+  // 全局产品设置
+  productSystem:()=>import('@/views/categroyManager/productSystem'),
   // 侧边栏管理
   setSilder: () => import('@/views/setSilder/addSilder'),
   // 乐团老师点名记录

+ 0 - 81
src/views/categroyManager/globalConfig.vue

@@ -11,78 +11,6 @@
           type="card"
           @tab-click="handleClick"
         >
-          <!-- <el-tab-pane
-            label="声部设置(对内)"
-            lazy
-            name="0"
-            v-if="permissionList.musicalManager"
-          >
-            <musicalManager v-if="activeIndex == 0" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="声部设置(对外)"
-            lazy
-            name="1"
-            v-if="permissionList.musicalManagerOut"
-          >
-            <musicalManagerOut v-if="activeIndex == 1" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="乐团收费类型"
-            lazy
-            name="2"
-            v-if="permissionList.typesManager"
-          >
-            <typesManager v-if="activeIndex == 2" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="课程时长设置"
-            lazy
-            name="11"
-            v-if="permissionList.courseTimerSetting"
-          >
-            <courseTimerSetting v-if="activeIndex == 11" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="商品折扣和声部设置"
-            lazy
-            name="9"
-            v-if="permissionList.discountManage"
-          >
-            <discountManage v-if="activeIndex == 9" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="乐团收费标准"
-            lazy
-            name="3"
-            v-if="permissionList.chargesList"
-          >
-            <chargesList v-if="activeIndex == 3" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="乐团课程费用"
-            lazy
-            name="10"
-            v-if="permissionList.musicCourseFee"
-          >
-            <musicCourseFee v-if="activeIndex == 10" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="乐团作业模板"
-            lazy
-            name="4"
-            v-if="permissionList.jobTemplateSetting"
-          >
-            <jobTemplateSetting v-if="activeIndex == 4" />
-          </el-tab-pane>
-          <el-tab-pane
-            label="热词标签"
-            lazy
-            name="5"
-            v-if="permissionList.errorManager"
-          >
-            <errorManager v-if="activeIndex == 5" />
-          </el-tab-pane> -->
           <el-tab-pane
             label="参数设置"
             lazy
@@ -159,15 +87,6 @@ export default {
         overallManagerTwo: permission("/globalConfig/overallManagerTwo"),
         holidaySetting: permission("/globalConfig/holidaySetting"),
         earlyWarning: permission("/globalConfig/earlyWarning"),
-        // musicalManager: permission("/globalConfig/musicalManager"),
-        // musicalManagerOut: permission("/globalConfig/musicalManagerOut"),
-        // typesManager: permission("/globalConfig/typesManager"),
-        // chargesList: permission("/globalConfig/chargesList"),
-        // jobTemplateSetting: permission("/globalConfig/jobTemplateSetting"),
-        // errorManager: permission("/globalConfig/errorManager"),
-        // musicCourseFee: permission("/globalConfig/musicCourseFee"),
-        // discountManage: permission("/globalConfig/discountManage"),
-        // courseTimerSetting: permission("/globalConfig/courseTimerSetting")
       }
     };
   },

+ 64 - 0
src/views/categroyManager/productSystem/index.vue

@@ -0,0 +1,64 @@
+<template>
+  <div class="m-container">
+    <h2>
+      <div class="squrt"></div>
+      产品收费设置
+    </h2>
+    <div class="m-core">
+      <!-- navMenu -->
+      <tab-router
+        v-model.trim="activeIndex"
+        type="card"
+        @tab-click="handleClick"
+      >
+        <el-tab-pane
+          label="会员设置"
+          lazy
+          name="1"
+          v-if="permissionList.memberSet"
+        >
+
+          <member-set v-if="activeIndex == 1" />
+        </el-tab-pane>
+        <el-tab-pane
+          label="会员收费标准"
+          lazy
+          name="2"
+           v-if="permissionList.memberFeeSet"
+        >
+
+          <member-fee-set v-if="activeIndex == 2" />
+        </el-tab-pane>
+      </tab-router>
+    </div>
+  </div>
+</template>
+<script>
+import memberFeeSet from "./memberFeeSet";
+import memberSet from "./memberSet";
+import { permission } from "@/utils/directivePage";
+export default {
+   components:{'member-fee-set':memberFeeSet,'member-set':memberSet},
+  data() {
+    return {
+      activeIndex: "1",
+      permissionList: {
+        memberSet: permission("/memberSet"),
+        memberFeeSet: permission("/memberFeeSet"),
+
+      },
+
+    };
+  },
+  mounted(){
+
+  },
+  methods:{
+      handleClick(val) {
+      this.activeIndex = val.name;
+    }
+  }
+};
+</script>
+<style lang="scss">
+</style>

+ 88 - 0
src/views/categroyManager/productSystem/memberFeeSet.vue

@@ -0,0 +1,88 @@
+<template>
+  <div>
+    <save-form
+      :inline="true"
+      class="searchForm"
+      save-key="memberSet"
+      @submit="search"
+      @reset="onReSet"
+      :model.sync="searchForm"
+    >
+      <!-- 状态 指导老师 活动方案-->
+      <el-form-item>
+        <el-input
+          v-model.trim="searchForm.search"
+          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-form-item>
+    </save-form>
+    <el-button
+      type="primary"
+      style="margin-bottom: 20px"
+      v-permission="'/vipNewActive'"
+      >新增会员等级</el-button
+    >
+    <el-table
+      :data="tableList"
+      :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+    >
+      <el-table-column
+        align="center"
+        prop="type"
+        label="会员名称"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="type"
+        label="会员标识"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="type"
+        label="是否新用户试用"
+      ></el-table-column>
+    </el-table>
+    <pagination
+      save-key="memberSet"
+      :total.sync="rules.total"
+      sync
+      :page.sync="rules.page"
+      :limit.sync="rules.limit"
+      :page-sizes="rules.page_size"
+      @pagination="getList"
+    />
+  </div>
+</template>
+<script>
+import pagination from "@/components/Pagination/index";
+export default {
+  components: { pagination },
+  name: "memberSet",
+  data() {
+    return {
+      searchForm: {
+        search: null,
+      },
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50], // 选择限制显示条数
+      },
+      tableList: [],
+    };
+  },
+  mounted() {},
+  methods: {
+    search() {},
+    onReSet() {},
+    getList() {},
+  },
+};
+</script>

+ 176 - 0
src/views/categroyManager/productSystem/memberSet.vue

@@ -0,0 +1,176 @@
+<template>
+  <div>
+    <save-form
+      :inline="true"
+      class="searchForm"
+      save-key="memberSet"
+      @submit="search"
+      @reset="onReSet"
+      :model.sync="searchForm"
+    >
+      <!-- 状态 指导老师 活动方案-->
+      <el-form-item>
+        <el-input
+          v-model.trim="searchForm.search"
+          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-form-item>
+    </save-form>
+    <el-button
+      type="primary"
+      style="margin-bottom: 20px"
+      v-permission="'/vipNewActive'"
+      @click="addLeave"
+      >新增会员等级</el-button
+    >
+    <el-table
+      :data="tableList"
+      :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+    >
+      <el-table-column
+        align="center"
+        prop="type"
+        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.url"
+            :preview-src-list="[scope.row.url]"
+          >
+          </el-image>
+        </template>
+      </el-table-column>
+      <el-table-column
+        align="center"
+        prop="type"
+        label="是否新用户试用"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="type"
+        label="修改时间"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="type"
+        label="修改人"
+      ></el-table-column>
+      <el-table-column align="center" label="操作">
+        <template slot-scope="scope">
+          <div>
+            <el-button type="text">详情</el-button>
+            <el-button type="text">修改</el-button>
+          </div>
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-dialog
+      :title="title"
+      :close-on-click-modal="false"
+      :visible.sync="branchStatus"
+      default-expand-all
+      @close="onFormClose('ruleForm')"
+      width="500px"
+    >
+      <el-form :model="form" :rules="rules" ref="ruleForm">
+        <el-alert title="会员信息" type="info"> </el-alert>
+         <el-alert title="会员权益" type="info"> </el-alert>
+        <el-form-item
+          label="功能名称"
+          prop="name"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model.trim="form.name" autocomplete="off"></el-input>
+        </el-form-item>
+        <el-form-item
+          label="功能标识"
+          prop="code"
+          :label-width="formLabelWidth"
+        >
+          <el-input v-model.trim="form.code" autocomplete="off"></el-input>
+        </el-form-item>
+        <el-form-item
+          label="父元素ID"
+          prop="parentId"
+          :label-width="formLabelWidth"
+        >
+          <el-cascader
+            v-model="form.parentId"
+            style="width: 100%"
+            :options="cascaderList"
+            :props="optionProps"
+          ></el-cascader>
+        </el-form-item>
+
+        <el-form-item
+          label="功能描述"
+          :label-width="formLabelWidth"
+          prop="desc"
+        >
+          <el-input
+            type="textarea"
+            v-model.trim="form.desc"
+            autocomplete="off"
+            :rows="3"
+          ></el-input>
+        </el-form-item>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="branchStatus = false">取 消</el-button>
+        <el-button @click="onBranchSubmit" type="primary">确 定</el-button>
+      </span>
+    </el-dialog>
+
+    <pagination
+      save-key="memberSet"
+      :total.sync="rules.total"
+      sync
+      :page.sync="rules.page"
+      :limit.sync="rules.limit"
+      :page-sizes="rules.page_size"
+      @pagination="getList"
+    />
+  </div>
+</template>
+<script>
+import pagination from "@/components/Pagination/index";
+export default {
+  components: { pagination },
+  name: "memberSet",
+  data() {
+    return {
+      searchForm: {
+        search: null,
+      },
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50], // 选择限制显示条数
+      },
+      tableList: [],
+      title: "新增会员等级",
+      branchStatus: false,
+      form: {},
+    };
+  },
+  mounted() {},
+  methods: {
+    search() {},
+    onReSet() {},
+    getList() {},
+    addLeave(){
+      this.title = '新增会员等级'
+      this.branchStatus = true;
+    }
+  },
+};
+</script>

+ 9 - 0
src/views/dictionaryManager/api.js

@@ -30,3 +30,12 @@ export function resetMemberPrivilegesItem(data) {
     data
   })
 }
+
+// 删除功能字典
+export function deleteMemberPrivilegesItem(data) {
+  return request2({
+    url: api + '/memberPrivilegesItem/del',
+    method: 'post',
+    data
+  })
+}

+ 32 - 8
src/views/dictionaryManager/index.vue

@@ -22,7 +22,7 @@
         </el-form-item>
         <el-form-item>
           <el-button native-type="submit" type="primary">搜索</el-button>
-          <!-- <el-button native-type="reset" type="danger">重置</el-button> -->
+          <el-button native-type="reset" type="danger">重置</el-button>
         </el-form-item>
       </save-form>
       <div class="btnList">
@@ -131,7 +131,12 @@
 import axios from "axios";
 import { getToken } from "@/utils/auth";
 import load from "@/utils/loading";
-import { getMemberPrivilegesItem, addMemberPrivilegesItem,resetMemberPrivilegesItem } from "./api";
+import {
+  getMemberPrivilegesItem,
+  addMemberPrivilegesItem,
+  resetMemberPrivilegesItem,
+  deleteMemberPrivilegesItem,
+} from "./api";
 export default {
   data() {
     return {
@@ -194,6 +199,8 @@ export default {
       }
     },
     search() {
+      // 搜索
+
       // this.rules.page = 1;
       // this.getList();
     },
@@ -215,7 +222,24 @@ export default {
       };
       this.branchStatus = true;
     },
-    onDelete(row) {},
+    onDelete(row) {
+      this.$confirm(`是否删除该功能`, "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(async () => {
+          try{
+            const res = await  deleteMemberPrivilegesItem({id:row.id})
+              this.$message.success("删除成功");
+              this.getList();
+
+          }catch{}
+
+        })
+        .catch(() => {});
+
+    },
     onBranchSubmit() {
       this.$refs["ruleForm"].validate(async (valid) => {
         if (valid) {
@@ -239,13 +263,13 @@ export default {
             if (typeof form.parentId === "object") {
               form.parentId = form.parentId.pop();
             }
-            try{
-              const res = await resetMemberPrivilegesItem(form)
-                this.$message.success("修改成功");
+            try {
+              const res = await resetMemberPrivilegesItem(form);
+              this.$message.success("修改成功");
               this.getList();
               this.branchStatus = false;
-            }catch(e){
-              console.log(e)
+            } catch (e) {
+              console.log(e);
             }
           }
         } else {