|
@@ -1,19 +1,12 @@
|
|
|
<template>
|
|
|
- <a-modal
|
|
|
- :title="modalTitle"
|
|
|
- :width="1300"
|
|
|
- :visible="visible"
|
|
|
- :confirmLoading="confirmLoading"
|
|
|
- class="ant-modal2"
|
|
|
- @cancel="handleCancel"
|
|
|
- >
|
|
|
+ <a-modal :title="modalTitle" :width="1300" :visible="visible" :confirmLoading="confirmLoading" class="ant-modal2" @cancel="handleCancel">
|
|
|
<a-card :bordered="false">
|
|
|
<div class="table-page-search-wrapper">
|
|
|
<a-form layout="inline">
|
|
|
<a-row :gutter="48">
|
|
|
<a-col :md="8" :sm="24">
|
|
|
<a-form-item label="关键字">
|
|
|
- <a-input v-model.trim="queryParam.keyword" placeholder="请输入名称/编码"/>
|
|
|
+ <a-input v-model.trim="queryParam.keyword" placeholder="请输入名称/编码" />
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<!-- <a-col :md="8" :sm="24">
|
|
@@ -33,26 +26,14 @@
|
|
|
<a-col :md="6" :sm="24">
|
|
|
<a-form-item label="车间位置">
|
|
|
<a-select v-model="queryParam.positionId" placeholder="请选择">
|
|
|
- <a-select-option
|
|
|
- v-for="({id,name}) in sbPositionData"
|
|
|
- :key="id"
|
|
|
- :label="name"
|
|
|
- :value="id">{{ name }}
|
|
|
+ <a-select-option v-for="({id,name}) in sbPositionData" :key="id" :label="name" :value="id">{{ name }}
|
|
|
</a-select-option>
|
|
|
</a-select>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="6" :sm="24">
|
|
|
<a-form-item label="设备类型">
|
|
|
- <a-tree-select
|
|
|
- style="width: 100%"
|
|
|
- :dropdownStyle="{ maxHeight: '400px', overflow: 'auto' }"
|
|
|
- :treeData="treeData"
|
|
|
- :treeNodeFilterProp="'title'"
|
|
|
- :showSearch="true"
|
|
|
- placeholder="请选择"
|
|
|
- @change="handleChange"
|
|
|
- >
|
|
|
+ <a-tree-select style="width: 100%" :dropdownStyle="{ maxHeight: '400px', overflow: 'auto' }" :treeData="treeData" :treeNodeFilterProp="'title'" :showSearch="true" placeholder="请选择" @change="handleChange">
|
|
|
</a-tree-select>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
@@ -69,18 +50,7 @@
|
|
|
<div class="table-operator" style="margin-bottom: 8px;">
|
|
|
</div>
|
|
|
|
|
|
- <s-table
|
|
|
- ref="table"
|
|
|
- size="default"
|
|
|
- rowKey="id"
|
|
|
- :columns="columns"
|
|
|
- :data="loadData"
|
|
|
- :alert="options.alert"
|
|
|
- :customRow="options.customRow"
|
|
|
- :rowSelection="options.rowSelection"
|
|
|
- :scroll="{ x: 1300, y: BaseTool.Constant.scrollY }"
|
|
|
- showPagination="auto"
|
|
|
- >
|
|
|
+ <s-table ref="table" size="default" rowKey="id" :columns="columns" :data="loadData" :alert="options.alert" :customRow="options.customRow" :rowSelection="options.rowSelection" :scroll="{ x: 1300, y: BaseTool.Constant.scrollY }" showPagination="auto">
|
|
|
<span slot="action" slot-scope="record">
|
|
|
<template>
|
|
|
|
|
@@ -108,37 +78,35 @@ export default {
|
|
|
name: 'SbInfoSelectModal',
|
|
|
components: {
|
|
|
STable,
|
|
|
- Ellipsis
|
|
|
+ Ellipsis,
|
|
|
},
|
|
|
props: {
|
|
|
type: {
|
|
|
type: String,
|
|
|
- default: 'radio'
|
|
|
+ default: 'radio',
|
|
|
},
|
|
|
selectedRowKey: {
|
|
|
type: Array,
|
|
|
default: () => {
|
|
|
return []
|
|
|
- }
|
|
|
+ },
|
|
|
},
|
|
|
selectedRow: {
|
|
|
type: Array,
|
|
|
default: () => {
|
|
|
return []
|
|
|
- }
|
|
|
- }
|
|
|
+ },
|
|
|
+ },
|
|
|
},
|
|
|
- data () {
|
|
|
+ data() {
|
|
|
return {
|
|
|
confirmLoading: false,
|
|
|
mdl: {},
|
|
|
modalTitle: null,
|
|
|
visible: false,
|
|
|
// 查询参数
|
|
|
- queryParam: {
|
|
|
- },
|
|
|
- extraQueryParam: {
|
|
|
- },
|
|
|
+ queryParam: {},
|
|
|
+ extraQueryParam: {},
|
|
|
depreciationTypeMap: {},
|
|
|
levelMap: {},
|
|
|
statusMap: {},
|
|
@@ -153,22 +121,22 @@ export default {
|
|
|
{
|
|
|
title: '设备名称',
|
|
|
checked: true,
|
|
|
- dataIndex: 'name'
|
|
|
+ dataIndex: 'name',
|
|
|
},
|
|
|
{
|
|
|
title: '设备编号',
|
|
|
dataIndex: 'no',
|
|
|
- checked: true
|
|
|
+ checked: true,
|
|
|
},
|
|
|
{
|
|
|
title: '设备位号',
|
|
|
checked: true,
|
|
|
- dataIndex: 'positionNo'
|
|
|
+ dataIndex: 'positionNo',
|
|
|
},
|
|
|
{
|
|
|
title: '型号',
|
|
|
checked: true,
|
|
|
- dataIndex: 'model'
|
|
|
+ dataIndex: 'model',
|
|
|
},
|
|
|
{
|
|
|
title: '设备类型',
|
|
@@ -177,7 +145,7 @@ export default {
|
|
|
width: 200,
|
|
|
customRender: (text, record, index) => {
|
|
|
return record.typeName
|
|
|
- }
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
title: '设备等级',
|
|
@@ -186,19 +154,19 @@ export default {
|
|
|
width: 200,
|
|
|
customRender: (text, record, index) => {
|
|
|
return this.BaseTool.Object.getField(this.levelMap, text)
|
|
|
- }
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
title: '状态',
|
|
|
dataIndex: 'status',
|
|
|
checked: true,
|
|
|
width: 200,
|
|
|
- scopedSlots: { customRender: 'status' }
|
|
|
+ scopedSlots: { customRender: 'status' },
|
|
|
},
|
|
|
{
|
|
|
title: '备注',
|
|
|
dataIndex: 'remark',
|
|
|
- width: 200
|
|
|
+ width: 200,
|
|
|
},
|
|
|
{
|
|
|
title: '操作',
|
|
@@ -206,11 +174,11 @@ export default {
|
|
|
width: '200px',
|
|
|
align: 'center',
|
|
|
fixed: 'right',
|
|
|
- scopedSlots: { width: 200, customRender: 'action' }
|
|
|
- }
|
|
|
+ scopedSlots: { width: 200, customRender: 'action' },
|
|
|
+ },
|
|
|
],
|
|
|
// 加载数据方法 必须为 Promise 对象
|
|
|
- loadData: parameter => {
|
|
|
+ loadData: (parameter) => {
|
|
|
parameter = {
|
|
|
...parameter,
|
|
|
...this.queryParam,
|
|
@@ -218,29 +186,33 @@ export default {
|
|
|
typeList: this.typeList,
|
|
|
dataScope: {
|
|
|
sortBy: 'asc',
|
|
|
- sortName: 'no'
|
|
|
- }
|
|
|
+ sortName: 'no',
|
|
|
+ },
|
|
|
}
|
|
|
- return getSbInfoPage(Object.assign(parameter, this.queryParam))
|
|
|
- .then(res => {
|
|
|
- return res.data
|
|
|
- })
|
|
|
+ return getSbInfoPage(Object.assign(parameter, this.queryParam)).then((res) => {
|
|
|
+ return res.data
|
|
|
+ })
|
|
|
},
|
|
|
selectedRowKeys: [],
|
|
|
selectedRows: [],
|
|
|
|
|
|
options: {
|
|
|
- alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
|
|
|
+ alert: {
|
|
|
+ show: true,
|
|
|
+ clear: () => {
|
|
|
+ this.selectedRowKeys = []
|
|
|
+ },
|
|
|
+ },
|
|
|
rowSelection: {
|
|
|
selectedRowKeys: this.selectedRowKeys,
|
|
|
- onChange: this.onSelectChange
|
|
|
- }
|
|
|
+ onChange: this.onSelectChange,
|
|
|
+ },
|
|
|
},
|
|
|
optionAlertShow: true,
|
|
|
- isCreated: false
|
|
|
+ isCreated: false,
|
|
|
}
|
|
|
},
|
|
|
- created () {
|
|
|
+ created() {
|
|
|
this.tableOption()
|
|
|
this.depreciationTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_DEPRECIATIONTYPE)
|
|
|
this.levelMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_LEVEL)
|
|
@@ -248,71 +220,77 @@ export default {
|
|
|
this.unitMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_UNIT)
|
|
|
this.sourceTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBTYPE_SOURCETYPE)
|
|
|
this.useTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_UES_TYPE)
|
|
|
- querySbPosition().then(res => {
|
|
|
+ querySbPosition().then((res) => {
|
|
|
this.sbPositionData = res.data
|
|
|
})
|
|
|
- fetchSbTypeTree().then(res => {
|
|
|
+ fetchSbTypeTree().then((res) => {
|
|
|
this.treeData = res.data
|
|
|
})
|
|
|
},
|
|
|
methods: {
|
|
|
- tableOption () {
|
|
|
+ tableOption() {
|
|
|
// this.setTree()
|
|
|
if (!this.optionAlertShow) {
|
|
|
this.options = {
|
|
|
- alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
|
|
|
+ alert: {
|
|
|
+ show: true,
|
|
|
+ clear: () => {
|
|
|
+ this.selectedRowKeys = []
|
|
|
+ },
|
|
|
+ },
|
|
|
rowSelection: {
|
|
|
selectedRowKeys: this.selectedRowKeys,
|
|
|
onChange: this.onSelectChange,
|
|
|
type: this.type,
|
|
|
- getCheckboxProps: record => ({
|
|
|
+ getCheckboxProps: (record) => ({
|
|
|
props: {
|
|
|
disabled: false,
|
|
|
- name: record.id
|
|
|
- }
|
|
|
- })
|
|
|
+ name: record.id,
|
|
|
+ },
|
|
|
+ }),
|
|
|
},
|
|
|
customRow: (record) => {
|
|
|
return {
|
|
|
- on: { // 事件
|
|
|
- click: (event) => { // 点击行
|
|
|
+ on: {
|
|
|
+ // 事件
|
|
|
+ click: (event) => {
|
|
|
+ // 点击行
|
|
|
// 选择对象
|
|
|
this.mySelect([record.id], [record])
|
|
|
},
|
|
|
dblclick: (event) => {
|
|
|
this.mySelect([record.id], [record])
|
|
|
this.handleSelect()
|
|
|
- }
|
|
|
- }
|
|
|
+ },
|
|
|
+ },
|
|
|
}
|
|
|
- }
|
|
|
+ },
|
|
|
}
|
|
|
this.optionAlertShow = true
|
|
|
} else {
|
|
|
this.options = {
|
|
|
alert: false,
|
|
|
- rowSelection: null
|
|
|
+ rowSelection: null,
|
|
|
}
|
|
|
this.optionAlertShow = false
|
|
|
}
|
|
|
},
|
|
|
- handleOk () {
|
|
|
+ handleOk() {
|
|
|
// this.setTree()
|
|
|
this.$refs.table.refresh()
|
|
|
},
|
|
|
- onSelectChange (selectedRowKeys, selectedRows) {
|
|
|
+ onSelectChange(selectedRowKeys, selectedRows) {
|
|
|
this.selectedRowKeys = selectedRowKeys
|
|
|
this.selectedRows = selectedRows
|
|
|
},
|
|
|
- resetSearchForm () {
|
|
|
- this.queryParam = {
|
|
|
- }
|
|
|
+ resetSearchForm() {
|
|
|
+ this.queryParam = {}
|
|
|
this.$refs.table.refresh(true)
|
|
|
},
|
|
|
/**
|
|
|
* 设置设备类型树
|
|
|
*/
|
|
|
- base (record, queryParam = {}) {
|
|
|
+ base(record, queryParam = {}) {
|
|
|
this.visible = true
|
|
|
this.modalTitle = '选择设备'
|
|
|
this.queryParam = queryParam
|
|
@@ -327,11 +305,11 @@ export default {
|
|
|
}
|
|
|
// this.mySelect(this.selectedRowKeys, this.selectedRows)
|
|
|
},
|
|
|
- handleCancel () {
|
|
|
+ handleCancel() {
|
|
|
this.visible = false
|
|
|
this.confirmLoading = false
|
|
|
},
|
|
|
- handleSelect () {
|
|
|
+ handleSelect() {
|
|
|
if (this.selectedRowKeys.length === 0) {
|
|
|
this.$message.warn('请至少选择一项信息')
|
|
|
} else {
|
|
@@ -341,18 +319,18 @@ export default {
|
|
|
this.visible = false
|
|
|
}
|
|
|
},
|
|
|
- mySelect (selectedRowKeys, selectedRows) {
|
|
|
+ mySelect(selectedRowKeys, selectedRows) {
|
|
|
this.$refs.table.updateSelect(selectedRowKeys, selectedRows)
|
|
|
this.$refs.table.rowSelection.onChange(selectedRowKeys, selectedRows)
|
|
|
},
|
|
|
- handleChange (value, label, extra) {
|
|
|
- const data = this.treeData.find(item => item.id === value)
|
|
|
+ handleChange(value, label, extra) {
|
|
|
+ const data = this.treeData.find((item) => item.id === value)
|
|
|
if (data && data.children && data.children.length > 0) {
|
|
|
- this.typeList = data.children.map(item => item.id)
|
|
|
+ this.typeList = data.children.map((item) => item.id)
|
|
|
} else {
|
|
|
this.typeList = [value]
|
|
|
}
|
|
|
- }
|
|
|
- }
|
|
|
+ },
|
|
|
+ },
|
|
|
}
|
|
|
</script>
|