From 6140eb0f56b7adae1d4e41dbd4a1ac582dd17d9b Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 12 三月 2025 11:23:29 +0800
Subject: [PATCH] Merge branch 'dev' of http://114.132.189.42:9002/r/center-lims-before-ruoyi into dev
---
src/views/CNAS/resourceDemand/device/component/management.vue | 2022 +++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 1,220 insertions(+), 802 deletions(-)
diff --git a/src/views/CNAS/resourceDemand/device/component/management.vue b/src/views/CNAS/resourceDemand/device/component/management.vue
index e2e7602..bfc3c45 100644
--- a/src/views/CNAS/resourceDemand/device/component/management.vue
+++ b/src/views/CNAS/resourceDemand/device/component/management.vue
@@ -1,178 +1,378 @@
<!-- 璁惧宸ュ叿鏄庣粏 -->
<template>
- <div class="role_manage">
- <div class="search" v-show="!showData">
- <div class="search_thing">
- <div class="search_label">鐘舵�侊細</div>
- <el-select v-model="queryParams.deviceStatus" placeholder="鍏ㄩ儴" size="small">
- <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </div>
- <div class="search_thing">
- <div class="search_label">璁惧鍚嶇О锛�</div>
- <div class="search_input">
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.deviceName"
- @keyup.enter.native="refreshTable()">
- </el-input>
- </div>
- </div>
- <div class="search_thing">
- <div class="search_label">瑙勬牸鍨嬪彿锛�</div>
- <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
- v-model="queryParams.specificationModel" @keyup.enter.native="refreshTable()"></el-input>
- </div>
- </div>
- <div style="padding-left: 30px;">
- <el-button size="small" @click="refresh()">閲� 缃�</el-button>
- <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
- <el-button size="small" type="primary" @click="dialogVisible2 = true">鏂� 澧�</el-button>
- <el-button size="small" type="primary" @click="handleDownOne">瀵� 鍑�</el-button>
- </div>
- </div>
- <div class="table" v-show="!showData">
- <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 320px)'"
- :page="page" @pagination="pagination"></lims-table>
- </div>
- <el-dialog :title="isUp ? '璁惧璇︽儏' : '妗f淇'" :visible.sync="dialogVisible" width="70%"
- top="5vh"
- :before-close="handleClose">
- <el-row style="display:flex;justify-content: space-around;">
+ <div class="role_manage">
+ <div class="search" v-show="!showData">
+ <div class="search_thing">
+ <div class="search_label">鐘舵�侊細</div>
+ <el-select
+ v-model="queryParams.deviceStatus"
+ placeholder="鍏ㄩ儴"
+ size="small"
+ >
+ <el-option
+ v-for="item in deviceStatusList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </div>
+ <div class="search_thing">
+ <div class="search_label">璁惧鍚嶇О锛�</div>
+ <div class="search_input">
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="queryParams.deviceName"
+ @keyup.enter.native="refreshTable()"
+ >
+ </el-input>
+ </div>
+ </div>
+ <div class="search_thing">
+ <div class="search_label">瑙勬牸鍨嬪彿锛�</div>
+ <div class="search_input">
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="queryParams.specificationModel"
+ @keyup.enter.native="refreshTable()"
+ ></el-input>
+ </div>
+ </div>
+ <div style="padding-left: 30px">
+ <el-button size="small" @click="refresh()">閲� 缃�</el-button>
+ <el-button size="small" type="primary" @click="refreshTable()"
+ >鏌� 璇�</el-button
+ >
+ <el-button size="small" type="primary" @click="dialogVisible2 = true"
+ >鏂� 澧�</el-button
+ >
+ <el-button size="small" type="primary" @click="handleDownOne"
+ >瀵� 鍑�</el-button
+ >
+ </div>
+ </div>
+ <div class="table" v-show="!showData">
+ <lims-table
+ :tableData="tableData"
+ :column="column"
+ :tableLoading="tableLoading"
+ :height="'calc(100vh - 320px)'"
+ :page="page"
+ @pagination="pagination"
+ ></lims-table>
+ </div>
+ <el-dialog
+ :title="isUp ? '璁惧璇︽儏' : '妗f淇'"
+ :visible.sync="dialogVisible"
+ width="70%"
+ top="5vh"
+ :before-close="handleClose"
+ >
+ <el-row style="display: flex; justify-content: space-around">
<!-- 宸﹁竟甯冨眬 -->
<el-col :span="7">
<el-col>
<!-- 鍥剧墖 -->
- <el-image class="img" style="width:100%;height: 320px;marginBottom:16px"
- :src="javaApi + '/img/' + formData.imageUpload">
- <div slot="error" class="image-error" style="width: calc(100% -2px);
- height: 318px;
- border-radius: 16px;
- display: flex;
- align-items: center;
- justify-content: center;
- border: 1px solid #EEEEEE;">
- <i class="el-icon-picture-outline" style="font-size:60px;color:#666666;"></i>
+ <el-image
+ class="img"
+ style="width: 100%; height: 320px; marginbottom: 16px"
+ :src="javaApi + '/img/' + formData.imageUpload"
+ >
+ <div
+ slot="error"
+ class="image-error"
+ style="
+ width: calc(100% -2px);
+ height: 318px;
+ border-radius: 16px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ border: 1px solid #eeeeee;
+ "
+ >
+ <i
+ class="el-icon-picture-outline"
+ style="font-size: 60px; color: #666666"
+ ></i>
</div>
</el-image>
<!-- 琛ㄥ崟 -->
- <el-form :label-position="labelPosition" :model="formData" label-width="120px">
+ <el-form
+ :label-position="labelPosition"
+ :model="formData"
+ label-width="120px"
+ >
<el-form-item label="浠櫒鍚嶇О:" required>
- <el-input :disabled="isUp" v-model="formData.deviceName" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.deviceName"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="浠櫒鍚嶇ОEN:" required>
- <el-input :disabled="isUp" v-model="formData.enDeviceName" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.enDeviceName"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="瑙勬牸鍨嬪彿:" required>
- <el-input :disabled="isUp" v-model="formData.specificationModel"
- size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.specificationModel"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鐢熶骇鍘傚:">
- <el-input :disabled="isUp" v-model="formData.manufacturer" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.manufacturer"
+ size="small"
+ ></el-input>
</el-form-item>
</el-form>
</el-col>
</el-col>
<!-- 涓棿甯冨眬 -->
<el-col :span="7">
- <el-form :label-position="labelPosition" :model="formData" label-width="116px">
+ <el-form
+ :label-position="labelPosition"
+ :model="formData"
+ label-width="116px"
+ >
<el-form-item label="鏍″噯鏈嶅姟鏈烘瀯:">
- <el-input disabled v-model="formData.calibrationServices" size="small"></el-input>
+ <el-input
+ disabled
+ v-model="formData.calibrationServices"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鍑哄巶缂栧彿:">
- <el-input :disabled="isUp" v-model="formData.factoryNo" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.factoryNo"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="绠$悊缂栧彿:" required>
- <el-input :disabled="isUp" v-model="formData.managementNumber" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.managementNumber"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="璐疆鏃ユ湡:">
- <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.acquisitionDate"
- type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small"
- placeholder="閫夋嫨鏃ユ湡">
+ <el-date-picker
+ :disabled="isUp"
+ style="width: 100%"
+ v-model="formData.acquisitionDate"
+ type="date"
+ format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ size="small"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
<el-form-item label="鍚敤鏃ユ湡:" required>
- <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.activationDate"
- type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small"
- placeholder="閫夋嫨鏃ユ湡">
+ <el-date-picker
+ :disabled="isUp"
+ style="width: 100%"
+ v-model="formData.activationDate"
+ type="date"
+ format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ size="small"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
<el-form-item label="绠$悊浜�:">
- <el-select v-model="formData.equipmentManager" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option :disabled="isUp" v-for="item in responsiblePersonList" :key="item.value"
- :label="item.label" :value="item.value">
+ <el-select
+ v-model="formData.equipmentManager"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ :disabled="isUp"
+ v-for="item in responsiblePersonList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="瀛樻斁鐐�:">
- <el-input :disabled="isUp" v-model="formData.storagePoint" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.storagePoint"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鎶�鏈寚鏍�:">
- <el-input :disabled="isUp" v-model="formData.technicalIndicators" :rows="7" type="textarea"
- size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.technicalIndicators"
+ :rows="7"
+ type="textarea"
+ size="small"
+ ></el-input>
</el-form-item>
</el-form>
</el-col>
<!-- 鍙宠竟甯冨眬 -->
<el-col :span="7">
- <el-form :label-position="labelPosition" :model="formData" label-width="140px" ref="ruleForm">
+ <el-form
+ :label-position="labelPosition"
+ :model="formData"
+ label-width="140px"
+ ref="ruleForm"
+ >
<!-- 瀹為獙瀹ゅ垪琛� -->
<el-form-item label="鎵�灞為儴闂�:">
- <el-select :disabled="isUp" v-model="formData.subordinateDepartmentsId" placeholder="璇烽�夋嫨"
- size="small" style="width:100%">
- <el-option v-for="item in subordinateDepartmentsList" :key="item.value"
- :label="item.label" :value="item.value">
+ <el-select
+ :disabled="isUp"
+ v-model="formData.subordinateDepartmentsId"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in subordinateDepartmentsList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="妫�娴嬮」鐩�:">
- <el-cascader :disabled="isUp" v-model="formData.insProductIds" :options="options"
- :show-all-levels="false" :props="props" placeholder="璇烽�夋嫨" size="small"
- style="width:100%;" :collapse-tags="!isUp" separator="," filterable
- clearable></el-cascader>
+ <el-cascader
+ :disabled="isUp"
+ v-model="formData.insProductIds"
+ :options="options"
+ :show-all-levels="false"
+ :props="props"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ :collapse-tags="!isUp"
+ separator=","
+ filterable
+ clearable
+ ></el-cascader>
</el-form-item>
<el-form-item label="鏈�杩戞牎鍑嗘棩鏈�:" v-if="isUp">
- <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.latestTraceability"
- format="yyyy-MM-dd" value-format="yyyy-MM-dd" type="date" size="small"
- placeholder="閫夋嫨鏃ユ湡">
+ <el-date-picker
+ :disabled="isUp"
+ style="width: 100%"
+ v-model="formData.latestTraceability"
+ format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd"
+ type="date"
+ size="small"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
<el-form-item label="涓嬫鏍″噯鏃ユ湡:" v-if="isUp">
- <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.latestTraceability"
- format="yyyy-MM-dd" value-format="yyyy-MM-dd" type="date" size="small"
- placeholder="閫夋嫨鏃ユ湡">
+ <el-date-picker
+ :disabled="isUp"
+ style="width: 100%"
+ v-model="formData.latestTraceability"
+ format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd"
+ type="date"
+ size="small"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
<el-form-item label="璁惧绫诲瀷:">
- <el-select :disabled="isUp" v-model="formData.largeCategory" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in equipmentList" :key="item.value" :label="item.label"
- :value="item.value">
+ <el-select
+ :disabled="isUp"
+ v-model="formData.largeCategory"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in equipmentList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="鍗曚环(涓囧厓):">
- <el-input :disabled="isUp" v-model="formData.unitPrice" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.unitPrice"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="褰撳墠鐘舵��:" required>
- <el-select :disabled="isUp" v-model="formData.deviceStatus" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label"
- :value="item.value">
+ <el-select
+ :disabled="isUp"
+ v-model="formData.deviceStatus"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in deviceStatusList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="鏍″噯鍛ㄦ湡锛堟湀锛�:" required>
- <el-input :disabled="isUp" v-model="formData.calibrationDate" size="small"></el-input>
+ <el-input
+ :disabled="isUp"
+ v-model="formData.calibrationDate"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鍥剧墖:">
<div
- style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;lineHeight:32px;display:flex;justify-content: space-around;font-size: 13px;">
- <div v-show="formData.imageName" class="picName">{{ formData.imageName }}</div>
- <el-upload :disabled="isUp" :action="action" :on-success="handleSuccessUpImg2"
- :show-file-list="false" accept='image/jpg,image/jpeg,image/png' :headers="uploadHeader"
- :on-change="beforeUpload" :on-error="onError" ref='upload'>
- <el-button type="text" style="height:30px;padding-top:8px">涓婁紶</el-button>
+ style="
+ border: 1px solid #dcdfe6;
+ border-radius: 4px;
+ height: 32px;
+ lineheight: 32px;
+ display: flex;
+ justify-content: space-around;
+ font-size: 13px;
+ "
+ >
+ <div v-show="formData.imageName" class="picName">
+ {{ formData.imageName }}
+ </div>
+ <el-upload
+ :disabled="isUp"
+ :action="action"
+ :on-success="handleSuccessUpImg2"
+ :show-file-list="false"
+ accept="image/jpg,image/jpeg,image/png"
+ :headers="uploadHeader"
+ :on-change="beforeUpload"
+ :on-error="onError"
+ ref="upload"
+ >
+ <el-button type="text" style="height: 30px; padding-top: 8px"
+ >涓婁紶</el-button
+ >
</el-upload>
</div>
</el-form-item>
@@ -180,112 +380,218 @@
</el-col>
</el-row>
<span slot="footer" class="dialog-footer">
- <el-row v-if="!isUp">
- <el-button @click="handleClose">鍙� 娑�</el-button>
- <el-button type="primary" @click="submitForm" :loading="upLoad">纭� 瀹�</el-button>
- </el-row>
- </span>
+ <el-row v-if="!isUp">
+ <el-button @click="handleClose">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitForm" :loading="upLoad"
+ >纭� 瀹�</el-button
+ >
+ </el-row>
+ </span>
</el-dialog>
<!-- 鏂板-->
- <el-dialog title="鏂板璁惧" top="5vh" :visible.sync="dialogVisible2" width="70%" :before-close="handleClose2">
- <el-row style="display:flex;justify-content: space-around;">
+ <el-dialog
+ title="鏂板璁惧"
+ top="5vh"
+ :visible.sync="dialogVisible2"
+ width="70%"
+ :before-close="handleClose2"
+ >
+ <el-row style="display: flex; justify-content: space-around">
<!-- 宸﹁竟甯冨眬 -->
<el-col :span="7">
<el-col>
<!-- 鍥剧墖 -->
- <el-image class="img" style="width:100%;height: 320px;margin-bottom:16px"
- :src="javaApi + '/img/' + formData2.imageUpload">
- <div slot="error" class="image-error" style="width: calc(100% -2px);
- height: 318px;
- border-radius: 16px;
- display: flex;
- align-items: center;
- justify-content: center;
- border: 1px solid #EEEEEE;">
- <i class="el-icon-picture-outline" style="font-size:60px;color:#666666;"></i>
+ <el-image
+ class="img"
+ style="width: 100%; height: 320px; margin-bottom: 16px"
+ :src="javaApi + '/img/' + formData2.imageUpload"
+ >
+ <div
+ slot="error"
+ class="image-error"
+ style="
+ width: calc(100% -2px);
+ height: 318px;
+ border-radius: 16px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ border: 1px solid #eeeeee;
+ "
+ >
+ <i
+ class="el-icon-picture-outline"
+ style="font-size: 60px; color: #666666"
+ ></i>
</div>
</el-image>
<!-- 琛ㄥ崟 -->
- <el-form :label-position="labelPosition" :model="formData2" label-width="120px">
+ <el-form
+ :label-position="labelPosition"
+ :model="formData2"
+ label-width="120px"
+ >
<el-form-item label="浠櫒鍚嶇О:" required>
- <el-input v-model="formData2.deviceName" size="small"></el-input>
+ <el-input
+ v-model="formData2.deviceName"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="浠櫒鍚嶇ОEN:" required>
- <el-input v-model="formData2.enDeviceName" size="small"></el-input>
+ <el-input
+ v-model="formData2.enDeviceName"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="瑙勬牸鍨嬪彿:" required>
- <el-input v-model="formData2.specificationModel" size="small"></el-input>
+ <el-input
+ v-model="formData2.specificationModel"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鐢熶骇鍘傚:">
- <el-input v-model="formData2.manufacturer" size="small"></el-input>
+ <el-input
+ v-model="formData2.manufacturer"
+ size="small"
+ ></el-input>
</el-form-item>
</el-form>
</el-col>
</el-col>
<!-- 涓棿甯冨眬 -->
<el-col :span="7">
- <el-form :label-position="labelPosition" :model="formData2" label-width="110px">
+ <el-form
+ :label-position="labelPosition"
+ :model="formData2"
+ label-width="110px"
+ >
<!-- <el-form-item label="鐢熶骇鍘傚EN:">
<el-input v-model="formData2.factoryNo" size="small"></el-input>
</el-form-item> -->
<el-form-item label="鏍″噯鏈嶅姟鏈烘瀯:">
- <el-input v-model="formData2.calibrationServices" size="small"></el-input>
+ <el-input
+ v-model="formData2.calibrationServices"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鍑哄巶缂栧彿:">
<el-input v-model="formData2.factoryNo" size="small"></el-input>
</el-form-item>
<el-form-item label="绠$悊缂栧彿:" required>
- <el-input v-model="formData2.managementNumber" size="small"></el-input>
+ <el-input
+ v-model="formData2.managementNumber"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="璐疆鏃ユ湡:">
- <el-date-picker style="width:100%" v-model="formData2.acquisitionDate" type="date"
- format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small" placeholder="閫夋嫨鏃ユ湡">
+ <el-date-picker
+ style="width: 100%"
+ v-model="formData2.acquisitionDate"
+ type="date"
+ format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ size="small"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
<el-form-item label="鍚敤鏃ユ湡:" required>
- <el-date-picker style="width:100%" v-model="formData2.activationDate" type="date"
- format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small" placeholder="閫夋嫨鏃ユ湡">
+ <el-date-picker
+ style="width: 100%"
+ v-model="formData2.activationDate"
+ type="date"
+ format="yyyy-MM-dd"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ size="small"
+ placeholder="閫夋嫨鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
<el-form-item label="绠$悊浜�:">
- <el-select v-model="formData2.equipmentManager" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in responsiblePersonList" :key="item.value" :label="item.label"
- :value="item.value">
+ <el-select
+ v-model="formData2.equipmentManager"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in responsiblePersonList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="瀛樻斁鐐�:">
- <el-input v-model="formData2.storagePoint" size="small"></el-input>
+ <el-input
+ v-model="formData2.storagePoint"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鎶�鏈寚鏍�:">
- <el-input v-model="formData2.technicalIndicators" :rows="7" type="textarea"
- size="small"></el-input>
+ <el-input
+ v-model="formData2.technicalIndicators"
+ :rows="7"
+ type="textarea"
+ size="small"
+ ></el-input>
</el-form-item>
</el-form>
</el-col>
<!-- 鍙宠竟甯冨眬 -->
<el-col :span="7">
- <el-form :label-position="labelPosition" :model="formData2" label-width="120px" ref="ruleForm">
+ <el-form
+ :label-position="labelPosition"
+ :model="formData2"
+ label-width="120px"
+ ref="ruleForm"
+ >
<!-- 瀹為獙瀹ゅ垪琛� -->
<el-form-item label="鎵�灞為儴闂�:">
- <el-select v-model="formData2.subordinateDepartmentsId" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in subordinateDepartmentsList" :key="item.value"
- :label="item.label" :value="item.value">
+ <el-select
+ v-model="formData2.subordinateDepartmentsId"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in subordinateDepartmentsList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="妫�娴嬮」鐩�:">
- <el-cascader v-model="formData2.insProductIds" :options="options" :show-all-levels="false"
- :props="props" placeholder="璇烽�夋嫨" size="small" style="width:100%" collapse-tags
- separator="," filterable clearable></el-cascader>
+ <el-cascader
+ v-model="formData2.insProductIds"
+ :options="options"
+ :show-all-levels="false"
+ :props="props"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ collapse-tags
+ separator=","
+ filterable
+ clearable
+ ></el-cascader>
</el-form-item>
<el-form-item label="璁惧绫诲瀷:">
- <el-select v-model="formData2.largeCategory" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in equipmentList" :key="item.value" :label="item.label"
- :value="item.value">
+ <el-select
+ v-model="formData2.largeCategory"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in equipmentList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
@@ -293,24 +599,55 @@
<el-input v-model="formData2.unitPrice" size="small"></el-input>
</el-form-item>
<el-form-item label="褰撳墠鐘舵��:" required>
- <el-select v-model="formData2.deviceStatus" placeholder="璇烽�夋嫨" size="small"
- style="width:100%">
- <el-option v-for="item in deviceStatusList" :key="item.id" :label="item.label"
- :value="item.value">
+ <el-select
+ v-model="formData2.deviceStatus"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in deviceStatusList"
+ :key="item.id"
+ :label="item.label"
+ :value="item.value"
+ >
</el-option>
</el-select>
</el-form-item>
<el-form-item label="鏍″噯鍛ㄦ湡锛堟湀锛�:" required>
- <el-input v-model="formData2.calibrationDate" size="small"></el-input>
+ <el-input
+ v-model="formData2.calibrationDate"
+ size="small"
+ ></el-input>
</el-form-item>
<el-form-item label="鍥剧墖:">
<div
- style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;line-height:32px;display:flex;justify-content: space-around;font-size: 13px;">
- <div v-show="formData2.imageName" class="picName">{{ formData2.imageName }}</div>
- <el-upload :action="action" :on-success="handleSuccessUpImg2" :show-file-list="false"
- accept='image/jpg,image/jpeg,image/png' :headers="uploadHeader" :on-change="beforeUpload"
- :on-error="onError" ref='upload'>
- <el-button type="text" style="height:30px;padding-top:8px">涓婁紶</el-button>
+ style="
+ border: 1px solid #dcdfe6;
+ border-radius: 4px;
+ height: 32px;
+ line-height: 32px;
+ display: flex;
+ justify-content: space-around;
+ font-size: 13px;
+ "
+ >
+ <div v-show="formData2.imageName" class="picName">
+ {{ formData2.imageName }}
+ </div>
+ <el-upload
+ :action="action"
+ :on-success="handleSuccessUpImg2"
+ :show-file-list="false"
+ accept="image/jpg,image/jpeg,image/png"
+ :headers="uploadHeader"
+ :on-change="beforeUpload"
+ :on-error="onError"
+ ref="upload"
+ >
+ <el-button type="text" style="height: 30px; padding-top: 8px"
+ >涓婁紶</el-button
+ >
</el-upload>
</div>
</el-form-item>
@@ -318,695 +655,776 @@
</el-col>
</el-row>
<span slot="footer" class="dialog-footer">
- <el-row>
- <el-button @click="handleClose2">鍙� 娑�</el-button>
- <el-button type="primary" @click="submitForm2" :loading="upLoad2">纭� 瀹�</el-button>
- </el-row>
- </span>
+ <el-row>
+ <el-button @click="handleClose2">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitForm2" :loading="upLoad2"
+ >纭� 瀹�</el-button
+ >
+ </el-row>
+ </span>
</el-dialog>
<el-dialog title="鏁伴噰閰嶇疆" :visible.sync="dialogVisible3" width="400px">
- <div class="search_thing" style="margin-bottom: 14px;">
- <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>IP锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.ip"></el-input>
+ <div class="search_thing" style="margin-bottom: 14px">
+ <div class="search_label">
+ <span style="color: red; margin-right: 4px">*</span>IP锛�
+ </div>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.ip"
+ ></el-input>
</div>
- <div class="search_thing" style="margin-bottom: 14px;">
- <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>閲囬泦鍦板潃锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.collectUrl"></el-input>
+ <div class="search_thing" style="margin-bottom: 14px">
+ <div class="search_label">
+ <span style="color: red; margin-right: 4px">*</span>閲囬泦鍦板潃锛�
+ </div>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.collectUrl"
+ ></el-input>
</div>
- <div class="search_thing" style="margin-bottom: 14px;">
- <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>鍌ㄥ瓨鍦板潃锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.storageUrl"></el-input>
+ <div class="search_thing" style="margin-bottom: 14px">
+ <div class="search_label">
+ <span style="color: red; margin-right: 4px">*</span>鍌ㄥ瓨鍦板潃锛�
+ </div>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.storageUrl"
+ ></el-input>
</div>
- <div class="search_thing" style="margin-bottom: 14px;">
- <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>鍙傜収锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.refer"></el-input>
+ <div class="search_thing" style="margin-bottom: 14px">
+ <div class="search_label">
+ <span style="color: red; margin-right: 4px">*</span>鍙傜収锛�
+ </div>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.refer"
+ ></el-input>
</div>
- <div class="search_thing" style="margin-bottom: 14px;">
- <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>X锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.x"></el-input>
+ <div class="search_thing" style="margin-bottom: 14px">
+ <div class="search_label">
+ <span style="color: red; margin-right: 4px">*</span>X锛�
+ </div>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.x"
+ ></el-input>
</div>
- <div class="search_thing" style="margin-bottom: 14px;">
- <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>Y锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.y"></el-input>
+ <div class="search_thing" style="margin-bottom: 14px">
+ <div class="search_label">
+ <span style="color: red; margin-right: 4px">*</span>Y锛�
+ </div>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.y"
+ ></el-input>
</div>
<div class="search_thing">
<div class="search_label">鍏紡锛�</div>
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.formula"></el-input>
+ <el-input
+ size="small"
+ placeholder="璇疯緭鍏�"
+ clearable
+ v-model="configForm.formula"
+ ></el-input>
</div>
<span slot="footer" class="dialog-footer">
- <el-row>
- <el-button @click="dialogVisible3 = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="submitForm3" :loading="upLoad3">纭� 瀹�</el-button>
- </el-row>
- </span>
+ <el-row>
+ <el-button @click="dialogVisible3 = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitForm3" :loading="upLoad3"
+ >纭� 瀹�</el-button
+ >
+ </el-row>
+ </span>
</el-dialog>
- <dataAcquisitionConfig v-if="showData" :deviceId="deviceId" />
- </div>
+ <dataAcquisitionConfig v-if="showData" :deviceId="deviceId" />
+ </div>
</template>
<script>
import limsTable from "@/components/Table/lims-table.vue";
-import dataAcquisitionConfig from './acquisitionConfig.vue'
+import dataAcquisitionConfig from "./acquisitionConfig.vue";
import {
- obtainItemParameterList,
- exportEquipmentDetails,
- getInsProduction,
- upDeviceParameter,
- addDeviceParameter,
- numberCollect,
- getDeviceParameter,
- delDeviceParameter,
-} from '@/api/cnas/resourceDemand/device.js'
+ obtainItemParameterList,
+ exportEquipmentDetails,
+ getInsProduction,
+ upDeviceParameter,
+ addDeviceParameter,
+ numberCollect,
+ getDeviceParameter,
+ delDeviceParameter,
+} from "@/api/cnas/resourceDemand/device.js";
import { selectUserCondition } from "@/api/system/user";
export default {
- props: {
- clickNodeVal: {
- type: Object,
- default: () => {
- return {};
- }
- }
- },
- components: {
- limsTable,
- dataAcquisitionConfig,
- },
- data() {
- return {
- dateFormat: 'yyyy-MM-dd',
- deviceId: '',
- fileTypeOptions: [
- { label: 'csv', value: '.csv' },
- { label: 'db', value: '.db' },
- { label: 'mdb', value: '.mdb' },
- { label: 'word', value: '.docx' },
- { label: 'excel', value: '.xlsx' },
- { label: 'txt', value: '.txt' },
- { label: 'png', value: '.png' },
- ],
- //鏄惁鏄。妗堜慨璁� true涓嶆槸 false鏄�
- isUp: true,
- formData: {
- authorizedPerson: []
- },
- formData2: {
- imageUpload: '',
- imageName: '',
- deviceStatus: '',
- authorizedPerson: []
- },
- value: '',
- props: { multiple: true, emitPath: false, value: 'id', label: 'name' },
- options: [],
- labelPosition: 'right',
- dialogVisible: false,
- dialogVisible2: false,
- addPower: false,
- showData: false, // 鏁伴噰閰嶇疆椤甸潰
- tableList: [],
- addDia: true,
- addPower: true,
- //璁惧绫诲瀷鍒楄〃
- equipmentList: [],
- // 璐熻矗浜哄垪琛�
- responsiblePersonList: [],
- // 鎺堟潈浜哄垪琛�
- authorizerList: [],
- // 褰撳墠鐘舵�佸垪琛�
- deviceStatusList: [],
- // 鎵�灞為儴闂�
- subordinateDepartmentsList: [],
- upLoad: false,
- upLoad2: false,
- dialogVisible3: false,
- upLoad3: false,
- configForm: {},
- laboratoryNameIsNull: false,
- queryParams: {},
- tableData: [],
- column: [
- { label: "璁惧鍚嶇О", prop: "deviceName", dataType: 'link', linkMethod: 'selectAllByOne' },
- { label: "璁惧鍚嶇ОEN", prop: "enDeviceName" },
- {
- label: "瑙勬牸鍨嬪彿",
- prop: "specificationModel",
- },
- { label: "鐢熶骇鍘傚", prop: "manufacturer" },
- { label: "鍑哄巶缂栧彿", prop: "factoryNo" },
- { label: "绠$悊缂栧彿", prop: "managementNumber" },
- { label: "鎶�鏈寚鏍�", prop: "technicalIndicators" },
- { label: "璐疆鏃ユ湡", prop: "acquisitionDate" },
- { label: "鍚敤鏃ユ湡", prop: "activationDate" },
- { label: "绠$悊浜�", prop: "equipmentManagerUser" },
- { label: "瀛樻斁鐐�", prop: "storagePoint" },
- { label: "鎵�灞為儴闂�", prop: "laboratoryName" },
- { label: "妫�楠岄」鐩�", prop: "insProductItem" },
- { label: "鏍″噯鏈嶅姟鏈烘瀯", prop: "calibrationServices" },
- { label: "鏈�杩戞牎鍑嗘棩鏈�", prop: "lastCalibrationDateTwo" },
- { label: "鏈�杩戞牳鏌ユ棩鏈�", prop: "lastCalibrationDate" },
- { label: "涓嬫鏍″噯鏃ユ湡", prop: "nextCalibrationDateTwo" },
- { label: "涓嬫鏍告煡鏃ユ湡", prop: "nextCalibrationDate" },
- {
- label: "璁惧鍒嗙被", prop: "largeCategory", dataType: "tag",
- formatData: (params) => {
- return this.equipmentList.find(m => m.value == params).label
- },
- formatType: (params) => {
- return this.equipmentList.find(m => m.value == params).type
- }
- },
- { label: "鍗曚环", prop: "unitPrice" },
- {
- label: "璁惧鐘舵��", prop: "deviceStatus", dataType: "tag",
- formatData: (params) => {
- return this.deviceStatusList.find(m => m.value == params).label
- },
- formatType: (params) => {
- return this.deviceStatusList.find(m => m.value == params).type
- }
- },
- { label: "鏍″噯鍛ㄦ湡(鏈�)", prop: "calibrationDate" },
- {
- dataType: "action",
- fixed: "right",
- label: "鎿嶄綔",
- operation: [
- {
- name: "妗f淇",
- type: "text",
- clickFun: (row) => {
- this.isUpdate(row);
- },
- },
- {
- name: "鏁伴噰閰嶇疆",
- type: "text",
- clickFun: (row) => {
- this.handleConfig(row);
- },
- disabled: (row) => {
- return row.insProductItem == null || row.insProductItem === ''
- }
- },
- {
- name: "鍒犻櫎",
- type: "text",
- clickFun: (row) => {
- this.handleDelete(row);
- },
- },
- ],
- },
- ],
- page: {
- total: 0,
- size: 10,
- current: 0,
- },
- tableLoading: false,
- }
- },
- computed: {
- action() {
- return this.javaApi + '/deviceScope/uploadFile'
- }
- },
- mounted() {
- this.selectEnumByCategory()
- this.selectDevicePrincipal()
- this.obtainItemParameterList()
- this.getInsProductIds()
- // 鍒濆鍖�
- this.clickSidebar(this.clickNodeVal)
- },
- methods: {
- //鍒嗙被
- handleNotification(cate) {
- this.queryParams.largeCategory = cate
- },
- obtainItemParameterList() {
- obtainItemParameterList().then(res => {
- let data = []
- res.data.forEach(a => {
- data.push({
- label: a.laboratoryName,
- value: a.id
- })
- })
- this.subordinateDepartmentsList = data
- })
- },
- getList() {
- this.tableLoading = true;
- let param = { laboratoryNameIsNull: this.laboratoryNameIsNull, ...this.queryParams, ...this.page };
- delete param.total;
- getDeviceParameter({ ...param })
- .then((res) => {
- this.tableLoading = false;
- if (res.code === 200) {
- this.tableData = res.data.records;
- this.page.total = res.data.total;
- }
- })
- .catch((err) => {
- this.tableLoading = false;
- });
- },
- pagination({ page, limit }) {
- this.page.current = page;
- this.page.size = limit;
- this.getList();
- },
- refresh() {
- this.queryParams = {};
- this.page.current = 1;
- this.getList();
- },
- refreshTable() {
- this.page.current = 1;
- this.getList();
- },
- // 瀵煎嚭
- handleDownOne() {
- this.outLoading = true
- exportEquipmentDetails().then(res => {
- this.outLoading = false
- const blob = new Blob([res], { type: 'application/octet-stream' });
- this.$download.saveAs(blob, '璁惧浠櫒涓�瑙堣〃.doc')
- })
- },
- // 鑾峰彇瀛楀吀
- selectEnumByCategory() {
- // 璁惧鐘舵��
- this.getDicts("device_status").then((response) => {
- this.deviceStatusList = this.dictToValue(response.data);
- });
- // 璁惧鍒嗙被
- this.getDicts("device_type").then((response) => {
- this.equipmentList = this.dictToValue(response.data);
- });
- },
- // 鑾峰彇璐熻矗浜哄垪琛�
- selectDevicePrincipal() {
- selectUserCondition().then(res => {
- let data = [];
- res.data.forEach((a) => {
- data.push({
- label: a.name,
- value: a.id,
- });
- });
- this.responsiblePersonList = data
- this.authorizerList = data
- })
- },
- getInsProductIds() {
- getInsProduction().then(res => {
- this.options = res.data.map((m, i) => {
- m.id = m.name;
- let children = m.children.map(n => {
- n.label = n.name;
- n.value = n.id;
- return n
- })
- return m
- })
- this.options.forEach(item => {
- if (item.children.length == 0) {
- item.children = null;
- } else {
- item.children.forEach(m => {
- if (m.children.length == 0) {
- m.children = null;
- } else {
- m.children.forEach(n => {
- if (n.children && n.children.length == 0) {
- n.children = null;
- }
- })
- }
- })
- }
- })
- })
- },
- handleClose() {
- this.formData = {
- authorizedPerson: []
- }
- this.formData2 = {
- imageUpload: '',
- imageName: '',
- authorizedPerson: []
- }
- this.dialogVisible = false;
- this.upLoad = false;
- },
- handleClose2() {
- this.formData = {
- authorizedPerson: []
- }
- this.formData2 = {
- imageUpload: '',
- imageName: '',
- authorizedPerson: []
- }
- this.dialogVisible2 = false;
- this.upLoad = false;
- },
- selectAllByOne(row) {
- this.isUp = true
- //鎵撳紑寮规
- this.dialogVisible = true;
- //row = 鐐瑰嚮瀵瑰簲琛屽��
- //澶嶅埗缁檉ormData
- this.formData = this.HaveJson(row);
- console.log(row.insProductIds + 'valll');
- this.formData.insProductIds = row.insProductIds ? row.insProductIds.split(',') : [];
- },
- isUpdate(row) {
- //淇敼 isUp 涓烘。妗堜慨鏀�
- this.isUp = false
- //鎵撳紑寮规
- this.dialogVisible = true;
- //row = 鐐瑰嚮瀵瑰簲琛屽�间竴琛屽��
- //澶嶅埗缁檉ormData
- this.formData = this.HaveJson(row);
- if (typeof (row.insProductIds) === 'number') {
- row.insProductIds = row.insProductIds + ''
- }
- this.formData.deviceStatus = this.formData.deviceStatus + ''
- this.formData.insProductIds = row.insProductIds ? row.insProductIds.split(',') : [];
- // 灏嗘椂闂存牸寮忎负yyyy-MM-dd 杩涜杞崲
- const dateRegex = /^\d{4}-\d{2}-\d{2}$/
- Object.keys(this.formData).forEach(key => {
- if (dateRegex.test(this.formData[key])) {
- this.formData[key] = `${this.formData[key]} 00:00:00`
- }
- })
- },
- beforeUpload(file) {
- if (file.size > 1024 * 1024 * 10) {
- this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
- this.$refs.upload.clearFiles()
- return false;
- } else {
- return true;
- }
- },
- onError(err, file, fileList) {
- this.$message.error('涓婁紶澶辫触')
- this.$refs.upload.clearFiles()
- },
- // 涓婁紶鍥剧墖鎴愬姛
- handleSuccessUpImg(response,) {
- if (response.code == 200) {
- this.formData.imageUpload = response.data.url;
- this.formData.imageName = response.data.name;
- }
- },
- handleSuccessUpImg2(response) {
- if (response.code == 200) {
- this.$nextTick(() => {
- this.formData.imageUpload = response.data.url;
- this.formData.imageName = response.data.name;
- this.formData2.imageUpload = response.data.url;
- this.formData2.imageName = response.data.name;
- })
- }
- },
- submitForm() {
- if (!this.formData.deviceName) {
- this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉�')
- return
- }
- if (!this.formData.enDeviceName) {
- this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉癊N')
- return
- }
- if (!this.formData.specificationModel) {
- this.$message.error('鏈緭鍏ヨ鏍煎瀷鍙�')
- return
- }
- if (!this.formData.managementNumber) {
- this.$message.error('鏈緭鍏ョ鐞嗙紪鍙�')
- return
- }
- if (!this.formData.activationDate) {
- this.$message.error('鏈緭鍏ユ牎鍑嗘湁鏁堟湡')
- return
- }
- if (!this.formData.subordinateDepartmentsId) {
- this.$message.error('鏈�夋嫨鎵�灞為儴闂�')
- return
- }
- if (this.formData.deviceStatus === '' || this.formData.deviceStatus === null) {
- this.$message.error('鏈�夋嫨褰撳墠鐘舵��')
- return
- }
- if (!this.formData.calibrationDate) {
- this.$message.error('鏈緭鍏ユ牎鍑嗗懆鏈燂紙鏈堬級')
- return
- }
- delete this.formData.createTime
- delete this.formData.updateTime
- delete this.formData.createUser
- delete this.formData.updateUser
- const formData = this.HaveJson(this.formData)
- formData.insProductIds = formData.insProductIds ? formData.insProductIds.join() : ''
- if (formData.authorizedPerson.length === 0) {
- formData.authorizedPerson = ''
- } else {
- formData.authorizedPerson = JSON.stringify(formData.authorizedPerson)
- }
- this.upLoad = true;
- upDeviceParameter(formData).then(res => {
- this.$message.success('淇敼鎴愬姛')
- this.upLoad = false
- this.refreshTable('page')
- this.dialogVisible = false
- }).catch(e => {
- this.$message.error('淇敼澶辫触')
- this.dialogVisible = false
- this.upLoad = false
- })
- },
- // 鎻愪氦妗f淇--鏂板
- submitForm2() {
- if (!this.formData2.deviceName) {
- this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉�')
- return
- }
- if (!this.formData2.enDeviceName) {
- this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉癊N')
- return
- }
- if (!this.formData2.specificationModel) {
- this.$message.error('鏈緭鍏ヨ鏍煎瀷鍙�')
- return
- }
- if (!this.formData2.managementNumber) {
- this.$message.error('鏈緭鍏ョ鐞嗙紪鍙�')
- return
- }
- if (!this.formData2.activationDate) {
- this.$message.error('鏈緭鍏ユ牎鍑嗘湁鏁堟湡')
- return
- }
- if (!this.formData2.deviceStatus) {
- this.$message.error('鏈�夋嫨褰撳墠鐘舵��')
- return
- }
- if (!this.formData2.calibrationDate) {
- this.$message.error('杈撳叆鏍″噯鍛ㄦ湡锛堟湀锛�')
- return
- }
- const formData = this.HaveJson(this.formData2)
- formData.insProductIds = formData.insProductIds ? formData.insProductIds.join() : ''
- if (formData.authorizedPerson.length === 0) {
- formData.authorizedPerson = ''
- } else {
- formData.authorizedPerson = JSON.stringify(formData.authorizedPerson)
- }
- this.upLoad2 = true;
- addDeviceParameter(formData).then(res => {
- this.$message.success('鎻愪氦鎴愬姛')
- this.upLoad2 = false
- this.refreshTable('page')
- this.dialogVisible2 = false
- this.formData2 = {
- imageUpload: '',
- imageName: '',
- authorizedPerson: []
- }
- }).catch(e => {
- this.$message.error('鎻愪氦澶辫触')
- this.dialogVisible2 = false
- this.upLoad2 = false
- })
- },
- handleConfig(row) {
- let list = []
- if (row.insProductItem) {
- list = row.insProductItem.split(';')
- }
- let list2 = []
- list.map((item) => {
- const obj = Object.assign({
- deviceId: row.id,
- insProductItem: item,
- })
- list2.push(obj)
- })
- this.tableList = list2
- this.deviceId = row.id
- this.$nextTick(() => {
- this.showData = true
- })
- },
- closeDataVue() {
- this.clickSidebar(this.clickNodeVal)
- this.showData = false
- },
- submitForm3() {
- if (!this.configForm.ip) {
- this.$message.error('璇峰~鍐橧P');
- return
- }
- if (!this.configForm.collectUrl) {
- this.$message.error('璇峰~鍐欓噰闆嗗湴鍧�');
- return
- }
- if (!this.configForm.storageUrl) {
- this.$message.error('璇峰~鍐欏偍瀛樺湴鍧�');
- return
- }
- if (!this.configForm.refer) {
- this.$message.error('璇峰~鍐欏弬鐓�');
- return
- }
- if (!this.configForm.x) {
- this.$message.error('璇峰~鍐橷');
- return
- }
- if (!this.configForm.y) {
- this.$message.error('璇峰~鍐橸');
- return
- }
+ props: {
+ clickNodeVal: {
+ type: Object,
+ default: () => {
+ return {};
+ },
+ },
+ },
+ components: {
+ limsTable,
+ dataAcquisitionConfig,
+ },
+ data() {
+ return {
+ dateFormat: "yyyy-MM-dd",
+ deviceId: "",
+ fileTypeOptions: [
+ { label: "csv", value: ".csv" },
+ { label: "db", value: ".db" },
+ { label: "mdb", value: ".mdb" },
+ { label: "word", value: ".docx" },
+ { label: "excel", value: ".xlsx" },
+ { label: "txt", value: ".txt" },
+ { label: "png", value: ".png" },
+ ],
+ //鏄惁鏄。妗堜慨璁� true涓嶆槸 false鏄�
+ isUp: true,
+ formData: {
+ authorizedPerson: [],
+ },
+ formData2: {
+ imageUpload: "",
+ imageName: "",
+ deviceStatus: "",
+ authorizedPerson: [],
+ },
+ value: "",
+ props: { multiple: true, emitPath: false, value: "id", label: "name" },
+ options: [],
+ labelPosition: "right",
+ dialogVisible: false,
+ dialogVisible2: false,
+ addPower: false,
+ showData: false, // 鏁伴噰閰嶇疆椤甸潰
+ tableList: [],
+ addDia: true,
+ addPower: true,
+ //璁惧绫诲瀷鍒楄〃
+ equipmentList: [],
+ // 璐熻矗浜哄垪琛�
+ responsiblePersonList: [],
+ // 鎺堟潈浜哄垪琛�
+ authorizerList: [],
+ // 褰撳墠鐘舵�佸垪琛�
+ deviceStatusList: [],
+ // 鎵�灞為儴闂�
+ subordinateDepartmentsList: [],
+ upLoad: false,
+ upLoad2: false,
+ dialogVisible3: false,
+ upLoad3: false,
+ configForm: {},
+ laboratoryNameIsNull: false,
+ queryParams: {},
+ tableData: [],
+ column: [
+ {
+ label: "璁惧鍚嶇О",
+ prop: "deviceName",
+ dataType: "link",
+ linkEvent: { method: "selectAllByOne", vueComponent: this },
+ },
+ { label: "璁惧鍚嶇ОEN", prop: "enDeviceName" },
+ {
+ label: "瑙勬牸鍨嬪彿",
+ prop: "specificationModel",
+ },
+ { label: "鐢熶骇鍘傚", prop: "manufacturer" },
+ { label: "鍑哄巶缂栧彿", prop: "factoryNo" },
+ { label: "绠$悊缂栧彿", prop: "managementNumber" },
+ { label: "鎶�鏈寚鏍�", prop: "technicalIndicators" },
+ { label: "璐疆鏃ユ湡", prop: "acquisitionDate" },
+ { label: "鍚敤鏃ユ湡", prop: "activationDate" },
+ { label: "绠$悊浜�", prop: "equipmentManagerUser" },
+ { label: "瀛樻斁鐐�", prop: "storagePoint" },
+ { label: "鎵�灞為儴闂�", prop: "laboratoryName" },
+ { label: "妫�楠岄」鐩�", prop: "insProductItem" },
+ { label: "鏍″噯鏈嶅姟鏈烘瀯", prop: "calibrationServices" },
+ { label: "鏈�杩戞牎鍑嗘棩鏈�", prop: "lastCalibrationDateTwo" },
+ { label: "鏈�杩戞牳鏌ユ棩鏈�", prop: "lastCalibrationDate" },
+ { label: "涓嬫鏍″噯鏃ユ湡", prop: "nextCalibrationDateTwo" },
+ { label: "涓嬫鏍告煡鏃ユ湡", prop: "nextCalibrationDate" },
+ {
+ label: "璁惧鍒嗙被",
+ prop: "largeCategory",
+ dataType: "tag",
+ formatData: (params) => {
+ return this.equipmentList.find((m) => m.value == params).label;
+ },
+ formatType: (params) => {
+ return this.equipmentList.find((m) => m.value == params).type;
+ },
+ },
+ { label: "鍗曚环", prop: "unitPrice" },
+ {
+ label: "璁惧鐘舵��",
+ prop: "deviceStatus",
+ dataType: "tag",
+ formatData: (params) => {
+ return this.deviceStatusList.find((m) => m.value == params).label;
+ },
+ formatType: (params) => {
+ return this.deviceStatusList.find((m) => m.value == params).type;
+ },
+ },
+ { label: "鏍″噯鍛ㄦ湡(鏈�)", prop: "calibrationDate" },
+ {
+ dataType: "action",
+ fixed: "right",
+ label: "鎿嶄綔",
+ operation: [
+ {
+ name: "妗f淇",
+ type: "text",
+ clickFun: (row) => {
+ this.isUpdate(row);
+ },
+ },
+ {
+ name: "鏁伴噰閰嶇疆",
+ type: "text",
+ clickFun: (row) => {
+ this.handleConfig(row);
+ },
+ disabled: (row) => {
+ return row.insProductItem == null || row.insProductItem === "";
+ },
+ },
+ {
+ name: "鍒犻櫎",
+ type: "text",
+ clickFun: (row) => {
+ this.handleDelete(row);
+ },
+ },
+ ],
+ },
+ ],
+ page: {
+ total: 0,
+ size: 10,
+ current: 0,
+ },
+ tableLoading: false,
+ };
+ },
+ computed: {
+ action() {
+ return this.javaApi + "/deviceScope/uploadFile";
+ },
+ },
+ mounted() {
+ this.selectEnumByCategory();
+ this.selectDevicePrincipal();
+ this.obtainItemParameterList();
+ this.getInsProductIds();
+ // 鍒濆鍖�
+ this.clickSidebar(this.clickNodeVal);
+ },
+ methods: {
+ //鍒嗙被
+ handleNotification(cate) {
+ this.queryParams.largeCategory = cate;
+ },
+ obtainItemParameterList() {
+ obtainItemParameterList().then((res) => {
+ let data = [];
+ res.data.forEach((a) => {
+ data.push({
+ label: a.laboratoryName,
+ value: a.id,
+ });
+ });
+ this.subordinateDepartmentsList = data;
+ });
+ },
+ getList() {
+ this.tableLoading = true;
+ let param = {
+ laboratoryNameIsNull: this.laboratoryNameIsNull,
+ ...this.queryParams,
+ ...this.page,
+ };
+ delete param.total;
+ getDeviceParameter({ ...param })
+ .then((res) => {
+ this.tableLoading = false;
+ if (res.code === 200) {
+ this.tableData = res.data.records;
+ this.page.total = res.data.total;
+ }
+ })
+ .catch((err) => {
+ this.tableLoading = false;
+ });
+ },
+ pagination({ page, limit }) {
+ this.page.current = page;
+ this.page.size = limit;
+ this.getList();
+ },
+ refresh() {
+ this.queryParams = {};
+ this.page.current = 1;
+ this.getList();
+ },
+ refreshTable() {
+ this.page.current = 1;
+ this.getList();
+ },
+ // 瀵煎嚭
+ handleDownOne() {
+ this.outLoading = true;
+ exportEquipmentDetails().then((res) => {
+ this.outLoading = false;
+ const blob = new Blob([res], { type: "application/octet-stream" });
+ this.$download.saveAs(blob, "璁惧浠櫒涓�瑙堣〃.doc");
+ });
+ },
+ // 鑾峰彇瀛楀吀
+ selectEnumByCategory() {
+ // 璁惧鐘舵��
+ this.getDicts("device_status").then((response) => {
+ this.deviceStatusList = this.dictToValue(response.data);
+ });
+ // 璁惧鍒嗙被
+ this.getDicts("device_type").then((response) => {
+ this.equipmentList = this.dictToValue(response.data);
+ });
+ },
+ // 鑾峰彇璐熻矗浜哄垪琛�
+ selectDevicePrincipal() {
+ selectUserCondition().then((res) => {
+ let data = [];
+ res.data.forEach((a) => {
+ data.push({
+ label: a.name,
+ value: a.id,
+ });
+ });
+ this.responsiblePersonList = data;
+ this.authorizerList = data;
+ });
+ },
+ getInsProductIds() {
+ getInsProduction().then((res) => {
+ this.options = res.data.map((m, i) => {
+ m.id = m.name;
+ let children = m.children.map((n) => {
+ n.label = n.name;
+ n.value = n.id;
+ return n;
+ });
+ return m;
+ });
+ this.options.forEach((item) => {
+ if (item.children.length == 0) {
+ item.children = null;
+ } else {
+ item.children.forEach((m) => {
+ if (m.children.length == 0) {
+ m.children = null;
+ } else {
+ m.children.forEach((n) => {
+ if (n.children && n.children.length == 0) {
+ n.children = null;
+ }
+ });
+ }
+ });
+ }
+ });
+ });
+ },
+ handleClose() {
+ this.formData = {
+ authorizedPerson: [],
+ };
+ this.formData2 = {
+ imageUpload: "",
+ imageName: "",
+ authorizedPerson: [],
+ };
+ this.dialogVisible = false;
+ this.upLoad = false;
+ },
+ handleClose2() {
+ this.formData = {
+ authorizedPerson: [],
+ };
+ this.formData2 = {
+ imageUpload: "",
+ imageName: "",
+ authorizedPerson: [],
+ };
+ this.dialogVisible2 = false;
+ this.upLoad = false;
+ },
+ selectAllByOne(row) {
+ this.isUp = true;
+ //鎵撳紑寮规
+ this.dialogVisible = true;
+ //row = 鐐瑰嚮瀵瑰簲琛屽��
+ //澶嶅埗缁檉ormData
+ this.formData = this.HaveJson(row);
+ console.log(row.insProductIds + "valll");
+ this.formData.insProductIds = row.insProductIds
+ ? row.insProductIds.split(",")
+ : [];
+ },
+ isUpdate(row) {
+ //淇敼 isUp 涓烘。妗堜慨鏀�
+ this.isUp = false;
+ //鎵撳紑寮规
+ this.dialogVisible = true;
+ //row = 鐐瑰嚮瀵瑰簲琛屽�间竴琛屽��
+ //澶嶅埗缁檉ormData
+ this.formData = this.HaveJson(row);
+ if (typeof row.insProductIds === "number") {
+ row.insProductIds = row.insProductIds + "";
+ }
+ this.formData.deviceStatus = this.formData.deviceStatus + "";
+ this.formData.insProductIds = row.insProductIds
+ ? row.insProductIds.split(",")
+ : [];
+ // 灏嗘椂闂存牸寮忎负yyyy-MM-dd 杩涜杞崲
+ const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
+ Object.keys(this.formData).forEach((key) => {
+ if (dateRegex.test(this.formData[key])) {
+ this.formData[key] = `${this.formData[key]} 00:00:00`;
+ }
+ });
+ },
+ beforeUpload(file) {
+ if (file.size > 1024 * 1024 * 10) {
+ this.$message.error("涓婁紶鏂囦欢涓嶈秴杩�10M");
+ this.$refs.upload.clearFiles();
+ return false;
+ } else {
+ return true;
+ }
+ },
+ onError(err, file, fileList) {
+ this.$message.error("涓婁紶澶辫触");
+ this.$refs.upload.clearFiles();
+ },
+ // 涓婁紶鍥剧墖鎴愬姛
+ handleSuccessUpImg(response) {
+ if (response.code == 200) {
+ this.formData.imageUpload = response.data.url;
+ this.formData.imageName = response.data.name;
+ }
+ },
+ handleSuccessUpImg2(response) {
+ if (response.code == 200) {
+ this.$nextTick(() => {
+ this.formData.imageUpload = response.data.url;
+ this.formData.imageName = response.data.name;
+ this.formData2.imageUpload = response.data.url;
+ this.formData2.imageName = response.data.name;
+ });
+ }
+ },
+ submitForm() {
+ if (!this.formData.deviceName) {
+ this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉�");
+ return;
+ }
+ if (!this.formData.enDeviceName) {
+ this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉癊N");
+ return;
+ }
+ if (!this.formData.specificationModel) {
+ this.$message.error("鏈緭鍏ヨ鏍煎瀷鍙�");
+ return;
+ }
+ if (!this.formData.managementNumber) {
+ this.$message.error("鏈緭鍏ョ鐞嗙紪鍙�");
+ return;
+ }
+ if (!this.formData.activationDate) {
+ this.$message.error("鏈緭鍏ユ牎鍑嗘湁鏁堟湡");
+ return;
+ }
+ if (!this.formData.subordinateDepartmentsId) {
+ this.$message.error("鏈�夋嫨鎵�灞為儴闂�");
+ return;
+ }
+ if (
+ this.formData.deviceStatus === "" ||
+ this.formData.deviceStatus === null
+ ) {
+ this.$message.error("鏈�夋嫨褰撳墠鐘舵��");
+ return;
+ }
+ if (!this.formData.calibrationDate) {
+ this.$message.error("鏈緭鍏ユ牎鍑嗗懆鏈燂紙鏈堬級");
+ return;
+ }
+ delete this.formData.createTime;
+ delete this.formData.updateTime;
+ delete this.formData.createUser;
+ delete this.formData.updateUser;
+ const formData = this.HaveJson(this.formData);
+ formData.insProductIds = formData.insProductIds
+ ? formData.insProductIds.join()
+ : "";
+ if (formData.authorizedPerson.length === 0) {
+ formData.authorizedPerson = "";
+ } else {
+ formData.authorizedPerson = JSON.stringify(formData.authorizedPerson);
+ }
+ this.upLoad = true;
+ upDeviceParameter(formData)
+ .then((res) => {
+ this.$message.success("淇敼鎴愬姛");
+ this.upLoad = false;
+ this.refreshTable("page");
+ this.dialogVisible = false;
+ })
+ .catch((e) => {
+ this.$message.error("淇敼澶辫触");
+ this.dialogVisible = false;
+ this.upLoad = false;
+ });
+ },
+ // 鎻愪氦妗f淇--鏂板
+ submitForm2() {
+ if (!this.formData2.deviceName) {
+ this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉�");
+ return;
+ }
+ if (!this.formData2.enDeviceName) {
+ this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉癊N");
+ return;
+ }
+ if (!this.formData2.specificationModel) {
+ this.$message.error("鏈緭鍏ヨ鏍煎瀷鍙�");
+ return;
+ }
+ if (!this.formData2.managementNumber) {
+ this.$message.error("鏈緭鍏ョ鐞嗙紪鍙�");
+ return;
+ }
+ if (!this.formData2.activationDate) {
+ this.$message.error("鏈緭鍏ユ牎鍑嗘湁鏁堟湡");
+ return;
+ }
+ if (!this.formData2.deviceStatus) {
+ this.$message.error("鏈�夋嫨褰撳墠鐘舵��");
+ return;
+ }
+ if (!this.formData2.calibrationDate) {
+ this.$message.error("杈撳叆鏍″噯鍛ㄦ湡锛堟湀锛�");
+ return;
+ }
+ const formData = this.HaveJson(this.formData2);
+ formData.insProductIds = formData.insProductIds
+ ? formData.insProductIds.join()
+ : "";
+ if (formData.authorizedPerson.length === 0) {
+ formData.authorizedPerson = "";
+ } else {
+ formData.authorizedPerson = JSON.stringify(formData.authorizedPerson);
+ }
+ this.upLoad2 = true;
+ addDeviceParameter(formData)
+ .then((res) => {
+ this.$message.success("鎻愪氦鎴愬姛");
+ this.upLoad2 = false;
+ this.refreshTable("page");
+ this.dialogVisible2 = false;
+ this.formData2 = {
+ imageUpload: "",
+ imageName: "",
+ authorizedPerson: [],
+ };
+ })
+ .catch((e) => {
+ this.$message.error("鎻愪氦澶辫触");
+ this.dialogVisible2 = false;
+ this.upLoad2 = false;
+ });
+ },
+ handleConfig(row) {
+ let list = [];
+ if (row.insProductItem) {
+ list = row.insProductItem.split(";");
+ }
+ let list2 = [];
+ list.map((item) => {
+ const obj = Object.assign({
+ deviceId: row.id,
+ insProductItem: item,
+ });
+ list2.push(obj);
+ });
+ this.tableList = list2;
+ this.deviceId = row.id;
+ this.$nextTick(() => {
+ this.showData = true;
+ });
+ },
+ closeDataVue() {
+ this.clickSidebar(this.clickNodeVal);
+ this.showData = false;
+ },
+ submitForm3() {
+ if (!this.configForm.ip) {
+ this.$message.error("璇峰~鍐橧P");
+ return;
+ }
+ if (!this.configForm.collectUrl) {
+ this.$message.error("璇峰~鍐欓噰闆嗗湴鍧�");
+ return;
+ }
+ if (!this.configForm.storageUrl) {
+ this.$message.error("璇峰~鍐欏偍瀛樺湴鍧�");
+ return;
+ }
+ if (!this.configForm.refer) {
+ this.$message.error("璇峰~鍐欏弬鐓�");
+ return;
+ }
+ if (!this.configForm.x) {
+ this.$message.error("璇峰~鍐橷");
+ return;
+ }
+ if (!this.configForm.y) {
+ this.$message.error("璇峰~鍐橸");
+ return;
+ }
- this.upLoad3 = true
- numberCollect(this.configForm).then(res => {
- this.upLoad3 = false
- this.$message.success('鎿嶄綔鎴愬姛')
- this.refreshTable('page')
- this.dialogVisible3 = false
- }).catch(e => {
- this.$message.error('鎿嶄綔澶辫触')
- this.dialogVisible3 = false
- this.upLoad3 = false
- })
- },
- // 鐐瑰嚮渚ц竟鏍忓埛鏂�
- clickSidebar(clickNodeVal) {
- this.laboratoryNameIsNull = false
- // 鏄惁瀛樺湪value锛屽瓨鍦╲alue浠h〃涓轰笁绾�
- if (!clickNodeVal.value) {
- this.list = [];
- this.queryParams.laboratoryName = null
- this.queryParams.storagePoint = null
- // 绛変簬1浠h〃涓烘爲鐨勪竴绾э紝label涓洪儴闂�
- if (clickNodeVal.label == '鍏朵粬') {
- this.laboratoryNameIsNull = true
- this.refreshTable('page')
- return
- }
- if (clickNodeVal.level == 1) {
- this.queryParams.laboratoryName = clickNodeVal.label
- // 绛変簬浜岀骇銆俵abel涓哄瓨鍌ㄥ湴鐐�
- } else if (clickNodeVal.level == 2) {
- // 鍏朵粬琛ㄧず娌℃湁閰嶇疆瀹為獙瀹わ紝鍙厤缃簡鍦扮偣
- if (clickNodeVal.parent.label == '鍏朵粬') {
- this.laboratoryNameIsNull = true
- } else {
- this.queryParams.laboratoryName = clickNodeVal.parent.label
- }
- this.queryParams.storagePoint = clickNodeVal.label
- }
- this.refreshTable('page')
- }
- },
- handleDelete(row) {
- this.$confirm("鏄惁鍒犻櫎璇ユ潯鏁版嵁?", "鎻愮ず", {
- confirmButtonText: "纭畾",
- cancelButtonText: "鍙栨秷",
- type: "warning",
- })
- .then(() => {
- delDeviceParameter({ id: row.id }).then((res) => {
- this.$message.success("鍒犻櫎鎴愬姛");
- this.refresh();
- });
- })
- .catch(() => { });
- },
- },
- watch: {
- // 鐩戝惉鐐瑰嚮el-tree鐨勬暟鎹紝杩涜鏁版嵁鍒锋柊
- clickNodeVal(newVal) {
- this.clickSidebar(newVal)
- }
- }
-}
+ this.upLoad3 = true;
+ numberCollect(this.configForm)
+ .then((res) => {
+ this.upLoad3 = false;
+ this.$message.success("鎿嶄綔鎴愬姛");
+ this.refreshTable("page");
+ this.dialogVisible3 = false;
+ })
+ .catch((e) => {
+ this.$message.error("鎿嶄綔澶辫触");
+ this.dialogVisible3 = false;
+ this.upLoad3 = false;
+ });
+ },
+ // 鐐瑰嚮渚ц竟鏍忓埛鏂�
+ clickSidebar(clickNodeVal) {
+ this.laboratoryNameIsNull = false;
+ // 鏄惁瀛樺湪value锛屽瓨鍦╲alue浠h〃涓轰笁绾�
+ if (!clickNodeVal.value) {
+ this.list = [];
+ this.queryParams.laboratoryName = null;
+ this.queryParams.storagePoint = null;
+ // 绛変簬1浠h〃涓烘爲鐨勪竴绾э紝label涓洪儴闂�
+ if (clickNodeVal.label == "鍏朵粬") {
+ this.laboratoryNameIsNull = true;
+ this.refreshTable("page");
+ return;
+ }
+ if (clickNodeVal.level == 1) {
+ this.queryParams.laboratoryName = clickNodeVal.label;
+ // 绛変簬浜岀骇銆俵abel涓哄瓨鍌ㄥ湴鐐�
+ } else if (clickNodeVal.level == 2) {
+ // 鍏朵粬琛ㄧず娌℃湁閰嶇疆瀹為獙瀹わ紝鍙厤缃簡鍦扮偣
+ if (clickNodeVal.parent.label == "鍏朵粬") {
+ this.laboratoryNameIsNull = true;
+ } else {
+ this.queryParams.laboratoryName = clickNodeVal.parent.label;
+ }
+ this.queryParams.storagePoint = clickNodeVal.label;
+ }
+ this.refreshTable("page");
+ }
+ },
+ handleDelete(row) {
+ this.$confirm("鏄惁鍒犻櫎璇ユ潯鏁版嵁?", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning",
+ })
+ .then(() => {
+ delDeviceParameter({ id: row.id }).then((res) => {
+ this.$message.success("鍒犻櫎鎴愬姛");
+ this.refresh();
+ });
+ })
+ .catch(() => {});
+ },
+ },
+ watch: {
+ // 鐩戝惉鐐瑰嚮el-tree鐨勬暟鎹紝杩涜鏁版嵁鍒锋柊
+ clickNodeVal(newVal) {
+ this.clickSidebar(newVal);
+ },
+ },
+};
</script>
<style scoped>
.role_manage {
- width: 100%;
- height: 100%;
+ width: 100%;
+ height: 100%;
}
.title {
- line-height: 15px;
+ line-height: 15px;
}
.search {
- display: flex;
- align-items: center;
- justify-content: space-between;
- margin-top: 10px;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-top: 10px;
}
.search_thing {
- width: 14em;
- display: flex;
- align-items: center;
+ width: 14em;
+ display: flex;
+ align-items: center;
}
.search_label {
- width: 80px;
- font-size: 14px;
- text-align: right;
+ width: 80px;
+ font-size: 14px;
+ text-align: right;
}
.search_input {
- width: calc(100% - 80px);
+ width: calc(100% - 80px);
}
.table {
- margin-top: 12px;
- background-color: #fff;
- height: calc(100vh - 17em);
+ margin-top: 12px;
+ background-color: #fff;
+ height: calc(100vh - 17em);
}
.el-form-item {
- margin-bottom: 16px;
+ margin-bottom: 16px;
}
.picName {
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- word-break: break-all;
- width: 120px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ word-break: break-all;
+ width: 120px;
}
</style>
--
Gitblit v1.9.3