浏览代码

剩余ke ch

wolyshaw 4 年之前
父节点
当前提交
3882d92b9c
共有 2 个文件被更改,包括 39 次插入174 次删除
  1. 9 0
      src/views/teamDetail/api.js
  2. 30 174
      src/views/teamDetail/components/studentList.vue

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

@@ -14,3 +14,12 @@ export const updateClassGroupStudents = data => request2({
   method: 'post',
   requestType: 'form'
 })
+
+// 查询可排课信息
+export const queryStudentSubTotalCourseTimes = data => request2({
+  url: '/api-web/studentManage/queryStudentSubTotalCourseTimes',
+  params: data,
+  method: 'get',
+  requestType: 'form'
+})
+

+ 30 - 174
src/views/teamDetail/components/studentList.vue

@@ -138,6 +138,7 @@
         </el-table-column>
         <el-table-column align="center"
                          prop="phone"
+                         width="120"
                          label="联系电话"></el-table-column>
         <!-- <el-table-column align='center'
         prop=""
@@ -187,6 +188,11 @@
                          label="缴费金额"
                          prop="courseFee"></el-table-column> -->
         <el-table-column align="center"
+                         prop="subTotalCourseTime"
+                         label="剩余时长(分)"
+                         width="125">
+                         </el-table-column>
+        <el-table-column align="center"
                          label="报名缴费">
           <template slot-scope="scope">
             <div>{{ scope.row.paymentStatus | studentPays}}</div>
@@ -208,11 +214,13 @@
         </el-table-column>
         <el-table-column align="center"
                          fixed="right"
-                         width="300px;"
+                         width="340px;"
                          label="操作">
           <template slot-scope="scope">
             <div>
-
+              <el-button type="text"
+                         v-if="permission('studentManage/queryStudentSubTotalCourseTimes')"
+                         @click="viewTimer(scope.row)">课程时长</el-button>
               <el-button type="text"
                          v-if="permission('studentManage/queryStudentClassGroup')&&scope.row.studentStatus != 'QUIT'"
                          @click="lookClass(scope.row)">查看班级</el-button>
@@ -348,177 +356,6 @@
                             placeholder="选择日期"></el-date-picker>
           </el-col>
         </el-form-item>
-        <!-- <br />
-        <el-form-item label="声部班">
-          <el-select v-model.trim="maskForm.signClass"
-                     filterable
-                     clearable>
-            <el-option v-for="(item,index) in signList"
-                       :key="index"
-                       :value="item.id"
-                       :label="item.name"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="合奏班">
-          <el-select v-model.trim="maskForm.mixClass"
-                     filterable
-                     clearable>
-            <el-option v-for="(item,index) in mixList"
-                       :key="index"
-                       :value="item.id"
-                       :label="item.name"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="基础技能班">
-          <el-select v-model.trim="maskForm.highClass"
-                     filterable
-                     clearable>
-            <el-option v-for="(item,index) in highList"
-                       :key="index"
-                       :value="item.id"
-                       :label="item.name"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="临时班">
-          <el-select v-model.trim="maskForm.snapClass"
-                     filterable
-                     clearable
-                     multiple>
-            <el-option v-for="(item,index) in snapList"
-                       :key="index"
-                       :value="item.id"
-                       :label="item.name"></el-option>
-          </el-select>
-        </el-form-item> -->
-        <!-- <el-form-item label="线上基础技能班">
-          <el-select v-model.trim="maskForm.highonline"
-                     filterable
-                     clearable
-                     multiple>
-            <el-option v-for="(item,index) in highonlineList"
-                       :key="index"
-                       :value="item.id"
-                       :label="item.name"></el-option>
-          </el-select>
-        </el-form-item>-->
-        <!-- <el-form-item label="乐团网管课">
-          <el-select v-model.trim="maskForm.muiscnetwork"
-                     filterable
-                     clearable
-                     multiple>
-            <el-option v-for="(item,index) in muiscnetworkList"
-                       :key="index"
-                       :value="item.id"
-                       :label="item.name"></el-option>
-          </el-select>
-        </el-form-item>-->
-
-        <!-- <el-divider>首缴订单信息</el-divider>
-        <el-form-item label="课程费用"
-                      prop="temporaryCourseFee">
-          <el-input type="number"
-                    @mousewheel.native.prevent
-                    v-model.trim="maskForm.temporaryCourseFee"
-                    placeholder="首缴课程金额"></el-input>
-        </el-form-item>
-
-        <el-form-item label="乐器"
-                      class="instrList">
-          <el-col :span="11"
-                  style="width: auto;">
-            <el-form-item>
-              <el-select placeholder="选择乐器"
-                         filterable
-                         clearable
-                         @change="onInstrumentChange"
-                         v-model.trim="maskForm.musicGoodsIdList">
-                <el-option v-for="(item, index) in INSTRUMENTLIST"
-                           :key="index"
-                           :value="item.value"
-                           :label="item.label"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="1">&nbsp;</el-col>
-          <el-col :span="11">
-            <el-form-item>
-              <el-input type="number"
-                        @mousewheel.native.prevent
-                        :disabled="kitStatus"
-                        v-model.trim="maskForm.musicPrice"
-                        placeholder="输入金额">
-                <el-select v-model.trim="maskForm.kitGroupPurchaseType"
-                           style="width: 80px !important;"
-                           @change="onKitGroupChnage"
-                           slot="prepend">
-                  <el-option label="免费"
-                             value="FREE"></el-option>
-                  <el-option label="团购"
-                             value="GROUP"></el-option>
-                  <el-option label="租赁"
-                             value="LEASE"></el-option>
-                </el-select>
-              </el-input>
-            </el-form-item>
-          </el-col>
-        </el-form-item>
-        <el-form-item label="辅件">
-          <el-col :span="11"
-                  style="width: auto;">
-            <el-form-item>
-              <el-select filterable
-                         clearable
-                         multiple
-                         placeholder="选择辅件"
-                         v-model.trim="maskForm.instrGoodsIdList">
-                <el-option v-for="(item, index) in ACCESSORIESLIST"
-                           :key="index"
-                           :value="item.value"
-                           :label="item.label"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="1">&nbsp;</el-col>
-          <el-col :span="11">
-            <el-form-item>
-              <el-input v-model.trim="maskForm.instrPrice"
-                        placeholder="输入金额"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-form-item> -->
-        <!-- <el-alert
-          title="缴费周期设置"
-          :closable="false"
-          class="alert"
-          type="info">
-        </el-alert>
-        <el-collapse :value="collapse" @change="collapseChange" >
-          <el-collapse-item
-            v-for="(item, index) in cycles"
-            :key="index"
-            :name="index"
-          >
-            <template slot="title">
-              <div class="collapse-title">
-                <span>缴费周期 {{index + 1}}</span>
-                <i v-if="cycles.length > 1" class="el-icon-circle-close" @click.stop="removeCycle(index)"></i>
-              </div>
-            </template>
-            <paymentCycle
-              ref="cycles"
-              className="cycleForm"
-              :form="item"
-            />
-          </el-collapse-item>
-        </el-collapse>
-        <el-button
-          icon="el-icon-circle-plus-outline"
-          plain
-          type="info"
-          size="small"
-          style="width: 100%;margin: 20px 0;"
-          @click="addCycle"
-        >新增缴费周期</el-button> -->
       </el-form>
       <div slot="footer"
            class="dialog-footer">
@@ -591,6 +428,17 @@
            v-if="codeUrl">{{ codeUrl }}</p>
       </div>
     </el-dialog>
+    <el-dialog
+      :visible.sync="timesVisible"
+      title="查看剩余可排课时长"
+      width="500px"
+    >
+      <times-view
+        :detail="timerDetail"
+        v-if="timesVisible"
+        @close="timesVisible = false"
+      />
+    </el-dialog>
     <el-dialog title="修改缴费周期"
                :before-close="closePayVisible"
                width="600px"
@@ -751,6 +599,7 @@ import { permission } from "@/utils/directivePage";
 import { addVisit } from "@/views/returnVisitManager/api.js"
 import cleanDeep from 'clean-deep'
 import createUserPay from './modals/create-user-pay.vue'
+import TimesView from './modals/course-time-detail'
 import paymentCycle from '../../resetTeaming/modals/payment-cycle'
 import Tooltip from '@/components/Tooltip/index'
 export default {
@@ -762,6 +611,8 @@ export default {
       quitVisible: false, // 退团信息确认的弹窗
       studentClassVisible: false, // 学员所在班级弹窗
       addStudentVisible: false, //新增学员弹窗
+      timesVisible: false,
+      timerDetail: null,
       teamid: '',
       topFrom: {
         // 顶部的禁选框集合
@@ -918,7 +769,8 @@ export default {
     pagination,
     paymentCycle,
     createUserPay,
-    Tooltip
+    Tooltip,
+    'times-view': TimesView
   },
   created () {
     // 判断是否带缓存参数
@@ -957,6 +809,10 @@ export default {
     this.init();
   },
   methods: {
+    viewTimer(row) {
+      this.timerDetail = row
+      this.timesVisible = true
+    },
     permission (str) {
       return permission(str);
     },