<template>
|
<div>
|
<el-row :gutter="5">
|
<el-col :span="8">
|
<div class="fa-card-a" style="margin-right: 5px;">
|
<task @onTaskSelected="onTaskSelected" ref="task"/>
|
</div>
|
</el-col>
|
<el-col :span="10">
|
<div class="mod-taskReliability-taskPhase fa-card-a" style="margin-left: 5px;margin-right: 5px;">
|
<zt-table-wraper ref="tableObj" defaultNotQuery="true" query-url="/taskReliability/TaskPhase/page"
|
delete-url="/taskReliability/TaskPhase/"
|
@dataLoaded="dataLoaded"
|
:paging='false' v-slot="{ table }">
|
<el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()">
|
<el-form-item>
|
<zt-button v-if="dataForm.taskId" type="add" @click="add()"/>
|
<zt-button v-if="dataForm.taskId" type="delete" @click="table.deleteHandle()"/>
|
</el-form-item>
|
</el-form>
|
<el-table v-loading="table.dataLoading" :data="table.dataList" height="100px" v-adaptive="{bottomOffset:30}" border
|
:row-class-name="tableRowClassName"
|
@row-click="selectPhase" @selection-change="table.selectionChangeHandle">
|
<el-table-column type="selection" width="40" align="center"/>
|
<el-table-column prop="phaseName" label="阶段名称" align="center"/>
|
<el-table-column prop="phaseDurationRate" label="阶段时长比" align="right" width="120"/>
|
<el-table-column prop="remark" label="备注" align="center" width="100"/>
|
<zt-table-column-handle :table="table" edit-perm="testReviewComment:update"
|
delete-perm="taskReliability::delete" width="100">
|
<template v-slot="{row}">
|
<zt-table-button type="primary" @click="openEditWin(row)">修改</zt-table-button>
|
</template>
|
</zt-table-column-handle>
|
</el-table>
|
<!-- 弹窗, 新增 / 修改 -->
|
<add-or-update @refreshDataList="refreshData" ref="AddOrUpdate"/>
|
</zt-table-wraper>
|
</div>
|
</el-col>
|
<el-col :span="6">
|
<task-phase-model @getList="refreshData" ref="model"/>
|
</el-col>
|
</el-row>
|
</div>
|
</template>
|
|
<script>
|
import AddOrUpdate from './TaskPhase-AddOrUpdate'
|
import Task from "./Task";
|
import TaskPhaseModel from "./TaskPhaseModel";
|
|
export default {
|
data() {
|
return {
|
dataForm: {
|
id: '',
|
taskId: '',
|
productId: ''
|
},
|
dataList: [],
|
time: null,
|
currentId: '',
|
isChange: ''
|
}
|
},
|
components: {
|
TaskPhaseModel,
|
Task,
|
AddOrUpdate
|
},
|
methods: {
|
refreshData() {
|
this.$refs.tableObj.query()
|
this.$refs.task.$refs.tableObj.query()
|
},
|
dataLoaded(data) {
|
this.time = null
|
this.dataList = data
|
for (let i = 0; i < this.dataList.length; i++) {
|
this.time = this.time + Number(this.dataList[i].phaseDurationRate)
|
}
|
console.log(this.time)
|
},
|
add() {
|
this.$refs.AddOrUpdate.$refs.dialog.init(null, {
|
taskId: this.dataForm.taskId,
|
productId: this.dataForm.productId,
|
time: this.time
|
})
|
},
|
openEditWin(row) {
|
console.log(row)
|
this.$refs.AddOrUpdate.$refs.dialog.init(row.id, {
|
taskId: this.dataForm.taskId,
|
productId: this.dataForm.productId,
|
time: this.time
|
})
|
},
|
onTaskSelected(row) {
|
this.isChange = this.$refs.model.isChange
|
this.$refs.task.init(this.isChange)
|
if (this.isChange) {
|
this.$alert("有未保存的工况模型")
|
return;
|
}
|
this.dataForm.taskId = row.id
|
this.dataForm.productId = row.productId
|
this.$refs.tableObj.query()
|
let param = {
|
row: {id: 0},
|
productId: 0
|
}
|
this.$refs.model.init(param)
|
},
|
selectPhase(row) {
|
if (this.$refs.model.isChange) {
|
this.$alert("有未保存的工况模型")
|
return;
|
}
|
this.currentId = row.id
|
this.$emit('selectPhase', row)
|
let param = {
|
row: row,
|
productId: this.dataForm.productId
|
}
|
this.$refs.model.init(param)
|
},
|
tableRowClassName(
|
{
|
row,
|
rowIndex
|
}) {
|
if (row.id == this.currentId) {
|
return 'select-row';
|
} else {
|
return 'not-select-row';
|
}
|
}
|
}
|
}
|
</script>
|
<style>
|
.el-table .select-row {
|
background: rgba(23, 179, 163, 0.2) !important;
|
}
|
</style>
|