lex 2 年之前
父節點
當前提交
95c7d21bad
共有 3 個文件被更改,包括 234 次插入55 次删除
  1. 7 0
      src/views/courseCredentials/api.js
  2. 147 0
      src/views/courseCredentials/detail.vue
  3. 80 55
      src/views/courseCredentials/index.vue

+ 7 - 0
src/views/courseCredentials/api.js

@@ -6,3 +6,10 @@ export const queryDetailPage = data =>
     data,
     method: "post"
   });
+
+export const querySumPage = data =>
+  request2({
+    url: "/api-web/activityUserMapper/querySumPage",
+    data,
+    method: "post"
+  });

+ 147 - 0
src/views/courseCredentials/detail.vue

@@ -0,0 +1,147 @@
+<template>
+  <div class="detail">
+    <save-form
+      :inline="true"
+      :model="searchForm"
+      ref="searchForm"
+      @submit="search"
+      @reset="onReSet"
+    >
+      <el-form-item prop="search">
+        <el-input
+          placeholder="活动编号/来源"
+          clearable
+          type="text"
+          v-model.trim="searchForm.search"
+        ></el-input>
+      </el-form-item>
+      <el-form-item prop="hasSubCourse">
+        <el-select
+          class="multiple"
+          clearable
+          v-model.trim="searchForm.hasSubCourse"
+          placeholder="是否有剩余为排课"
+        >
+          <el-option label="是" :value="1"></el-option>
+          <el-option label="否" :value="0"></el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item prop="hasSubCourse">
+        <el-select
+          class="multiple"
+          clearable
+          v-model.trim="searchForm.hasSubCourse"
+          placeholder="课程类型"
+        >
+          <el-option label="是" :value="1"></el-option>
+          <el-option label="否" :value="0"></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>
+    <el-table
+      style="width: 100%"
+      :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+      :data="tableList"
+    >
+      <el-table-column
+        align="center"
+        prop="activityId"
+        label="活动编号"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="addMemo"
+        label="活动名称"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="organName"
+        label="时间"
+      ></el-table-column>
+      <el-table-column
+        align="center"
+        prop="organName"
+        label="付费方式"
+      ></el-table-column>
+      <el-table-column align="center" prop="organName" label="排课资格">
+      </el-table-column>
+      <el-table-column
+        align="center"
+        prop="subNoCoursePrice"
+        label="剩余金额"
+      ></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>
+</template>
+
+<script>
+import pagination from "@/components/Pagination/index";
+import { queryDetailPage } from "./api";
+export default {
+  name: "detail",
+  prop: ["userId"],
+  components: {
+    pagination
+  },
+  data() {
+    return {
+      tableList: [],
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50] // 选择限制显示条数
+      },
+      searchForm: {
+        search: null,
+        hasSubCourse: null
+      }
+    };
+  },
+  mounted() {
+    this.getList();
+  },
+  methods: {
+    async getList() {
+      try {
+        const res = await queryDetailPage({
+          page: this.rules.page,
+          rows: this.rules.limit,
+          userId: this.userId,
+          ...this.searchForm
+        });
+        this.tableList = res.data.rows;
+        this.rules.total = res.data.total;
+      } catch (e) {}
+    },
+    search() {
+      this.rules.page = 1;
+      this.getList();
+    },
+    onReSet() {
+      this.rules = {
+        ...this.rules,
+        page: 1
+      };
+      this.$refs.searchForm.resetFields();
+      this.search();
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped></style>

+ 80 - 55
src/views/courseCredentials/index.vue

@@ -36,28 +36,6 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item prop="returnFee">
-          <el-select
-            class="multiple"
-            clearable
-            v-model.trim="searchForm.returnFee"
-            placeholder="是否退费"
-          >
-            <el-option label="是" :value="1"></el-option>
-            <el-option label="否" :value="0"></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item prop="hasSubCourse">
-          <el-select
-            class="multiple"
-            clearable
-            v-model.trim="searchForm.hasSubCourse"
-            placeholder="是否有剩余为排课"
-          >
-            <el-option label="是" :value="1"></el-option>
-            <el-option label="否" :value="0"></el-option>
-          </el-select>
-        </el-form-item>
 
         <el-form-item>
           <el-button native-type="submit" type="primary">搜索</el-button>
@@ -73,6 +51,68 @@
         >
           <el-table-column
             align="center"
+            prop="organName"
+            label="分部"
+          ></el-table-column>
+          <el-table-column align="center" label="学员信息" width="120px">
+            <template slot-scope="scope">
+              {{ scope.row.username }}
+              <copy-text>{{ scope.row.userId }}</copy-text>
+            </template>
+          </el-table-column>
+          <el-table-column
+            align="center"
+            prop="phone"
+            label="手机号"
+            width="120px"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="one"
+            label="1v1"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="two"
+            label="1v2"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="three"
+            label="1v3"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="four"
+            label="1v4"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="five"
+            label="1v5"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="six"
+            label="1v6"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="seven"
+            label="1v7"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="theory"
+            label="乐理课"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="practice"
+            label="网管课"
+          ></el-table-column>
+          <!-- <el-table-column
+            align="center"
             prop="activityId"
             label="活动编号"
           ></el-table-column>
@@ -178,8 +218,8 @@
             align="center"
             prop="subNoCoursePrice"
             label="剩余排课金额"
-          ></el-table-column>
-          <!-- <el-table-column align="center" label="操作">
+          ></el-table-column> -->
+          <el-table-column align="center" label="操作">
             <template slot-scope="scope">
               <div>
                 <el-button type="text" @click="gotoDetail(scope.row)"
@@ -187,7 +227,7 @@
                 >
               </div>
             </template>
-          </el-table-column> -->
+          </el-table-column>
         </el-table>
         <pagination
           sync
@@ -199,32 +239,22 @@
         />
       </div>
     </div>
+
+    <el-dialog :visible.sync="detailVisible" title="查看详情" width="900px">
+      <detail :userId="selectUserId" />
+    </el-dialog>
   </div>
 </template>
-<!-- 
-姓名
-编号
-分部
-指导老师
-来源
-价格
-付费课程类型
-付费已排课课次
-付费未排课课次
-赠送课程类型
-赠送已排课课次
-赠送未排课课次
-是否退费
-剩余未排课金额
- -->
 
 <script>
 import pagination from "@/components/Pagination/index";
-import { queryDetailPage } from "./api";
+import { querySumPage } from "./api";
+import detail from "./detail.vue";
 export default {
   name: "credentials",
   components: {
-    pagination
+    pagination,
+    detail
   },
   data() {
     return {
@@ -241,7 +271,9 @@ export default {
         page: 1, // 当前页
         total: 0, // 总条数
         page_size: [10, 20, 40, 50] // 选择限制显示条数
-      }
+      },
+      detailVisible: false,
+      selectUserId: null
     };
   },
   mounted() {
@@ -252,7 +284,7 @@ export default {
   methods: {
     async getList() {
       try {
-        const res = await queryDetailPage({
+        const res = await querySumPage({
           page: this.rules.page,
           rows: this.rules.limit,
           ...this.searchForm
@@ -274,16 +306,9 @@ export default {
       this.search();
     },
     gotoDetail(row) {
-      // query:{'musicGroupId':}
-      this.$router.push({
-        path: "/business/childrensdayDetail",
-        query: {
-          musicGroupId: row.musicGroupId,
-          musicGroupName: row.musicGroupName,
-          cooperationOrganId: row.cooperationOrganId,
-          organId: row.organId
-        }
-      });
+      console.log(row, "121212");
+      this.selectUserId = row.userId;
+      this.detailVisible = true;
     }
   }
 };