<template>
|
<el-dialog
|
:title="!dataForm.id ? '新增' : '修改'"
|
:visible.sync="visible"
|
:close-on-click-modal="false"
|
>
|
<el-container>
|
<!--显示工作站-->
|
<el-col :span="9">
|
<el-form :model="dataForm" label-width="100px" class="l-mes">
|
<el-form-item label="工作站" prop="partName">
|
<el-input
|
class="innerClass"
|
v-model="dataForm.resourceNo"
|
placeholder="请选择工作站"
|
readonly
|
>
|
<el-button
|
slot="append"
|
icon="el-icon-search"
|
@click="openWorkstationDialog()"
|
></el-button>
|
</el-input>
|
</el-form-item>
|
<el-form-item
|
label="资源编号"
|
prop="resourceName"
|
style="margin-top: 20px"
|
>
|
<el-input
|
v-model="dataForm.resourceNo"
|
placeholder="资源编号"
|
disabled
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
label="资源名称"
|
prop="resourceName"
|
style="margin-top: 20px"
|
>
|
<el-input
|
v-model="dataForm.resourceName"
|
placeholder="资源名称"
|
disabled
|
></el-input>
|
</el-form-item>
|
<el-form-item label="备注" prop="remark" style="margin-top: 20px">
|
<el-input
|
type="textarea"
|
v-model="dataForm.remark"
|
placeholder="备注"
|
></el-input>
|
</el-form-item>
|
</el-form>
|
</el-col>
|
<!--显示能力关联-->
|
<template>
|
<el-col :span="12" :offset="1">
|
<el-card header="能力">
|
<el-transfer
|
filterable
|
v-model="ids"
|
ref="Capability"
|
:data="allCapabilityList"
|
:titles="['未关联', '已关联']"
|
@change="handleChange"
|
>
|
</el-transfer>
|
</el-card>
|
</el-col>
|
</template>
|
</el-container>
|
|
<div class="avue-crud__pagination">
|
<el-button @click="cleanAllCapabilityList()">取消</el-button>
|
<el-button
|
type="primary"
|
:disabled="isSubmit"
|
v-thinclick="`dataFormSubmit`"
|
>确定</el-button
|
>
|
</div>
|
<workstation-dialog
|
:currshowlist.sync="workstationVisible"
|
@listenToWorkstationEvent="getWorkstation"
|
/>
|
</el-dialog>
|
</template>
|
|
<script>
|
import { fullSave, putObj, getObj } from '@/api/aps/resource'
|
|
import WorkstationDialog from './workstation.vue'
|
export default {
|
components: {
|
WorkstationDialog
|
},
|
data() {
|
return {
|
components: [],
|
getResourceId: 0,
|
dataList: [],
|
myCapabilityList: [],
|
allCapabilityList: [],
|
ids: [],
|
rightValue: [],
|
allData: [],
|
dataListLoading: false,
|
visible: false,
|
workstationVisible: false,
|
addWorVisible: false,
|
chicked: false,
|
dataForm: {
|
id: 0,
|
resourceNo: '',
|
resourceName: '',
|
remark: '',
|
workstationId: 0,
|
resourceCapabilities: [],
|
capabilities: [],
|
capabilityIds: []
|
},
|
isSubmit: false
|
}
|
},
|
methods: {
|
init(id) {
|
this.getResourceId = id
|
this.dataForm.id = id || 0
|
this.visible = true
|
this.$nextTick(() => {
|
getObj(this.dataForm.id).then((response) => {
|
if (this.dataForm) {
|
this.dataForm = response.data.data
|
this.allData = response.data.data.capabilities
|
this.allCapabilityList = this.allData
|
this.ids = this.dataForm.capabilityIds
|
? this.dataForm.capabilityIds
|
: []
|
}
|
})
|
})
|
},
|
handleChange(value, direction, movedKeys) {
|
this.rightValue = value
|
this.chicked = true
|
},
|
// 初始化表单
|
initDefaultForm() {
|
;(this.dataForm.id = 0),
|
(this.dataForm.resourceNo = null),
|
(this.dataForm.resourceName = null),
|
(this.dataForm.remark = null),
|
(this.dataForm.workstationId = 0),
|
(this.dataForm.resourceCapabilities = [])
|
},
|
// 弹出工作站
|
openWorkstationDialog() {
|
this.workstationVisible = true
|
},
|
// 暂存工作站
|
getWorkstation(value) {
|
// 获取集合将信息存入dataForm的属性中
|
this.dataForm.resourceNo = value.workstationNo
|
this.dataForm.resourceName = value.name
|
this.dataForm.workstationId = value.id
|
},
|
dataFormSubmit() {
|
this.isSubmit = true
|
if (this.dataForm.id) {
|
if (this.chicked == false) {
|
this.rightValue = this.ids
|
}
|
const updCapList = new Array()
|
for (let i = 0; i < this.rightValue.length; i++) {
|
updCapList.push(
|
Object.assign({
|
capabilityId: this.rightValue[i],
|
resourceId: this.getResourceId
|
})
|
)
|
}
|
this.dataForm.resourceCapabilities = updCapList
|
putObj(this.dataForm).then((data) => {
|
this.$message.success('修改成功')
|
this.visible = false
|
this.isSubmit = false
|
this.$emit('refreshDataList')
|
})
|
} else {
|
const addCapList = new Array()
|
for (let j = 0; j < this.rightValue.length; j++) {
|
addCapList.push(
|
Object.assign({
|
capabilityId: this.rightValue[j],
|
resourceId: null
|
})
|
)
|
}
|
this.dataForm.resourceCapabilities = addCapList
|
// 工作站已选,提交
|
if (this.dataForm.resourceName != null) {
|
fullSave(this.dataForm).then((data) => {
|
this.$message.success('添加成功')
|
this.visible = false
|
this.isSubmit = false
|
this.$emit('refreshDataList')
|
})
|
} else {
|
this.isSubmit = false
|
this.$message.warning('请先选择工作站')
|
}
|
}
|
},
|
cleanAllCapabilityList() {
|
this.visible = false
|
this.allCapabilityList = []
|
}
|
}
|
}
|
</script>
|