Quellcode durchsuchen

Merge branch '11/24SAAS' of http://git.dayaedu.com/yonge/dy-admin-manager into 11/24SAAS

lex-xin vor 3 Jahren
Ursprung
Commit
d5b1491ee3

Datei-Diff unterdrückt, da er zu groß ist
+ 4 - 0
dist/static/js/chunk-1eb12df0.13deb144.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/static/js/chunk-7cd2b71c.393cdc53.js


Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
dist/static/js/chunk-a8a483c2.67159a7d.js


+ 5 - 1
src/components/Pagination/index.vue

@@ -148,7 +148,7 @@ export default {
 }
 </script>
 
-<style scoped>
+<style scoped lang="scss">
 .pagination-container {
   background: #fff;
   padding: 32px 16px;
@@ -160,4 +160,8 @@ export default {
 .pagination-container.hidden {
   display: none;
 }
+/deep/.el-select {
+    width: 100px!important;
+    margin: 0 5px;
+}
 </style>

+ 27 - 27
src/layout/components/AppMain.vue

@@ -17,30 +17,32 @@
       </div>
     </transition>
     <serviceRemind />
-    <el-dialog
-      :visible.sync="guideVisible"
-      title="您需要完成以下设置"
-      width="800px"
-      :modal="false"
-      v-if="guideList.length > 0"
-      append-to-body
-    >
-      <div class="guideWrap">
-        <div class="guideItem" v-for="guide in guideList" :key="guide.name">
-          <p>
-            <span class="guideTitle">{{ guide.name }}</span>
-            <el-button
-              type="text"
-              @click="gotoSet(guide)"
-              v-if="permission(guide.permission)"
-              >立即设置 >></el-button
-            >
-            <span v-else>您暂无此设置权限,请联系机构管理员</span>
-          </p>
-          <p>{{ guide.desc }}</p>
+    <div style="z-index:5000">
+      <el-dialog
+        :visible.sync="guideVisible"
+        title="您需要完成以下设置"
+        width="800px"
+        :modal="false"
+        v-if="guideList.length > 0"
+        append-to-body
+      >
+        <div class="guideWrap">
+          <div class="guideItem" v-for="guide in guideList" :key="guide.name">
+            <p>
+              <span class="guideTitle">{{ guide.name }}</span>
+              <el-button
+                type="text"
+                @click="gotoSet(guide)"
+                v-if="permission(guide.permission)"
+                >立即设置 >></el-button
+              >
+              <span v-else>您暂无此设置权限,请联系机构管理员</span>
+            </p>
+            <p>{{ guide.desc }}</p>
+          </div>
         </div>
-      </div>
-    </el-dialog>
+      </el-dialog>
+    </div>
     <div
       class="optionBtn"
       v-if="!outOptionvisible && isShowBtn"
@@ -246,7 +248,6 @@ export default {
 </script>
 <style lang="scss" scoped>
 .previewImg {
-
 }
 /deep/.el-drawer__header {
   margin-bottom: 0px;
@@ -318,7 +319,6 @@ export default {
 /*设置字体的大小*/
 </style>
 <style scoped>
-
 .app-main {
   /*50 = navbar  */
   /* height: calc(100vh - 80px); */
@@ -344,6 +344,6 @@ export default {
   }
 }
 .el-image-viewer__close {
-    display: none!important;
-  }
+  display: none !important;
+}
 </style>

+ 3 - 88
src/views/buildVip/index.vue

@@ -927,94 +927,9 @@ export default {
       this.title = "网管课申请";
       this.$route.meta.title = "网管课申请";
       this.hasOffline = false;
-      // this.$router.push(
-      //   {
-      //     query: merge(this.$route.query, {
-      //      courseType:'PRACTICE'
-      //     })
-      //   },
-      //   (router) => {
-      //     console.log(router);
-
-      //   }
-      // );
-      //   let sotrage = JSON.parse(localStorage.getItem(`newPractice`));
-      //   if (sotrage?.leftForm?.classOrganId) {
-      //     this.$confirm("检测到您有未提交的数据, 是否恢复?", "提示", {
-      //       confirmButtonText: "确定",
-      //       cancelButtonText: "取消",
-      //       closeOnClickModal: false,
-      //       type: "warning",
-      //     }).then(async () => {
-      //       this.activeStudentList = sotrage.activeStudentList;
-      //       this.centerForm = sotrage.centerForm;
-      //       this.leftForm = sotrage.leftForm;
-      //       this.rightForm = sotrage.rightForm;
-      //       this.timeTable = sotrage.timeTable;
-      //       this.educationList = sotrage.educationList;
-      //       this.courseTypeList = sotrage.courseTypeList;
-      //       // 为了刷新线上课单价和线下课单价
-      //       await vipGroupCategory({
-      //         organId: sotrage?.leftForm?.classOrganId,
-      //       }).then((res) => {
-      //         if (res.code == 200) {
-      //           this.courseTypeList = res.data;
-      //         }
-      //       });
-      //       this.scetionList = sotrage.scetionList;
-      //       this.studentList = sotrage.studentList;
-      //       this.activeList = sotrage.activeList;
-      //       this.studentLimit = sotrage.studentLimit;
-      //       this.teacherList = sotrage.teacherList;
-      //       this.isMusicTheory = sotrage.isMusicTheory;
-      //       this.chioseStudent = sotrage.chioseStudent;
-      //       this.maxCourseNum = sotrage.maxCourseNum;
-      //       this.minCourseNum = sotrage.minCourseNum;
-      //       if (this.leftForm?.courseType) {
-      //         this.changePrice(this.leftForm.courseType);
-      //       }
-      //     });
-      //   }
-      // } else {
-      //   this.title = "VIP/乐理课申请";
-      //   this.$route.meta.title = "VIP/乐理课申请";
-      //   let sotrage = JSON.parse(localStorage.getItem(`newVip`));
-      //   if (sotrage?.leftForm?.classOrganId) {
-      //     this.$confirm("检测到您有未提交的数据, 是否恢复?", "提示", {
-      //       confirmButtonText: "确定",
-      //       cancelButtonText: "取消",
-      //       closeOnClickModal: false,
-      //       type: "warning",
-      //     }).then(async () => {
-      //       this.activeStudentList = sotrage.activeStudentList;
-      //       this.centerForm = sotrage.centerForm;
-      //       this.leftForm = sotrage.leftForm;
-      //       this.rightForm = sotrage.rightForm;
-      //       this.timeTable = sotrage.timeTable;
-      //       this.educationList = sotrage.educationList;
-      //       this.courseTypeList = sotrage.courseTypeList;
-      //       this.maxCourseNum = sotrage.maxCourseNum;
-      //       this.minCourseNum = sotrage.minCourseNum;
-      //       // 为了刷新线上课单价和线下课单价
-      //       await vipGroupCategory({
-      //         organId: sotrage?.leftForm?.classOrganId,
-      //       }).then((res) => {
-      //         if (res.code == 200) {
-      //           this.courseTypeList = res.data;
-      //         }
-      //       });
-      //       this.scetionList = sotrage.scetionList;
-      //       this.studentList = sotrage.studentList;
-      //       this.activeList = sotrage.activeList;
-      //       this.studentLimit = sotrage.studentLimit;
-      //       this.teacherList = sotrage.teacherList;
-      //       this.isMusicTheory = sotrage.isMusicTheory;
-      //       this.chioseStudent = sotrage.chioseStudent;
-      //       if (this.leftForm?.courseType) {
-      //         this.changePrice(this.leftForm.courseType);
-      //       }
-      //     });
-      //   }
+    }else{
+        this.title = "VIP申请";
+      this.$route.meta.title = "VIP申请";
     }
 
     this.init();

+ 1 - 1
src/views/categroyManager/specialSetup/courseTimerSetting.vue

@@ -159,7 +159,7 @@ export default {
       isAdd: true,
       courseVisible: false,
       activeRow: null,
-      context:'创建分部后,可根据各分部的及时情况在本界面添加各类型乐团课程的单课时时长,添加完成后,各分部乐团在排课时可选择此处设置的单课时时长进行排课,同一种课程类型可设置多种单课时时长,帮助进行乐团课时时长的规范管理。',
+      context:'创建分部后,可根据各分部的实际情况在本界面添加各类型乐团课程的单课时时长,添加完成后,各分部乐团在排课时可选择此处设置的单课时时长进行排课,同一种课程类型可设置多种单课时时长,帮助进行乐团课时时长的规范管理。',
       contextFlag:false
     };
   },

+ 2 - 2
src/views/categroyManager/specialSetup/modals/courseTimeForm.vue

@@ -47,7 +47,7 @@
           ></el-option>
         </el-select>
       </el-form-item>
-      <el-form-item label="课程课时" prop="timer" :label-width="formLabelWidth">
+      <el-form-item label="单课时时长" prop="timer" :label-width="formLabelWidth">
         <el-tag
           :key="index"
           effect="dark"
@@ -99,7 +99,7 @@ export default {
         id: "",
       },
       inputVisible: false,
-      formLabelWidth: "80px",
+      formLabelWidth: "100px",
       dynamicTags: [],
       inputValue: "",
     };

+ 5 - 3
src/views/categroyManager/specialSetup/musicCourseFee.vue

@@ -1,7 +1,7 @@
 <template>
   <div class="m-container">
     <!-- <h2>折扣设置</h2> -->
-    <div v-if="tableList.length>0 || pageInfo.page>1">
+    <div v-if="(tableList.length>0 || pageInfo.page>1)&&contextFlag">
       <save-form
         :inline="true"
         @submit="search"
@@ -109,7 +109,7 @@
         />
       </div>
     </div>
- <emptyPage @submit="newVisiable = true" title='乐团课价格设置' btnTitle='新建乐团课价格设置' :context='context' v-else />
+ <emptyPage @submit="newVisiable = true" title='乐团课价格设置' btnTitle='新建乐团课价格设置' :context='context' v-if="!(tableList.length>0 || pageInfo.page>1)&&contextFlag" />
     <el-dialog
       title="新建"
       destroy-on-close
@@ -323,7 +323,8 @@ export default {
       },
       formLabelWidth: "120px",
       actvieRow: null,
-      context:'系统支持不同分部在不同的乐团模式中设置各课程类型的不同价格标准,该标准为具体课程类型每分钟的收费价格,在创建乐团课程组合包或乐团临时加课时,根据组合包中的课程时长或临时加课的课程时长计算应该向学员收费的标准费用。创不以此标准价格创建学员缴费,则需要审核才可生效。'
+      context:'系统支持不同分部在不同的乐团模式中设置各课程类型的不同价格标准,该标准为具体课程类型每分钟的收费价格,在创建乐团课程组合包或乐团临时加课时,根据组合包中的课程时长或临时加课的课程时长计算应该向学员收费的标准费用。创不以此标准价格创建学员缴费,则需要审核才可生效。',
+      contextFlag:false
     };
   },
   mounted() {
@@ -376,6 +377,7 @@ export default {
         organId: this.searchForm.organId,
         courseScheduleType: this.searchForm.courseScheduleType,
       }).then((res) => {
+        this.contextFlag = true
         let result = res.data;
         this.tableList = result.rows;
         this.pageInfo.total = result.total;

+ 1 - 1
src/views/couponManager/couponGiveList.vue

@@ -100,7 +100,7 @@
     </div>
     <!--  -->
     <el-dialog
-      title="激活会员"
+      title="激活团练保"
       :visible.sync="couponDetailVisible"
       width="1000px"
       append-to-body

+ 5 - 2
src/views/main/cloudDate/organDate.vue

@@ -7,7 +7,7 @@
           type="primary"
           v-permission="'export/organStudentOverView'"
           @click="organDateExport"
-          
+
           >导出</el-button
         >
         <el-button
@@ -66,7 +66,8 @@
               </div>
             </template>
           </el-table-column>
-          <el-table-column align="center" prop="targetNum" label="目标人数">
+          {{$helpers.tenantId}}
+          <el-table-column align="center" prop="targetNum" label="目标人数" v-if="tenantId ==1">
             <template slot="header" slot-scope="slot">
               <div class="titleCell">
                 <span>目标人数</span>
@@ -346,9 +347,11 @@ export default {
       searchList: {
         cloudStudyUseStudentDuty: "DESC",
       },
+      tenantId:''
     };
   },
   mounted() {
+   this.tenantId =  this.$helpers.tenantId
     this.getList();
   },
   methods: {

+ 291 - 298
src/views/main/cloudDate/organRankDetail.vue

@@ -6,284 +6,277 @@
       content="分部团练宝数据"
     >
     </el-page-header>
-          <save-form
-        :inline="true"
-        :model="searchForm"
-        @submit="search"
-        ref="saveForm"
+    <save-form
+      :inline="true"
+      :model="searchForm"
+      @submit="search"
+      ref="saveForm"
+    >
+      <el-form-item prop="organId">
+        <el-select
+          class="multiple"
+          v-model.trim="searchForm.organId"
+          clearable
+          filterable
+          placeholder="请选择分部"
+          @change="search"
+        >
+          <el-option
+            v-for="(item, index) in specialList"
+            :key="index"
+            :label="item.name"
+            :value="item.id"
+          ></el-option>
+        </el-select>
+      </el-form-item>
+    </save-form>
+    <p style="margin-bottom: 20px; font-size: 14px">
+      共{{ tableList.length }}个分部
+    </p>
+    <div class="tableWrap">
+      <el-table
+        style="width: 100%"
+        :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+        :data="tableList"
+        @sort-change="sortChang"
+        :default-sort="{
+          prop: 'cloudStudyUseStudentDuty',
+          order: 'descending',
+        }"
+        sortable="custom"
       >
-        <el-form-item prop="organId">
-          <el-select
-            class="multiple"
-            v-model.trim="searchForm.organId"
-            clearable
-            filterable
-            placeholder="请选择分部"
-            @change="search"
-          >
-            <el-option
-              v-for="(item, index) in specialList"
-              :key="index"
-              :label="item.name"
-              :value="item.id"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-      </save-form>
-      <p style="margin-bottom:20px;font-size:14px;">共{{tableList.length}}个分部</p>
-      <div class="tableWrap">
-        <el-table
-          style="width: 100%"
-          :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
-          :data="tableList"
-          @sort-change="sortChang"
-          :default-sort="{
-            prop: 'cloudStudyUseStudentDuty',
-            order: 'descending',
-          }"
+        <el-table-column
+          align="center"
+          prop="index"
+          label="排名"
+        ></el-table-column>
+        <el-table-column
+          align="center"
+          prop="organName"
+          label="分部"
+        ></el-table-column>
+        <el-table-column align="center" prop="totalStudentNum" label="学员总数">
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>学员总数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">
+                  乐团在读学员+有剩余VIP课或网管课学员去重之和
+                </div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          align="center"
+          prop="targetNum"
+          label="目标人数"
+          v-if="tenantId == 1"
+        >
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>目标人数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">
+                  进行中非会员乐团-已上乐团课小于等于4节学员-非本活动购买会员-弦乐声部学员
+                </div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          align="center"
+          prop="cloudStudyLivelyStudentNum"
+          label="活跃人数"
+        >
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>活跃人数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">近15天内使用达到5天及以上的用户数</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          align="center"
+          prop="cloudStudyUseStudentNum"
+          label="使用人数"
+        >
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>使用人数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">截止目前使用团练宝的总人数</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column align="center" prop="newStudentNum" label="新用户人数">
+          <template slot="header">
+            <div class="titleCell">
+              <span>新用户人数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">乐团在读学员已上课程≤4节</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
           sortable="custom"
+          align="center"
+          prop="newStudentDuty"
+          label="新用户占比"
         >
-          <el-table-column
-            align="center"
-            prop="index"
-            label="排名"
-          ></el-table-column>
-          <el-table-column
-            align="center"
-            prop="organName"
-            label="分部"
-          ></el-table-column>
-          <el-table-column
-            align="center"
-            prop="totalStudentNum"
-            label="学员总数"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>学员总数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">
-                    乐团在读学员+有剩余VIP课或网管课学员去重之和
-                  </div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-                              <el-table-column align="center" prop="targetNum" label="目标人数">
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>目标人数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">
-                    进行中非会员乐团-已上乐团课小于等于4节学员-非本活动购买会员-弦乐声部学员
-                  </div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            align="center"
-            prop="cloudStudyLivelyStudentNum"
-            label="活跃人数"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>活跃人数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">近15天内使用达到5天及以上的用户数</div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            align="center"
-            prop="cloudStudyUseStudentNum"
-            label="使用人数"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>使用人数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">截止目前使用团练宝的总人数</div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            align="center"
-            prop="newStudentNum"
-            label="新用户人数"
-          >
-            <template slot="header">
-              <div class="titleCell">
-                <span>新用户人数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">
-                    乐团在读学员已上课程≤4节
-                  </div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            sortable="custom"
-            align="center"
-            prop="newStudentDuty"
-            label="新用户占比"
-          >
-            <template slot-scope="scope">
-              {{ scope.row.newStudentDuty }}%
-            </template>
-          </el-table-column>
-          <el-table-column
-            align="center"
-            prop="newCloudStudyStudentNum"
-            label="新增使用人数"
-            width="130px"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>新增使用人数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">当日第一次使用团练宝的人数</div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            align="center"
-            prop="cloudStudyUseStudentDuty"
-            label="使用比例"
-            sortable="custom"
-            width="140px"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>使用比例</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">使用人数 / 学员总数</div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-            <template slot-scope="scope">
-              <div>{{ scope.row.cloudStudyUseStudentDuty }}%</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            align="center"
-            prop="vipStudentNum"
-            label="付费会员数"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>付费会员数</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">该分部生效中、待生效付费会员总数</div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            sortable="custom"
-            align="center"
-            prop="vipStudentDuty"
-            label="付费会员占比"
-            width="150px"
-          >
-            <template slot="header" slot-scope="slot">
-              <div class="titleCell">
-                <span>付费会员占比</span>
-                <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">付费会员数 / 学员总数</div>
-                  <i
-                    class="el-icon-question micon el-tooltip"
-                    style="
-                      font-size: 18px;
-                      color: #f56c6c;
-                      top: 2px;
-                      position: relative;
-                    "
-                  ></i>
-                </el-tooltip>
-              </div>
-            </template>
-            <template slot-scope="scope">
-              <div>{{ scope.row.vipStudentDuty }}%</div>
-            </template>
-          </el-table-column>
-          <!-- <el-table-column
+          <template slot-scope="scope">
+            {{ scope.row.newStudentDuty }}%
+          </template>
+        </el-table-column>
+        <el-table-column
+          align="center"
+          prop="newCloudStudyStudentNum"
+          label="新增使用人数"
+          width="130px"
+        >
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>新增使用人数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">当日第一次使用团练宝的人数</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          align="center"
+          prop="cloudStudyUseStudentDuty"
+          label="使用比例"
+          sortable="custom"
+          width="140px"
+        >
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>使用比例</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">使用人数 / 学员总数</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+          <template slot-scope="scope">
+            <div>{{ scope.row.cloudStudyUseStudentDuty }}%</div>
+          </template>
+        </el-table-column>
+        <el-table-column align="center" prop="vipStudentNum" label="付费会员数">
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>付费会员数</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">该分部生效中、待生效付费会员总数</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column
+          sortable="custom"
+          align="center"
+          prop="vipStudentDuty"
+          label="付费会员占比"
+          width="150px"
+        >
+          <template slot="header" slot-scope="slot">
+            <div class="titleCell">
+              <span>付费会员占比</span>
+              <el-tooltip placement="top" popper-class="mTooltip">
+                <div slot="content">付费会员数 / 学员总数</div>
+                <i
+                  class="el-icon-question micon el-tooltip"
+                  style="
+                    font-size: 18px;
+                    color: #f56c6c;
+                    top: 2px;
+                    position: relative;
+                  "
+                ></i>
+              </el-tooltip>
+            </div>
+          </template>
+          <template slot-scope="scope">
+            <div>{{ scope.row.vipStudentDuty }}%</div>
+          </template>
+        </el-table-column>
+        <!-- <el-table-column
                sortable="custom"
             align="center"
             prop="eVipStudentNum"
@@ -310,19 +303,19 @@
             </template>
           </el-table-column> -->
 
-          <el-table-column align="center" prop="studentId" label="操作">
-            <template slot-scope="scope">
-              <div>
-                <auth auths="/organDateDetail">
-                  <el-button type="text" @click="gotoDetail(scope.row)"
-                    >详情</el-button
-                  >
-                </auth>
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
-        <!-- <pagination
+        <el-table-column align="center" prop="studentId" label="操作">
+          <template slot-scope="scope">
+            <div>
+              <auth auths="/organDateDetail">
+                <el-button type="text" @click="gotoDetail(scope.row)"
+                  >详情</el-button
+                >
+              </auth>
+            </div>
+          </template>
+        </el-table-column>
+      </el-table>
+      <!-- <pagination
           :autoScroll="false"
           :total.sync="rules.total"
           :page.sync="rules.page"
@@ -330,7 +323,7 @@
           :page-sizes="rules.page_size"
           @pagination="getList"
         /> -->
-      </div>
+    </div>
   </div>
 </template>
 <script>
@@ -351,9 +344,7 @@ export default {
       searchList: {
         cloudStudyUseStudentDuty: "DESC",
       },
-      searchForm:{
-
-      },
+      searchForm: {},
       rules: {
         // 分页规则
         limit: 10, // 限制显示条数
@@ -362,12 +353,13 @@ export default {
         page_size: [10, 20, 40, 50], // 选择限制显示条数
       },
       date: "",
-      specialList:[]
+      specialList: [],
+      tenantId: "",
     };
   },
- async mounted() {
+  async mounted() {
     this.date = dayjs(new Date()).subtract(1, "day").format("YYYY-MM-DD");
-        await this.$store.dispatch("setBranchs");
+    await this.$store.dispatch("setBranchs");
     const arr = [
       36, 39, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 54, 55, 56,
     ];
@@ -378,6 +370,7 @@ export default {
       this.searchForm.organId = this.$route.params.organId;
     }
     this.getList();
+    this.tenantId = this.$helpers.tenantId;
   },
   methods: {
     async getList() {
@@ -394,8 +387,8 @@ export default {
         console.log(e);
       }
     },
-    search(){
-      this.getList()
+    search() {
+      this.getList();
     },
     bigin() {
       let self = this;
@@ -445,7 +438,7 @@ export default {
       this.$store.dispatch("delVisitedViews", this.$route);
       this.$router.push({ path: "/main/main?tabrouter=cloudDate" });
     },
-        gotoDetail(row) {
+    gotoDetail(row) {
       // 跳转到分部数据详情 row.organId
       this.$router.push({
         name: "organDateDetail",

+ 3 - 3
src/views/resetTeaming/components/giveMemberList.vue

@@ -33,7 +33,7 @@
     <!-- <div class="newBand"
          @click="resetPays"
          v-permission="'musicGroupStudentFee/batchUpdateCourseFee'">修改缴费金额</div> -->
-    <el-button @click="addMember" v-if="$helpers.permission('cloudTeacherOrder/pay')" type="primary" style="margin-bottom: 20px">激活会员</el-button>
+    <el-button @click="addMember" v-if="$helpers.permission('cloudTeacherOrder/pay')" type="primary" style="margin-bottom: 20px">激活团练保</el-button>
 
     <div class="tableWrap">
       <el-table
@@ -102,7 +102,7 @@
     </div>
 
     <el-dialog
-      title="激活会员"
+      title="激活团练保"
       :visible.sync="giveMemberVisible"
       width="1000px"
       v-if="giveMemberVisible"
@@ -186,4 +186,4 @@ export default {
     }
   },
 };
-</script>
+</script>

+ 4 - 6
src/views/resetTeaming/components/payInfoDetail.vue

@@ -11,7 +11,7 @@
         <!-- <div class="Wall"></div> -->
         <div class="m-core1">
           <el-form :inline="true" :model="form" label-width="120px" ref="form">
-            <div :class="isField ? 'baseWrap' : 'baseWrapFixed'">
+            <div :class="isField ?  'baseWrapFixed' :'baseWrap'">
               <div class="payTitle">
                 <div class="squrt"></div>
                 <p>基础项目配置</p>
@@ -744,9 +744,8 @@ export default {
       });
     },
     onSubmit() {
-      console.log("提交");
+
       this.$refs.form.validate(async (isok) => {
-        console.log("isok", isok);
         if (isok) {
           let obj = this.fommatDate();
           if (this.$route.query.calenderId) {
@@ -870,11 +869,10 @@ export default {
         window.pageYOffset ||
         document.documentElement.scrollTop ||
         document.body.scrollTop;
-      console.log(this.scrollTop);
       if (!!this.scrollTop && this.scrollTop >= 70) {
-        this.isField = false;
-      } else {
         this.isField = true;
+      } else {
+        this.isField = false;
       }
     },
   },

+ 1 - 1
src/views/resetTeaming/modals/giveMemberModel.vue

@@ -54,7 +54,7 @@
     </span>
 
     <el-dialog
-      title="激活会员"
+      title="激活团练保"
       :visible.sync="payMentVisible"
       :before-close="onClose"
       v-if="payMentVisible"

+ 1 - 1
src/views/resetTeaming/modals/giveMemberPayment.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="chioseWrap">
-    <p>您将为<span>{{tableList.length}}</span>位学员激活会员<br />共需支付<span>{{ selectStudentMoney | moneyFormat }}</span>元</p>
+    <p>您将为<span>{{tableList.length}}</span>位学员激活团练保<br />共需支付<span>{{ selectStudentMoney | moneyFormat }}</span>元</p>
     <p>请扫描二维码支付,支付功能后学员团练宝即刻激活</p>
 
     <vue-qr :text="codeUrl" style="width: 250px" :margin="0"></vue-qr>

+ 5 - 5
src/views/resetTeaming/modals/user-pay-form.vue

@@ -209,12 +209,14 @@
             >新增缴费周期</el-button
           >
         </template>
+
         <paymentCycle
           ref="cycle"
           :form.sync="cycle"
           :isCommon="isCommon"
           :hidePaymentPattern="true"
           :isUserType="isUserType"
+          :hideMoney='paymentTypeString=="SPAN_GROUP_CLASS_ADJUST"?true:false'
           :isDisabled="
             form.leixing === '1' ||
             form.leixing === '2' ||
@@ -412,7 +414,7 @@ export default {
       let paymentType = "";
       if (this.viewDetail) {
         const { musicGroupPaymentCalenders } = this.viewDetail;
-        paymentType = this.viewDetail?.calender?.paymentType;
+        paymentType = this.viewDetail?.calender?.paymentType || this.viewDetail?.auditDto?.paymentType;
       }
       return paymentType;
     },
@@ -542,10 +544,7 @@ export default {
               "originalMemberPaymentAmount",
               this.viewDetail.member.originalAmount || null
             );
-            console.log(
-              this.viewDetail.member.originalAmount,
-              this.viewDetail.member.actualAmount
-            );
+
             this.$set(this.memberForm, "memberValidDate", [
               this.viewDetail.calender.startPaymentDate,
               this.viewDetail.calender.deadlinePaymentDate,
@@ -567,6 +566,7 @@ export default {
               batchNo: this.rowDetail.batchNo,
             });
             this.viewDetail = res.data;
+              // this.$set(this.other, "memo", this.viewDetail.auditDto.memo);
             const firstPayment = res.data.musicGroupPaymentCalenders[0] || {};
             this.eclass = (
               res.data.musicGroupPaymentCalenderCourseSettings || []

+ 3 - 3
src/views/studentManager/studentGroupPractice.vue

@@ -22,7 +22,7 @@
       <!-- <div class="newBand"
           @click="resetPays"
           v-permission="'musicGroupStudentFee/batchUpdateCourseFee'">修改缴费金额</div> -->
-      <el-button @click="addMember" v-if="$helpers.permission('cloudTeacherOrder/pay/student')" type="primary" style="margin-bottom: 20px">激活会员</el-button>
+      <el-button @click="addMember" v-if="$helpers.permission('cloudTeacherOrder/pay/student')" type="primary" style="margin-bottom: 20px">激活团练保</el-button>
 
       <div class="tableWrap">
         <el-table
@@ -92,7 +92,7 @@
     </div>
 
     <el-dialog
-      title="激活会员"
+      title="激活团练保"
       :visible.sync="giveMemberVisible"
       width="1000px"
       v-if="giveMemberVisible"
@@ -165,4 +165,4 @@ export default {
     }
   },
 };
-</script>
+</script>

+ 2 - 2
src/views/studentManager/studentGroupRecord.vue

@@ -111,7 +111,7 @@
     </div>
 
     <el-dialog
-      title="激活会员"
+      title="激活团练保"
       :visible.sync="recordVisible"
       width="1000px"
       v-if="recordVisible"
@@ -181,4 +181,4 @@ export default {
     }
   },
 };
-</script>
+</script>

+ 7 - 2
src/views/studentManager/studentList.vue

@@ -559,6 +559,7 @@
       class="studentInfo"
       @close="onMaskClose('studentForm')"
       :close-on-click-modal="false"
+      append-to-body
       :visible.sync="studentVisible"
     >
       <el-form
@@ -1298,12 +1299,13 @@ export default {
       this.maskName = "新增学员";
     },
     async resetStudent(row) {
+          this.studentVisible = true;
       let organId = row.organId;
       await this.getSubjectList();
       await this.changeStudentOrgan(row.organId);
       this.isNew = false;
       this.active = row;
-      this.studentVisible = true;
+
       this.maskName = "修改学员";
       this.$nextTick(() => {
         this.studentForm = {
@@ -1376,7 +1378,10 @@ export default {
           if (res.code == 200) {
             this.maskTeacherList = res.data;
             if(this.maskTeacherList<=0){
-               this.$bus.$emit("showguide", ['teacher']);
+              this.$nextTick(()=>{
+                 this.$bus.$emit("showguide", ['teacher']);
+              })
+
             }
 
           }

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.