| | |
| | | <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :visible.sync="usageTableDia" |
| | | title="设备保养计划表" width="80%" @close="closeDialog"> |
| | | <div style="display: flex;align-items: center;"> |
| | | <el-button size="small" type="primary" @click="addTableRow">添加</el-button> |
| | | <el-button size="small" type="primary" @click="addTableRow" v-if="operationType !== 'check'">添加</el-button> |
| | | <span style="width: 60px;margin-left: 10px">年份:</span> |
| | | <el-date-picker v-model="form.impowerYear" type="year" value-format="yyyy" clearable size="small" format="yyyy" |
| | | placeholder="选择年"> |
| | | placeholder="选择年" :disabled="operationType === 'check'"> |
| | | </el-date-picker> |
| | | </div> |
| | | <div style="margin: 10px 0"> |
| | | <el-table ref="usageTableData" :data="usageTableData" id="templateParamTable" row-key="deviceId" |
| | | <el-table ref="deviceImpowerDetails" :data="deviceImpowerDetails" id="templateParamTable" row-key="deviceId" |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border |
| | | height="560px" style="width: 100% ;"> |
| | | <el-table-column align="center" header-align="center" label="序号" type="index" width="60"></el-table-column> |
| | |
| | | size="small" :disabled="operationType === 'check'"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="设备编号" min-width="140" prop="deviceNumber"> |
| | | <el-table-column label="设备编号" min-width="140" prop="managementNumber"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.deviceNumber" clearable |
| | | <el-input v-model="scope.row.managementNumber" clearable |
| | | size="small" :disabled="operationType === 'check'"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规格型号" min-width="120" prop="model"> |
| | | <el-table-column label="规格型号" min-width="120" prop="specificationModel"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.model" clearable |
| | | <el-input v-model="scope.row.specificationModel" clearable |
| | | size="small" :disabled="operationType === 'check'"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | :disabled="operationType === 'check'"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="被授权人" min-width="120" prop="delegatee"> |
| | | <el-table-column label="被授权人" min-width="160" prop="delegatee"> |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.delegatedUserArr" |
| | | clearable filterable multiple |
| | |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" label="操作" width="80" align="center"> |
| | | <el-table-column label="操作" width="80" align="center" v-if="operationType !== 'check'"> |
| | | <template slot-scope="scope"> |
| | | <el-button style="color: #f56c6c" type="text" @click="deleteRow(scope.$index)">删除</el-button> |
| | | </template> |
| | |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column label="设备名称" prop="label" width="190"></el-table-column> |
| | | <el-table-column prop="value" label="设备编号" width="130"></el-table-column> |
| | | <el-table-column prop="managementNumber" label="归属实验室"></el-table-column> |
| | | <el-table-column prop="storagePoint" label="归属实验室"></el-table-column> |
| | | </el-table> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="addEquipDia = false">取 消</el-button> |
| | |
| | | { label: '授权人', prop: 'audit' }, |
| | | { label: '授权日期', prop: 'auditDate' }, |
| | | { |
| | | dataType: 'tag', |
| | | label: '授权状态', |
| | | prop: 'status', |
| | | formatData: (params) => { |
| | | if (params === 1) { |
| | | return '已授权' |
| | | } else if (params == 0) { |
| | | return '未授权' |
| | | } else { |
| | | return null |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | if (params == 1) { |
| | | return 'success' |
| | | } else if (params === 0) { |
| | | return 'danger' |
| | | } else { |
| | | return null |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | dataType: 'action', |
| | | label: '操作', |
| | | operation: [ |
| | |
| | | clickFun: (row) => { |
| | | this.openDia('edit', row); |
| | | }, |
| | | disabled: (row) => { |
| | | return row.status === 1; |
| | | }, |
| | | }, |
| | | { |
| | | name: '授权', |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.openDia('check', row); |
| | | }, |
| | | disabled: (row) => { |
| | | return row.status === 1; |
| | | }, |
| | | }, |
| | | { |
| | |
| | | clickFun: (row) => { |
| | | this.handleDeleteClick(row); |
| | | }, |
| | | disabled: (row) => { |
| | | return row.status === 1; |
| | | }, |
| | | }, |
| | | ] |
| | | } |
| | |
| | | responsibleOptions: [], |
| | | operationType: '', |
| | | usageTableDia: false, |
| | | usageTableData: [], |
| | | deviceImpowerDetails: [], |
| | | submitFormLoading: false, |
| | | addEquipDia: false, |
| | | equipOptions: [], |
| | |
| | | this.usageTableDia = true |
| | | this.form = { |
| | | impowerYear: '', |
| | | usageTableData: [], |
| | | deviceImpowerDetails: [], |
| | | } |
| | | this.usageTableData = [] |
| | | this.deviceImpowerDetails = [] |
| | | if (row) { |
| | | this.impowerId = row.impowerId |
| | | getImpowerDetail({ impowerId: this.impowerId }).then(res => { |
| | | if (res.code === 200) { |
| | | this.form = res.data |
| | | this.usageTableData = this.form.usageTableData |
| | | this.deviceImpowerDetails = this.form.deviceImpowerDetails |
| | | this.deviceImpowerDetails.forEach(item => { |
| | | this.$set(item, 'delegatedUserArr', item.delegatedUser.split(',')) |
| | | }) |
| | | } |
| | | }).catch(error => { |
| | | console.error(error) |
| | |
| | | }, |
| | | // 删除表格行 |
| | | deleteRow(index) { |
| | | this.usageTableData.splice(index, 1) |
| | | this.deviceImpowerDetails.splice(index, 1) |
| | | }, |
| | | // 提交新增和修改 |
| | | submitForm() { |
| | | this.form.usageTableData = this.HaveJson(this.usageTableData) |
| | | this.form.usageTableData.forEach((item) => { |
| | | this.form.deviceImpowerDetails = this.HaveJson(this.deviceImpowerDetails) |
| | | this.form.deviceImpowerDetails.forEach((item) => { |
| | | item.delegatedUser = item.delegatedUserArr.join(',') |
| | | }) |
| | | this.submitFormLoading = true |
| | |
| | | changeMachineName() { |
| | | this.deviceMaintenancePlanDetails = [] |
| | | this.selectionRows.map(val => { |
| | | this.usageTableData.push({ deviceId: val.id, deviceName: val.label, deviceNumber: val.value, model: val.specificationModel, delegatedUserArr: this.delegatedUser }) |
| | | this.deviceImpowerDetails.push({ deviceId: val.id, deviceName: val.label, managementNumber: val.value, specificationModel: val.specificationModel, delegatedUserArr: this.delegatedUser }) |
| | | }) |
| | | this.addEquipDia = false |
| | | }, |
| | |
| | | this.equipOptions = res.data.map(m => { |
| | | m.value = m.managementNumber |
| | | m.label = m.deviceName |
| | | m.storagePoint = m.storagePoint |
| | | return m |
| | | }) |
| | | } |
| | |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | deleteImpower({ id: row.impowerId }).then(res => { |
| | | deleteImpower({ impowerId: row.impowerId }).then(res => { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '删除成功!' |