From 0b04b762a7a14bb971928ba036e3f8a21a55a67d Mon Sep 17 00:00:00 2001
From: gaoaoy <1042166043@qq.com>
Date: 星期四, 29 二月 2024 10:54:16 +0800
Subject: [PATCH] 5 实验室管理(场所或设施)

---
 src/components/tool/value-table.vue              |    3 
 static/js/menu.js                                |    8 +-
 src/components/view/a5-laboratory-management.vue |  162 ++++++++++++++++++++++++++++++++++++++++
 src/assets/api/controller.js                     |    8 -
 src/components/view/5capacity-scope.vue          |    2 
 5 files changed, 170 insertions(+), 13 deletions(-)

diff --git a/src/assets/api/controller.js b/src/assets/api/controller.js
index b0bfb32..e0385f8 100644
--- a/src/assets/api/controller.js
+++ b/src/assets/api/controller.js
@@ -5,8 +5,7 @@
 		user,
 		dataReporting,
 		enums,
-		capacityScope,
-		systemLog
+		capacityScope
 	}
 }
 
@@ -67,7 +66,6 @@
 	addEnum: "/enum/addEnum", //娣诲姞鏋氫妇
 	upEnum: "/enum/upEnum", //淇敼鏋氫妇
 	delEnum: "/enum/delEnum", //鍒犻櫎鏋氫妇
-	selectEnumByCategory: "/enum/selectEnumByCategory", //閫氳繃鍒嗙被鏌ヨ鏋氫妇
 }
 
 const capacityScope = {
@@ -79,8 +77,4 @@
 	addTestObject: "/capacityScope/addTestObject", //鏂板妫�娴嬪璞�
 	delTestObject: "/capacityScope/delTestObject", //鍒犻櫎妫�娴嬪璞�
 	upTestObject: "/capacityScope/upTestObject", //淇敼妫�娴嬪璞�
-}
-
-const systemLog = {
-	selectSystemLogList: "/systemLog/selectSystemLogList", //鑾峰彇绯荤粺鏃ュ織鍒楄〃
 }
diff --git a/src/components/tool/value-table.vue b/src/components/tool/value-table.vue
index f9400e7..83f2202 100644
--- a/src/components/tool/value-table.vue
+++ b/src/components/tool/value-table.vue
@@ -461,6 +461,7 @@
 				})
 			},
 			openAddDia(addUrl) {
+				console.log(addUrl);
 				this.addDia = true
 				this.addUrl = addUrl
 				this.upData = {}
@@ -657,4 +658,4 @@
 			}
 		}
 	}
-</script>
\ No newline at end of file
+</script>
diff --git a/src/components/view/5capacity-scope.vue b/src/components/view/5capacity-scope.vue
index 34ed665..0627a9e 100644
--- a/src/components/view/5capacity-scope.vue
+++ b/src/components/view/5capacity-scope.vue
@@ -314,4 +314,4 @@
 			}
 		}
 	}
-</script>
\ No newline at end of file
+</script>
diff --git a/src/components/view/a5-laboratory-management.vue b/src/components/view/a5-laboratory-management.vue
new file mode 100644
index 0000000..d3a92ef
--- /dev/null
+++ b/src/components/view/a5-laboratory-management.vue
@@ -0,0 +1,162 @@
+<style scoped>
+	.title {
+		height: 60px;
+		line-height: 60px;
+	}
+
+	.search {
+		background-color: #fff;
+		height: 80px;
+		display: flex;
+		align-items: center;
+	}
+
+	.search_thing {
+		width: 350px;
+		display: flex;
+		align-items: center;
+	}
+
+	.search_label {
+		width: 110px;
+		font-size: 14px;
+		text-align: right;
+	}
+
+	.search_input {
+		width: calc(100% - 110px);
+	}
+
+	.table {
+		margin-top: 10px;
+		background-color: #fff;
+		width: calc(100% - 40px);
+		height: calc(100% - 60px - 80px - 10px - 40px);
+		padding: 20px;
+	}
+</style>
+
+<template>
+	<div class="role_manage">
+		<div>
+			<el-row class="title">
+				<el-col :span="12" style="padding-left: 20px;">鍦烘墍鎴栬鏂�</el-col>
+				<el-col :span="12" style="text-align: right;">
+					<el-button size="medium" type="primary" @click="openAdd" v-if="addPower">鏂板</el-button>
+				</el-col>
+			</el-row>
+		</div>
+		<div class="search">
+			<div class="search_thing">
+				<div class="search_label">瀹為獙瀹ゅ悕绉帮細</div>
+				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
+						v-model="componentData.entity.laboratoryName" @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="componentData.entity.laboratoryNumber" @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="componentData.entity.head" @keyup.enter.native="refreshTable()"></el-input></div>
+			</div>
+			<div class="search_thing" style="padding-left: 30px;">
+                <el-button size="small" @click="refresh()">閲� 缃�</el-button>
+				<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
+			</div>
+		</div>
+		<div class="table">
+			<ValueTable ref="ValueTable" :url="$api.laboratoryScope.selectItemParameter" :upUrl="$api.laboratoryScope.upParameter" :delUrl="$api.laboratoryScope.delParameter" :componentData="componentData" :key="upIndex"/>
+		</div>
+	</div>
+</template>
+
+<script>
+	import ValueTable from '../tool/value-table.vue'
+	export default {
+		components: {
+			ValueTable
+		},
+		data() {
+			return {
+				componentData: {
+					entity: {
+						laboratoryName: null,
+						laboratoryNumber: null,
+						head: null,
+						orderBy: {
+							field: 'id',
+							order: 'asc'
+						}
+					},
+					isIndex: true,
+					showSelect: false,
+					select: false,
+					do: [{
+						id: 'update',
+						font: '缂栬緫',
+						type: 'text',
+						method: 'doDiy',
+						field:['createUserName']
+					},{
+						id: 'delete',
+						font: '鍒犻櫎',
+						type: 'text',
+						method: 'doDiy'
+					}],
+					tagField: {},
+					selectField: {},
+					requiredAdd:['laboratoryName','laboratoryNumber','head','phoneNumber','address'],
+					requiredUp:['laboratoryName','laboratoryNumber','head','phoneNumber','address']
+				},
+				entityCopy: {},
+				upIndex: 0,
+				addDia: true,
+				addPower: true
+			}
+		},
+		mounted() {
+			this.entityCopy = this.HaveJson(this.componentData.entity)
+			this.getPower()
+		},
+		methods: {
+			refreshTable() {
+				this.$refs['ValueTable'].selectList()
+			},
+			refresh() {
+				this.componentData.entity = this.HaveJson(this.entityCopy)
+				this.upIndex++
+			},
+			openAdd(){
+                this.$refs.ValueTable.openAddDia(this.$api.laboratoryScope.addParameter);
+			},
+			// 鏉冮檺鍒嗛厤
+			getPower(radio) {
+				let power = JSON.parse(sessionStorage.getItem('power'))
+				let up = false
+				let del = false
+				let add = false
+				for (var i = 0; i < power.length; i++) {
+					if(power[i].menuMethod=='upParameter'){
+						up = true
+					}
+					if(power[i].menuMethod=='delParameter'){
+						del = true
+					}
+					if(power[i].menuMethod=='addParameter'){
+						add = true
+					}
+				}
+				if(!del){
+					this.componentData.do.splice(1, 1)
+				}
+				if(!up){
+					this.componentData.do.splice(0, 1)
+				}
+				this.addPower = add
+			}
+		}
+	}
+</script>
\ No newline at end of file
diff --git a/static/js/menu.js b/static/js/menu.js
index 2f4862b..504cb3e 100644
--- a/static/js/menu.js
+++ b/static/js/menu.js
@@ -244,9 +244,9 @@
 		}, {
 			v: "鍦烘墍鎴栬鏂�",
 			i: "font icon-24gl-clipboardList",
-			u: "",
+			u: "a5-laboratory-management",
 			g: "D鍦烘墍鎴栬鏂�",
-			p: ""
+			p: "selectItemParameter"
 		}, {
 			v: "缁勭粐鐩稿叧鏂囦欢",
 			i: "font icon-24gl-clipboardList",
@@ -523,7 +523,7 @@
 			g: "6.6 澶栭儴鎻愪緵鐨勪骇鍝佸拰鏈嶅姟",
 			p: ""
 		}]
-	}, 
+	},
 	{
 		v: "7 杩囩▼瑕佹眰",
 		i: "el-icon-tickets",
@@ -740,4 +740,4 @@
 
 export default {
 	menu: menu
-}
\ No newline at end of file
+}

--
Gitblit v1.9.3