Explorar o código

提交开发

1
mo %!s(int64=4) %!d(string=hai) anos
pai
achega
a6f61df81b

+ 10 - 1
src/main.js

@@ -66,7 +66,7 @@ class DonMessage {
 // 修改默认属性
 // 修改默认属性
 ElementUI.Dialog.props.closeOnClickModal.default = false;
 ElementUI.Dialog.props.closeOnClickModal.default = false;
 // ElementUI.Dialog.props.destroyOnClose.default = true;
 // ElementUI.Dialog.props.destroyOnClose.default = true;
-
+console.log(ElementUI.Input)
 // 全局修改选择如果value与label都为数字0则清空
 // 全局修改选择如果value与label都为数字0则清空
 const SelectValueWatch = ElementUI.Select.watch.value
 const SelectValueWatch = ElementUI.Select.watch.value
 ElementUI.Select.watch.value = function (newValue, oldValue) {
 ElementUI.Select.watch.value = function (newValue, oldValue) {
@@ -89,6 +89,15 @@ document.addEventListener('mousewheel', function () {
     document.activeElement.blur()
     document.activeElement.blur()
   }
   }
 })
 })
+document.addEventListener('keydown', function (event) {
+  console.log(document.activeElement,event.keyCode)
+  if(event.keyCode == 13){
+    setTimeout(res=>{
+      document.activeElement.blur()
+    },300)
+
+  }
+})
 
 
 /**
 /**
  * If you don't want to use mock-server
  * If you don't want to use mock-server

+ 18 - 3
src/views/teamDetail/components/modals/classroom-preview.vue

@@ -1,13 +1,14 @@
 <template>
 <template>
   <div>
   <div>
-    <el-form inline>
+    <!-- <el-form inline>
       <el-form-item label="主教老师:">{{coreTeacherName}}</el-form-item>
       <el-form-item label="主教老师:">{{coreTeacherName}}</el-form-item>
       <el-form-item label="助教老师:" v-if="assistantName">{{assistantName}}</el-form-item>
       <el-form-item label="助教老师:" v-if="assistantName">{{assistantName}}</el-form-item>
-    </el-form>
+    </el-form> -->
     <el-table
     <el-table
       :header-cell-style="{background:'#EDEEF0',color:'#444'}"
       :header-cell-style="{background:'#EDEEF0',color:'#444'}"
       :data="typelist"
       :data="typelist"
     >
     >
+
       <el-table-column
       <el-table-column
         label="课程类型"
         label="课程类型"
         prop="name"
         prop="name"
@@ -31,6 +32,14 @@
       :data="details"
       :data="details"
       max-height="300px"
       max-height="300px"
     >
     >
+             <el-table-column
+        label="主教老师"
+        prop="actualTeacherName"
+      ></el-table-column>
+           <el-table-column
+        label="助教老师"
+        prop="teachingTeacherNames"
+      ></el-table-column>
       <el-table-column
       <el-table-column
         label="课程类型"
         label="课程类型"
         prop="type"
         prop="type"
@@ -46,7 +55,13 @@
       <el-table-column
       <el-table-column
         label="开始时间"
         label="开始时间"
         prop="startClassTime"
         prop="startClassTime"
-      ></el-table-column>
+      >
+      <template slot-scope="scope">
+        <div>
+          {{scope.row.startClassTime | dateForMinFormat}}
+        </div>
+      </template>
+      </el-table-column>
       <el-table-column
       <el-table-column
         label="课程时长(分钟)"
         label="课程时长(分钟)"
         key="time"
         key="time"

+ 276 - 258
src/views/teamDetail/components/modals/classroom-setting-item.vue

@@ -10,212 +10,238 @@
         <el-radio :label="false">否</el-radio>
         <el-radio :label="false">否</el-radio>
       </el-radio-group>
       </el-radio-group>
     </el-form-item> -->
     </el-form-item> -->
-    <el-table v-if="form && form.cycle" :data="form.cycle">
-      <el-table-column prop="time" label="课程时长(分)" width="160">
+    <el-table v-if="form && form.cycle" :data="form.cycle" :show-header="false">
+      <el-table-column>
         <template slot-scope="scope">
         <template slot-scope="scope">
-          <el-form-item
-            :prop="'classs.' + type + '.cycle.' + scope.$index + '.time'"
-            :rules="[{ required: true, message: '请选择课程时长' }]"
-            inline-message
-          >
-            <el-select
-              v-model.trim="scope.row.time"
-              style="width: 100% !important"
-              placeholder="请选择课程时长"
-              clearable
-              :disabled="!!selectPrice"
-              @change="
-                (val) => {
-                  startTimeChange(scope, val);
-                }
+          <div>
+            <el-form-item
+              :prop="'classs.' + type + '.cycle.' + scope.$index + '.coreTeacher'"
+              label-width="88px"
+              :rules="[{ required: true, message: '请选择主教老师' }]"
+            >
+              <el-select
+                v-model.trim="scope.row.coreTeacher"
+                placeholder="请选择主教老师"
+                clearable
+                filterable
+              >
+              <!--     @change="changecoreTeacher" -->
+                <el-option
+                  v-for="(item, index) in teacherList"
+                  :key="index"
+                  :label="item.realName"
+                  :value="String(item.id)"
+                ></el-option>
+              </el-select>
+              <!-- <remote-search :commit="'setTeachers'" v-model="form.coreTeacher"  /> -->
+            </el-form-item>
+            <el-form-item
+              prop="assistant"
+              v-if="
+                activeType != 'HIGH' &&
+                activeType != 'HIGH_ONLINE' &&
+                activeType != 'MUSIC_NETWORK'
               "
               "
-              filterable
             >
             >
-              <el-option
-                v-for="(item, index) in pricesArray"
-                :key="index"
-                :disabled="
-                  surplustime + (parseFloat(scope.row.time) || 0) < item
+              <!-- <remote-search :commit="'setTeachers'" v-model="form.assistant"  :multiple='true'/> -->
+              <el-select
+                v-model.trim="scope.row.assistant"
+                placeholder="请选择助教老师"
+                filterable
+                clearable
+                multiple
+                collapse-tags
+              >
+                <el-option
+                  v-for="(item, index) in cooperationList"
+                  :key="index"
+                  :label="item.realName"
+                  :value="item.id"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item
+              :prop="'classs.' + type + '.cycle.' + scope.$index + '.time'"
+              :rules="[{ required: true, message: '请选择课程时长' }]"
+              inline-message
+            >
+              <el-select
+                v-model.trim="scope.row.time"
+                style="width: 180px !important"
+                placeholder="请选择课程时长"
+                clearable
+                :disabled="!!selectPrice"
+                @change="
+                  (val) => {
+                    startTimeChange(scope, val);
+                  }
                 "
                 "
-                :label="item"
-                :value="item"
+                filterable
               >
               >
-              </el-option>
-            </el-select>
-            <!-- <el-input disabled v-model="scope.row.time" placeholder="请输入课程时长"/> -->
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column label="预计课时数" width="160">
-        <template slot-scope="scope">
-          <!--   -->
-          <el-form-item
-            :prop="
-              'classs.' + type + '.cycle.' + scope.$index + '.expectCourseNum'
-            "
-            :rules="[
-              { required: true, message: '请输入预计课时数' },
-              { pattern: /^\+?[1-9]\d*$/, message: '请输入大于0的正整数' },
-            ]"
-            inline-message
-          >
-            <el-input
-              type="number"
-              v-model.trim="scope.row.expectCourseNum"
-              placeholder="请输入预计课数"
-              style="width: 130px !important"
-              @input="(val)=>{getUseTime(scope.row)}"
+                <el-option
+                  v-for="(item, index) in pricesArray"
+                  :key="index"
+                  :disabled="
+                    surplustime + (parseFloat(scope.row.time) || 0) < item
+                  "
+                  :label="item"
+                  :value="item"
+                >
+                </el-option>
+              </el-select>
+              <!-- <el-input disabled v-model="scope.row.time" placeholder="请输入课程时长"/> -->
+            </el-form-item>
+            <el-form-item
+              :prop="
+                'classs.' + type + '.cycle.' + scope.$index + '.expectCourseNum'
+              "
+              :rules="[
+                { required: true, message: '请输入预计课时数' },
+                { pattern: /^\+?[1-9]\d*$/, message: '请输入大于0的正整数' },
+              ]"
+              inline-message
             >
             >
-            </el-input>
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column prop="dayOfWeek" label="循环周期" width="160">
-        <template slot-scope="scope">
-          <el-form-item
-            inline-message
-            :rules="[{ required: true, message: '请选择循环周期' }]"
-            :prop="'classs.' + type + '.cycle.' + scope.$index + '.dayOfWeek'"
-          >
-            <el-select
-              v-model.trim="scope.row.dayOfWeek"
-              style="width: 100% !important"
-              placeholder="请选择循环周期"
-              clearable
-              filterable
-              @change="(val)=>{getUseTime(scope.row)}"
+              <!--  style="width: 130px !important" -->
+              <el-input
+                style="width: 180px !important"
+                type="number"
+                v-model.trim="scope.row.expectCourseNum"
+                placeholder="请输入预计课数"
+                @input="
+                  (val) => {
+                    getUseTime(scope.row);
+                  }
+                "
+              >
+              </el-input>
+            </el-form-item>
+            <el-form-item
+              inline-message
+              :rules="[{ required: true, message: '请选择循环周期' }]"
+              :prop="'classs.' + type + '.cycle.' + scope.$index + '.dayOfWeek'"
             >
             >
-              <el-option
-                v-for="(item, index) in weekDateList"
-                :key="index"
-                :label="item.label"
-                :value="item.value"
+              <el-select
+                v-model.trim="scope.row.dayOfWeek"
+                style="width: 180px !important"
+                placeholder="请选择循环周期"
+                clearable
+                filterable
+                @change="
+                  (val) => {
+                    getUseTime(scope.row);
+                  }
+                "
               >
               >
-              </el-option>
-            </el-select>
-          </el-form-item>
-        </template>
-      </el-table-column>
-
-      <el-table-column prop="startClassTime" label="开始时间" width="160">
-        <template slot-scope="scope">
-          <el-form-item
-            :prop="
-              'classs.' + type + '.cycle.' + scope.$index + '.startClassTime'
-            "
-            :rules="[{ required: true, message: '请选择开始时间' }]"
-            inline-message
-          >
-            <el-time-picker
-              style="width: 100% !important"
-              v-model.trim="scope.row.startClassTime"
-              format="HH:mm"
-              value-format="HH:mm"
-              placeholder="请选择时间"
-              @change="timeChange(scope.row)"
-              :picker-options="{
-                selectableRange: ['04:30:00 - 23:59:59'],
-              }"
+                <el-option
+                  v-for="(item, index) in weekDateList"
+                  :key="index"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item
+              :prop="
+                'classs.' + type + '.cycle.' + scope.$index + '.startClassTime'
+              "
+              :rules="[{ required: true, message: '请选择开始时间' }]"
+              inline-message
             >
             >
-              <!--   @change="startTimeChange(scope.row)" -->
-            </el-time-picker>
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column prop="endClassTime" label="结束时间" width="160">
-        <template slot-scope="scope">
-          <el-form-item
-            :prop="
-              'classs.' + type + '.cycle.' + scope.$index + '.endClassTime'
-            "
-            inline-message
-          >
-            <el-time-picker
-              style="width: 100% !important"
-              v-model.trim="scope.row.endClassTime"
-              format="HH:mm"
-              disabled
-              value-format="HH:mm"
-              placeholder="请选择时间"
-              :picker-options="{
-                selectableRange: [scope.row.startClassTime + ':00 - 23:59:59'],
-              }"
+              <el-time-picker
+                style="width: 180px !important"
+                v-model.trim="scope.row.startClassTime"
+                format="HH:mm"
+                value-format="HH:mm"
+                placeholder="请选择开始时间"
+                @change="timeChange(scope.row)"
+                :picker-options="{
+                  selectableRange: ['04:30:00 - 23:59:59'],
+                }"
+              >
+                <!--   @change="startTimeChange(scope.row)" -->
+              </el-time-picker>
+            </el-form-item>
+            <el-form-item
+              :prop="
+                'classs.' + type + '.cycle.' + scope.$index + '.endClassTime'
+              "
+              inline-message
             >
             >
-            </el-time-picker>
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column label="是否跳过节假日" width="160">
-        <template slot-scope="scope">
-          <el-form-item
-            :prop="'classs.' + type + '.cycle.' + scope.$index + '.holiday'"
-            :rules="[{ required: true, message: '请选择是否跳过节假日' }]"
-            inline-message
-          >
-            <el-select
-              v-model.trim="scope.row.holiday"
-              style="width: 100% !important"
-              placeholder="是否跳过节假日"
-              filterable
-              @change="holidayChange(scope.row)"
+              <el-time-picker
+                style="width: 180px !important"
+                v-model.trim="scope.row.endClassTime"
+                format="HH:mm"
+                disabled
+                value-format="HH:mm"
+                placeholder="请选择结束时间"
+                :picker-options="{
+                  selectableRange: [
+                    scope.row.startClassTime + ':00 - 23:59:59',
+                  ],
+                }"
+              >
+              </el-time-picker>
+            </el-form-item>
+            <el-form-item
+              :prop="'classs.' + type + '.cycle.' + scope.$index + '.holiday'"
+              :rules="[{ required: true, message: '请选择是否跳过节假日' }]"
+              inline-message
             >
             >
-              <el-option label="是" :value="true"></el-option>
-              <el-option label="否" :value="false"> </el-option>
-            </el-select>
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column label="排课起始时间" width="170">
-        <template slot-scope="scope">
-          <el-form-item
-            inline-message
-            :prop="'classs.' + type + '.cycle.' + scope.$index + '.startDate'"
-            :rules="[{ required: true, message: '请选择排课起始时间' }]"
-          >
-            <el-date-picker
-              v-model.trim="scope.row.startDate"
-              :picker-options="pickerOptions"
-              style="width: 100% !important"
-              type="date"
-              value-format="yyyy-MM-dd"
-              placeholder="选择日期"
-              @change="
-                (val) => {
-                  changeStartDate(val, scope.row);
-                }
-              "
+              <el-select
+                v-model.trim="scope.row.holiday"
+                style="width: 180px !important"
+                placeholder="是否跳过节假日"
+                filterable
+                @change="holidayChange(scope.row)"
+              >
+                <el-option label="是" :value="true"></el-option>
+                <el-option label="否" :value="false"> </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item
+              inline-message
+              :prop="'classs.' + type + '.cycle.' + scope.$index + '.startDate'"
+              :rules="[{ required: true, message: '请选择排课起始时间' }]"
             >
             >
-            </el-date-picker>
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column label="排课结束时间" width="170">
-        <template slot-scope="scope">
-          <el-form-item
-            inline-message
-            :prop="'classs.' + type + '.cycle.' + scope.$index + '.endDate'"
-            :rules="[{ required: true, message: '请选择排课结束时间' }]"
-          >
-            <el-date-picker
-              v-model.trim="scope.row.endDate"
-              :disabled="true"
-              :picker-options="pickerOptions"
-              style="width: 100% !important"
-              type="date"
-              value-format="yyyy-MM-dd"
-              placeholder="选择日期"
+              <el-date-picker
+                v-model.trim="scope.row.startDate"
+                :picker-options="pickerOptions"
+                style="width: 180px !important"
+                type="date"
+                value-format="yyyy-MM-dd"
+                placeholder="选择日期"
+                @change="
+                  (val) => {
+                    changeStartDate(val, scope.row);
+                  }
+                "
+              >
+              </el-date-picker>
+            </el-form-item>
+            <el-form-item
+              inline-message
+              :prop="'classs.' + type + '.cycle.' + scope.$index + '.endDate'"
+              :rules="[{ required: true, message: '请选择排课结束时间' }]"
             >
             >
-            </el-date-picker>
-          </el-form-item>
-        </template>
-      </el-table-column>
-      <el-table-column prop="date" width="50px">
-        <template slot-scope="scope">
-          <i
-            @click="remove(scope.$index, scope)"
-            v-if="form.cycle.length > 1"
-            class="close-icon el-icon-circle-close"
-          ></i>
+              <el-date-picker
+                v-model.trim="scope.row.endDate"
+                :disabled="true"
+                :picker-options="pickerOptions"
+                style="width: 180px !important"
+                type="date"
+                value-format="yyyy-MM-dd"
+                placeholder="选择日期"
+              >
+              </el-date-picker>
+            </el-form-item>
+
+            <i
+              @click="remove(scope.$index, scope)"
+              v-if="form.cycle.length > 1"
+              class="close-icon el-icon-circle-close"
+            ></i>
+          </div>
         </template>
         </template>
       </el-table-column>
       </el-table-column>
     </el-table>
     </el-table>
@@ -242,7 +268,7 @@ for (const item of classTimeList) {
 }
 }
 
 
 export default {
 export default {
-  props: ["form", "type", "surplustime", "prices", "selectPrice", "holidays"],
+  props: ["form", "type", "surplustime", "prices", "selectPrice", "holidays","teacherList","activeType",'cooperationList'],
   data() {
   data() {
     return {
     return {
       classTimeListByType,
       classTimeListByType,
@@ -279,29 +305,29 @@ export default {
   },
   },
   methods: {
   methods: {
     updateUseTime() {
     updateUseTime() {
-      let time = 0
-        for (const item of this.form.cycle) {
-          time += (item.time || 0) * (item.expectCourseNum || 0)
-        }
-        this.useTime = time
-        this.$emit('setUserTime', time, this.type)
+      let time = 0;
+      for (const item of this.form.cycle) {
+        time += (item.time || 0) * (item.expectCourseNum || 0);
+      }
+      this.useTime = time;
+      this.$emit("setUserTime", time, this.type);
     },
     },
     create() {
     create() {
-      if(this.surplustime<=this.useTime){
-        this.$message.error('已排课时长使用完毕,请修改预计课时数')
-        return
+      if (this.surplustime <= this.useTime) {
+        this.$message.error("已排课时长使用完毕,请修改预计课时数");
+        return;
       }
       }
       const initVal = {};
       const initVal = {};
       if (this.selectPrice) {
       if (this.selectPrice) {
         initVal.time = this.selectPrice;
         initVal.time = this.selectPrice;
       }
       }
       this.form.cycle.push(initVal);
       this.form.cycle.push(initVal);
-      this.updateUseTime()
+      this.updateUseTime();
     },
     },
 
 
     remove(index) {
     remove(index) {
       this.form.cycle.splice(index, 1);
       this.form.cycle.splice(index, 1);
-      this.updateUseTime()
+      this.updateUseTime();
     },
     },
     startTimeChange(item, val) {
     startTimeChange(item, val) {
       this.getUseTime(item.row);
       this.getUseTime(item.row);
@@ -316,7 +342,7 @@ export default {
         this.$set(item.row, "endClassTime", "");
         this.$set(item.row, "endClassTime", "");
       }
       }
       if (val) {
       if (val) {
-      let activeTime = val * Math.max((item.row.expectCourseNum || 0), 0)
+        let activeTime = val * Math.max(item.row.expectCourseNum || 0, 0);
         this.$set(
         this.$set(
           item.row,
           item.row,
           "expectCourseNum",
           "expectCourseNum",
@@ -339,81 +365,72 @@ export default {
       } else {
       } else {
         this.$set(item, "endClassTime", "");
         this.$set(item, "endClassTime", "");
       }
       }
-      this.updateUseTime()
+      this.updateUseTime();
     },
     },
     holidayChange(row) {
     holidayChange(row) {
-      this.updateEndTime(row)
+      this.updateEndTime(row);
     },
     },
     getUseTime(row) {
     getUseTime(row) {
-      this.updateEndTime(row)
+      this.updateEndTime(row);
       this.useTime = 0;
       this.useTime = 0;
       this.form.cycle.forEach((item) => {
       this.form.cycle.forEach((item) => {
         this.useTime +=
         this.useTime +=
           (item.expectCourseNum ? parseInt(item.expectCourseNum) : 0) *
           (item.expectCourseNum ? parseInt(item.expectCourseNum) : 0) *
           parseInt(item.time);
           parseInt(item.time);
       });
       });
-      this.updateUseTime()
-    //  this.$emit('setUserTime', this.useTime, this.type)
+      this.updateUseTime();
+      //  this.$emit('setUserTime', this.useTime, this.type)
     },
     },
     addData(startDate, dayOfWeek) {
     addData(startDate, dayOfWeek) {
       let num;
       let num;
-      let dayjs = this.$helpers.dayjs
+      let dayjs = this.$helpers.dayjs;
       let date = dayjs(startDate).toDate();
       let date = dayjs(startDate).toDate();
       dayOfWeek - date.getDay() >= 0
       dayOfWeek - date.getDay() >= 0
         ? (num = dayOfWeek - date.getDay())
         ? (num = dayOfWeek - date.getDay())
         : (num = dayOfWeek - date.getDay() + 7);
         : (num = dayOfWeek - date.getDay() + 7);
-      return num
+      return num;
     },
     },
     updateEndTime(row) {
     updateEndTime(row) {
-      console.log(row)
-        if (row.dayOfWeek && row.startDate && typeof row.holiday === 'boolean') {
-          // const num = this.addData(row.startDate, row.dayOfWeek)
-          // const week = dayjs(row.startDate).get('day') == 0 ? 7 : dayjs(row.startDate).get('day')
-          const selectWeek = row.dayOfWeek == 7 ? 0 : row.dayOfWeek
-          let exp = Math.max(row.expectCourseNum, 0)
-          let end = dayjs(row.startDate)
-          // console.log(selectWeek, end.get('day'))
-          if (row.holiday) {
-            while (exp > 0) {
-              if (selectWeek == end.get('day') && !this.holidays.includes(end.format('YYYY-MM-DD'))) {
-                exp--
-              }
-              end = end.add(1, 'day')
-              if (exp === 0) {
-                end = end.subtract(1, 'day')
-              }
+      console.log(row);
+      if (row.dayOfWeek && row.startDate && typeof row.holiday === "boolean") {
+        // const num = this.addData(row.startDate, row.dayOfWeek)
+        // const week = dayjs(row.startDate).get('day') == 0 ? 7 : dayjs(row.startDate).get('day')
+        const selectWeek = row.dayOfWeek == 7 ? 0 : row.dayOfWeek;
+        let exp = Math.max(row.expectCourseNum, 0);
+        let end = dayjs(row.startDate);
+        // console.log(selectWeek, end.get('day'))
+        if (row.holiday) {
+          while (exp > 0) {
+            if (
+              selectWeek == end.get("day") &&
+              !this.holidays.includes(end.format("YYYY-MM-DD"))
+            ) {
+              exp--;
             }
             }
-          } else {
-            while (exp > 0) {
-              if (selectWeek == end.get('day')) {
-                exp--
-              }
-              end = end.add(1, 'day')
-              if (exp === 0) {
-                end = end.subtract(1, 'day')
-              }
+            end = end.add(1, "day");
+            if (exp === 0) {
+              end = end.subtract(1, "day");
             }
             }
           }
           }
-          const enumd = this.addData(end.format('YYYY-MM-DD'), row.dayOfWeek)
-          console.log(enumd)
-          // end = end.add(enumd, 'day')
-          this.$set(
-          row,
-          "endDate",
-          end.format('YYYY-MM-DD')
-        );
+        } else {
+          while (exp > 0) {
+            if (selectWeek == end.get("day")) {
+              exp--;
+            }
+            end = end.add(1, "day");
+            if (exp === 0) {
+              end = end.subtract(1, "day");
+            }
+          }
+        }
+        const enumd = this.addData(end.format("YYYY-MM-DD"), row.dayOfWeek);
+        console.log(enumd);
+        // end = end.add(enumd, 'day')
+        this.$set(row, "endDate", end.format("YYYY-MM-DD"));
       } else {
       } else {
-        this.$set(
-          row,
-          "endDate",
-          ''
-        );
+        this.$set(row, "endDate", "");
       }
       }
 
 
-
-
-
-
       // if (row.dayOfWeek && row.startDate && typeof row.holiday === 'boolean') {
       // if (row.dayOfWeek && row.startDate && typeof row.holiday === 'boolean') {
       //     // const num = this.addData(row.startDate, row.dayOfWeek)
       //     // const num = this.addData(row.startDate, row.dayOfWeek)
       //     const week = dayjs(row.startDate).get('day') == 0 ? 7 : dayjs(row.startDate).get('day')
       //     const week = dayjs(row.startDate).get('day') == 0 ? 7 : dayjs(row.startDate).get('day')
@@ -443,8 +460,8 @@ export default {
       // }
       // }
     },
     },
     changeStartDate(val, row) {
     changeStartDate(val, row) {
-      this.updateEndTime(row)
-      this.updateUseTime()
+      this.updateEndTime(row);
+      this.updateUseTime();
     },
     },
   },
   },
 };
 };
@@ -454,5 +471,6 @@ export default {
   cursor: pointer;
   cursor: pointer;
   font-size: 16px;
   font-size: 16px;
   margin-bottom: 24px;
   margin-bottom: 24px;
+  line-height: 40px;
 }
 }
 </style>
 </style>

+ 27 - 8
src/views/teamDetail/components/modals/classroom-setting.vue

@@ -21,7 +21,7 @@
           ></el-input>
           ></el-input>
         </el-form-item>
         </el-form-item>
       </el-row>
       </el-row>
-      <el-form-item
+      <!-- <el-form-item
         label="主教老师"
         label="主教老师"
         prop="coreTeacher"
         prop="coreTeacher"
         label-width="88px"
         label-width="88px"
@@ -41,9 +41,9 @@
             :value="String(item.id)"
             :value="String(item.id)"
           ></el-option>
           ></el-option>
         </el-select>
         </el-select>
-        <!-- <remote-search :commit="'setTeachers'" v-model="form.coreTeacher"  /> -->
-      </el-form-item>
-      <el-form-item
+        <remote-search :commit="'setTeachers'" v-model="form.coreTeacher"  />
+     </el-form-item> -->
+      <!-- <el-form-item
         label="助教老师"
         label="助教老师"
         prop="assistant"
         prop="assistant"
         v-if="
         v-if="
@@ -52,7 +52,7 @@
           activeType != 'MUSIC_NETWORK'
           activeType != 'MUSIC_NETWORK'
         "
         "
       >
       >
-        <!-- <remote-search :commit="'setTeachers'" v-model="form.assistant"  :multiple='true'/> -->
+
         <el-select
         <el-select
           v-model.trim="form.assistant"
           v-model.trim="form.assistant"
           placeholder="请选择助教老师"
           placeholder="请选择助教老师"
@@ -67,7 +67,7 @@
             :value="item.id"
             :value="item.id"
           ></el-option>
           ></el-option>
         </el-select>
         </el-select>
-      </el-form-item>
+      </el-form-item> -->
       <el-form-item
       <el-form-item
         v-if="!!Object.keys(allClasss).length"
         v-if="!!Object.keys(allClasss).length"
         style="display: block"
         style="display: block"
@@ -102,6 +102,9 @@
           <courseItem
           <courseItem
             :surplustime="surplustime[key]"
             :surplustime="surplustime[key]"
             @setUserTime="setUserTime"
             @setUserTime="setUserTime"
+             :teacherList="teacherList"
+             :activeType="activeType"
+              :cooperationList="cooperationList"
             :type="key"
             :type="key"
             :form="item"
             :form="item"
             :prices="prices"
             :prices="prices"
@@ -121,7 +124,7 @@
       title="班级预览"
       title="班级预览"
       :visible.sync="previewVisible"
       :visible.sync="previewVisible"
       append-to-body
       append-to-body
-      width="700px"
+      width="900px"
     >
     >
       <classrome-preview
       <classrome-preview
         :types="form.classs"
         :types="form.classs"
@@ -392,7 +395,7 @@ export default {
                 students: this.studentSubmitedData?.seleched,
                 students: this.studentSubmitedData?.seleched,
                 courseTimes: item.cycle.length,
                 courseTimes: item.cycle.length,
                 courseTimeDtoList: item.cycle.map((_) => ({
                 courseTimeDtoList: item.cycle.map((_) => ({
-
+                  classGroupTeacherMapperList:this.formatTeacher(_),
                   courseType: key,
                   courseType: key,
                   dayOfWeek: _.dayOfWeek,
                   dayOfWeek: _.dayOfWeek,
                   endClassTime: _.endClassTime,
                   endClassTime: _.endClassTime,
@@ -489,6 +492,22 @@ export default {
       // })
       // })
 
 
     },
     },
+    formatTeacher(row){
+      console.log(row)
+    let arr = []
+      if(row.coreTeacher){
+           let obj ={}
+        obj.teacherRole = 'BISHOP'
+        obj.userId = row.coreTeacher
+        arr.push(obj)
+      }
+      if(row.assistant?.length>0){
+        row.assistant.forEach(ass=>{
+          arr.push({teacherRole:'TEACHING',userId:ass})
+        })
+      }
+      return arr
+    }
   },
   },
   // watch:{
   // watch:{
   //   musicSurplus(){
   //   musicSurplus(){

+ 3 - 3
src/views/teamDetail/components/resetClass.vue

@@ -118,9 +118,9 @@
                 <el-button
                 <el-button
                   type="text"
                   type="text"
                   v-if="
                   v-if="
-                    permission('classGroup/classGroupUpdate') ||
+                   ( permission('classGroup/classGroupUpdate') ||
                     permission('classGroup/revisionClassGroup') ||
                     permission('classGroup/revisionClassGroup') ||
-                    permission('classGroup/revisionAddClassGroup')
+                    permission('classGroup/revisionAddClassGroup'))&&scope.row.studentNum>0
                   "
                   "
                   @click="classAdjustment(scope.row)"
                   @click="classAdjustment(scope.row)"
                   >排课</el-button
                   >排课</el-button
@@ -232,7 +232,7 @@
     <!-- 老师以及课程设置 -->
     <!-- 老师以及课程设置 -->
     <el-dialog
     <el-dialog
       title="班级排课"
       title="班级排课"
-      width="1400px"
+      width="1200px"
       :visible.sync="infoVisible"
       :visible.sync="infoVisible"
       :modal-append-to-body="false"
       :modal-append-to-body="false"
     >
     >