Просмотр исходного кода

工序报工 报工页面bug修改

jingshuyong 9 месяцев назад
Родитель
Сommit
2fc8185654

+ 0 - 2
src/views/produce/components/workPlan/components/baseInfo.vue

@@ -178,7 +178,6 @@
             <el-input
               type="number"
               :min="0"
-              disabled
               @input="limitation('qualifiedNumber')"
               @blur="quantityCalculation('qualifiedNumber')"
               v-model="form.qualifiedNumber"
@@ -195,7 +194,6 @@
             <el-input
               type="number"
               :min="0"
-              disabled
               @input="limitation('noQualifiedNumber')"
               @blur="quantityCalculation('noQualifiedNumber')"
               v-model="form.noQualifiedNumber"

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

@@ -1841,6 +1841,89 @@
           qualificationRate,
           noQualificationRate
         );
+        this.calculate(this.sampleList);
+      },
+      calculate(list) {
+        if (list.length == 0) {
+          this.form.sampleQuantity = 0;
+          this.form.sampleWeight = 0;
+        }
+        let sampleQuantity = 0; // 样品数量
+        let sampleWeight = 0; // 样品重量
+        let sampleQualifiedNumber = 0; //  样品合格数
+        let sampleNoQualifiedNumber = 0; //  样品不合格数
+        list.forEach((el) => {
+          sampleQuantity += el.measureQuantity - 0;
+          sampleWeight += el.weight - 0;
+          if (el.qualityResults != 2) {
+            sampleQualifiedNumber += el.measureQuantity - 0;
+          } else {
+            sampleNoQualifiedNumber += el.measureQuantity - 0;
+          }
+        });
+
+        // 计算合格率和不合格率(百分比形式)
+        let sampleQualificationRate = '';
+        let sampleNoQualificationRate = '';
+        if (
+          (sampleQualifiedNumber || sampleQualifiedNumber == 0) &&
+          sampleQuantity !== 0
+        ) {
+          sampleQualificationRate =
+            ((sampleQualifiedNumber / sampleQuantity) * 100).toFixed(2) || '';
+          sampleNoQualificationRate =
+            ((sampleNoQualifiedNumber / sampleQuantity) * 100).toFixed(2) || '';
+        }
+        if (sampleQualificationRate || sampleQualificationRate == '0.00') {
+          if (isNaN(sampleQualificationRate)) {
+            sampleQualificationRate = '0%';
+          } else {
+            sampleQualificationRate = sampleQualificationRate + '%';
+          }
+        }
+        if (sampleNoQualificationRate || sampleNoQualificationRate == '0.00') {
+          if (isNaN(sampleNoQualificationRate)) {
+            sampleNoQualificationRate = '0%';
+          } else {
+            sampleNoQualificationRate = sampleNoQualificationRate + '%';
+          }
+        }
+        this.$nextTick(() => {
+          let showArrange = this.$refs.baseInfoRefs.showArrange;
+          if (showArrange != '1' && sampleQuantity == sampleQualifiedNumber) {
+            this.$set(this.form, 'qualificationRate', '100%');
+            this.$set(this.form, 'noQualificationRate', '0');
+            this.$set(this.form, 'qualityResults', 1);
+          }
+
+          if (showArrange != '1' && sampleQuantity != sampleQualifiedNumber) {
+            this.$set(this.form, 'qualificationRate', '0');
+            this.$set(this.form, 'noQualificationRate', '100%');
+            this.$set(this.form, 'qualityResults', 2);
+          }
+        });
+
+        // this.$set(this.form, 'resultsTotal', resultsTotal);
+        this.$set(
+          this.form,
+          'sampleQualificationRate',
+          sampleQualificationRate
+        );
+        this.$set(
+          this.form,
+          'sampleNoQualificationRate',
+          sampleNoQualificationRate
+        );
+        this.$set(this.form, 'sampleQuantity', sampleQuantity);
+        this.$set(this.form, 'sampleWeight', sampleWeight);
+        this.$set(this.form, 'sampleQualifiedNumber', sampleQualifiedNumber);
+        this.$set(
+          this.form,
+          'sampleNoQualifiedNumber',
+          sampleNoQualifiedNumber
+        );
+        // 数量赋值
+        this.quantityAssignment();
       },
       closeDispose() {
         this.rowData = null;