From 5ef47212d7a7d5d8fa2b02674c1f1263b07826d0 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期四, 07 十一月 2024 17:45:41 +0800 Subject: [PATCH] 修改工况bug,新增产品节点时存在 --- web/src/views/modules/taskReliability/ReliabilityAssess.vue | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 105 insertions(+), 13 deletions(-) diff --git a/web/src/views/modules/taskReliability/ReliabilityAssess.vue b/web/src/views/modules/taskReliability/ReliabilityAssess.vue index 88ee6f9..6516b3e 100644 --- a/web/src/views/modules/taskReliability/ReliabilityAssess.vue +++ b/web/src/views/modules/taskReliability/ReliabilityAssess.vue @@ -1,14 +1,14 @@ <template> <div> <div class="mod-baseReliability-paramDataBasic fa-card-a" style="margin-left: 5px;"> - <zt-table-wraper :defaultNotQuery='true' ref="tableObj" query-url="/taskReliability/ReliabilityAssess/page" + <zt-table-wraper :defaultNotQuery='true' ref="tableObj" v-slot="{ table }" :paging='false'> <el-form :inline="true" :model="dataForm" ref="dataForm" :disabled="dataForm.disabled" label-width="80px"> <zt-form-item label="浜у搧鑺傜偣" prop="productId"> <zt-select v-model="dataForm.productId" :datas="productList" @change="onProductSelected"/> </zt-form-item> <zt-form-item label="鎬讳綋浠诲姟" prop="taskModelId"> - <zt-select v-model="dataForm.taskModelId" :datas="taskList" @change="onTaskSelected"/> + <zt-select v-model="dataForm.taskId" :datas="taskList" @change="onTaskSelected"/> </zt-form-item> <zt-form-item label="璇勫畾鏁版嵁" prop="itemId"> <zt-select v-model="dataForm.itemId" :datas="assessDataList" @change="onAssessDataSelected"/> @@ -16,13 +16,24 @@ <zt-form-item label="缃俊搴�" prop="confidence"> <el-input v-model="dataForm.confidence" placeholder="缃俊搴�" clearable></el-input> </zt-form-item> - <el-button type="primary" @click="">璇勫畾</el-button> + <el-button type="primary" @click="assess()">璇勫畾</el-button> <el-button type="primary" @click="add()">鏂板璇勫畾鏁版嵁</el-button> + <el-button type="primary" @click="handleExpand()">{{expandText}}</el-button> + <el-dropdown style="margin-left: 10px" @command="download"> + <el-button type="primary"> + 涓嬭浇xml<i class="el-icon-arrow-down el-icon--right"></i> + </el-button> + <el-dropdown-menu slot="dropdown"> + <el-dropdown-item command="1">杈撳叆xml</el-dropdown-item> + <el-dropdown-item command="2">杈撳嚭xml</el-dropdown-item> + </el-dropdown-menu> + </el-dropdown> </el-form> - <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:70}" + <el-table ref="multipleTable" v-loading="table.dataLoading" :data="dataList" height="100px" v-adaptive="{bottomOffset:70}" row-key="id" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" :header-cell-style="{'text-align':'center'}" + :expand-row-keys="defultKey" border @selection-change="table.selectionChangeHandle"> <el-table-column prop="name" label="鍚嶇О"/> <el-table-column prop="runNum" label="璇曢獙娆℃暟(鎴愯触鍨�)" align="right"> @@ -41,6 +52,8 @@ </template> <script> import AddOrUpdate from './RelisbilityAssess-AddOrUpdate' + import qs from "qs"; + import Cookies from "js-cookie"; export default { data() { @@ -48,7 +61,7 @@ dataForm: { productId: '', shipName: '', - taskModelId: '', + taskId: '', itemId: '', name: '', runTimes: '', @@ -60,6 +73,12 @@ productList: [], taskList: [], assessDataList: [], + dataList: [], + flag1: false, + flag2: false, + defultKey: [], + isExpand:false, + expandText:"涓�閿睍寮�" } }, components: { @@ -69,20 +88,46 @@ this.getProductList() }, methods: { + async page() { + let res = await this.$http.post('/taskReliability/ReliabilityAssess/page', this.dataForm) + console.log(res.data) + this.dataList = res.data + }, // 鑾峰彇淇℃伅 - onProductSelected(data) { + async onProductSelected(data) { + this.defultKey = [] console.log(data, ' onProductSelected(data)') this.dataForm.productId = data.id this.dataForm.shipName = data.name - this.getTaskList() - this.getAssessDataList(); + this.setDefultKey() + await this.zhixin().then(() => { + if (this.dataForm.taskId&& this.dataForm.itemId) { + this.page() + }else{ + this.dataList = [] + } + }) + }, + async zhixin() { + await this.getTaskList() + await this.getAssessDataList() + }, + setDefultKey() { + this.defultKey.push(this.dataForm.productId + "") + console.log(this.defultKey,"this.defultKey") }, onTaskSelected(data) { console.log(data, ' onProductSelected(data)') - this.dataForm.taskModelId = data.id + this.dataForm.taskId = data.id + if (this.dataForm.taskId&& this.dataForm.itemId) { + this.page() + } }, onAssessDataSelected(data) { this.dataForm.itemId = data.id + if (this.dataForm.taskId&& this.dataForm.itemId) { + this.page() + } }, refreshData() { this.getAssessDataList(); @@ -98,6 +143,7 @@ } else { this.dataForm.itemId = '' } + this.flag2 = true }, add() { this.$refs.AddOrUpdate.$refs.dialog.init(null, { @@ -105,10 +151,19 @@ shipName: this.dataForm.shipName }) }, + async assess() { + if (!this.dataForm.productId || !this.dataForm.taskId || !this.dataForm.itemId || !this.dataForm.confidence) { + this.$tip.alert("鏈夋湭濉啓鐨勬暟鎹�") + return + } + let res = await this.$http.post('/taskReliability/ReliabilityAssess/assess', this.dataForm) + console.log(res.data) + this.dataList = res.data + }, async getProductList() { let res = await this.$http.get('/basicInfo/XhProductModel/getTaskProductList') this.productList = res.data - this.onProductSelected(this.productList[0]) + await this.onProductSelected(this.productList[0]) }, async getTaskList() { let params = { @@ -118,11 +173,48 @@ console.log(res.data) this.taskList = res.data if (this.taskList.length > 0) { - this.dataForm.taskModelId = this.taskList[0].id + this.dataForm.taskId = this.taskList[0].id } else { - this.dataForm.taskModelId = '' + this.dataForm.taskId = '' + } + this.flag1 = true + }, + handleExpand() { + this.isExpand = !this.isExpand + this.$nextTick(() => { + this.forArr(this.dataList, this.isExpand) + }) + if (this.isExpand === true) { + this.expandText = '涓�閿姌鍙�' + } + if (this.isExpand === false) { + this.expandText = '涓�閿睍寮�' } }, - } + // 閬嶅巻 + forArr(arr, isExpand) { + arr.forEach(i => { + this.$refs.multipleTable.toggleRowExpansion(i, isExpand) + if (i.children) { + this.forArr(i.children, isExpand) + } + }) + }, + async download(selsect) { + if (!this.dataForm.productId || !this.dataForm.taskId || !this.dataForm.itemId ) { + this.$tip.alert("鏈夋湭濉啓鐨勬暟鎹�") + return + } + let param = qs.stringify({ + 'token': Cookies.get('token'), + productId: this.dataForm.productId, + taskId: this.dataForm.taskId, + itemId: this.dataForm.itemId, + xml:selsect + }) + let apiURL = `/taskReliability/ReliabilityAssess/downloadXml` + window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${param}` + } + }, } </script> -- Gitblit v1.9.1