From a8230f1ab02069431738bd72f36ab95a0ace01ae Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期二, 06 八月 2024 15:22:22 +0800
Subject: [PATCH] 修改仿真后台
---
web/src/views/modules/taskReliability/OperatConditModel.vue | 169 +++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 135 insertions(+), 34 deletions(-)
diff --git a/web/src/views/modules/taskReliability/OperatConditModel.vue b/web/src/views/modules/taskReliability/OperatConditModel.vue
index 7966756..5d30233 100644
--- a/web/src/views/modules/taskReliability/OperatConditModel.vue
+++ b/web/src/views/modules/taskReliability/OperatConditModel.vue
@@ -1,56 +1,157 @@
<template>
- <div class="mod-taskReliability-operatConditModel}">
- <zt-table-wraper ref="tableObj" :paging='false' defaultNotQuery="true" query-url="/taskReliability/OperatConditModel/page" delete-url="/taskReliability/OperatConditModel/" v-slot="{ table }">
- <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()">
- <el-form-item>
- </el-form-item>
- </el-form>
- <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px"
- v-adaptive="{bottomOffset:70}" border @selection-change="table.selectionChangeHandle"
- row-key="id"
- :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
- :default-expand-all="true">
- <el-table-column prop="product" label="浜у搧鑺傜偣1" width="160"/>
- <el-table-column prop="modelName" label="浜у搧妯″瀷"/>
- <zt-table-column-handle :table="table" edit-perm="taskReliability:update"
- delete-perm="taskReliability::delete" :has-view="false">
- <template v-slot="{ row }">
- <zt-table-button @click="openSelectModel(row)">閫夋嫨妯″瀷</zt-table-button>
- </template>
- </zt-table-column-handle>
- </el-table>
- <select-model-rbd ref="SelectModelRbd" ></select-model-rbd>
- </zt-table-wraper>
- </div>
+ <div class="mod-taskReliability-operatConditModel}">
+ <zt-table-wraper @dataLoaded="dataLoaded" ref="tableObj" :paging='false' defaultNotQuery="true"
+ query-url="/taskReliability/OperatConditModel/page"
+ delete-url="/taskReliability/OperatConditModel/" v-slot="{ table }">
+ <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()">
+ <el-form-item>
+ <el-button v-if="dataForm.productId" type="primary" @click="save()">淇濆瓨</el-button>
+ </el-form-item>
+ </el-form>
+ <el-table v-loading="table.dataLoading" :data="table.dataList" height="100px"
+ v-adaptive="{bottomOffset:70}" border @selection-change="table.selectionChangeHandle"
+ row-key="iid"
+ :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
+ :default-expand-all="true">
+ <el-table-column prop="productName" label="浜у搧鑺傜偣"/>
+ <el-table-column prop="modelId" label="浜у搧妯″瀷">
+ <template slot-scope="scope">
+ <el-select v-model="scope.row.modelId" :disabled="scope.row.isDisabled == 1" placeholder="璇烽�夋嫨"
+ style="width:100%" @change="modelChanged(scope.row)">
+ <el-option on
+ v-for="item in scope.row.modelList"
+ :key="item.id"
+ :label="item.modelName"
+ :value="item.id"
+ />
+ </el-select>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" width="100px">
+ <template v-slot="{ row }">
+ <el-button v-if="row.modelId" type="primary" size="small" @click="drawRBD(row)">鏌ョ湅妯″瀷</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <el-dialog v-dialogDrag title="妯″瀷璁捐" top="1vh" width='95%' :visible.sync="dialogVisible2" v-if="dialogVisible2">
+ <RBDEditImg ref="rbdEditImg"></RBDEditImg>
+ </el-dialog>
+ </zt-table-wraper>
+ </div>
</template>
<script>
- import SelectModelRbd from "./SelectModelRbd";
+ import RBDEditImg from './RBD-edit-img'
+ import cloneDeep from 'lodash/cloneDeep'
+
export default {
name: 'OperaConditModel',
data() {
return {
dataForm: {
- operatConditId:'',
- productId:'',
- }
+ id: '',
+ operatConditId: '',
+ productId: '',
+ },
+ mapModelNodes: {},
+ modelList: [],
+ dialogVisible2: false,
+ isChange: false,
}
},
components: {
- SelectModelRbd
+ RBDEditImg
},
- methods:{
+ mounted() {
+ this.getModelNodes()
+ },
+ methods: {
init(param) {
console.log(param, '')
this.dataForm.operatConditId = param.row.id
this.dataForm.productId = param.productId
this.$refs.tableObj.query()
},
- openSelectModel(row) {
- console.log(row, 'selectModel');
- if (!row.operatConditId)
- row.operatConditId = this.dataForm.operatConditId
- this.$refs.SelectModelRbd.$refs.dialog.init(row)
+ dataLoaded(dataList) {
+ dataList[0].isDisabled = 0
+ if (!dataList[0].modelId && dataList[0].modelList.length == 1) {
+ console.log(dataList[0].modelList[0].id, ' dataList[0].modelList[0].modelId')
+ dataList[0].modelId = dataList[0].modelList[0].id
+ console.log(dataList[0], 'dataLoaded(dataList)')
+ this.modelChangedProess(dataList[0])
+ }
+ },
+ async save() {
+ let res = await this.$http.post('/taskReliability/OperatConditModel/', this.$refs.tableObj.dataList[0])
+ if (res.success) {
+ this.$tip.success()
+ this.isChange = false
+ this.$refs.tableObj.query()
+ }
+ },
+ async getModelNodes() {
+ let res = await this.$http.get(`/taskReliability/OperatConditModel/getModelNodes?shipId=0`)
+ console.log(res, 'res taskReliability')
+ console.log(res.data, 'res.data taskReliability')
+ if (res.data) {
+ this.mapModelNodes = res.data
+
+ }
+ },
+ modelChanged(row) {
+ this.isChange = true
+ this.modelChangedProess(row)
+ },
+ modelChangedProess(row) {
+ let modelId = row.modelId
+ let modelNodes = this.mapModelNodes[modelId]
+ console.log(modelId, 'modelChanged modelId')
+ console.log(modelNodes, 'modelChanged modelNodes')
+ console.log(row.children, 'row.children')
+
+ for (let subRow of row.children) {
+ console.log(subRow,'subRow')
+ console.log(subRow.productId,'subRow.productId')
+ if (modelNodes.indexOf(subRow.productId) != -1) {
+ subRow.isDisabled = 0
+ if (subRow.modelList.length == 1) {
+ subRow.modelId = subRow.modelList[0].id
+ console.log(subRow.modelId, 'subRow.modelId 111')
+ console.log(this.mapModelNodes[subRow.modelId], 'this.mapModelNodes[subRow.modelId] 111')
+ } else {
+ //subRow.modelId = null
+ }
+ } else {
+ subRow.isDisabled = 1
+ subRow.modelId = null
+ }
+ this.nodeIteration(subRow)
+ }
+ },
+ nodeIteration(parentRow) {
+ for (let subRow of parentRow.children) {
+ if (parentRow.modelId) {
+ subRow.isDisabled = 0
+ if (subRow.modelList.length == 1) {
+ subRow.modelId = subRow.modelList[0].id
+ }
+ } else {
+ subRow.isDisabled = 1
+ subRow.modelId = null
+ }
+ this.nodeIteration(subRow)
+ }
+ },
+ drawRBD(row) {
+ this.dialogVisible2 = true
+ let param = {
+ id: row.modelId,
+ modelName: row.modelName,
+ productId: row.productId
+ }
+ this.$nextTick(() => {
+ this.$refs.rbdEditImg.init(param)
+ })
}
}
}
--
Gitblit v1.9.1