浏览代码

网管课价格配置

1
mo 3 年之前
父节点
当前提交
14a22ae933

+ 2 - 2
src/App.vue

@@ -30,7 +30,7 @@ export default {
   },
 };
 </script>
-<style >
+<style lang="scss">
 * {
   margin: 0;
   padding: 0;
@@ -255,7 +255,7 @@ input[type="number"] {
   box-sizing: border-box;
   background-color: #fff;
   padding: 18px 30px 40px;
-  // height: calc(100vh- 80px) !important;
+  // height: calc(100vh - 145px) !important;
   // height: calc(100vh - 70px);
   width: 100%;
   // min-width: 1440px;

+ 2 - 2
src/components/select-all/index.vue

@@ -24,7 +24,7 @@
       >
         <slot />
       </el-select>
-      <el-button @click="selectAll" class="btn" v-bind="{ ...$attrs }">
+      <el-button @click="selectAll" class="btn" v-bind="{ ...$attrs, ...$props  }">
         全选
       </el-button>
     </div>
@@ -121,7 +121,7 @@ export default {
   padding: 0 10px;
   border-left: none;
   border-radius: 0 4px 4px 0;
-  height: 40px;
+  // height: 40px;
 }
 .item {
   width: 100%;

+ 11 - 7
src/router/index.js

@@ -449,18 +449,22 @@ export const asyncRoutes = {
   //2021十一活动
   memeberActionManager: () => import('@/views/2021memeberActionManager'),
   // 优惠券管理
-  couponManager:()=>import ('@/views/couponManager'),
+  couponManager: () => import('@/views/couponManager'),
   // 优惠券明细
-  couponDetail:()=>import ('@/views/couponManager/couponDetail'),
+  couponDetail: () => import('@/views/couponManager/couponDetail'),
   // 优惠券明细
-  activeMarketing:()=>import ('@/views/activityScheduling/activeMarketing'),
+  activeMarketing: () => import('@/views/activityScheduling/activeMarketing'),
   // 2021双11
-  '2021double11List':()=>import ('@/views/activityScheduling/2021double11List'),
+  '2021double11List': () => import('@/views/activityScheduling/2021double11List'),
   // 活动资格管理
-  activeSenior:()=>import('@/views/categroyManager/activeSenior'),
-  backManager:()=>import ('@/views/backManager'),
+  activeSenior: () => import('@/views/categroyManager/activeSenior'),
+  backManager: () => import('@/views/backManager'),
   // 教材列表
-  teachManager:()=>import ('@/views/teachManager')
+  teachManager: () => import('@/views/teachManager'),
+  // 网管课基础配置
+  accompanyBaseConfig: () => import('@/views/categroyManager/accompanyBaseConfig'),
+  // 网管课价格配置
+  accompanyFeeConfig: () => import('@/views/categroyManager/accompanyFeeConfig')
 }
 
 export default router

+ 68 - 0
src/views/categroyManager/accompanyBaseConfig.vue

@@ -0,0 +1,68 @@
+<template>
+  <div class="m-container">
+    <h2>
+      <div class="squrt"></div>
+      网管课基础配置设置
+    </h2>
+    <div class="m-core">
+      <el-alert
+        style="margin: 20px 0"
+        title="网管课分部设置"
+        :closable="false"
+        class="alert"
+        type="info"
+      >
+      </el-alert>
+      <el-row class="row">
+        网管课可选声部
+        <select-all
+        class="chioseOragn"
+          multiple
+          collapse-tags
+          v-model="organIdList"
+          clearable
+          filterable
+          size="mini"
+          placeholder="请选择分部"
+        >
+          <el-option
+            v-for="(item, index) in selects.branchs"
+            :key="index"
+            :label="item.name"
+            :value="item.id"
+          ></el-option>
+        </select-all>
+        老师
+        <el-button type="primary" size="mini" class="submitBtn">保存</el-button>
+      </el-row>
+    </div>
+  </div>
+</template>
+<script>
+export default {
+  data() {
+    return {
+      organIdList: [],
+    };
+  },
+  mounted() {
+    this.$store.dispatch("setBranchs");
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+.chioseOragn {
+  width: 400px;
+  margin: 0 5px;
+}
+.row {
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  font-size: 14px;
+}
+.submitBtn {
+  margin-left: 10px;
+}
+</style>

+ 173 - 0
src/views/categroyManager/accompanyFeeConfig.vue

@@ -0,0 +1,173 @@
+<template>
+  <div class="m-container">
+    <h2>
+      <div class="squrt"></div>
+      网管课价格设置
+    </h2>
+    <div class="m-core">
+      <save-form
+        :inline="true"
+        :model="searchForm"
+        @submit="search"
+        @reset="onReSet"
+        ref='searchForm'
+      >
+        <el-form-item prop="organId">
+          <el-select
+            class="multiple"
+            v-model.trim="searchForm.organId"
+            filterable
+            clearable
+            placeholder="请选择分部"
+          >
+            <el-option
+              v-for="(item, index) in selects.branchs"
+              :key="index"
+              :label="item.name"
+              :value="item.id"
+            ></el-option>
+          </el-select>
+        </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-form-item>
+      </save-form>
+      <div class="tableWrap">
+        <el-table
+          style="width: 100%"
+          :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+          :data="tableList"
+        >
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="分部"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="课程时长(分钟)"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="课程单价(元)"
+          ></el-table-column>
+          <el-table-column align="center" prop="studentId" label="操作">
+            <template slot-scope="scope">
+              <div>
+                <el-button type="text" @click="resetFee(scope.row)"
+                  >修改</el-button
+                >
+              </div>
+            </template>
+          </el-table-column>
+        </el-table>
+        <pagination
+          sync
+          :total.sync="rules.total"
+          :page.sync="rules.page"
+          :limit.sync="rules.limit"
+          :page-sizes="rules.page_size"
+          @pagination="getList"
+        />
+      </div>
+    </div>
+    <el-dialog
+      title="修改课程单价"
+      :visible.sync="dialogVisible"
+      width="400px"
+      append-to-body
+      v-if="dialogVisible"
+    >
+      <el-form :model="form" label-width="120px" label-position="right" >
+        <el-form-item label="分部:">{{ form.organName }}</el-form-item>
+        <el-form-item label="课程时长(分钟):">{{
+          form.courseTime
+        }}</el-form-item>
+        <el-form-item
+          label="课程单价(元):"
+          prop="courseFee"
+          :rules="[
+            { required: true, message: '请输入课程单价', trigger: 'blur' },
+            {
+              pattern:
+                /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
+              message: '请输入正确的金额',
+              trigger: 'blur',
+            },
+          ]"
+        >
+          <el-input v-model="form.courseFee"></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer">
+        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button type="primary" @click="submitReset">确认修改</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+<script>
+import axios from "axios";
+import { getToken } from "@/utils/auth";
+import pagination from "@/components/Pagination/index";
+import load from "@/utils/loading";
+export default {
+  components:{
+    pagination
+  },
+  data() {
+    return {
+      searchForm: {
+        organId: null,
+      },
+      form: {
+        organName: "武汉",
+        courseTime: "25",
+        courseFee: "180",
+      },
+      tableList: [{}],
+      organList: [],
+      activeRow: null,
+      dialogVisible: false,
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50], // 选择限制显示条数
+      },
+    };
+  },
+  created() {},
+  //生命周期 - 挂载完成(可以访问DOM元素)
+  mounted() {
+    // 获取分部
+    this.$store.dispatch("setBranchs");
+    this.init();
+  },
+  methods: {
+    init() {},
+    getList() {},
+    search() {
+      this.rules.page = 1;
+      this.getList();
+    },
+    onReSet() {
+      this.$refs.searchForm.resetFields();
+      this.search()
+    },
+    resetFee(row) {
+      this.activeRow = row;
+      this.dialogVisible = true;
+    },
+    submitReset() {
+
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+</style>