Your Name 1 vuosi sitten
vanhempi
commit
cc21588e61
2 muutettua tiedostoa jossa 42 lisäystä ja 13 poistoa
  1. 7 6
      src/views/papers/canvasDrawer.vue
  2. 35 7
      src/views/papers/cutPaper.vue

+ 7 - 6
src/views/papers/canvasDrawer.vue

@@ -2,8 +2,8 @@
     <div>
         <el-form :inline="true">
             <el-form-item label="考号类型">
-                <el-radio v-model="khType" :label="1" :value="1">手写</el-radio>
-                <el-radio v-model="khType" :label="2" :value="2">条码</el-radio>
+                <el-radio v-model="khType" :label="2" :value="2" disabled>条码</el-radio>
+                <el-radio v-model="khType" :label="1" :value="1" disabled>涂点</el-radio>
             </el-form-item>
             <el-form-item label="考号位数">
                 <el-input-number size="mini" v-model="khLength" :min="6" :max="20" label="描述文字"></el-input-number>
@@ -37,7 +37,8 @@
         name: "canvasDrawer",
         props: {
             srcImg: String,
-            curId:String
+            curId:String,
+            khType:Number
         },
         data() {
             return {
@@ -61,7 +62,6 @@
                 imgHeight: null,
                 cropWidth: 0,
                 cropHeight: 0,
-                khType: 1,
                 khLength: 6,
                 recTarget: 1,
                 curArea:null,
@@ -139,6 +139,7 @@
                         onClick: () => {
                             this.clear();
                             this.totalRect = [];
+                            this.stdKhList = [];
                             this.redrawAll();
                         }
                     },{
@@ -378,7 +379,7 @@
             },
             getData(){
                 this.totalRect = [];
-                this.$api.getPaperInfo({id:this.curId}).then((res) => {
+                this.$api.getPaperInfo({id:this.curId,ptype:2}).then((res) => {
                     this.khType = res.data.data.khType;
                     this.khLength = res.data.data.khLength;
                     let stdKhList = JSON.parse(res.data.data.stdKhList);
@@ -402,7 +403,7 @@
                 }
                 this.$api.updatePaperInfo(params).then(res => {
                     this.msgSuccess("成功!");
-                    this.open = false;
+                    this.$emit("close");
                 })
             }
         },

+ 35 - 7
src/views/papers/cutPaper.vue

@@ -33,7 +33,7 @@
         <div style="padding:0px 10px;overflow-y: auto;height: 450px;">
           <el-card class="box-card" v-if="stepNum==1">
             <div slot="header" class="clearfix">
-              <span>选取标准点</span>
+              <span>选取标准点(试卷标题)</span>
             </div>
               阈值:<el-input-number size="mini" v-model="stdThreshVal" :min="1" :max="5" label="描述文字"></el-input-number>
             <el-image style="margin-top:20px 0px;border:1px solid #ccc;" height="60px" width="100%" :src="stdPointImg" :preview-src-list="[stdPointImg]"></el-image>
@@ -42,8 +42,12 @@
             <div slot="header" class="clearfix">
               <span>标注考号区域</span>
             </div>
+            <div>
+                <el-radio v-model="khType" :label="2" :value="2">条码</el-radio>
+                <el-radio v-model="khType" :label="1" :value="1">涂点</el-radio>
+            </div>
             <div v-if="snoImg">
-              <div style="margin-bottom:10px;">
+              <div style="margin-bottom:10px;" v-if="khType==1">
                 <i class="el-icon-edit" @click="editKhCard(snoImg,curPaperId)"
                   style="float:right;color:blue;margin-right:20px;cursor: pointer;"></i>
                 <div class="clear"></div>
@@ -72,7 +76,7 @@
     </el-row>
     <!-- 涂点考号 -->
     <el-dialog title="考号设置" :visible.sync="khOpen" width="65%" append-to-body>
-        <canvasDrawer v-if="khOpen" :srcImg="snoImg" :curId="curPaperId" />
+        <canvasDrawer v-if="khOpen" :srcImg="snoImg" :curId="curPaperId" :khType="khType" @close="khOpen=false" />
     </el-dialog>
     <!-- 客观题设置 -->
     <el-dialog title="客观题设置" :visible.sync="open" width="90%" append-to-body>
@@ -375,10 +379,12 @@
       getData() {
         this.loading = true;
         let params = {
-          id: this.$route.query.id
+          id: this.$route.query.id,
+          ptype:this.stepNum
         };
         this.curPaperId = this.$route.query.id;
         this.$api.getPaperInfo(params).then((res) => {
+          console.log(res,333333333333)
           let imgs = JSON.parse(res.data.data.imgs);
           this.curPaperImg = imgs[0];
           this.stdPointImg = res.data.data.stdPointsImg;
@@ -712,6 +718,16 @@
             stdPoints:this.stdPoints
           }
           this.$api.updatePaperInfo(params).then(res => {
+            if(!res.data.code&&res.data.data.stdPoints){
+              let stdPoints = JSON.parse(res.data.data.stdPoints)
+              if(stdPoints.x < 10 || stdPoints.y < 10 ||stdPoints.w<10 ||stdPoints.h<10){
+                this.msgError("标准点识别错误!");
+                return 
+              }else{
+                this.getData();
+                this.stepNum += 1;
+              }
+            }
           })
         }
         // 考号
@@ -722,10 +738,24 @@
             khPointsCrop:this.khPointsCrop
           }
           this.$api.updatePaperInfo(params).then(res => {
+            let rst = res.data;
+            if(!rst.code&&rst.data.khPointsCrop&&rst.data.khPoints){
+              let khPointsCrop = JSON.parse(rst.data.khPointsCrop)
+              let stdKhList = JSON.parse(rst.data.stdKhList);
+              let khLength = rst.data.khLength;
+              if(khPointsCrop.x < 10 || khPointsCrop.y < 10 ||khPointsCrop.w<50 
+                ||khPointsCrop.h<50||stdKhList.length!=khLength){
+                this.msgError("考号识别错误,请重编辑考号区域!");
+                return 
+              }else{
+                this.getData();
+                this.stepNum += 1;
+              }
+            }
           })
         }
         // 客观题
-        if(this.stepNum==2){
+        if(this.stepNum==3){
           let params = {
             id: this.$route.query.id,
             ansPoints:this.ansCardImgList,
@@ -734,8 +764,6 @@
           this.$api.updatePaperInfo(params).then(res => {
           })
         }
-        this.stepNum += 1;
-        this.getData();
       }
     },
     created() {