<!-- 设备台账管理 -->
|
<template>
|
<div>
|
<!-- 查询表单 -->
|
<el-form :model="dataForm" status-icon ref="dataForm" label-width="100px" style="margin-top:10px;">
|
<el-row>
|
<el-col :xs="6":sm="6":md="6":lg="6":xl="6">
|
<el-form-item label="项目名称" prop="uuid">
|
<el-input type="text" v-model="dataForm.uuid"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :xs="6":sm="6":md="6":lg="6":xl="6">
|
<el-form-item label="类型" prop="category">
|
<el-select v-model="dataForm.category" placeholder="---请选择---">
|
<el-option
|
v-for="item in deviceType"
|
:key="item.value"
|
:label="item.label"
|
:value="item.value">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
<el-col :xs="6":sm="6":md="6":lg="6":xl="6">
|
<el-form-item label="地址" prop="machineName">
|
<el-input v-model="dataForm.machineName"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
|
<el-row>
|
<el-col :xs="9":sm="9":md="9":lg="9":xl="9">
|
<el-form-item label="开工日期" prop="machineName">
|
<el-date-picker
|
v-model="beginDate"
|
type="date"
|
format="yyyy-MM-dd"
|
value-format="yyyyMMdd"
|
placeholder="选择日期">
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
<el-col :xs="9":sm="9":md="9":lg="9":xl="9">
|
<el-form-item label="完工日期" prop="machineName">
|
<el-date-picker
|
v-model="endDate"
|
type="date"
|
format="yyyy-MM-dd"
|
value-format="yyyyMMdd"
|
placeholder="选择日期">
|
</el-date-picker>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
|
<el-row>
|
<el-col :xs="9":sm="9":md="9":lg="9":xl="9">
|
<el-form-item label="项目投资信息" prop="type">
|
<el-input v-model.number="dataForm.type"></el-input>
|
</el-form-item>
|
</el-col>
|
<el-col :xs="9":sm="9":md="9":lg="9":xl="9">
|
<el-form-item label="项目参建单位" prop="type">
|
<el-input v-model.number="dataForm.type"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
|
</el-form>
|
|
<div style="display: flex;justify-content: center;align-items: center;margin-top:15px;">
|
<el-button size="mini" type="primary" @click="queryEquipment()" plain>查询</el-button>
|
<el-button size="mini" type="warning" @click="resetForm()" plain>重置</el-button>
|
</div>
|
|
<div style="margin: 20px 5px">
|
<el-button size="mini" @click="addOrUpdateHandle()" type="primary" plain>添加项目台账</el-button>
|
<el-button size="mini" :disabled="dataListSelections.length <= 0" @click="deletes()" type="danger" plain>批量删除</el-button>
|
<!-- <el-button size="mini" @click="deletes()" type="success" plain>导入</el-button>
|
<el-button size="mini" @click="deletes()" type="warning" plain>导出</el-button> -->
|
</div>
|
<!-- 表格 -->
|
<el-table :data="tableData" v-loading="listLoading" @selection-change="handleSelectionChange">
|
<el-table-column
|
type="selection"
|
align="center"
|
width="55">
|
</el-table-column>
|
<el-table-column
|
label="项目名称"
|
align="center"
|
prop="uuid">
|
</el-table-column>
|
<el-table-column
|
label="类型"
|
align="center"
|
prop="type">
|
</el-table-column>
|
<el-table-column
|
label="地址"
|
align="center"
|
prop="location">
|
</el-table-column>
|
<el-table-column
|
label="开工日期"
|
align="center"
|
prop="category">
|
</el-table-column>
|
<el-table-column
|
label="完工日期"
|
align="center"
|
prop="accountingAttribute">
|
</el-table-column>
|
<el-table-column
|
label="项目投资信息"
|
align="center"
|
prop="department">
|
</el-table-column>
|
<el-table-column
|
label="项目参建单位"
|
align="center"
|
prop="state">
|
</el-table-column>
|
<el-table-column
|
fixed="right"
|
align="center"
|
label="操作">
|
<template slot-scope="scope">
|
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row)">编辑</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<div style="padding-top: 10px;display: flex;justify-content: flex-end;align-items: center;">
|
<el-button-group>
|
<el-button type="primary" icon="el-icon-arrow-left" size="mini" round @click="prePage()" :disabled="canPaging[0]">上一页</el-button>
|
<el-button disabled size="mini" plain>{{currentPage}}/{{totalPage}}</el-button>
|
<el-button type="primary" size="mini" round @click="nextPage()" :disabled="canPaging[1]">下一页<i class="el-icon-arrow-right el-icon--right"></i></el-button>
|
</el-button-group>
|
</div>
|
|
<!-- 弹窗, 新增 / 修改 -->
|
<manage-add-update v-if="addOrUpdateVisible" ref="ManageAddUpdate" @refreshDataList="queryEquipment"></manage-add-update>
|
</div>
|
</template>
|
<script>
|
import ManageAddUpdate from './dialog/Manage-add-update'
|
// import { mapGetters } from 'vuex'
|
// import deviceDetailDialog from './dialog/DeviceDetail'
|
// import { queryEquipment, querydepartmentlist, deleteEquipment, addDevice, delDevice, userAuth } from '@/api/MdcApi'
|
import { queryEquipment, getWorkShopInfo, deleteEquipment } from '@/api/MdcApi'
|
export default {
|
components: {
|
ManageAddUpdate
|
},
|
data() {
|
return {
|
addOrUpdateVisible: false,
|
dataForm: {
|
machineName: '', // 机床名
|
machineIp: '', // 机床ip
|
workshop: '', // 车间名
|
section: '', // 工段名
|
userName: '', // 用户名
|
uuid: '', // 统一编码
|
specification: '', // 设备规格
|
type: '', // 设备型号
|
category: '', // 设备类别
|
accountingAttribute: '', // 财务属性
|
location: '', // 安装地址
|
department: '', // 使用部门
|
state: '', // 设备状态
|
isCritical: '1', // 是否关键设备
|
isPrecision: '1', // 是否精密设备
|
elecCompFactor: '', // 电气复杂系数
|
mechCompFactor: '', // 机械复杂系数
|
country: '', // 国别
|
managType: '', // 设备管理分类
|
classes: '', // 班次
|
manufacturer: '', // 生产厂家
|
productionDate: '', // 投产日期
|
originalValue: '', // 设备原值
|
presentValue: '', // 设备净现值
|
weight: '', // 设备重量
|
remark: ''// 备注
|
},
|
// 设备类型
|
deviceType: [
|
{ value: '立加', label: '立加' },
|
{ value: '卧加', label: '卧加' },
|
{ value: '立卧转换', label: '立卧转换' },
|
{ value: '五轴', label: '五轴' },
|
{ value: '数控车', label: '数控车' },
|
{ value: '复合加工', label: '复合加工' },
|
{ value: '数控磨', label: '数控磨' },
|
{ value: '齿加工', label: '齿加工' },
|
{ value: '电工加', label: '电工加' }
|
],
|
// 使用部门
|
useDepartment: [],
|
// 设备ABC
|
deviceABC: [],
|
// 设备状态
|
deviceStatus: [
|
{ value: 'STOP', label: '关机' },
|
{ value: 'RUN', label: '运行' },
|
{ value: 'IDLE', label: '空闲' },
|
{ value: 'ALARM', label: '报警' }
|
],
|
// 账务属性
|
financePro: [
|
{ value: '帐内', label: '帐内' },
|
{ value: '帐外', label: '帐外' }
|
],
|
// 是否关键设备
|
isKeyDevice: [
|
{ value: '是', label: '是' },
|
{ value: '否', label: '否' }
|
],
|
// 是否精密设备
|
isPerDevice: [
|
{ value: '1', label: '是' },
|
{ value: '0', label: '否' }
|
],
|
// 是否特种设备
|
isEspDevice: [
|
{ value: '1', label: '是' },
|
{ value: '0', label: '否' }
|
],
|
// 所在地理区域
|
position: [
|
{ value: '所在地理区域', label: '所在地理区域' }
|
],
|
// 保养责任单位
|
maintainUnit: [
|
{ value: '保养责任单位', label: '保养责任单位' }
|
],
|
// 是否关键工序设备
|
isKeyProDevice: [
|
{ value: '1', label: '是' },
|
{ value: '0', label: '否' }
|
],
|
// 时间查询
|
timeQuery: [
|
{ value: '时间查询', label: '时间查询' }
|
],
|
// 多选
|
dataListSelections: [],
|
tableData: [], // 表格
|
listLoading: false,
|
currentPage: 1,
|
totalPage: 1
|
}
|
},
|
computed: {
|
canPaging() {
|
const tem = [false, false]
|
tem[0] = (this.currentPage <= 1)
|
tem[1] = (this.currentPage >= this.totalPage)
|
return tem
|
}
|
},
|
mounted() {
|
this.queryEquipment()
|
this.querydepartmentlist()
|
},
|
methods: {
|
// 查询
|
queryEquipment() {
|
queryEquipment(this.dataForm).then(res => {
|
this.listLoading = false
|
let totalNum = parseInt(res.totalPage)
|
if (totalNum + '' === 'NaN') {
|
totalNum = 1
|
}
|
this.totalPage = totalNum
|
this.tableData = res.list || []
|
})
|
},
|
// 上一页
|
prePage() {
|
this.currentPage--
|
this.queryEquipment()
|
},
|
// 下一页
|
nextPage() {
|
this.currentPage++
|
this.queryEquipment()
|
},
|
// 多选
|
handleSelectionChange(val) {
|
this.dataListSelections = val
|
},
|
// 重置
|
resetForm() {
|
this.$refs.dataForm.resetFields()
|
this.queryEquipment()
|
},
|
// 批量删除
|
deletes() {
|
var ids = this.dataListSelections.map(item => {
|
return item.id
|
})
|
ids = ids.map((item) => item).join(',')
|
this.$confirm('确认将勾选项删除?', {
|
confirmButtonText: '确定',
|
cancelButtonText: '取消',
|
type: 'warning'
|
}).then(() => {
|
deleteEquipment(ids).then(res => {
|
// console.log(res)
|
this.$message({
|
message: '删除成功',
|
type: 'success',
|
duration: 1500
|
})
|
this.queryEquipment()
|
})
|
}).catch(() => {})
|
},
|
// 添加and修改设备台账
|
addOrUpdateHandle(row) {
|
this.addOrUpdateVisible = true
|
this.$nextTick(() => {
|
this.$refs.ManageAddUpdate.init(row)
|
})
|
},
|
/* 查询部门list*/
|
querydepartmentlist() {
|
getWorkShopInfo().then(res => {
|
if (res.workshopList.length > 0) {
|
res.workshopList.map(item => {
|
this.useDepartment.push({
|
value: item.name,
|
label: item.name
|
})
|
})
|
}
|
})
|
}
|
}
|
}
|
</script>
|
|
<style>
|
.el-form-item__label{font-weight:normal;line-height: 30px;}
|
.el-input__inner{height:30px;line-height: 30px;}
|
.el-select{width:100%;}
|
.el-form-item{margin-bottom:8px;}
|
.el-table td{white-space: nowrap;}
|
.duojiTable td{white-space: nowrap !important;}
|
|
.el-table td, .el-table th {
|
padding: 2px 0;
|
}
|
.el-date-editor .el-range__icon{line-height: 0;}
|
.el-date-editor .el-range-separator{width:10%;line-height: 25px;}
|
.el-date-editor{width: 100%!important;}
|
/* 查询间距 */
|
.el-form-item__content{line-height: 30px;}
|
</style>
|