| | |
| | | <el-col :span="24"> |
| | | <el-form-item :rules="[{ required: true, message: '请输入维护内容', trigger: 'blur' }]" label="维护内容:" |
| | | prop="content"> |
| | | <el-input v-model="formData.content" placeholder="请输入" size="small" type="textarea"></el-input> |
| | | <el-input v-model="formData.content" :disabled="!this.editMode" placeholder="请输入" size="small" type="textarea"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item :rules="[{ required: true, message: '请选择维护时间', trigger: 'blur' }]" label="维护时间:" prop="date"> |
| | | <el-date-picker v-model="formData.date" format="yyyy-MM-dd" placeholder="选择日期" size="small" |
| | | <el-date-picker v-model="formData.date" format="yyyy-MM-dd" placeholder="选择日期" |
| | | size="small" |
| | | :disabled="!this.editMode" |
| | | style="width:100%" type="date" value-format="yyyy-MM-dd"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | |
| | | prop="nextDate"> |
| | | <el-date-picker |
| | | v-model="formData.nextDate" |
| | | :disabled="!this.editMode" |
| | | :picker-options="{ disabledDate: this.disabledDate }" |
| | | format="yyyy-MM-dd" |
| | | placeholder="选择日期" size="small" |
| | |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item :rules="[{ required: true, message: '请输入维护人', trigger: 'blur' }]" label="维护人:" prop="name"> |
| | | <el-input v-model="formData.name" clearable placeholder="请输入" size="small"></el-input> |
| | | <el-input v-model="formData.name" clearable placeholder="请输入" :disabled="!this.editMode" size="small"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="24"> |
| | | <el-form-item label="备注:"> |
| | | <el-input v-model="formData.comments" placeholder="请输入" size="small" type="textarea"></el-input> |
| | | <el-input v-model="formData.comments" placeholder="请输入" :disabled="!this.editMode" size="small" type="textarea"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | |
| | | <script> |
| | | import { |
| | | exportMaintenanceRecord, |
| | | deleteDeviceMaintenance, |
| | | selectDeviceByCode, |
| | | addDeviceMaintenance, |
| | | getDeviceMaintenancePage, deviceMaintenanceExport, |
| | | } from '@/api/cnas/resourceDemand/device.js' |
| | | addMaintain, |
| | | deleteMaintain, |
| | | deviceMaintenanceExport, getDeviceMaintenancePage, |
| | | selectDeviceByCode |
| | | } from "@/api/cnas/resourceDemand/device"; |
| | | |
| | | export default { |
| | | props: { |
| | | clickNodeVal: { |
| | |
| | | }, |
| | | methods: { |
| | | //下次维护日期:禁用在维护日期前的日期 |
| | | disabledDate(time) { |
| | | disabledDate(time){ |
| | | let selectDate = this.formData.date |
| | | if (selectDate) { |
| | | if(selectDate){ |
| | | let oldDate = new Date(selectDate) |
| | | return time <= oldDate.getTime() |
| | | } |
| | | return false |
| | | }, |
| | | //导出 |
| | | handleDown() { |
| | | this.outLoading = true |
| | | deviceMaintenanceExport({deviceId: this.clickNodeVal.value}).then(res => { |
| | | this.outLoading = false |
| | | const blob = new Blob([res], { type: 'application/octet-stream' }); |
| | | this.$download.saveAs(blob, '设备维护.xlsx') |
| | | }) |
| | | }, |
| | | handleSizeChange(val) { |
| | | this.search.size = val |
| | |
| | | this.dialogVisible = true; |
| | | this.formData = row; |
| | | }, |
| | | // 导出 |
| | | handleDownOne() { |
| | | this.outLoading = true |
| | | deviceMaintenanceExport({ deviceId: this.clickNodeVal.value }).then(res => { |
| | | this.outLoading = false |
| | | const blob = new Blob([res], { type: 'application/octet-stream' }); |
| | | this.$download.saveAs(blob, '设备维护.xlsx') |
| | | }) |
| | | }, |
| | | //操作详情删除 |
| | | handleDeleteClick(index, row) { |
| | | this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', { |
| | |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | deleteDeviceMaintenance({ id: row.id }).then(res => { |
| | | this.getAllMessage(this.clickNodeVal.value) |
| | | deleteMaintain({id: row.id}).then(res => { |
| | | this.MaintainParam.splice(index, 1); |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '删除成功!' |
| | |
| | | }, |
| | | //点击后可编辑 |
| | | add() { |
| | | selectDeviceByCode({ id: this.clickNodeVal.value }).then(res => { |
| | | selectDeviceByCode({id: this.clickNodeVal.value}).then(res => { |
| | | this.formData.deviceName = res.data.deviceName |
| | | this.formData.managementNumber = res.data.managementNumber |
| | | this.$nextTick(() => { |
| | |
| | | this.$refs['form'].validate((valid) => { |
| | | if (valid) { |
| | | this.formData.deviceId = this.clickNodeVal.value; |
| | | addDeviceMaintenance(this.formData).then(res => { |
| | | addMaintain(this.formData).then(res => { |
| | | if (res.code == 200) { |
| | | this.$message.success('添加成功'); |
| | | this.getAllMessage(this.clickNodeVal.value) |
| | | // this.MaintainParam.push(this.formData) |
| | | this.dialogVisible = false; |
| | | this.formData = {}; //清空表单 |
| | | this.getAllMessage(this.clickNodeVal.value) |
| | | } |
| | | }) |
| | | // this.MaintainParam.push(this.formData) |
| | | } |
| | | }) |
| | | }, |
| | |
| | | }, |
| | | //获取表单设备维护信息 |
| | | getAllMessage(deviceId) { |
| | | getDeviceMaintenancePage({ |
| | | deviceId, |
| | | ...this.search |
| | | }).then(res => { |
| | | const params = { |
| | | deviceId: deviceId, |
| | | size: this.search.size, |
| | | current: this.search.current, |
| | | deviceNumber: this.search.deviceNumber, |
| | | } |
| | | getDeviceMaintenancePage(params).then(res => { |
| | | if (res.code == 200) { |
| | | this.MaintainParam = res.data.records |
| | | this.search.total = res.data.total |
| | |
| | | |
| | | .search { |
| | | background-color: #fff; |
| | | height: 40px; |
| | | display: flex; |
| | | align-items: center; |
| | | position: relative; |
| | | margin-top: 10px; |
| | | } |
| | | |
| | | .search_thing { |
| | |
| | | transform: translate(0, -50%); |
| | | } |
| | | |
| | | .form .search_label { |
| | | width: 120px; |
| | | } |
| | | </style> |