Bladeren bron

Merge branch 'dev-rmd2' of http://101.126.133.7:9001/Rmengdi/LQBZ_web into dev-rmd2

Gaokun Wang 1 week geleden
bovenliggende
commit
06c44f521b
22 gewijzigde bestanden met toevoegingen van 223 en 112 verwijderingen
  1. 9 0
      src/components/FittingsModal/index.vue
  2. 1 1
      src/components/MissionDetail/index.vue
  3. 1 1
      src/components/aviationMaterialsModal/index.js
  4. 3 3
      src/views/als/LLM/index.vue
  5. 53 36
      src/views/als/knowledgeManage/ERManage/index.vue
  6. 2 1
      src/views/als/model/index.vue
  7. 28 13
      src/views/basicData/dataAircraftCataloging/index.vue
  8. 5 1
      src/views/basicData/dataEnvironment/index.js
  9. 2 1
      src/views/basicData/dataEnvironment/src/regularitiesChoose.vue
  10. 2 2
      src/views/basicData/dataEnvironment/suitableSpareParts.vue
  11. 22 16
      src/views/basicData/dataSailingMaterialClassification/index.vue
  12. 9 3
      src/views/basicData/dataSailingMaterialMaterialCoding/index.js
  13. 12 5
      src/views/basicData/dataSailingMaterialMaterialCodingAviation/index.js
  14. 5 1
      src/views/basicData/dataSailingMaterialMaterialCodingAviation/index.vue
  15. 1 0
      src/views/basicData/dataType/index.vue
  16. 22 4
      src/views/carrierStandard/carrierComputationalModel/index.vue
  17. 1 1
      src/views/carrierStandard/carrierListShipping/components/primaryData/index.vue
  18. 1 1
      src/views/carrierStandard/carrierSailingMaterialConsumeRecord/warehousingRecord.js
  19. 21 16
      src/views/carrierStandard/carrierSailingMaterialConsumeRecord/warehousingRecord.vue
  20. 17 6
      src/views/carrierStandard/carrierSailingMaterialConsumeRegularities/components/index.vue
  21. 1 0
      src/views/carrierStandard/carrierUseRegistration/components/look/index.vue
  22. 5 0
      src/views/task/carrierFlightMission/components/aircraft/index.vue

+ 9 - 0
src/components/FittingsModal/index.vue

@@ -104,6 +104,15 @@ export default {
       this.getAircraftsByCode()
     },
     select(row) {
+      // debugger
+      // if (row.healthStatus == '故障') {
+      //   this.$message({
+      //     type: 'error',
+      //     message: '请选择非故障飞机!'
+      //   })
+      //   //this.fittingsVisible = false
+      //   return false
+      // }
       this.$emit('select', row)
       this.fittingsVisible = false
     }

+ 1 - 1
src/components/MissionDetail/index.vue

@@ -9,10 +9,10 @@
       <el-descriptions-item label="任务类型">{{ detail.taskType }}</el-descriptions-item>
       <el-descriptions-item label="任务飞机数量">{{ detail.taskAircraftNum }}</el-descriptions-item>
       <el-descriptions-item label="任务地点">{{ detail.taskSite }}</el-descriptions-item>
-      <el-descriptions-item label="任务描述">{{ detail.taskDescribe }}</el-descriptions-item>
       <el-descriptions-item label="带队领导">{{ detail.teamLeader }}</el-descriptions-item>
       <el-descriptions-item label="转场形式">{{ detail.transferModality }}</el-descriptions-item>
       <el-descriptions-item label="飞行次数">{{ detail.flyingSession }}</el-descriptions-item>
+      <el-descriptions-item label="任务描述">{{ detail.taskDescribe }}</el-descriptions-item>
     </el-descriptions>
   </div>
 </template>

+ 1 - 1
src/components/aviationMaterialsModal/index.js

@@ -25,7 +25,7 @@ export const dialogColumns = (_this) => [
   },
   {
     prop: 'avmatCatalogCode',
-    label: '航材编'
+    label: '航材编'
   },
   {
     prop: 'specification',

+ 3 - 3
src/views/als/LLM/index.vue

@@ -15,7 +15,7 @@
         <el-upload class="upload-demo" name="files" drag :data="carryData" :before-upload="handleBeforeUpload" :file-list="fileList" :headers="headers" :action="uploadFileUrl" :on-success="handleUploadSuccess" :on-error="handleUploadError" multiple>
           <i class="el-icon-upload"></i>
           <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
-          <div class="el-upload__tip" slot="tip">只能上传docx/doc文件,且不超过50MB</div>
+          <div class="el-upload__tip" slot="tip">只能上传docx文件,且不超过50MB</div>
         </el-upload>
       </el-dialog>
     </div>
@@ -185,14 +185,14 @@ export default {
     },
 
     handleBeforeUpload(file) {
-      const fileType = ['docx', 'doc']
+      const fileType = ['docx']
       const fileName = file.name.split('.')
       const fileExt = fileName[fileName.length - 1]
       const isTypeOk = fileType.indexOf(fileExt) >= 0
       if (!isTypeOk) {
         this.$message({
           type: 'error',
-          message: '文件格式不正确, 请上传docx/doc格式文件!'
+          message: '文件格式不正确, 请上传docx格式文件!'
         })
         return false
       }

+ 53 - 36
src/views/als/knowledgeManage/ERManage/index.vue

@@ -19,23 +19,22 @@
       <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="600px" :before-close="handleClose">
         <el-form ref="form" :model="form" label-width="80px" :rules="rules">
           <el-form-item label="主体名称" prop="subjectName">
-            <el-input v-model="form.subjectName" placeholder="请输入主体名称" :disabled="dialogTitle === '编辑'" />
-            <!-- <el-select v-model="form.subjectName" placeholder="请选择实体类型">
-              <el-option v-for="(item, index) in subjectList" :key="index" :label="item.name" :value="item.name" />
-            </el-select> -->
+            <!-- <el-input v-model="form.subjectName" placeholder="请输入主体名称" :disabled="dialogTitle === '编辑'" /> -->
+            <el-select v-model="form.subjectId" placeholder="请选择主体" @change="handleSelectSubject">
+              <el-option v-for="item in entityList" :key="item.id" :label="item.name" :value="item.id" />
+            </el-select>
           </el-form-item>
           <el-form-item label="主体类型" prop="subjectCategory">
-            <el-input :disabled="dialogTitle === '编辑'" v-model="form.subjectCategory" placeholder="请输入主体类型" />
-            <!-- <el-select v-model="form.subjectCategory" placeholder="请选择主体类型">
-              <el-option v-for="(item, index) in subjectList" :key="index" :label="item.name" :value="item.name" />
-            </el-select> -->
+            <el-input disabled v-model="form.subjectCategory" placeholder="主体类型" />
           </el-form-item>
 
-          <el-form-item label="客体名称" prop="objectName">
-            <el-input :disabled="dialogTitle === '编辑'" v-model="form.objectName" placeholder="请输入客体名称" />
+          <el-form-item label="客体名称" prop="objectId">
+            <el-select v-model="form.objectId" placeholder="请选择客体" @change="handleSelectObject">
+              <el-option v-for="item in entityList" :key="item.id" :label="item.name" :value="item.id" />
+            </el-select>
           </el-form-item>
           <el-form-item label="客体类型" prop="objectCategory">
-            <el-input :disabled="dialogTitle === '编辑'" v-model="form.objectCategory" placeholder="请输入客体类型" />
+            <el-input disabled v-model="form.objectCategory" placeholder="客体类型" />
           </el-form-item>
           <el-form-item label="关系" prop="relationName">
             <el-select v-model="form.relationName" placeholder="请选择关系">
@@ -152,6 +151,10 @@ export default {
       },
       debounceFn: debounce(this.fetch, 500),
       relationList: [],
+      entityList: [
+        { id: 6, name: 'A通道右鸭翼指令输出指令故障', category: '故障描述' },
+        { id: 6363, name: '更换对应报故ISACF', category: '维修策略' }
+      ],
       loading: null
     }
   },
@@ -168,15 +171,6 @@ export default {
     async getInit() {
       this.getRelationAPI()
       this.getAllRelationClassAPI()
-      // try {
-      //   if (this.$refs.table) this.$refs.table.clearSelection()
-      //   const {
-      //     data: { dataList }
-      //   } = await getEntityList()
-      //   this.tableData = dataList
-      // } catch (error) {
-
-      // }
     },
 
     async deleteRelationAPI(row) {
@@ -246,6 +240,20 @@ export default {
       return tableData
     },
 
+    handleSelectSubject(val) {
+      const data = this.entityList.find((item) => {
+        return item.id == val
+      })
+      this.form.subjectCategory = data.category
+    },
+
+    handleSelectObject(val) {
+      const data = this.entityList.find((item) => {
+        return item.id == val
+      })
+      this.form.objectCategory = data.category
+    },
+
     async getAllRelationClassAPI(params) {
       try {
         const {
@@ -256,6 +264,15 @@ export default {
       } catch (error) {}
     },
 
+    async getEntityListAPI() {
+      try {
+        const {
+          data: { dataList }
+        } = await getEntityList()
+        this.entityList = dataList
+      } catch (error) {}
+    },
+
     fetch() {
       this.getRelationAPI()
     },
@@ -272,21 +289,22 @@ export default {
     },
 
     async addRelationAPI() {
-      try {
-        const addData = {
-          node_name: this.form.name,
-          node_label: this.form.category
-        }
-        const { code } = await addRelation(addData)
-        if (code === 200) {
-          this.$message({
-            type: 'success',
-            message: '操作成功!'
-          })
-          this.handleClose()
-          this.getRelationAPI()
-        }
-      } catch (error) {}
+      // try {
+      const addData = {
+        head_node_id: this.form.subjectId,
+        tail_node_id: this.form.objectId,
+        new_relation_name: this.form.relationName
+      }
+      // const { code } = await addRelation(addData)
+      // if (code === 200) {
+      this.$message({
+        type: 'success',
+        message: '操作成功!'
+      })
+      this.handleClose()
+      this.getRelationAPI()
+      // }
+      // } catch (error) {}
     },
 
     async updateRelationAPI() {
@@ -296,7 +314,6 @@ export default {
           tail_node_id: this.form.objectId,
           new_relation_name: this.form.relationName
         }
-        console.log('updateData', updateData)
         const { code } = await updateRelation(updateData)
         if (code === 200) {
           this.$message({

+ 2 - 1
src/views/als/model/index.vue

@@ -141,7 +141,7 @@ export default {
         },
         {
           prop: 'columnData',
-          label: '飞参数据列'
+          label: '数据列'
         },
         {
           prop: 'status',
@@ -224,6 +224,7 @@ export default {
         url: [{ required: true, message: '模型链接不能为空', trigger: 'blur' }],
         paramType: [{ required: true, message: '参数特征不能为空', trigger: 'change' }],
         aircraftType: [{ required: true, message: '机型不能为空', trigger: 'change' }],
+        columnData: [{ required: true, message: '数据列不能为空', trigger: 'blur' }],
         partId: [{ required: true, message: '部件不能为空', trigger: 'change' }]
       },
       paramTypeData: [],

+ 28 - 13
src/views/basicData/dataAircraftCataloging/index.vue

@@ -27,8 +27,8 @@
         <LTable ref="table" @selection-change="selection" :defaultFetch="false" :fetch="fetch" :columns="columns" :dataSource="tableData" :options="options" :pagination="tableRequset"></LTable>
       </div>
       <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="600px" :before-close="handleClose">
-        <el-form ref="form" :model="form" label-width="80px">
-          <el-form-item label="飞机编号">
+        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+          <el-form-item label="飞机编号" prop="aircaftCatalogCode">
             <el-input v-model="form.aircaftCatalogCode"></el-input>
           </el-form-item>
           <el-form-item label="机械师">
@@ -52,7 +52,7 @@
           <el-form-item label="生产厂家">
             <el-input v-model="form.manufacturer"></el-input>
           </el-form-item>
-          <el-form-item label="生编号">
+          <el-form-item label="生编号">
             <el-input v-model="form.factoryNumber"></el-input>
           </el-form-item>
           <el-form-item label="状态">
@@ -125,6 +125,15 @@ export default {
         factoryNumber: '',
         status: ''
       },
+      rules: {
+        aircaftCatalogCode: [
+          {
+            required: true,
+            message: '请输入飞机编号',
+            trigger: 'blur'
+          }
+        ]
+      },
       debounceFn: debounce(this.fetch, 500)
     }
   },
@@ -265,16 +274,22 @@ export default {
     },
 
     submit() {
-      switch (this.dialogTitle) {
-        case '编辑':
-          this.updateAircaftCatalogAPI()
-          this.handleClose()
-          break
-        case '新增':
-          this.addAircaftCatalogAPI()
-          this.handleClose()
-          break
-      }
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          switch (this.dialogTitle) {
+            case '编辑':
+              this.updateAircaftCatalogAPI()
+              this.handleClose()
+              break
+            case '新增':
+              this.addAircaftCatalogAPI()
+              this.handleClose()
+              break
+          }
+        } else {
+          return false
+        }
+      })
     },
 
     selection(val) {

+ 5 - 1
src/views/basicData/dataEnvironment/index.js

@@ -39,7 +39,11 @@ export const modalConfig = (_this) => ({
   itemStyle: { padding: '10px' },
   width: '600px', // 弹框宽度
   rules: {
-    factor: [{ validator: validatePass, trigger: 'blur' }]
+    env: [{ required: true, message: '请输入环境因子名称', trigger: 'blur' }],
+    factor: [
+      { required: true, message: '请输入环境因子值', trigger: 'blur' },
+      { validator: validatePass, trigger: 'blur' }
+    ]
   }
 })
 

+ 2 - 1
src/views/basicData/dataEnvironment/src/regularitiesChoose.vue

@@ -2,7 +2,7 @@
   <div class="index">
     <el-dialog :title="dialogTitle" :visible.sync="regularitiesChooseVisible" width="600px" :before-close="closeModal">
       <el-form ref="form" :model="activeRow" :rules="rules" label-width="80px">
-        <el-form-item label="航材名称">
+        <el-form-item label="航材名称" prop="avmatCatalogName">
           <el-input v-model="activeRow.avmatCatalogName" disabled>
             <el-button type="primary" @click="openFittingsModal" slot="append" :disabled="dialogType !== 'add'">选择</el-button>
           </el-input>
@@ -75,6 +75,7 @@ export default {
         factor: this.$route.params.value
       },
       rules: {
+        avmatCatalogName: [{ required: true, message: '请选择航材名称', trigger: 'blur' }],
         factor: [{ validator: validatePass, trigger: 'blur' }]
       },
       dialogTitle: '新增',

+ 2 - 2
src/views/basicData/dataEnvironment/suitableSpareParts.vue

@@ -6,7 +6,7 @@
         <el-button type="warning" @click="handleDelete(tableCheckItems)" :disabled="tableCheckItems.length == 0">删除</el-button>
       </div>
       <div class="common-box-search">
-        <el-input placeholder="请输入环境因子名称" v-model="searchValue" class="input-with-select" @keyup.enter.native="fetchTableData">
+        <el-input placeholder="请输入航材名称/航材编号" v-model="searchValue" class="input-with-select" @keyup.enter.native="fetchTableData">
           <el-button slot="append" icon="el-icon-search" @click="fetchTableData"></el-button>
         </el-input>
       </div>
@@ -50,7 +50,7 @@ export default {
       const { pageIndex: pageNum, pageSize } = this.pagination
       const {
         data: { list, total }
-      } = await queryTEnvFactorDetails({ envFactorId: id, pageNum, pageSize })
+      } = await queryTEnvFactorDetails({ envFactorId: id, pageNum, pageSize, searchValue: this.searchValue })
       this.tableData = list
       this.pagination.total = total
     },

+ 22 - 16
src/views/basicData/dataSailingMaterialClassification/index.vue

@@ -3,7 +3,7 @@
     <div class="common-box">
       <div class="common-box-button">
         <el-button type="success" @click="handleAdd">新增</el-button>
-        <el-button type="warning" @click="remove(removeArr)">删除</el-button>
+        <el-button type="warning" @click="handRemove(removeArr)">删除</el-button>
         <el-dropdown split-button type="primary" style="margin-left: 10px" trigger="click" @command="handleExport">
           更多
           <el-dropdown-menu slot="dropdown">
@@ -135,22 +135,28 @@ export default {
       this.activeRow = deepClone(row)
       this.dialogVisible = true
     },
-    handRemove(row) {
-      this.$confirm('是否确认删除该数据', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      })
-        .then(async () => {
-          const { code } = await removeAvmatCategories([row.avmatCategoriesId])
-          if (code == 200) {
-            this.$message({
-              type: 'success',
-              message: '删除成功!'
-            })
-          }
+    async handRemove(rows) {
+      const deleterows = Array.isArray(rows) ? rows : [rows]
+      if (deleterows.length === 0) {
+        this.$message.warning('请选择要删除的数据')
+        return
+      }
+      const ids = deleterows.map((row) => row.avmatCategoriesId)
+      try {
+        await this.$confirm('是否确认删除选中的数据', '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning'
         })
-        .catch(() => {})
+        const { code } = await removeAvmatCategories(ids)
+        if (code == 200) {
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
+          await this.fetchTableData()
+        }
+      } catch (error) {}
     },
     // 全选
     selectAll(data) {

+ 9 - 3
src/views/basicData/dataSailingMaterialMaterialCoding/index.js

@@ -59,6 +59,12 @@ export const modalConfig = (_this) => ({
       colLayout: { span: 12 }
     }
   ],
+  rules: {
+    avmatCatalogName: [{ required: true, message: '请输入航材名称', trigger: 'blur' }],
+    avmatCatalogCode: [{ required: true, message: '请输入航材编码', trigger: 'blur' }],
+    unit: [{ required: true, message: '请输入计量单位', trigger: 'blur' }],
+    avmatCategoriesName: [{ required: true, message: '请选择所属分类', trigger: 'blur' }]
+  },
   labelWidth: '80px',
   itemStyle: { padding: '10px' },
   width: '680px' // 弹框宽度
@@ -102,7 +108,7 @@ export const columns = (_this) => [
     prop: 'isRepairable',
     label: '是否可修',
     render: (h, params) => {
-      if (params.row.status == 1) {
+      if (params.row.isRepairable == 1) {
         return h('span', { class: 'success-state' }, '是')
       } else {
         return h('span', { class: 'warning-state' }, '否')
@@ -136,9 +142,9 @@ export const columns = (_this) => [
     label: '是否进口',
     render: (h, params) => {
       if (params.row.isImported == 1) {
-        return h('span', { class: 'theme-state' }, '进口')
+        return h('span', { class: 'success-state' }, '是')
       } else {
-        return h('span', { class: 'success-state' }, '国产')
+        return h('span', { class: 'warning-state' }, '否')
       }
     }
   },

+ 12 - 5
src/views/basicData/dataSailingMaterialMaterialCodingAviation/index.js

@@ -58,6 +58,12 @@ export const modalConfig = (_this) => ({
       colLayout: { span: 12 }
     }
   ],
+  rules: {
+    avmatCatalogName: [{ required: true, message: '请输入航材名称', trigger: 'blur' }],
+    avmatCatalogCode: [{ required: true, message: '请输入航材编码', trigger: 'blur' }],
+    unit: [{ required: true, message: '请输入计量单位', trigger: 'blur' }],
+    avmatCategoriesName: [{ required: true, message: '请选择所属分类', trigger: 'blur' }]
+  },
   labelWidth: '80px',
   itemStyle: { padding: '10px' },
   width: '680px' // 弹框宽度
@@ -72,7 +78,8 @@ export const modalConfig = (_this) => ({
 export const columns = (_this) => [
   {
     prop: 'avmatCatalogName',
-    label: '航材名称'
+    label: '航材名称',
+    align: 'left'
   },
   {
     prop: 'avmatCatalogCode',
@@ -103,9 +110,9 @@ export const columns = (_this) => [
     label: '是否可修',
     render: (h, params) => {
       if (params.row.isRepairable == 1) {
-        return h('span', { class: 'success-state' }, '可修')
+        return h('span', { class: 'success-state' }, '')
       } else {
-        return h('span', { class: 'warning-state' }, '不可修')
+        return h('span', { class: 'warning-state' }, '')
       }
     }
   },
@@ -136,9 +143,9 @@ export const columns = (_this) => [
     label: '是否进口',
     render: (h, params) => {
       if (params.row.isImported == 1) {
-        return h('span', { class: 'success-state' }, '进口')
+        return h('span', { class: 'success-state' }, '')
       } else {
-        return h('span', { class: 'warning-state' }, '国产')
+        return h('span', { class: 'warning-state' }, '')
       }
     }
   },

+ 5 - 1
src/views/basicData/dataSailingMaterialMaterialCodingAviation/index.vue

@@ -64,6 +64,7 @@ export default {
     return {
       nodeKey: 'avmatCategoriesId',
       currentNodeValue: '',
+      currentNode: null,
       menuTreeData: [],
       treeObj: {
         title: '所属分类',
@@ -112,6 +113,7 @@ export default {
     treeNodeClick(node) {
       this.searchValue = ''
       this.currentNodeValue = node[this.nodeKey]
+      this.currentNode = node
       this.fetchTableData()
     },
 
@@ -189,7 +191,9 @@ export default {
           isRepairable: 1,
           isCompleteSet: 1,
           isOrdered: 1,
-          isImported: 1
+          isImported: 1,
+
+          ...(this.currentNode ? { avmatCategoriesName: this.currentNode.avmatCategoriesName } : {})
         },
         title: '新增'
       }

+ 1 - 0
src/views/basicData/dataType/index.vue

@@ -91,6 +91,7 @@ export default {
         aircaftTypeName: [{ required: true, message: '请输入机种名称', trigger: 'blur' }],
         aircaftTypeCode: [{ required: true, message: '请输入机种编号', trigger: 'blur' }],
         number: [
+          { required: true, message: '请输入显示序号', trigger: 'blur' },
           {
             validator: validInt,
             trigger: 'change'

+ 22 - 4
src/views/carrierStandard/carrierComputationalModel/index.vue

@@ -53,15 +53,15 @@
     </div>
 
     <el-dialog v-if="dialogVisible" :title="dialogTile" :visible.sync="dialogVisible" width="1000px" :before-close="handleClose">
-      <el-form ref="form" :model="activeRow" label-width="100px">
+      <el-form ref="form" :model="activeRow" :rules="rules" label-width="100px">
         <el-row>
           <el-col :span="24">
-            <el-form-item label="公式名称">
+            <el-form-item label="公式名称" prop="formulaName">
               <el-input v-model="activeRow.formulaName"></el-input>
             </el-form-item>
           </el-col>
-          <el-col :span="24">
-            <el-form-item label="公式"><MathJax ref="MathJax" :formula="activeRow.formulaUse" /> </el-form-item>
+          <el-col :span="24" prop="formulaUse">
+            <el-form-item label="公式" prop="formulaUse"><MathJax ref="MathJax" :formula="activeRow.formulaUse" /> </el-form-item>
           </el-col>
           <el-col :span="24">
             <el-form-item label="参数">
@@ -154,6 +154,22 @@ export default {
       },
       columns: columns(this),
       options,
+      rules: {
+        formulaName: [
+          {
+            required: true,
+            message: '请输入公式名称',
+            trigger: 'blur'
+          }
+        ],
+        formulaUse: [
+          {
+            required: true,
+            message: '请编辑公式',
+            trigger: 'blur'
+          }
+        ]
+      },
       calculationModelId: null,
       foucsRow: null
     }
@@ -166,6 +182,7 @@ export default {
       addFormula(item, this)
     },
     async handleClick() {
+      await this.$refs.form.validate()
       if (this.dialogTile == '编辑公式') {
         let postData = {
           formulaName: this.activeRow.formulaName,
@@ -194,6 +211,7 @@ export default {
           this.activeRow.formulaUse = ''
         }
       }
+
       this.calculationModelId = null
     },
     async getTableData(searchValue) {

+ 1 - 1
src/views/carrierStandard/carrierListShipping/components/primaryData/index.vue

@@ -15,7 +15,7 @@
         </div>
         <div class="view-AerospaceCompileLineList-right-btn-right">
           <el-input placeholder="请输入内容" v-model="searchValue" class="input-with-select">
-            <el-button slot="append" icon="el-icon-search"></el-button>
+            <el-button slot="append" @click="fetchTableData()" icon="el-icon-search"></el-button>
           </el-input>
         </div>
       </div>

+ 1 - 1
src/views/carrierStandard/carrierSailingMaterialConsumeRecord/warehousingRecord.js

@@ -53,7 +53,7 @@ export const columns = (_this) => [
         round: false,
         plain: false,
         onClick: (row, index, scope) => {
-          _this.handRemove(row)
+          _this.handleDelete(row)
         }
       },
       {

+ 21 - 16
src/views/carrierStandard/carrierSailingMaterialConsumeRecord/warehousingRecord.vue

@@ -112,23 +112,28 @@ export default {
       this.pagination.total = totalCount
     },
 
-    handleDelete(params) {
-      this.$confirm('是否确认删除该数据', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      })
-        .then(async () => {
-          const { success } = await removeWarehousingRecord(params.map((e) => e.warehousingRecordId))
-          if (success) {
-            this.$message({
-              type: 'success',
-              message: '操作成功!'
-            })
-          }
-          this.fetchTableData()
+    async handleDelete(rows) {
+      const deleterows = Array.isArray(rows) ? rows : [rows]
+      if (deleterows.length === 0) {
+        this.$message.warning('请选择要删除的数据')
+        return
+      }
+      const ids = deleterows.map((row) => row.warehousingRecordId)
+      try {
+        await this.$confirm('是否确认删除选中的数据', '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning'
         })
-        .catch(() => {})
+        const { code } = await removeWarehousingRecord(ids)
+        if (code == 200) {
+          this.$message({
+            type: 'success',
+            message: '删除成功!'
+          })
+          await this.fetchTableData()
+        }
+      } catch (error) {}
     },
 
     // 单选

+ 17 - 6
src/views/carrierStandard/carrierSailingMaterialConsumeRegularities/components/index.vue

@@ -1,8 +1,8 @@
 <template>
   <div class="index">
     <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="600px" :before-close="closeDialog">
-      <el-form ref="form" :model="activeRow" label-width="80px">
-        <el-form-item label="航材名称">
+      <el-form ref="form" :model="activeRow" :rules="rules" label-width="80px">
+        <el-form-item label="航材名称" prop="avmatCatalogName">
           <el-input v-model="activeRow.avmatCatalogName" disabled>
             <el-button type="primary" @click="openFittingsModal" slot="append">选择</el-button>
           </el-input>
@@ -13,10 +13,10 @@
         <el-form-item label="所属分类">
           <el-input v-model="activeRow.avmatCategoriesCodeName" disabled></el-input>
         </el-form-item>
-        <el-form-item label="MTBF">
+        <el-form-item label="MTBF" prop="mtbf">
           <el-input v-model="activeRow.mtbf"></el-input>
         </el-form-item>
-        <el-form-item label="寿命单位">
+        <el-form-item label="寿命单位" prop="LifeUnit">
           <el-select v-model="activeRow.LifeUnit" placeholder="">
             <el-option v-for="item in monadOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"> </el-option>
           </el-select>
@@ -78,7 +78,12 @@ export default {
         pageSize: 20,
         searchValue: ''
       },
-      avmatCategoriesId: ''
+      avmatCategoriesId: '',
+      rules: {
+        avmatCatalogName: [{ required: true, message: '航材名称不能为空', trigger: 'blur' }],
+        mtbf: [{ required: true, message: 'MTBF不能为空', trigger: 'blur' }],
+        LifeUnit: [{ required: true, message: '寿命单位不能为空', trigger: 'blur' }]
+      }
     }
   },
 
@@ -132,7 +137,13 @@ export default {
     },
 
     handleRegularities() {
-      this.$emit('handleRegularities', { type: this.dialogType, params: deepClone(this.activeRow) })
+      this.$refs['form'].validate(async (valid) => {
+        if (valid) {
+          this.$emit('handleRegularities', { type: this.dialogType, params: deepClone(this.activeRow) })
+        } else {
+          return false
+        }
+      })
     },
 
     openFittingsModal() {

+ 1 - 0
src/views/carrierStandard/carrierUseRegistration/components/look/index.vue

@@ -26,6 +26,7 @@
           <el-table-column prop="purchasePrice" label="单价(元)" align="center"> </el-table-column>
           <el-table-column prop="applyForNum" label="申请总数量" align="center"> </el-table-column>
           <el-table-column prop="stockRemovalNum" label="出库总数量" align="center"> </el-table-column>
+          <el-table-column prop="usedNum" label="已使用总数量" align="center"> </el-table-column>
         </el-table>
         <el-pagination
           background

+ 5 - 0
src/views/task/carrierFlightMission/components/aircraft/index.vue

@@ -86,6 +86,11 @@ export default {
   mounted() {
     this.getAircraftList()
   },
+  watch: {
+    $route() {
+      this.getAircraftList()
+    }
+  },
   methods: {
     fittingsModalSelect(row) {
       this.tableData[this.activeIndex].aircaftModelName = row.aircaftModelName