dedsudiyu před 2 roky
rodič
revize
4a16fe8cbf
1 změnil soubory, kde provedl 42 přidání a 39 odebrání
  1. 42 39
      src/views/emergencyManagement/plan/newAddPlan.vue

+ 42 - 39
src/views/emergencyManagement/plan/newAddPlan.vue

@@ -44,7 +44,7 @@
               <div>
                 <div class="min-for-text-box-one" v-for="(minItemOne,minIndexOne) in item.riskPlanSensorList" :key="minItemOne.sensorType">
                   <div>
-                    <p>启动条件:<span v-for="(sensorItem,sensorIndex) in sensorList" :key="sensorIndex" v-if="sensorItem.hardwareTypeCode == minItemOne.sensorType">{{sensorItem.hardwareTypeName}}</span></p>
+                    <p>启动条件:<span v-for="(sensorItem,sensorIndex) in sensorList" :key="'sensor'+sensorIndex" v-if="sensorItem.hardwareTypeCode == minItemOne.sensorType">{{sensorItem.hardwareTypeName}}</span></p>
                     <p>监测区间:{{minItemOne.minMonitor}}-{{minItemOne.maxMonitor}}</p>
                   </div>
                 </div>
@@ -399,7 +399,7 @@
           this.msgError('请添加至少一个启动条件')
           return
         }
-        //提交数据检测条件区间是否重复
+        //提交数据检测条件区间是否重复(dialog本身数据查重)
         for(let i=0;i<self.dialogForm.riskPlanSensorList.length;i++){
           if(self.dialogForm.riskPlanSensorList[i].minMonitor >= self.dialogForm.riskPlanSensorList[i].maxMonitor){
             self.msgError('监测区间数值异常,请重新输入');
@@ -420,82 +420,85 @@
             }
           }
         }
-        let num = 0;
-        let age = 0;
+        //判断 当前为修改还是新增
         if(this.dialogIndex != null){
+          //编辑
+          //判断是否已有同等级预案
           for(let i=0;i<self.labRiskPlanLevels.length;i++){
             if(self.labRiskPlanLevels[i].riskPlanLevel == self.dialogForm.riskPlanLevel){
               this.msgError('无法添加多个相同等级的预案.')
               return
             }
           }
-          for(let x=0;x<self.dialogForm.riskPlanSensorList.length;x++){
-            for(let i=0;i<self.labRiskPlanLevels.length;i++){
+          for(let i=0;i<self.labRiskPlanLevels.length;i++){
+            if(self.labRiskPlanLevels[i].riskPlanSensorList.length == self.dialogForm.riskPlanSensorList.length){
+              let age = 0;
               for(let o=0;o<self.labRiskPlanLevels[i].riskPlanSensorList.length;o++){
-                if(self.dialogForm.riskPlanSensorList[x].sensorType==self.labRiskPlanLevels[i].riskPlanSensorList[o].sensorType){
-                  num ++
-                  if(self.dialogForm.riskPlanSensorList[x].minMonitor>=self.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor&&
-                    self.dialogForm.riskPlanSensorList[x].minMonitor<=self.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor){
-                    age++
-                    console.log('age++');
-                  }else if(self.dialogForm.riskPlanSensorList[x].maxMonitor>=self.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor&&
-                    self.dialogForm.riskPlanSensorList[x].maxMonitor<=self.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor){
-                    age++
-                    console.log('age++');
+                for(let x=0;x<self.dialogForm.riskPlanSensorList.length;x++){
+                  if(self.dialogForm.riskPlanSensorList[x].sensorType==self.labRiskPlanLevels[i].riskPlanSensorList[o].sensorType){
+                    if(self.dialogForm.riskPlanSensorList[x].minMonitor>=self.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor&&
+                      self.dialogForm.riskPlanSensorList[x].minMonitor<=self.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor){
+                      age++
+                    }else if(self.dialogForm.riskPlanSensorList[x].maxMonitor>=self.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor&&
+                      self.dialogForm.riskPlanSensorList[x].maxMonitor<=self.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor){
+                      age++
+                    }else if(self.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor>=self.dialogForm.riskPlanSensorList[x].minMonitor&&
+                      self.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor<=self.dialogForm.riskPlanSensorList[x].maxMonitor){
+                      age++
+                    }else if(self.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor>=self.dialogForm.riskPlanSensorList[x].minMonitor&&
+                      self.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor<=self.dialogForm.riskPlanSensorList[x].maxMonitor){
+                      age++
+                    }
                   }
                 }
               }
+              if(self.dialogForm.riskPlanSensorList.length == age){
+                self.msgError('监测区间不能与其他级别检测条件完全重复,请重新输入');
+                return
+              }
             }
           }
         }else{
+          //新增
           for(let i=0;i<self.form.labRiskPlanLevels.length;i++){
             if(self.form.labRiskPlanLevels[i].riskPlanLevel == self.dialogForm.riskPlanLevel){
               this.msgError('无法添加多个相同等级的预案.')
               return
             }
           }
-          for(let x=0;x<self.dialogForm.riskPlanSensorList.length;x++){
-            for(let i=0;i<self.form.labRiskPlanLevels.length;i++){
-              if(self.dialogForm.riskPlanSensorList.length == self.form.labRiskPlanLevels[i].riskPlanSensorList.length){
-                for(let o=0;o<self.form.labRiskPlanLevels[i].riskPlanSensorList.length;o++){
+          for(let i=0;i<self.form.labRiskPlanLevels.length;i++){
+            if(self.form.labRiskPlanLevels[i].riskPlanSensorList.length == self.dialogForm.riskPlanSensorList.length){
+              let age = 0;
+              for(let o=0;o<self.form.labRiskPlanLevels[i].riskPlanSensorList.length;o++){
+                for(let x=0;x<self.dialogForm.riskPlanSensorList.length;x++){
                   if(self.dialogForm.riskPlanSensorList[x].sensorType==self.form.labRiskPlanLevels[i].riskPlanSensorList[o].sensorType){
-                    num ++
                     if(self.dialogForm.riskPlanSensorList[x].minMonitor>=self.form.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor&&
                       self.dialogForm.riskPlanSensorList[x].minMonitor<=self.form.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor){
                       age++
-                      console.log('age++');
+                      console.log('1')
                     }else if(self.dialogForm.riskPlanSensorList[x].maxMonitor>=self.form.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor&&
                       self.dialogForm.riskPlanSensorList[x].maxMonitor<=self.form.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor){
                       age++
-                      console.log('age++');
-                    }
-                    if(self.form.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor>=self.dialogForm.riskPlanSensorList[x].minMonitor&&
+                      console.log('2')
+                    }else if(self.form.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor>=self.dialogForm.riskPlanSensorList[x].minMonitor&&
                       self.form.labRiskPlanLevels[i].riskPlanSensorList[o].minMonitor<=self.dialogForm.riskPlanSensorList[x].maxMonitor){
                       age++
-                      console.log('age++');
+                      console.log('3')
                     }else if(self.form.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor>=self.dialogForm.riskPlanSensorList[x].minMonitor&&
                       self.form.labRiskPlanLevels[i].riskPlanSensorList[o].maxMonitor<=self.dialogForm.riskPlanSensorList[x].maxMonitor){
                       age++
-                      console.log('age++');
+                      console.log('4')
                     }
                   }
                 }
-                if(self.dialogForm.riskPlanSensorList.length == num && self.dialogForm.riskPlanSensorList.length == age){
-                  self.msgError('监测区间不能与其他级别检测条件完全重复,请重新输入');
-                  return
-                }
+              }
+              if(self.dialogForm.riskPlanSensorList.length == age){
+                self.msgError('监测区间不能与其他级别检测条件完全重复,请重新输入');
+                return
               }
             }
           }
         }
-        console.log('self.dialogForm.riskPlanSensorList.length',self.dialogForm.riskPlanSensorList.length);
-        console.log('num',num);
-        console.log('age',age);
-        //提交数据对比已存在数据 是否区间重复
-        if(self.dialogForm.riskPlanSensorList.length == num && self.dialogForm.riskPlanSensorList.length == age){
-          self.msgError('监测区间不能与其他级别检测条件完全重复,请重新输入');
-          return
-        }
         this.$refs["dialogForm"].validate(valid => {
           if (valid) {
             if(this.dialogIndex != null){