Commit 5f7b853a authored by 李志鸣's avatar 李志鸣

fea(设备基础数据): 功能联调

parent febfb065
...@@ -5,8 +5,8 @@ ...@@ -5,8 +5,8 @@
"url": "/api/basicinfo/equipCreate", "url": "/api/basicinfo/equipCreate",
"method": "post" "method": "post"
}, },
"equipDelete-delete": { "equipId-delete": {
"url": "/api/basicinfo/equipDelete", "url": "/api/basicinfo/equipDelete/{equipId}",
"method": "delete" "method": "delete"
}, },
"equipPage-post": { "equipPage-post": {
...@@ -21,8 +21,8 @@ ...@@ -21,8 +21,8 @@
"url": "/api/basicinfo/stationCreate", "url": "/api/basicinfo/stationCreate",
"method": "post" "method": "post"
}, },
"stationDelete-delete": { "stationId-delete": {
"url": "/api/basicinfo/stationDelete", "url": "/api/basicinfo/stationDelete/{stationId}",
"method": "delete" "method": "delete"
}, },
"stationPage-post": { "stationPage-post": {
......
<template>
<el-dialog
title="新增设备信息"
:visible.sync="dialogToggle"
:show-close="false"
:close-on-press-escape="false"
:close-on-click-modal="false"
width="600px">
<el-form
label-width="100px"
label-position="top"
:model="formData"
ref="form"
:rules="formRules">
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="车间"
prop="workshopCode"
required>
<el-select
v-model="formData.workshopCode"
size="small"
style="width: 100%"
placeholder="请选择车间"
@change="onWorkshopSelectChange">
<el-option
v-for="(item, index) in workShopSelectData"
:key="index"
:value="item.itemCode"
:label="item.itemName">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="设备分类"
prop="equipType"
required>
<el-select
v-model="formData.equipType"
size="small"
style="width: 100%"
placeholder="请选择设备分类">
<el-option
v-for="(item, index) in deviceSortSelectData"
:key="index"
:value="item.itemCode"
:label="item.itemName">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="设备编码"
prop="equipCode"
required>
<el-input
maxlength="100"
v-model="formData.equipCode"
size="small"
style="width: 100%"
placeholder="请输入设备编码">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="设备名称"
prop="alias">
<el-input
maxlength="100"
v-model="formData.alias"
size="small"
style="width: 100%"
placeholder="请输入设备名称">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="设备厂商"
prop="equipFactory">
<el-input
maxlength="100"
v-model="formData.equipFactory"
size="small"
style="width: 100%"
placeholder="请输入设备厂商">
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button :loading="loadingToggle" size="small" type="primary" icon="el-icon-check" @click="doConfirmClick('form')">确认</el-button>
<el-button size="small" icon="el-icon-close" @click="doCancelClick('form')">取消</el-button>
</span>
</el-dialog>
</template>
<script>
export default {
watch: {
dialogToggle (newVal, oldVal) {
// 获取设备分类数据
this.getSeviceSortSelectData()
// 获取车间下拉数据
this.getWorkshopSelectData()
}
},
data () {
return {
// 数据提交开关标识
loadingToggle: false,
// 对话框开关标识
dialogToggle: false,
// 表单数据
formData: {
workshopName: '',
workshopCode: '',
equipType: '',
equipCode: '',
alias: '',
equipFactory: ''
},
// 表单正则
formRules: {
// 车间
workshopCode: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择车间'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 设备分类
equipType: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择设备分类'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 设备编码
equipCode: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请输入设备编码'))
}
callback()
},
trigger: ['change', 'blur']
}
]
},
// 设备分类下拉数据
deviceSortSelectData: [],
// 车间下拉数据
workShopSelectData: []
}
},
methods: {
// 获取设备分类数据
getSeviceSortSelectData () {
let queryParams = { dicCode: 'DEVICE_SORT', hash: 'dicCode' }
this.$fetch('dict-item-controller/dicCode-get', queryParams).then(response => {
this.deviceSortSelectData = _.cloneDeep(response)
})
},
// 获取车间下拉数据
getWorkshopSelectData () {
let queryParams = { dicCode: 'WORKSHOP_LIST', hash: 'dicCode' }
this.$fetch('dict-item-controller/dicCode-get', queryParams).then(response => {
this.workShopSelectData = _.cloneDeep(response)
})
},
// 触发车间下拉框值改变事件
onWorkshopSelectChange (selectValue) {
for (let item of this.workShopSelectData) {
if (item.itemCode === selectValue) {
this.formData.workshopName = item.itemName
break
}
}
},
// 点击确认按钮
doConfirmClick (formName) {
this.$refs[formName].validate(vaild => {
if (vaild) {
this.loadingToggle = true
let queryParams = { ...this.formData }
this.$fetch('basic-info-controller/equipCreate-post', queryParams).then(response => {
this.loadingToggle = false
this.$message.success('新增成功!')
this.dialogToggle = false
this.$refs[formName].resetFields()
this.$emit('doConfirmClick')
for (let key in this.formData) {
this.formData[key] = ''
}
})
}
})
},
// 点击取消按钮
doCancelClick (formName) {
this.$refs[formName].resetFields()
this.dialogToggle = false
for (let key in this.formData) {
this.formData[key] = ''
}
}
}
}
</script>
<style lang="scss" scoped>
</style>
\ No newline at end of file
...@@ -20,7 +20,8 @@ ...@@ -20,7 +20,8 @@
<div class="float-left"> <div class="float-left">
<el-button <el-button
size="small" size="small"
type="primary"> type="primary"
@click="doAddClick">
新增 新增
</el-button> </el-button>
</div> </div>
...@@ -28,22 +29,51 @@ ...@@ -28,22 +29,51 @@
<div class="general-list-main-pack pl-15 pr-15"> <div class="general-list-main-pack pl-15 pr-15">
<div> <div>
<Table <Table
:tableConfig="tableConfig"> :tableConfig="tableConfig"
@onPageSizeChange="onPageSizeChange"
@onCurrentPageChange="onCurrentPageChange">
<template slot="operationColumn">
<el-table-column
fixed="right"
width="100"
label="操作">
<template slot-scope="scope">
<el-button
type="text">
编辑
</el-button>
<el-button
style="color: rgb(244, 116, 118)"
type="text"
@click="doDelectClick(scope.row)">
删除
</el-button>
</template>
</el-table-column>
</template>
</Table> </Table>
</div> </div>
</div> </div>
<!-- 新建设备对话框 -->
<AddDeviceDialog
ref="AddDeviceDialog"
@doConfirmClick="doAddDeviceDialogConfirm">
</AddDeviceDialog>
</div> </div>
</template> </template>
<script> <script>
import Table from '@/components/Table/index.vue' import Table from '@/components/Table/index.vue'
import Search from '@/components/Search' import Search from '@/components/Search'
import AddDeviceDialog from './components/AddDeviceDialog'
export default { export default {
name: 'DeviceBasic', name: 'DeviceBasic',
components: { components: {
Search, Search,
Table Table,
AddDeviceDialog
}, },
data () { data () {
return { return {
...@@ -53,7 +83,13 @@ ...@@ -53,7 +83,13 @@
tableConfig: { tableConfig: {
height: 0, height: 0,
data: [], data: [],
fieldList: [], fieldList: [
{ label: '车间', value: 'workshopName' },
{ label: '设备类型', value: 'equipType' },
{ label: '设备编号', value: 'equipCode' },
{ label: '设备名称', value: 'alias' },
{ label: '设备厂商', value: 'equipFactory' }
],
paginationToggle: true, paginationToggle: true,
paginationConfig: { paginationConfig: {
total: 0, total: 0,
...@@ -71,7 +107,7 @@ ...@@ -71,7 +107,7 @@
this.searchList = searchValue this.searchList = searchValue
this.tableConfig.paginationConfig.currentPage = 1 this.tableConfig.paginationConfig.currentPage = 1
// 获取表格数据 // 获取表格数据
this.getTableLIst() this.getTableList()
}, },
// 点击搜索组件重置按钮 // 点击搜索组件重置按钮
doResetClick (searchValue) { doResetClick (searchValue) {
...@@ -79,7 +115,20 @@ ...@@ -79,7 +115,20 @@
this.tableConfig.paginationConfig.currentPage = 1 this.tableConfig.paginationConfig.currentPage = 1
this.tableConfig.paginationConfig.pageSize = 20 this.tableConfig.paginationConfig.pageSize = 20
// 获取表格数据 // 获取表格数据
this.getTableLIst() this.getTableList()
},
// 表格组件分页数量改变事件
onPageSizeChange (pageSize) {
this.tableConfig.paginationConfig.currentPage = 1
this.tableConfig.paginationConfig.pageSize = pageSize
// 获取表格数据
this.getTableList()
},
// 表格组件分页页数改变事件
onCurrentPageChange (currentPage) {
this.tableConfig.paginationConfig.currentPage = currentPage
// 获取表格数据
this.getTableList()
}, },
// 获取表格数据 // 获取表格数据
getTableList () { getTableList () {
...@@ -94,7 +143,7 @@ ...@@ -94,7 +143,7 @@
if (response.list.length === 0 && response.pageNum !== 1) { if (response.list.length === 0 && response.pageNum !== 1) {
this.tableConfig.paginationConfig.currentPage -= 1 this.tableConfig.paginationConfig.currentPage -= 1
// 获取表格数据 // 获取表格数据
this.getTableLIst() this.getTableList()
} else { } else {
this.tableConfig.data = _.cloneDeep(response.list) this.tableConfig.data = _.cloneDeep(response.list)
this.tableConfig.paginationConfig.total = _.cloneDeep(response.total) this.tableConfig.paginationConfig.total = _.cloneDeep(response.total)
...@@ -104,11 +153,38 @@ ...@@ -104,11 +153,38 @@
reject(error) reject(error)
}) })
}) })
},
// 点击删除按钮
doDelectClick (deviceValue) {
this.$confirm(`确定要删除设备编码为 ${deviceValue.equipCode} 的设备基础数据吗?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
center: true
}).then(() => {
let queryParams = { equipId: deviceValue.id, hsah: 'equipId' }
this.$fetch('basic-info-controller/equipId-delete', queryParams).then(response => {
this.$message.success('删除成功!')
// 获取表格数据
this.getTableList()
})
}).catch(() => {})
},
// 点击新增按钮
doAddClick () {
this.$refs.AddDeviceDialog.dialogToggle = true
},
// 点击新增设备对话框确认按钮
doAddDeviceDialogConfirm () {
// 获取表格数据
this.getTableList()
} }
}, },
mounted () { mounted () {
setTimeout(() => { setTimeout(() => {
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210 this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
// 获取表格数据
this.getTableList()
}, 0) }, 0)
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment