src/api/cnas/resourceDemand/device.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/component/addVerificationYearPlanDia.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/component/addYearPlanDia.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/component/equipmentMaintenance.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/component/usageAuthorization.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/CNAS/resourceDemand/device/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/cnas/resourceDemand/device.js
@@ -1263,3 +1263,60 @@ data: query, }); } //设å¤ä½¿ç¨ææ å页æ¥è¯¢ export function selectDeviceImpowerByPage(query) { return request({ url: "/deviceImpower/selectDeviceImpowerByPage", method: "get", params: query, }); } //设å¤ä½¿ç¨ææ æ¥è¯¢è¯¦æ export function getImpowerDetail(query) { return request({ url: "/deviceImpower/getImpowerDetail", method: "get", params: query, }); } //设å¤ä½¿ç¨ææ å é¤ export function deleteImpower(query) { return request({ url: "/deviceImpower/deleteImpower", method: "delete", params: query, }); } //设å¤ä½¿ç¨ææ å¯¼åº export function exportDeviceImpower(query) { return request({ url: "/deviceImpower/exportDeviceImpower", method: "get", responseType: "blob", params: query, }); } //设å¤ä½¿ç¨ææ æ°å¢ export function addImpower(query) { return request({ url: "/deviceImpower/addImpower", method: "post", data: query, }); } //设å¤ä½¿ç¨ææ ä¿®æ¹ export function updateImpower(query) { return request({ url: "/deviceImpower/updateImpower", method: "post", data: query, }); } //设å¤ä½¿ç¨ææ æ¹åææ export function reviewImpowerStatus(query) { return request({ url: "/deviceImpower/reviewImpowerStatus", method: "post", data: query, }); } src/views/CNAS/resourceDemand/device/component/addVerificationYearPlanDia.vue
@@ -14,7 +14,7 @@ <div style="margin: 10px 0"> <el-table ref="yearTable" :data="examinePlanDetailsList" id="templateParamTable" row-key="deviceId" v-loading="yearTableLoading" :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border height="500px"> :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border height="560px"> <el-table-column label="设å¤åç§°" min-width="190" prop="deviceName"> <template slot-scope="scope"> <el-input v-model="scope.row.deviceName" clearable size="small"></el-input> src/views/CNAS/resourceDemand/device/component/addYearPlanDia.vue
@@ -12,7 +12,7 @@ </el-date-picker> </div> <div style="margin: 10px 0"> <el-table id="templateParamTable" ref="yearTable" :data="calibrationPlanDetailList" height="300px" <el-table id="templateParamTable" ref="yearTable" :data="calibrationPlanDetailList" height="560px" v-loading="yearTableLoading" :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border row-key="deviceId" style="width: 100% ;"> src/views/CNAS/resourceDemand/device/component/equipmentMaintenance.vue
@@ -86,7 +86,6 @@ search: { maintenanceDate: '', }, total: 0, outLoading: false, tableData: [], tableLoading: false, src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue
@@ -28,6 +28,7 @@ <template slot-scope="scope"> <el-button :disabled="scope.row.status === 1" size="small" type="text" @click="handleForm('edit', scope.row)">ç¼è¾</el-button> <el-button size="small" type="text" @click="handleForm('view', scope.row)">æ¥ç</el-button> <el-button :disabled="scope.row.status === 1" size="small" type="text" @click="tellApprove(scope.row.maintenancePlanId)">å®¡æ ¸éç¥</el-button> <el-button :disabled="scope.row.status === 1 || userId != scope.row.auditId" size="small" type="text" @@ -47,54 +48,54 @@ <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :visible.sync="applicationForm" title="设å¤ä¿å »è®¡å表" width="80%" @close="closeDialog"> <div style="display: flex;align-items: center;"> <el-button v-if="operationType !== 'check'" size="small" type="primary" @click="addTableRow">æ·»å </el-button> <el-button v-if="operationType === 'edit'" size="small" type="primary" @click="addTableRow">æ·»å </el-button> <span style="width: 60px;margin-left: 10px">年份ï¼</span> <el-date-picker v-model="form.planYear" type="year" value-format="yyyy" clearable size="small" format="yyyy" placeholder="鿩年"> placeholder="鿩年" :disabled="operationType !== 'edit'"> </el-date-picker> </div> <div style="margin: 10px 0"> <el-table ref="yearTable" :data="deviceMaintenancePlanDetails" id="templateParamTable" row-key="deviceId" :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border height="300px" style="width: 100% ;"> height="560px" style="width: 100% ;"> <el-table-column align="center" header-align="center" label="åºå·" type="index" width="60"></el-table-column> <el-table-column label="设å¤åç§°" min-width="170" prop="deviceName"> <template slot-scope="scope"> <el-input v-model="scope.row.deviceName" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.deviceName" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column label="设å¤ç¼å·" min-width="140" prop="deviceNumber"> <template slot-scope="scope"> <el-input v-model="scope.row.deviceNumber" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.deviceNumber" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column label="å½å±å®éªå®¤" min-width="120" prop="storagePoint"> <template slot-scope="scope"> <el-input v-model="scope.row.storagePoint" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.storagePoint" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column label="ä¿å »å ³é®é¨ä½" min-width="120" prop="maintenanceSite"> <template slot-scope="scope"> <el-input v-model="scope.row.maintenanceSite" :disabled="operationType === 'check'" clearable size="small" <el-input v-model="scope.row.maintenanceSite" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column label="ä¿å »å 容" min-width="120" prop="maintenanceContent"> <template slot-scope="scope"> <el-input v-model="scope.row.maintenanceContent" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.maintenanceContent" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column label="ä¿å »å¨æ" min-width="90" prop="maintenanceIntervals"> <template slot-scope="scope"> <el-input v-model="scope.row.maintenanceIntervals" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.maintenanceIntervals" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column fixed="right" label="æä½" width="80" align="center" v-if="operationType !== 'check'"> <el-table-column fixed="right" label="æä½" width="80" align="center" v-if="operationType === 'edit'"> <template slot-scope="scope"> <el-button style="color: #f56c6c" type="text" @click="deleteRow(scope.$index)">å é¤</el-button> </template> @@ -103,7 +104,7 @@ </div> <span slot="footer" class="dialog-footer"> <el-button @click="closeDialog">å æ¶</el-button> <el-button v-if="operationType !== 'check'" :loading="submitFormLoading" type="primary" @click="submitForm">ç¡® <el-button v-if="operationType === 'edit'" :loading="submitFormLoading" type="primary" @click="submitForm">ç¡® 认</el-button> <el-button v-if="operationType === 'check'" :loading="submitFormLoading" type="primary" @click="checkStatus(0)">ä¸éè¿</el-button> @@ -124,7 +125,7 @@ </el-table> <span slot="footer" class="dialog-footer"> <el-button @click="addEquipDia = false">å æ¶</el-button> <el-button v-if="operationType !== 'check'" :loading="submitFormLoading" type="primary" <el-button v-if="operationType === 'edit'" :loading="submitFormLoading" type="primary" @click="changeMachineName">ç¡® 认</el-button> </span> src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue
@@ -25,10 +25,11 @@ </el-table-column> <el-table-column label="æ¹åæ¶é´" min-width="180" prop="auditDate"></el-table-column> <!-- æä½æé® --> <el-table-column align="center" fixed="right" label="æä½" min-width="240"> <el-table-column align="center" fixed="right" label="æä½" min-width="270"> <template slot-scope="scope"> <el-button :disabled="scope.row.status === 1" size="small" type="text" @click="handleForm('edit', scope.row)">ç¼è¾</el-button> <el-button size="small" type="text" @click="handleForm('view', scope.row)">æ¥ç</el-button> <el-button :disabled="scope.row.status === 1" size="small" type="text" @click="tellApprove(scope.row.traceabilityManagementId)">æ¹åéç¥</el-button> <el-button :disabled="scope.row.status === 1 || userId != scope.row.auditId" size="small" type="text" @@ -49,66 +50,66 @@ <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :visible.sync="applicationForm" title="仪å¨è®¾å¤é弿º¯æºç®¡çæ»ä½è®¡å" width="80%" @close="closeDialog"> <div style="display: flex;align-items: center;"> <el-button v-if="operationType !== 'check'" size="small" type="primary" @click="addTableRow">æ·»å </el-button> <el-button v-if="operationType === 'edit'" size="small" type="primary" @click="addTableRow">æ·»å </el-button> <span style="width: 60px;margin-left: 10px">年份ï¼</span> <el-date-picker v-model="form.planYear" type="year" value-format="yyyy" clearable size="small" format="yyyy" placeholder="鿩年"> placeholder="鿩年" :disabled="operationType !== 'edit'"> </el-date-picker> </div> <div style="margin: 10px 0"> <el-table ref="yearTable" :data="deviceTraceabilityManagementDetails" height="300px" id="templateParamTable" <el-table ref="yearTable" :data="deviceTraceabilityManagementDetails" height="560px" id="templateParamTable" :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border row-key="deviceId" v-loading="yearTableLoading"> <el-table-column align="center" header-align="center" label="åºå·" type="index" width="60"></el-table-column> <el-table-column label="设å¤åç§°" min-width="170" prop="deviceId"> <template slot-scope="scope"> <el-input v-model="scope.row.deviceName" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.deviceName" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column label="åå·" min-width="140" prop="specificationModel"> <template slot-scope="scope"> <el-input v-model="scope.row.specificationModel" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.specificationModel" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column label="设å¤ç¼å·" min-width="140" prop="managementNumber"> <template slot-scope="scope"> <el-input v-model="scope.row.managementNumber" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.managementNumber" :disabled="operationType !== 'edit'" clearable size="small"></el-input> </template> </el-table-column> <el-table-column label="ææ¯ææ åæ°" min-width="150" prop="technicalIndexParameters"> <template slot-scope="scope"> <el-input v-model="scope.row.technicalIndexParameters" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.technicalIndexParameters" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column label="ææ¯ææ è¦æ±" min-width="150" prop="technicalRequirements"> <template slot-scope="scope"> <el-input v-model="scope.row.technicalRequirements" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.technicalRequirements" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column label="æ£å®å¨æ" min-width="120" prop="verificationCycle"> <template slot-scope="scope"> <el-input v-model="scope.row.verificationCycle" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.verificationCycle" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column label="æ£å®åä½" min-width="90" prop="verificationUnit"> <template slot-scope="scope"> <el-input v-model="scope.row.verificationUnit" :disabled="operationType === 'check'" clearable <el-input v-model="scope.row.verificationUnit" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column label="夿³¨" min-width="90" prop="remark"> <template slot-scope="scope"> <el-input v-model="scope.row.remark" :disabled="operationType === 'check'" clearable size="small" <el-input v-model="scope.row.remark" :disabled="operationType !== 'edit'" clearable size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column fixed="right" label="æä½" width="80" align="center" v-if="operationType !== 'check'"> <el-table-column fixed="right" label="æä½" width="80" align="center" v-if="operationType === 'edit'"> <template slot-scope="scope"> <el-button style="color: #f56c6c" type="text" @click="deleteRow(scope.$index)">å é¤</el-button> </template> @@ -117,7 +118,7 @@ </div> <span slot="footer" class="dialog-footer"> <el-button @click="closeDialog">å æ¶</el-button> <el-button v-if="operationType !== 'check'" :loading="submitFormLoading" type="primary" @click="submitForm">ç¡® <el-button v-if="operationType === 'edit'" :loading="submitFormLoading" type="primary" @click="submitForm">ç¡® 认</el-button> <el-button v-if="operationType === 'check'" :loading="submitFormLoading" type="primary" @click="checkStatus(0)">ä¸éè¿</el-button> @@ -137,7 +138,7 @@ </el-table> <span slot="footer" class="dialog-footer"> <el-button @click="addEquipDia = false">å æ¶</el-button> <el-button v-if="operationType !== 'check'" :loading="submitFormLoading" type="primary" <el-button v-if="operationType === 'edit'" :loading="submitFormLoading" type="primary" @click="changeMachineName">ç¡® 认</el-button> </span> src/views/CNAS/resourceDemand/device/component/usageAuthorization.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,376 @@ <template> <div> <div class="search"> <el-button size="small" type="primary" @click="refreshTableList">å· æ°</el-button> <el-button size="small" type="primary" @click="openDia('add')">æ° å¢</el-button> <el-button :loading="outLoading" size="small" type="primary" @click="openHandleOut">导 åº</el-button> </div> <div> <lims-table :tableData="tableData" :column="column" height="calc(100vh - 20em)" @pagination="pagination" :page="page" :tableLoading="tableLoading"></lims-table> </div> <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> <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="鿩年"> </el-date-picker> </div> <div style="margin: 10px 0"> <el-table ref="usageTableData" :data="usageTableData" 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> <el-table-column label="设å¤åç§°" min-width="170" prop="deviceName"> <template slot-scope="scope"> <el-input v-model="scope.row.deviceName" clearable size="small" :disabled="operationType === 'check'"></el-input> </template> </el-table-column> <el-table-column label="设å¤ç¼å·" min-width="140" prop="deviceNumber"> <template slot-scope="scope"> <el-input v-model="scope.row.deviceNumber" clearable size="small" :disabled="operationType === 'check'"></el-input> </template> </el-table-column> <el-table-column label="è§æ ¼åå·" min-width="120" prop="model"> <template slot-scope="scope"> <el-input v-model="scope.row.model" clearable size="small" :disabled="operationType === 'check'"></el-input> </template> </el-table-column> <el-table-column label="æ£æµé¡¹ç®" min-width="120" prop="inspectionItem<"> <template slot-scope="scope"> <el-input v-model="scope.row.inspectionItem" clearable size="small" :disabled="operationType === 'check'"></el-input> </template> </el-table-column> <el-table-column label="被ææäºº" min-width="120" prop="delegatee"> <template slot-scope="scope"> <el-select v-model="scope.row.delegatedUserArr" clearable filterable multiple :disabled="operationType === 'check'" placeholder="è¯·éæ©" size="small" style="width: 100%;"> <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> </template> </el-table-column> <el-table-column fixed="right" label="æä½" width="80" align="center"> <template slot-scope="scope"> <el-button style="color: #f56c6c" type="text" @click="deleteRow(scope.$index)">å é¤</el-button> </template> </el-table-column> </el-table> </div> <span slot="footer" class="dialog-footer"> <el-button @click="closeDialog">å æ¶</el-button> <el-button v-if="operationType !== 'check'" :loading="submitFormLoading" type="primary" @click="submitForm">确认</el-button> <el-button v-if="operationType === 'check'" :loading="submitFormLoading" type="primary" @click="checkStatus(0)">ä¸éè¿</el-button> <el-button v-if="operationType === 'check'" :loading="submitFormLoading" type="primary" @click="checkStatus(1)">éè¿</el-button> </span> </el-dialog> <el-dialog :close-on-click-modal="false" :close-on-press-escape="false" :visible.sync="addEquipDia" title="æ·»å 设å¤" width="50%"> <div style="display: flex;align-items: center;"> <span style="width: 90px;margin-left: 10px">被ææäººï¼</span> <el-select v-model="delegatedUser" clearable filterable multiple placeholder="è¯·éæ©" size="small" style="width: 100%;"> <el-option v-for="item in responsibleOptions" :key="item.name" :label="item.name" :value="item.name"> </el-option> </el-select> </div> <el-table ref="multipleTable" :data="equipOptions" tooltip-effect="dark" height="500" style="width: 100%" :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border @selection-change="handleSelectionChange"> <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> <span slot="footer" class="dialog-footer"> <el-button @click="addEquipDia = false">å æ¶</el-button> <el-button :loading="submitFormLoading" type="primary" @click="changeMachineName">确认</el-button> </span> </el-dialog> </div> </template> <script> import limsTable from "@/components/Table/lims-table.vue"; import { addImpower, deleteImpower, deviceScopeSearch, getImpowerDetail, reviewImpowerStatus, selectDeviceImpowerByPage, updateImpower } from "@/api/cnas/resourceDemand/device"; import {exportQualityMonitorDetail} from "@/api/cnas/process/ensureResults/qualityMonitor"; import {selectUserCondition} from "@/api/system/user"; export default { name: '', // import å¼å ¥çç»ä»¶éè¦æ³¨å ¥å°å¯¹è±¡ä¸æè½ä½¿ç¨ components: {limsTable}, props: { clickNodeVal: { type: Object, default: () => { } } }, data() { // è¿éåæ¾æ°æ® return { outLoading: false, tableData: [], tableLoading: false, page: { total: 0, size: 20, current: 1 }, column: [ { label: '计å年份', prop: 'impowerYear' }, { label: 'ç¼å¶äºº', prop: 'compiler' }, { label: 'ç¼å¶æ¶é´', prop: 'datePreparation' }, { label: 'ææäºº', prop: 'audit' }, { label: 'æææ¥æ', prop: 'auditDate' }, { dataType: 'action', label: 'æä½', operation: [ { name: 'ç¼è¾', type: 'text', clickFun: (row) => { this.openDia('edit', row); }, }, { name: 'ææ', type: 'text', clickFun: (row) => { this.openDia('check', row); }, }, { name: 'å é¤', type: 'text', clickFun: (row) => { this.handleDeleteClick(row); }, }, ] } ], responsibleOptions: [], operationType: '', usageTableDia: false, usageTableData: [], submitFormLoading: false, addEquipDia: false, equipOptions: [], selectionRows: [], form: { impowerYear: '' }, delegatedUser: [], impowerId: '' }; }, mounted() { this.refreshTableList() }, // æ¹æ³éå methods: { // ç¹å»å·æ° refreshTableList () { this.page.current = 1; this.getTableList() }, // å页忢 pagination(page) { this.page.size = page.limit this.getTableList() }, getTableList () { this.tableLoading = true selectDeviceImpowerByPage({ ...this.page }).then(res => { this.tableLoading = false this.tableData = res.data.records this.page.total = res.data.total }).catch(err => { this.tableLoading = false }) }, // æå¼æä½å¼¹æ¡ openDia (type, row) { this.operationType = type this.usageTableDia = true this.form = { impowerYear: '', usageTableData: [], } this.usageTableData = [] 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 } }).catch(error => { console.error(error) }) } this.getEquipOptions() this.getUserList() }, closeDialog () { this.usageTableDia = false this.getTableList() }, // æ·»å è®¾å¤ addTableRow() { this.addEquipDia = true this.delegatedUser = this.responsibleOptions.map((item) => item.name); this.getEquipOptions() }, // å é¤è¡¨æ ¼è¡ deleteRow(index) { this.usageTableData.splice(index, 1) }, // æäº¤æ°å¢åä¿®æ¹ submitForm() { this.form.usageTableData = this.HaveJson(this.usageTableData) this.form.usageTableData.forEach((item) => { item.delegatedUser = item.delegatedUserArr.join(',') }) this.submitFormLoading = true if (this.operationType === 'add') { addImpower(this.form).then(res => { if (res.code == 200) { this.$message.success('æ°å¢æå') this.usageTableDia = false this.refreshTableList() } this.submitFormLoading = false }).catch(err => { this.submitFormLoading = false }) } else { updateImpower(this.form).then(res => { if (res.code == 200) { this.$message.success('ä¿®æ¹æå') this.usageTableDia = false this.refreshTableList() } this.submitFormLoading = false }).catch(err => { this.submitFormLoading = false }) } }, // æäº¤å®¡æ ¸ checkStatus(status) { const params = { status: status, impowerId: this.impowerId } reviewImpowerStatus(params).then(res => { if (res.code == 200) { this.$message.success('å®¡æ ¸æå') this.usageTableDia = false this.refreshTableList() } this.submitFormLoading = false }).catch(err => { this.submitFormLoading = false }) }, handleSelectionChange(selection) { this.selectionRows = selection }, // èµå¼ä»ªå¨ç¼å· 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.addEquipDia = false }, // è·åææè®¾å¤ getEquipOptions() { this.equipOptions = [] deviceScopeSearch({ status: 0 }).then(res => { if (res.code === 200 && res.data) { this.equipOptions = res.data.map(m => { m.value = m.managementNumber m.label = m.deviceName return m }) } }).catch(error => { console.error(error) }) }, openHandleOut (row) { exportQualityMonitorDetail({ impowerId: row.impowerId }).then(res => { this.outLoading = false const blob = new Blob([res], { type: 'application/msword' }); this.$download.saveAs(blob, row.monitorName + '.docx') }) }, handleDeleteClick(row) { this.$confirm('æ¤æä½å°æ°¸ä¹ å é¤è¯¥æä»¶, æ¯å¦ç»§ç»?', 'æç¤º', { confirmButtonText: 'ç¡®å®', cancelButtonText: 'åæ¶', type: 'warning' }).then(() => { deleteImpower({ id: row.impowerId }).then(res => { this.$message({ type: 'success', message: 'å 餿å!' }); this.refreshTableList() }) }).catch(() => { this.$message({ type: 'info', message: '已忶å é¤' }); }); }, // è·åè´è´£äººä¿¡æ¯æ¥å£ getUserList() { selectUserCondition({type: 2}).then(res => { if (res.code == 200) { this.responsibleOptions = res.data } }) }, }, watch: { // çå¬ç¹å»el-treeçæ°æ®ï¼è¿è¡æ°æ®å·æ° clickNodeVal(newVal) { if (newVal.value) { this.refreshTableList(); } }, }, }; </script> <style scoped> .search { height: 46px; text-align: right; margin-top: 10px; } </style> src/views/CNAS/resourceDemand/device/index.vue
@@ -55,6 +55,10 @@ <quantity-value-traceability-plan v-if="menuListActiveName == 'é弿º¯æºè®¡å'" :clickNodeVal="clickNodeVal"></quantity-value-traceability-plan> </el-tab-pane> <el-tab-pane label="设å¤ä½¿ç¨ææ" name="设å¤ä½¿ç¨ææ"> <usage-authorization v-if="menuListActiveName == '设å¤ä½¿ç¨ææ'" :clickNodeVal="clickNodeVal"></usage-authorization> </el-tab-pane> <el-tab-pane label="å©ç¨å¤é¨ä»ªå¨è®¾å¤" name="å©ç¨å¤é¨ä»ªå¨è®¾å¤"> <using-external-instruments v-if="menuListActiveName == 'å©ç¨å¤é¨ä»ªå¨è®¾å¤'" :clickNodeVal="clickNodeVal"></using-external-instruments> </el-tab-pane> @@ -131,6 +135,7 @@ import EquipmentAcceptance from "./component/equipmentAcceptance.vue"; import QuantityValueTraceabilityPlan from "./component/quantityValueTraceabilityPlan.vue"; import equipmentMaintenance from "./component/equipmentMaintenance.vue"; import usageAuthorization from "./component/usageAuthorization.vue"; import { treeDevice, } from '@/api/cnas/resourceDemand/device.js' @@ -160,6 +165,7 @@ resourceReservation, operationInstruction, equipmentMaintenance, usageAuthorization, }, data() { return {