Kaynağa Gözat

Merge branch 'master' of https://git.cocorobo.cn/CocoRoboLabs/pbl-teacher-table

lsc 2 yıl önce
ebeveyn
işleme
04faa5780b
1 değiştirilmiş dosya ile 202 ekleme ve 150 silme
  1. 202 150
      src/components/pages/addCourse.vue

+ 202 - 150
src/components/pages/addCourse.vue

@@ -96,47 +96,39 @@
               <div>上传完成</div>
             </div>
           </div>
-
-          <div
-            style="
-              width: calc(100% - 17% - 25px);
-              background: #fff;
-              border-radius: 10px;
-              min-height: 550px;
-              min-width: 800px;
-            "
-            v-if="this.steps == 1"
-          >
-            <div class="basic_box">
-              <div class="big_box">
-                <div class="left_first">
-                  <div>
-                    <div class="bInfo_title">
-                      <span style="color: red">*</span>项目名称
-                    </div>
-                    <div style="display: flex">
-                      <img
-                        src="../../assets/icon/projectName.png"
-                        alt=""
-                        style="margin-right: 8px"
-                      />
-                      <input
-                        type="text"
-                        placeholder="请输入项目名称"
-                        class="binfo_input"
-                        v-model="courseName"
-                      />
-                    </div>
-                  </div>
-                  <div class="both">
-                    <div class="choose">
-                      <div
-                        class="all_choose"
-                        v-for="(item, index) in CourseType[0]"
-                        :key="index"
-                      >
-                        <span>{{ item.name }}</span>
-                        <el-select
+          <div style="width: 100%" v-if="this.steps == 1">
+            <div class="whiteBg">
+              <div class="basic_box">
+                <div class="big_box">
+                  <div class="left_first">
+                    <div>
+                      <div>
+                        <div class="bInfo_title">
+                          <span style="color: red">*</span>项目名称
+                        </div>
+                        <div style="display: flex">
+                          <img
+                            src="../../assets/icon/projectName.png"
+                            alt=""
+                            style="margin-right: 8px"
+                          />
+                          <input
+                            type="text"
+                            placeholder="请输入项目名称"
+                            class="binfo_input"
+                            v-model="courseName"
+                          />
+                        </div>
+                      </div>
+                      <div class="both">
+                        <div class="choose">
+                          <div
+                            class="all_choose"
+                            v-for="(item, index) in CourseType[0]"
+                            :key="index"
+                          >
+                            <span>{{ item.name }}</span>
+                            <!-- <el-select
                           v-model="courseTypeId[item.id]"
                           placeholder="请选择"
                           @change="getTypeName"
@@ -148,96 +140,117 @@
                             :value="item1.id"
                           >
                           </el-option>
-                        </el-select>
-                      </div>
-                    </div>
-                    <div class="right_first">
-                      <div style="margin-top: 8.5%">
-                        <div style="flex: 0.5 1 0%; margin: 0 20px 0 0">
-                          <div
-                            class="bInfo_title"
-                            style="margin-top: 0 !important"
-                          >
-                            <span style="color: red">*</span>课程封面
-                          </div>
-
-                          <el-upload
-                            :class="{ disUoloadSty: noneBtnImg }"
-                            class="upCss"
-                            action="#"
-                            list-type="picture"
-                            v-loading="uploadLoading1"
-                            :http-request="beforeUpload1"
-                            ref="upload1"
-                            :on-preview="handlePictureCardPreview"
-                            :on-remove="handle_remove1"
-                            :show-file-list="true"
-                            :file-list="cover"
-                            accept="image/*"
-                            :limit="1"
-                            :on-exceed="onExceed"
-                          >
-                            <i class="el-icon-plus"></i>
-                          </el-upload>
-                        </div>
-                        <div
-                          style="
-                            display: flex;
-                            flex-direction: row;
-                            flex-wrap: nowrap;
-                          "
-                        >
-                          <div style="flex: 0.5 1 0%; margin-top: 30px">
-                            <div class="bInfo_title">
-                              <span style="color: red">*</span>选择项目成员
-                            </div>
-                            <div
-                              class="addPeople"
-                              @click="addPP"
-                              v-if="this.checkboxList.length == 0"
-                            >
-                              添加成员
-                            </div>
-                            <div class="addPeople" @click="addPP" v-else>
-                              已添加,点击查看
-                            </div>
-                          </div>
-                          <div style="flex: 0.5 1 0%; margin-top: 30px">
-                            <div class="bInfo_title">协同编辑</div>
-                            <div
-                              class="addPeople"
-                              @click="dialogVisible4 = true"
-                              style="background: #6b92c9"
-                            >
-                              添加协同成员
-                            </div>
+                        </el-select> -->
+                            <el-checkbox-group v-model="courseTypeId">
+                              <el-checkbox
+                                v-for="item1 in CourseTypeJson[item.id]"
+                                :key="item1.id"
+                                :label="item1.id"
+                                >{{ item1.name }}</el-checkbox
+                              >
+                            </el-checkbox-group>
                           </div>
                         </div>
                       </div>
                     </div>
                   </div>
-                  <div>
-                    <div class="bInfo_title">
-                      <span style="color: red">*</span>简要描述
-                    </div>
-                    <div>
-                      <textarea
-                        rows="8"
-                        class="binfo_input"
-                        cols=""
-                        v-model="courseText"
-                      ></textarea>
+                </div>
+              </div>
+            </div>
+            <div class="whiteBg" style="border-radius: 0">
+              <div class="right_first">
+                <div class="right_title">上传封面与成员</div>
+
+                <div
+                  style="
+                    padding: 0 0 50px 0;
+                    display: flex;
+                    align-items: baseline;
+                    justify-content: flex-start;
+                  "
+                >
+                  <div style="margin: 45px 0px 0px 80px">
+                    <div class="bInfo_title" style="margin-top: 0 !important">
+                      <span style="color: red">*</span>课程封面
                     </div>
+
+                    <el-upload
+                      :class="{ disUoloadSty: noneBtnImg }"
+                      class="upCss"
+                      action="#"
+                      list-type="picture"
+                      v-loading="uploadLoading1"
+                      :http-request="beforeUpload1"
+                      ref="upload1"
+                      :on-preview="handlePictureCardPreview"
+                      :on-remove="handle_remove1"
+                      :show-file-list="true"
+                      :file-list="cover"
+                      accept="image/*"
+                      :limit="1"
+                      :on-exceed="onExceed"
+                    >
+                      <i class="el-icon-plus"></i>
+                    </el-upload>
                   </div>
-                  <el-switch
-                    v-model="isTeacherSee"
-                    active-text="允许给其他老师查看"
-                    style="margin: 40px 0 0 25px; padding-bottom: 30px"
+                  <div
+                    style="
+                      display: flex;
+                      flex-flow: row nowrap;
+                      flex-direction: row;
+                      align-items: baseline; ;
+                    "
                   >
-                  </el-switch>
+                    <div style="margin: 0 80px">
+                      <div class="bInfo_title">
+                        <span style="color: red">*</span>选择项目成员
+                      </div>
+                      <div
+                        class="addPeople"
+                        @click="addPP"
+                        v-if="this.checkboxList.length == 0"
+                      >
+                        添加成员
+                      </div>
+                      <div class="addPeople" @click="addPP" v-else>
+                        已添加,点击查看
+                      </div>
+                    </div>
+                    <div style="flex: 0.5 1 0%; margin-top: 30px">
+                      <div class="bInfo_title">协同编辑</div>
+                      <div
+                        class="addPeople"
+                        @click="dialogVisible4 = true"
+                        style="background: #6b92c9"
+                      >
+                        添加协同成员
+                      </div>
+                    </div>
+                  </div>
                 </div>
               </div>
             </div>
+            <div class="whiteBg" style="border-radius: 0; margin-top: 15px">
+              <div style="width: 55%; padding: 10px 0 10px 80px">
+                <div class="bInfo_title">
+                  <span style="color: red">*</span>简要描述
+                </div>
+                <div>
+                  <textarea
+                    rows="8"
+                    class="binfo_input"
+                    cols=""
+                    v-model="courseText"
+                  ></textarea>
+                </div>
+              </div>
+              <el-switch
+                v-model="isTeacherSee"
+                active-text="允许给其他老师查看"
+                style="margin: 30px 0px 10px 110px; padding-bottom: 30px"
+              >
+              </el-switch>
+            </div>
           </div>
           <div
             style="
@@ -409,6 +422,34 @@
                   >
                   </el-switch>
                 </div>
+                <div
+                  style="
+                    display: flex;
+                    margin: 23px 0;
+                    flex-direction: row;
+                    justify-content: flex-start;
+                    align-items: center;
+                  "
+                >
+                  <div
+                    style="
+                      font-size: 1.5em;
+                      font-weight: bold;
+                      margin-top: 15px;
+                    "
+                  >
+                    添加提问
+                  </div>
+                  <div class="line"></div>
+                </div>
+                <div>
+                  <input
+                    type="text"
+                    placeholder="请输入问题"
+                    class="binfo_input"
+                    v-model="unitJson[unitIndex].question"
+                  />
+                </div>
                 <div
                   style="
                     display: flex;
@@ -1004,6 +1045,7 @@ export default {
               chapterid: this.guid(),
               title: "",
               courseName: "",
+              question: "",
               chapterData: [],
               toolChoose: [],
               askCount: 1,
@@ -1030,7 +1072,7 @@ export default {
       cTemplate: "",
       CourseType: [],
       CourseTypeJson: {},
-      courseTypeId: {},
+      courseTypeId: [],
       courseTypeSon: [],
       clearArray: [],
     };
@@ -1113,18 +1155,9 @@ export default {
           this.courseName != "" &&
           this.courseText != "" &&
           this.cover.length != 0 &&
+          this.courseTypeId.length != 0 &&
           this.checkboxList.length != 0
         ) {
-          for (var i = 0; i < this.CourseType[0].length; i++) {
-            if (this.courseTypeId[this.CourseType[0][i].id] != "") {
-              this.courseTypeSon.push(
-                this.courseTypeId[this.CourseType[0][i].id]
-              );
-            } else {
-              this.$message.error("请选择分类");
-              return;
-            }
-          }
           this.steps = 2;
         } else {
           this.$message.error("请将信息填写完整");
@@ -1147,18 +1180,9 @@ export default {
           this.courseName != "" &&
           this.courseText != "" &&
           this.cover.length != 0 &&
+          this.courseTypeId.length != 0 &&
           this.checkboxList.length != 0
         ) {
-          for (var i = 0; i < this.CourseType[0].length; i++) {
-            if (this.courseTypeId[this.CourseType[0][i].id] != "") {
-              this.courseTypeSon.push(
-                this.courseTypeId[this.CourseType[0][i].id]
-              );
-            } else {
-              this.$message.error("请选择分类");
-              return;
-            }
-          }
           this.steps++;
         } else {
           this.$message.error("请将信息填写完整");
@@ -1442,6 +1466,7 @@ export default {
             chapterid: this.guid(),
             title: "",
             courseName: "",
+            question: "",
             chapterData: [],
             toolChoose: [],
             askCount: 1,
@@ -1535,7 +1560,7 @@ export default {
           see: this.isTeacherSee == true ? 0 : 1,
           chapters: JSON.stringify(this.unitJson),
           template: this.cTemplate,
-          courseType: JSON.stringify(this.courseTypeSon),
+          courseType: JSON.stringify(this.courseTypeId),
         },
       ];
       this.ajax
@@ -1569,7 +1594,7 @@ export default {
           chapters: JSON.stringify(this.unitJson),
           template: this.myWord,
           uid: this.userid,
-          courseType: JSON.stringify(this.courseTypeSon),
+          courseType: JSON.stringify(this.courseTypeId),
         },
       ];
       this.ajax
@@ -1865,9 +1890,10 @@ export default {
             this.nbOrder = res.data[0][0].ordernumber;
             this.CourseType[0] = res.data[1];
             // this.selectType();
-            for (var i = 0; i < this.CourseType[0].length; i++) {
-              this.courseTypeId[this.CourseType[0][i].typePid] =
-                this.CourseType[0][i].typeid;
+            for (var i = 0; i < res.data[1].length; i++) {
+              // this.courseTypeId[this.CourseType[0][i].typePid] =
+              //   this.CourseType[0][i].typeid;
+              this.courseTypeId.push(res.data[1][i].typeid);
             }
             console.log(this.courseTypeId);
             this.$forceUpdate();
@@ -2423,9 +2449,14 @@ export default {
 }
 
 .right_first {
-  margin-left: 15%;
-  width: 50%;
+  width: 70%;
   height: 100%;
+  margin-top: 15px;
+}
+.right_title {
+  height: 30px;
+  padding: 20px 0 10px 30px;
+  border-bottom: 1px solid #f2f2f2;
 }
 .people {
   border: 1px solid rgb(229 229 229);
@@ -2735,6 +2766,7 @@ ol {
   align-items: center;
   flex-wrap: nowrap;
   background: #fff;
+  max-height: 700px;
 }
 
 .stepBg > div {
@@ -3001,13 +3033,28 @@ ol {
 .all_choose {
   display: flex;
   flex-direction: row;
-  align-items: center;
+  align-items: flex-start;
 }
 .all_choose > span {
-  width: 60px;
+  width: 80px;
   display: block;
   letter-spacing: 14px;
 }
+.all_choose >>> .el-checkbox-group {
+  display: flex;
+  flex-direction: row;
+  width: 820px;
+  flex-wrap: wrap;
+  align-content: center;
+  justify-content: flex-start;
+  align-items: center;
+}
+.all_choose > .el-checkbox-group >>> .el-checkbox {
+  margin-bottom: 10px;
+}
+.all_choose > .el-checkbox-group > .el-checkbox >>> .el-checkbox__label {
+  min-width: 80px;
+}
 .choose > div:nth-child(3) > span {
   letter-spacing: 0 !important;
 }
@@ -3036,4 +3083,9 @@ ol {
 .notice >>> .el-button {
   margin-top: 20px;
 }
+.whiteBg {
+  background: #fff;
+  border-radius: 10px;
+  min-width: 800px;
+}
 </style>