浏览代码

打包编译

lex-xin 5 年之前
父节点
当前提交
773dcab3b3
共有 60 个文件被更改,包括 347 次插入38 次删除
  1. 0 0
      dist/css/IStarted.7dd7d4df.css
  2. 0 0
      dist/css/Leave.5ee8bf90.css
  3. 0 1
      dist/css/PeriodAdjust.08887711.css
  4. 1 0
      dist/css/PeriodAdjust.0aaec190.css
  5. 0 0
      dist/css/PeriodAdjust~PeriodChange.0042bd55.css
  6. 0 1
      dist/css/PeriodChange.d3a2d7d5.css
  7. 1 0
      dist/css/PeriodChange.f0462853.css
  8. 0 0
      dist/css/VIPApply.16114269.css
  9. 0 0
      dist/css/chunk-vendors.a7000af4.css
  10. 1 0
      dist/css/order.27a80b05.css
  11. 0 0
      dist/index.html
  12. 0 0
      dist/js/Approval.478943e2.js
  13. 0 0
      dist/js/Approval.478943e2.js.map
  14. 0 0
      dist/js/Approval.be91210f.js.map
  15. 0 0
      dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply.deea7d13.js
  16. 0 0
      dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply.deea7d13.js.map
  17. 0 0
      dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply~ord~3d35106e.ec45b0d3.js
  18. 0 0
      dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply~ord~3d35106e.ec45b0d3.js.map
  19. 0 0
      dist/js/Attendance.4d547910.js
  20. 0 0
      dist/js/Attendance.4d547910.js.map
  21. 0 0
      dist/js/IStarted.ba5a14e3.js
  22. 0 0
      dist/js/IStarted.ba5a14e3.js.map
  23. 0 0
      dist/js/Leave.09db345c.js
  24. 0 0
      dist/js/Leave.09db345c.js.map
  25. 0 0
      dist/js/Leave.5da663e5.js
  26. 0 0
      dist/js/Leave.5da663e5.js.map
  27. 0 0
      dist/js/PeriodAdjust.178a9933.js
  28. 0 0
      dist/js/PeriodAdjust.178a9933.js.map
  29. 0 0
      dist/js/PeriodAdjust.92e85a9b.js
  30. 0 0
      dist/js/PeriodAdjust.92e85a9b.js.map
  31. 0 0
      dist/js/PeriodChange.c36580e3.js
  32. 0 0
      dist/js/PeriodChange.ed7473cc.js
  33. 0 0
      dist/js/PeriodChange.ed7473cc.js.map
  34. 0 0
      dist/js/TeachingSchool.ca019e9b.js
  35. 0 0
      dist/js/TeachingSchool.ca019e9b.js.map
  36. 0 0
      dist/js/TeachingSet.69041a22.js
  37. 0 0
      dist/js/TeachingSet.69041a22.js.map
  38. 0 0
      dist/js/VIPApply.a03c4f3b.js
  39. 0 0
      dist/js/VIPApply.a03c4f3b.js.map
  40. 0 0
      dist/js/VIPApply.b931d231.js
  41. 0 0
      dist/js/VIPApply.b931d231.js.map
  42. 0 0
      dist/js/app.ae762885.js
  43. 0 0
      dist/js/app.ae762885.js.map
  44. 0 0
      dist/js/app.d2ee59dc.js
  45. 0 0
      dist/js/app.d2ee59dc.js.map
  46. 0 0
      dist/js/chunk-vendors.898fa58b.js.map
  47. 0 0
      dist/js/chunk-vendors.f9318449.js
  48. 0 0
      dist/js/chunk-vendors.f9318449.js.map
  49. 0 0
      dist/js/order.0e11d7df.js
  50. 0 0
      dist/js/order.0e11d7df.js.map
  51. 21 1
      src/api/teacher.js
  52. 2 2
      src/common/axios.js
  53. 1 1
      src/common/vueFilters.js
  54. 2 2
      src/main.js
  55. 9 1
      src/router/teacherRouter.js
  56. 8 3
      src/views/teacher/Leave.vue
  57. 28 17
      src/views/teacher/PeriodAdjust.vue
  58. 1 1
      src/views/teacher/PeriodChange.vue
  59. 53 8
      src/views/teacher/VIPApply.vue
  60. 219 0
      src/views/teacher/order.vue

+ 0 - 0
dist/css/IStarted.0d6b31aa.css → dist/css/IStarted.7dd7d4df.css


文件差异内容过多而无法显示
+ 0 - 0
dist/css/Leave.5ee8bf90.css


+ 0 - 1
dist/css/PeriodAdjust.08887711.css

@@ -1 +0,0 @@
-.periodadjust[data-v-56b642e9]{min-height:100vh;position:relative}.periodadjust .container[data-v-56b642e9]{height:calc(100vh - 50px);overflow-y:auto;overflow-x:hidden}.periodadjust .button-group[data-v-56b642e9]{width:100%;position:absolute;bottom:0;left:0}.periodadjust .button-group .van-button[data-v-56b642e9]{font-size:.16rem;width:50%}.periodadjust .button-group .van-button--primary[data-v-56b642e9]{background:#14928a}[data-v-56b642e9] .van-cell__title{font-size:.16rem;color:#444}[data-v-56b642e9] .van-cell-group{margin-top:.05rem}.title-content[data-v-56b642e9]{-webkit-box-flex:1;-ms-flex:1 auto;flex:1 auto;font-weight:700}.title-content .van-cell__label[data-v-56b642e9]{font-weight:400;margin-top:.06rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.title-content .van-icon-location[data-v-56b642e9]{margin-right:.05rem}[data-v-56b642e9] .van-cell__label,[data-v-56b642e9] .van-cell__value{color:#777;font-size:.14rem}[data-v-56b642e9] .van-cell__label span,[data-v-56b642e9] .van-cell__value span{padding-right:.1rem}.input-cell[data-v-56b642e9]{padding:.12rem .16rem .2rem}.input-cell .van-radio[data-v-56b642e9]{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}[data-v-56b642e9] .van-radio__icon .van-icon{border-color:#aaa}[data-v-56b642e9] .van-radio__icon--checked .van-icon{background:#f97215;border-color:#f97215}[data-v-56b642e9] .icon{margin-top:.2rem}

+ 1 - 0
dist/css/PeriodAdjust.0aaec190.css

@@ -0,0 +1 @@
+.periodadjust[data-v-045787c0]{height:100vh;position:relative;background-color:#f3f4f8}.periodadjust .container[data-v-045787c0]{min-height:calc(100vh - 50px);overflow-y:auto;overflow-x:hidden;position:relative}.periodadjust .button-group[data-v-045787c0]{width:100%}.periodadjust .button-group .van-button[data-v-045787c0]{font-size:.16rem;width:50%}.periodadjust .button-group .van-button--primary[data-v-045787c0]{background:#14928a}[data-v-045787c0] .van-cell__title{font-size:.16rem;color:#444}[data-v-045787c0] .van-cell-group{margin-top:.05rem}.title-content[data-v-045787c0]{-webkit-box-flex:1;-ms-flex:1 auto;flex:1 auto;font-weight:700}.title-content .van-cell__label[data-v-045787c0]{font-weight:400;margin-top:.06rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.title-content .van-icon-location[data-v-045787c0]{margin-right:.05rem}[data-v-045787c0] .van-cell__label,[data-v-045787c0] .van-cell__value{color:#777;font-size:.14rem}[data-v-045787c0] .van-cell__label span,[data-v-045787c0] .van-cell__value span{padding-right:.1rem}.input-cell[data-v-045787c0]{padding:.12rem .16rem .2rem}.input-cell .van-radio[data-v-045787c0]{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}[data-v-045787c0] .van-radio__icon .van-icon{border-color:#aaa}[data-v-045787c0] .van-radio__icon--checked .van-icon{background:#f97215;border-color:#f97215}[data-v-045787c0] .icon{margin-top:.2rem}

+ 0 - 0
dist/css/PeriodAdjust~PeriodChange.c57beb2b.css → dist/css/PeriodAdjust~PeriodChange.0042bd55.css


+ 0 - 1
dist/css/PeriodChange.d3a2d7d5.css

@@ -1 +0,0 @@
-.periodchange[data-v-2f8605c6]{min-height:100vh;position:relative}.periodchange .container[data-v-2f8605c6]{height:calc(100vh - 50px);overflow-y:auto;overflow-x:hidden}.periodchange .button-group[data-v-2f8605c6]{width:100%;position:absolute;bottom:0;left:0}.periodchange .button-group .van-button--primary[data-v-2f8605c6]{background:#14928a}[data-v-2f8605c6] .van-cell__title{font-size:.16rem;color:#444}[data-v-2f8605c6] .van-cell-group{margin-top:.05rem}.title-content[data-v-2f8605c6]{font-weight:700}.title-content .van-cell__label[data-v-2f8605c6]{font-weight:400;margin-top:.06rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.title-content .van-icon-location[data-v-2f8605c6]{margin-right:.05rem}[data-v-2f8605c6] .van-cell__label,[data-v-2f8605c6] .van-cell__value{color:#777}[data-v-2f8605c6] .van-cell__label span,[data-v-2f8605c6] .van-cell__value span{padding-right:.1rem}.input-cell[data-v-2f8605c6]{padding:.12rem .16rem .2rem}.input-cell .van-radio[data-v-2f8605c6]{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}[data-v-2f8605c6] .van-radio__icon .van-icon{border-color:#aaa}[data-v-2f8605c6] .van-radio__icon--checked .van-icon{background:#f97215;border-color:#f97215}[data-v-2f8605c6] .icon{margin-top:.2rem}

+ 1 - 0
dist/css/PeriodChange.f0462853.css

@@ -0,0 +1 @@
+.periodchange[data-v-fbe45de0]{min-height:100vh;position:relative}.periodchange .container[data-v-fbe45de0]{height:calc(100vh - 50px);overflow-y:auto;overflow-x:hidden}.periodchange .button-group[data-v-fbe45de0]{width:100%;position:absolute;bottom:0;left:0}.periodchange .button-group .van-button--primary[data-v-fbe45de0]{background:#14928a}[data-v-fbe45de0] .van-cell__title{font-size:.16rem;color:#444}[data-v-fbe45de0] .van-cell-group{margin-top:.05rem}.title-content[data-v-fbe45de0]{font-weight:700}.title-content .van-cell__label[data-v-fbe45de0]{font-weight:400;margin-top:.06rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.title-content .van-icon-location[data-v-fbe45de0]{margin-right:.05rem}[data-v-fbe45de0] .van-cell__label,[data-v-fbe45de0] .van-cell__value{color:#777}[data-v-fbe45de0] .van-cell__label span,[data-v-fbe45de0] .van-cell__value span{padding-right:.1rem}.input-cell[data-v-fbe45de0]{padding:.12rem .16rem .2rem}.input-cell .van-radio[data-v-fbe45de0]{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}[data-v-fbe45de0] .van-radio__icon .van-icon{border-color:#aaa}[data-v-fbe45de0] .van-radio__icon--checked .van-icon{background:#f97215;border-color:#f97215}[data-v-fbe45de0] .icon{margin-top:.2rem}

文件差异内容过多而无法显示
+ 0 - 0
dist/css/VIPApply.16114269.css


+ 0 - 0
dist/css/chunk-vendors.9abab955.css → dist/css/chunk-vendors.a7000af4.css


+ 1 - 0
dist/css/order.27a80b05.css

@@ -0,0 +1 @@
+.order[data-v-f2c63e1e]{background:#fff;min-height:100vh}header[data-v-f2c63e1e]{height:.4rem;line-height:.4rem;color:#000;font-size:.17rem;background:#fff;-webkit-box-shadow:0 1px 8px 0 rgba(0,0,0,.07);box-shadow:0 1px 8px 0 rgba(0,0,0,.07);text-align:center}h2[data-v-f2c63e1e]{font-size:.16rem;color:#fff;padding:.1rem 0;text-align:center;background:#14928a}.table .title[data-v-f2c63e1e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;border-bottom:1px solid #eaeaea}.table span[data-v-f2c63e1e]{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:.08rem 0;font-size:.14rem}.table span[data-v-f2c63e1e]:first-child{width:.3rem;-webkit-box-flex:inherit;-ms-flex:inherit;flex:inherit}.table .content>div[data-v-f2c63e1e]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.table .content>div[data-v-f2c63e1e]:nth-child(2n+2){background:#eaeaea}[data-v-f2c63e1e] .van-dropdown-menu{height:.4rem;position:absolute;right:.15rem;top:0}

文件差异内容过多而无法显示
+ 0 - 0
dist/index.html


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval.478943e2.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval.478943e2.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval.be91210f.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply.deea7d13.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply.deea7d13.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply~ord~3d35106e.ec45b0d3.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Approval~Attendance~IStarted~Leave~PeriodAdjust~PeriodChange~TeachingSchool~TeachingSet~VIPApply~ord~3d35106e.ec45b0d3.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Attendance.4d547910.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Attendance.4d547910.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/IStarted.ba5a14e3.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/IStarted.ba5a14e3.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Leave.09db345c.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Leave.09db345c.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Leave.5da663e5.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/Leave.5da663e5.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodAdjust.178a9933.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodAdjust.178a9933.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodAdjust.92e85a9b.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodAdjust.92e85a9b.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodChange.c36580e3.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodChange.ed7473cc.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/PeriodChange.ed7473cc.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/TeachingSchool.ca019e9b.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/TeachingSchool.ca019e9b.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/TeachingSet.69041a22.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/TeachingSet.69041a22.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/VIPApply.a03c4f3b.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/VIPApply.a03c4f3b.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/VIPApply.b931d231.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/VIPApply.b931d231.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/app.ae762885.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/app.ae762885.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/app.d2ee59dc.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/app.d2ee59dc.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/chunk-vendors.898fa58b.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/chunk-vendors.f9318449.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/chunk-vendors.f9318449.js.map


文件差异内容过多而无法显示
+ 0 - 0
dist/js/order.0e11d7df.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/order.0e11d7df.js.map


+ 21 - 1
src/api/teacher.js

@@ -194,6 +194,24 @@ const statisticsList = (data) => {
     })
 }
 
+// 获取乐团学院学员报名列表
+const queryStudentApply = (data) => {
+    return axios({
+        url: api + '/teacher/queryStudentApply',
+        method: 'get',
+        params: data
+    })
+}
+
+// 获取乐团学院学员报名列表
+const querySubByMusicGroupId = (data) => {
+    return axios({
+        url: api + '/teacher/querySubByMusicGroupId',
+        method: 'get',
+        params: data
+    })
+}
+
 
 export {
     queryMyCreatedList,
@@ -216,5 +234,7 @@ export {
     classStartDateAdjust,
     courseSwap,
     statisticsInfo,
-    statisticsList
+    statisticsList,
+    queryStudentApply,
+    querySubByMusicGroupId
 }

+ 2 - 2
src/common/axios.js

@@ -32,12 +32,12 @@ _axios.interceptors.request.use(
     // Do something before request is sent
     // 判断用户是否登录
     if(browser().android || browser().iPhone) { // app里面
-      let userInfo = localStorage.getItem('Authorization')
+      let userInfo = decodeURI(localStorage.getItem('Authorization'))
       if(userInfo) {
         config.headers['Authorization'] = userInfo
       }
     } else { // 网页里面
-      let auth = localStorage.getItem('userInfo')
+      let auth = decodeURI(localStorage.getItem('userInfo'))
       if(auth) {
         config.headers['Authorization'] = auth
       }

+ 1 - 1
src/common/vueFilters.js

@@ -47,7 +47,7 @@ Vue.filter('clockingIn', value => {
 })
 
 Vue.filter('formatDate', value => {
-    let d = new Date(value)
+    let d = new Date(value.replace(/-/ig, '/'))
     let hour = d.getHours() >= 10 ? d.getHours() : '0' + d.getHours()
     let minute = d.getMinutes() >= 10 ? d.getMinutes() : '0' + d.getMinutes()
     return hour + ':' + minute

+ 2 - 2
src/main.js

@@ -8,14 +8,14 @@ import { Button, Icon, Tag, Swipe, SwipeItem, Popup, Picker,
     Collapse, CollapseItem, Tab, Tabs, Row, Col, Cell, CellGroup,
     Circle, Field, DatetimePicker, Image, Loading,
     ActionSheet, RadioGroup, Radio, Checkbox, CheckboxGroup,
-    CountDown, Panel, Dialog} from 'vant'
+    CountDown, Panel, Dialog, Sticky} from 'vant'
 Vue.use(Button).use(Icon).use(Tag).use(Swipe).use(SwipeItem)
    .use(Popup).use(Picker).use(DropdownMenu).use(DropdownItem).use(Search)
    .use(PullRefresh).use(Toast).use(List).use(Collapse).use(CollapseItem)
    .use(Tab).use(Tabs).use(Row).use(Col).use(Cell).use(CellGroup)
    .use(Circle).use(Field).use(DatetimePicker).use(Image).use(Loading)
    .use(ActionSheet).use(RadioGroup).use(Radio).use(Checkbox).use(CheckboxGroup)
-   .use(CountDown).use(Panel).use(Dialog)
+   .use(CountDown).use(Panel).use(Dialog).use(Sticky)
 Vue.config.productionTip = false
 
 import VueAMap from 'vue-amap'

+ 9 - 1
src/router/teacherRouter.js

@@ -95,7 +95,7 @@ let teacherRouter = [
         name: 'periodchange',
         component: () => import(/* webpackChunkName:'PeriodChange'*/'@/views/teacher/PeriodChange.vue'),
         meta: {
-            descrition: '课时调整',
+            descrition: '课时交换',
             weight: 7 // 页面权重
         }
     }, {
@@ -114,6 +114,14 @@ let teacherRouter = [
             descrition: 'VIP课程班申请',
             weight: 1 // 页面权重
         }
+    }, {
+        path: '/order',
+        name: 'order',
+        component: () => import(/* webpackChunkName:'order'*/'@/views/teacher/order.vue'),
+        meta: {
+            descrition: '订单列表',
+            weight: 1 // 页面权重
+        }
     }
 ]
 

+ 8 - 3
src/views/teacher/Leave.vue

@@ -132,10 +132,15 @@ export default {
         }
     },
     mounted() {
-        document.title = '请假'
-        if(browser().android) {
-            this.headerStatus = true
+        let params = this.$route.query
+        if(params.Authorization) {
+            localStorage.setItem('Authorization', params.Authorization)
+            localStorage.setItem('userInfo', params.Authorization)
         }
+        document.title = '请假'
+        // if(browser().android) {
+        //     this.headerStatus = true
+        // }
         this.__init()
     },
     methods: {

+ 28 - 17
src/views/teacher/PeriodAdjust.vue

@@ -20,17 +20,19 @@
                 </van-cell-group>
             </van-radio-group>
             <m-empty v-else key="data" />
-
-            <div class="button-group" v-if="dataShow">
+        </div>
+        
+        <van-sticky v-if="dataShow">
+            <div class="button-group">
                 <van-button type="default" @click="onDateChange" size="large">课时调整</van-button>
                 <van-button type="primary" @click="onSubmit" size="large">课时交换</van-button>
             </div>
-            <van-popup v-model="dataForm.status" position="bottom">
-                <van-datetime-picker v-model="dataForm.currentDate" type="datetime" :min-date="dataForm.minDate" 
-                    :max-date="dataForm.maxDate" :formatter="formatter" @cancel="dataForm.status = false" 
-                    @confirm="onCurrentConfirm" />
-            </van-popup>
-        </div>
+        </van-sticky>
+        <van-popup v-model="dataForm.status" position="bottom">
+            <van-datetime-picker v-model="dataForm.currentDate" type="datetime" :min-date="dataForm.minDate" 
+                :max-date="dataForm.maxDate" :formatter="formatter" @cancel="dataForm.status = false" 
+                @confirm="onCurrentConfirm" />
+        </van-popup>
     </div>
 </template>
 <script>
@@ -61,13 +63,18 @@ export default {
         }
     },
     created() {
-        document.title = '课程调整'
-        let toDay = this.getFormartDate(new Date())
-        this.getCourseDate(toDay)
+        
     },
     mounted() {
-        
+        let params = this.$route.query
+        if(params.Authorization) {
+            localStorage.setItem('Authorization', decodeURI(params.Authorization))
+            localStorage.setItem('userInfo', decodeURI(params.Authorization))
+        }
         // this.getCourseMonth(toDay)
+        document.title = '课程调整'
+        let toDay = this.getFormartDate(new Date())
+        this.getCourseDate(toDay)
     },
     methods: {
         onSelectDay(value) {
@@ -200,18 +207,22 @@ export default {
 <style lang='less' scoped>
 @import url("../../assets/commonLess/variable.less");
 .periodadjust {
-    min-height: 100vh;
+    // min-height: 100vh;
+    height: 100vh;
     position: relative;
+    background-color: #F3F4F8;
     .container {
-        height: calc(100vh - 50px);
+        min-height: calc(100vh - 50px);
         overflow-y: auto;
         overflow-x: hidden;
+        position: relative;
     }
     .button-group {
         width: 100%;
-        position: absolute;
-        bottom: 0;
-        left: 0;
+        // position: absolute;
+        // bottom: 0;
+        // left: 0;
+        // z-index: 99;
         .van-button {
             font-size: .16rem;
             width: 50%;

+ 1 - 1
src/views/teacher/PeriodChange.vue

@@ -47,7 +47,7 @@ export default {
         }
     },
     created() {
-        document.title = '课程调整'
+        document.title = '课程交换'
         let toDay = this.getFormartDate(new Date())
         this.getCourseDate(toDay)
     },

+ 53 - 8
src/views/teacher/VIPApply.vue

@@ -29,9 +29,9 @@
         <div class="vip-title">时间安排</div>
         <van-cell-group>
             <van-field v-model="form.registrationStartTime" label="报名开始时间" 
-                disabled input-align="right" is-link size="large" placeholder="请选择" />
+                disabled @click="onEnListShow('start', form.registrationStartTime)" input-align="right" is-link size="large" placeholder="请选择" />
             <van-field v-model="form.coursesExpireDate" label="报名截止时间" 
-                disabled input-align="right" is-link size="large" placeholder="请选择" />
+                disabled @click="onEnListShow('end', form.coursesExpireDate)" input-align="right" is-link size="large" placeholder="请选择" />
         </van-cell-group>
         <div class="vip-title">课时安排</div>
         <van-cell-group>
@@ -82,6 +82,12 @@
             <van-button type="primary" @click="onSubmit" round size="large">确认</van-button>
         </div>
         
+        <!-- 报名开始时间&报名结束时间 -->
+        <van-popup v-model="enlistForm.status" position="bottom">
+            <van-datetime-picker v-model="enlistForm.currentDate" type="date" :min-date="enlistForm.minDate" 
+                :max-date="enlistForm.maxDate" :formatter="formatter" @cancel="enlistForm.status = false" 
+                @confirm="onEnlistConfirm" />
+        </van-popup>
         <!-- 赠课类型 -->
         <van-action-sheet v-model="statusList.giveTeachModeStatus" :actions="loadData.giveTeachMode" cancel-text="取消"  @cancel="statusList.giveTeachModeStatus = false" @select="onModeSelect" />
         <!-- 课程信息所用 :close-on-click-overlay="false"  -->
@@ -145,6 +151,13 @@ export default {
                 maxDate: new Date(2025, 10, 1),
                 currentDate: new Date()
             },
+            enlistForm: { // 时间下拉框
+                updateStatus: '', // 修改哪个状态
+                status: false,
+                minDate: new Date(),
+                maxDate: new Date(2025, 10, 1),
+                currentDate: new Date()
+            },
             statusList: { // 散状态集合
                 giveTeachModeStatus: false, // 赠课弹窗状态
                 teachOnOrOff: false, // 是否显示赠课
@@ -446,9 +459,40 @@ export default {
         },
         onCurrentConfirm(value) { // 排课开始时间
             let selectDate = new Date(value)
-            this.form.courseStart = selectDate.getFullYear() + '-' + (selectDate.getMonth() + 1) + '-' + selectDate.getDate()
+            let tempMonth = selectDate.getMonth() + 1 >= 10 ? selectDate.getMonth() + 1 : '0' + (selectDate.getMonth() + 1)
+            let tempDay = selectDate.getDate() >= 10 ? selectDate.getDate() : '0' + selectDate.getDate()
+            this.form.courseStart = selectDate.getFullYear() + '-' + tempMonth + '-' + tempDay
             this.dataForm.status = false
         },
+        onEnlistConfirm(value) { // 报名开始/结束时间
+            let selectDate = new Date(value)
+            let tempMonth = selectDate.getMonth() + 1 >= 10 ? selectDate.getMonth() + 1 : '0' + (selectDate.getMonth() + 1)
+            let tempDay = selectDate.getDate() >= 10 ? selectDate.getDate() : '0' + selectDate.getDate()
+            let enlistForm = this.enlistForm
+            if(enlistForm.updateStatus == 'start') {
+                this.form.registrationStartTime = selectDate.getFullYear() + '-' + tempMonth  + '-' + tempDay
+            } else if(enlistForm.updateStatus == 'end') {
+                this.form.coursesExpireDate = selectDate.getFullYear() + '-' + tempMonth  + '-' + tempDay
+            }
+            enlistForm.status = false
+        },
+        onEnListShow(type, value) { // 报名开始/截止时间
+            let enlistForm = this.enlistForm
+            if(type == 'end') {
+                if(this.form.registrationStartTime) {
+                    enlistForm.minDate = new Date(this.form.registrationStartTime.replace(/-/ig, '/'))
+                } else {
+                    enlistForm.minDate = new Date()
+                }
+            }
+            if(value) {
+                enlistForm.currentDate = new Date(value.replace(/-/ig, '/'))
+            } else {
+                enlistForm.currentDate = new Date()
+            }
+            enlistForm.updateStatus = type
+            enlistForm.status = true
+        },
         onCourseShedule() { // 课时安排
             if(!this.form.singleClassMinutes) {
                 this.$toast('请选择课程形式')
@@ -539,7 +583,8 @@ export default {
                 return
             }
             let totalCount = Number(online) + Number(offline)
-            let dateOperation  = new Date(form.courseStart)
+            let tempCourseStart = form.courseStart.replace(/-/ig, '/')
+            let dateOperation  = new Date(tempCourseStart)
             while(totalCount && totalCount > 0) {
                 for(let i = 0; i < scheduleList.length; i++) {
                     if (online == 0 && offline == 0) break
@@ -607,7 +652,7 @@ export default {
                         // 老师课酬的折扣 如果有则不打折
                         form.onlineTeacherSalary = vcs.onlineClassesUnitPrice * (onss.settlementValue ? onss.settlementValue : 100) / 10
                     } else if(onss.salarySettlementType == 'FIXED_SALARY') {
-                        form.onlineTeacherSalary = onss.settlementValue
+                        form.onlineTeacherSalary = (onss.settlementValue).toFixed(2)
                     }
                 }
                 if (obj && obj.offlineSalarySettlement) {
@@ -620,7 +665,7 @@ export default {
                         // 老师课酬的折扣
                         form.offlineTeacherSalary = (vcs.offlineClassesUnitPrice * (offss.settlementValue ? offss.settlementValue : 100) / 100).toFixed(2)
                     } else if(offss.salarySettlementType == 'FIXED_SALARY') {
-                        form.offlineTeacherSalary = offss.settlementValue
+                        form.offlineTeacherSalary = (offss.settlementValue).toFixed(2)
                     }
                 }
             }
@@ -649,7 +694,7 @@ export default {
             } else {
                 dvar = day + '';
             }
-            return year + "/" + mvar + '/' + dvar;
+            return year + "-" + mvar + '-' + dvar;
         },
         // 分钟小时相加减
         MinutesTest (houer, mins, interval) {
@@ -780,7 +825,7 @@ export default {
                 form.offlineClassesNum = Number(form.offlineClassesNums) + Number(this.other.giveNum)
             }
             form.totalClassTimes = Number(form.onlineClassesNums) + Number(form.offlineClassesNums) + Number(this.other.giveNum)
-            form.paymentExpireDate = form.courseStart
+            form.paymentExpireDate = form.coursesExpireDate
 
             let params = {
                 courseSchedules: this.timeTable,

+ 219 - 0
src/views/teacher/order.vue

@@ -0,0 +1,219 @@
+<template>
+    <div class="order">
+        <header>支付列表
+            <van-dropdown-menu>
+                <van-dropdown-item @change="onChange" v-model="voicyPart" :options="voicyPartList" />
+            </van-dropdown-menu>
+        </header>
+        <h2>{{musicGroupName}}</h2>
+        <div class="table">
+            <div class="title">
+                <span></span>
+                <span>姓名</span>
+                <span>班级</span>
+                <span>声部</span>
+                <span>支付金额</span>
+                <span>到账时间</span>
+                <span>备注</span>
+            </div>
+            <div class="content">
+                <div v-for="(data, index) in dataList" :key="data.id">
+                <!-- <div> -->
+                    <span> {{ ++index }} </span>
+                    <span> {{ data.userName }} </span>
+                    <span> {{ data.currentClass }} </span>
+                    <span> {{ data.subjectName }} </span>
+                    <span> {{ data.paymentAmount }} </span>
+                    <span> {{ data.payTime }} </span>
+                    <span> {{ data.remark }} </span>
+                </div>
+                
+            </div>
+        </div>
+        
+    </div>
+</template>
+
+<script>
+import { queryStudentApply, querySubByMusicGroupId } from '@/api/teacher'
+import qs from 'qs'
+export default {
+    name: 'order',
+    data() {
+        return {
+            musicGroupId: this.$route.query.musicGroupId,
+            musicGroupName: this.$route.query.musicGroupName,
+            dataList: {}, // 订单列表
+            studentList: {}, // 学生列表
+            couresList: [], // 课程列表
+            voicyPart: 0,
+            voicyPartList: [{
+                text: '全部声部',
+                value: 0
+            }],
+            adjustStatus: false, //
+            changeStudent: null, // 修改的学生对象
+        }
+    },
+    mounted() {
+        // 获取所有课程
+        // this.$axios.post('/user/getCourses ', qs.stringify({
+        //     clazzId: this.classId
+        // })).then(c => {
+        //     let result = c.data.data
+        //     result.forEach(r => {
+        //         this.couresList.push({
+        //             name: r.subName.split('.').reverse()[0],
+        //             subId: r.subId,
+        //             id: r.id
+        //         })
+
+        //         this.voicyPartList.push({
+        //             text: r.subName.split('.').reverse()[0],
+        //             value: r.subId
+        //         })
+        //     })
+        // })
+
+        querySubByMusicGroupId({ musicGroupId: this.musicGroupId }).then(res => {
+            let result = res.data
+            if(result.code == 200) {
+                result.data.forEach(r => {
+                    this.voicyPartList.push({
+                        text: r.name,
+                        value: r.id
+                    })
+                })
+            }
+        })
+        
+        // 获取订单信息
+        this.getOrderList()
+        // 获取学生列表信息
+        // this.getStudents()
+
+        
+    },
+    methods: {
+        getOrderList(voicyPart) {
+            // 获取订单信息
+
+            queryStudentApply({
+                musicGroupId: this.musicGroupId,
+                rows: 9999,
+                subjectId: voicyPart,
+                page: 1
+            }).then(res => {
+                let result = res.data
+                if(result.code == 200) {
+                    this.dataList = result.data.rows
+                }
+            })
+        },
+        // getStudents(item) {
+        //     if(!item) {
+        //         item = {}
+        //     }
+        //     this.$axios.post('/user/getMusicTeamStu', qs.stringify({
+        //         musicTeamId: this.classId, // 乐团Id
+        //         name: '', // 学生姓名
+        //         status: '', // 学生状态
+        //         subId: item.subId ? item.subId : '', // 声部编号
+        //         page: item.page ? item.page : 1, //默认1第一页
+        //         rows: item.rows ? item.rows : 9999 // 默认20条数据
+        //     })).then(r => {
+        //         this.studentList = r.data.data.rows
+        //     })
+        // },
+        // adjustSelect(item) {
+        //     this.$axios.post('/user/updateUserSub', qs.stringify({
+        //         courseId: item.id,
+        //         subId: item.subId,
+        //         userId: this.changeStudent.id
+        //     })).then(student => {
+        //         if(student.data.code == 200) {
+        //             this.$toast(student.data.msg)
+        //             this.changeStudent.subName = item.name
+        //             this.adjustStatus = false
+        //         }
+        //     })
+        // },
+        // adjust(item) {
+        //     // 开始调剂
+        //     if(item.pushStatus <= 1 && item.status == 0) {
+        //         this.adjustStatus = true
+        //         this.changeStudent = item
+        //     }
+        // },
+        onChange(value) {
+            // 切换声部时
+            let subId = value ? value : ''
+            this.getOrderList(subId)
+            
+        }
+    }
+}
+</script>
+
+<style lang="less" scoped>
+.order {
+    background: #fff;
+    min-height: 100vh;
+}
+header {
+    height: .40rem;
+    line-height: .40rem;
+    color: #000;
+    font-size: .17rem;
+    background: #fff;
+    box-shadow: 0px 1px 8px 0px rgba(0,0,0,0.07);
+    text-align: center;
+}
+h2 {
+    font-size: .16rem;
+    color: #fff;
+    padding: .1rem 0;
+    text-align: center;
+    background: #14928a;
+}
+
+
+.table {
+    .title {
+        display: flex;
+        align-items: center;
+        text-align: center;
+        border-bottom: 1px solid #eaeaea;
+    }
+
+    span {
+        flex: 1;
+        padding: .08rem 0;
+        font-size: .14rem;
+        &:first-child {
+            width: .3rem;
+            flex: inherit;
+        }
+    }
+
+    .content > div{
+        // border: 1px solid #ccc;
+        // border-left: 0;
+        // border-right: 0;
+        width: 100%;
+        display: flex;
+        align-items: center;
+        text-align: center;
+        &:nth-child(2n+2) {
+            background: #eaeaea;
+        }
+
+    }
+}
+/deep/.van-dropdown-menu {
+    height: .4rem;
+    position: absolute;
+    right: .15rem;
+    top: 0;
+}
+</style>

部分文件因为文件数量过多而无法显示