From 5702e02e6c31fd972d7a00042cce8ca4c4777166 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期四, 14 九月 2023 13:01:42 +0800
Subject: [PATCH] modified: src/App.vue modified: src/components/view/standard-table/material.vue modified: src/components/view/standard-table/target.vue modified: src/components/view/standard-table/technology.vue modified: src/components/view/standard.vue
---
src/components/view/laboratoryManagement.vue | 1003 +++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 812 insertions(+), 191 deletions(-)
diff --git a/src/components/view/laboratoryManagement.vue b/src/components/view/laboratoryManagement.vue
index 80446a7..38548d3 100644
--- a/src/components/view/laboratoryManagement.vue
+++ b/src/components/view/laboratoryManagement.vue
@@ -1,140 +1,255 @@
<template>
- <div>
+ <div class="laboratoryMangement">
<el-row>
- <el-col :span="12" class="top_left_name">瀹為獙瀹ょ鐞�</el-col>
- <el-col :span="12" style="text-align: right;">
- <el-button @click="testItem()" type="primary" size="mini" icon="el-icon-plus" style="background: #004EA2; ">鏂板浠櫒璁惧</el-button>
+ <el-col :span="12" class="top_left_name">璁惧缁存姢</el-col>
+ <el-col :span="12" style="text-align: right;" class="title">
+ <el-button
+ @click="testItem()"
+ type="primary"
+ size="mini"
+ icon="el-icon-plus"
+ style="background: #004EA2; "
+ >鏂板浠櫒璁惧</el-button
+ >
<el-dialog
title="鏂板浠櫒璁惧"
:visible.sync="dialogVisible"
width="750px"
- :before-close="handleClose">
- <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="130px" class="demo-ruleForm">
+ :before-close="handleClose"
+ >
+ <el-form
+ :model="ruleForm"
+ :rules="rules"
+ ref="ruleForm"
+ label-width="130px"
+ class="demo-ruleForm"
+ >
<el-row>
+ <el-col :span="12">
+ <el-form-item label="璁惧鍚嶇О" prop="name">
+ <el-input
+ placeholder="璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�"
+ style="width: 206px"
+ clearable
+ v-model="ruleForm.name"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="璁惧鐢ㄩ��" prop="type">
+ <el-select
+ v-model="ruleForm.type"
+ @change="selectinstall"
+ placeholder="璇烽�夋嫨璁惧鐢ㄩ��"
+ >
+ <el-option label="鐢熶骇璁惧" value="1"></el-option>
+ <el-option label="妫�娴嬭澶�" value="2"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="璁惧缁�" prop="name">
+ <el-select
+ v-model="ruleForm.equr"
+ placeholder="璇烽�夋嫨璁惧缁�"
+ >
+ <el-option
+ v-for="list in equaip"
+ :key="list"
+ :label="list"
+ :value="list"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
<el-col :span="12">
<el-form-item label="浠櫒璁惧缂栧彿" prop="name">
- <el-input placeholder="璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�" style="width: 206px" clearable v-model="ruleForm.name"></el-input>
+ <el-input
+ placeholder="璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�"
+ style="width: 206px"
+ clearable
+ v-model="ruleForm.code"
+ ></el-input>
</el-form-item>
</el-col>
+ </el-row>
+ <el-row>
<el-col :span="12">
- <el-form-item label="淇濈浜�" prop="region">
- <el-select v-model="ruleForm.region" placeholder="璇烽�夋嫨淇濈浜�">
- <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
- <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+ <el-form-item label="淇濈浜�" prop="keeper">
+ <el-select
+ v-model="ruleForm.keeper"
+ placeholder="璇烽�夋嫨淇濈浜�"
+ >
+ <el-option
+ v-for="list in keeperList"
+ :key="list.index"
+ :label="list.name"
+ :value="list.id"
+ >
+ </el-option>
</el-select>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="璁¢噺鎴嚦鏈夋晥鏈�" prop="endMeasure">
+ <el-date-picker
+ style="width: 206px"
+ type="date"
+ placeholder="璇烽�夋嫨璁¢噺鎴嚦鏈夋晥鏈�"
+ v-model="ruleForm.endMeasure"
+ :picker-options="pickerOptions"
+ ></el-date-picker>
+ </el-form-item>
+ </el-col>
</el-row>
<el-row>
<el-col :span="12">
- <el-form-item label="璁¢噺鎴嚦鏈夋晥鏈�" required>
- <el-form-item prop="date1">
- <el-date-picker style="width: 206px" type="date" placeholder="璇烽�夋嫨璁¢噺鎴嚦鏈夋晥鏈�" v-model="ruleForm.date1"></el-date-picker>
- </el-form-item>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="璁惧鐘舵��" prop="region">
- <el-select v-model="ruleForm.region" placeholder="璇烽�夋嫨璁惧鐘舵��">
- <el-option label="1" value="杩愯"></el-option>
- <el-option label="2" value="鎶ュ簾"></el-option>
+ <el-form-item label="璁惧鐘舵��" prop="deviceStatus" required>
+ <el-select
+ v-model="ruleForm.deviceStatus"
+ placeholder="璇烽�夋嫨璁惧鐘舵��"
+ >
+ <el-option
+ label="杩愯"
+ style="color: #66c03b"
+ value="1"
+ ></el-option>
+ <el-option
+ label="鎶ュ簾"
+ style="color: #ac9299"
+ value="2"
+ ></el-option>
+ <el-option
+ label="妫�淇�"
+ style="color: #52d6c0"
+ value="3"
+ ></el-option>
+ <el-option
+ label="鏁呴殰"
+ style="color: #f36b6c"
+ value="4"
+ ></el-option>
+ <el-option
+ label="绌洪棽"
+ style="color: #fcb642"
+ value="5"
+ ></el-option>
</el-select>
</el-form-item>
</el-col>
- </el-row>
- <el-row>
<el-col :span="12">
- <el-form-item label="鍘傚" prop="region">
- <el-input style="width: 206px" placeholder="璇疯緭鍏ュ巶瀹�" clearable v-model="ruleForm.name"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="妫�娴嬮」鐩�" required>
- <el-form-item prop="inspectionList">
- <el-select v-model="ruleForm.rawInsProductId" placeholder="璇烽�夋嫨妫�娴嬮」鐩�">
- <el-option v-for="item in inspectionList"
- :key="item.index"
- :label="item.name"
- :value="item.id">
- </el-option>
- </el-select>
- </el-form-item>
+ <el-form-item label="鍘傚" prop="factory" required>
+ <el-input
+ style="width: 206px"
+ placeholder="璇疯緭鍏ュ巶瀹�"
+ clearable
+ v-model="ruleForm.factory"
+ ></el-input>
</el-form-item>
</el-col>
</el-row>
- <el-row>
+ <!-- <el-row>
<el-col :span="12">
- <el-form-item label="妫�娴嬫牱鍝�" required>
- <el-form-item prop="date1">
- <el-input placeholder="璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�" style="width: 206px" clearable v-model="ruleForm.name"></el-input>
- </el-form-item>
+ <el-form-item label="瑙勬牸鍨嬪彿">
+ <el-input
+ placeholder="瑙勬牸鍨嬪彿"
+ :disabled="true"
+ style="width: 206px"
+ v-model="showCodeNameModel.specifications"
+ >
+ </el-input>
</el-form-item>
</el-col>
- <el-col :span="12">
- <el-form-item label="瑙勬牸鍨嬪彿" prop="region">
- <el-input placeholder="璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�" style="width: 206px" clearable v-model="ruleForm.name"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="妫�娴嬩汉" required>
- <el-input placeholder="璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�" style="width: 206px" clearable v-model="ruleForm.name"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
+ </el-row> -->
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
</span>
</el-dialog>
-
</el-col>
</el-row>
<el-row class="left_row">
- <div :style="`width: ${isCollapse?300:0}px;transition: 1s;`" class="class_sidebar">
- <el-radio-group class="ai-tab-change" style="width: 270px; margin-top: 5px" v-model="radio1">
- <el-radio-button size="small" label="true">
- <div class="el_radio_button_div">鐢熶骇璁惧</div>
- </el-radio-button>
- <el-radio-button size="small" label="false">
- <div class="el_radio_button_div">妫�娴嬭澶�</div>
- </el-radio-button>
+ <div
+ :style="
+ `width: ${isCollapse ? 300 : 0}px;transition: 1s;opacity: ${
+ isCollapse ? 1 : 0
+ };`
+ "
+ class="class_sidebar"
+ >
+ <el-radio-group
+ class="ai-tab-change"
+ style="width: 270px; margin-top: 5px"
+ v-model="equipment"
+ @input="RadioChange"
+ >
+ <el-radio-button label="1">鐢熶骇璁惧</el-radio-button>
+ <el-radio-button label="2">妫�楠岃澶�</el-radio-button>
</el-radio-group>
- <el-input
- v-model="search"
+ <!-- <el-input
class="frame_input"
- :style="`opacity: ${isCollapse?1:0};`"
- suffix-icon="el-icon-search"
+ v-model="search_class"
placeholder="璇疯緭鍏ュ垎绫诲悕绉�"
- size="small" clearable>
- </el-input>
+ size="small"
+ >
+ <i
+ slot="suffix"
+ class="el-icon-search"
+ style="font-size: 23px; padding: 5px 0;cursor:pointer;"
+ @click="handlerDeptList"
+ ></i>
+ </el-input> -->
<el-tree
- :data="list" ref="tree"
- :props="{children: 'children',label: 'label'}"
- node-key="id"
+ :data="towTree"
+ ref="tree"
+ :props="{ children: 'children', label: 'father' }"
+ node-key="father"
default-expand-all
- :filter-node-method="filterNode"
+ highlight-current
+ style="margin-top: 20px;"
@node-click="handleNodeClick"
- highlight-current @node-expand="nodeOpen"
- @node-collapse="nodeClose">
- <div class="custom-tree-node" slot-scope="{ node, data }">
- <span><i :class="`node_i ${data.code != '[4]'?'el-icon-folder-opened':'el-icon-tickets'}`"></i>
- {{data.code}}{{ data.label }}</span>
- <el-button type="text" size="mini" @click.stop="remove(node, data)">
- <i class="el-icon-delete"></i>
- </el-button>
- </div>
+ >
+ <div class="custom-tree-node" slot-scope="{ node, data }">
+ <span
+ ><i
+ :class="
+ `node_i ${
+ data.code != '[4]'
+ ? 'el-icon-folder-opened'
+ : 'el-icon-tickets'
+ }`
+ "
+ ></i>
+ {{ data.father }}</span
+ >
+ <!-- <el-button type="text" size="mini" @click.stop="remove(node, data)">
+ <i class="el-icon-delete"></i>
+ </el-button> -->
+ </div>
</el-tree>
</div>
- <div class="table_div" :style="`width: calc(100vw - ${isCollapse?'475':'170'}px);`">
- <div :title="isCollapse ? '鐐瑰嚮灞曞紑' : '鐐瑰嚮鏀惰捣'" class="box_bgd" @click="isC">
+ <div
+ class="table_div"
+ :style="`width: calc(100vw - ${isCollapse ? '475' : '170'}px);`"
+ >
+ <div
+ :title="isCollapse ? '鐐瑰嚮灞曞紑' : '鐐瑰嚮鏀惰捣'"
+ class="box_bgd"
+ @click="isC"
+ >
<div class="upper_triangle"></div>
<div class="corner">
<!-- 鐐瑰嚮灞曞紑鏀惰捣瀵艰埅鍜屽垏鎹㈠搴斿浘鏍� -->
- <i :class="!isCollapse ? 'el-icon-arrow-left' : 'el-icon-arrow-right'"></i>
+ <i
+ :class="
+ !isCollapse ? 'el-icon-arrow-left' : 'el-icon-arrow-right'
+ "
+ ></i>
</div>
<div class="under_triangle"></div>
</div>
@@ -142,37 +257,133 @@
<div class="table_top_div">
<el-input
class="table_top_input"
- v-model="searchName"
size="small"
+ v-model="codeNameModel"
prefix-icon="el-icon-search"
placeholder="璇疯緭鍏ョ紪鍙�/璁惧鍚嶇О/鍨嬪彿瑙勬牸"
- clearable>
+ clearable
+ >
</el-input>
- <el-button size="mini" @click="()=>{searchName='';selectProductTableData()}"><span>閲� 缃�</span></el-button>
- <el-button size="mini" type="primary" style="background: #004EA2;" @click="selectProductTableData"><span>鏌� 璇�</span></el-button>
- <el-select v-model="tableType" size="small" placeholder="璇烽�夋嫨" class="table_top">
- <el-option :value="0" label="宸ヨ壓鏂囦欢"></el-option>
- <el-option :value="1" label="鎶�鏈寚鏍�"></el-option>
+ <el-button size="mini" @click="reset"><span>閲� 缃�</span></el-button>
+ <el-button
+ size="mini"
+ type="primary"
+ @click="selectSearch"
+ style="background: #004EA2;"
+ ><span>鏌� 璇�</span></el-button
+ >
+ <el-select
+ @change="staueValueChange"
+ v-model="staue_value"
+ size="small"
+ placeholder="璇烽�夋嫨璁惧鐘舵��"
+ class="table_top"
+ >
+ <el-option
+ label="杩愯"
+ style="color: #66c03b"
+ value="1"
+ ></el-option>
+ <el-option
+ label="鎶ュ簾"
+ style="color: #ac9299"
+ value="2"
+ ></el-option>
+ <el-option
+ label="妫�淇�"
+ style="color: #52d6c0"
+ value="3"
+ ></el-option>
+ <el-option
+ label="鏁呴殰"
+ style="color: #f36b6c"
+ value="4"
+ ></el-option>
+ <el-option
+ label="绌洪棽"
+ style="color: #fcb642"
+ value="5"
+ ></el-option>
</el-select>
</div>
<el-table
:data="tableData"
border
height="calc(100vh - 220px)"
- style="padding: 10px;">
+ style="padding: 10px;"
+ >
+ <el-table-column prop="date" label="搴忓彿" width="60">
+ <template v-slot="scope">
+ {{ scope.$index + 1 }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="code" label="浠櫒璁惧缂栧彿" width="125">
+ </el-table-column>
+ <el-table-column prop="name" label="浠櫒璁惧鍚嶇О" width="125">
+ </el-table-column>
+ <el-table-column prop="userName" label="淇濈浜�"> </el-table-column>
<el-table-column
- prop="date"
- label="鏃ユ湡"
- width="180">
+ prop="DATE_FORMAT(end_measure, '%Y-%m-%d')"
+ label="璁¢噺鎴嚦鏈夋晥鏈�"
+ width="147"
+ >
+ </el-table-column>
+ <el-table-column prop="device_status" label="浣跨敤鐘舵��">
+ <template slot-scope="scope">
+ <el-tag
+ v-if="scope.row.device_status == 1"
+ disable-transitions
+ type="success"
+ >杩愯</el-tag
+ >
+ <el-tag
+ v-else-if="scope.row.device_status == 2"
+ disable-transitions
+ type="info"
+ >鎶ュ簾</el-tag
+ >
+ <el-tag
+ v-else-if="scope.row.device_status == 3"
+ style="color: #52d6c0"
+ disable-transitions
+ type="info"
+ >妫�淇�</el-tag
+ >
+ <el-tag
+ v-else-if="scope.row.device_status == 4"
+ disable-transitions
+ type="danger"
+ >鏁呴殰</el-tag
+ >
+ <el-tag
+ v-else-if="scope.row.device_status == 5"
+ style="color: #fcb642"
+ disable-transitions
+ type="info"
+ >绌洪棽</el-tag
+ >
+ </template>
</el-table-column>
<el-table-column
- prop="name"
- label="濮撳悕"
- width="180">
+ prop="factory"
+ label="鍘傚"
+ :show-overflow-tooltip="true"
+ >
</el-table-column>
- <el-table-column
- prop="address"
- label="鍦板潃">
+ <!-- <el-table-column prop="inspectProject" label="妫�娴嬮」鐩�">
+ </el-table-column>
+ <el-table-column prop="testSample" label="妫�楠屾牱鍝�">
+ </el-table-column>
+ <el-table-column prop="user_name" label="妫�娴嬩汉"> </el-table-column> -->
+ <el-table-column prop="name" label="鎿嶄綔">
+ <template v-slot="scope">
+ <el-button
+ @click="handleClick(scope.row)"
+ type="text"
+ size="small"
+ >鍒犻櫎</el-button
+ >
+ </template>
</el-table-column>
</el-table>
</div>
@@ -186,113 +397,495 @@
name: "LaboratoryManagement",
data() {
return {
+
+ value: "",
dialogVisible: false,
+ checkTreeNode:{},
isCollapse: true, //榛樿涓哄睍寮�
- radio1: 'true',
- tableData: [],
+ radio1: "true", // 鍒嗙被鍒囨崲
+ tableData: [], // 涓婚〉琛ㄦ牸鏁版嵁
inspectionList: [], //妫�楠岄」鐩笅鎷夋鍒楄〃
+ showCodeNameModel: {}, // 鏂板浠櫒灞曠ず绂佹妗�
+ keeperList: [], // 鏂板璁惧淇濈浜轰笅鎷夋
+ parentClassificationList: [], // 鏂板璁惧鐖剁骇鍒嗙被涓嬫媺妗�
+ search_class: "", // 鍒嗙被鎼滅储妗嗗唴瀹�
+ codeNameModel: "", // 缂栫爜鍚嶇О鍨嬪彿妯$硦鏌ヨ
+ staue_value: "", // 涓婚〉琛ㄦ牸涓婃柟鐨勭姸鎬侀�夋嫨
// BOM鏍戞暟鎹粨鏋�
- list: [],
+ towTree: [],
+ equipment: '1',
+ equaip:'',
ruleForm: {
- code: '',
- deviceStatus: '',
- endMeasure: '',
- factory: '',
- keeper: '',
- name: '',
- rawInsProductId: '',
- type: ''
+ // 鏂板浠櫒琛ㄥ崟
+ code: "",
+ father: "",
+ deviceStatus: "",
+ endMeasure: "",
+ factory: "",
+ keeper: "",
+ name: "",
+ rawInsProductId: "",
+ type: "",
+ // treedata:{
+ // father:'璁惧缁�1',
+ // },
+ equr:'',
+
},
+ delete:{},
+ equip:1,
rules: {
name: [
- { required: true, message: '璇疯緭鍏ユ椿鍔ㄥ悕绉�', trigger: 'blur' },
- { min: 3, max: 5, message: '闀垮害鍦� 3 鍒� 5 涓瓧绗�', trigger: 'blur' }
+ { required: true, message: "璇疯緭鍏ヤ华鍣ㄨ澶囩紪鍙�", trigger: "blur" },
+ { min: 2, max: 25, message: "闀垮害鍦� 2 鍒� 25 涓瓧绗�", trigger: "blur" }
],
- region: [
- { required: true, message: '璇烽�夋嫨娲诲姩鍖哄煙', trigger: 'change' }
+ keeper: [
+ { required: true, message: "璇烽�夋嫨淇濈浜�", trigger: "change" }
],
- date1: [
- { type: 'date', required: true, message: '璇烽�夋嫨鏃ユ湡', trigger: 'change' }
+ endMeasure: [
+ {
+ type: "date",
+ required: true,
+ message: "璇烽�夋嫨璁¢噺鎴嚦鏈夋晥鏈�",
+ trigger: "change"
+ }
],
- date2: [
- { type: 'date', required: true, message: '璇烽�夋嫨鏃堕棿', trigger: 'change' }
+ deviceStatus: [
+ { required: true, message: "璇烽�夋嫨璁惧鐘舵��", trigger: "change" }
],
- type: [
- { type: 'array', required: true, message: '璇疯嚦灏戦�夋嫨涓�涓椿鍔ㄦ�ц川', trigger: 'change' }
+ factory: [
+ { required: true, message: "璇疯緭鍏ュ巶瀹�", trigger: "blur" },
+ { min: 2, max: 25, message: "闀垮害鍦� 2 鍒� 50 涓瓧绗�", trigger: "blur" }
],
- resource: [
- { required: true, message: '璇烽�夋嫨娲诲姩璧勬簮', trigger: 'change' }
+ rawInsProductId: [
+ { required: true, message: "璇烽�夋嫨妫�娴嬮」鐩�", trigger: "change" }
],
- desc: [
- { required: true, message: '璇峰~鍐欐椿鍔ㄥ舰寮�', trigger: 'blur' }
- ]
+ type: [{ required: true, message: "璇烽�夋嫨璁惧鐢ㄩ��", trigger: "change" }]
+ },
+ pickerOptions: {
+ //绂佺敤褰撳墠鏃ユ湡涔嬪墠鐨勬棩鏈�
+ disabledDate(time) {
+ //Date.now()鏄痡avascript涓殑鍐呯疆鍑芥暟锛屽畠杩斿洖鑷�1970骞�1鏈�1鏃�00:00:00 UTC浠ユ潵缁忚繃鐨勬绉掓暟銆�
+ return time.getTime() < Date.now() - 8.64e7;
+ }
}
- }
+ };
+ },
+ mounted() {
+ // 鍒濆鍖栬皟鐢ㄤ簩绾ф爲
+ this.twoTreeApi();
+ // 鍒濆鍖栬皟鐢ㄨ〃鏍兼暟鎹�
+ // this.tableDataApi();
+ // this.selectDevice()
},
methods: {
+ handleNodeClick(val) {
+ this.checkTreeNode = val
+ console.log(this.checkTreeNode);
+ this.selectDevice()
+ },
+
+ staueValueChange() {
+ this.selectDevice()
+ // this.tableData = [];
+ // let val = 1;
+ // if (this.radio1 === "false") {
+ // val = 2;
+ // }
+ // this.$axios
+ // .get(this.$api.url.tableDeviceList, {
+ // params: { type: val, deviceStatue: this.staue_value }
+ // })
+ // .then(res => {
+ // this.tableData = res.data;
+ // });
+ },
// 鍔ㄦ�佹帶鍒跺睍寮�涓庢敹璧峰拰鍒囨崲瀵瑰簲鍥炬爣
isC() {
this.isCollapse = !this.isCollapse;
},
- submitForm(formName) {
- this.$refs[formName].validate((valid) => {
- if (valid) {
- alert('submit!');
- } else {
- console.log('error submit!!');
- return false;
- }
- });
+ productSelect(e) {
+ let value = e.target.value; // 杈撳叆妗嗗��
+ if (value) {
+ // 浣犺緭鍏ユ墠鏈夎繖涓�� 涓嶄负绌猴紝濡傛灉浣犱笅鎷夋閫夋嫨鐨勮瘽 杩欎釜鍊间负绌�
+ this.value = value;
+ }
},
- resetForm(formName) {
- this.$refs[formName].resetFields();
+ submitForm() {
+ // this.$refs.ruleForm.validate(valid => {
+ // if (valid) {
+ // this.ruleForm.father = this.value;
+ // this.$axios
+ // .post(this.$api.url.addDeviceInstrument, this.ruleForm, {
+ // headers: {
+ // "Content-Type": "application/json"
+ // }
+ // })
+ // .then(res => {
+ // this.keeperList = res.data;
+ // // 鎴愬姛鍏抽棴鏂板寮瑰嚭妗�
+ // this.dialogVisible = false;
+ // });
+ // } else {
+ // console.log("error submit!!");
+ // return false;
+ // }
+ // });
+ this.addApi()
+ this.dialogVisible = false;
},
handleClose(done) {
- this.$confirm('纭鍏抽棴锛�')
+ this.$confirm("纭鍏抽棴锛�")
.then(_ => {
done();
})
.catch(_ => {});
},
testItem() {
- this.dialogVisible = true
- this.$axios.get(this.$api.url.addDeviceInspectDownBox).then(res => {
- this.inspectionList = res.data
+ this.dialogVisible = true;
+ this.$axios.get(this.$api.url.addDeviceKeeper).then(res => {
+ this.keeperList = res.data;
+ });
+ },
+ selectinstall(val) {
+ this.equip = val
+ this.listgroup()
+ },
+ listgroup() {
+ this.$axios.get(this.$api.url.listgroup,{
+ params:{
+ type:this.equip
+ }
+ }).then(res =>{
+ this.equaip = res.data
+ console.log(this.equip);
+ })
+ },
+ RadioChange(val){
+ console.log(val);
+ this.equip = val
+ this.twoTreeApi()
+ },
+ twoTreeApi() {
+ this.$axios.get(this.$api.url.towTree,{
+ params:{
+ type:this.equip,
+ }
+ }).then(res => {
+ // let list = res.data;
+ // list.forEach(i => {
+ // if (i.name === undefined) {
+ // i.name = i.children[0].name;
+ // i.id = i.children[0].id;
+ // i.children = undefined;
+ // }
+ // });
+ this.towTree = res.data;
+ this.$nextTick(() => {
+ this.$refs.tree.setCurrentKey(this.towTree[0].father) // 榛樿閫変腑鑺傜偣绗竴涓�
+ })
+ console.log(this.towTree);
+ let one=this.towTree[0]
+ console.log(one);
+ let name =one.father
+ console.log(name);
+ this.selectDeviceStart(name)
+ });
+ },
+ selectDeviceStart(name,) {//鍙宠竟鏁版嵁
+ this.$axios.get(this.$api.url.selectDevice,{
+ params:{
+ father:name,
+ type:this.equip,
+ deviceStatus:this.staue_value,
+ message:this.codeNameModel,
+ }
+ }).then(res =>{
+ console.log(res);
+ this.tableData = res.data
+ }, {
+ headers: {
+ "Content-Type": "application/json"
+ }
})
- }
+ },
+
+ selectDevice() {//鍙宠竟鏁版嵁
+ this.$axios.get(this.$api.url.selectDevice,{
+ params:{
+ father:this.checkTreeNode.father,
+ type:this.equip,
+ deviceStatus:this.staue_value,
+ message:this.codeNameModel,
+ }
+ }).then(res =>{
+ console.log(res);
+ this.tableData = res.data
+ }, {
+ headers: {
+ "Content-Type": "application/json"
+ }
+ })
+ },
+ addApi() {
+ this.$axios.post(this.$api.url.addApi,{
+ code:this.ruleForm.code,
+ deviceStatus:this.ruleForm.deviceStatus,
+ endMeasure:this.ruleForm.endMeasure,
+ factory:this.ruleForm.factory,
+ father:this.ruleForm.equr,
+ keeper:this.ruleForm.keeper,
+ name:this.ruleForm.name,
+ type:this.ruleForm.type,
+ }, {headers: {"Content-Type": "application/json"}
+ }).then(res =>{
+ this.$message.success('鏂板鎴愬姛')
+ this.ruleForm = {}
+ this.selectDevice()
+ })
+ },
+ // tableDataApi() {
+ // this.$axios.get(this.$api.url.tableDeviceList).then(res => {
+ // this.tableData = res.data;
+ // });
+ // },
+ reset() {
+ // this.tableDataApi();
+ // this.radio1 = "true";
+ // this.codeNameModel = "";
+ // this.staue_value = "";
+ this.staue_value = ""
+ this.codeNameModel = ""
+ this.selectDevice()
+ },
+ handlerDeptList() {
+ this.towTree = [];
+ let val = 1;
+ if (this.radio1 === "false") {
+ val = 2;
+ }
+ this.$axios
+ .get(this.$api.url.towTree, {
+ params: { type: val, search_class: this.search_class }
+ })
+ .then(res => {
+ this.towTree = res.data;
+ });
+ },
+ selectSearch() {
+ this.selectDevice()
+ // this.tableData = [];
+ // if (this.radio1 === "false") {
+ // this.$axios
+ // .get(this.$api.url.tableDeviceList, {
+ // params: { type: 1, codeNameModel: this.codeNameModel }
+ // })
+ // .then(res => {
+ // this.tableData = res.data;
+ // });
+ // } else if (this.radio1 === "true") {
+ // this.$axios
+ // .get(this.$api.url.tableDeviceList, {
+ // params: { type: 2, codeNameModel: this.codeNameModel }
+ // })
+ // .then(res => {
+ // this.tableData = res.data;
+ // });
+ // }
+ },
+ delDeviceById() {
+ this.$axios.post(this.$api.url.delDeviceById,{
+ id:this.delete.id
+ })
+ },
+ handleClick(row) {
+ console.log(row);
+ this.delete = row
+ this.delDeviceById()
+ this.selectDevice()
+ // this.$confirm("姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ヨ澶�, 鏄惁缁х画?", "鎻愮ず", {
+ // confirmButtonText: "纭畾",
+ // cancelButtonText: "鍙栨秷",
+ // type: "warning"
+ // }).then(() => {
+ // this.$axios
+ // .delete(this.$api.url.deleteDevice, { params: { deviceId: row.id } })
+ // .then(res => {
+ // this.$message({
+ // message: res.message,
+ // type: "success"
+ // });
+ // datas.splice(index, 1);
+ // })
+ // .catch(err => {
+ // this.$message({
+ // message: err.message,
+ // type: "warning"
+ // });
+ // });
+ // });
+ },
+ remove(node, data) {
+ this.$confirm("姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ヨ澶�, 鏄惁缁х画?", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning"
+ }).then(() => {
+ console.log(`output->data`, data);
+ let val = 1;
+ if (this.radio1 === "false") {
+ val = 2;
+ }
+ if (data.id === undefined) {
+ console.log(`output->鎵ц鍔沗, "+++++++++++++++");
+ this.$axios
+ .delete(this.$api.url.deleteIdorFather, {
+ params: { deviceFather: data.name, type: val }
+ })
+ .then(res => {
+ if (res.code === 200) {
+ this.$message({
+ message: res.message,
+ type: "success"
+ });
+ this.handlerDeptList();
+ this.selectSearch();
+ } else {
+ this.$message({
+ message: res.message,
+ type: "warning"
+ });
+ }
+ });
+ } else if (data.id !== undefined) {
+ console.log(`output->鎵ц鍔沗, "----------------");
+ this.$axios
+ .delete(this.$api.url.deleteIdorFather, { params: { id: data.id } })
+ .then(res => {
+ if (res.code === 200) {
+ this.$message({
+ message: res.message,
+ type: "success"
+ });
+ this.handlerDeptList();
+ this.selectSearch();
+ } else {
+ this.$message({
+ message: res.message,
+ type: "warning"
+ });
+ }
+ });
+ }
+ });
+ },
+
},
- mounted() {
- },
+
watch: {
- 'ruleForm.rawInsProductId': { //鐩戝惉banner
- handler: function (newVal, oldVal) {
- if (newVal != null && newVal !== ''){
- console.log("1222222222222")
+ "ruleForm.rawInsProductId": {
+ //鐩戝惉ruleForm.rawInsProductId
+ handler: function(newVal, oldVal) {
+ if (newVal != null && newVal !== "") {
+ this.$axios
+ .get(this.$api.url.selectDeviceInspectMessage, {
+ params: { inspectId: newVal }
+ })
+ .then(res => {
+ this.showCodeNameModel = res.data;
+ });
+ }
+ }
+ },
+ // dialogVisible: {
+ // handler: function(newVal, oldVal) {
+ // if (newVal) {
+ // // 鎴愬姛娓呯┖杈撳叆鍐呭
+ // this.ruleForm = {};
+ // this.value = "";
+ // this.showCodeNameModel = {};
+ // this.$refs.ruleForm.resetFields();
+ // }
+ // }
+ // },
+ radio1: {
+ handler: function(newVal, oldVal) {
+ this.towTree = [];
+ this.tableData = [];
+ if (newVal === "true") {
+ this.twoTreeApi();
+ this.tableDataApi();
+ } else if (newVal === "false") {
+ this.$axios
+ .get(this.$api.url.towTree, { params: { type: 2 } })
+ .then(res => {
+ let list = res.data;
+ list.forEach(i => {
+ if (i.name === undefined) {
+ i.name = i.children[0].name;
+ i.id = i.children[0].id;
+ i.children = undefined;
+ }
+ });
+ this.towTree = res.data;
+ });
+ this.$axios
+ .get(this.$api.url.tableDeviceList, { params: { type: 2 } })
+ .then(res => {
+ this.tableData = res.data;
+ });
}
}
}
}
-}
+};
</script>
<style scoped>
-.top_left_name{
+.el-tag.el-tag {
+ border-color: transparent;
+ background-color: transparent;
+}
+.el-tag.el-tag:hover {
+ border-color: transparent;
+ background-color: transparent;
+}
+.el-form-item >>> .el-form-item__error {
+ color: #f56c6c;
+ font-size: 12px;
+ line-height: 1;
+ padding-top: 6px;
+ position: absolute;
+ top: 100%;
+ left: 18px;
+}
+/deep/ .el-icon-arrow-left {
+ display: flex;
+ line-height: 60px !important;
+ justify-content: center;
+}
+/deep/ .el-icon-arrow-right {
+ display: flex;
+ line-height: 60px !important;
+ justify-content: center;
+}
+.top_left_name {
padding-left: 20px;
line-height: 32px;
}
-.left_row{
+.left_row {
height: calc(100vh - 165px);
margin-top: 9px;
}
-.frame_input{
+.frame_input {
width: 90%;
margin: 10px 0;
transition: 1.5s;
}
-.table_top_div{
+.table_top_div {
margin-left: 20px;
padding-top: 15px;
- padding-bottom: 15px
+ padding-bottom: 15px;
}
.el-dialog__footer {
padding: 0px 20px 20px;
@@ -300,26 +893,26 @@
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
-.table_top{
+.table_top {
float: right;
width: 224px;
margin-right: 52px;
}
-.main_table_div{
+.main_table_div {
background-color: #fbfbfd;
height: 100%;
}
-.dialog-footer{
+.dialog-footer {
display: block;
- text-align:center
+ text-align: center;
}
-.table_div{
+.table_div {
padding-left: 5px;
transition: 1s;
float: left;
- position: relative
+ position: relative;
}
-.table_top_input{
+.table_top_input {
width: 20%;
margin-right: 24px;
}
@@ -330,10 +923,18 @@
justify-content: space-between;
font-size: 14px;
padding-right: 8px;
+ width: 250px;
+}
+.el-tree {
+ width: 280px;
+ margin: 0 10px;
+}
+.custom-tree-node span {
+ font-size: 14px !important;
}
.el-icon-delete {
display: none;
- color: #004EA2;
+ color: #004ea2;
}
.custom-tree-node:hover .el-icon-delete {
display: inline;
@@ -342,12 +943,12 @@
color: orange;
}
::v-deep .el-radio-button__orig-radio:checked + .el-radio-button__inner {
- background: #f2f2f2;
- border: 0 !important;
- color: #696969;
- line-height: 14px;
- outline: none;
- box-shadow: none;
+ background: #f2f2f2;
+ border: 0 !important;
+ color: #696969;
+ line-height: 14px;
+ outline: none;
+ box-shadow: none;
}
.class_sidebar {
overflow: hidden;
@@ -365,34 +966,54 @@
top: 40%;
left: -10px;
}
-.corner{
+.corner {
height: 60px;
background: #ebebec;
}
-.upper_triangle{
- width: 0px; /* 瀹介珮璁剧疆涓�0锛屽緢閲嶈锛屽惁鍒欒揪涓嶅埌鏁堟灉 */
+.upper_triangle {
+ width: 0px; /* 瀹介珮璁剧疆涓�0锛屽緢閲嶈锛屽惁鍒欒揪涓嶅埌鏁堟灉 */
height: 0px;
border: 6px solid #ebebec;
border-left-color: transparent;
border-top-color: transparent;
}
-.under_triangle{
- width: 0px; /* 瀹介珮璁剧疆涓�0锛屽緢閲嶈锛屽惁鍒欒揪涓嶅埌鏁堟灉 */
+.under_triangle {
+ width: 0px; /* 瀹介珮璁剧疆涓�0锛屽緢閲嶈锛屽惁鍒欒揪涓嶅埌鏁堟灉 */
height: 0px;
border: 6px solid #ebebec;
border-left-color: transparent;
border-bottom-color: transparent;
}
-.ai-tab-change {
- .el-radio-button__inner {
- border: 1px solid #ececed;
- line-height: 14px;
- }
- .el-radio-button__orig-radio:checked + .el-radio-button__inner {
- background: #fdfdfe;
- border: 1px solid #004da2;
- color: #004da2;
- line-height: 14px;
- }
+.el-radio-button__inner {
+ border: 1px solid #ececed;
+ line-height: 14px;
+}
+.el-radio-button__orig-radio:checked + .el-radio-button__inner {
+ background: #fdfdfe;
+ border: 1px solid #004da2;
+ color: #004da2;
+ line-height: 14px;
}
</style>
+<style>
+ .laboratoryMangement .title *{
+ font-size: 14px;
+ }
+
+ .laboratoryMangement .table_top_div *{
+ font-size: 14px;
+ }
+
+ .laboratoryMangement .title .el-button {
+ height: 32px;
+ border: 1px solid rgba(190, 190, 190, 0.44);
+ box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41);
+ padding: 0 12px;
+ }
+ .laboratoryMangement .table_top_div .el-button {
+ height: 32px;
+ border: 1px solid rgba(190, 190, 190, 0.44);
+ box-shadow: 0px 2px 4px rgba(220, 220, 220, 0.41);
+ padding: 0 12px;
+ }
+</style>
\ No newline at end of file
--
Gitblit v1.9.3