浏览代码

Merge branch '11/24SAAS' into fine_music_score

lex 2 年之前
父节点
当前提交
da07c079b3
共有 38 个文件被更改,包括 522 次插入462 次删除
  1. 0 0
      dist/index.html
  2. 0 1
      dist/static/css/chunk-0a337859.9652ade2.css
  3. 0 1
      dist/static/css/chunk-0f416597.7701ecca.css
  4. 0 0
      dist/static/css/chunk-2ec95327.0af83a26.css
  5. 1 0
      dist/static/css/chunk-2faa4c9d.2642c66a.css
  6. 0 0
      dist/static/css/chunk-3d9a0f0a.77055714.css
  7. 0 0
      dist/static/css/chunk-515f9315.5e900bc0.css
  8. 0 0
      dist/static/css/chunk-59489162.d6dd91e0.css
  9. 0 0
      dist/static/css/chunk-745435df.cbade204.css
  10. 1 0
      dist/static/css/chunk-bae5a5a2.edb6a9b2.css
  11. 0 0
      dist/static/css/chunk-cb791008.b1ab2179.css
  12. 0 0
      dist/static/css/chunk-da843402.56e460c5.css
  13. 0 0
      dist/static/css/chunk-fb5adf2a.f1d14783.css
  14. 0 0
      dist/static/js/app.81c753fc.js
  15. 0 0
      dist/static/js/chunk-0a337859.4ebe46a1.js
  16. 0 0
      dist/static/js/chunk-0f416597.314468be.js
  17. 0 0
      dist/static/js/chunk-2c8c96be.e8d07e9e.js
  18. 0 0
      dist/static/js/chunk-2ec95327.89896077.js
  19. 0 0
      dist/static/js/chunk-2faa4c9d.bb33a614.js
  20. 0 0
      dist/static/js/chunk-3d9a0f0a.8941b2f3.js
  21. 0 0
      dist/static/js/chunk-59489162.16cd57c2.js
  22. 0 0
      dist/static/js/chunk-633e3ee8.38b365ee.js
  23. 0 0
      dist/static/js/chunk-745435df.a664b78a.js
  24. 0 0
      dist/static/js/chunk-bae5a5a2.6f899642.js
  25. 0 0
      dist/static/js/chunk-cb791008.5b63f0c0.js
  26. 1 1
      dist/static/js/chunk-da843402.9fdd043c.js
  27. 0 0
      dist/static/js/chunk-e6e81b56.d10b17a1.js
  28. 0 0
      dist/static/js/chunk-fb5adf2a.c8266906.js
  29. 1 0
      package.json
  30. 12 0
      patches/@core-player+playcore-hls+0.1.1.patch
  31. 9 0
      src/views/businessManager/shopManager/shopList.vue
  32. 20 0
      src/views/businessManager/shopManager/shopOperation.vue
  33. 1 0
      src/views/liveClassManager/liveClassDetail.vue
  34. 72 73
      src/views/liveClassManager/newLiveClass.vue
  35. 1 1
      src/views/resetTeaming/modals/payTeamCourse.vue
  36. 8 8
      src/views/teacherManager/teacherOperation/components/salarySet.vue
  37. 392 376
      src/views/teacherManager/teacherOperation/components/teacherOperation.vue
  38. 3 1
      src/views/teamDetail/components/modals/create-user-pay.vue

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


+ 0 - 1
dist/static/css/chunk-0a337859.9652ade2.css

@@ -1 +0,0 @@
-.alert[data-v-e9d0448e]{margin-bottom:22px}.shopImage[data-v-e9d0448e]{width:60px;height:60px}.shopDesc[data-v-e9d0448e]{max-height:70px;overflow:hidden}.el-select__tags .el-tag.el-tag--info.el-tag--small.el-tag--light[data-v-e9d0448e]{max-width:95px}.hiddenStart[data-v-e9d0448e] .el-form-item__label:before{content:""!important;position:absolute;color:transparent;margin-right:4px}

+ 0 - 1
dist/static/css/chunk-0f416597.7701ecca.css

@@ -1 +0,0 @@
-.hiddenStart[data-v-28bee070] .el-form-item__label:before{content:""!important;position:absolute;color:transparent;margin-right:4px}.alert[data-v-28bee070]{margin-bottom:22px}.el-row[data-v-28bee070]{margin-top:40px}.el-col[data-v-28bee070]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:20px;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-right:50%}.el-input-group[data-v-28bee070]{width:200px;margin:0 20px}[data-v-28bee070] .el-tree-node__content{height:40px!important}[data-v-28bee070] .avatar-uploader .el-upload{border:1px dashed #d9d9d9;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avatar-uploader .el-upload[data-v-28bee070]:hover{border-color:#409eff}.avatar-uploader-icon[data-v-28bee070]{font-size:28px;color:#8c939d;width:120px;height:120px;line-height:120px;text-align:center}.avatar[data-v-28bee070]{width:120px;height:120px;display:block}.el-select__tags .el-tag.el-tag--info.el-tag--small.el-tag--light[data-v-28bee070]{max-width:95px}.imageSize[data-v-28bee070]{color:red;line-height:1.5}

文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-2ec95327.0af83a26.css


+ 1 - 0
dist/static/css/chunk-2faa4c9d.2642c66a.css

@@ -0,0 +1 @@
+.alert[data-v-74318524]{margin-bottom:22px}.shopImage[data-v-74318524]{width:60px;height:60px}.shopDesc[data-v-74318524]{max-height:70px;overflow:hidden}.el-select__tags .el-tag.el-tag--info.el-tag--small.el-tag--light[data-v-74318524]{max-width:95px}.hiddenStart[data-v-74318524] .el-form-item__label:before{content:""!important;position:absolute;color:transparent;margin-right:4px}

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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-515f9315.5e900bc0.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-59489162.d6dd91e0.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-745435df.cbade204.css


+ 1 - 0
dist/static/css/chunk-bae5a5a2.edb6a9b2.css

@@ -0,0 +1 @@
+.hiddenStart[data-v-212cc3a3] .el-form-item__label:before{content:""!important;position:absolute;color:transparent;margin-right:4px}.alert[data-v-212cc3a3]{margin-bottom:22px}.el-row[data-v-212cc3a3]{margin-top:40px}.el-col[data-v-212cc3a3]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:20px;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-right:50%}.el-input-group[data-v-212cc3a3]{width:200px;margin:0 20px}[data-v-212cc3a3] .el-tree-node__content{height:40px!important}[data-v-212cc3a3] .avatar-uploader .el-upload{border:1px dashed #d9d9d9;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avatar-uploader .el-upload[data-v-212cc3a3]:hover{border-color:#409eff}.avatar-uploader-icon[data-v-212cc3a3]{font-size:28px;color:#8c939d;width:120px;height:120px;line-height:120px;text-align:center}.avatar[data-v-212cc3a3]{width:120px;height:120px;display:block}.el-select__tags .el-tag.el-tag--info.el-tag--small.el-tag--light[data-v-212cc3a3]{max-width:95px}.imageSize[data-v-212cc3a3]{color:red;line-height:1.5}

文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-cb791008.b1ab2179.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-da843402.56e460c5.css


文件差异内容过多而无法显示
+ 0 - 0
dist/static/css/chunk-fb5adf2a.f1d14783.css


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


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


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


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


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


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-3d9a0f0a.8941b2f3.js


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


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-633e3ee8.38b365ee.js


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


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


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


文件差异内容过多而无法显示
+ 1 - 1
dist/static/js/chunk-da843402.9fdd043c.js


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


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


+ 1 - 0
package.json

@@ -95,6 +95,7 @@
     "less": "^3.10.3",
     "less-loader": "^5.0.0",
     "mockjs": "1.0.1-beta3",
+    "patch-package": "^6.5.1",
     "runjs": "^4.3.2",
     "sass-loader": "^7.1.0",
     "script-ext-html-webpack-plugin": "2.1.3",

+ 12 - 0
patches/@core-player+playcore-hls+0.1.1.patch

@@ -0,0 +1,12 @@
+diff --git a/node_modules/@core-player/playcore-hls/src/constants.js b/node_modules/@core-player/playcore-hls/src/constants.js
+index 1606f11..6643f5e 100644
+--- a/node_modules/@core-player/playcore-hls/src/constants.js
++++ b/node_modules/@core-player/playcore-hls/src/constants.js
+@@ -1,4 +1,6 @@
+-export const HLS_SDK = 'https://cdn.jsdelivr.net/npm/hls.js@latest'
++// export const HLS_SDK = 'https://cdn.jsdelivr.net/npm/hls.js@latest'
++export const HLS_SDK = 'https://web.sdk.qcloud.com/player/tcplayer/release/v4.2.1/libs/hls.min.0.13.2m.js'
++
+ 
+ export const LOAD_SDK_TIMEOUT = 60 * 1000
+ 

+ 9 - 0
src/views/businessManager/shopManager/shopList.vue

@@ -422,6 +422,15 @@
           </el-table-column>
           <el-table-column
             align="center"
+            prop="organCostPrice"
+            label="分部成本(元)"
+          >
+            <template slot-scope="scope">
+              {{ scope.row.organCostPrice | moneyFormat }}
+            </template>
+          </el-table-column>
+          <el-table-column
+            align="center"
             cell-style="padding: 0"
             label="商品缩略图"
           >

+ 20 - 0
src/views/businessManager/shopManager/shopOperation.vue

@@ -235,6 +235,16 @@
             style="width: 220px"
           ></el-input>
         </el-form-item>
+        <el-form-item label="分部成本" prop="organCostPrice">
+          <el-input
+            type="number"
+            placeholder="请输入分部成本"
+            @mousewheel.native.prevent
+            :disabled="pageDisabled"
+            v-model.trim="form.organCostPrice"
+            style="width: 220px"
+          ></el-input>
+        </el-form-item>
         <el-alert
           title="销售渠道"
           :closable="false"
@@ -540,6 +550,7 @@ export default {
         marketPrice: null,
         discountPrice: null,
         groupPurchasePrice: null,
+        organCostPrice: null,
         clientShow: null,
         educationalShow: null,
         musicGroupShow: null,
@@ -651,6 +662,13 @@ export default {
             trigger: "blur"
           }
         ],
+        organCostPrice: [
+          {
+            required: true,
+            validator: validPrice,
+            trigger: "blur"
+          }
+        ],
         clientShow: [
           { required: true, message: "请选择学员是否展示", trigger: "change" }
         ],
@@ -849,6 +867,7 @@ export default {
           marketPrice: null,
           discountPrice: null,
           groupPurchasePrice: null,
+          organCostPrice: null,
           clientShow: null,
           educationalShow: null,
           musicGroupShow: null,
@@ -924,6 +943,7 @@ replacementShowOrganId: 6,7 */
               marketPrice: result.marketPrice,
               discountPrice: result.discountPrice,
               groupPurchasePrice: result.groupPurchasePrice,
+              organCostPrice: result.organCostPrice,
               clientShow: result.clientShow,
               educationalShow: result.educationalShow,
               musicGroupShow: result.musicGroupShow,

+ 1 - 0
src/views/liveClassManager/liveClassDetail.vue

@@ -246,6 +246,7 @@ export default {
   mounted() {
     this.getDetail();
     this.getList();
+    console.log(HLSCore, "HLSCore");
   },
   methods: {
     onCancel() {

+ 72 - 73
src/views/liveClassManager/newLiveClass.vue

@@ -12,6 +12,31 @@
         label-position="left"
       >
         <el-alert
+          title="直播设备配置"
+          type="info"
+          :closable="false"
+          style="margin-bottom: 20px"
+        ></el-alert>
+        <el-row class="row">
+          <el-form-item
+            class="mline"
+            label="直播设备"
+            prop="os"
+            label-width="130px"
+            :rules="[{ required: true, message: '请选择推广类型' }]"
+          >
+            <el-radio-group v-model="form.os" @input="changeOs">
+              <!-- value="rongCloud"></el-option>
+              <el-option label="腾讯云" value="tencentCloud" -->
+              <el-radio v-if="serviceProvider === 'rongCloud'" label="pc">web</el-radio>
+              <el-radio v-if="serviceProvider === 'tencentCloud'" label="client"
+                >客户端</el-radio
+              >
+              <el-radio label="mobile">手机</el-radio>
+            </el-radio-group>
+          </el-form-item>
+        </el-row>
+        <el-alert
           title="直播课信息"
           type="info"
           :closable="false"
@@ -83,9 +108,10 @@
             <el-select
               placeholder="请选择主讲人身份"
               v-model="form.clientType"
+              :disabled="form.os == 'mobile'"
               clearable
               @change="
-                value => {
+                (value) => {
                   form.speakerId = '';
                 }
               "
@@ -238,33 +264,7 @@
             </el-checkbox-group>
           </el-form-item>
         </el-row>
-        <el-alert
-          title="直播设备配置"
-          type="info"
-          :closable="false"
-          style="margin-bottom: 20px"
-        ></el-alert>
-        <el-row class="row">
-          <el-form-item
-            class="mline"
-            label="直播设备"
-            prop="os"
-            label-width="130px"
-            :rules="[{ required: true, message: '请选择推广类型' }]"
-          >
-            <el-radio-group v-model="form.os">
-              <!-- value="rongCloud"></el-option>
-              <el-option label="腾讯云" value="tencentCloud" -->
-              <el-radio v-if="serviceProvider === 'rongCloud'" label="pc"
-                >web</el-radio
-              >
-              <el-radio v-if="serviceProvider === 'tencentCloud'" label="client"
-                >客户端</el-radio
-              >
-              <el-radio label="mobile">手机</el-radio>
-            </el-radio-group>
-          </el-form-item>
-        </el-row>
+
         <el-alert
           title="观看权限配置"
           type="info"
@@ -289,8 +289,8 @@
           <el-form-item
             v-if="
               form.popularizeType == 'SCHOOL' ||
-                form.popularizeType == 'ORGAN' ||
-                form.popularizeType == 'TEAM'
+              form.popularizeType == 'ORGAN' ||
+              form.popularizeType == 'TEAM'
             "
             label="分部"
             prop="organIds"
@@ -461,7 +461,7 @@ import {
   createLiveBroadcast,
   resetLiveBroadcastRoomList,
   getRoomInfo,
-  sysTenantConfigAll
+  sysTenantConfigAll,
 } from "./api";
 import { queryByOrganId } from "@/api/systemManage";
 import { getTeamList } from "@/api/teamServer";
@@ -488,9 +488,9 @@ export default {
           whether_chat: 0,
           whether_video: 0,
           whether_mic: 0,
-          whether_view_shop_cart: 0
+          whether_view_shop_cart: 0,
         },
-        checkList: []
+        checkList: [],
       },
       serviceProvider: "tencentCloud",
       remoteLoading: false,
@@ -503,9 +503,9 @@ export default {
         firstDayOfWeek: 1,
         disabledDate(time) {
           return time.getTime() + 86400000 <= new Date().getTime();
-        }
+        },
       },
-      educationList: []
+      educationList: [],
     };
   },
   async mounted() {
@@ -513,15 +513,14 @@ export default {
 
     try {
       const findName = await sysTenantConfigAll({
-        group: "LIVE_CLIENT"
+        group: "LIVE_CLIENT",
       });
       if (findName.data && findName.data.length > 0) {
-        findName.data.forEach(item => {
+        findName.data.forEach((item) => {
           if (item.paramName == "live_client") {
             this.serviceProvider = item.paranValue;
 
-            this.form.os =
-              this.serviceProvider == "tencentCloud" ? "client" : "pc";
+            this.form.os = this.serviceProvider == "tencentCloud" ? "client" : "pc";
           }
         });
       }
@@ -574,6 +573,12 @@ export default {
     console.log(this.form, "form");
   },
   methods: {
+    changeOs(e) {
+      if (e == "mobile") {
+        this.form.clientType = "TEACHER";
+        this.form.speakerId = "";
+      }
+    },
     async getDetail() {
       try {
         const res = await getRoomInfo({ roomUid: this.$route.query.roomUid });
@@ -585,23 +590,19 @@ export default {
           schoolIds: [],
           teamIds: [],
           catIds: [],
-          studentIds: []
+          studentIds: [],
         };
         this.form.roomConfig = JSON.parse(res.data.roomConfig);
         if (res.data.popularizeOrgIds) {
-          this.form.organIds = res.data.popularizeOrgIds
-            .split(",")
-            .map(item => {
-              return item * 1;
-            });
+          this.form.organIds = res.data.popularizeOrgIds.split(",").map((item) => {
+            return item * 1;
+          });
         }
 
         if (res.data.popularizeSchoolIds) {
-          this.form.schoolIds = res.data.popularizeSchoolIds
-            .split(",")
-            .map(item => {
-              return item * 1;
-            });
+          this.form.schoolIds = res.data.popularizeSchoolIds.split(",").map((item) => {
+            return item * 1;
+          });
         }
 
         if (res.data.popularizeTeamIds) {
@@ -628,14 +629,14 @@ export default {
       this.$router.push("/liveClassManager");
     },
     changeTeacher(val) {
-      this.teacherList.forEach(item => {
+      this.teacherList.forEach((item) => {
         if (val == item.id) {
           this.form.speakerName = item.realName;
         }
       });
     },
     preLook() {
-      this.$refs.form.validate(flag => {
+      this.$refs.form.validate((flag) => {
         if (flag) {
           this.preLookVisible = true;
           console.log("预览", this.form);
@@ -662,25 +663,25 @@ export default {
           method: "get",
           headers: {
             Authorization: getToken(),
-            tenantId: getTenantId()
+            tenantId: getTenantId(),
           },
           params: {
             rows: 9999,
             search: query,
             lockFlag: 0,
-            demissionFlag: false
+            demissionFlag: false,
           },
-          url
+          url,
         };
         this.remoteLoading = true;
         // this.studentList = []
-        axios(options).then(res => {
+        axios(options).then((res) => {
           this.remoteLoading = false;
           let result = res.data;
           if (result.code == 200) {
             // Array.prototype.splice.apply(this.studentList, result.data.rows);
             if (result.data && result.data.rows.length > 0) {
-              result.data.rows.forEach(item => {
+              result.data.rows.forEach((item) => {
                 this.teacherList.unshift(item);
               });
               this.teacherList = this.deweight(this.teacherList, "phone");
@@ -707,25 +708,25 @@ export default {
           method: "get",
           headers: {
             Authorization: getToken(),
-            tenantId: getTenantId()
+            tenantId: getTenantId(),
           },
           params: {
             rows: 9999,
             search: query,
             lockFlag: 0,
-            demissionFlag: false
+            demissionFlag: false,
           },
-          url
+          url,
         };
         this.remoteLoading = true;
 
-        axios(options).then(res => {
+        axios(options).then((res) => {
           this.remoteLoading = false;
           let result = res.data;
           if (result.code == 200) {
             // Array.prototype.splice.apply(this.studentList, result.data.rows);
             if (result.data && result.data.rows.length > 0) {
-              result.data.rows.forEach(item => {
+              result.data.rows.forEach((item) => {
                 this.educationList.unshift(item);
               });
               this.educationList = this.deweight(this.educationList, "phone");
@@ -737,9 +738,9 @@ export default {
     },
     deweight(arr, key) {
       let res = [];
-      arr.forEach(item => {
+      arr.forEach((item) => {
         let list = [];
-        res.forEach(resitem => {
+        res.forEach((resitem) => {
           list.push(resitem[key]);
         });
         if (list.indexOf(item[key]) === -1) {
@@ -758,7 +759,7 @@ export default {
       this.form.popularizeOrgIds = this.form.organIds.join(",");
       this.form.popularizeSchoolIds = this.form.schoolIds.join(",");
       this.form.popularizeTeamIds = this.form.teamIds.join(",");
-      this.$refs.form.validate(async flag => {
+      this.$refs.form.validate(async (flag) => {
         if (!flag) return;
         if (this.$route.query.id) {
           // 修改
@@ -797,7 +798,7 @@ export default {
       if (this.form.popularizeType == "SCHOOL" && val && val.length > 0) {
         let organId = val.join(",");
         try {
-          await queryByOrganId({ organId }).then(res => {
+          await queryByOrganId({ organId }).then((res) => {
             if (res.code == 200) {
               this.cooperationList = res.data;
             }
@@ -809,7 +810,7 @@ export default {
       if (this.form.popularizeType == "TEAM" && val && val.length > 0) {
         let organId = val.join(",");
         try {
-          await getTeamList({ organId, page: 1, rows: 9999 }).then(res => {
+          await getTeamList({ organId, page: 1, rows: 9999 }).then((res) => {
             if (res.code == 200) {
               this.teamList = res.data.rows;
             }
@@ -818,8 +819,8 @@ export default {
           console.log(e);
         }
       }
-    }
-  }
+    },
+  },
 };
 </script>
 <style lang="scss" scoped>
@@ -906,15 +907,13 @@ export default {
       .dotWrap {
         width: 21px;
         height: 21px;
-        background: url("../../assets/images/icon_checkbox_default.png")
-          no-repeat center;
+        background: url("../../assets/images/icon_checkbox_default.png") no-repeat center;
         background-size: contain;
         margin-right: 8px;
         position: relative;
         overflow: hidden;
         &.checked {
-          background: url("../../assets/images/icon_checkbox.png") no-repeat
-            center;
+          background: url("../../assets/images/icon_checkbox.png") no-repeat center;
           background-size: contain;
         }
       }

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

@@ -218,7 +218,7 @@
               :controls="false"
               :precision="0"
               :min="0"
-              :disabled="true"
+              :disabled="false"
               placeholder="请输入原价"
             />
           </el-form-item>

+ 8 - 8
src/views/teacherManager/teacherOperation/components/salarySet.vue

@@ -280,7 +280,7 @@
               说明:老师是否结算课酬;
             </div>
           </el-form-item>
-          <el-form-item
+          <!-- <el-form-item
             label="生效日期"
             label-width="120px"
             prop="startDate"
@@ -298,7 +298,7 @@
             <div style="display: inline; color: red; padding-left: 10px">
               说明:本次调整只对生效日期之后(包含当天)且未结算的课程生效;
             </div>
-          </el-form-item>
+          </el-form-item> -->
         </el-form>
 
         <!--  v-permission="pageType == 'create' ? {child: 'teacherDefaultMusicGroupSalary/batchUpset', parent: 'teacherAdd/batchUpset'} : {child: 'teacherDefaultMusicGroupSalary/batchUpset', parent: 'teacherUpdate/batchUpset'}" -->
@@ -441,7 +441,7 @@ export default {
       ruleList: [],
       vipList: [],
       updateForm: {
-        startDate: null,
+        // startDate: null,
         isSettlementSalary: 1
       },
       rules: {},
@@ -737,18 +737,18 @@ export default {
                 return;
               }
               teacherSalaryBatchUpset({
-                teacherDefaultMusicGroupSalaries: params,
-                startDate: updateForm.startDate
+                teacherDefaultMusicGroupSalaries: params
+                // startDate: updateForm.startDate
               }).then(res => {
                 if (res.code == 200) {
                   // 判断输入的值是否正确
                   vipGroupSalarySet({
-                    teacherDefaultVipGroupSalaries: this.vipTable,
-                    startDate: updateForm.startDate
+                    teacherDefaultVipGroupSalaries: this.vipTable
+                    // startDate: updateForm.startDate
                   }).then(res => {
                     if (res.code == 200) {
                       PracticeGroupSalaryUpdate({
-                        startDate: updateForm.startDate,
+                        // startDate: updateForm.startDate,
                         teacherDefaultPracticeGroupSalaries: this.accompanyTable
                       }).then(res => {
                         if (res.code == 200) {

+ 392 - 376
src/views/teacherManager/teacherOperation/components/teacherOperation.vue

@@ -4,69 +4,70 @@
       <el-page-header @back="onCancel" :content="'老师' + (pageType == 'create' ? '新增' : '修改')"></el-page-header>
     </h2>-->
     <div class="infoWrap">
-      <div class="left">
-        <h4>基本信息</h4>
-        <el-form :model="topForm" :rules="rules" ref="form">
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                label="姓名"
-                prop="realName"
-                :label-width="formLabelWidth"
-              >
-                <el-input v-model.trim="topForm.realName"></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="姓名(备注)" :label-width="formLabelWidth">
-                <el-input v-model.trim="topForm.memo"></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                label="性别"
-                prop="gender"
-                :label-width="formLabelWidth"
-              >
-                <el-select v-model.trim="topForm.gender">
-                  <el-option label="男" :value="1"></el-option>
-                  <el-option label="女" :value="0"></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="出生日期" :label-width="formLabelWidth">
-                <el-date-picker
-                  v-model.trim="topForm.birthdate"
-                  type="date"
-                  :picker-options="{
-                    firstDayOfWeek: 1
-                  }"
-                  value-format="yyyy-MM-dd"
-                  placeholder="出生日期"
-                ></el-date-picker>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                label="入职日期"
-                prop="entryDate"
-                :label-width="formLabelWidth"
-              >
-                <el-date-picker
-                  v-model.trim="topForm.entryDate"
-                  type="date"
-                  :picker-options="pickerOptions2"
-                  value-format="yyyy-MM-dd"
-                  placeholder="入职日期"
-                ></el-date-picker>
-              </el-form-item>
-            </el-col>
-            <!--               <template #label>
+      <el-row :gutter="20">
+        <el-col :span="18" class="left">
+          <h4>基本信息</h4>
+          <el-form :model="topForm" :rules="rules" ref="form">
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  label="姓名"
+                  prop="realName"
+                  :label-width="formLabelWidth"
+                >
+                  <el-input v-model.trim="topForm.realName"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="姓名(备注)" :label-width="formLabelWidth">
+                  <el-input v-model.trim="topForm.memo"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  label="性别"
+                  prop="gender"
+                  :label-width="formLabelWidth"
+                >
+                  <el-select v-model.trim="topForm.gender">
+                    <el-option label="男" :value="1"></el-option>
+                    <el-option label="女" :value="0"></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="出生日期" :label-width="formLabelWidth">
+                  <el-date-picker
+                    v-model.trim="topForm.birthdate"
+                    type="date"
+                    :picker-options="{
+                      firstDayOfWeek: 1
+                    }"
+                    value-format="yyyy-MM-dd"
+                    placeholder="出生日期"
+                  ></el-date-picker>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  label="入职日期"
+                  prop="entryDate"
+                  :label-width="formLabelWidth"
+                >
+                  <el-date-picker
+                    v-model.trim="topForm.entryDate"
+                    type="date"
+                    :picker-options="pickerOptions2"
+                    value-format="yyyy-MM-dd"
+                    placeholder="入职日期"
+                  ></el-date-picker>
+                </el-form-item>
+              </el-col>
+              <!--               <template #label>
                   转正日期
                   <el-popover placement="top" width="280" trigger="hover">
 
@@ -103,295 +104,303 @@
                     </p>
                   </el-popover>
                 </template>-->
-            <el-col :span="12">
-              <el-form-item label="转正日期" :label-width="formLabelWidth">
-                <el-date-picker
-                  v-model="topForm.formalStaffDate"
-                  value-format="yyyy-MM-dd"
-                  type="date"
-                  placeholder="选择转正日期"
-                  :picker-options="pickerOptions"
-                >
-                </el-date-picker>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-alert class="alert" :closable="false" type="info">
-              <template #title>
-                <div>
-                  <p style="font-weight:600">老师课酬结算规则:</p>
-                  <p>1.入职日期之前的课程,按老师课酬的100%结算</p>
-                  <p>
-                    2.入职日期当天及以后的课程,按老师课酬*试用期课酬折算值结算
-                  </p>
-                  <p>3.转正日期当天及以后的课程,按老师课酬的100%结算</p>
-                  <p>
-                    4.入职日期和转正日期设置为同一天,则日期当天及以后的课程按老师课酬的100%结算
-                  </p>
-                </div>
-              </template>
-            </el-alert>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                :label="tenantIdBase == 28 ? '城市' : '所属分部'"
-                prop="organId"
-                :label-width="formLabelWidth"
-              >
-                <el-select
-                  v-model.trim="topForm.organId"
-                  filterable
-                  clearable
-                  :placeholder="tenantIdBase == 28 ? '城市' : '所属分部'"
-                  @change="switchOrgan"
+              <el-col :span="12">
+                <el-form-item label="转正日期" :label-width="formLabelWidth">
+                  <el-date-picker
+                    v-model="topForm.formalStaffDate"
+                    value-format="yyyy-MM-dd"
+                    type="date"
+                    placeholder="选择转正日期"
+                    :picker-options="pickerOptions"
+                  >
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-alert class="alert" :closable="false" type="info">
+                <template #title>
+                  <div>
+                    <p style="font-weight:600">老师课酬结算规则:</p>
+                    <p>1.入职日期之前的课程,按老师课酬的100%结算</p>
+                    <p>
+                      2.入职日期当天及以后的课程,按老师课酬*试用期课酬折算值结算
+                    </p>
+                    <p>3.转正日期当天及以后的课程,按老师课酬的100%结算</p>
+                    <p>
+                      4.入职日期和转正日期设置为同一天,则日期当天及以后的课程按老师课酬的100%结算
+                    </p>
+                  </div>
+                </template>
+              </el-alert>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  :label="tenantIdBase == 28 ? '城市' : '所属分部'"
+                  prop="organId"
+                  :label-width="formLabelWidth"
                 >
-                  <el-option
-                    v-for="item in branchList"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="流动范围" :label-width="formLabelWidth">
-                <select-all
-                  v-model.trim="topForm.flowOrganRange"
-                  filterable
-                  clearable
-                  multiple
-                  placeholder="流动范围"
+                  <el-select
+                    v-model.trim="topForm.organId"
+                    filterable
+                    clearable
+                    :placeholder="tenantIdBase == 28 ? '城市' : '所属分部'"
+                    @change="switchOrgan"
+                  >
+                    <el-option
+                      v-for="item in branchList"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="item.value"
+                    ></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="流动范围" :label-width="formLabelWidth">
+                  <select-all
+                    v-model.trim="topForm.flowOrganRange"
+                    filterable
+                    clearable
+                    multiple
+                    placeholder="流动范围"
+                  >
+                    <el-option
+                      v-for="item in branchList"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="item.value.toString()"
+                    ></el-option>
+                  </select-all>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  label="员工状态"
+                  prop="isProbationPeriod"
+                  :label-width="formLabelWidth"
                 >
-                  <el-option
-                    v-for="item in branchList"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value.toString()"
-                  ></el-option>
-                </select-all>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                label="员工状态"
-                prop="isProbationPeriod"
-                :label-width="formLabelWidth"
-              >
-                <el-select
-                  v-model.trim="topForm.isProbationPeriod"
-                  clearable
-                  filterable
-                  placeholder="员工状态"
-                >
-                  <el-option
-                    v-for="item in ProbationPeriodList"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="Number(item.value)"
-                  ></el-option>
-                  <!-- <el-option label="正式" :value="0"></el-option>
+                  <el-select
+                    v-model.trim="topForm.isProbationPeriod"
+                    clearable
+                    filterable
+                    placeholder="员工状态"
+                  >
+                    <el-option
+                      v-for="item in ProbationPeriodList"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="Number(item.value)"
+                    ></el-option>
+                    <!-- <el-option label="正式" :value="0"></el-option>
                   <el-option label="试用" :value="1"></el-option>
                   <el-option label="实习" :value="3"></el-option> -->
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12" v-if="pageType == 'update'">
-              <el-form-item label="教学点" :label-width="formLabelWidth">
-                <el-input disabled v-model.trim="teacherSchools"></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                label="工作类型"
-                prop="jobNature"
-                :label-width="formLabelWidth"
-              >
-                <el-select
-                  v-model.trim="topForm.jobNature"
-                  placeholder="工作类型"
-                  clearable
-                  filterable
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12" v-if="pageType == 'update'">
+                <el-form-item label="教学点" :label-width="formLabelWidth">
+                  <el-input disabled v-model.trim="teacherSchools"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  label="工作类型"
+                  prop="jobNature"
+                  :label-width="formLabelWidth"
                 >
-                  <el-option
-                    v-for="item in jobNature"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
+                  <el-select
+                    v-model.trim="topForm.jobNature"
+                    placeholder="工作类型"
+                    clearable
+                    filterable
+                  >
+                    <el-option
+                      v-for="item in jobNature"
+                      :key="item.value"
+                      :label="item.label"
+                      :value="item.value"
+                    ></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
 
-            <el-col :span="12" class="diSpan">
-              <el-tooltip placement="top" popper-class="mTooltip">
-                <div slot="content">
-                  「是」此老师可作为网管课老师;
-                  <br />「否」此老师不可作为网管课老师;
-                </div>
-                <!-- <img :src="imageIcon" class="micon el-tooltip" style="width:8px height:8px" alt /> -->
-                <i
-                  class="el-icon-question micon el-tooltip"
-                  style="font-size: 18px; color: #f56c6c"
-                ></i>
-              </el-tooltip>
+              <el-col :span="12" class="diSpan">
+                <el-tooltip placement="top" popper-class="mTooltip">
+                  <div slot="content">
+                    「是」此老师可作为网管课老师;
+                    <br />「否」此老师不可作为网管课老师;
+                  </div>
+                  <!-- <img :src="imageIcon" class="micon el-tooltip" style="width:8px height:8px" alt /> -->
+                  <i
+                    class="el-icon-question micon el-tooltip"
+                    style="font-size: 18px; color: #f56c6c"
+                  ></i>
+                </el-tooltip>
 
-              <el-form-item label="开放陪练" label-width="90px" class="course">
-                <el-select
-                  v-model.trim="topForm.isSupportExtraPracticeLesson"
-                  clearable
-                  filterable
-                  placeholder="开放陪练"
+                <el-form-item
+                  label="开放陪练"
+                  label-width="90px"
+                  class="course"
                 >
-                  <el-option label="是" :value="true"></el-option>
-                  <el-option label="否" :value="false"></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="老师简介" :label-width="formLabelWidth">
-                <el-input
-                  type="textarea"
-                  v-model.trim="topForm.introduction"
-                ></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="禁用云教练" label-width="90px" class="course">
-                <el-select
-                  v-model.trim="topForm.coursewareLimit"
-                  clearable
-                  filterable
-                  placeholder="开放陪练"
+                  <el-select
+                    v-model.trim="topForm.isSupportExtraPracticeLesson"
+                    clearable
+                    filterable
+                    placeholder="开放陪练"
+                  >
+                    <el-option label="是" :value="true"></el-option>
+                    <el-option label="否" :value="false"></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="老师简介" :label-width="formLabelWidth">
+                  <el-input
+                    type="textarea"
+                    v-model.trim="topForm.introduction"
+                  ></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item
+                  label="禁用云教练"
+                  label-width="90px"
+                  class="course"
                 >
-                  <el-option label="是" :value="true"></el-option>
-                  <el-option label="否" :value="false"></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <h4>资料学历</h4>
-          <el-row>
-            <el-col :span="12">
-              <!-- :rules="[{ required: true, message: '手机号不能为空',trigger: 'blur'},{pattern: /^1[3456789]\d{9}$/, message: '请输入正确的手机号',trigger: 'blur' }]" -->
-              <el-form-item
-                label="手机号"
-                prop="phone"
-                :label-width="formLabelWidth"
-              >
-                <el-input v-model.trim.number="topForm.phone"></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="毕业学校" :label-width="formLabelWidth">
-                <el-input v-model.trim="topForm.graduateSchool"></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="电子邮箱" :label-width="formLabelWidth">
-                <el-input v-model.trim="topForm.email"></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="最高学历" :label-width="formLabelWidth">
-                <!-- <el-input v-model.trim="topForm.educationBackground"></el-input> -->
-                <el-select
-                  v-model.trim="topForm.educationBackground"
-                  clearable
-                  filterable
-                  placeholder="最高学历"
+                  <el-select
+                    v-model.trim="topForm.coursewareLimit"
+                    clearable
+                    filterable
+                    placeholder="开放陪练"
+                  >
+                    <el-option label="是" :value="true"></el-option>
+                    <el-option label="否" :value="false"></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <h4>资料学历</h4>
+            <el-row>
+              <el-col :span="12">
+                <!-- :rules="[{ required: true, message: '手机号不能为空',trigger: 'blur'},{pattern: /^1[3456789]\d{9}$/, message: '请输入正确的手机号',trigger: 'blur' }]" -->
+                <el-form-item
+                  label="手机号"
+                  prop="phone"
+                  :label-width="formLabelWidth"
                 >
-                  <el-option label="初中" value="初中"></el-option>
-                  <el-option label="高中" value="高中"></el-option>
-                  <el-option label="大专" value="大专"></el-option>
-                  <el-option label="本科" value="本科"></el-option>
-                  <el-option label="硕士" value="硕士"></el-option>
-                  <el-option label="博士" value="博士"></el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item
-                label="专业技能"
-                :rules="[{ required: true }]"
-                :label-width="formLabelWidth"
-              >
-                <select-all
-                  :disabled="!topForm.organId"
-                  v-model="subjectIds"
-                  clearable
-                  placeholder="专业技能"
-                  multiple
+                  <el-input v-model.trim.number="topForm.phone"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="毕业学校" :label-width="formLabelWidth">
+                  <el-input v-model.trim="topForm.graduateSchool"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="电子邮箱" :label-width="formLabelWidth">
+                  <el-input v-model.trim="topForm.email"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="最高学历" :label-width="formLabelWidth">
+                  <!-- <el-input v-model.trim="topForm.educationBackground"></el-input> -->
+                  <el-select
+                    v-model.trim="topForm.educationBackground"
+                    clearable
+                    filterable
+                    placeholder="最高学历"
+                  >
+                    <el-option label="初中" value="初中"></el-option>
+                    <el-option label="高中" value="高中"></el-option>
+                    <el-option label="大专" value="大专"></el-option>
+                    <el-option label="本科" value="本科"></el-option>
+                    <el-option label="硕士" value="硕士"></el-option>
+                    <el-option label="博士" value="博士"></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item
+                  label="专业技能"
+                  :rules="[{ required: true }]"
+                  :label-width="formLabelWidth"
                 >
-                  <el-option
-                    v-for="item in subjectList"
-                    :key="item.id"
-                    :label="item.name"
-                    :value="item.id"
-                  ></el-option>
-                </select-all>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="职称" :label-width="formLabelWidth">
-                <el-input v-model.trim="topForm.technicalTitles"></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="证件类型" :label-width="formLabelWidth">
-                <el-input v-model.trim="topForm.certificateType"></el-input>
-                <!-- <el-select v-model.trim="topForm.certificateType" placeholder="证件类型">
+                  <select-all
+                    :disabled="!topForm.organId"
+                    v-model="subjectIds"
+                    clearable
+                    placeholder="专业技能"
+                    multiple
+                  >
+                    <el-option
+                      v-for="item in subjectList"
+                      :key="item.id"
+                      :label="item.name"
+                      :value="item.id"
+                    ></el-option>
+                  </select-all>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="职称" :label-width="formLabelWidth">
+                  <el-input v-model.trim="topForm.technicalTitles"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="证件类型" :label-width="formLabelWidth">
+                  <el-input v-model.trim="topForm.certificateType"></el-input>
+                  <!-- <el-select v-model.trim="topForm.certificateType" placeholder="证件类型">
                             <el-option label="身份证" value="身份证"></el-option>
                             <el-option label="护照" value="护照"></el-option>
                             <el-option label="港澳通行证" value="港澳通行证"></el-option>
                 </el-select>-->
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="证件号码" :label-width="formLabelWidth">
-                <el-input v-model.trim="topForm.certificateNum"></el-input>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label="离职日期" :label-width="formLabelWidth">
-                <el-date-picker
-                  v-model="topForm.demissionDate"
-                  value-format="yyyy-MM-dd"
-                  type="date"
-                  placeholder="选择离职日期"
-                >
-                </el-date-picker>
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="12">
-              <el-form-item label :label-width="formLabelWidth">
-                <!-- <el-input v-model.trim="topForm.certificateType"></el-input> -->
-                <el-checkbox
-                  v-model.trim="topForm.isSupportCourseScheduleRewardsRules"
-                  >是否适用阶梯奖励</el-checkbox
-                >
-              </el-form-item>
-            </el-col>
-          </el-row>
-          <!-- <el-row>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="证件号码" :label-width="formLabelWidth">
+                  <el-input v-model.trim="topForm.certificateNum"></el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label="离职日期" :label-width="formLabelWidth">
+                  <el-date-picker
+                    v-model="topForm.demissionDate"
+                    value-format="yyyy-MM-dd"
+                    type="date"
+                    placeholder="选择离职日期"
+                  >
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row>
+              <el-col :span="12">
+                <el-form-item label :label-width="formLabelWidth">
+                  <!-- <el-input v-model.trim="topForm.certificateType"></el-input> -->
+                  <el-checkbox
+                    v-model.trim="topForm.isSupportCourseScheduleRewardsRules"
+                    >是否适用阶梯奖励</el-checkbox
+                  >
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <!-- <el-row>
             <el-col :span="24">
               <p style="color: red; line-height: 1.3; margin-bottom: 10px;">入职日期之前课酬按100%计算;<br />
                 入职日期当天及以后课酬按80%计算;<br />
@@ -399,28 +408,28 @@
                 若入职日期和转正日期设置为同一天,则日期当天及以后课酬按100%计算;</p>
             </el-col>
           </el-row> -->
-          <el-form-item>
-            <el-button @click="onSubmit('form')" type="primary"
-              >立即{{ pageType == "create" ? "创建" : "修改" }}</el-button
-            >
-            <el-button @click="onReSet('form')">重置</el-button>
-          </el-form-item>
-        </el-form>
-      </div>
-      <div class="right">
-        <div class="teacherIcon">
-          <image-cropper
-            ref="imgCropper"
-            :options="cropperOptions"
-            :imgSize="2"
-            showSize
-            :imageUrl="topForm.avatar ? topForm.avatar : avatar1"
-            @crop-upload-success="handleSuccess"
-          />
-          <!-- <img v-if="topForm.avatar" key="avatar" :src="topForm.avatar" alt />
+            <el-form-item>
+              <el-button @click="onSubmit('form')" type="primary"
+                >立即{{ pageType == "create" ? "创建" : "修改" }}</el-button
+              >
+              <el-button @click="onReSet('form')">重置</el-button>
+            </el-form-item>
+          </el-form>
+        </el-col>
+        <el-col :span="6" class="right">
+          <div class="teacherIcon">
+            <image-cropper
+              ref="imgCropper"
+              :options="cropperOptions"
+              :imgSize="2"
+              showSize
+              :imageUrl="topForm.avatar ? topForm.avatar : avatar1"
+              @crop-upload-success="handleSuccess"
+            />
+            <!-- <img v-if="topForm.avatar" key="avatar" :src="topForm.avatar" alt />
           <img v-else key="avatar1" src="@/assets/images/base/woman.png" alt /> -->
-        </div>
-        <!-- <el-upload
+          </div>
+          <!-- <el-upload
           class="ivu-upload"
           :show-upload-list="false"
           :show-file-list="false"
@@ -432,8 +441,8 @@
           action="/api-web/uploadFile"
         >  -->
 
-        <!-- <el-button icon="ios-cloud-upload-outline" @click="$refs.imgCropper.$refs.upload.submit">修改头像</el-button> -->
-        <!--
+          <!-- <el-button icon="ios-cloud-upload-outline" @click="$refs.imgCropper.$refs.upload.submit">修改头像</el-button> -->
+          <!--
                v-if="pageType != 'create'"
             <el-button
             icon="ios-cloud-upload-outline"
@@ -444,13 +453,20 @@
             }"
             >新增头像</el-button
           > -->
-        <!-- </el-upload> -->
-        <p class="iconP">
-          推荐图片尺寸:200x200;
-          <br />支持的格式:jpg,jpeg,png,gif;
-          <br />*头像修改后,需要点击页面 <br />下方「立即修改」保存生效;
-        </p>
+          <!-- </el-upload> -->
+          <p class="iconP">
+            推荐图片尺寸:200x200;
+            <br />支持的格式:jpg,jpeg,png,gif;
+            <br />*头像修改后,需要点击页面 <br />下方「立即修改」保存生效;
+          </p>
+        </el-col>
+      </el-row>
+      <!-- <div class="left">
+        
       </div>
+      <div class="right">
+        
+      </div> -->
     </div>
   </div>
 </template>
@@ -898,21 +914,21 @@ export default {
 .infoWrap {
   margin-top: 20px;
 
-  display: flex;
-  flex-direction: row;
-  justify-content: flex-start;
+  // display: flex;
+  // flex-direction: row;
+  // justify-content: flex-start;
   .left {
-    max-width: 1000px;
-    width: 100%;
+    // max-width: 900px;
+    // width: 100%;
     h4 {
       margin-bottom: 20px;
     }
   }
   .right {
-    margin-left: 100px;
-    display: flex;
-    flex-direction: column;
-    align-items: center;
+    // margin-left: 100px;
+    // display: flex;
+    // flex-direction: column;
+    // align-items: center;
     // .teacherIcon {
     //   width: 150px;
     //   height: 150px;
@@ -936,7 +952,7 @@ export default {
   }
   .alert {
     margin: 0 0 20px 120px;
-    width: 855px;
+    width: auto;
   }
 }
 </style>

+ 3 - 1
src/views/teamDetail/components/modals/create-user-pay.vue

@@ -274,6 +274,7 @@ export default {
       );
       item.courseCurrentPrice = price;
       item.courseOriginalPrice = price;
+      item.unitPrice = active.unitPrice || 1;
       _[index] = item;
       this.eclass = [..._];
       this.syncAllMoney();
@@ -366,7 +367,8 @@ export default {
               courseType: item.courseType,
               courseTotalMinuties: item.remainMinutes,
               courseOriginalPrice: money,
-              courseCurrentPrice: money
+              courseCurrentPrice: money,
+              unitPrice: active.unitPrice || 1
             };
           });
           this.eclass = [..._];

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