From b50917f4bdf0b05c028d76d8cdbde44a85ec8b91 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期二, 27 八月 2024 16:02:53 +0800
Subject: [PATCH] 测试完成

---
 src/views/knowledge/questionbank/particulars/index.vue |  295 ++++++++++++++++++++++++++++++++---------------------------
 1 files changed, 160 insertions(+), 135 deletions(-)

diff --git a/src/views/knowledge/questionbank/particulars/index.vue b/src/views/knowledge/questionbank/particulars/index.vue
index 2a5cfa1..a615daf 100644
--- a/src/views/knowledge/questionbank/particulars/index.vue
+++ b/src/views/knowledge/questionbank/particulars/index.vue
@@ -101,7 +101,7 @@
                 ></el-col>
                 <el-col :span="8"
                   ><el-form-item label="鏄惁鍙敤">
-                    <el-radio-group v-model="topicobj.isAvailable">
+                    <el-radio-group v-model="topicobj.isavailable">
                       <el-radio
                         v-for="(item, index) in usable"
                         :label="item.value"
@@ -348,6 +348,11 @@
                   topicobj.targetname ? "淇敼鎸囨爣" : "+閫夋嫨鎸囨爣"
                 }}</el-button></span
               >
+              <span style="margin-left: 30px"
+                ><el-button type="primary" @click="Saveproblem"
+                  >淇� 瀛�</el-button
+                >
+              </span>
             </div>
             <el-divider></el-divider>
             <el-form ref="form">
@@ -401,116 +406,120 @@
                 </el-col>
               </el-row>
             </el-form>
-            <div v-if="topicobj.scriptType != 4">
-              <div class="headline">
-                閫夐」璁剧疆<span style="margin-left: 30px"
-                  ><el-button type="primary" round @click="addoption"
-                    >+鏂板</el-button
-                  ></span
-                >
-              </div>
+            <div>
               <el-divider></el-divider>
+              <div v-if="topicobj.scriptType != 4">
+                <div class="headline">
+                  閫夐」璁剧疆<span style="margin-left: 30px"
+                    ><el-button type="primary" round @click="addoption"
+                      >+鏂板</el-button
+                    ></span
+                  >
+                </div>
+                <div
+                  class="topicxq"
+                  v-for="item in topicobj.svyLibScriptOptions"
+                  v-if="item.isoperation != 3"
+                >
+                  <el-row :gutter="10">
+                    <el-col :span="11"
+                      ><el-form-item label="閫夐」鍚嶇О">
+                        <el-input
+                          type="text"
+                          placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
+                          v-model="item.optioncontent"
+                          show-word-limit
+                        >
+                        </el-input> </el-form-item
+                    ></el-col>
+                    <el-col :span="11">
+                      <el-form-item v-if="topicobj.scoretype == 1" label="鍒嗗��">
+                        <el-input
+                          type="text"
+                          placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
+                          v-model="item.score"
+                          show-word-limit
+                        >
+                        </el-input>
+                      </el-form-item>
+                      <el-form-item
+                        v-else-if="topicobj.scoretype == 2"
+                        label="ABC绛夌骇"
+                      >
+                        <el-radio-group v-model="item.score">
+                          <el-radio label="A">A</el-radio>
+                          <el-radio label="B">B</el-radio>
+                          <el-radio label="C">C</el-radio>
+                        </el-radio-group>
+                      </el-form-item>
+                      <el-form-item
+                        v-else-if="topicobj.scoretype == 3"
+                        label="浼樿壇绛夌骇"
+                      >
+                        <el-radio-group v-model="item.score">
+                          <el-radio label="浼�">浼�</el-radio>
+                          <el-radio label="鑹�">鑹�</el-radio>
+                          <el-radio label="宸�">宸�</el-radio>
+                        </el-radio-group>
+                      </el-form-item>
+                    </el-col>
 
-              <div
-                class="topicxq"
-                v-for="item in topicobj.svyLibScriptOptions"
-                v-if="item.isoperation != 3"
-              >
-                <el-row :gutter="10">
-                  <el-col :span="11"
-                    ><el-form-item label="閫夐」鍚嶇О">
-                      <el-input
-                        type="text"
-                        placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
-                        v-model="item.optioncontent"
-                        show-word-limit
-                      >
-                      </el-input> </el-form-item
-                  ></el-col>
-                  <el-col :span="11">
-                    <el-form-item v-if="topicobj.scoretype == 1" label="鍒嗗��">
-                      <el-input
-                        type="text"
-                        placeholder="璇疯緭鍏ラ�夐」鍒嗗��"
-                        v-model="item.score"
-                        show-word-limit
-                      >
-                      </el-input>
-                    </el-form-item>
-                    <el-form-item
-                      v-else-if="topicobj.scoretype == 2"
-                      label="ABC绛夌骇"
+                    <el-col
+                      :span="2"
+                      :offsset="topicobj.scoretype == 4 ? 11 : 0"
                     >
-                      <el-radio-group v-model="item.score">
-                        <el-radio label="A">A</el-radio>
-                        <el-radio label="B">B</el-radio>
-                        <el-radio label="C">C</el-radio>
+                      <el-button
+                        type="danger"
+                        icon="el-icon-delete"
+                        circle
+                        @click="deletexuanx(item)"
+                      ></el-button>
+                    </el-col>
+                  </el-row>
+                  <el-row :gutter="10">
+                    <el-form-item label="棰勮鎻愰啋">
+                      <el-radio-group v-model="item.isabnormal">
+                        <el-radio :label="1">鏄�</el-radio>
+                        <el-radio :label="0">鍚�</el-radio>
                       </el-radio-group>
                     </el-form-item>
-                    <el-form-item
-                      v-else-if="topicobj.scoretype == 3"
-                      label="浼樿壇绛夌骇"
-                    >
-                      <el-radio-group v-model="item.score">
-                        <el-radio label="浼�">浼�</el-radio>
-                        <el-radio label="鑹�">鑹�</el-radio>
-                        <el-radio label="宸�">宸�</el-radio>
-                      </el-radio-group>
-                    </el-form-item>
-                  </el-col>
-
-                  <el-col :span="2" :offsset="topicobj.scoretype == 4 ? 11 : 0">
-                    <el-button
-                      type="danger"
-                      icon="el-icon-delete"
-                      circle
-                      @click="deletexuanx(item)"
-                    ></el-button>
-                  </el-col>
-                </el-row>
-                <el-row :gutter="10">
-                  <el-form-item label="棰勮鎻愰啋">
-                    <el-radio-group v-model="item.isabnormal">
-                      <el-radio :label="1">鏄�</el-radio>
-                      <el-radio :label="0">鍚�</el-radio>
-                    </el-radio-group>
-                  </el-form-item>
-                </el-row>
-                <el-row :gutter="10">
-                  <el-form-item label="閫変腑鎻愮ず">
-                    <el-input
-                      style="width: 40vw"
-                      type="textarea"
-                      autosize
-                      placeholder="璇疯緭鍏ュ唴瀹�"
-                      v-model="item.prompt"
-                    >
-                    </el-input
-                  ></el-form-item>
-                </el-row>
-                <el-form-item label="閫夐」鏂囦欢" prop="sickness">
-                  <div style="width: 40vw">
-                    <el-upload
-                      class="upload-demo"
-                      :action="uploadImgUrl"
-                      :headers="headers"
-                      accept=".jpg,.png,image/*"
-                      :on-success="handleChange.bind(this, item)"
-                    >
-                      <el-button size="small" type="primary"
-                        >鐐瑰嚮涓婁紶</el-button
+                  </el-row>
+                  <el-row :gutter="10">
+                    <el-form-item label="閫変腑鎻愮ず">
+                      <el-input
+                        style="width: 40vw"
+                        type="textarea"
+                        autosize
+                        placeholder="璇疯緭鍏ュ唴瀹�"
+                        v-model="item.prompt"
                       >
-                    </el-upload>
-                    <div style="margin: 20px">
-                      <el-image
-                        style="width: 100px; height: 100px"
-                        :src="item.picturePath"
-                        :preview-src-list="[...item.picturePath]"
+                      </el-input
+                    ></el-form-item>
+                  </el-row>
+                  <el-form-item label="閫夐」鏂囦欢" prop="sickness">
+                    <div style="width: 40vw">
+                      <el-upload
+                        class="upload-demo"
+                        :action="uploadImgUrl"
+                        :headers="headers"
+                        accept=".jpg,.png,image/*"
+                        :on-success="handleChange.bind(this, item)"
                       >
-                      </el-image>
+                        <el-button size="small" type="primary"
+                          >鐐瑰嚮涓婁紶</el-button
+                        >
+                      </el-upload>
+                      <div style="margin: 20px">
+                        <el-image
+                          style="width: 100px; height: 100px"
+                          :src="item.picturePath"
+                          :preview-src-list="[...item.picturePath]"
+                        >
+                        </el-image>
+                      </div>
                     </div>
-                  </div>
-                </el-form-item>
+                  </el-form-item>
+                </div>
               </div>
               <div v-else class="topicxq">
                 <el-input
@@ -610,11 +619,11 @@
           <el-table-column
             label="鏄惁鍙敤"
             align="center"
-            key="isAvailable"
-            prop="isAvailable"
+            key="isavailable"
+            prop="isavailable"
           >
             <template slot-scope="scope">
-              <dict-tag :options="usable" :value="scope.row.isAvailable" />
+              <dict-tag :options="usable" :value="scope.row.isavailable" />
             </template>
           </el-table-column>
           <el-table-column
@@ -763,6 +772,7 @@
         { value: "scriptTopic", table: "scriptTopic" },
       ],
       inputValueillness: "",
+      testgovalue: "",
       required: [],
       themelist: [],
       languagelist: [],
@@ -829,9 +839,9 @@
     // 鑾峰彇鏁版嵁
     getissueinfo() {
       this.id = this.$route.query.id;
-      this.topicobj.categoryid = Number(this.$route.query.categoryid);
-      console.log(this.topicobj.categoryid);
-
+      if (this.$route.query.categoryid) {
+        this.topicobj.categoryid = Number(this.$route.query.categoryid);
+      }
       this.topicobj.isavailable = "1";
       this.topicobj.language = "鏅�氳瘽";
       // 鍒嗙被
@@ -937,35 +947,54 @@
     // 鍒ゆ柇鍒嗗��
     Scorejudgment() {
       let scorearr = this.topicobj.svyLibScriptOptions;
-      let isValid = scorearr.every((score) => {
-        if (score.score) {
-          console.log(Number(score.score), this.topicobj.score, "鍒嗗��");
-          if (
-            Number(score.score) < 0 ||
-            Number(score.score) > Number(this.topicobj.score)
-          ) {
-            console.log(score, "閿欒鍒嗗��");
+      let isValid = scorearr.every((score, index) => {
+        if (this.topicobj.scriptType == 1) {
+          if (score.score) {
+            if (
+              Number(score.score) < 0 ||
+              Number(score.score) > Number(this.topicobj.score)
+            ) {
+              console.log(score, "閿欒鍒嗗��");
+              this.$message({
+                message: "閫夐」鍒嗗�煎繀椤诲湪0鍒�" + this.topicobj.score + "鍒嗕箣闂�",
+                type: "warning",
+              });
+              return false;
+            }
+            return true;
+          } else {
             this.$message({
-              message: "閫夐」鍒嗗�煎繀椤诲湪0鍒�" + this.topicobj.score + "鍒嗕箣闂�",
+              message: "閫夐」鍒嗗�兼湭璁剧疆",
               type: "warning",
             });
             return false;
           }
+        } else if (this.topicobj.scriptType == 2) {
+          // 绱姞鍒嗗��
+          const totalScore = scorearr.reduce((acc, score) => {
+            if (score.score) {
+              return acc + Number(score.score);
+            }
+            return acc; // 濡傛灉 score.score 涓嶅瓨鍦紝涓嶇疮鍔�
+          }, 0);
+
+          // 妫�鏌ョ疮鍔犵殑鍒嗗�兼槸鍚︾瓑浜� this.topicobj.score
+          if (totalScore !== Number(this.topicobj.score)) {
+            this.$message({
+              message:
+                "澶氶�夐閫夐」鍒嗗�兼�诲拰蹇呴』绛変簬 " + this.topicobj.score + " 鍒�",
+              type: "warning",
+            });
+            return false;
+          }
+          return true; // 濡傛灉鎬诲垎姝g‘锛岃繑鍥� true
+        } else if (this.topicobj.scriptType == 4) {
           return true;
-        } else if (this.topicobj.scriptType == 3) {
-          return true;
-        } else {
-          this.$message({
-            message: "閫夐」鍒嗗�兼湭璁剧疆",
-            type: "warning",
-          });
-          return false;
         }
       });
 
       if (isValid) {
         this.compileissue();
-        // console.log("鍒颁繚瀛樹簡");
       }
     },
     Saveproblem() {
@@ -978,13 +1007,14 @@
     // 鍒ゆ柇鎸囨爣
     changefn(item) {
       console.log(item);
-
       if (this.topicobj.targetname || this.topicobj.svyLibScriptOptions[0]) {
         this.$modal
           .confirm("鏇存敼绫诲瀷鍚庨�夐」灏嗘竻绌烘槸鍚︾户缁紵")
           .then(() => {
             this.scriptTypels = this.topicobj.scriptType;
-            this.topicobj.svyLibScriptOptions = [];
+            this.topicobj.svyLibScriptOptions.forEach((item) => {
+              item.isoperation = 3;
+            });
           })
           .catch(() => {
             this.topicobj.scriptType = this.scriptTypels;
@@ -1001,8 +1031,6 @@
       console.log(this.topicobj.svyLibScriptOptions);
 
       if (this.topicobj.svyLibScriptOptions[index].id) {
-        console.log(2);
-
         this.topicobj.svyLibScriptOptions[index].isoperation = 3;
       } else {
         this.topicobj.svyLibScriptOptions.splice(index, 1);
@@ -1055,12 +1083,10 @@
         tagcategoryid: "0",
       };
       listtag(tagqueryParams).then((response) => {
-        console.log(response, "寰呴�夋爣绛�");
         this.optionstag = response.rows;
       });
     },
     handleClosetag(tag) {
-      console.log(tag);
       console.log(this.dynamicTags.indexOf(tag));
       const lindex = this.dynamicTags.indexOf(tag);
       this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
@@ -1331,8 +1357,7 @@
     border-radius: 4px;
     margin-top: 15px;
     margin-left: 10%;
-    padding-left: 20px;
-    padding-top: 15px;
+    padding: 20px;
     border: 1px solid #dcdfe6;
     -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
       0 0 6px 0 rgba(0, 0, 0, 0.04);

--
Gitblit v1.9.3