浏览代码

更新详情

lex 2 年之前
父节点
当前提交
1ccbb21738

+ 31 - 2
src/constant/index.js

@@ -43,7 +43,8 @@ export const courseType = {
   DEMO: "试听课",
   PRACTICE: "网管课",
   COMM: "对外课",
-  MEMBER: "会员"
+  MEMBER: "会员",
+  LIVE: "直播课"
 };
 
 export const boolOptions = {
@@ -376,7 +377,8 @@ export const orderType = {
   PERSONAL: "个人订单",
   OTHER: "其他",
   ACTIVITY: "活动购买",
-  LIVE_BUY: "直播购物"
+  LIVE_BUY: "直播购物",
+  LIVE_GROUP_BUY: "直播课购买"
 };
 
 export const backType = {
@@ -559,3 +561,30 @@ export const levelStatus = {
   START: "进行中",
   END: "已结束"
 };
+
+// 学校人员
+export const schoolUserType = {
+  SCHOOLMASTER: "校长",
+  ORCHESTRA_LEADER: "乐团领队",
+  SCHOOL_LEADER: "分管领导",
+  TEACHER: "负责老师"
+};
+
+// 巡堂评价
+export const evaluateStatus = {
+  EXCELLENT: "优秀",
+  GOOD: "良好",
+  QUALIFIED: "合格",
+  UNQUALIFIED: "不合格"
+};
+
+// 问题类型
+export const problemType = {
+  CLASSROOM_DISCIPLINE: "课堂纪律",
+  AFTER_SCHOOL_ORGANIZATION: "放学组织",
+  ENVIRONMENTAL_SANITATION: "环境卫生",
+  TEACHING_DEMEANOR: "教态仪表",
+  COMMUNICATION_EXPRESSION: "沟通表达",
+  PROFESSIONAL_ABILITY: "专业能力",
+  OTHER: "其他"
+};

+ 25 - 4
src/utils/searchArray.js

@@ -12,8 +12,8 @@ import {
   downListType,
   musicGroupType,
   conclusion,
-  vipResetType,
-  courseViewType,
+  // vipResetType,
+  // courseViewType,
   clientType,
   couponType,
   backType,
@@ -28,7 +28,10 @@ import {
   catType,
   quiteReason,
   payUserType,
-  levelStatus
+  levelStatus,
+  evaluateStatus,
+  problemType,
+  schoolUserType
 } from "../constant";
 // 课程类型
 let tenantConfig = sessionStorage.getItem("tenantConfig");
@@ -131,6 +134,10 @@ if (tenantId == 1) {
     {
       label: "对外课",
       value: "COMM"
+    },
+    {
+      label: "直播课",
+      value: "LIVE"
     }
   ];
 } else {
@@ -210,6 +217,10 @@ if (tenantId == 1) {
     {
       label: "对外课",
       value: "COMM"
+    },
+    {
+      label: "直播课",
+      value: "LIVE"
     }
   ];
 }
@@ -228,6 +239,10 @@ export const courseListType = [
   {
     label: "网管课",
     value: "PRACTICE"
+  },
+  {
+    label: "直播课",
+    value: "LIVE"
   }
 ];
 
@@ -409,6 +424,10 @@ export const orderStatus = [
   {
     value: "LIVE_BUY",
     label: "直播购物"
+  },
+  {
+    value: "LIVE_GROUP_BUY",
+    label: "直播课购买"
   }
 ];
 
@@ -880,7 +899,9 @@ export const catTypeList = getValueForKey(catType);
 export const quiteReasonList = getValueForKey(quiteReason);
 export const payUserTypeList = getValueForKey(payUserType);
 export const levelStatusList = getValueForKey(levelStatus);
-
+export const evaluateStatusList = getValueForKey(evaluateStatus);
+export const problemTypeList = getValueForKey(problemType);
+export const schoolUserTypeList = getValueForKey(schoolUserType);
 //downListType
 function getValueForKey(obj) {
   let arr = [];

+ 18 - 0
src/views/liveClassManager/api.js

@@ -283,3 +283,21 @@ export const liveGroupDetail = data => {
     method: "get"
   });
 };
+
+// 直播课详情 - 学生列表
+export const liveStudentList = data => {
+  return request({
+    url: "/api-web/vipGroupManage/liveStudentList",
+    method: "post",
+    data
+  });
+};
+
+// 直播课详情 - 课表列表
+export const liveCourseList = data => {
+  return request({
+    url: "/api-web/vipGroupManage/liveCourseList",
+    method: "post",
+    data
+  });
+};

+ 83 - 299
src/views/liveClassManager/createLiveClass.vue

@@ -5,299 +5,129 @@
     </h2>
     <div class="m-core">
       <el-form ref="liveForm" :model="form" label-position="top">
-        <el-alert
-          title="课程规划"
-          :closable="false"
-          type="info"
-          style="margin: 0 0 20px"
-        />
+        <el-alert title="课程规划" :closable="false" type="info" style="margin: 0 0 20px" />
         <el-row :gutter="20">
           <el-col :span="10">
-            <el-form-item
-              label="直播课标题"
-              prop="roomTitle"
-              :rules="[{ required: true, message: '请输入直播课标题' }]"
-            >
-              <el-input
-                v-model="form.roomTitle"
-                placeholder="请输入直播课标题"
-                maxlength="25"
-              ></el-input>
+            <el-form-item label="直播课标题" prop="roomTitle" :rules="[{ required: true, message: '请输入直播课标题' }]">
+              <el-input v-model="form.roomTitle" placeholder="请输入直播课标题" maxlength="25"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="直播课内容"
-              prop="liveRemark"
-              :rules="[{ required: true, message: '请输入直播课内容' }]"
-            >
-              <el-input
-                type="textarea"
-                v-model="form.liveRemark"
-                placeholder="请输入直播课内容"
-                maxlength="200"
-                show-word-limit
-              ></el-input>
+            <el-form-item label="直播课内容" prop="liveRemark" :rules="[{ required: true, message: '请输入直播课内容' }]">
+              <el-input type="textarea" v-model="form.liveRemark" placeholder="请输入直播课内容" maxlength="200"
+                show-word-limit></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="分部"
-              prop="organIds"
-              :rules="[{ required: true, message: '请选择分部' }]"
-            >
-              <select-all
-                v-model.trim="form.organIds"
-                filterable
-                placeholder="请选择分部"
-                multiple
-                clearable
-              >
-                <el-option
-                  v-for="(item, index) in selects.branchs"
-                  :key="index"
-                  :label="item.name"
-                  :value="item.id"
-                ></el-option>
+            <el-form-item label="分部" prop="organIds" :rules="[{ required: true, message: '请选择分部' }]">
+              <select-all v-model.trim="form.organIds" filterable placeholder="请选择分部" multiple clearable>
+                <el-option v-for="(item, index) in selects.branchs" :key="index" :label="item.name"
+                  :value="item.id"></el-option>
               </select-all>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="声部"
-              prop="subjectIdList"
-              :rules="[{ required: true, message: '请选择声部' }]"
-            >
-              <el-select
-                v-model.trim="form.subjectIdList"
-                filterable
-                clearable
-                @change="onChangeSubject"
-                placeholder="请选择声部"
-                style="width: 100% !important"
-              >
-                <el-option
-                  v-for="(item, index) in subjectList"
-                  :key="index"
-                  :value="item.id"
-                  :label="item.name"
-                />
+            <el-form-item label="声部" prop="subjectIdList" :rules="[{ required: true, message: '请选择声部' }]">
+              <el-select v-model.trim="form.subjectIdList" filterable clearable @change="onChangeSubject"
+                placeholder="请选择声部" style="width: 100% !important">
+                <el-option v-for="(item, index) in subjectList" :key="index" :value="item.id" :label="item.name" />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="指导老师"
-              prop="teacher"
-              :rules="[{ required: true, message: '请选择指导老师' }]"
-            >
-              <el-select
-                v-model.trim="form.teacher"
-                filterable
-                clearable
-                placeholder="请选择指导老师"
-                style="width: 100% !important"
-                :disabled="!form.subjectIdList"
-              >
-                <el-option
-                  v-for="(item, index) in teacherList"
-                  :key="index"
-                  :label="item.realName"
-                  :value="item.id"
-                />
+            <el-form-item label="指导老师" prop="teacher" :rules="[{ required: true, message: '请选择指导老师' }]">
+              <el-select v-model.trim="form.teacher" filterable clearable placeholder="请选择指导老师"
+                style="width: 100% !important" :disabled="!form.subjectIdList">
+                <el-option v-for="(item, index) in teacherList" :key="index" :label="item.realName" :value="item.id" />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="乐团主管"
-              prop="educationalTeacherId"
-              :rules="[{ required: true, message: '请选择乐团主管' }]"
-            >
-              <el-select
-                v-model.trim="form.educationalTeacherId"
-                filterable
-                clearable
-                style="width: 100% !important"
-                :rules="[{ required: true, message: '请选择乐团主管' }]"
-              >
-                <el-option
-                  v-for="(item, key) in educationList"
-                  :key="key"
-                  :label="item.userName"
-                  :value="item.userId"
-                />
+            <el-form-item label="乐团主管" prop="educationalTeacherId" :rules="[{ required: true, message: '请选择乐团主管' }]">
+              <el-select v-model.trim="form.educationalTeacherId" filterable clearable style="width: 100% !important"
+                :rules="[{ required: true, message: '请选择乐团主管' }]">
+                <el-option v-for="(item, key) in educationList" :key="key" :label="item.userName" :value="item.userId" />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="课程购买时间"
-              prop="signUpTimeList"
-              :rules="[{ required: true, message: '请选择课程购买时间' }]"
-            >
-              <el-date-picker
-                style="width: 100%"
-                v-model="form.signUpTimeList"
-                :picker-options="pickerOptions"
-                type="datetimerange"
-                :default-time="['00:00:00', '23:59:59']"
-                range-separator="-"
-                start-placeholder="购买开始日期"
-                end-placeholder="购买结束日期"
-              >
+            <el-form-item label="课程购买时间" prop="signUpTimeList" :rules="[{ required: true, message: '请选择课程购买时间' }]">
+              <el-date-picker style="width: 100%" v-model="form.signUpTimeList" :picker-options="pickerOptions"
+                type="datetimerange" :default-time="['00:00:00', '23:59:59']" range-separator="-"
+                start-placeholder="购买开始日期" end-placeholder="购买结束日期">
               </el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="课时数"
-              prop="onlineClassesNum"
-              :rules="[{ required: true, message: '请输入课时数' }]"
-            >
-              <el-input
-                v-model="form.onlineClassesNum"
-                placeholder="请输入课时数"
-                maxlength="2"
-                @input="
-                  val => {
-                    form.val = val.replace(/^[+]{0,1}(\d+)$/g, '');
-                  }
-                "
-                @change="
-                  () => {
-                    form.timeTable = []; // 课表重置
-                  }
-                "
-              ></el-input>
+            <el-form-item label="课时数" prop="onlineClassesNum" :rules="[{ required: true, message: '请输入课时数' }]">
+              <el-input v-model="form.onlineClassesNum" placeholder="请输入课时数" maxlength="2" @input="val => {
+                  form.val = val.replace(/^[+]{0,1}(\d+)$/g, '');
+                }
+                " @change="() => {
+      form.timeTable = []; // 课表重置
+    }
+    "></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="课程时长"
-              prop="singleClassMinuteId"
-              :rules="[{ required: true, message: '请选择课程时长' }]"
-            >
-              <el-select
-                v-model.trim="form.singleClassMinuteId"
-                filterable
-                clearable
-                style="width: 100% !important"
-                placeholder="请选择课程时长"
-                @change="onSingleClassChange"
-              >
-                <el-option
-                  v-for="(item, key) in liveGroupList"
-                  :key="key"
-                  :label="item.singleClassMinutes"
-                  :value="item.id"
-                />
+            <el-form-item label="课程时长" prop="singleClassMinuteId" :rules="[{ required: true, message: '请选择课程时长' }]">
+              <el-select v-model.trim="form.singleClassMinuteId" filterable clearable style="width: 100% !important"
+                placeholder="请选择课程时长" @change="onSingleClassChange">
+                <el-option v-for="(item, key) in liveGroupList" :key="key" :label="item.singleClassMinutes"
+                  :value="item.id" />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="现价"
-              prop="onlineClassesUnitPrice"
-              :rules="[{ required: true, message: '请输入现价' }]"
-            >
-              <el-input
-                v-model="form.onlineClassesUnitPrice"
-                placeholder="请输入现价"
-                @keyup.native="keyupEvent($event)"
-              ></el-input>
+            <el-form-item label="现价" prop="onlineClassesUnitPrice" :rules="[{ required: true, message: '请输入现价' }]">
+              <el-input v-model="form.onlineClassesUnitPrice" placeholder="请输入现价"
+                @keyup.native="keyupEvent($event)"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="10">
-            <el-form-item
-              label="原价"
-              prop="offlineClassesUnitPrice"
-              :rules="[{ required: true, message: '请输入原价' }]"
-            >
-              <el-input
-                v-model="form.offlineClassesUnitPrice"
-                placeholder="请输入原价"
-                @keyup.native="keyupEvent($event)"
-              ></el-input>
+            <el-form-item label="原价" prop="offlineClassesUnitPrice" :rules="[{ required: true, message: '请输入原价' }]">
+              <el-input v-model="form.offlineClassesUnitPrice" placeholder="请输入原价"
+                @keyup.native="keyupEvent($event)"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
 
         <el-button type="danger" @click="onTimeTable">点击排课</el-button>
-        <el-table
-          style="width: 100%; margin-top: 20px;"
-          :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
-          :data="form.timeTable"
-        >
+        <el-table style="width: 100%; margin-top: 20px;" :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+          :data="form.timeTable">
           <el-table-column align="center" label="课时">
             <template slot-scope="scope">
               第{{ scope.$index + 1 }}课
             </template>
           </el-table-column>
-          <el-table-column
-            align="center"
-            label="内容"
-            width="150px"
-            prop="teachingContent"
-            key="teachingContent"
-          >
+          <el-table-column align="center" label="内容" width="150px" prop="teachingContent" key="teachingContent">
             <template slot-scope="scope">
               <!-- v-model="form.eclass[scope.$index].courseCurrentPrice" -->
-              <el-form-item
-                :prop="'timeTable.' + scope.$index + '.teachingContent'"
-                :rules="[{ required: true, message: '请输入内容' }]"
-                style="margin-bottom: 0;"
-              >
-                <el-input
-                  v-model="scope.row.teachingContent"
-                  placeholder="请输入内容"
-                >
+              <el-form-item :prop="'timeTable.' + scope.$index + '.teachingContent'"
+                :rules="[{ required: true, message: '请输入内容' }]" style="margin-bottom: 0;">
+                <el-input v-model="scope.row.teachingContent" placeholder="请输入内容">
                 </el-input>
               </el-form-item>
             </template>
           </el-table-column>
-          <el-table-column
-            align="center"
-            label="技能/知识点掌握"
-            width="220px"
-            prop="teachingPoint"
-            key="teachingPoint"
-          >
+          <el-table-column align="center" label="技能/知识点掌握" width="220px" prop="teachingPoint" key="teachingPoint">
             <template slot-scope="scope">
-              <el-form-item
-                :prop="'timeTable.' + scope.$index + '.teachingPoint'"
-                :rules="[{ required: true, message: '请输入技能/知识点掌握' }]"
-                style="margin-bottom: 0;"
-              >
+              <el-form-item :prop="'timeTable.' + scope.$index + '.teachingPoint'"
+                :rules="[{ required: true, message: '请输入技能/知识点掌握' }]" style="margin-bottom: 0;">
                 <!-- v-model="scope.row.teachingPoint" -->
-                <el-input
-                  v-model="form.timeTable[scope.$index].teachingPoint"
-                  placeholder="请输入技能/知识点掌握"
-                >
+                <el-input v-model="form.timeTable[scope.$index].teachingPoint" placeholder="请输入技能/知识点掌握">
                 </el-input>
               </el-form-item>
             </template>
           </el-table-column>
-          <el-table-column
-            align="center"
-            prop="singleClassMinutes"
-            label="时长"
-          ></el-table-column>
+          <el-table-column align="center" prop="singleClassMinutes" label="时长"></el-table-column>
           <el-table-column align="center" label="课程日期">
             <template slot-scope="scope">
               <div>{{ scope.row.classDate | formatTimer }}</div>
             </template>
           </el-table-column>
-          <el-table-column
-            align="center"
-            prop="startClassTimeStr"
-            label="开始时间"
-          ></el-table-column>
-          <el-table-column
-            align="center"
-            prop="endClassTimeStr"
-            label="结束时间"
-          ></el-table-column>
+          <el-table-column align="center" prop="startClassTimeStr" label="开始时间"></el-table-column>
+          <el-table-column align="center" prop="endClassTimeStr" label="结束时间"></el-table-column>
           <el-table-column align="center" label="课程类型">
             <template slot-scope="scope">
               <div>{{ scope.row.teachMode | teachMode }}</div>
@@ -305,39 +135,20 @@
           </el-table-column>
         </el-table>
 
-        <el-alert
-          title="直播课信息"
-          :closable="false"
-          type="info"
-          style="margin: 20px 0"
-        />
+        <el-alert title="直播课信息" :closable="false" type="info" style="margin: 20px 0" />
         <el-row :gutter="20">
           <el-col :span="6">
-            <el-form-item
-              label="直播设备"
-              prop="os"
-              :rules="[{ required: true, message: '请选择推广类型' }]"
-            >
+            <el-form-item label="直播设备" prop="os" :rules="[{ required: true, message: '请选择推广类型' }]">
               <el-radio-group v-model="form.os">
                 <!-- 根据不同的模式,显示不同的直播设备 -->
-                <el-radio v-if="serviceProvider === 'rongCloud'" label="pc"
-                  >web</el-radio
-                >
-                <el-radio
-                  v-if="serviceProvider === 'tencentCloud'"
-                  label="client"
-                  >客户端</el-radio
-                >
+                <el-radio v-if="serviceProvider === 'rongCloud'" label="pc">web</el-radio>
+                <el-radio v-if="serviceProvider === 'tencentCloud'" label="client">客户端</el-radio>
                 <el-radio label="mobile">手机</el-radio>
               </el-radio-group>
             </el-form-item>
           </el-col>
           <el-col :span="6">
-            <el-form-item
-              label="直播场景"
-              prop="useScene"
-              :rules="[{ required: true, message: '请选择直播场景' }]"
-            >
+            <el-form-item label="直播场景" prop="useScene" :rules="[{ required: true, message: '请选择直播场景' }]">
               <el-radio-group v-model="form.useScene">
                 <el-radio label="NORMAL">普通模式</el-radio>
                 <el-radio label="MUSIC">音乐模式</el-radio>
@@ -346,11 +157,8 @@
           </el-col>
 
           <el-col :span="6">
-            <el-form-item
-              prop="roomConfig.whether_video"
-              label="保存直播回放"
-              :rules="[{ required: true, message: '是否保存直播回放' }]"
-            >
+            <el-form-item prop="roomConfig.whether_video" label="保存直播回放"
+              :rules="[{ required: true, message: '是否保存直播回放' }]">
               <el-radio-group v-model="form.roomConfig.whether_video">
                 <el-radio :label="0">是</el-radio>
                 <el-radio :label="1">否</el-radio>
@@ -358,11 +166,8 @@
             </el-form-item>
           </el-col>
           <el-col :span="6">
-            <el-form-item
-              prop="roomConfig.whether_view_shop_cart"
-              label="是否展示购物车"
-              :rules="[{ required: true, message: '是否展示购物车' }]"
-            >
+            <el-form-item prop="roomConfig.whether_view_shop_cart" label="是否展示购物车"
+              :rules="[{ required: true, message: '是否展示购物车' }]">
               <el-radio-group v-model="form.roomConfig.whether_view_shop_cart">
                 <el-radio :label="0">是</el-radio>
                 <el-radio :label="1">否</el-radio>
@@ -371,33 +176,20 @@
           </el-col>
 
           <el-col :span="24">
-            <el-form-item
-              label="预热模板(模板使用于分享宣传图片)"
-              prop="preTemplate"
-              :rules="[{ required: true, message: '请选择预热模板' }]"
-            >
+            <el-form-item label="预热模板(模板使用于分享宣传图片)" prop="preTemplate" :rules="[{ required: true, message: '请选择预热模板' }]">
               <el-radio-group v-model="form.preTemplate">
                 <div class="chioseWrap">
                   <div class="chioseItem" @click="setPreTemplate(1)">
                     <img src="./images/img1.png" alt="" />
-                    <i
-                      class="dotWrap"
-                      :class="form.preTemplate == 1 ? 'checked' : ''"
-                    ></i>
+                    <i class="dotWrap" :class="form.preTemplate == 1 ? 'checked' : ''"></i>
                   </div>
                   <div class="chioseItem" @click="setPreTemplate(2)">
                     <img src="./images/img2.png" alt="" />
-                    <i
-                      class="dotWrap"
-                      :class="form.preTemplate == 2 ? 'checked' : ''"
-                    ></i>
+                    <i class="dotWrap" :class="form.preTemplate == 2 ? 'checked' : ''"></i>
                   </div>
                   <div class="chioseItem" @click="setPreTemplate(3)">
                     <img src="./images/img3.png" alt="" />
-                    <i
-                      class="dotWrap"
-                      :class="form.preTemplate == 3 ? 'checked' : ''"
-                    ></i>
+                    <i class="dotWrap" :class="form.preTemplate == 3 ? 'checked' : ''"></i>
                   </div>
                 </div>
               </el-radio-group>
@@ -414,19 +206,9 @@
       </el-form>
     </div>
 
-    <el-dialog
-      title="排课"
-      ref="maskForm"
-      width="500px"
-      :visible.sync="dialogFormVisible"
-    >
-      <addLiveCourse
-        :singleClassMinutes="form.singleClassMinutes"
-        :signUpTimeList="form.signUpTimeList"
-        :onlineCourseNum="form.onlineClassesNum"
-        @close="dialogFormVisible = false"
-        @confirm="onConfirm"
-      />
+    <el-dialog title="排课" ref="maskForm" width="500px" :visible.sync="dialogFormVisible">
+      <addLiveCourse :singleClassMinutes="form.singleClassMinutes" :signUpTimeList="form.signUpTimeList"
+        :onlineCourseNum="form.onlineClassesNum" @close="dialogFormVisible = false" @confirm="onConfirm" />
     </el-dialog>
   </div>
 </template>
@@ -473,7 +255,7 @@ export default {
           whether_chat: 0,
           whether_video: 0,
           whether_mic: 0,
-          whether_view_shop_cart: 0
+          whether_view_shop_cart: 1
         },
         timeTable: [], // 排课
         clientType: "TEACHER" // 主讲人身份 默认[老师]
@@ -508,7 +290,7 @@ export default {
             this.teacherList = res.data;
           }
         });
-      } catch {}
+      } catch { }
     },
     onCancel() {
       this.$store.dispatch("delVisitedViews", this.$route);
@@ -734,6 +516,7 @@ export default {
   display: flex;
   flex-direction: row;
   justify-content: flex-start;
+
   .chioseItem {
     border-radius: 4px;
     overflow: hidden;
@@ -746,26 +529,26 @@ export default {
     .dotWrap {
       width: 21px;
       height: 21px;
-      background: url("../../assets/images/icon_checkbox_default.png") no-repeat
-        center;
+      background: url("../../assets/images/icon_checkbox_default.png") no-repeat center;
       background-size: contain;
       display: block;
       position: absolute;
       top: 10px;
       right: 12px;
       overflow: hidden;
+
       &.checked {
-        background: url("../../assets/images/icon_checkbox.png") no-repeat
-          center;
+        background: url("../../assets/images/icon_checkbox.png") no-repeat center;
         background-size: contain;
       }
     }
   }
 }
 
-::v-deep .el-select > .el-input {
+::v-deep .el-select>.el-input {
   height: 36px !important;
 }
+
 ::v-deep .select-all {
   .select {
     .el-input__inner {
@@ -773,6 +556,7 @@ export default {
       min-height: 36px !important;
     }
   }
+
   .btn {
     height: 36px !important;
     min-height: 36px !important;

+ 28 - 56
src/views/liveClassManager/liveClassTwo/components/courseAdjust.vue

@@ -5,13 +5,17 @@
     <div class="tableWrap">
       <el-table style="width: 100%" :header-cell-style="{ background: '#EDEEF0', color: '#444' }" :data="tableList"
         @selection-change="handleSelectionChange">
-        <el-table-column type="selection" width="55"></el-table-column>
-        <el-table-column align="center" prop="name" label="上课日期"></el-table-column>
+        <el-table-column type="selection" :selectable="isDisabled" width="55"></el-table-column>
         <el-table-column align="center" label="课程状态">
           <template slot-scope="scope">
             <div>{{ scope.row.status | coursesStatus }}</div>
           </template>
         </el-table-column>
+        <el-table-column align="center" prop="classDate" label="上课日期">
+          <template slot-scope="scope">
+            {{ scope.row.classDate | dayjsFormat }}
+          </template>
+        </el-table-column>
         <el-table-column align="center" prop="startClassTime" label="开始时间"></el-table-column>
         <el-table-column align="center" prop="endClassTime" label="结束时间"></el-table-column>
       </el-table>
@@ -83,14 +87,9 @@
 <script>
 import pagination from "@/components/Pagination/index";
 import {
-  findVipGroupCourseSchedules,
-  bathDelete,
-  appendVipGroupCourseSchedules,
-  vipCourseAdjust,
-  updateVipBaseInfo,
-  batchAppendVipGroupCourses,
-  vipGroupManageUpdate
+  vipCourseAdjust
 } from "@/api/vipSeting";
+import { liveCourseList } from '../../api'
 import { diffTimerFormMinute, addTimerFormMinute } from "@/utils/date";
 import dayjs from 'dayjs';
 export default {
@@ -151,19 +150,26 @@ export default {
     this.getList();
   },
   methods: {
-    getList() {
-      findVipGroupCourseSchedules({
-        vipGroupId: this.id,
-        rows: this.rules.limit,
-        page: this.rules.page,
-        gorupType: "LIVE"
-      }).then(res => {
-        if (res.code == 200) {
-          this.tableList = res.data.pageInfo.rows;
-          this.rules.total = res.data.pageInfo.total;
-          this.courseTime = res.data.singleClassMinutes;
-        }
-      });
+    async getList() {
+      try {
+        const { data } = await liveCourseList({
+          liveGroupId: this.id,
+          rows: this.rules.limit,
+          page: this.rules.page,
+        })
+        this.tableList = data.list;
+        // this.rules.total = data.pageInfo.total;
+        this.courseTime = data.singleClassMinutes;
+
+      } catch {
+      }
+    },
+    isDisabled(row, index) {
+      if (row.isSettlement || !row.id) {
+        return false;
+      } else {
+        return true;
+      }
     },
     addWeek() {
       // 添加循环周期
@@ -185,7 +191,6 @@ export default {
     handleSelectionChange(val) {
       this.chioseVipList = val;
       this.adjustmentForm.count = val.length;
-      console.log(val, 'val - select checked')
       this.activeList = val;
     },
     onAdjustment() {
@@ -255,39 +260,6 @@ export default {
         }
       });
     },
-    addCourseSubmit() {
-      this.$refs["adjustmentForm"].validate(item => {
-        if (item) {
-          let week = this.weekList;
-          if (!week[0] || !week[0].startClassTime || !week[0].dayOfWeek) {
-            this.$message.error("至少排一节课");
-            return;
-          }
-          // 开始
-          let obj = {};
-          obj.courseCreateStartTime = this.adjustmentForm.courseTime;
-          let idArr = this.activeList.map(item => {
-            return item.id;
-          });
-          let courseScheduleIds = idArr.join(",");
-          obj.courseScheduleIds = courseScheduleIds;
-          obj.courseTimes = this.weekList;
-          obj.holiday = this.adjustmentForm.checked;
-          obj.vipGroupId = this.vipid;
-          obj.courseCount = this.adjustmentForm.addCount;
-          obj.teachMode = this.adjustmentForm.courseType;
-          obj.singleClassPrice = this.adjustmentForm.fee;
-          obj.groupType = "LIVE";
-          batchAppendVipGroupCourses(obj).then(res => {
-            if (res.code == 200) {
-              this.$message.success("恭喜您添加成功");
-              this.adjustmentVisible = false;
-              this.getList();
-            }
-          });
-        }
-      });
-    }
   },
   filters: {
     formatterTime(val) {

+ 0 - 1
src/views/liveClassManager/liveClassTwo/components/courseOverview.vue

@@ -242,7 +242,6 @@ export default {
       try {
         const query = this.$route.query;
         const { data } = await liveGroupDetail({ id: query.id });
-        console.log(data, "data");
 
         const liveBroadcastRoom = data.liveBroadcastRoom || {};
         const vipGroupApplyBaseInfo = data.vipGroupApplyBaseInfo || {};

+ 33 - 61
src/views/liveClassManager/liveClassTwo/components/studentList.vue

@@ -2,79 +2,46 @@
 <template>
   <div>
     <div class="tableWrap">
-      <el-table
-        style="width: 100%"
-        :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
-        :data="tableList"
-      >
-        <el-table-column
-          align="center"
-          prop="id"
-          label="编号"
-        ></el-table-column>
-        <el-table-column
-          align="center"
-          prop="organName"
-          label="分部"
-        ></el-table-column>
-        <el-table-column align="center" label="学员姓名" prop="userName">
+      <el-table style="width: 100%" :header-cell-style="{ background: '#EDEEF0', color: '#444' }" :data="tableList">
+        <el-table-column align="center" prop="orderNo" label="编号"></el-table-column>
+        <el-table-column align="center" prop="organName" label="分部"></el-table-column>
+        <el-table-column align="center" label="学员姓名" prop="studentName">
         </el-table-column>
         <!-- <el-table-column
           align="center"
           prop="userName"
           label="学校姓名"
         ></el-table-column> -->
-        <el-table-column
-          align="center"
-          prop="subjectName"
-          label="声部"
-        ></el-table-column>
-        <el-table-column
-          align="center"
-          prop="phone"
-          label="手机号"
-        ></el-table-column>
+        <el-table-column align="center" prop="subjectName" label="声部"></el-table-column>
+        <el-table-column align="center" prop="phone" label="手机号"></el-table-column>
         <el-table-column align="center" prop="applyDate" label="报名时间">
           <template slot-scope="scope">
-            <p>{{ scope.row.applyDate | formatTimer }}</p>
+            <p>{{ scope.row.createTime | formatTimer }}</p>
           </template>
         </el-table-column>
         <el-table-column align="center" prop="studentId" label="操作">
           <template slot-scope="scope">
             <div>
               <auth auths="/liveBlackList">
-                <el-button
-                  type="text"
-                  v-if="
-                    scope.row.studentStatus == 0 || scope.row.studentStatus == 3
-                  "
-                  @click="lookFee(scope)"
-                  >退学</el-button
-                >
+                <el-button type="text" v-if="scope.row.studentStatus == 0 || scope.row.studentStatus == 3
+                  " @click="lookFee(scope)">退学</el-button>
               </auth>
             </div>
           </template>
         </el-table-column>
       </el-table>
-      <pagination
-        sync
-        saveKey="liveClass-courseOverview"
-        :total.sync="rules.total"
-        :page.sync="rules.page"
-        :limit.sync="rules.limit"
-        :page-sizes="rules.page_size"
-        @pagination="getStudents"
-      />
+      <pagination sync saveKey="liveClass-courseOverview" :total.sync="rules.total" :page.sync="rules.page"
+        :limit.sync="rules.limit" :page-sizes="rules.page_size" @pagination="getStudents" />
     </div>
   </div>
 </template>
 
 <script>
 import {
-  findVipGroupStudents,
   leaveSchool,
   getStudentSurplusCourseFee
 } from "@/api/vipSeting";
+import { liveStudentList } from '../../api';
 import pagination from "@/components/Pagination/index";
 export default {
   components: {
@@ -97,22 +64,26 @@ export default {
     this.getStudents();
   },
   methods: {
-    getStudents() {
-      findVipGroupStudents({ vipGroupId: this.id, groupType: "LIVE" }).then(
-        res => {
-          if (res.code == 200) {
-            this.tableList = res.data.rows;
-            for (let i in this.tableList) {
-              this.tableList[i].fee = 0;
-              this.tableList[i].visible = false;
-            }
-            this.rules.total = res.data.total;
-          }
+    async getStudents() {
+      try {
+        const { data } = await liveStudentList({
+          liveGroupId: this.id,
+          page: this.rules.page,
+          rows: this.rules.limit
+        })
+        console.log(data, 'data')
+        this.tableList = data.rows
+        for (let i in this.tableList) {
+          this.tableList[i].fee = 0;
+          this.tableList[i].visible = false;
         }
-      );
+        this.rules.total = res.data.total;
+      } catch {
+        //
+      }
     },
     leaveSchool(scope) {
-      let studentId = scope.row.id;
+      let studentId = scope.row.studentId;
       let vipGroupId = this.id;
       let amount = scope.row.fee;
       leaveSchool({ studentId, vipGroupId, amount }).then(res => {
@@ -147,7 +118,7 @@ export default {
         type: "warning"
       })
         .then(() => {
-          let id = scope.row.id;
+          let id = scope.row.studentId;
           if (scope.row.studentStatus == 3) {
             this.leaveSchool(scope);
           } else {
@@ -167,7 +138,7 @@ export default {
                       class: "el-input__inner",
                       attrs: { value: res.data.suplusCourseFee },
                       on: {
-                        input: function(event) {
+                        input: function (event) {
                           scope.row.fee = event.target.value;
                           this.$emit("input", event.target.value);
                         }.bind(this)
@@ -189,7 +160,7 @@ export default {
             });
           }
         })
-        .catch(() => {});
+        .catch(() => { });
     }
   }
 };
@@ -199,6 +170,7 @@ export default {
   cursor: pointer;
   color: var(--color-primary);
 }
+
 ::v-deep .el-icon-arrow-down {
   font-size: 12px;
 }

+ 75 - 214
src/views/teamDetail/teamClassList.vue

@@ -4,118 +4,56 @@
     <h2>
       <div class="squrt"></div>
       班级管理
-      <filter-search
-        v-if="permission('/teamCLassList/abnormal')"
-        :keys="['lessThenThreeHighOnline']"
-        @reload="reloadSearch"
-        :moreKeys="['organId']"
-      />
+      <filter-search v-if="permission('/teamCLassList/abnormal')" :keys="['lessThenThreeHighOnline']"
+        @reload="reloadSearch" :moreKeys="['organId']" />
     </h2>
     <div class="m-core">
-      <save-form
-        ref="searchForm"
-        :inline="true"
-        :model="searchForm"
-        @submit="search"
-        @reset="onReSet"
-      >
+      <save-form ref="searchForm" :inline="true" :model="searchForm" @submit="search" @reset="onReSet">
         <el-form-item prop="search">
-          <el-input
-            v-model.trim="searchForm.search"
-            clearable
-               @keyup.enter.native="
-              (e) => {
-                e.target.blur();
-                $refs.searchForm.save();
-                search();
-              }
-            "
-            placeholder="乐团&班级编号名称"
-          ></el-input>
+          <el-input v-model.trim="searchForm.search" clearable @keyup.enter.native="(e) => {
+              e.target.blur();
+              $refs.searchForm.save();
+              search();
+            }
+            " placeholder="乐团&班级编号名称"></el-input>
         </el-form-item>
         <el-form-item prop="organIdList">
-          <select-all
-            class="multiple"
-            filterable
-            multiple
-            v-model.trim="searchForm.organIdList"
-            clearable
-            placeholder="请选择分部"
-          >
-            <el-option
-              v-for="(item, index) in selects.branchs"
-              :key="index"
-              :label="item.name"
-              :value="item.id"
-            ></el-option>
+          <select-all class="multiple" filterable multiple v-model.trim="searchForm.organIdList" clearable
+            placeholder="请选择分部">
+            <el-option v-for="(item, index) in selects.branchs" :key="index" :label="item.name"
+              :value="item.id"></el-option>
           </select-all>
         </el-form-item>
         <el-form-item>
-          <el-select
-            v-model.trim="searchForm.groupType"
-            @change="
-              () => {
-                searchForm.type = '';
-              }
-            "
-            filterable
-            placeholder="课程组类型"
-          >
-            <el-option
-              v-for="(item, index) in courseListType"
-              :key="index"
-              :value="item.value"
-              :label="item.label"
-            ></el-option>
+          <el-select v-model.trim="searchForm.groupType" @change="() => {
+              searchForm.type = '';
+            }
+            " filterable placeholder="课程组类型">
+            <el-option v-for="(item, index) in courseListType" :key="index" :value="item.value"
+              :label="item.label"></el-option>
           </el-select>
         </el-form-item>
         <!-- musicClassTypeList -->
         <el-form-item prop="type">
-          <el-select
-            v-model.trim="searchForm.type"
-            filterable
-            clearable
-            :disabled="searchForm.groupType != 'MUSIC'"
-            placeholder="班级类型"
-          >
-            <el-option
-              v-for="(item, index) in musicClassTypeList"
-              :key="index"
-              :label="item.label"
-              :value="item.value"
-            ></el-option>
+          <el-select v-model.trim="searchForm.type" filterable clearable :disabled="searchForm.groupType != 'MUSIC'"
+            placeholder="班级类型">
+            <el-option v-for="(item, index) in musicClassTypeList" :key="index" :label="item.label"
+              :value="item.value"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item prop="mainTeacherUserId">
-          <remote-search
-            :commit="'setTeachers'"
-            v-model="searchForm.mainTeacherUserId"
-            :demissionFlag="true"
-            :isForzenWithQueryCondition="true"
-          />
+          <remote-search :commit="'setTeachers'" v-model="searchForm.mainTeacherUserId" :demissionFlag="true"
+            :isForzenWithQueryCondition="true" />
         </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
-            type="primary"
-            v-permission="'export/classGroup'"
-            @click="exportClassGroup"
-            >导出</el-button
-          >
+          <el-button type="primary" v-permission="'export/classGroup'" @click="exportClassGroup">导出</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="musicGroupId"
-            label="课程组编号"
-          >
+        <el-table style="width: 100%" :header-cell-style="{ background: '#EDEEF0', color: '#444' }" :data="tableList">
+          <el-table-column align="center" prop="musicGroupId" label="课程组编号">
             <template slot-scope="scope">
               <copy-text>{{ scope.row.musicGroupId }}</copy-text>
             </template>
@@ -125,31 +63,19 @@
               <copy-text>{{ scope.row.id }}</copy-text>
             </template>
           </el-table-column> -->
-          <el-table-column
-            align="center"
-            prop="musicGroupName"
-            label="课程组名称"
-          ></el-table-column>
+          <el-table-column align="center" prop="musicGroupName" label="课程组名称"></el-table-column>
           <el-table-column align="center" prop="organName" label="分部名称">
             <template slot-scope="scope">
               <copy-text>{{ scope.row.organName }}</copy-text>
             </template>
           </el-table-column>
-          <el-table-column
-            align="center"
-            prop="name"
-            label="班级名称"
-          ></el-table-column>
+          <el-table-column align="center" prop="name" label="班级名称"></el-table-column>
           <el-table-column align="center" prop="type" label="班级类型">
             <template slot-scope="scope">
               <div>{{ scope.row.type | classType }}</div>
             </template>
           </el-table-column>
-          <el-table-column
-            align="center"
-            prop="studentNum"
-            label="当前班级人数"
-          >
+          <el-table-column align="center" prop="studentNum" label="当前班级人数">
             <template slot-scope="scope">
               <div>{{ scope.row.studentNum }}人</div>
             </template>
@@ -157,11 +83,8 @@
           <el-table-column align="center" prop label="主教老师">
             <template slot-scope="scope">
               <div v-if="scope.row.classGroupTeacherMapperList">
-                <p
-                  v-for="(item, index) in scope.row.classGroupTeacherMapperList"
-                  v-if="item.teacherRole == 'BISHOP'"
-                  :key="index"
-                >
+                <p v-for="(item, index) in scope.row.classGroupTeacherMapperList" v-if="item.teacherRole == 'BISHOP'"
+                  :key="index">
                   {{ item.userName }}
                 </p>
               </div>
@@ -170,11 +93,8 @@
           <el-table-column align="center" label="助教老师">
             <template slot-scope="scope">
               <div v-if="scope.row.classGroupTeacherMapperList">
-                <p
-                  v-for="(item, index) in scope.row.classGroupTeacherMapperList"
-                  v-if="item.teacherRole == 'TEACHING'"
-                  :key="index"
-                >
+                <p v-for="(item, index) in scope.row.classGroupTeacherMapperList" v-if="item.teacherRole == 'TEACHING'"
+                  :key="index">
                   {{ item.userName }}
                 </p>
               </div>
@@ -190,97 +110,39 @@
               <div>{{ scope.row.totalClassTimes }}</div>
             </template>
           </el-table-column>
-          <el-table-column
-            fixed="right"
-            width="160px"
-            align="center"
-            label="操作"
-          >
+          <el-table-column fixed="right" width="160px" align="center" label="操作">
             <template slot-scope="scope">
-              <el-button
-                type="text"
-                v-if="
-                 permission('classGroup/update')
-                "
-                @click="resetClassName(scope.row,true)"
-                >班级名称调整</el-button
-              >
-              <el-button
-                type="text"
-                v-if="
-                 permission('classGroup/update')
-                "
-                @click="resetClassName(scope.row,false)"
-                >备注</el-button
-              >
-              <el-button
-                type="text"
-                @click="addCompound(scope.row)"
-                v-if="
-                  scope.row.type != 'MUSIC_NETWORK' &&
-                  scope.row.groupType == 'MUSIC' &&
-                  !isAddCom(scope.row) &&
-                  permission('classGroup/spanGroupMergeClassSplitClassAffirm')
-                "
-                >添加合班</el-button
-              >
-              <el-button
-                type="text"
-                v-if="
-                  isAddCom(scope.row) &&
-                  permission('classGroup/spanGroupMergeClassSplitClassAffirm')
-                "
-                @click="cancleCompound(scope.row)"
-                >取消合班</el-button
-              >
-              <el-button
-                type="text"
-                v-if="
-                  permission('classGroup/delSingle?page=teamCLassList') &&
-                  scope.row.groupType === 'MUSIC' &&
-                  (scope.row.studentNum == '0' ||
-                    scope.row.totalClassTimes == '0')
-                "
-                @click="removeClass(scope)"
-                >删除</el-button
-              >
+              <el-button type="text" v-if="permission('classGroup/update')
+                " @click="resetClassName(scope.row, true)">班级名称调整</el-button>
+              <el-button type="text" v-if="permission('classGroup/update')
+                " @click="resetClassName(scope.row, false)">备注</el-button>
+              <el-button type="text" @click="addCompound(scope.row)" v-if="scope.row.type != 'MUSIC_NETWORK' &&
+                scope.row.groupType == 'MUSIC' &&
+                !isAddCom(scope.row) &&
+                permission('classGroup/spanGroupMergeClassSplitClassAffirm')
+                ">添加合班</el-button>
+              <el-button type="text" v-if="isAddCom(scope.row) &&
+                permission('classGroup/spanGroupMergeClassSplitClassAffirm')
+                " @click="cancleCompound(scope.row)">取消合班</el-button>
+              <el-button type="text" v-if="permission('classGroup/delSingle?page=teamCLassList') &&
+                scope.row.groupType === 'MUSIC' &&
+                (scope.row.studentNum == '0' ||
+                  scope.row.totalClassTimes == '0')
+                " @click="removeClass(scope)">删除</el-button>
             </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"
-        />
+        <pagination sync :total.sync="rules.total" :page.sync="rules.page" :limit.sync="rules.limit"
+          :page-sizes="rules.page_size" @pagination="getList" />
       </div>
     </div>
-    <classCompound
-      :compoundList="compoundList"
-      v-if="
-        permission('classGroup/spanGroupMergeClassSplitClassAffirm') &&
-        compoundList.length > 0
-      "
-      @clearCom="clearCom"
-      @getList="getList"
-      @cancleCompound="cancleCompound"
-    />
-        <!-- 修改班级名称 -->
-    <el-dialog
-      :title="!resetName?'班级名称调整':'备注'"
-      width="500px"
-      :visible.sync="classNameVisible"
-      v-if="classNameVisible"
-    >
-      <changeClassName
-        :classGroupId="activeClass"
-        :detail="classDetail"
-        @submited="submitedResetClassName"
-        :resetName="resetName"
-        @close="classNameVisible = false"
-      />
+    <classCompound :compoundList="compoundList" v-if="permission('classGroup/spanGroupMergeClassSplitClassAffirm') &&
+      compoundList.length > 0
+      " @clearCom="clearCom" @getList="getList" @cancleCompound="cancleCompound" />
+    <!-- 修改班级名称 -->
+    <el-dialog :title="!resetName ? '班级名称调整' : '备注'" width="500px" :visible.sync="classNameVisible" v-if="classNameVisible">
+      <changeClassName :classGroupId="activeClass" :detail="classDetail" @submited="submitedResetClassName"
+        :resetName="resetName" @close="classNameVisible = false" />
     </el-dialog>
   </div>
 </template>
@@ -301,10 +163,10 @@ import { permission } from "@/utils/directivePage";
 import classCompound from "./componentClass/classCompound";
 import { Export } from "@/utils/downLoadFile";
 import changeClassName from "@/views/teamDetail/components/modals/class-resetclass-name.vue";
-import {resetClassName} from '@/views/teamDetail/api'
+import { resetClassName } from '@/views/teamDetail/api'
 import qs from "qs";
 export default {
-  components: { pagination, classCompound,changeClassName },
+  components: { pagination, classCompound, changeClassName },
   data() {
     return {
       searchForm: {
@@ -312,7 +174,7 @@ export default {
         organIdList: [],
         type: "",
         groupType: "MUSIC",
-        mainTeacherUserId:''
+        mainTeacherUserId: ''
       },
       courseListType: courseListType,
       musicClassTypeList,
@@ -327,14 +189,14 @@ export default {
         total: 0, // 总条数
         page_size: [10, 20, 40, 50], // 选择限制显示条数
       },
-      classNameVisible:false,
-      classDetail:null,
-      activeClass:'',
-      resetName:false
+      classNameVisible: false,
+      classDetail: null,
+      activeClass: '',
+      resetName: false
     };
   },
   //生命周期 - 创建完成(可以访问当前this实例)
-  created() {},
+  created() { },
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {
     const { query, params } = this.$route;
@@ -358,7 +220,7 @@ export default {
         if (!res.data) {
           this.$bus.$emit("showguide", ["agreement"]);
         }
-      } catch (e) {}
+      } catch (e) { }
     },
     reloadSearch() {
       this.rules.page = 1;
@@ -402,7 +264,7 @@ export default {
         await removeSingleClass({ classGroupId: scope.row.id });
         this.$message.success("删除成功");
         this.getList();
-      } catch (error) {}
+      } catch (error) { }
     },
     addCompound(row) {
       //  scope.row.type != 'HIGH_ONLINE' &&scope.row.type != 'HIGH'&&
@@ -483,13 +345,13 @@ export default {
         "是否确认导出报表?"
       );
     },
-        resetClassName(row,flag) {
+    resetClassName(row, flag) {
       this.classDetail = row;
       this.resetName = !flag;
       this.classNameVisible = true;
     },
     async submitedResetClassName(data) {
-      const obj = {...data};
+      const obj = { ...data };
       resetClassName(obj).then((res) => {
         if (res.code == 200) {
           this.$message.success("修改成功");
@@ -501,5 +363,4 @@ export default {
   },
 };
 </script>
-<style lang='scss' scoped>
-</style>
+<style lang='scss' scoped></style>