zhangjie 2 rokov pred
rodič
commit
e5640a0171

+ 1 - 0
src/components/selection/SourceDetailSelect.vue

@@ -4,6 +4,7 @@
     :clearable="clearable"
     :disabled="disabled"
     :placeholder="placeholder"
+    filterable
     value-key="id"
     @change="select"
   >

+ 3 - 6
src/modules/paper/components/BuildPaperManual.vue

@@ -19,7 +19,7 @@
       >
         <div slot="title" class="detail-header">
           <h3>
-            {{ dindex + 1 }}、{{ detail.name }}(题目数量
+            {{ dindex + 1 }}、{{ detail.detailName }}(题目数量
             <span class="color-primary">{{ detail.questions.length }}</span
             >)
           </h3>
@@ -80,15 +80,14 @@
     <modify-detail-struct
       ref="ModifyDetailStruct"
       :detail="curDetail"
-      only-name
       @modified="detailModified"
     ></modify-detail-struct>
     <!-- SelectQuestionDialog -->
     <select-question-dialog
       ref="SelectQuestionDialog"
       :course-id="courseId"
-      :question-type="curDetail.questionType"
-      disabled-question-type
+      :source-detail="curDetail"
+      disabled-source-detail
       :disabled-question-ids="disabledQuestionIds"
       @confirm="questionSelected"
     ></select-question-dialog>
@@ -175,10 +174,8 @@ export default {
           Object.assign({}, this.details[index], data)
         );
       }
-      console.log(this.details);
     },
     toAddQuestion(detail) {
-      console.log("add");
       this.curDetail = detail;
       let disabledQuestionIds = [];
       this.details.forEach((detail) => {

+ 22 - 18
src/modules/paper/components/SelectQuestionDialog.vue

@@ -27,11 +27,12 @@
           <div class="part-filter-form">
             <el-form class="part-filter-form" :inline="true" :model="filter">
               <el-form-item label="题型">
-                <question-type-select
-                  v-model="filter.questionType"
-                  :disabled="disabledQuestionType"
+                <source-detail-select
+                  v-model="filter"
+                  :course-id="filter.courseId"
+                  :disabled="disabledSourceDetail"
                 >
-                </question-type-select>
+                </source-detail-select>
               </el-form-item>
               <el-form-item label="题目内容">
                 <el-input
@@ -75,10 +76,7 @@
               <span>{{ scope.row.course.name }}</span>
             </template>
           </el-table-column>
-          <el-table-column label="题型" width="100">
-            <template slot-scope="scope">
-              <span>{{ scope.row.questionType | questionType }}</span>
-            </template>
+          <el-table-column label="题型" prop="sourceDetailName" width="100">
           </el-table-column>
           <el-table-column label="难度" prop="difficulty" width="80">
           </el-table-column>
@@ -147,10 +145,7 @@
               <span>{{ scope.row.course.name }}</span>
             </template>
           </el-table-column>
-          <el-table-column label="题型" width="100">
-            <template slot-scope="scope">
-              <span>{{ scope.row.questionType | questionType }}</span>
-            </template>
+          <el-table-column label="题型" prop="sourceDetailName" width="100">
           </el-table-column>
           <el-table-column label="难度" prop="difficulty" width="80">
           </el-table-column>
@@ -198,11 +193,16 @@ export default {
       type: [String, Number],
       default: "",
     },
-    questionType: {
-      type: String,
-      default: "",
+    sourceDetail: {
+      type: Object,
+      default() {
+        return {
+          questionType: "",
+          sourceDetailId: "",
+        };
+      },
     },
-    disabledQuestionType: {
+    disabledSourceDetail: {
       type: Boolean,
       default: false,
     },
@@ -225,6 +225,7 @@ export default {
       filter: {
         courseId: "",
         questionType: "",
+        sourceDetailId: "",
         questionBody: "",
         questionProperty: [],
       },
@@ -241,8 +242,11 @@ export default {
   },
   methods: {
     initData() {
-      this.filter.courseId = this.courseId;
-      this.filter.questionType = this.questionType;
+      this.filter = Object.assign({}, this.filter, {
+        courseId: this.courseId,
+        ...this.sourceDetail,
+      });
+
       this.curSelectedQuestions = [];
       this.curSelectedQuestionIds = [];
       this.toPage(this.currentPage);

+ 1 - 1
src/modules/paper/views/BuildPaper.vue

@@ -176,7 +176,7 @@ export default {
           },
         ],
       },
-      genModelType: "auto",
+      genModelType: "simple",
       modelTypes: [
         {
           code: "simple",

+ 7 - 6
src/modules/question/components/FolderQuestionManageDialog.vue

@@ -24,8 +24,11 @@
               <course-select v-model="filter.courseId"> </course-select>
             </el-form-item>
             <el-form-item label="题型">
-              <question-type-select v-model="filter.questionType">
-              </question-type-select>
+              <source-detail-select
+                v-model="filter"
+                :course-id="filter.courseId"
+              >
+              </source-detail-select>
             </el-form-item>
             <el-form-item label="属性">
               <property-tree-select
@@ -92,10 +95,7 @@
                 <span>{{ scope.row.course.name }}</span>
               </template>
             </el-table-column>
-            <el-table-column label="题型" width="100">
-              <template slot-scope="scope">
-                <span>{{ scope.row.questionType | questionType }}</span>
-              </template>
+            <el-table-column label="题型" prop="sourceDetailName" width="100">
             </el-table-column>
             <el-table-column label="难度" prop="difficulty" width="80">
             </el-table-column>
@@ -219,6 +219,7 @@ export default {
         classifyId: null,
         courseId: "",
         questionType: "",
+        sourceDetailId: "",
         propertyIdList: [],
       },
       questionList: [],

+ 4 - 6
src/modules/question/views/QuestionManage.vue

@@ -10,8 +10,8 @@
           </course-select>
         </el-form-item>
         <el-form-item label="题型">
-          <question-type-select v-model="filter.questionType">
-          </question-type-select>
+          <source-detail-select v-model="filter" :course-id="filter.courseId">
+          </source-detail-select>
         </el-form-item>
         <el-form-item label="题目内容">
           <el-input
@@ -107,10 +107,7 @@
             <span>{{ scope.row.course.name }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="题型" width="100">
-          <template slot-scope="scope">
-            <span>{{ scope.row.questionType | questionType }}</span>
-          </template>
+        <el-table-column label="题型" prop="sourceDetailName" width="100">
         </el-table-column>
         <el-table-column label="难度" prop="difficulty" width="80">
         </el-table-column>
@@ -253,6 +250,7 @@ export default {
       filter: {
         courseId: "",
         questionType: "",
+        sourceDetailId: "",
         questionBody: "",
         questionProperty: [],
       },

+ 2 - 2
src/modules/question/views/SourceDetailManage.vue

@@ -12,10 +12,10 @@
               v-model="searchForm.questionType"
             ></question-type-select>
           </el-form-item>
-          <el-form-item label="来源大题名称">
+          <el-form-item label="题名称">
             <el-input
               v-model="searchForm.name"
-              placeholder="请输入来源大题名称"
+              placeholder="请输入题名称"
               maxlength="50"
             />
           </el-form-item>

+ 1 - 1
src/modules/questions/views/QuestionPreview.vue

@@ -10,7 +10,7 @@
   >
     <el-form label-position="right" label-width="65px">
       <el-form-item label="题型">
-        <span>{{ quesModel.questionType | questionType }}</span>
+        <span>{{ quesModel.sourceDetailName }}</span>
       </el-form-item>
       <el-form-item label="题干">
         <rich-text