Sfoglia il codice sorgente

Merge branch 'online' into wxlNew

王新雷 4 anni fa
parent
commit
b035bafcdc

+ 3 - 0
babel.config.js

@@ -1,5 +1,8 @@
 module.exports = {
   presets: [
     '@vue/app'
+  ],
+  plugins: [
+    "@babel/plugin-proposal-optional-chaining"
   ]
 }

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


File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-034a60e6.5119d197.css


+ 1 - 1
dist/static/css/chunk-6095d597.a93afb2d.css → dist/static/css/chunk-66ed3651.b9f74fb9.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}[data-v-10113950] .demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}[data-v-10113950] .demo-table-expand label{color:#99a9bf}
+.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}[data-v-402b8db2] .demo-table-expand .el-form-item{margin-right:0;margin-bottom:0;width:50%}[data-v-402b8db2] .demo-table-expand label{color:#99a9bf}

+ 1 - 1
dist/static/css/chunk-5edc8258.3a2f1fd6.css → dist/static/css/chunk-6a1d53ad.c5849bef.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}.inputStyle[data-v-92ffe0b0]{width:100px;text-align:center}.title[data-v-0eb05fc4]{margin-bottom:20px}.amap-demo[data-v-0eb05fc4]{height:300px}.inputStyle[data-v-7d789d15]{width:100px;text-align:center}.work[data-v-7d789d15]{margin-bottom:30px;font-size:16px}.visible[data-v-eab022d4]{visibility:hidden}.cl-container .topFrom[data-v-eab022d4]{margin:20px 30px 0}.cl-container .topFrom .classlist[data-v-eab022d4]{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;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cl-container .topFrom .classlist ul li[data-v-eab022d4]{list-style:none}.cl-container .searchForm[data-v-eab022d4]{margin:0 30px}.btnWraps[data-v-eab022d4]{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}.btnWraps div[data-v-eab022d4]{margin-right:20px}.inputStyle[data-v-eab022d4]{width:180px}.red[data-v-eab022d4]{color:red}.exportBtn[data-v-eab022d4]{background:#13817a}
+.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}.inputStyle[data-v-92ffe0b0]{width:100px;text-align:center}.title[data-v-0eb05fc4]{margin-bottom:20px}.amap-demo[data-v-0eb05fc4]{height:300px}.inputStyle[data-v-7d789d15]{width:100px;text-align:center}.work[data-v-7d789d15]{margin-bottom:30px;font-size:16px}.visible[data-v-b687ec48]{visibility:hidden}.cl-container .topFrom[data-v-b687ec48]{margin:20px 30px 0}.cl-container .topFrom .classlist[data-v-b687ec48]{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;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cl-container .topFrom .classlist ul li[data-v-b687ec48]{list-style:none}.cl-container .searchForm[data-v-b687ec48]{margin:0 30px}.btnWraps[data-v-b687ec48]{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}.btnWraps div[data-v-b687ec48]{margin-right:20px}.inputStyle[data-v-b687ec48]{width:180px}.red[data-v-b687ec48]{color:red}.exportBtn[data-v-b687ec48]{background:#13817a}

File diff suppressed because it is too large
+ 0 - 0
dist/static/css/chunk-7c658e09.a867a202.css


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


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-034a60e6.658461f4.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-5edc8258.118889a1.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-6095d597.88d29c08.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-66ed3651.1a297297.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-6a1d53ad.7b1b8a94.js


File diff suppressed because it is too large
+ 0 - 0
dist/static/js/chunk-7c658e09.9d8ad5d1.js


+ 1 - 0
package.json

@@ -14,6 +14,7 @@
     "svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml"
   },
   "dependencies": {
+    "@babel/plugin-proposal-optional-chaining": "^7.11.0",
     "axios": "0.18.1",
     "browserslist": "^4.13.0",
     "caniuse-lite": "^1.0.30001109",

+ 8 - 3
src/views/businessManager/resetList/index.vue

@@ -271,9 +271,12 @@ export default {
       let params = this.searchForm
       params.rows = this.rules.limit
       params.page = this.rules.page
-      if (this.searchForm.resetDate && this.searchForm.resetDate.length > 1) {
-        params.startTime = this.searchForm.resetDate[0]
-        params.endTime = this.searchForm.resetDate[1]
+      if (this.resetDate && this.resetDate.length > 1) {
+        params.startTime = this.resetDate[0]
+        params.endTime = this.resetDate[1]
+      } else {
+        params.startTime = null
+        params.endTime = null
       }
 
 
@@ -311,6 +314,8 @@ export default {
       }
 
     }
+  }, watch: {
+
   }
 };
 </script>

+ 49 - 54
src/views/businessManager/resetList/resetSound.vue

@@ -1,58 +1,48 @@
 <template>
   <div>
-    <el-dialog title="修改" width="500px" :visible.sync="soundVisible">
-      <el-form
-        :model="soundForm"
-        label-position="right"
-        label-width="120px"
-        :inline="true"
-        ref="soundForm"
-      >
+    <el-dialog title="修改"
+               width="500px"
+               :visible.sync="soundVisible">
+      <el-form :model="soundForm"
+               label-position="right"
+               label-width="120px"
+               :inline="true"
+               ref="soundForm">
         <el-form-item label="原乐器">
-          <el-input
-            style="width: 330px"
-            disabled
-            v-model="soundForm.originalMusicalGoods"
-          ></el-input>
+          <el-input style="width: 330px"
+                    disabled
+                    v-model="soundForm.originalMusicalGoods"></el-input>
         </el-form-item>
         <el-form-item label="原教辅">
-          <el-input
-            style="width: 330px"
-            disabled
-            v-model="soundForm.originalAccessories"
-          ></el-input>
+          <el-input style="width: 330px"
+                    disabled
+                    v-model="soundForm.originalAccessories"></el-input>
         </el-form-item>
         <el-form-item label="更换乐器">
-          <el-input
-            style="width: 330px"
-            disabled
-            v-model="soundForm.changeMusicalGoods"
-          ></el-input>
+          <el-input style="width: 330px"
+                    disabled
+                    v-model="soundForm.changeMusicalGoods"></el-input>
         </el-form-item>
         <el-form-item label="更换教辅">
-          <el-input
-            style="width: 330px"
-            disabled
-            v-model="soundForm.changeAccessories"
-          ></el-input>
+          <el-input style="width: 330px"
+                    disabled
+                    v-model="soundForm.changeAccessories"></el-input>
         </el-form-item>
         <el-form-item label="支付差价">
-          <el-input
-            style="width: 330px"
-            disabled
-            v-model="soundForm.money"
-          ></el-input>
+          <el-input style="width: 330px"
+                    disabled
+                    v-model="soundForm.money"></el-input>
         </el-form-item>
         <el-form-item label="成本差(元)">
-          <el-input
-            style="width: 330px"
-            v-model="soundForm.costMargin"
-          ></el-input>
+          <el-input style="width: 330px"
+                    v-model="soundForm.costMargin"></el-input>
         </el-form-item>
       </el-form>
-      <div slot="footer" class="dialog-footer">
+      <div slot="footer"
+           class="dialog-footer">
         <el-button @click="soundVisible = false">取 消</el-button>
-        <el-button type="primary" @click="resetCostMargin">确 定</el-button>
+        <el-button type="primary"
+                   @click="resetCostMargin">确 定</el-button>
       </div>
     </el-dialog>
   </div>
@@ -64,7 +54,7 @@ import numeral from "numeral";
 import { updateCostMargin } from "@/api/businessManager";
 export default {
   props: ["show", "item"],
-  data() {
+  data () {
     return {
       soundForm: {
         originalMusicalGoods: null,
@@ -78,17 +68,22 @@ export default {
       soundVisible: false,
     };
   },
-  mounted() {},
+  mounted () { },
   methods: {
-    accessoriesFormatter(accessories) {
-      let arr = accessories.map((res) => {
-        return res.name;
-      });
-      return arr.join(",");
+    accessoriesFormatter (accessories) {
+      if (accessories?.length > 0) {
+        let arr = accessories.map((res) => {
+          return res.name;
+        });
+        return arr.join(",");
+      } else {
+        return ''
+      }
+
     },
-    resetCostMargin() {
-      updateCostMargin({id:this.soundForm.id,costMargin:this.soundForm.costMargin}).then(res=>{
-        if(res.code == 200){
+    resetCostMargin () {
+      updateCostMargin({ id: this.soundForm.id, costMargin: this.soundForm.costMargin }).then(res => {
+        if (res.code == 200) {
           this.$message.success('修改成功')
           this.$emit('getList')
         }
@@ -96,10 +91,10 @@ export default {
     },
   },
   watch: {
-    show(val) {
+    show (val) {
       this.soundVisible = val;
     },
-    soundVisible(val) {
+    soundVisible (val) {
       if (!val) {
         this.$emit("closeReset");
       }
@@ -107,7 +102,7 @@ export default {
     item: {
       immediate: true,
       deep: true,
-      handler(row, oldValue) {
+      handler (row, oldValue) {
         if (row) {
           this.soundForm = {
             originalMusicalGoods: row.originalMusicalGoods
@@ -122,8 +117,8 @@ export default {
               this.accessoriesFormatter(row.changeAccessoriesGoods) || null,
             money: numeral(
               row.changeMusicalPrice +
-                row.changeAccessoriesPrice -
-                (row.originalMusicalPrice + row.originalAccessoriesPrice)
+              row.changeAccessoriesPrice -
+              (row.originalMusicalPrice + row.originalAccessoriesPrice)
             ).format("0,0.00"),
             costMargin: numeral(row.costMargin).format("0,0.00"),
             id: row.id,

+ 22 - 0
src/views/contentManager/contentOperation.vue

@@ -594,6 +594,28 @@ export default {
       }
     },
     onReSet (formName) {
+      const query = this.$route.query
+      let url = ''
+      if(query.type == 7) {
+        url = vaildStudentUrl() + "/#/knowledge"
+      } else if(query.type == 8 || query.type == 5) {
+        url = ''
+      } else {
+        url = vaildStudentUrl() + "/#/specialdetail"
+      }
+      this.form = {
+        title: null,
+        order: null,
+        coverImage: null,
+        videoCoverImage: null,
+        attribute1: null,
+        linkUrl: url,
+        type: query.type,
+        status: 1,
+        content: null,
+        tenantId: null,
+        subType: null
+      };
       this.$refs[formName].resetFields();
     },
     onLook () {

+ 38 - 7
src/views/teamDetail/teamCourseList.vue

@@ -49,6 +49,17 @@
           </el-select>
         </el-form-item>
         <el-form-item>
+          <el-select v-model.trim="searchForm.groupType"
+                     clearable
+                     filterable
+                     placeholder="课程租类型">
+            <el-option v-for="(item, index) in courseListType"
+                       :key="index"
+                       :value="item.value"
+                       :label="item.label"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
           <el-select v-model.trim="searchForm.courseType"
                      clearable
                      filterable
@@ -100,8 +111,20 @@
                           type="daterange"
                           value-format="yyyy-MM-dd"
                           range-separator="至"
-                          start-placeholder="开始日期"
-                          end-placeholder="结束日期"
+                          start-placeholder="上课开始日期"
+                          end-placeholder="上课结束日期"
+                          :picker-options="{
+        firstDayOfWeek: 1
+    }"></el-date-picker>
+        </el-form-item>
+        <el-form-item>
+          <el-date-picker v-model.trim="searchForm.creatTimer"
+                          style="width:420px;"
+                          type="daterange"
+                          value-format="yyyy-MM-dd"
+                          range-separator="至"
+                          start-placeholder="创建开始日期"
+                          end-placeholder="创建结束日期"
                           :picker-options="{
         firstDayOfWeek: 1
     }"></el-date-picker>
@@ -133,7 +156,7 @@
                            label="课程编号"></el-table-column>
           <el-table-column align="center"
                            width="200px"
-                           label="时间">
+                           label="上课时间">
             <template slot-scope="scope">{{ scope.row.startClassTime ? scope.row.startClassTime.substr(0, 16) : '' }}-{{ scope.row.endClassTime ? scope.row.endClassTime.substr(11,5) : ''}}</template>
           </el-table-column>
           <!-- <el-table-column align="center" prop="groupName" label="乐团/VIP名"></el-table-column> -->
@@ -330,7 +353,7 @@ import {
 } from "@/api/buildTeam";
 import { getTeacherPersonalAttendanceDetail } from "@/api/teacherManager";
 import { getSchool } from "@/api/systemManage";
-import { courseType } from "@/utils/searchArray";
+import { courseType, courseListType } from "@/utils/searchArray";
 import studentRollCall from "./componentCourse/studentRollCall";
 import gpsLoction from "./componentCourse/gpsLocation";
 import studentWork from "./componentCourse/studentWork";
@@ -353,6 +376,7 @@ export default {
       timerVisible: false,
       courseVisible: false,
       courseType: courseType,
+      courseListType: courseListType,
       searchForm: {
         teachMode: null, // 教学模式
         organIdList: null,
@@ -363,7 +387,8 @@ export default {
         isCallNames: null, // 是否点名
         search: null, // 乐团名称 编号 vip课名称
         teacherIdList: null, // 老师编号
-        schoolId: null // 教学点编号
+        schoolId: null, // 教学点编号
+        creatTimer: []
       },
       tableList: [],
       searchLsit: [],
@@ -445,7 +470,10 @@ export default {
         search: searchForm.search || null,
         teacherIdList: searchForm.teacherIdList || null,
         isCallNames: searchForm.isCallNames,
-        schoolId: searchForm.schoolId || null
+        schoolId: searchForm.schoolId || null,
+        groupType: searchForm.groupType || null,
+        createStartDate: searchForm.creatTimer[0] || null,
+        createEndDate: searchForm.creatTimer[1] || null
       };
       let url = "/api-web/export/superFindCourseSchedules";
       const options = {
@@ -516,7 +544,10 @@ export default {
         search: searchForm.search || null,
         teacherIdList: searchForm.teacherIdList || null,
         isCallNames: searchForm.isCallNames,
-        schoolId: searchForm.schoolId || null
+        schoolId: searchForm.schoolId || null,
+        groupType: searchForm.groupType || null,
+        createStartDate: searchForm.creatTimer[0] || null,
+        createEndDate: searchForm.creatTimer[1] || null
       };
       superFindCourseSchedules(obj).then(res => {
         if (res.code == 200) {

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