Преглед изворни кода

工序报工 报工页面bug修改

jingshuyong пре 9 месеци
родитељ
комит
daf1cb3b67

+ 37 - 6
src/views/produce/components/workPlan/components/baseInfo.vue

@@ -305,6 +305,7 @@
               placeholder="请选择"
               style="width: 100%"
               :disabled="showArrange == '0'"
+              @change="selectResult"
             >
               <el-option label="合格" :value="1" />
               <el-option label="不合格" :value="2" />
@@ -559,21 +560,48 @@
       },
       // *** 计算合格数 不合格数
       quantityCalculation() {
+        console.log('执行没有');
         let qualifiedNumber = this.form.qualifiedNumber - 0;
         let noQualifiedNumber = this.form.noQualifiedNumber - 0;
-        let total = qualifiedNumber + noQualifiedNumber;
-        if (total != this.form.total) {
-          let val =
-            e == 'qualifiedNumber' ? 'noQualifiedNumber' : 'qualifiedNumber';
-          this.$message.warning('合格数加上不合格数需要等于总数量');
+        let total = this.form.total - 0;
+        let val =
+          e == 'qualifiedNumber' ? 'noQualifiedNumber' : 'qualifiedNumber';
+        if (this.form[e] > this.form.total) {
           this.form[e] = this.form.total - this.form[val];
-          return false;
+          this.$message.warning('合格数与不合格数不能大于总数量');
+          return;
+        }
+
+        this.form[val] = this.form.total - this.form[e];
+
+        if (e == 'qualifiedNumber') {
+          noQualifiedNumber = total - this.form.qualifiedNumber;
         }
+        if (e == 'noQualifiedNumber') {
+          qualifiedNumber = total - this.form.noQualifiedNumber;
+        }
+        console.log(qualifiedNumber, 'qualifiedNumber');
+        console.log(noQualifiedNumber, 'noQualifiedNumber');
         let passRate = ((qualifiedNumber / total) * 100).toFixed(2);
         let failureRate = ((noQualifiedNumber / total) * 100).toFixed(2);
         this.form.qualificationRate = passRate + '%';
         this.form.noQualificationRate = failureRate + '%';
         return true;
+        // let qualifiedNumber = this.form.qualifiedNumber - 0;
+        // let noQualifiedNumber = this.form.noQualifiedNumber - 0;
+        // let total = qualifiedNumber + noQualifiedNumber;
+        // if (total != this.form.total) {
+        //   let val =
+        //     e == 'qualifiedNumber' ? 'noQualifiedNumber' : 'qualifiedNumber';
+        //   this.$message.warning('合格数加上不合格数需要等于总数量');
+        //   this.form[e] = this.form.total - this.form[val];
+        //   return false;
+        // }
+        // let passRate = ((qualifiedNumber / total) * 100).toFixed(2);
+        // let failureRate = ((noQualifiedNumber / total) * 100).toFixed(2);
+        // this.form.qualificationRate = passRate + '%';
+        // this.form.noQualificationRate = failureRate + '%';
+        // return true;
       },
 
       toggleExpand() {
@@ -715,6 +743,9 @@
         } else {
           this.$emit('table2');
         }
+      },
+      selectResult() {
+        this.$emit('quantityAssignment');
       }
     }
   };

+ 17 - 0
src/views/produce/components/workPlan/edit.vue

@@ -36,6 +36,7 @@
           :qualityType1="qualityType"
           @changeModel="changeModel"
           @changeNumber="changeNumber"
+          @quantityAssignment="quantityAssignment"
           @changeInspectionStandardsModel="changeInspectionStandardsModel"
         ></base-info>
         <header-title title="样品信息"></header-title>
@@ -1925,6 +1926,22 @@
         // 数量赋值
         this.quantityAssignment();
       },
+      // 计算合格数不合格数
+      quantityAssignment() {
+        let noQualifiedNumber = 0;
+        let qualifiedNumber = 0;
+        let data = this.form;
+        let total = data.total - 0;
+        if (this.form.qualityResults == 2) {
+          noQualifiedNumber = total - (data.sampleQualifiedNumber - 0);
+          qualifiedNumber = total - noQualifiedNumber;
+        } else {
+          qualifiedNumber = total - (data.sampleNoQualifiedNumber - 0);
+          noQualifiedNumber = total - qualifiedNumber;
+        }
+        this.$set(this.form, 'qualifiedNumber', qualifiedNumber);
+        this.$set(this.form, 'noQualifiedNumber', noQualifiedNumber);
+      },
       closeDispose() {
         this.rowData = null;
         this.sampleDisposeVisble = false;