Rmengdi 1 år sedan
förälder
incheckning
db68f1258e

+ 15 - 15
PHM-web/src/views/manage/aircraft/index.vue

@@ -1,11 +1,11 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="机型" prop="airModel">
-        <el-input v-model="queryParams.airModel" placeholder="请输入机型" clearable @keyup.enter.native="handleQuery" />
+      <el-form-item label="机型" prop="name">
+        <el-input v-model="queryParams.name" placeholder="请输入机型" clearable @keyup.enter.native="handleQuery" />
       </el-form-item>
-      <el-form-item label="机号" prop="airNumber">
-        <el-input v-model="queryParams.airNumber" placeholder="请输入机号" clearable @keyup.enter.native="handleQuery" />
+      <el-form-item label="机号" prop="number">
+        <el-input v-model="queryParams.number" placeholder="请输入机号" clearable @keyup.enter.native="handleQuery" />
       </el-form-item>
       <el-form-item label="归属机队" prop="fleetId">
         <el-input v-model="queryParams.fleetId" placeholder="请输入归属机队" clearable @keyup.enter.native="handleQuery" />
@@ -38,8 +38,8 @@
 
     <el-table v-loading="loading" border :data="aircraftList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="机型" align="center" prop="airModel" />
-      <el-table-column label="机号" align="center" prop="airNumber" />
+      <el-table-column label="机型" align="center" prop="name" />
+      <el-table-column label="机号" align="center" prop="number" />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
@@ -56,11 +56,11 @@
     <!-- 添加或修改单机信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="100px">
-        <el-form-item label="机型" prop="airModel">
-          <el-input v-model="form.airModel" placeholder="请输入机型" />
+        <el-form-item label="机型" prop="name">
+          <el-input v-model="form.name" placeholder="请输入机型" />
         </el-form-item>
-        <el-form-item label="机号" prop="airNumber">
-          <el-input v-model="form.airNumber" placeholder="请输入机号" />
+        <el-form-item label="机号" prop="number">
+          <el-input v-model="form.number" placeholder="请输入机号" />
         </el-form-item>
         <el-form-item label="归属机队" prop="fleetId">
           <el-select v-model="form.fleetId" placeholder="请选择机队信息" style="width:100%">
@@ -69,7 +69,7 @@
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="归属机型" prop="fleetId">
+        <el-form-item label="归属机型" prop="aircraftTypeId">
           <el-select v-model="form.aircraftTypeId" placeholder="请选择机队信息" style="width:100%">
             <el-option v-for="item in aircraftOptions" :key="item.id" :label="item.name"
               :value="item.id">
@@ -126,8 +126,8 @@ export default {
       queryParams: {
         pageNum: 1,
         pageSize: 10,
-        airModel: null,
-        airNumber: null,
+        name: null,
+        number: null,
         fleetId: null,
       },
       // 表单参数
@@ -174,8 +174,8 @@ export default {
     reset() {
       this.form = {
         id: null,
-        airModel: null,
-        airNumber: null,
+        name: null,
+        number: null,
         fleetId: null,
         isDelete: null,
         createBy: null,

+ 28 - 9
PHM-web/src/views/manage/faultDiagnosis/falseAlarmResult.vue

@@ -1,19 +1,38 @@
 <template>
   <div>
-    虚警抑制结果
-    <!-- <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div> -->
+    <el-table :data="parameterData" style="width: 100%">
+      <el-table-column v-for="(item,index) in keyList" :key="index" align="center" :label="item" :prop="item">
+      </el-table-column>
+    </el-table>
   </div>
 </template>
 
 <script>
-  export default {
-    name:'falseAlarmResult'
-  }
+
+export default {
+  name: 'falseAlarmResult',
+  props: ['resultList', 'parameterData'],
+  data(){
+    return{
+      keyList:[]
+    }
+  },
+  mounted(){
+    this.init()
+  },
+  created() {
+    
+  },
+  methods: {
+    init() {
+      console.log('resultList', this.resultList)
+      console.log('parameterData', this.parameterData)  
+      this.keyList = Object.keys(this.parameterData[0])
+      console.log("this.keyList",this.keyList);
+    },
+  },
+}
 </script>
 
 <style scoped>
-
 </style>

+ 74 - 40
PHM-web/src/views/manage/faultDiagnosis/index.vue

@@ -120,13 +120,12 @@
       </div>
     </el-dialog>
     <!-- 虚警抑制清单 -->
-    <el-dialog :title="title" :visible.sync="dialogResult" width="800" :close-on-click-modal="false"
-      append-to-body>
-      <falseAlarmResult v-if="showFlag=='3'"/>
-      <groundDiagnosisResult v-if="showFlag=='4'"/>
-      <deepIsolationResult v-if="showFlag=='5'"/>
+    <el-dialog :title="title" :visible.sync="dialogResult" width="800" :close-on-click-modal="false" append-to-body>
+      <falseAlarmResult v-if="showFlag=='3'" :resultList='falseAlarmResultList' :parameterData='parameterData'/>
+      <groundDiagnosisResult v-if="showFlag=='4'" />
+      <deepIsolationResult v-if="showFlag=='5'" />
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="falseAlarmResultNext">{{ FABtnText }}</el-button>
+        <el-button type="primary" @click="next">{{ FABtnText }}</el-button>
         <el-button type="success" @click="reportHandel" v-if="showFlag==('4' && '5')">上报</el-button>
         <el-button @click="cancel">取 消</el-button>
       </div>
@@ -135,7 +134,7 @@
 </template>
 
 <script>
-import { listSortie, getSortie, getSortieParams } from '@/api/manage/sortie'
+import { listSortie, getSortie, getSortieParams,getSortieDataByName } from '@/api/manage/sortie'
 import {
   beginModel,
   listSortieParameterAll,
@@ -232,7 +231,14 @@ export default {
       batchNo: '',
       // 虚警抑制结果的按钮
       FABtnText:'下一步',
-      showFlag:''
+      showFlag:'',
+      // 获取数据的参数数值
+      parameterData:[],
+      // 模型运行结果
+      falseAlarmResultList:[],
+      groundDiagnosisResultText:'',
+      deepIsolationResultList:''
+
     }
   },
   watch: {
@@ -404,21 +410,39 @@ export default {
         dataParams: this.selectSortieParams,
       }
       console.log('data', data)
+      const data1={
+        sortieNo: this.form.sortieNumber,
+        parameters: this.selectSortieParams,
+      }
+      getSortieDataByName(data1).then(response => {
+        this.parameterData = JSON.parse(response.data);
+        console.log("this.parameterData",this.parameterData)
+      })
       if (!this.timer) {
         this.timer = setInterval(() => {
-          this.percentageVal += 1
-          if (this.percentageVal == 100) {
-            this.percentageVal=50
+          this.percentageVal += 2
+          if (this.percentageVal == 98) {
             clearInterval(this.timer)
             this.timer = null
-            this.dialogProgress = false
-            this.dialogResult = true
-            this.title = '虚警抑制结果'
-            // 选择模型页面数据清空
-            this.selectModelVal = ''
-            this.showFlag=this.checkList[0]
-            // 删除数组中第一个元素
-            this.checkList.shift()
+            beginModel(data).then(response => {
+              if(response.code===200){
+                this.$message.success("执行成功")
+                // console.log("response",response.data);
+                this.falseAlarmResultList = response.data
+                this.percentageVal=50
+                this.dialogProgress = false
+                this.dialogResult = true
+                this.title = '虚警抑制结果'
+                // 选择模型页面数据清空
+                this.selectModelVal = ''
+                this.showFlag=this.checkList[0]
+                // 删除数组中第一个元素
+                this.checkList.shift()
+              }else{
+                this.$message.error(response.msg)
+              }
+              
+            })
           }
         }, 50)
       }
@@ -441,18 +465,23 @@ export default {
       if (!this.timer) {
         this.timer = setInterval(() => {
           this.percentageVal += 1
-          if (this.percentageVal == 100) {
-            this.percentageVal=50
+          if (this.percentageVal == 98) {
             clearInterval(this.timer)
             this.timer = null
-            this.dialogProgress = false
-            this.dialogResult = true
-            this.title = '地面诊断结果'
-            this.showFlag=this.checkList[0]
-            // 选择模型页面数据清空
-            this.selectModelVal = ''
-            // 删除数组中第一个元素
-            this.checkList.shift()
+            beginModel(data).then(response => {
+              console.log("response",response);
+              this.percentageVal=50
+              // clearInterval(this.timer)
+              // this.timer = null
+              this.dialogProgress = false
+              this.dialogResult = true
+              this.title = '地面诊断结果'
+              this.showFlag=this.checkList[0]
+              // 选择模型页面数据清空
+              this.selectModelVal = ''
+              // 删除数组中第一个元素
+              this.checkList.shift()
+            })
           }
         }, 50)
       }
@@ -475,23 +504,28 @@ export default {
       if (!this.timer) {
         this.timer = setInterval(() => {
           this.percentageVal += 1
-          if (this.percentageVal == 100) {
-            this.percentageVal=50
+          if (this.percentageVal == 98) {
             clearInterval(this.timer)
             this.timer = null
-            this.dialogProgress = false
-            this.dialogResult = true
-            this.title = '深度隔离结果'
-            this.showFlag=this.checkList[0]
-            // 选择模型页面数据清空
-            this.selectModelVal = ''
-            // 删除数组中第一个元素
-            this.checkList.shift()
+            beginModel(data).then(response => {
+              console.log("response",response);
+              this.percentageVal=50
+              // clearInterval(this.timer)
+              // this.timer = null
+              this.dialogProgress = false
+              this.dialogResult = true
+              this.title = '深度隔离结果'
+              this.showFlag=this.checkList[0]
+              // 选择模型页面数据清空
+              this.selectModelVal = ''
+              // 删除数组中第一个元素
+              this.checkList.shift()
+            })
           }
         }, 50)
       }
     },
-    falseAlarmResultNext() {
+    next() {
       if(this.FABtnText === '完成'){
         this.dialogResult = false
         this.cancelSelectModel()

+ 8 - 9
PHM-web/src/views/manage/sortie/index.vue

@@ -149,6 +149,7 @@ import {
   delSortie,
   addSortie,
   updateSortie,
+  getSortieDataName 
 } from '@/api/manage/sortie'
 import { getToken } from '@/utils/auth'
 import { parseTime } from '@/utils/common'
@@ -292,18 +293,16 @@ export default {
       this.resetForm('form')
     },
     // 跳转到选择参数
-    playBack(row) {
-      const sortieNumber = row.sortieNumber
-      // this.$router.push(
-      //   '/manage/integratedDataManage/sortie/dataPlayback/' + sortieNumber
-      // )
-      // this.$router.push(
-      //   '/manage/integratedDataManage/sortie/selectParameters/' + sortieNumber
-      // )
+    async playBack(row) {
+      const sortieNumber = row.sortieNumber;
+      let res = await getSortieDataName(sortieNumber);
+      if (!res.data) {
+        return;
+      }
       this.$router.push({
         name: 'selectParameters',
         params: {
-          sortieNumber: sortieNumber
+          sortieNumber
         },
       })
     },

+ 3 - 2
PHM-web/src/views/manage/sortie/selectParameters.vue

@@ -123,14 +123,15 @@ export default {
   align-items: center;
 }
 .transfer >>> .el-transfer-panel{
-  width: 300px;
-  height: 450px;
+  width: 18.75rem;
+  height: 28rem;
 }
 .transfer >>> .el-transfer-panel__list.is-filterable{
   height: 350px;
 }
 .footer{
   width: 42vw;
+  height: 2.5rem;
   margin-top: 20px;
   position: relative;
 }