Browse Source

Merge branch '03/03SAVECHECK' into 03/02musicSortOut

mo 4 years ago
parent
commit
05b57133cb
88 changed files with 503 additions and 184 deletions
  1. 0 0
      dist/index.html
  2. 1 0
      dist/static/css/chunk-03221830.e48265c1.css
  3. 0 1
      dist/static/css/chunk-45c832ba.66148cbf.css
  4. 0 0
      dist/static/css/chunk-6189ac20.7ec12e45.css
  5. 0 0
      dist/static/js/app.1e8c18b0.js
  6. 0 0
      dist/static/js/chunk-03221830.2900bf75.js
  7. 0 0
      dist/static/js/chunk-07594f33.d20cdb37.js
  8. 0 0
      dist/static/js/chunk-07594f33.d930efb4.js
  9. 0 0
      dist/static/js/chunk-08a5bd4e.d821d9a0.js
  10. 0 0
      dist/static/js/chunk-126f9f72.e3e26b31.js
  11. 0 0
      dist/static/js/chunk-126f9f72.f5bda110.js
  12. 0 0
      dist/static/js/chunk-12a33f1e.8ab95a97.js
  13. 0 0
      dist/static/js/chunk-12a33f1e.f3ea0411.js
  14. 0 0
      dist/static/js/chunk-16ec54a1.0aefddaa.js
  15. 0 0
      dist/static/js/chunk-16ec54a1.4ec053e5.js
  16. 0 0
      dist/static/js/chunk-246dd31b.ea3ed6d8.js
  17. 0 0
      dist/static/js/chunk-246dd31b.f39ecb14.js
  18. 0 0
      dist/static/js/chunk-257eca28.02a7b284.js
  19. 0 0
      dist/static/js/chunk-257eca28.a07e67bf.js
  20. 0 0
      dist/static/js/chunk-2928a062.6031c189.js
  21. 0 0
      dist/static/js/chunk-2928a062.92426984.js
  22. 0 0
      dist/static/js/chunk-2a90eb6d.0796c6dd.js
  23. 0 0
      dist/static/js/chunk-2a90eb6d.4a261170.js
  24. 0 0
      dist/static/js/chunk-2d0ac1af.42d41b6c.js
  25. 0 0
      dist/static/js/chunk-2d0b9f85.b6d5dfb0.js
  26. 0 0
      dist/static/js/chunk-2ddc0e3f.211382dc.js
  27. 0 0
      dist/static/js/chunk-2ddc0e3f.92411897.js
  28. 0 0
      dist/static/js/chunk-362f6420.52c4aacd.js
  29. 0 0
      dist/static/js/chunk-3d44bd43.72a020d2.js
  30. 0 0
      dist/static/js/chunk-3e99cc06.3453a8ea.js
  31. 0 0
      dist/static/js/chunk-3e99cc06.6a0b3348.js
  32. 0 0
      dist/static/js/chunk-42ab66a4.bbbf44d2.js
  33. 0 0
      dist/static/js/chunk-45c832ba.f69e03c9.js
  34. 0 0
      dist/static/js/chunk-4710b886.52721707.js
  35. 0 0
      dist/static/js/chunk-488078a8.ed99da93.js
  36. 0 0
      dist/static/js/chunk-495439dc.615fcda6.js
  37. 0 0
      dist/static/js/chunk-4d2bb3b0.2b6611fb.js
  38. 0 0
      dist/static/js/chunk-4dcddbd3.d9c26945.js
  39. 0 0
      dist/static/js/chunk-5db4513e.bb9ea791.js
  40. 0 0
      dist/static/js/chunk-5e1ddbca.3d73ad63.js
  41. 0 0
      dist/static/js/chunk-5e305839.44a042b5.js
  42. 0 0
      dist/static/js/chunk-5f5ffb00.4f432012.js
  43. 0 0
      dist/static/js/chunk-5f5ffb00.e4e4b663.js
  44. 0 0
      dist/static/js/chunk-6189ac20.aa13b36c.js
  45. 0 0
      dist/static/js/chunk-6a97b9c3.1e259b4a.js
  46. 0 0
      dist/static/js/chunk-739fed81.c2c36449.js
  47. 0 0
      dist/static/js/chunk-7b34927f.38636f7f.js
  48. 0 0
      dist/static/js/chunk-8eea3e92.32d1f2b8.js
  49. 0 0
      dist/static/js/chunk-9574c424.2ab34194.js
  50. 0 0
      dist/static/js/chunk-9574c424.323bf49d.js
  51. 0 0
      dist/static/js/chunk-9c496280.bd46012e.js
  52. 0 0
      dist/static/js/chunk-a23e2ba4.3ebe8ddd.js
  53. 0 0
      dist/static/js/chunk-a23e2ba4.a4c50d1b.js
  54. 0 0
      dist/static/js/chunk-a4e62e66.fc16b0fd.js
  55. 0 0
      dist/static/js/chunk-c2ac2236.282698db.js
  56. 0 0
      dist/static/js/chunk-c7502088.8370a27a.js
  57. 0 0
      dist/static/js/chunk-c7f5974e.c122c136.js
  58. 0 0
      dist/static/js/chunk-cc568e20.8b1ec88a.js
  59. 0 0
      dist/static/js/chunk-cc568e20.d538b3db.js
  60. 0 0
      dist/static/js/chunk-d393573c.f621b24f.js
  61. 0 0
      dist/static/js/chunk-d59046ce.75507a59.js
  62. 0 0
      dist/static/js/chunk-da63f3ae.964e7465.js
  63. 0 0
      dist/static/js/chunk-da63f3ae.98c38f41.js
  64. 0 0
      dist/static/js/chunk-e60d0406.03d1837f.js
  65. 0 0
      dist/static/js/chunk-eb65ded6.2b168562.js
  66. 0 0
      dist/static/js/chunk-fb41c584.940fb117.js
  67. 19 18
      src/layout/components/AppMain.vue
  68. 45 32
      src/layout/components/TagsView.vue
  69. 5 1
      src/router/index.js
  70. 3 2
      src/router/notKeepAliveList.js
  71. 3 1
      src/store/getters.js
  72. 17 2
      src/store/modules/buildTeam.js
  73. 3 0
      src/store/modules/tagsView.js
  74. 8 0
      src/utils/searchArray.js
  75. 0 1
      src/views/setSilder/addSilder.vue
  76. 37 10
      src/views/teamBuild/components/soundSetComponents/soundSetCore.vue
  77. 114 66
      src/views/teamBuild/components/teamBaseInfo.vue
  78. 8 13
      src/views/teamBuild/components/teamSoundSet.vue
  79. 9 4
      src/views/teamBuild/index.vue
  80. 195 0
      src/views/teamBuild/teamDraft.vue
  81. 2 1
      src/views/teamDetail/componentCourse/studentRollCall.vue
  82. 0 7
      src/views/teamDetail/index.vue
  83. 0 4
      src/views/teamDetail/indexCourse.vue
  84. 8 3
      src/views/teamDetail/teamCourseList.vue
  85. 0 7
      src/views/teamDetail/teamInfo.vue
  86. 14 6
      src/views/teamDetail/teamList.vue
  87. 11 3
      src/views/withdrawal-application/modals/visit.vue
  88. 1 2
      vue.config.js

File diff suppressed because it is too large
+ 0 - 0
dist/index.html


+ 1 - 0
dist/static/css/chunk-03221830.e48265c1.css

@@ -0,0 +1 @@
+.visitBtnWrap[data-v-5287c0d8]{position:absolute;right:90px;top:82px;z-index:20}

+ 0 - 1
dist/static/css/chunk-45c832ba.66148cbf.css

@@ -1 +0,0 @@
-.visitBtnWrap[data-v-bba67e46]{position:absolute;right:90px;top:82px;z-index:20}

File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-6189ac20.7ec12e45.css


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/app.1e8c18b0.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-03221830.2900bf75.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-07594f33.d20cdb37.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-07594f33.d930efb4.js


+ 0 - 0
dist/static/js/chunk-08a5bd4e.429af77f.js → dist/static/js/chunk-08a5bd4e.d821d9a0.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-126f9f72.e3e26b31.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-126f9f72.f5bda110.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-12a33f1e.8ab95a97.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-12a33f1e.f3ea0411.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-16ec54a1.0aefddaa.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-16ec54a1.4ec053e5.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-246dd31b.ea3ed6d8.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-246dd31b.f39ecb14.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-257eca28.02a7b284.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-257eca28.a07e67bf.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2928a062.6031c189.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2928a062.92426984.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2a90eb6d.0796c6dd.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2a90eb6d.4a261170.js


+ 0 - 0
dist/static/js/chunk-2d0ac1af.f1c5e64e.js → dist/static/js/chunk-2d0ac1af.42d41b6c.js


+ 0 - 0
dist/static/js/chunk-2d0b9f85.076c91dd.js → dist/static/js/chunk-2d0b9f85.b6d5dfb0.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2ddc0e3f.211382dc.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-2ddc0e3f.92411897.js


+ 0 - 0
dist/static/js/chunk-362f6420.dabf939c.js → dist/static/js/chunk-362f6420.52c4aacd.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-3d44bd43.72a020d2.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-3e99cc06.3453a8ea.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-3e99cc06.6a0b3348.js


+ 0 - 0
dist/static/js/chunk-42ab66a4.c14ed378.js → dist/static/js/chunk-42ab66a4.bbbf44d2.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-45c832ba.f69e03c9.js


+ 0 - 0
dist/static/js/chunk-4710b886.54e5741f.js → dist/static/js/chunk-4710b886.52721707.js


+ 0 - 0
dist/static/js/chunk-488078a8.b99efae6.js → dist/static/js/chunk-488078a8.ed99da93.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-495439dc.615fcda6.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-4d2bb3b0.2b6611fb.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-4dcddbd3.d9c26945.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-5db4513e.bb9ea791.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-5e1ddbca.3d73ad63.js


+ 0 - 0
dist/static/js/chunk-5e305839.c4b2fa50.js → dist/static/js/chunk-5e305839.44a042b5.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-5f5ffb00.4f432012.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-5f5ffb00.e4e4b663.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-6189ac20.aa13b36c.js


+ 0 - 0
dist/static/js/chunk-6a97b9c3.a4ebac12.js → dist/static/js/chunk-6a97b9c3.1e259b4a.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-739fed81.c2c36449.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-7b34927f.38636f7f.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-8eea3e92.32d1f2b8.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-9574c424.2ab34194.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-9574c424.323bf49d.js


+ 0 - 0
dist/static/js/chunk-9c496280.a56f07c1.js → dist/static/js/chunk-9c496280.bd46012e.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-a23e2ba4.3ebe8ddd.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-a23e2ba4.a4c50d1b.js


+ 0 - 0
dist/static/js/chunk-a4e62e66.3fff8c70.js → dist/static/js/chunk-a4e62e66.fc16b0fd.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-c2ac2236.282698db.js


+ 0 - 0
dist/static/js/chunk-c7502088.b4b9d42b.js → dist/static/js/chunk-c7502088.8370a27a.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-c7f5974e.c122c136.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-cc568e20.8b1ec88a.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-cc568e20.d538b3db.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-d393573c.f621b24f.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-d59046ce.75507a59.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-da63f3ae.964e7465.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-da63f3ae.98c38f41.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-e60d0406.03d1837f.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-eb65ded6.2b168562.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-fb41c584.940fb117.js


+ 19 - 18
src/layout/components/AppMain.vue

@@ -1,35 +1,36 @@
 <template>
   <section class="app-main">
     <!--   -->
-    <transition name="fade-transform"
-                mode="out-in">
-      <keep-alive v-if="needKeep">
-        <router-view :key="key" />
-      </keep-alive>
-      <router-view v-else :key="key" />
+    <transition name="fade-transform" mode="out-in">
+      <div>
+        <keep-alive>
+          <router-view :key="key" v-if="needKeep" />
+        </keep-alive>
+        <router-view v-if="!needKeep" :key="key" />
+      </div>
     </transition>
   </section>
 </template>
 
 <script>
-import notKeepAliveList from '@/router/notKeepAliveList'
+import notKeepAliveList from "@/router/notKeepAliveList";
 export default {
-  name: 'AppMain',
+  name: "AppMain",
   computed: {
-    key () {
-      return this.$route.path
+    key() {
+      return this.$route.path;
     },
     needKeep() {
-      return !notKeepAliveList.includes(this.$route.path)
+      return !notKeepAliveList.includes(this.$route.path);
     },
-    cachedViews () {
-      return this.$store.state.tagsView.cachedViews
+    cachedViews() {
+      return this.$store.state.tagsView.cachedViews;
     },
-    keep () {
-      return this.$route.meta.noCache
-    }
-  }
-}
+    keep() {
+      return this.$route.meta.noCache;
+    },
+  },
+};
 </script>
 
 <style scoped>

+ 45 - 32
src/layout/components/TagsView.vue

@@ -10,7 +10,12 @@
         :key="index"
         @contextmenu.prevent.native="openMenu(tag, $event)"
       >
-        <span :title="generateTitle(tag.title)" class="item" @click="changeTag(tag)">{{ generateTitle(tag.title) }}</span>
+        <span
+          :title="generateTitle(tag.title)"
+          class="item"
+          @click="changeTag(tag)"
+          >{{ generateTitle(tag.title) }}</span
+        >
         <!-- v-if="index == Array.from(visitedViews).length -1" -->
         <span
           class="el-icon-close icon"
@@ -35,7 +40,7 @@
 import ScrollPane from "@/components/ScrollPane";
 import { generateTitle } from "@/utils/i18n";
 import { Searchs } from "@/helpers";
-let activeKey = ''
+let activeKey = "";
 export default {
   name: "TagsView",
   components: { ScrollPane },
@@ -61,22 +66,22 @@ export default {
       this.addViewTags();
       this.moveToCurrentTag();
       if (!activeKey && !this.$store.state.tagsView.isBack) {
-        const s = new Searchs()
-        const keys = [this.$route.path]
+        const s = new Searchs();
+        const keys = [this.$route.path];
         for (const key in s.searchs) {
           if (Object.hasOwnProperty.call(s.searchs, key)) {
             const item = s.searchs[key];
             if (item.bind === this.$route.path) {
-              keys.push(key)
+              keys.push(key);
             }
           }
         }
         for (const item of keys) {
-          s.removeByKey(item)
+          s.removeByKey(item);
         }
       }
-      this.$store.commit('SET_IS_BACK', false)
-      activeKey = ''
+      this.$store.commit("SET_IS_BACK", false);
+      activeKey = "";
     },
     visible(value) {
       if (value) {
@@ -109,16 +114,20 @@ export default {
       const searchs = new Searchs();
       const allSearch = searchs.getSearchs();
       const sks = Object.keys(allSearch);
-      let route = this.$route
+      let route = this.$route;
       for (const item of sks) {
         if (!(keys.includes(item) || keys.includes(allSearch[item].bind))) {
           searchs.removeByKey(item);
         }
 
-        let tempSaveKeyList = item.split('|')
+        let tempSaveKeyList = item.split("|");
         // 大于1说明的特殊标识编号
-        if(tempSaveKeyList.length > 1) {
-          if(allSearch[item] && route.path == allSearch[item].bind && route.query[tempSaveKeyList[1]] != tempSaveKeyList[2]) {
+        if (tempSaveKeyList.length > 1) {
+          if (
+            allSearch[item] &&
+            route.path == allSearch[item].bind &&
+            route.query[tempSaveKeyList[1]] != tempSaveKeyList[2]
+          ) {
             searchs.removeByKey(item);
           }
         }
@@ -139,26 +148,31 @@ export default {
         for (const tag of tags) {
           if (tag.path === this.$route.path) {
             this.$refs.scrollPane.moveToTarget(tag.$el);
+            // const searchs = new Searchs();
+            // const allSearch = searchs.getSearchs();
+            // console.log(allSearch)
             break;
           }
         }
       });
     },
     closeSelectedTag(view) {
-        activeKey = '1'
+      activeKey = "1";
 
       const searchs = new Searchs();
       searchs.remove(this.$route.path);
-      this.$store.dispatch("delVisitedViews", {...view, dontNeedSave: true}).then((views) => {
-        if (this.isActive(view)) {
-          const latestView = views.slice(-1)[0];
-          if (latestView) {
-            this.$router.push(latestView.fullPath);
-          } else {
-            this.$router.push("/");
+      this.$store
+        .dispatch("delVisitedViews", { ...view, dontNeedSave: true })
+        .then((views) => {
+          if (this.isActive(view)) {
+            const latestView = views.slice(-1)[0];
+            if (latestView) {
+              this.$router.push(latestView.fullPath);
+            } else {
+              this.$router.push("/");
+            }
           }
-        }
-      });
+        });
     },
     closeOthersTags() {
       this.$router.push(this.selectedTag.path);
@@ -180,25 +194,24 @@ export default {
       this.visible = false;
     },
     changeTag(tag) {
-      console.log(tag)
-      activeKey = this.getSearchsByRealPath(tag)
-
+      console.log(tag);
+      activeKey = this.getSearchsByRealPath(tag);
     },
     getSearchsByRealPath(tag) {
-      const searchs = new Searchs()
-      let keyName = ''
+      const searchs = new Searchs();
+      let keyName = "";
 
-      console.log( searchs.searchs)
+      console.log(searchs.searchs);
       for (const key in searchs.searchs) {
         if (Object.hasOwnProperty.call(searchs.searchs, key)) {
           const item = searchs.searchs[key];
           if (tag.path === key || item.bind === tag.path) {
-            keyName = item.bind || tag.path
+            keyName = item.bind || tag.path;
           }
         }
       }
       // this.activeKey = keyName
-      return keyName
+      return keyName;
     },
     async refresh(view) {
       await this.reloads();
@@ -246,7 +259,7 @@ export default {
         z-index: 2;
 
         &::before {
-           border-right: 0;
+          border-right: 0;
         }
       }
       &::before {
@@ -285,7 +298,7 @@ export default {
 //reset element css of el-icon-close
 .tags-view-wrapper {
   .tags-view-item {
-    .item{
+    .item {
       flex: 1;
       text-overflow: ellipsis;
       overflow: hidden;

+ 5 - 1
src/router/index.js

@@ -158,7 +158,11 @@ export const asyncRoutes = {
   payAppeal: () => import('@/views/workBenchManager/payAppeal'),
   // 乐团管理
   teamDetail: () => import('@/views/teamDetail/teamList'),
-  teamBuild: () => import('@/views/teamBuild/index'),
+  teamBuild: () => import('@/views/teamBuild/index'), // 新建
+  teamDraft:() => import('@/views/teamBuild/teamDraft'), // 编辑
+  teamAudit:() => import('@/views/teamBuild/teamDraft'), // 审核
+  feeAudit:() => import('@/views/teamBuild/teamDraft'), // 费用审核
+  auditFailed:() => import('@/views/teamBuild/index'), // 审核失败
   forecastName: () => import('@/views/teamBuild/forecastName'), // 预报名页面
   createPayment: () => import('@/views/teamBuild/createPayment'), // 创建缴费页面
   // VIP管理

+ 3 - 2
src/router/notKeepAliveList.js

@@ -71,7 +71,6 @@ export default [
   '/orderList/payRecord', // 支出记录
   '/orderList/businessStatement', // 经营报表
   '/business/buildVip', // 新建vip
-  '/orderList/businessStatement', // 经营报表
   '/orderList/resetList', // 更换列表
   '/orderList/incomeOut', // 对外订单管理
   '/business/signupList', // 报名缴费
@@ -89,5 +88,7 @@ export default [
   '/business/teacherDetail',
   '/arrearage-students',
   '/business/strudentPayInfo',
-  '/timedTask/timedTask'
+  '/timedTask/timedTask',
+  '/business/teamAudit',
+  '/business/feeAudit',
 ]

+ 3 - 1
src/store/getters.js

@@ -13,6 +13,8 @@ const getters = {
   payList: state => state.buildTeam.payList,
   phone: state => state.user.phone,
   newStudentinfo: state => state.buildTeam.newStudentList,
-  reactClassStudentList:state=>state.reactClassStudent.classList 
+  reactClassStudentList:state=>state.reactClassStudent.classList ,
+  buildIndex:state=>state.buildTeam.buildIndex,
+  draftIndex:state=>state.buildTeam.draftIndex
 }
 export default getters

+ 17 - 2
src/store/modules/buildTeam.js

@@ -2,7 +2,9 @@ const state = {
   topinfo: {},
   checkinfo: {},
   payList: {},
-  newStudentList: {}
+  newStudentList: {},
+  buildIndex:'',
+  draftIndex:''
 }
 
 const mutations = {
@@ -18,7 +20,15 @@ const mutations = {
   },
   SET_NEW_STUDENT (state, newStudentList) {
     state.newStudentList = newStudentList
+  },
+  SET_BUILD_INDEX(state,buildIndex){
+    state.buildIndex = buildIndex
+  },
+  SET_DRAFT_INDEX(state,draftIndex){
+    state.draftIndex = draftIndex
   }
+
+
 }
 const actions = {
   topinfo ({ commit }, topinfo) {
@@ -31,8 +41,13 @@ const actions = {
     commit('SET_PAY', payList)
   },
   newStudentinfo ({ commit }, newStudentList) {
-
     commit('SET_NEW_STUDENT', newStudentList)
+  },
+  buildIndex({commit},buildIndex){
+    commit('SET_BUILD_INDEX', buildIndex)
+  },
+  draftIndex({commit},draftIndex){
+    commit('SET_DRAFT_INDEX', draftIndex)
   }
 }
 export default {

+ 3 - 0
src/store/modules/tagsView.js

@@ -31,10 +31,13 @@ const tagsView = {
     },
     DEL_VISITED_VIEWS: (state, view) => {
       for (const [i, v] of state.visitedViews.entries()) {
+
         if (v.path === view.path) {
+
           if (state.visitedViews.length == 1 && state.visitedViews[0].path == '/main/main') {
             break
           } else {
+
             state.visitedViews.splice(i, 1)
             break
           }

+ 8 - 0
src/utils/searchArray.js

@@ -162,6 +162,14 @@ export const visitChiose = [
   { value: '常规回访', label: '常规回访', children: [{ value: '课后及作业回访', label: '课后及作业回访' }, { value: '练习及乐团表现', label: '练习及乐团表现' }] },
   { value: '其它', label: '其它', children: [{ value: '其它', label: '其它' }] }
 ]
+export const visitChiose1 = [
+  { value: '课程推荐', label: '课程推荐', children: [{ value: '新课推荐', label: '新课推荐' }, { value: '续费提醒', label: '续费提醒' }] },
+  { value: '常规回访', label: '常规回访', children: [{ value: '课后及作业回访', label: '课后及作业回访' }, { value: '练习及乐团表现', label: '练习及乐团表现' },{
+    label:'考勤申诉',
+    value:'考勤申诉'
+   }] },
+  { value: '其它', label: '其它', children: [{ value: '其它', label: '其它' }] }
+]
 
 // 交易状态
 export const paymentChannelStatus = [

+ 0 - 1
src/views/setSilder/addSilder.vue

@@ -305,7 +305,6 @@ export default {
           name: '根结点',
           children: []
         })
-        console.log(this.cascaderList)
       })
     },
     setTableData (result) {

+ 37 - 10
src/views/teamBuild/components/soundSetComponents/soundSetCore.vue

@@ -126,13 +126,36 @@ export default {
       teamStatus: "", // 乐团状态
       checkList: [],
       basdisabled: false,
+      teamid:''
     };
   },
   mounted() {
+      if(this.$route.query.id){
+       this.teamid = this.$route.query.id;
+    }
     this.init();
   },
   activated() {
-    this.init();
+    if(this.teamid&&this.teamid != this.$route.query.id){
+      this.init()
+    }else{
+      if(this.activeSoundList.length <1 ){
+         this.init()
+      }
+    }
+      this.teamStatus = this.$route.query.type;
+     if (
+        this.teamStatus == "look" ||
+        this.teamStatus == "teamAudit" ||
+        this.teamStatus == "feeAudit"
+      ) {
+        this.basdisabled = true;
+      } else {
+        this.basdisabled = false;
+      }
+  },
+  deactivated(){
+    this.activeSoundList = []
   },
   methods: {
     init() {
@@ -141,12 +164,6 @@ export default {
       let type = this.topfor.type;
       let section = this.topfor.section;
       this.teamStatus = this.$route.query.type;
-      if (this.$route.query.search) {
-        this.Fsearch = this.$route.query.search;
-      }
-      if (this.$route.query.rules) {
-        this.Frules = this.$route.query.rules;
-      }
       if (
         this.teamStatus == "look" ||
         this.teamStatus == "teamAudit" ||
@@ -232,7 +249,6 @@ export default {
                       }
                     });
                   }
-                  // console.log(this.activeSoundList);
                 }
               );
             }
@@ -378,7 +394,6 @@ export default {
         // 格式化商品数据 chioseMusic: [{ musical: '', type: ["GROUP"], groupPrice: 0, borrowPrice: 1500 }],
 
         active.chioseMusic.forEach((music) => {
-          // console.log(music);
           let goodsItem = null;
           let depositFee = music.borrowPrice;
           let price = music.groupPrice;
@@ -536,7 +551,13 @@ export default {
         this.$message.error("请至少勾选一个");
         return;
       }
-      for (let i = 0; i < this.activeSoundList.length; i++) {
+         this.$confirm("确定删除选中声部?", "提示", {
+      confirmButtonText: "确定",
+      cancelButtonText: "取消",
+      type: "warning"
+    })
+      .then(() => {
+        for (let i = 0; i < this.activeSoundList.length; i++) {
         let index = this.checkList.indexOf(this.activeSoundList[i].id);
         if (index != -1) {
           this.activeSoundList.splice(i, 1);
@@ -545,6 +566,12 @@ export default {
         }
       }
       this.checkList = [];
+      this.$message.success('删除成功')
+      })
+      .catch(() => { });
+
+
+
     },
     allin() {
       this.checkList = [];

+ 114 - 66
src/views/teamBuild/components/teamBaseInfo.vue

@@ -70,28 +70,37 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="教学地点"
-                      prop="address"
-                      :rules="[{ required: true, message: '教学地点不能为空' }]">
+        <el-form-item
+          label="教学地点"
+          prop="address"
+          :rules="[{ required: true, message: '教学地点不能为空' }]"
+        >
           <template #label>
-            <p style="position: relative; display: inline-block;"> 教学地点
+            <p style="position: relative; display: inline-block">
+              教学地点
               <el-tooltip placement="top" popper-class="mTooltip">
-                  <div slot="content">
-                    如果已生成课表,则会修改未上课时的教学点
-                  </div>
-                  <i class="el-icon-question"
-                     style="font-size: 18px; color: #F56C6C"></i>
-                </el-tooltip>
+                <div slot="content">
+                  如果已生成课表,则会修改未上课时的教学点
+                </div>
+                <i
+                  class="el-icon-question"
+                  style="font-size: 18px; color: #f56c6c"
+                ></i>
+              </el-tooltip>
             </p>
           </template>
-          <el-select v-model.trim="topFrom.address"
-                     filterable
-                     clearable
-                     :disabled="!topFrom.section || basdisabled">
-            <el-option v-for="(item, index) in addList"
-                       :key="index"
-                       :label="item.name"
-                       :value="item.id"></el-option>
+          <el-select
+            v-model.trim="topFrom.address"
+            filterable
+            clearable
+            :disabled="!topFrom.section || basdisabled"
+          >
+            <el-option
+              v-for="(item, index) in addList"
+              :key="index"
+              :label="item.name"
+              :value="item.id"
+            ></el-option>
           </el-select>
         </el-form-item>
         <el-form-item
@@ -321,6 +330,7 @@
   </div>
 </template>
 <script>
+import merge from "webpack-merge";
 import {
   getSection,
   getType,
@@ -472,11 +482,49 @@ export default {
   },
   created() {},
   mounted() {
+    if (this.$route.query.id) {
+      this.teamid = this.$route.query.id;
+    }
+    if (this.$route.query.type == "newTeam") {
+      this.onReset();
+    }
+ console.log(this.$route.query)
     this.init();
-    this.$forceUpdate();
-    // 获取分部下的员工
+    // this.$forceUpdate();
   },
-  beforeDestroy() {},
+  activated() {
+     console.log(this.$route.query.type)
+    // console.log('直接进编辑')
+    if (this.teamid && this.teamid != this.$route.query.id) {
+      this.init();
+    }
+    if (this.$route.query.clear == 'true') {
+
+      this.onReset();
+        this.$router.push({
+      query: merge(this.$route.query, { clear: false }),
+    });
+    }
+    if (this.teamStatus == "newTeam") {
+      this.$store.dispatch("buildIndex", 0);
+    }
+
+    if (this.teamStatus != "newTeam") {
+      this.$store.dispatch("draftIndex", 0);
+    }
+      this.teamStatus = this.$route.query.type;
+
+      if (
+        this.teamStatus == "look" ||
+        this.teamStatus == "teamAudit" ||
+        this.teamStatus == "feeAudit"
+      ) {
+        this.basdisabled = true;
+      } else {
+        this.basdisabled = false;
+      }
+  },
+
   methods: {
     //|| this.teamStatus === 'teamAudit'
     isNotEditing: function () {
@@ -486,9 +534,7 @@ export default {
         this.teamStatus === "teamList"
       );
     },
-    changeFeeType(val) {
-      // console.log(val == "ONLINE");
-    },
+    changeFeeType(val) {},
     changePaymentValidStartDate(val) {
       if (val) {
         this.$set(this.topFrom, "paymentValidEndDate", "");
@@ -513,30 +559,38 @@ export default {
         },
       };
     },
-  init() {
+    init() {
       this.isInit = true;
+
       // 分为3种  this.teamStatus
       //          1.resetTeam 乐团修改
       //          2. newTeam  新建乐团
       //          3.teamList  跨团修改
       //          4.teamDraft 乐团草稿
       this.teamStatus = this.$route.query.type;
+      if (this.teamStatus == "newTeam") {
+        this.$store.dispatch("buildIndex", 0);
+      }
+
+      if (this.teamStatus != "newTeam") {
+        this.$store.dispatch("draftIndex", 0);
+      }
       // 传过来的乐团信息
       this.activeTeam = this.getTeamList;
       if (
+
         this.teamStatus == "look" ||
         this.teamStatus == "teamAudit" ||
         this.teamStatus == "feeAudit" ||
          this.teamStatus == "teamCanceled"
 
       ) {
+
         this.basdisabled = true;
       } else {
         this.basdisabled = false;
       }
-      if (
-        this.$route.query.id
-      ) {
+      if (this.$route.query.id) {
         // 单团修改
         this.teamid = this.$route.query.id;
         getTeamBaseInfo({ musicGroupId: this.teamid }).then((res) => {
@@ -617,34 +671,8 @@ export default {
           }
         });
       } else {
-         console.log(this.$store.getters.topinfo)
-        // this.topFrom = {
-        //   type: "", // 收费类型
-        //   section: "", //所属分部
-        //   school: "", // 合作单位
-        //   teacher: "", // 乐团主管
-        //   name: "", //乐团名称
-        //   boss: "", // 运营主管
-        //   time: "", // 报名截止时间
-        //   startClass: [], // 招生年级起始
-        //   paymentValid: [], // 缴费有效期时间起始
-        //   address: "", // 教学地点
-        //   salary: "", // 收费模式
-        //   head: "",
-        //   paymentPattern: "", // 缴费方式
-        //   isClass: false, //是否为课堂课
-        //   startTime: "",
-        //   ownershipType: "OWN", // 合作机构类型
-        //   feeType: null,
-        // };
-        // this.$refs["topinfo"].resetFields();
       }
-      // 1.获取各个选项卡的数据内容
-      // getSection({ 'delFlag': 0, 'rows': 1000 }).then(res => {
-      //   if (res.code == 200) {
-      //     this.sectionList = res.data.rows;
-      //   }
-      // }).catch()
+
       getEmployeeOrgan().then((res) => {
         if (res.code == 200) {
           this.sectionList = res.data;
@@ -657,7 +685,6 @@ export default {
         }
       });
       // 缓存设置时的状态
-      sessionStorage.setItem("resetCode", "1");
     },
     changeSection(val) {
       // 修改分部的时候 重置运营主管 重置乐团主管 重置乐队指导 合作单位  教学点
@@ -692,7 +719,7 @@ export default {
       });
     },
     chioseSchool(val) {},
-     gotoNext(num) {
+    gotoNext(num) {
       this.$refs["topinfo"].validate((valid, object) => {
         if (!valid) {
           this.$message.error("请填写建团必要参数");
@@ -712,7 +739,6 @@ export default {
       });
     },
     resetSubmit() {
-
       this.$refs["topinfo"].validate((valid, object) => {
         if (!valid) {
           this.$message.error("请填写必要参数");
@@ -798,6 +824,29 @@ export default {
       // this.topFrom.paymentValidStartDate = ''
       // this.topFrom.paymentValidEndDate = ''
     },
+    onReset() {
+      this.topFrom = {
+        type: "", // 收费类型
+        section: "", //所属分部
+        school: "", // 合作单位
+        courseViewType: "",
+        teacher: "", // 乐团主管
+        name: "", //乐团名称
+        boss: "", // 运营主管
+        time: "", // 报名截止时间
+        startClass: [], // 招生年级起始
+        paymentValid: [], // 缴费有效期时间起始
+        address: "", // 教学地点
+        salary: "", // 收费模式
+        head: "",
+        paymentPattern: "", // 缴费方式
+        isClass: false, //是否为课堂课
+        startTime: "",
+        ownershipType: "OWN", // 合作机构类型
+        feeType: null,
+      };
+      this.$refs["topinfo"].resetFields();
+    },
   },
   computed: {
     startClassString() {
@@ -813,15 +862,14 @@ export default {
         .join(",");
     },
     showNext() {
-      const teamStatus = this.teamStatus
-      // console.log(teamStatus)
+      const teamStatus = this.teamStatus;
       return (
-        teamStatus == 'newTeam' ||
-        teamStatus == 'teamDraft' ||
-        teamStatus == 'teamAudit' ||
-        teamStatus == 'feeAudit'
-      )
-    }
+        teamStatus == "newTeam" ||
+        teamStatus == "teamDraft" ||
+        teamStatus == "teamAudit" ||
+        teamStatus == "feeAudit"
+      );
+    },
   },
 };
 </script>

+ 8 - 13
src/views/teamBuild/components/teamSoundSet.vue

@@ -36,22 +36,11 @@
   </div>
 </template>
 <script>
-import store from "@/store";
-import { formatData } from "@/utils/utils";
 import {
-  getSubject,
-  getDefaultSubject,
-  getGoods,
-  createTeam,
-  getSoundTree,
-  findMusicGroupSubjectInfo,
-  updateSubjectInfo,
   auditSuccess,
   auditFailed,
-  getSubjectGoods,
 } from "@/api/buildTeam";
 import dayjs from "dayjs";
-
 import soundSetCore from "./soundSetComponents/soundSetCore";
 
 export default {
@@ -69,17 +58,23 @@ export default {
     };
   },
   mounted () {
-    // console.log(this)
     this.teamid = this.$route.query.id;
     this.teamStatus = this.$route.query.type;
+      if (this.teamStatus == "newTeam") {
+        this.$store.dispatch('buildIndex',1)
+      }
+      if(this.teamStatus != "newTeam"){
+         this.$store.dispatch('draftIndex',1)
+      }
+
   },
   activated () {
+
     this.teamid = this.$route.query.id;
     this.teamStatus = this.$route.query.type;
   },
   methods: {
     handleClick(evt) {
-      // console.log(evt)
     },
     goback () {
 

+ 9 - 4
src/views/teamBuild/index.vue

@@ -39,7 +39,7 @@
                         :getTeamList="getTeamList"
                         @getBaseInfo="getBaseInfo" />
         </div>
-        <div v-if="activeIndex == 1">
+        <div v-show="activeIndex == 1" v-if="showSecond">
           <teamSoundMoney @chiosetab="chiosetab"
                           :getTeamList="getTeamList"
                           @getBaseInfo="getBaseInfo" />
@@ -65,16 +65,20 @@ export default {
       pageName: "建团申请",
       getTeamList: [],
       teamStatus: "",
+      showSecond:false
     };
   },
   created () {
     // 判断 是新建乐团还是修改乐团
-    this.activeIndex = 0;
+    // this.activeIndex = 0;
     this.init();
   },
   activated () {
     // this.init();
   },
+  deactivated(){
+ this.showSecond=false
+  },
   methods: {
     init () {
       this.teamStatus = this.$route.query.type;
@@ -85,10 +89,10 @@ export default {
       if (this.teamStatus == "newTeam") {
         // 新建团
         this.pageName = "建团申请";
-        this.activeIndex = 0;
+         this.activeIndex = this.$store.getters.buildIndex || 0
       } else {
         this.pageName = "乐团修改";
-        this.activeIndex = 0;
+        this.activeIndex = this.$store.getters.draftIndex || 0
       }
     },
     chiosetab (val) {
@@ -96,6 +100,7 @@ export default {
       if (val == 0 && this.teamStatus != "newTeam" || val == 0 && this.teamStatus != "feeAudit") {
         this.$refs.teamBaseInfo.init()
       }
+      this.showSecond = true;
     },
     goBack () {
       this.$store.dispatch('delVisitedViews', this.$route)

+ 195 - 0
src/views/teamBuild/teamDraft.vue

@@ -0,0 +1,195 @@
+<template>
+  <div class="m-container">
+    <div class="line"></div>
+    <h2>
+      <el-page-header @back="goBack"
+                      :content="pageName"> </el-page-header>
+    </h2>
+    <div class="m-core">
+      <div class="stepbox">
+        <!--  @click="activeIndex = 0" -->
+        <span class="stepspan stepspan1">
+          <div class="step1 sptep"
+               :class="activeIndex >= 0 ? 'activestep' : ''">
+            基本信息
+          </div>
+          <img :src="activeIndex  >=  0 ? stepImgs.nol : stepImgs.active"
+               alt=""
+               class="arrow" />
+        </span>
+        <!-- @click="activeIndex = 1" -->
+        <span class="stepspan stepspan2"
+              v-if="showFlag?activeIndex>= 1:true">
+          <!--    -->
+          <div class="step2 sptep"
+               :class="activeIndex  >= 1 ? 'activestep' : ''">
+            声部设置
+          </div>
+          <img :src="activeIndex >=  1 ? stepImgs.nol : stepImgs.active"
+               alt=""
+               class="arrow" />
+        </span>
+        <!--  @click="activeIndex = 2" -->
+        <!-- <span class="stepspan stepspan3"
+              v-if="showFlag?activeIndex  >=  2:true">
+          <div class="step2 sptep"
+               :class="activeIndex  >=  2 ? 'activestep' : ''">
+            创建缴费
+          </div>
+          <img :src="activeIndex >= 2 ? stepImgs.nol : stepImgs.active"
+               alt=""
+               class="arrow" />
+        </span> -->
+      </div>
+
+      <!-- 下面显示的内容 -->
+      <div class="stepcontent">
+        <div v-show="activeIndex == 0">
+          <teamBaseInfo @chiosetab="chiosetab"
+                        ref='teamBaseInfo'
+                        :getTeamList="getTeamList"
+                        @getBaseInfo="getBaseInfo" />
+        </div>
+        <div v-show="activeIndex == 1" >
+          <teamSoundMoney @chiosetab="chiosetab"
+                          :getTeamList="getTeamList"
+                          @getBaseInfo="getBaseInfo" />
+        </div>
+        <!-- <div v-if="activeIndex == 2">
+          <teamPayInfo @chiosetab="chiosetab"
+                       :getTeamList="getTeamList"
+                       :baseInfo="baseInfo" />
+        </div> -->
+      </div>
+    </div>
+  </div>
+</template>
+<script>
+import teamBaseInfo from "@/views/teamBuild/components/teamBaseInfo";
+import teamSoundMoney from "@/views/teamBuild/components/teamSoundSet";
+import teamPayInfo from "@/views/teamBuild/components/teamPayInfo";
+export default {
+  components: { teamBaseInfo, teamSoundMoney, teamPayInfo },
+  name: "teamBuild",
+  data () {
+    return {
+      activeIndex: 0,
+      stepImgs: {
+        nol: require("@/assets/images/base/step-arrow-active.png"),
+        active: require("@/assets/images/base/step-arrow.png"),
+      },
+      pageName: "建团申请",
+      getTeamList: [],
+      teamStatus: "",
+    };
+  },
+  created () {
+    // 判断 是新建乐团还是修改乐团
+    // this.activeIndex = 0;
+    this.init();
+  },
+  activated () {
+    this.init();
+  },
+  methods: {
+    init () {
+      this.teamStatus = this.$route.query.type;
+      if (this.$route.query.teamList) {
+        this.getTeamList = this.$route.query.teamList;
+      }
+
+      if (this.teamStatus == "newTeam") {
+        // 新建团
+        this.pageName = "建团申请";
+          this.activeIndex = this.$store.getters.buildIndex || 0
+      } else {
+        this.pageName = "乐团修改";
+       this.activeIndex = this.$store.getters.draftIndex || 0
+      }
+    },
+    chiosetab (val) {
+      this.activeIndex = val;
+      if (val == 0 && this.teamStatus != "newTeam" || val == 0 && this.teamStatus != "feeAudit") {
+        this.$refs.teamBaseInfo.init()
+      }
+    },
+    goBack () {
+      this.$store.dispatch('delVisitedViews', this.$route)
+      this.$router.push({
+        path: "/business/teamDetail",
+      });
+    },
+    getBaseInfo (baseInfo) {
+      this.baseInfo = baseInfo
+      this.pageName = baseInfo.musicGroup?.name
+    },
+  },
+  computed: {
+    showFlag () {
+      return (this.teamStatus == 'newTeam' || this.teamStatus == 'teamList')
+    }
+  }
+};
+</script>
+<style lang="scss" scoped>
+.stepbox {
+  display: flex;
+  flex-direction: row;
+  justify-content: flex-start;
+  .stepspan {
+    font-size: 14px;
+    display: block;
+    line-height: 40px;
+    position: relative;
+    z-index: 100;
+    display: flex;
+    flex-direction: row;
+    justify-content: space-between;
+
+    .sptep {
+      width: 110px;
+      height: 40px;
+      border: 1px solid #dcdfe6;
+      border-right: none;
+      border-bottom: none;
+      padding-left: 25px;
+      border-radius: 4px 0 0 0;
+    }
+    .arrow {
+      height: 40px;
+      width: 17px;
+      position: relative;
+      top: 1px;
+      z-index: 40;
+    }
+  }
+  .stepspan.stepspan2 {
+    position: relative;
+    z-index: 20;
+    left: -17px;
+    .sptep {
+      padding-left: 30px !important;
+      border-radius: 0 !important;
+    }
+  }
+  .stepspan.stepspan3 {
+    position: relative;
+    z-index: 10;
+    left: -34px;
+    background-color: #fff;
+    .sptep {
+      padding-left: 30px !important;
+      border-radius: 0 !important;
+    }
+  }
+  .sptep.activestep {
+    color: #fff;
+    font-weight: bold;
+    background-color: #4eada7;
+  }
+}
+.stepcontent {
+  border-top: 1px solid #dcdfe6;
+  padding-top: 30px;
+}
+</style>

+ 2 - 1
src/views/teamDetail/componentCourse/studentRollCall.vue

@@ -96,6 +96,7 @@
         :username="detail.username"
         @close="visitVisible = false"
         @submited="getList"
+        :isMainGo="isMainGo"
       />
     </el-dialog>
   </div>
@@ -106,7 +107,7 @@ import pagination from '@/components/Pagination/index'
 import { permission } from '@/utils/directivePage'
 import visit from '@/views/withdrawal-application/modals/visit'
 export default {
-  props: ['courseScheduleId'],
+  props: ['courseScheduleId','isMainGo'],
   components: { pagination, visit },
   data () {
     return {

+ 0 - 7
src/views/teamDetail/index.vue

@@ -8,9 +8,6 @@
       <div class="term active">第二学期</div> -->
     </h2>
     <div class="m-core">
-      <!-- <div class='newBand abs'
-           @click='resetTeam'>乐团修改</div> -->
-
       <p class='msg'
          :class="status=='PROGRESS'? 'ing' : '' "> <img :src="status=='PROGRESS'?stepImgs.PROGRESS:stepImgs.PAUSE"
              alt="">
@@ -129,10 +126,6 @@ export default {
     //   this.name = name;
     //   localStorage.setItem('teamName', name);
     // },
-    resetTeam () {
-      // id  type
-      this.$router.push({ path: '/business/teamBuild', query: { type: 'resetTeam', id: this.teamid } })
-    }
   },
   components: {
     studentList,

+ 0 - 4
src/views/teamDetail/indexCourse.vue

@@ -74,10 +74,6 @@ export default {
       this.name = name;
       localStorage.setItem('teamName', name);
     },
-    resetTeam () {
-      // id  type
-      this.$router.push({ path: '/business/teamBuild', query: { type: 'resetTeam', id: this.teamid } })
-    }
   },
   components: {
     courseList,

+ 8 - 3
src/views/teamDetail/teamCourseList.vue

@@ -2,7 +2,7 @@
   <div class="m-container">
     <h2>
       <div class="squrt"></div>
-      课表列表 <filter-search @reload="reloadSearch" :keys="['searchType']" :moreKeys="['start', 'end', 'organId']"/>
+      课表列表 <filter-search ref='filterSearch' @reload="reloadSearch" :keys="['searchType']" :moreKeys="['start', 'end', 'organId']"/>
     </h2>
     <div class="m-core">
       <!-- 搜索类型 -->
@@ -528,7 +528,7 @@
         <el-tab-pane label="学员列表" name="first">
           <div v-if="activeName == 'first'">
             <!-- studentRollCall  -->
-            <studentRollCall :courseScheduleId="maskForm.id"></studentRollCall>
+            <studentRollCall :courseScheduleId="maskForm.id" :isMainGo='isMainGo'></studentRollCall>
           </div>
         </el-tab-pane>
         <!-- <el-tab-pane label="GPS定位"
@@ -675,7 +675,8 @@ export default {
       id: null,
       show: false,
       compoundList: [],
-      deleteList:[]
+      deleteList:[],
+      isMainGo:false
     };
   },
   components: {
@@ -692,6 +693,7 @@ export default {
   },
   created(){
       this.searchForm.timer = [nowTime, nowTime]
+
   },
   computed: {
     workTypeOptions() {
@@ -700,6 +702,7 @@ export default {
     mergeCourseTypeOptions() {
       return objectToOptions(mergeCourseType);
     },
+
   },
   mounted() {
     const { query } = this.$route
@@ -900,6 +903,8 @@ export default {
             this.maskForm.id = row.id;
             this.activeName = "first";
             this.classVisible = true;
+            this.isMainGo = this.$refs.filterSearch?.show
+            console.log(this.isMainGo)
           }
         }
       );

+ 0 - 7
src/views/teamDetail/teamInfo.vue

@@ -133,13 +133,6 @@ export default {
       this.name = name;
       localStorage.setItem("teamName", name);
     },
-    resetTeam() {
-      // id  type
-      this.$router.push({
-        path: "/business/teamBuild",
-        query: { type: "resetTeam", id: this.teamid },
-      });
-    },
   },
   components: {
     baseInfo,

+ 14 - 6
src/views/teamDetail/teamList.vue

@@ -563,13 +563,17 @@ export default {
       });
     },
     createNewTeam() {
+      this.$store.dispatch("buildIndex", 0);
+      this.$store.dispatch("delVisitedViews", { path: "/business/teamBuild" });
+
       this.$router.push(
-        { path: "/business/teamBuild", query: { type: "newTeam" } },
+        { path: "/business/teamBuild", query: { type: "newTeam",clear:'true'} },
         (router) => {
           router.meta.title = "新建乐团";
         }
       );
     },
+
     resetTeam() {
       // 这里还有勾选的乐团信息
       if (this.passed && this.passed.length <= 0) {
@@ -577,7 +581,7 @@ export default {
         return;
       }
       this.$router.push({
-        path: "/business/teamBuild",
+        path: "/business/teamDraft",
         query: { type: "teamList", teamList: this.passed },
       });
     },
@@ -705,9 +709,10 @@ export default {
       switch (row.status) {
         case "DRAFT": {
           // 编辑中
+          this.$store.dispatch("draftIndex", 0);
           this.$router.push(
             {
-              path: "/business/teamBuild",
+              path: "/business/teamDraft",
               query: { type: "teamDraft", id: row.id },
             },
             (router) => {
@@ -718,9 +723,10 @@ export default {
         }
         case "AUDIT": {
           // 审核中
+          this.$store.dispatch("draftIndex", 0);
           this.$router.push(
             {
-              path: "/business/teamBuild",
+              path: "/business/teamAudit",
               query: { type: "teamAudit", id: row.id },
             },
             (router) => {
@@ -743,9 +749,10 @@ export default {
         }
         case "FEE_AUDIT": {
           // 费用审核中
+          this.$store.dispatch("draftIndex", 0);
           this.$router.push(
             {
-              path: "/business/teamBuild",
+              path: "/business/feeAudit",
               query: { type: "feeAudit", id: row.id },
             },
             (router) => {
@@ -756,9 +763,10 @@ export default {
         }
         case "AUDIT_FAILED": {
           // 审核失败
+          this.$store.dispatch("draftIndex", 0);
           this.$router.push(
             {
-              path: "/business/teamBuild",
+              path: "/business/auditFailed",
               query: { type: "teamDraft", id: row.id },
             },
             (router) => {

+ 11 - 3
src/views/withdrawal-application/modals/visit.vue

@@ -16,6 +16,7 @@
       </el-form-item>
       <el-form-item label="回访类型" prop="visitType">
         <el-cascader
+        :disabled='isMainGo'
           expand-trigger="hover"
           clearable
           style="width: 80% !important"
@@ -87,12 +88,12 @@
 </template>
 <script>
 import cleanDeep from "clean-deep";
-import { visitChiose } from "@/utils/searchArray";
+import { visitChiose,visitChiose1 } from "@/utils/searchArray";
 import { addVisit } from "@/views/returnVisitManager/api";
 import record from './record'
 import studentWork from './studentWork'
 export default {
-  props: ["detail", "username"],
+  props: ["detail", "username",'isMainGo'],
   components:{record,studentWork},
   data() {
     return {
@@ -118,6 +119,14 @@ export default {
       workVisible:false
     };
   },
+  mounted(){
+    if(this.isMainGo){
+     this.visitChiose = visitChiose1
+    this.$set(this.visitForm,'visitType',['常规回访','考勤申诉'])
+    }else{
+      this.visitChiose = visitChiose
+    }
+  },
   computed: {
     userName() {
       return this.username || this.detail.user?.username || this.detail.realName || this.detail.userName || this.detail.studentName
@@ -128,7 +137,6 @@ export default {
   },
   methods: {
     submitAddVisit() {
-
       this.$refs.visitForm.validate((res) => {
         if (res) {
           const { visitType, ...rest } = this.visitForm;

+ 1 - 2
vue.config.js

@@ -21,8 +21,7 @@ const name = defaultSettings.title || '管乐迷后台管理系统' // page titl
 // let target = 'http://192.168.3.139:8000' // 箭河
 // let target = 'http://192.168.3.38:8000' //邹璇
 // let target = 'http://192.168.3.57:8000' //勇哥
-// let target = 'http://dev.dayaedu.com' // 测试服
-let target = 'http://47.114.176.40:8000'
+let target = 'http://47.114.176.40:8000' // 测试服
 // let target = 'http://192.168.3.134' // 乔
 // All configuration item explanations can be find in https://cli.vuejs.org/config/
 module.exports = {

Some files were not shown because too many files changed in this diff