zhangjie 1 年之前
父節點
當前提交
b0f046529b

+ 15 - 16
src/modules/client/components/HandleInputDialog.vue

@@ -10,22 +10,21 @@
     append-to-body
     @open="visibleChange"
   >
-    <div @keyup.enter.prevent>
-      <el-form
-        ref="modalFormComp"
-        :model="modalForm"
-        :rules="rules"
-        label-width="80px"
-      >
-        <el-form-item prop="studentCode" label="学号:">
-          <el-input
-            v-model.trim="modalForm.studentCode"
-            placeholder="请输入第一张试卷学号"
-            clearable
-          ></el-input>
-        </el-form-item>
-      </el-form>
-    </div>
+    <el-form
+      ref="modalFormComp"
+      :model="modalForm"
+      :rules="rules"
+      label-width="80px"
+      @submit.native.prevent
+    >
+      <el-form-item prop="studentCode" label="学号:">
+        <el-input
+          v-model.trim="modalForm.studentCode"
+          placeholder="请输入第一张试卷学号"
+          clearable
+        ></el-input>
+      </el-form-item>
+    </el-form>
     <div slot="footer">
       <el-button type="primary" @click="submit">确认</el-button>
     </div>

+ 3 - 0
src/modules/client/components/ScanTaskProcessDialog.vue

@@ -296,6 +296,9 @@ export default {
       if (res !== "confirm") return;
 
       this.scanStageList = this.scanStageList.filter((item) => !item.selected);
+
+      const lastStageItem = this.scanStageList.slice(-1)[0];
+      this.lastStudentCode = lastStageItem ? lastStageItem.studentCode : "";
     },
     async clearStage() {
       const res = await this.$confirm(`确定要清空数据吗?`, "警告", {

+ 10 - 1
src/modules/client/views/Scan.vue

@@ -19,7 +19,9 @@
           <el-button type="success" @click="toSetOrcArea"
             >设置条码识别区</el-button
           >
-          <el-button type="success" @click="toSetScan">设置扫描仪</el-button>
+          <el-button type="success" :disabled="setDisabled" @click="toSetScan"
+            >设置扫描仪</el-button
+          >
         </el-form-item>
       </el-form>
     </div>
@@ -129,6 +131,7 @@ export default {
       task: {},
       scanInfo: {},
       ocrArea: null,
+      setDisabled: false,
     };
   },
   computed: {
@@ -194,10 +197,16 @@ export default {
       this.$refs.OcrAreaSetDialog.open();
     },
     async toSetScan() {
+      if (this.setDisabled) return;
+      this.setDisabled = true;
       await setScanner().catch((error) => {
         console.dir(error);
         this.$message.error("连接扫描仪异常");
       });
+
+      setTimeout(() => {
+        this.setDisabled = false;
+      }, 5000);
     },
   },
 };

+ 11 - 1
src/modules/login/views/Setting.vue

@@ -11,7 +11,10 @@
           <h4 class="login-head-subtitle">服务器IP地址设置</h4>
         </div>
         <div class="login-head-right">
-          <el-button class="login-btn btn-setting" @click="toSetScan"
+          <el-button
+            class="login-btn btn-setting"
+            :disabled="setDisabled"
+            @click="toSetScan"
             >配置扫描仪</el-button
           >
         </div>
@@ -70,6 +73,7 @@ export default {
         ],
       },
       loading: false,
+      setDisabled: false,
     };
   },
   computed: {
@@ -91,10 +95,16 @@ export default {
       this.setModel.host = domain.replace(`${this.setModel.protocol}://`, "");
     },
     async toSetScan() {
+      if (this.setDisabled) return;
+      this.setDisabled = true;
       await setScanner().catch((error) => {
         console.dir(error);
         this.$message.error("连接扫描仪异常");
       });
+
+      setTimeout(() => {
+        this.setDisabled = false;
+      }, 5000);
     },
     async submit() {
       const valid = await this.$refs.setForm.validate().catch(() => {});