浏览代码

Merge branch 'master' into permission_small

lex-xin 5 年之前
父节点
当前提交
07d7887abf
共有 92 个文件被更改,包括 576 次插入157 次删除
  1. 0 0
      dist/index.html
  2. 1 1
      dist/static/css/chunk-0262b7b3.4203139a.css
  3. 1 1
      dist/static/css/chunk-07c3ef70.357806cc.css
  4. 1 1
      dist/static/css/chunk-1d38d566.184e5f43.css
  5. 0 0
      dist/static/css/chunk-3e2f22ea.5bc571c2.css
  6. 1 1
      dist/static/css/chunk-43645682.9731df68.css
  7. 0 0
      dist/static/css/chunk-47d75f70.becf58d4.css
  8. 1 0
      dist/static/css/chunk-53974364.641b676e.css
  9. 1 0
      dist/static/css/chunk-7c4cbc6e.709e1c7f.css
  10. 1 0
      dist/static/css/chunk-d3f0a92e.641b676e.css
  11. 0 0
      dist/static/js/app.1e7495be.js
  12. 0 0
      dist/static/js/app.4abe7b5e.js
  13. 0 0
      dist/static/js/chunk-0138b0da.4ede2f6d.js
  14. 0 0
      dist/static/js/chunk-01894b84.3c7179e8.js
  15. 0 0
      dist/static/js/chunk-01894b84.bc6bdbd5.js
  16. 0 0
      dist/static/js/chunk-0262b7b3.88dcfb0b.js
  17. 0 0
      dist/static/js/chunk-075d6717.781bd112.js
  18. 0 0
      dist/static/js/chunk-07c3ef70.97682104.js
  19. 0 0
      dist/static/js/chunk-09753c97.92b6b81c.js
  20. 0 0
      dist/static/js/chunk-09753c97.b9881ae7.js
  21. 0 0
      dist/static/js/chunk-1c9ae0ee.8a035bda.js
  22. 0 0
      dist/static/js/chunk-1d38d566.b8ca0f2b.js
  23. 0 0
      dist/static/js/chunk-21ff5b78.a1ad05ac.js
  24. 0 0
      dist/static/js/chunk-243e17a6.cd83b2a1.js
  25. 0 0
      dist/static/js/chunk-257cc208.26cc4a4e.js
  26. 0 0
      dist/static/js/chunk-27dc628f.d90511fd.js
  27. 0 0
      dist/static/js/chunk-33a8e999.fd94a6ba.js
  28. 0 0
      dist/static/js/chunk-35d7984f.7af33067.js
  29. 0 0
      dist/static/js/chunk-3661e960.cfdfac1d.js
  30. 0 0
      dist/static/js/chunk-3c9d6427.016a1138.js
  31. 0 0
      dist/static/js/chunk-3e2f22ea.87afacf3.js
  32. 0 0
      dist/static/js/chunk-3e3440eb.14ecba6f.js
  33. 0 0
      dist/static/js/chunk-4041894e.66608f5f.js
  34. 0 0
      dist/static/js/chunk-40e665d1.ba3d0fcb.js
  35. 0 0
      dist/static/js/chunk-419ce36c.92c98680.js
  36. 0 0
      dist/static/js/chunk-41f382a0.b995c559.js
  37. 0 0
      dist/static/js/chunk-43645682.91b10886.js
  38. 0 0
      dist/static/js/chunk-47d75f70.9891bb91.js
  39. 0 0
      dist/static/js/chunk-4aab68d7.b3143f55.js
  40. 0 0
      dist/static/js/chunk-53974364.8d8053e4.js
  41. 0 0
      dist/static/js/chunk-5440ee4e.7db1d608.js
  42. 0 0
      dist/static/js/chunk-5dd9c9c4.e064d479.js
  43. 0 0
      dist/static/js/chunk-5fbb8ef1.8ab3ef38.js
  44. 0 0
      dist/static/js/chunk-60e66284.cfe1f6b7.js
  45. 0 0
      dist/static/js/chunk-60e66284.e3a2736c.js
  46. 0 0
      dist/static/js/chunk-6181ddae.9404f27b.js
  47. 0 0
      dist/static/js/chunk-64363d89.9a8b52a0.js
  48. 0 0
      dist/static/js/chunk-6562cc02.83abfbbd.js
  49. 0 0
      dist/static/js/chunk-65fcc06b.acffe16f.js
  50. 0 0
      dist/static/js/chunk-66a826b1.ebf2f0d6.js
  51. 0 0
      dist/static/js/chunk-68259a14.2b11e571.js
  52. 0 0
      dist/static/js/chunk-6c42ea8e.065c1c92.js
  53. 0 0
      dist/static/js/chunk-6d3529b2.7641447f.js
  54. 0 0
      dist/static/js/chunk-70fa4dab.60e12729.js
  55. 0 0
      dist/static/js/chunk-7212fea1.1ef6e6d9.js
  56. 0 0
      dist/static/js/chunk-787f95c4.3bdda83c.js
  57. 0 0
      dist/static/js/chunk-7c4cbc6e.9b75ecb5.js
  58. 0 0
      dist/static/js/chunk-8cf31128.e87ef112.js
  59. 0 0
      dist/static/js/chunk-90bc8dd8.f3eec0d6.js
  60. 0 0
      dist/static/js/chunk-9109a926.7eb351f4.js
  61. 0 0
      dist/static/js/chunk-9109a926.8151cb2f.js
  62. 0 0
      dist/static/js/chunk-98ae4e4a.3ea563af.js
  63. 0 0
      dist/static/js/chunk-98ae4e4a.6b7e0c84.js
  64. 0 0
      dist/static/js/chunk-b1e176fc.80f2c680.js
  65. 0 0
      dist/static/js/chunk-bb579d98.342233c4.js
  66. 0 0
      dist/static/js/chunk-bc672cf4.740df7eb.js
  67. 0 0
      dist/static/js/chunk-bc672cf4.bfbc7498.js
  68. 0 0
      dist/static/js/chunk-d3f0a92e.0178ce99.js
  69. 0 0
      dist/static/js/chunk-d956c970.e375fc8b.js
  70. 0 0
      dist/static/js/chunk-d98ee362.41448fee.js
  71. 0 0
      dist/static/js/chunk-de5c2e9a.0f901bf6.js
  72. 0 0
      dist/static/js/chunk-de5c2e9a.5b8eab24.js
  73. 0 0
      dist/static/js/chunk-dea0328a.54f31689.js
  74. 0 0
      dist/static/js/chunk-eb7895b6.73194b03.js
  75. 0 0
      dist/static/js/chunk-edcf4054.0feb5be3.js
  76. 0 0
      dist/static/js/chunk-f6deba5e.5a8f4975.js
  77. 8 1
      src/api/buildTeam.js
  78. 4 0
      src/router/index.js
  79. 2 1
      src/utils/searchArray.js
  80. 3 2
      src/utils/vueFilter.js
  81. 240 0
      src/views/accompanyManager/accompanyBuys.vue
  82. 3 3
      src/views/accompanyManager/accompanyList.vue
  83. 1 1
      src/views/accompanyManager/accompanys.vue
  84. 44 0
      src/views/accompanyManager/index.vue
  85. 55 0
      src/views/afterSchoolManager/afterSchoolDetail.vue
  86. 52 18
      src/views/afterSchoolManager/afterSchoolList.vue
  87. 64 49
      src/views/afterSchoolManager/afterWorkList.vue
  88. 4 9
      src/views/afterSchoolManager/index.vue
  89. 5 2
      src/views/businessManager/orderManager/incomeOut.vue
  90. 1 1
      src/views/categroyManager/vipActiveList.vue
  91. 3 3
      src/views/evaluateManager/networkList.vue
  92. 80 63
      src/views/vipClass/vipReset.vue

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


+ 1 - 1
dist/static/css/chunk-6d3529b2.1a8ba949.css → dist/static/css/chunk-0262b7b3.4203139a.css

@@ -1 +1 @@
-.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.titlewrap[data-v-90f03b20]{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.titlewrap[data-v-90f03b20],.wrap[data-v-90f03b20]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.wrap div[data-v-90f03b20]{margin-right:20px}
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.titlewrap[data-v-209d0fb2]{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.titlewrap[data-v-209d0fb2],.wrap[data-v-209d0fb2]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.wrap div[data-v-209d0fb2]{margin-right:20px}

+ 1 - 1
dist/static/css/chunk-d956c970.8c014a7e.css → dist/static/css/chunk-07c3ef70.357806cc.css

@@ -1 +1 @@
-.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.vipwrap[data-v-afa40900]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.vipwrap .newBand[data-v-afa40900]{margin-right:20px}.resetClassForm[data-v-afa40900] .el-date-editor.el-input,.resetClassForm[data-v-afa40900] .el-date-editor.el-input__inner{width:180px!important}[data-v-afa40900] .el-date-editor.el-input,[data-v-afa40900] .el-date-editor.el-input__inner{width:100px!important}
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.vipwrap[data-v-24eca02d]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.vipwrap .newBand[data-v-24eca02d]{margin-right:20px}.resetClassForm[data-v-24eca02d] .el-date-editor.el-input,.resetClassForm[data-v-24eca02d] .el-date-editor.el-input__inner{width:180px!important}[data-v-24eca02d] .el-date-editor.el-input,[data-v-24eca02d] .el-date-editor.el-input__inner{width:100px!important}

+ 1 - 1
dist/static/css/chunk-3c9d6427.2a55adcb.css → dist/static/css/chunk-1d38d566.184e5f43.css

@@ -1 +1 @@
-.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.wrap[data-v-6d086b5d]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.wrap .leftCell[data-v-6d086b5d]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.wrap .leftCell[data-v-6d086b5d],.wrap .rightCell[data-v-6d086b5d]{width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:50px}.wrap .rightCell[data-v-6d086b5d]{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.wrap .rightCell p[data-v-6d086b5d]{margin-right:30px}[data-v-6d086b5d] .el-tag{cursor:pointer}
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.wrap[data-v-4d83a936]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.wrap .leftCell[data-v-4d83a936]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.wrap .leftCell[data-v-4d83a936],.wrap .rightCell[data-v-4d83a936]{width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:50px}.wrap .rightCell[data-v-4d83a936]{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.wrap .rightCell p[data-v-4d83a936]{margin-right:30px}[data-v-4d83a936] .el-tag{cursor:pointer}

文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-3e2f22ea.5bc571c2.css


+ 1 - 1
dist/static/css/chunk-21ff5b78.ed6b1428.css → dist/static/css/chunk-43645682.9731df68.css

@@ -1 +1 @@
-.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.schoolCell[data-v-3595c11e]{width:400px;color:#333;background-color:#f5f7fa;border-color:#e4e7ed;height:40px;line-height:40px;outline:0;padding:0 15px;border-radius:4px;border:1px solid #dcdfe6;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-v-3595c11e] .el-textarea.is-disabled .el-textarea__inner{color:#333}.schoolCell[data-v-ace37fbe]{width:400px;color:#333;background-color:#f5f7fa;border-color:#e4e7ed;height:40px;line-height:40px;outline:0;padding:0 15px;border-radius:4px;border:1px solid #dcdfe6;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-v-ace37fbe] .el-textarea.is-disabled .el-textarea__inner{color:#333}
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.schoolCell[data-v-13f37de1]{width:400px;color:#333;background-color:#f5f7fa;border-color:#e4e7ed;height:40px;line-height:40px;outline:0;padding:0 15px;border-radius:4px;border:1px solid #dcdfe6;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-v-13f37de1] .el-textarea.is-disabled .el-textarea__inner{color:#333}.schoolCell[data-v-f9a6591e]{width:400px;color:#333;background-color:#f5f7fa;border-color:#e4e7ed;height:40px;line-height:40px;outline:0;padding:0 15px;border-radius:4px;border:1px solid #dcdfe6;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-v-f9a6591e] .el-textarea.is-disabled .el-textarea__inner{color:#333}

+ 0 - 0
dist/static/css/chunk-11ede39e.becf58d4.css → dist/static/css/chunk-47d75f70.becf58d4.css


+ 1 - 0
dist/static/css/chunk-53974364.641b676e.css

@@ -0,0 +1 @@
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}

+ 1 - 0
dist/static/css/chunk-7c4cbc6e.709e1c7f.css

@@ -0,0 +1 @@
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.schoolCell[data-v-f9a6591e]{width:400px;color:#333;background-color:#f5f7fa;border-color:#e4e7ed;height:40px;line-height:40px;outline:0;padding:0 15px;border-radius:4px;border:1px solid #dcdfe6;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}[data-v-f9a6591e] .el-textarea.is-disabled .el-textarea__inner{color:#333}

+ 1 - 0
dist/static/css/chunk-d3f0a92e.641b676e.css

@@ -0,0 +1 @@
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}

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


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-0138b0da.4ede2f6d.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-01894b84.3c7179e8.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-01894b84.bc6bdbd5.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-0262b7b3.88dcfb0b.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-075d6717.781bd112.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-07c3ef70.97682104.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-09753c97.92b6b81c.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-09753c97.b9881ae7.js


+ 0 - 0
dist/static/js/chunk-1c9ae0ee.727c5577.js → dist/static/js/chunk-1c9ae0ee.8a035bda.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-1d38d566.b8ca0f2b.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-21ff5b78.a1ad05ac.js


+ 0 - 0
dist/static/js/chunk-243e17a6.9c264826.js → dist/static/js/chunk-243e17a6.cd83b2a1.js


+ 0 - 0
dist/static/js/chunk-257cc208.97138297.js → dist/static/js/chunk-257cc208.26cc4a4e.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-27dc628f.d90511fd.js


+ 0 - 0
dist/static/js/chunk-33a8e999.e0c01f09.js → dist/static/js/chunk-33a8e999.fd94a6ba.js


+ 0 - 0
dist/static/js/chunk-35d7984f.0e190a39.js → dist/static/js/chunk-35d7984f.7af33067.js


+ 0 - 0
dist/static/js/chunk-3661e960.107f380e.js → dist/static/js/chunk-3661e960.cfdfac1d.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-3c9d6427.016a1138.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-3e2f22ea.87afacf3.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-3e3440eb.14ecba6f.js


+ 0 - 0
dist/static/js/chunk-4041894e.3348ea55.js → dist/static/js/chunk-4041894e.66608f5f.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-40e665d1.ba3d0fcb.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-419ce36c.92c98680.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-41f382a0.b995c559.js


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-47d75f70.9891bb91.js


+ 0 - 0
dist/static/js/chunk-4aab68d7.35d897e1.js → dist/static/js/chunk-4aab68d7.b3143f55.js


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-5440ee4e.7db1d608.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-5dd9c9c4.e064d479.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-5fbb8ef1.8ab3ef38.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-60e66284.cfe1f6b7.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-60e66284.e3a2736c.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-6181ddae.9404f27b.js


+ 0 - 0
dist/static/js/chunk-64363d89.4115388d.js → dist/static/js/chunk-64363d89.9a8b52a0.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-6562cc02.83abfbbd.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-65fcc06b.acffe16f.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-66a826b1.ebf2f0d6.js


+ 0 - 0
dist/static/js/chunk-68259a14.9c81d969.js → dist/static/js/chunk-68259a14.2b11e571.js


+ 0 - 0
dist/static/js/chunk-6c42ea8e.cbb6a52e.js → dist/static/js/chunk-6c42ea8e.065c1c92.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-6d3529b2.7641447f.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-70fa4dab.60e12729.js


+ 0 - 0
dist/static/js/chunk-7212fea1.49bf06d8.js → dist/static/js/chunk-7212fea1.1ef6e6d9.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-787f95c4.3bdda83c.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-7c4cbc6e.9b75ecb5.js


+ 0 - 0
dist/static/js/chunk-8cf31128.5a8e50d1.js → dist/static/js/chunk-8cf31128.e87ef112.js


+ 0 - 0
dist/static/js/chunk-90bc8dd8.363f0254.js → dist/static/js/chunk-90bc8dd8.f3eec0d6.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-9109a926.7eb351f4.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-9109a926.8151cb2f.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-98ae4e4a.3ea563af.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-98ae4e4a.6b7e0c84.js


+ 0 - 0
dist/static/js/chunk-b1e176fc.73e74fd0.js → dist/static/js/chunk-b1e176fc.80f2c680.js


+ 0 - 0
dist/static/js/chunk-bb579d98.f301c46b.js → dist/static/js/chunk-bb579d98.342233c4.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-bc672cf4.740df7eb.js


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-d3f0a92e.0178ce99.js


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-d98ee362.41448fee.js


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-de5c2e9a.5b8eab24.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-dea0328a.54f31689.js


+ 0 - 0
dist/static/js/chunk-eb7895b6.7dc19328.js → dist/static/js/chunk-eb7895b6.73194b03.js


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


+ 0 - 0
dist/static/js/chunk-f6deba5e.3ab629bb.js → dist/static/js/chunk-f6deba5e.5a8f4975.js


+ 8 - 1
src/api/buildTeam.js

@@ -959,7 +959,14 @@ export function practiceCourseTeacherAdjust(data) {
     data: qs.stringify(data)
   })
 }
-
+// 网管课购买列表
+export function practiceGroupManageStudentBuys(data) {
+  return request({
+    url: api + '/practiceGroupManage/studentBuys',
+    method: 'get',
+    params: data
+  })
+}
 // 清除考情记录
 export function cleanAttendance(data) {
   return request({

+ 4 - 0
src/router/index.js

@@ -245,6 +245,9 @@ export const asyncRoutes = {
   accompanyList: () => import('@/views/accompanyManager/accompanyList'),
   // 网管课详情
   accompanys: () => import('@/views/accompanyManager/accompanys'),
+  accompany: () => import('@/views/accompanyManager'),
+  // 网管课购买
+  accompanyBuys:() => import('@/views/accompanyManager/accompanyBuys'),
   // 版本控制
   editionList: () => import('@/views/editionManager/editionList'),
   // 定时任务
@@ -273,5 +276,6 @@ export const asyncRoutes = {
   // afterWorkList:()=>import('@/views/afterSchoolManager/afterWorkList'),
   // 课外管理
   afterSchoolManager:()=>import('@/views/afterSchoolManager'),
+  afterSchoolDetail:()=>import('@/views/afterSchoolManager/afterSchoolDetail')
 }
 export default router

+ 2 - 1
src/utils/searchArray.js

@@ -11,7 +11,8 @@ const courseType = [
   { label: '启蒙课', value: 'ENLIGHTENMENT' },
   { label: '集训课', value: 'TRAINING' },
   { label: '课堂课', value: 'CLASSROOM' },
-  { label: '网管课', value: 'PRACTICE' }
+  { label: '网管课', value: 'PRACTICE' },
+  { label: '对外课', value: 'COMM' },
 ]
 
 // 考勤状态

+ 3 - 2
src/utils/vueFilter.js

@@ -80,13 +80,14 @@ Vue.filter('coursesType', (value) => {
     VIP: "VIP课",
     DEMO: "试听课",
     COMPREHENSIVE: '综合课',
-    PRACTICE: '练习课',
+    // PRACTICE: '练习课',
     ENLIGHTENMENT: '启蒙课',
     TRAINING: '集训课',
     TRAINING_SINGLE: '集训单技课',
     TRAINING_MIX: '集训合奏课',
     CLASSROOM: '课堂课',
-    PRACTICE:'网管课'
+    PRACTICE:'网管课',
+    COMM:'对外课',
   }
   return template[value]
 })

+ 240 - 0
src/views/accompanyManager/accompanyBuys.vue

@@ -0,0 +1,240 @@
+<!--  -->
+<template>
+  <div class="m-core">
+    <el-form :inline="true" class="searchForm" v-model.trim="searchForm">
+      <!-- 状态 指导老师 活动方案-->
+      <el-form-item>
+        <el-input
+          v-model.trim="searchForm.search"
+          @keyup.enter.native="search"
+          placeholder="学员编号 学员名称"
+        ></el-input>
+      </el-form-item>
+      <el-form-item>
+        <el-select
+          class="multiple"
+          v-model.trim="searchForm.organIdList"
+          filterable
+          clearable
+          placeholder="请选择分部"
+        >
+          <el-option
+            v-for="(item,index) in organList"
+            :key="index"
+            :label="item.name"
+            :value="item.id"
+          ></el-option>
+        </el-select>
+      </el-form-item>
+      <!-- statusList -->
+      <el-form-item prop="buy">
+        <el-select
+          class="multiple"
+          v-model.trim="searchForm.buy"
+          filterable
+          clearable
+          placeholder="购买网管课"
+        >
+          <el-option label="是" value="true"></el-option>
+          <el-option label="否" value="false"></el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item>
+        <el-button @click="search" type="danger">搜索</el-button>
+        <el-button @click="onReSet" type="primary">重置</el-button>
+       
+      </el-form-item>
+      <el-form-item>
+           <!-- <div class="newBand" @click="onExport">导出</div> -->
+            <el-button @click="onExport" type="primary"  v-permission="'export/studentBuyPractice'" style="background-color: #14928a; border: 1px solid #14928a;">导出</el-button>
+      </el-form-item>
+    </el-form>
+    <div class="tableWrap">
+      <el-table
+        style="width: 100%"
+        :header-cell-style="{background:'#EDEEF0',color:'#444'}"
+        :data="tableData"
+      >
+        <el-table-column align="center" prop="studentId" label="学员编号"></el-table-column>
+        <el-table-column align="center" prop="studentName" label="学员名称"></el-table-column>
+        <el-table-column align="center" prop="organName" label="所属分部"></el-table-column>
+        <!-- educationalTeacherId -->
+        <el-table-column align="center" prop="phone" label="手机号"></el-table-column>
+        <el-table-column align="center" label="是否购买">
+          <template slot-scope="scope">
+            <div>
+              <p>{{scope.row.buyPractice?'是':'否'}}</p>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column align="center" prop="lastClassDate" label="结束日期">
+          <template slot-scope="scope">
+            <div>
+              <p>{{scope.row.lastClassDate | formatTimer}}</p>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column align="center" prop="firstBuyTime" label="购买日期">
+          <template slot-scope="scope">
+            <div>
+              <p>{{scope.row.firstBuyTime | formatTimer}}</p>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column align="center" prop="intervalDay" label="时间差">
+              <template slot-scope="scope">
+            <div>
+              <p>{{scope.row.intervalDay + '天'}}</p>
+            </div>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        :total="rules.total"
+        :page.sync="rules.page"
+        :limit.sync="rules.limit"
+        :page-sizes="rules.page_size"
+        @pagination="getList"
+      />
+    </div>
+  </div>
+</template>
+
+<script>
+import {
+  practiceGroupManageStudentBuys,
+  getEmployeeOrgan
+} from "@/api/buildTeam";
+import pagination from "@/components/Pagination/index";
+import axios from 'axios'
+import { getToken } from '@/utils/auth'
+import load from '@/utils/loading'
+import qs from 'qs'
+export default {
+  components: { pagination },
+  data() {
+    return {
+      searchForm: {
+        search: null,
+        buy: null,
+        organIdList:null
+      },
+      tableData: [],
+      organList: [],
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50] // 选择限制显示条数
+      }
+    };
+  },
+  //生命周期 - 创建完成(可以访问当前this实例)
+  created() {},
+  //生命周期 - 挂载完成(可以访问DOM元素)
+  mounted() {
+    this.init();
+  },
+  activated() {},
+  methods: {
+    init() {
+      // 获取分部
+      getEmployeeOrgan().then(res => {
+        if (res.code == 200) {
+          this.organList = res.data;
+        }
+      });
+      this.getList()
+    },
+    getList() {
+      let obj = {
+        page: this.rules.page,
+        rows: this.rules.limit
+      };
+      this.searchForm.search ? (obj.search = this.searchForm.search) : null;
+      this.searchForm.buy
+        ? (obj.buyPractice = this.searchForm.buy)
+        : null;
+         this.searchForm.organIdList
+        ? (obj.organId = this.searchForm.organIdList)
+        : null;
+      practiceGroupManageStudentBuys(obj).then(res => {
+        if (res.code == 200) {
+            this.tableData = res.data.rows
+                this.rules.total = res.data.total;
+        }
+      });
+    },
+    search() {
+      this.rules.page = 1;
+      this.getList();
+    },
+    onReSet() {
+      this.searchForm = {
+        search: null,
+        buy: null,
+        organIdList:null
+      };
+      this.search();
+    },
+    // 导出
+    onExport(){
+        let searchForm = this.searchForm;
+      let data = {
+        buyPractice: searchForm.buy || null,
+        organId: searchForm.organIdList || null,
+        search: searchForm.search || null
+      };
+      let url = "/api-web/export/studentBuyPractice";
+      const options = {
+        method: "POST",
+        headers: {
+          Authorization: getToken()
+        },
+        params: data,
+        url,
+        responseType: "blob"
+      };
+      this.$confirm("您确定导出报表", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      })
+        .then(() => {
+          load.startLoading()
+          axios(options).then(res => {
+            let blob = new Blob([res.data], {
+              // type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8'
+              type: "application/vnd.ms-excel;charset=utf-8"
+              //word文档为application/msword,pdf文档为application/pdf,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8
+            });
+            
+            let text = (new Response(blob)).text()
+            text.then(res => {
+              // 判断是否报错
+              if(res.indexOf('code') != -1) {
+                let json = JSON.parse(res)
+                this.$message.error(json.msg)
+              } else {
+                let objectUrl = URL.createObjectURL(blob);
+                let link = document.createElement("a");
+                let fname = "网管课购买" + new Date().getTime(); //下载文件的名字
+                link.href = objectUrl;
+                link.setAttribute("download", fname);
+                document.body.appendChild(link);
+                link.click();
+              }
+            })
+            load.endLoading();
+          }).catch(error => {
+            this.$message.error('导出数据失败,请连接管理员');
+            load.endLoading();
+          });
+        }).catch(() => {});
+    }
+  }
+};
+</script>
+<style lang='scss' scoped>
+</style>

+ 3 - 3
src/views/accompanyManager/accompanyList.vue

@@ -1,8 +1,8 @@
 <template>
-  <div class="m-container">
-    <h2>
+  <div class="">
+    <!-- <h2>
       <div class="squrt"></div>网管课列表
-    </h2>
+    </h2> -->
 
     <div class="m-core">
       <el-form :inline="true" class="searchForm" v-model.trim="searchForm">

+ 1 - 1
src/views/accompanyManager/accompanys.vue

@@ -504,7 +504,7 @@ export default {
     },
     goBack() {
       this.$router.push({
-        path: "/business/accompanyList",
+        path: "/business/accompany",
         query: { rules: this.Frules, searchForm: this.FsearchForm }
       });
     },

+ 44 - 0
src/views/accompanyManager/index.vue

@@ -0,0 +1,44 @@
+<!--  -->
+<template>
+  <div class="m-container">
+    <h2>
+      <div class="squrt"></div>网管课管理
+    </h2>
+    <div class="m-core">
+      <el-tabs v-model.trim="activeIndex" type="card" @tab-click="handleClick">
+        <el-tab-pane label="网管课管理" name="1">
+            <accompanyList/>
+        </el-tab-pane>
+        <el-tab-pane label="网管课购买" name="2">
+            <accompanyBuys/>
+        </el-tab-pane>
+      </el-tabs>
+    </div>
+  </div>
+</template>
+
+<script>
+import accompanyList from "@/views/accompanyManager/accompanyList";
+import accompanyBuys from '@/views/accompanyManager/accompanyBuys'
+export default {
+components: { accompanyList,accompanyBuys},
+data() {
+return {
+     activeIndex: "1",
+};
+},
+//生命周期 - 创建完成(可以访问当前this实例)
+created() {
+
+},
+//生命周期 - 挂载完成(可以访问DOM元素)
+mounted() {
+
+},
+methods: {
+    handleClick(){}
+},
+}
+</script>
+<style lang='scss' scoped>
+</style>

+ 55 - 0
src/views/afterSchoolManager/afterSchoolDetail.vue

@@ -0,0 +1,55 @@
+<!--  -->
+<template>
+  <div class="m-container">
+    <h2>
+      <!-- <div class='squrt'></div> {{ pageName }} -->
+      <el-page-header @back="goBack" :content="title"></el-page-header>
+    </h2>
+    <afterWorkList/>
+  </div>
+</template>
+
+<script>
+import afterWorkList from "@/views/afterSchoolManager/afterWorkList";
+export default {
+  components: { afterWorkList },
+  data() {
+    return {
+      FsearchForm: null,
+      Frules: null,
+      title:'',
+      id:null
+    };
+  },
+  //生命周期 - 创建完成(可以访问当前this实例)
+  created() {
+    this.init();
+  },
+  //生命周期 - 挂载完成(可以访问DOM元素)
+  mounted() {
+    
+  },
+  activated() {
+    this.init();
+  },
+  methods: {
+    init() {
+      if (this.$route.query.searchForm) {
+        this.FsearchForm = this.$route.query.searchForm;
+      }
+      if (this.$route.query.rules) {
+        this.Frules = this.$route.query.rules;
+      }
+          this.title = this.$route.query.title
+          this.id = this.$route.query.extracurricularExercisesId
+          // console.log(this.id)
+        //   console.log(this.$router.query)
+    },
+    goBack() {
+      this.$router.push({ path: "/business/afterSchoolManager", query: { rules: this.Frules, searchForm: this.FsearchForm } });
+    }
+  }
+};
+</script>
+<style lang='scss' scoped>
+</style>

+ 52 - 18
src/views/afterSchoolManager/afterSchoolList.vue

@@ -23,6 +23,22 @@
             ></el-option>
           </el-select>
         </el-form-item>
+         <el-form-item prop="organId">
+          <el-select
+            class="multiple"
+            v-model.trim="searchForm.organId"
+            filterable
+            clearable
+            placeholder="请选择分部"
+          >
+            <el-option
+              v-for="(item,index) in organList"
+              :key="index"
+              :label="item.name"
+              :value="item.id"
+            ></el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item>
           <el-date-picker
             v-model.trim="searchForm.timer"
@@ -34,19 +50,6 @@
             end-placeholder="结束日期"
           ></el-date-picker>
         </el-form-item>
-
-        <!-- <el-form-item>
-          <el-select placeholder="是否提交" v-model="searchForm.hasReport" clearable>
-            <el-option label="是" value="1"></el-option>
-            <el-option label="否" value="0"></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item>
-          <el-select placeholder="是否回复" v-model="searchForm.hasReport" clearable>
-            <el-option label="是" value="1"></el-option>
-            <el-option label="否" value="0"></el-option>
-          </el-select>
-        </el-form-item>-->
         <el-form-item>
           <el-button type="danger" @click="search">搜索</el-button>
           <el-button @click="onReSet" type="primary">重置</el-button>
@@ -60,6 +63,8 @@
         >
           <el-table-column align="center" prop="createTime" label="布置时间"></el-table-column>
           <el-table-column align="center" prop="title" label="训练标题"></el-table-column>
+          <el-table-column align="center" prop="organName" label="分部"></el-table-column>
+          
           <el-table-column align="center" prop="expireDate" label="截止时间"></el-table-column>
           <el-table-column align="center" prop="teacherName" label="老师姓名">
             <template slot-scope="scope">
@@ -129,7 +134,7 @@
 <script>
 import pagination from "@/components/Pagination/index";
 import { queryPageList } from "@/api/afterSchool";
-import { getTeacher } from "@/api/buildTeam";
+import { getTeacher,getEmployeeOrgan } from "@/api/buildTeam";
 export default {
   components: { pagination },
   data() {
@@ -138,6 +143,7 @@ export default {
         search: null,
         timer: [],
         teacherId:null,
+        organId:null
       },
       rules: {
         // 分页规则
@@ -148,6 +154,7 @@ export default {
       },
       teacherList: [],
       tableList: [],
+      organList: [],
       visibleForm: {
         createTime:
           "啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦"
@@ -164,6 +171,12 @@ export default {
         this.teacherList = res.data;
       }
     });
+      getEmployeeOrgan().then(res => {
+      if (res.code == 200) {
+        this.organList = res.data;
+      }
+    });
+    // 获取分部
     this.init();
   },
   activated() {
@@ -186,6 +199,16 @@ export default {
       this.searchForm.timer = [];
       this.searchForm.timer.push(startDate);
       this.searchForm.timer.push(endDate);
+      if (this.$route.query.searchForm) {
+      this.$route.query.searchForm instanceof Object
+        ? (this.searchForm = this.$route.query.searchForm)
+        : (this.searchForm = JSON.parse(this.$route.query.searchForm));
+    }
+    if (this.$route.query.rules) {
+      this.$route.query.rules instanceof Object
+        ? (this.rules = this.$route.query.rules)
+        : (this.rules = JSON.parse(this.$route.query.rules));
+    } 
       this.getList();
     },
     getList() {
@@ -199,6 +222,7 @@ export default {
          obj.rows= this.rules.limit,
       this.searchForm.teacherId?obj.teacherId = this.searchForm.teacherId:null;
       this.searchForm.search?obj.title = this.searchForm.search:null;
+      this.searchForm.organId?obj.organId = this.searchForm.organId:null;
       queryPageList(obj).then(res => {
         if (res.code == 200) {
           this.tableList = res.data.rows;
@@ -210,14 +234,24 @@ export default {
       this.rules.page = 1;
       this.getList();
     },
-    onReSet() {},
+    onReSet() {
+       this.searchForm= {
+        search: null,
+        timer: [],
+        teacherId:null,
+        organId:null
+      }
+      this.search();
+    },
     lookDetail(row) {
       // this.afterSchoolVisible = true;
-      // console.log(row.id);
-      // this.$router.push({path:'/business/afterWorkList',query:{extracurricularExercisesId:row.id}})
+
+      let rules = JSON.stringify(this.rules);
+      let searchForm = JSON.stringify(this.searchForm);
+      this.$router.push({path:'/business/afterSchoolDetail',query:{extracurricularExercisesId:row.id,rules,searchForm,title:row.title}})
       // this.extracurricularExercisesId
       // getExtracurricularExercisesId
-      this.$emit('getExtracurricularExercisesId',row.id)
+      // this.$emit('getExtracurricularExercisesId',row.id)
     }
   }
 };

+ 64 - 49
src/views/afterSchoolManager/afterWorkList.vue

@@ -1,11 +1,11 @@
 <!--  -->
 <template>
-  <div class="">
+  <div class>
     <!-- <h2>
       <div class="squrt"></div>课外作业
-    </h2> -->
+    </h2>-->
     <div class="m-core">
-      <el-form :inline="true" :model="searchForm">
+      <el-form :inline="true" :model="searchForm" v-if="!extracurricularExercisesId">
         <el-form-item>
           <el-input
             v-model.trim="searchForm.search"
@@ -13,40 +13,53 @@
             placeholder="请输入标题 学生姓名"
           ></el-input>
         </el-form-item>
-        <!-- <el-form-item>
-          <el-select placeholder="老师姓名" v-model="searchForm.teacherId" clearable filterable>
+        <el-form-item prop="organId">
+          <el-select
+            class="multiple"
+            v-model.trim="searchForm.organId"
+            filterable
+            clearable
+            placeholder="请选择分部"
+          >
             <el-option
-              v-for="(item,index) in teacherList"
-              :label="item.realName"
-              :value="item.id"
+              v-for="(item,index) in organList"
               :key="index"
+              :label="item.name"
+              :value="item.id"
             ></el-option>
           </el-select>
-        </el-form-item>-->
-        <el-form-item>
-          <el-date-picker
-            v-model.trim="searchForm.timer"
-            style="width:410px;"
-            type="daterange"
-            value-format="yyyy-MM-dd"
-            range-separator="至"
-            start-placeholder="开始日期"
-            end-placeholder="结束日期"
-          ></el-date-picker>
         </el-form-item>
 
-        <!-- <el-form-item>
-          <el-select placeholder="是否提交" v-model="searchForm.hasReport" clearable>
+
+        <el-form-item>
+          <el-select placeholder="是否提交" v-model="searchForm.status" clearable>
             <el-option label="是" value="1"></el-option>
             <el-option label="否" value="0"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-select placeholder="是否回复" v-model="searchForm.hasReport" clearable>
+          <el-select placeholder="是否回复" v-model="searchForm.isReplied" clearable>
             <el-option label="是" value="1"></el-option>
             <el-option label="否" value="0"></el-option>
           </el-select>
-        </el-form-item>-->
+        </el-form-item>
+        <el-form-item>
+          <el-select placeholder="是否查看" v-model="searchForm.isView" clearable>
+            <el-option label="是" value="1"></el-option>
+            <el-option label="否" value="0"></el-option>
+          </el-select>
+        </el-form-item>
+                <el-form-item>
+          <el-date-picker
+            v-model.trim="searchForm.timer"
+            style="width:400px;"
+            type="daterange"
+            value-format="yyyy-MM-dd"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+          ></el-date-picker>
+        </el-form-item>
         <el-form-item>
           <el-button type="danger" @click="search">搜索</el-button>
           <el-button @click="onReSet" type="primary">重置</el-button>
@@ -68,6 +81,7 @@
               </div>
             </template>
           </el-table-column>
+           <el-table-column align="center" prop="organName" label="分部"></el-table-column>
           <el-table-column align="center" prop="createTime" label="学生姓名">
             <template slot-scope="scope">
               <div>
@@ -75,17 +89,17 @@
               </div>
             </template>
           </el-table-column>
-          <el-table-column align="center" label="提交状态">
+          <el-table-column align="center" label="提交作业">
             <template slot-scope="scope">
               <div>{{scope.row.status?'是':'否'}}</div>
             </template>
           </el-table-column>
-          <el-table-column align="center" prop="isReplied" label="是否提交">
+          <el-table-column align="center" prop="isReplied" label="是否回复">
             <template slot-scope="scope">
               <div>{{scope.row.isReplied?'是':'否'}}</div>
             </template>
           </el-table-column>
-          <el-table-column align="center" prop="isView" label="是否回复">
+          <el-table-column align="center" prop="isView" label="是否查看">
             <template slot-scope="scope">
               <div>{{scope.row.isView?'是':'否'}}</div>
             </template>
@@ -145,8 +159,9 @@
             style="width:400px"
           ></el-input>
         </el-form-item>
+
         <el-form-item label="学生上传" v-for="(item,index) in visibleForm.attachments" :key="index">
-          <p class="schoolCell" @click="lookWork(item)">点击播放</p>
+          <p class="schoolCell" v-if="item" @click="lookWork(item)">点击播放</p>
         </el-form-item>
       </el-form>
     </el-dialog>
@@ -168,18 +183,19 @@ import {
   extracurricularExercisesReply,
   findStudentExtraExerciseDetail
 } from "@/api/afterSchool";
-import { getTeacher } from "@/api/buildTeam";
+import { getEmployeeOrgan } from "@/api/buildTeam";
 export default {
-  props:['id'],
+  props: ["id"],
   components: { pagination },
   data() {
     return {
       searchForm: {
         search: null,
         timer: [],
-        teacherId: null,
-        hasReport: null,
-        isView: null
+        status: null,
+        isReplied: null,
+        isView: null,
+        organId:null
       },
       rules: {
         // 分页规则
@@ -190,6 +206,7 @@ export default {
       },
       teacherList: [],
       tableList: [],
+      organList:[],
       visibleForm: {
         expiryDate: "啦啦啦啦",
         teacherName: "",
@@ -201,18 +218,16 @@ export default {
       afterSchoolVisible: false,
       workVisible: false,
       activeSrc: "",
-      Fsearch:null,
-      Frules:null,
-      extracurricularExercisesId:null
+      extracurricularExercisesId: null
     };
   },
   //生命周期 - 创建完成(可以访问当前this实例)
   created() {},
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {
-    getTeacher().then(res => {
+       getEmployeeOrgan().then(res => {
       if (res.code == 200) {
-        this.teacherList = res.data;
+        this.organList = res.data;
       }
     });
     this.init();
@@ -237,13 +252,9 @@ export default {
       //   this.searchForm.timer = [];
       //   this.searchForm.timer.push(startDate);
       //   this.searchForm.timer.push(endDate);
-    if (this.$route.query.search) {
-      this.Fsearch = this.$route.query.search;
-    }
-    if (this.$route.query.rules) {
-      this.Frules = this.$route.query.rules
-    }
-    this.extracurricularExercisesId = this.id;
+
+      this.extracurricularExercisesId = this.$route.query.extracurricularExercisesId;
+      // console.log(this.$route.query)
       this.getList();
     },
     getList() {
@@ -259,9 +270,13 @@ export default {
           ? (obj.teacherId = this.searchForm.teacherId)
           : null;
       this.searchForm.search ? (obj.search = this.searchForm.search) : null;
-      this.id
+      this.searchForm.status ? (obj.status = this.searchForm.status) : null;
+      this.searchForm.isReplied ? (obj.isReplied = this.searchForm.isReplied) : null;
+      this.searchForm.isView ? (obj.isView = this.searchForm.isView) : null;
+      this.extracurricularExercisesId
         ? (obj.extracurricularExercisesId = this.extracurricularExercisesId)
         : null;
+        this.searchForm.organId?obj.organId = this.searchForm.organId:null;
       extracurricularExercisesReply(obj).then(res => {
         if (res.code == 200) {
           this.tableList = res.data.rows;
@@ -277,10 +292,10 @@ export default {
       this.searchForm = {
         search: null,
         timer: [],
-        teacherId: null,
-        hasReport: null,
+        status: null,
+        isReplied: null,
         isView: null,
-
+        organId:null
       };
       this.extracurricularExercisesId = null;
       this.getList();
@@ -289,7 +304,7 @@ export default {
       //   this.afterSchoolVisible = true;
       //   console.log(row)
       findStudentExtraExerciseDetail({
-        studentExerciseId: row.extracurricularExercisesId
+        studentExerciseId: row.id
       }).then(res => {
         if (res.code == 200) {
           this.visibleForm = {

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

@@ -2,17 +2,17 @@
 <template>
   <div class="m-container">
     <h2>
-      <div class="squrt"></div>课外管理
+      <div class="squrt"></div>课外训练
     </h2>
     <div class="m-core">
       <el-tabs v-model.trim="activeIndex" type="card" @tab-click="handleClick">
         <el-tab-pane label="课外训练" name="1">
-          <afterSchoolList v-if="activeIndex == 1" @getExtracurricularExercisesId='getExtracurricularExercisesId'></afterSchoolList>
+          <afterSchoolList v-if="activeIndex == 1" ></afterSchoolList>
         </el-tab-pane>
-        <el-tab-pane label="课外作业" name="2">
+        <el-tab-pane label="课外训练(学员)" name="2">
           <afterWorkList
             v-if="activeIndex == 2"
-            :id="extracurricularExercisesId"
+            
           ></afterWorkList>
         </el-tab-pane>
       </el-tabs>
@@ -44,11 +44,6 @@ export default {
         ? (this.activeIndex = this.$route.query.activeIndex)
         : this.activeIndex;
     },
-    getExtracurricularExercisesId(val){
-        console.log(val);
-        this.extracurricularExercisesId = val;
-        this.activeIndex = '2'
-    },
     handleClick(){}
   }
 };

+ 5 - 2
src/views/businessManager/orderManager/incomeOut.vue

@@ -87,8 +87,11 @@
           <el-table-column align="center" width="180px" prop="transNo" label="交易流水号"></el-table-column>
           <el-table-column align="center" width="210px" prop="orderNo" label="订单号"></el-table-column>
           <el-table-column align="center" prop="createTime" label="订单日期"></el-table-column>
-          <el-table-column align="center" width="100px" label="课时购买">
-            <template slot-scope="scope">{{ scope.row.transMinutes+'分钟' }}</template>
+          <el-table-column align="center" width="100px" label="时间/分钟">
+            <template slot-scope="scope">
+              <p>{{ '购买'+scope.row.transMinutes+'分钟' }}</p>
+              <p>{{ '赠送'+scope.row.giveMinutes+'分钟' }}</p>
+            </template>
           </el-table-column>
           <el-table-column align="center" prop="expectAmount" label="应付金额"></el-table-column>
           <!-- <el-table-column align="center" prop="balancePaymentAmount" label="余额支付"></el-table-column> -->

+ 1 - 1
src/views/categroyManager/vipActiveList.vue

@@ -163,7 +163,7 @@
           <el-form-item label="活动时间" prop="activeTime">
             <el-date-picker
               v-model.trim="resetForm.activeTime"
-              type="datetimerange"
+              type="daterange"
               range-separator="至"
               value-format="yyyy-MM-dd HH:mm:ss"
               start-placeholder="开始日期"

+ 3 - 3
src/views/evaluateManager/networkList.vue

@@ -87,13 +87,13 @@
         <el-date-picker
           :clearable="false"
           v-model="searchForm.month"
-          type="datetimerange"
+          type="daterange"
           value-format="yyyy-MM-dd"
           format="yyyy-MM-dd"
-          range-separator=""
+          range-separator="-"
           start-placeholder="开始日期"
           end-placeholder="结束日期"
-          :default-time="['00:00:00', '23:59:59']">
+          >
         ></el-date-picker>
       </el-form-item>
       <el-form-item>

+ 80 - 63
src/views/vipClass/vipReset.vue

@@ -15,7 +15,7 @@
         v-permission="'vipGroupManage/updateVipBaseInfo'"
         @click="addrVisible = true"
       >修改教学点</div>
-          <div
+      <div
         class="newBand"
         v-permission="{parent:'/vipReset',child:'employee/findEducationUsers'}"
         @click="educationalVisible = true"
@@ -44,7 +44,7 @@
             <div>{{ scope.row.status | coursesStatus }}</div>
           </template>
         </el-table-column>
-         <el-table-column label="是否点名" align="center">
+        <el-table-column label="是否点名" align="center">
           <template slot-scope="scope">
             <div>{{scope.row.isCallNames?'已点名':'未点名'}}</div>
           </template>
@@ -62,10 +62,8 @@
           </template>
         </el-table-column>
         <el-table-column label="教学点" align="center" prop="schoolName">
-           <template slot-scope="scope">
-            <div>
-              {{scope.row.schoolName?scope.row.schoolName:'网络教室'}}
-            </div>
+          <template slot-scope="scope">
+            <div>{{scope.row.schoolName?scope.row.schoolName:'网络教室'}}</div>
           </template>
         </el-table-column>
         <el-table-column label="操作" width="180" align="center">
@@ -73,22 +71,22 @@
             <div>
               <el-button
                 type="text"
-                  v-permission="{parent:'/vipReset',child:'courseSchedule/classStartDateAdjust'}"
+                v-permission="{parent:'/vipReset',child:'courseSchedule/classStartDateAdjust'}"
                 v-if="!scope.row.isSettlement"
                 @click="resetClass(scope.row)"
               >调整</el-button>
               <el-button
                 type="text"
                 v-permission="{parent:'/vipReset',child:'courseSchedule/batchDelete'}"
-                 v-if="!scope.row.isSettlement&&scope.row.status != 'OVER'"
+                v-if="!scope.row.isSettlement&&scope.row.status != 'OVER'"
                 @click="removeClass(scope.row)"
               >删除</el-button>
               <!--   -->
-                  <el-button
+              <el-button
                 type="text"
-                 v-permission="{parent:'/vipReset',child:'vip/cleanAttendance'}"
+                v-permission="{parent:'/vipReset',child:'vip/cleanAttendance'}"
                 v-if="!scope.row.isSettlement"
-               @click="clearAttend(scope.row)"
+                @click="clearAttend(scope.row)"
               >清除考勤</el-button>
             </div>
           </template>
@@ -342,22 +340,18 @@
       </span>
     </el-dialog>
     <!-- 修改教务老师 -->
-     <el-dialog title="修改教务" width="400px" :visible.sync="educationalVisible">
+    <el-dialog title="修改教务" width="400px" :visible.sync="educationalVisible">
       <el-form :model="addrForm">
-         <el-form-item label="教务老师" prop="educationalTeacherId">
-            <el-select
-              v-model.trim="addrForm.educationalTeacherId"
-              filterable
-              clearable
-            >
-              <el-option
-                v-for="(item,index) in educationList"
-                :key="index"
-                :label="item.userName"
-                :value="item.userId"
-              />
-            </el-select>
-          </el-form-item>
+        <el-form-item label="教务老师" prop="educationalTeacherId">
+          <el-select v-model.trim="addrForm.educationalTeacherId" filterable clearable>
+            <el-option
+              v-for="(item,index) in educationList"
+              :key="index"
+              :label="item.userName"
+              :value="item.userId"
+            />
+          </el-select>
+        </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
         <el-button @click="educationalVisible = false">取 消</el-button>
@@ -367,7 +361,11 @@
   </div>
 </template>
 <script>
-import { resetCourse,  cleanAttendance,findEducationUsers } from "@/api/buildTeam";
+import {
+  resetCourse,
+  cleanAttendance,
+  findEducationUsers
+} from "@/api/buildTeam";
 // import { getSchool } from '@/api/systemManage'
 import pagination from "@/components/Pagination/index";
 import {
@@ -394,15 +392,15 @@ export default {
       adjustmentVisible: false,
       addCourseVisible: false,
       courseVisible: false,
-      educationalVisible:false,
+      educationalVisible: false,
       tableList: [],
       addTable: [],
-      educationList:[],
+      educationList: [],
       courseTime: "",
       vipid: "",
       addrForm: {
         address: "",
-        educationalTeacherId:''
+        educationalTeacherId: ""
       },
       maskForm: {
         date: "",
@@ -467,9 +465,7 @@ export default {
       startTime: ""
     };
   },
-  created() {
-    
-  },
+  created() {},
   mounted() {
     this.__init();
     this.getList();
@@ -481,24 +477,22 @@ export default {
   methods: {
     __init() {
       this.vipid = this.$route.query.id;
-      if(this.$route.query.educationalTeacherId){
-         this.addrForm.educationalTeacherId = this.$route.query.educationalTeacherId
-      }else {
-         this.addrForm.educationalTeacherId = null;
+      if (this.$route.query.educationalTeacherId) {
+        this.addrForm.educationalTeacherId = this.$route.query.educationalTeacherId;
+      } else {
+        this.addrForm.educationalTeacherId = null;
       }
-     
+
       if (this.$route.query.rules) {
         this.Frules = this.$route.query.rules;
       }
       if (this.$route.query.searchForm) {
         this.FsearchForm = this.$route.query.searchForm;
       }
-          //  获取教务老师
-      findEducationUsers({
-
-      }).then(res => {
+      //  获取教务老师
+      findEducationUsers({}).then(res => {
         if (res.code == 200) {
-          this.educationList = res.data
+          this.educationList = res.data;
         }
       });
     },
@@ -563,8 +557,22 @@ export default {
         this.$message.error("请填写修改时间");
         return;
       }
+      let classTime = this.maskForm.date
+        ? new Date(this.maskForm.date)
+        : new Date();
+      let ymd =
+        classTime.getFullYear() +
+        "-" +
+        (classTime.getMonth() + 1) +
+        "-" +
+        classTime.getDate();
+      let tempStartTime = this.startTime
+      if (this.startTime.length <= 5) {
+        tempStartTime = tempStartTime + ":00";
+      }
       let obj = {
-        startClassTimeStr: this.startTime,
+        startClassTime: ymd + " " + this.startTime,
+        // startClassTimeStr: this.startTime,
         id: this.maskForm.id,
         classDate: this.maskForm.date,
         schoolId: this.maskForm.address || null,
@@ -685,7 +693,7 @@ export default {
     // 删除循环周
     removeWeek(item) {
       for (let i in this.weekList) {
-        if (this.weekList[i].id == item.id) { 
+        if (this.weekList[i].id == item.id) {
           this.weekList.splice(i, 1);
         }
       }
@@ -713,13 +721,24 @@ export default {
           let idArr = this.activeList.map(item => {
             return item.id;
           });
+          // let tempWeekList = []
+          // this.weekList.forEach(item => {
+          //   let tempTime = item.startClassTime.length <= 5 ? item.startClassTime + ':00' : item.startClassTime
+          //   tempWeekList.push({
+          //     dayOfWeek: item.dayOfWeek,
+          //     startTime: item.startTime,
+          //     endTime: item.endTime,
+          //     moid: item.moid,
+          //     startClassTime: obj.courseCreateStartTime + ' ' + tempTime,
+          //   })
+          // })
+
           let courseScheduleIds = idArr.join(",");
           obj.courseScheduleIds = courseScheduleIds;
           obj.courseTimes = this.weekList;
           obj.holiday = this.adjustmentForm.checked;
           obj.teachMode = this.adjustmentForm.courseType || null;
-          obj.groupType = 'VIP';
-          console.log(obj);
+          obj.groupType = "VIP";
           obj.vipGroupId = this.vipid;
           vipCourseAdjust(obj).then(res => {
             if (res.code == 200) {
@@ -753,7 +772,7 @@ export default {
           obj.courseCount = this.adjustmentForm.addCount;
           obj.teachMode = this.adjustmentForm.courseType;
           obj.singleClassPrice = this.adjustmentForm.fee;
-          obj.groupType = 'VIP'
+          obj.groupType = "VIP";
           batchAppendVipGroupCourses(obj).then(res => {
             if (res.code == 200) {
               this.$message.success("恭喜您添加成功");
@@ -773,7 +792,7 @@ export default {
       updateVipBaseInfo({
         id: this.vipid,
         teacherSchoolId: this.addrForm.address,
-        educationalTeacherId:this.addrForm.educationalTeacherId
+        educationalTeacherId: this.addrForm.educationalTeacherId
       }).then(res => {
         if (res.code == 200) {
           this.$message.success("修改成功");
@@ -782,8 +801,8 @@ export default {
         }
       });
     },
-   resetEducationalVisible(){
-        if (!this.addrForm.educationalTeacherId) {
+    resetEducationalVisible() {
+      if (!this.addrForm.educationalTeacherId) {
         this.$message.error("请选择一个教学点");
         return;
       }
@@ -791,7 +810,7 @@ export default {
       updateVipBaseInfo({
         id: this.vipid,
 
-        educationalTeacherId:this.addrForm.educationalTeacherId
+        educationalTeacherId: this.addrForm.educationalTeacherId
       }).then(res => {
         if (res.code == 200) {
           this.$message.success("修改成功");
@@ -799,8 +818,8 @@ export default {
           this.getList();
         }
       });
-   },
-      // 清除考勤
+    },
+    // 清除考勤
     clearAttend(row) {
       this.$confirm("是否清除考勤记录?", "提示", {
         confirmButtonText: "确定",
@@ -808,16 +827,14 @@ export default {
         type: "warning"
       })
         .then(() => {
-          cleanAttendance({ courseScheduleIds: row.id }).then(
-            res => {
-              if (res.code == 200) {
-                this.$message.success("清除成功");
-                this.getList();
-              } else {
-                this.$message.error(res.msg);
-              }
+          cleanAttendance({ courseScheduleIds: row.id }).then(res => {
+            if (res.code == 200) {
+              this.$message.success("清除成功");
+              this.getList();
+            } else {
+              this.$message.error(res.msg);
             }
-          );
+          });
         })
         .catch(() => {});
     }

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