web/src/views/EquipmentManage/EquipInfo/components/GeneralEquipment.vue
@@ -58,10 +58,10 @@ <el-table-column prop="fixedPerson" label="定机人" align="center"></el-table-column> <el-table-column label="操作" align="center" width="400"> <template #default="{ row }"> <el-button class="table_btn" size="mini" @click="propUpdate(row)">查看</el-button> <el-button class="table_btn" size="mini" @click="propDetail(row)">查看</el-button> <el-button class="table_btn" size="mini" @click="propUpdate(row)">修改</el-button> <el-button class="table_btn" size="mini" @click="propPlate(row)">设备标识牌</el-button> <el-button class="table_btn" size="mini" @click="propPlate(row)">打印</el-button> <el-button class="table_btn" size="mini" @click="printDevice(row)">打印</el-button> <el-button class="delete_btn" size="mini" @click="deleteInfo(row)">删除</el-button> </template> </el-table-column> @@ -82,25 +82,26 @@ <!-- 新增 修改 --> <el-dialog class="prop_dialog" :title="asyncTitle ? '新增特种设备' : '修改特种设备信息'" :title="asyncTitle === true ? '新增一般设备' : asyncTitle === false ? '修改一般设备信息' : '查看一般设备信息'" :visible.sync="asyncDevice" width="35%"> <el-form ref="form" :model="formDevice" :rules="rulesDevice" label-width="auto" class="rule_form"> <el-form ref="form" :model="formDevice" :rules="rulesDevice" :disabled="disabled" label-width="auto" class="rule_form"> <el-form-item label="设备名称:" prop="bigDeviceName"> <el-input v-model="formDevice.bigDeviceName" clearable placeholder="请输入设备名称"></el-input> <el-input v-model="formDevice.bigDeviceName" :disabled="disabled" clearable placeholder="请输入设备名称"></el-input> </el-form-item> <el-form-item label="规格型号:" prop="bigDeviceModel"> <el-input v-model="formDevice.bigDeviceModel" clearable placeholder="请输入规格型号"></el-input> <el-input v-model="formDevice.bigDeviceModel" :disabled="disabled" clearable placeholder="请输入规格型号"></el-input> </el-form-item> <el-form-item label="设备编号:" prop="bigNumber"> <el-input v-model="formDevice.bigNumber" clearable placeholder="请输入设备编号"></el-input> <el-input v-model="formDevice.bigNumber" :disabled="disabled" clearable placeholder="请输入设备编号"></el-input> </el-form-item> <el-form-item label="生产厂家:" prop="manufacturer"> <el-input v-model="formDevice.manufacturer" clearable placeholder="请输入生产厂家"></el-input> <el-input v-model="formDevice.manufacturer" :disabled="disabled" clearable placeholder="请输入生产厂家"></el-input> </el-form-item> <el-form-item label="出厂年月:" prop="dateOfProduction"> <el-date-picker v-model="formDevice.dateOfProduction" :disabled="disabled" type="month" placeholder="请选择出厂年月" value-format="yyyy-MM"> @@ -109,6 +110,7 @@ <el-form-item label="使用年月:" prop="useYearMonth"> <el-date-picker v-model="formDevice.useYearMonth" :disabled="disabled" type="month" placeholder="请选择使用年月" value-format="yyyy-MM"> @@ -117,6 +119,7 @@ <el-form-item label="使用年限:" prop="useLife"> <el-input-number v-model="formDevice.useLife" :disabled="disabled" :controls="false" :min="0" placeholder="请输入使用年限"> @@ -126,6 +129,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.shapeSize" :disabled="disabled" :controls="false" :min="0" placeholder="请输入外形尺寸"> @@ -137,6 +141,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.totalPower" :disabled="disabled" :controls="false" :min="0" placeholder="请输入总功率"> @@ -148,6 +153,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.totalWeight" :disabled="disabled" :controls="false" :min="0" placeholder="请输入总重量"> @@ -159,6 +165,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.originalValue" :disabled="disabled" :controls="false" :min="0" placeholder="请输入原值"> @@ -169,18 +176,20 @@ <el-form-item label="年折旧率:" prop="yearDepreciationRate"> <el-input-number v-model="formDevice.yearDepreciationRate" :disabled="disabled" :controls="false" :min="0" placeholder="请输入年折旧率"> </el-input-number> </el-form-item> <el-form-item label="已提折旧:" prop="accumulatedDepreciation"> <el-input v-model="formDevice.accumulatedDepreciation" clearable placeholder="请输入已提折旧"></el-input> <el-input v-model="formDevice.accumulatedDepreciation" :disabled="disabled" clearable placeholder="请输入已提折旧"></el-input> </el-form-item> <el-form-item label="净值:" prop="netWorth"> <div class="form_flex"> <el-input-number v-model="formDevice.netWorth" :disabled="disabled" :controls="false" :min="0" placeholder="请输入净值"> @@ -189,25 +198,25 @@ </div> </el-form-item> <el-form-item label="使用状况:" prop="useStatus"> <el-radio-group v-model="formDevice.useStatus"> <el-radio-group v-model="formDevice.useStatus" :disabled="disabled"> <el-radio :label="1">良好</el-radio> <el-radio :label="2">老化</el-radio> </el-radio-group> </el-form-item> <el-form-item label="是否满足需要:" prop="isNeed"> <el-radio-group v-model="formDevice.isNeed"> <el-radio-group v-model="formDevice.isNeed" :disabled="disabled"> <el-radio :label="1">是</el-radio> <el-radio :label="2">否</el-radio> </el-radio-group> </el-form-item> <el-form-item label="设备来源:" prop="deviceSource"> <el-input v-model="formDevice.deviceSource" clearable placeholder="请输入设备来源"></el-input> <el-input v-model="formDevice.deviceSource" :disabled="disabled" clearable placeholder="请输入设备来源"></el-input> </el-form-item> <el-form-item label="设备配属关系:" prop="deviceNexus"> <el-input v-model="formDevice.deviceNexus" clearable placeholder="请输入设备配属关系"></el-input> <el-input v-model="formDevice.deviceNexus" :disabled="disabled" clearable placeholder="请输入设备配属关系"></el-input> </el-form-item> <el-form-item label="定机人:" prop="fixedPerson"> <el-select v-model="formDevice.fixedPerson" clearable placeholder="请选择定机人"> <el-select v-model="formDevice.fixedPerson" :disabled="disabled" clearable placeholder="请选择定机人"> <el-option v-for="item in plateUserData" :key="item.userId" @@ -217,7 +226,7 @@ </el-select> </el-form-item> <el-form-item label="责任人:" prop="userId"> <el-select v-model="formDevice.userId" clearable placeholder="请选择责任人" @change="changePerson"> <el-select v-model="formDevice.userId" :disabled="disabled" clearable placeholder="请选择责任人" @change="changePerson"> <el-option v-for="item in plateUserData" :key="item.userId" @@ -230,18 +239,19 @@ <el-input v-model="formDevice.zrrPhone" disabled placeholder="请输入责任人联系电话"></el-input> </el-form-item> <el-form-item label="管理员联系电话:" prop="adminPhone"> <el-input v-model="formDevice.adminPhone" clearable placeholder="请输入管理员联系电话:"></el-input> <el-input v-model="formDevice.adminPhone" :disabled="disabled" clearable placeholder="请输入管理员联系电话:"></el-input> </el-form-item> <el-form-item label="备注:"> <el-input v-model="formDevice.bigNotes" :disabled="disabled" clearable placeholder="请输入备注" type="textarea"> </el-input> </el-form-item> </el-form> <div slot="footer"> <div slot="footer" v-if="asyncTitle != 3"> <el-button @click="asyncDevice = false">取 消</el-button> <el-button class="submit_btn" @click="asyncTitle ? submitInsertForm() : submitUpdateForm()">提 交</el-button> </div> @@ -273,7 +283,7 @@ </div> <div slot="footer"> <el-button @click="asyncPlate = false">取 消</el-button> <el-button class="submit_btn" @click="asyncPlate = false">打 印</el-button> <el-button class="submit_btn" @click="printDeviceDialog()">打 印</el-button> </div> </el-dialog> </div> @@ -293,6 +303,7 @@ total: 0, loading: false, generalList: [], disabled: false, asyncTitle: true, // true 新增 false 修改 asyncDevice: false, formDevice: {}, @@ -493,11 +504,13 @@ // 打开添加信息 propInsert() { this.asyncTitle = true; this.disabled = false; this.asyncDevice = true; }, // 打开修改信息 propUpdate(row) { this.asyncTitle = false; this.disabled = false; this.asyncDevice = true; this.$api.Device.getDeviceDetails({ bigDeviceId : row.bigDeviceId @@ -528,6 +541,17 @@ this.$set(this.formDevice, 'bigNotes', res.data.bigNotes); }) }, // 打开查看 propDetail(row) { this.asyncTitle = 3; this.disabled = true; this.asyncDevice = true; this.$api.Device.getDeviceDetails({ bigDeviceId : row.bigDeviceId }).then((res) => { this.formDevice = res.data; }) }, // 查看设备标识牌 propPlate(row) { this.bigDeviceId = row.bigDeviceId; @@ -538,6 +562,21 @@ this.plateData = res.data; }) }, // 打印 printDevice(item) { const link = document.createElement('a'); link.id = `link`; link.href = `printpipe://4,${item.bigDeviceId}` link.click() }, // 弹框打印 printDeviceDialog() { const link = document.createElement('a'); link.id = `link`; link.href = `printpipe://4,${this.bigDeviceId}` link.click(); this.asyncPlate = false; }, // 删除设备信息 deleteInfo(row) { this.$confirm("该操作将删除该设备信息,是否继续删除?", "提示", { web/src/views/EquipmentManage/EquipInfo/components/SpecialEquipment.vue
@@ -18,7 +18,7 @@ <div class="main_content"> <el-table v-loading="loading" :data="specialList" :data="generalList" height="100%"> <el-table-column label="序号" width="55" align="center"> <template #default="scope"> @@ -58,10 +58,10 @@ <el-table-column prop="fixedPerson" label="定机人" align="center"></el-table-column> <el-table-column label="操作" align="center" width="400"> <template #default="{ row }"> <el-button class="table_btn" size="mini" @click="propUpdate(row)">查看</el-button> <el-button class="table_btn" size="mini" @click="propDetail(row)">查看</el-button> <el-button class="table_btn" size="mini" @click="propUpdate(row)">修改</el-button> <el-button class="table_btn" size="mini" @click="propPlate(row)">设备标识牌</el-button> <el-button class="table_btn" size="mini" @click="propPlate(row)">打印</el-button> <el-button class="table_btn" size="mini" @click="printDevice(row)">打印</el-button> <el-button class="delete_btn" size="mini" @click="deleteInfo(row)">删除</el-button> </template> </el-table-column> @@ -82,25 +82,26 @@ <!-- 新增 修改 --> <el-dialog class="prop_dialog" :title="asyncTitle ? '新增特种设备' : '修改特种设备信息'" :title="asyncTitle === true ? '新增特种设备' : asyncTitle === false ? '修改特种设备信息' : '查看特种设备信息'" :visible.sync="asyncDevice" width="35%"> <el-form ref="form" :model="formDevice" :rules="rulesDevice" label-width="auto" class="rule_form"> <el-form ref="form" :model="formDevice" :rules="rulesDevice" :disabled="disabled" label-width="auto" class="rule_form"> <el-form-item label="设备名称:" prop="bigDeviceName"> <el-input v-model="formDevice.bigDeviceName" clearable placeholder="请输入设备名称"></el-input> <el-input v-model="formDevice.bigDeviceName" :disabled="disabled" clearable placeholder="请输入设备名称"></el-input> </el-form-item> <el-form-item label="规格型号:" prop="bigDeviceModel"> <el-input v-model="formDevice.bigDeviceModel" clearable placeholder="请输入规格型号"></el-input> <el-input v-model="formDevice.bigDeviceModel" :disabled="disabled" clearable placeholder="请输入规格型号"></el-input> </el-form-item> <el-form-item label="设备编号:" prop="bigNumber"> <el-input v-model="formDevice.bigNumber" clearable placeholder="请输入设备编号"></el-input> <el-input v-model="formDevice.bigNumber" :disabled="disabled" clearable placeholder="请输入设备编号"></el-input> </el-form-item> <el-form-item label="生产厂家:" prop="manufacturer"> <el-input v-model="formDevice.manufacturer" clearable placeholder="请输入生产厂家"></el-input> <el-input v-model="formDevice.manufacturer" :disabled="disabled" clearable placeholder="请输入生产厂家"></el-input> </el-form-item> <el-form-item label="出厂年月:" prop="dateOfProduction"> <el-date-picker v-model="formDevice.dateOfProduction" :disabled="disabled" type="month" placeholder="请选择出厂年月" value-format="yyyy-MM"> @@ -109,6 +110,7 @@ <el-form-item label="使用年月:" prop="useYearMonth"> <el-date-picker v-model="formDevice.useYearMonth" :disabled="disabled" type="month" placeholder="请选择使用年月" value-format="yyyy-MM"> @@ -117,6 +119,7 @@ <el-form-item label="使用年限:" prop="useLife"> <el-input-number v-model="formDevice.useLife" :disabled="disabled" :controls="false" :min="0" placeholder="请输入使用年限"> @@ -126,6 +129,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.shapeSize" :disabled="disabled" :controls="false" :min="0" placeholder="请输入外形尺寸"> @@ -137,6 +141,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.totalPower" :disabled="disabled" :controls="false" :min="0" placeholder="请输入总功率"> @@ -148,6 +153,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.totalWeight" :disabled="disabled" :controls="false" :min="0" placeholder="请输入总重量"> @@ -159,6 +165,7 @@ <div class="form_flex"> <el-input-number v-model="formDevice.originalValue" :disabled="disabled" :controls="false" :min="0" placeholder="请输入原值"> @@ -169,18 +176,20 @@ <el-form-item label="年折旧率:" prop="yearDepreciationRate"> <el-input-number v-model="formDevice.yearDepreciationRate" :disabled="disabled" :controls="false" :min="0" placeholder="请输入年折旧率"> </el-input-number> </el-form-item> <el-form-item label="已提折旧:" prop="accumulatedDepreciation"> <el-input v-model="formDevice.accumulatedDepreciation" clearable placeholder="请输入已提折旧"></el-input> <el-input v-model="formDevice.accumulatedDepreciation" :disabled="disabled" clearable placeholder="请输入已提折旧"></el-input> </el-form-item> <el-form-item label="净值:" prop="netWorth"> <div class="form_flex"> <el-input-number v-model="formDevice.netWorth" :disabled="disabled" :controls="false" :min="0" placeholder="请输入净值"> @@ -189,25 +198,25 @@ </div> </el-form-item> <el-form-item label="使用状况:" prop="useStatus"> <el-radio-group v-model="formDevice.useStatus"> <el-radio-group v-model="formDevice.useStatus" :disabled="disabled"> <el-radio :label="1">良好</el-radio> <el-radio :label="2">老化</el-radio> </el-radio-group> </el-form-item> <el-form-item label="是否满足需要:" prop="isNeed"> <el-radio-group v-model="formDevice.isNeed"> <el-radio-group v-model="formDevice.isNeed" :disabled="disabled"> <el-radio :label="1">是</el-radio> <el-radio :label="2">否</el-radio> </el-radio-group> </el-form-item> <el-form-item label="设备来源:" prop="deviceSource"> <el-input v-model="formDevice.deviceSource" clearable placeholder="请输入设备来源"></el-input> <el-input v-model="formDevice.deviceSource" :disabled="disabled" clearable placeholder="请输入设备来源"></el-input> </el-form-item> <el-form-item label="设备配属关系:" prop="deviceNexus"> <el-input v-model="formDevice.deviceNexus" clearable placeholder="请输入设备配属关系"></el-input> <el-input v-model="formDevice.deviceNexus" :disabled="disabled" clearable placeholder="请输入设备配属关系"></el-input> </el-form-item> <el-form-item label="定机人:" prop="fixedPerson"> <el-select v-model="formDevice.fixedPerson" clearable placeholder="请选择定机人"> <el-select v-model="formDevice.fixedPerson" :disabled="disabled" clearable placeholder="请选择定机人"> <el-option v-for="item in plateUserData" :key="item.userId" @@ -217,7 +226,7 @@ </el-select> </el-form-item> <el-form-item label="责任人:" prop="userId"> <el-select v-model="formDevice.userId" clearable placeholder="请选择责任人" @change="changePerson"> <el-select v-model="formDevice.userId" :disabled="disabled" clearable placeholder="请选择责任人" @change="changePerson"> <el-option v-for="item in plateUserData" :key="item.userId" @@ -230,18 +239,19 @@ <el-input v-model="formDevice.zrrPhone" disabled placeholder="请输入责任人联系电话"></el-input> </el-form-item> <el-form-item label="管理员联系电话:" prop="adminPhone"> <el-input v-model="formDevice.adminPhone" clearable placeholder="请输入管理员联系电话:"></el-input> <el-input v-model="formDevice.adminPhone" :disabled="disabled" clearable placeholder="请输入管理员联系电话:"></el-input> </el-form-item> <el-form-item label="备注:"> <el-input v-model="formDevice.bigNotes" :disabled="disabled" clearable placeholder="请输入备注" type="textarea"> </el-input> </el-form-item> </el-form> <div slot="footer"> <div slot="footer" v-if="asyncTitle != 3"> <el-button @click="asyncDevice = false">取 消</el-button> <el-button class="submit_btn" @click="asyncTitle ? submitInsertForm() : submitUpdateForm()">提 交</el-button> </div> @@ -273,7 +283,7 @@ </div> <div slot="footer"> <el-button @click="asyncPlate = false">取 消</el-button> <el-button class="submit_btn" @click="asyncPlate = false">打 印</el-button> <el-button class="submit_btn" @click="printDeviceDialog()">打 印</el-button> </div> </el-dialog> </div> @@ -281,8 +291,7 @@ <script> import { buttonPinia } from '../../../../pinia/index'; import { throttle } from '../../../../plugins/public'; import { downFiles } from '@/plugins/public'; import { downFiles, throttle } from '../../../../plugins/public'; export default { name: 'SpecialEquipment', data() { @@ -293,7 +302,8 @@ pageSize: 10, total: 0, loading: false, specialList: [], generalList: [], disabled: false, asyncTitle: true, // true 新增 false 修改 asyncDevice: false, formDevice: {}, @@ -474,7 +484,7 @@ this.pageNum = 1; } this.loading = true; this.specialList = []; this.generalList = []; this.$api.Device.searchDeviceInfoList({ pageNum: this.pageNum, pageSize: this.pageSize, @@ -484,7 +494,7 @@ }).then((result) => { if(result.success) { this.total = result.data.total; this.specialList = result.data.list; this.generalList = result.data.list; } this.loading = false; }).catch(() => { @@ -494,11 +504,13 @@ // 打开添加信息 propInsert() { this.asyncTitle = true; this.disabled = false; this.asyncDevice = true; }, // 打开修改信息 propUpdate(row) { this.asyncTitle = false; this.disabled = false; this.asyncDevice = true; this.$api.Device.getDeviceDetails({ bigDeviceId : row.bigDeviceId @@ -529,6 +541,17 @@ this.$set(this.formDevice, 'bigNotes', res.data.bigNotes); }) }, // 打开查看 propDetail(row) { this.asyncTitle = 3; this.disabled = true; this.asyncDevice = true; this.$api.Device.getDeviceDetails({ bigDeviceId : row.bigDeviceId }).then((res) => { this.formDevice = res.data; }) }, // 查看设备标识牌 propPlate(row) { this.bigDeviceId = row.bigDeviceId; @@ -539,15 +562,20 @@ this.plateData = res.data; }) }, // 导出 exportExcel() { this.$api.Device.exportDeviceExcel({ bigType: 1, bigDeviceName: this.bigDeviceName, bigNumber: this.bigNumber }).then(res => { downFiles(res, '特种设备信息', 'xls') }) // 打印 printDevice(item) { const link = document.createElement('a'); link.id = `link`; link.href = `printpipe://4,${item.bigDeviceId}` link.click() }, // 弹框打印 printDeviceDialog() { const link = document.createElement('a'); link.id = `link`; link.href = `printpipe://4,${this.bigDeviceId}` link.click(); this.asyncPlate = false; }, // 删除设备信息 deleteInfo(row) { @@ -573,6 +601,16 @@ this.$message.warning("您已取消"); }) }, // 导出 exportExcel() { this.$api.Device.exportDeviceExcel({ bigType: 1, bigDeviceName: this.bigDeviceName, bigNumber: this.bigNumber }).then(res => { downFiles(res, '特种设备信息', 'xls') }) }, // 提交添加信息 submitInsertForm: throttle(function() { this.$refs.form.validate((valid) => {