From 710525a91dba02c0877eac75683b7f09e8780c50 Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: 星期四, 14 七月 2022 09:19:45 +0800
Subject: [PATCH] 目标

---
 src/views/facilityManagement/deviceType/component/Dailog.vue      |   64 ++++++++
 src/views/facilityManagement/deviceType/index.vue                 |   96 ++++++++++++
 src/views/facilityManagement/InstrumentationInformation/index.vue |  281 +++++++++++++++++++++++++++++++++++
 3 files changed, 441 insertions(+), 0 deletions(-)

diff --git a/src/views/facilityManagement/InstrumentationInformation/index.vue b/src/views/facilityManagement/InstrumentationInformation/index.vue
new file mode 100644
index 0000000..9d9702b
--- /dev/null
+++ b/src/views/facilityManagement/InstrumentationInformation/index.vue
@@ -0,0 +1,281 @@
+<template>
+	<div>
+		<el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
+			<el-row>
+				<el-col :span="4">
+					<el-form-item>
+						<el-input v-model="ruleForm.pass" placeholder="装置设施名称" />
+					</el-form-item>
+				</el-col>
+				<el-col :span="4">
+					<el-form-item>
+						<el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+						<el-button @click="resetForm(ruleFormRef)">重置</el-button>
+					</el-form-item>
+				</el-col>
+			</el-row>
+		</el-form>
+		<el-row>
+			<el-col :span="4">
+				<div class="tree">
+					<el-input v-model="filterText" style="height: 30px" placeholder="Filter keyword" />
+					<el-tree ref="treeRef" class="filter-tree" :data="data" :props="defaultProps" default-expand-all :filter-node-method="filterNode" />
+				</div>
+			</el-col>
+			<el-col :span="20">
+				<div class="btns">
+					<div>
+						<el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+						<el-button type="warning" plain :icon="EditPen">修改</el-button>
+						<el-button type="danger" :icon="Delete" plain>删除</el-button>
+					</div>
+					<div>
+						<el-button :icon="Upload"></el-button>
+						<el-button :icon="Download"></el-button>
+						<el-button :icon="Refresh"></el-button>
+					</div>
+				</div>
+				<div style="padding-left: 10px">
+					<el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+						<el-table-column type="selection" align="center" width="55" />
+						<el-table-column type="expand">
+							<template #default>
+								<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick" style="margin: 0 5%">
+									<el-tab-pane label="设备保养" name="first">
+										<el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+											<el-table-column property="name" align="center" label="保养情况" sortable />
+											<el-table-column property="name" align="center" label="保养负责人" sortable />
+											<el-table-column property="name" align="center" label="保养日期" sortable />
+											<el-table-column property="name" align="center" label="保养负责人单位" sortable />
+										</el-table>
+									</el-tab-pane>
+									<el-tab-pane label="设备检查" name="second"
+										><el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+											<el-table-column property="name" align="center" label="检查人" sortable />
+											<el-table-column property="name" align="center" label="检查日期" sortable />
+											<el-table-column property="name" align="center" label="检查人部门" sortable />
+											<el-table-column property="name" align="center" label="检查结果" sortable />
+											<el-table-column property="name" align="center" label="检查状态" sortable /> </el-table
+									></el-tab-pane>
+									<el-tab-pane label="设备检测" name="third">
+                                        <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+											<el-table-column property="name" align="center" label="检测人" sortable />
+											<el-table-column property="name" align="center" label="检测日期" sortable />
+											<el-table-column property="name" align="center" label="检测人单位" sortable />
+											<el-table-column property="name" align="center" label="检测内容" sortable />
+											<el-table-column property="name" align="center" label="检测结果" sortable />
+											<el-table-column property="name" align="center" label="检测状态" sortable />
+										</el-table>
+                                    </el-tab-pane>
+									<el-tab-pane label="设备维修" name="fourth">
+										<el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+											<el-table-column property="name" align="center" label="设施异常项" sortable />
+											<el-table-column property="name" align="center" label="维修状态" sortable />
+											<el-table-column property="name" align="center" label="维修情况" sortable />
+											<el-table-column property="name" align="center" label="维修负责人" sortable />
+											<el-table-column property="name" align="center" label="维修负责人单位" sortable />
+											<el-table-column property="name" align="center" label="维修开始日期" sortable />
+											<el-table-column property="name" align="center" label="维修结束日期" sortable />
+										</el-table>
+									</el-tab-pane>
+								</el-tabs>
+							</template>
+						</el-table-column>
+						<el-table-column label="装置设施名称" align="center" sortable>
+							<template #default="scope">{{ scope.row.date }}</template>
+						</el-table-column>
+						<el-table-column property="name" align="center" label="装置设施位号" sortable />
+						<el-table-column property="name" align="center" label="装置设施用途" sortable />
+						<el-table-column property="address" label="装置设施型号" align="center" sortable show-overflow-tooltip />
+						<el-table-column property="address" label="类型/类别外键" align="center" sortable show-overflow-tooltip />
+						<el-table-column property="address" label="设施部位" align="center" sortable show-overflow-tooltip />
+						<el-table-column label="操作" align="center" style="width: 300px">
+							<template #default>
+								<el-button link type="primary" size="default" :icon="View">查看</el-button>
+								<el-button link type="primary" size="default" :icon="EditPen">修改</el-button>
+								<el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+							</template>
+						</el-table-column>
+					</el-table>
+					<div class="pages">
+						<el-pagination
+							v-model:currentPage="currentPage4"
+							v-model:page-size="pageSize4"
+							:page-sizes="[100, 200, 300, 400]"
+							:small="small"
+							:disabled="disabled"
+							:background="background"
+							layout="total, sizes, prev, pager, next, jumper"
+							:total="400"
+							@size-change="handleSizeChange"
+							@current-change="handleCurrentChange"
+						/>
+					</div>
+				</div>
+			</el-col>
+		</el-row>
+	</div>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive, watch } from 'vue';
+import { ElTree, TabsPaneContext } from 'element-plus';
+import { EditPen, Plus, Delete, Download, Refresh, Upload } from '@element-plus/icons-vue';
+interface Tree {
+	id: number;
+	label: string;
+	children?: Tree[];
+}
+export default defineComponent({
+	setup() {
+		const ruleForm = reactive({
+			pass: '',
+			checkPass: '',
+		});
+		const filterText = ref('');
+		const treeRef = ref<InstanceType<typeof ElTree>>();
+
+		const defaultProps = {
+			children: 'children',
+			label: 'label',
+		};
+
+		watch(filterText, (val) => {
+			treeRef.value!.filter(val);
+		});
+
+		const filterNode = (value: string, data: Tree) => {
+			if (!value) return true;
+			return data.label.includes(value);
+		};
+
+		const data: Tree[] = [
+			{
+				id: 1,
+				label: 'Level one 1',
+				children: [
+					{
+						id: 4,
+						label: 'Level two 1-1',
+						children: [
+							{
+								id: 9,
+								label: 'Level three 1-1-1',
+							},
+							{
+								id: 10,
+								label: 'Level three 1-1-2',
+							},
+						],
+					},
+				],
+			},
+			{
+				id: 2,
+				label: 'Level one 2',
+				children: [
+					{
+						id: 5,
+						label: 'Level two 2-1',
+					},
+					{
+						id: 6,
+						label: 'Level two 2-2',
+					},
+				],
+			},
+			{
+				id: 3,
+				label: 'Level one 3',
+				children: [
+					{
+						id: 7,
+						label: 'Level two 3-1',
+					},
+					{
+						id: 8,
+						label: 'Level two 3-2',
+					},
+				],
+			},
+		];
+		const tableData = [
+			{
+				date: '2016-05-03',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+			{
+				date: '2016-05-02',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+			{
+				date: '2016-05-04',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+			{
+				date: '2016-05-01',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+			{
+				date: '2016-05-08',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+			{
+				date: '2016-05-06',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+			{
+				date: '2016-05-07',
+				name: 'Tom',
+				address: 'No. 189, Grove St, Los Angeles',
+			},
+		];
+		const activeName = ref('first');
+
+		const handleClick = (tab: TabsPaneContext, event: Event) => {
+			console.log(tab, event);
+		};
+		return {
+			activeName,
+			handleClick,
+			ruleForm,
+			filterText,
+			treeRef,
+			defaultProps,
+			filterNode,
+			data,
+			tableData,
+			Plus,
+			EditPen,
+			Delete,
+			Download,
+			Refresh,
+			Upload,
+		};
+	},
+});
+</script>
+<style scoped>
+.topTitle {
+	background-color: #fff;
+	padding: 20px 0px 20px 0px;
+	margin-bottom: 10px;
+}
+.tree {
+	height: 750px;
+	background-color: #fff;
+	overflow: hidden;
+	overflow-y: auto;
+}
+.btns {
+	padding: 10px 0px 10px 10px;
+	display: flex;
+	justify-content: space-between;
+	background-color: #fff;
+}
+</style>
diff --git a/src/views/facilityManagement/deviceType/component/Dailog.vue b/src/views/facilityManagement/deviceType/component/Dailog.vue
new file mode 100644
index 0000000..6f8b671
--- /dev/null
+++ b/src/views/facilityManagement/deviceType/component/Dailog.vue
@@ -0,0 +1,64 @@
+<template>
+	<el-dialog v-model="dialogVisible" title="新建设备设施类型管理" width="50%" draggable>
+         <el-form :model="form" label-width="120px">
+		<el-row>
+			<el-col :span="11">
+                <el-form-item label="是否为设备内容">
+				<el-select v-model="form.region" placeholder="请选择" style="width:100%">
+					<el-option label="Zone one" value="shanghai" />
+					<el-option label="Zone two" value="beijing" />
+				</el-select>
+                 </el-form-item>
+			</el-col>
+			<el-col :span="11" :offset="2">
+                <el-form-item label="父级编号">
+				<el-select v-model="form.region" placeholder="请选择" style="width:100%">
+					<el-option label="Zone one" value="shanghai" />
+					<el-option label="Zone two" value="beijing" />
+				</el-select>
+                </el-form-item>
+			</el-col>
+		</el-row>
+        <el-row>
+			<el-col :span="11">
+                <el-form-item label="类别名称">
+				<el-input v-model="form.name" />
+                 </el-form-item>
+			</el-col>
+			<el-col :span="11" :offset="2">
+                <el-form-item label="排列序列">
+				<el-input v-model="form.name" />
+                </el-form-item>
+			</el-col>
+		</el-row>
+        </el-form>
+		<template #footer>
+			<span class="dialog-footer">
+				<el-button @click="dialogVisible = false">关闭</el-button>
+				<el-button type="primary" @click="dialogVisible = false">确定</el-button>
+			</span>
+		</template>
+	</el-dialog>
+</template>
+<script lang="ts">
+import { defineComponent, ref } from 'vue';
+export default defineComponent({
+	setup() {
+		const dialogVisible = ref(false);
+		const form = ref({});
+        const openDailog=()=>{
+            dialogVisible.value=true
+        }
+		return {
+			dialogVisible,
+			form,
+            openDailog
+		};
+	},
+});
+</script>
+<style scoped>
+.el-row{
+    padding: 0 0 20px 0;
+}
+</style>
diff --git a/src/views/facilityManagement/deviceType/index.vue b/src/views/facilityManagement/deviceType/index.vue
new file mode 100644
index 0000000..5e3fb06
--- /dev/null
+++ b/src/views/facilityManagement/deviceType/index.vue
@@ -0,0 +1,96 @@
+<template>
+    <div class="box">
+        <el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+         <el-table :data="tableData" style="width: 100%"  row-key="id">
+    <el-table-column align="center" prop="date" label="是否为设备内容"/>
+    <el-table-column align="center" prop="name" label="巡检" />
+    <el-table-column align="center" prop="address" label="检测" />
+    <el-table-column align="center" prop="address" label="类别名称" />
+    <el-table-column align="center" label="操作">
+        <template #default>
+         <el-button type="primary" link :icon="View">查看</el-button>
+         <el-button type="primary" link :icon="EditPen">修改</el-button>
+         <el-button type="primary" link :icon="Delete">删除</el-button>
+         <el-button type="primary" link :icon="CirclePlus">添加下级设备设施类型管理</el-button>
+        </template>
+    </el-table-column>
+  </el-table>
+   <Dailog ref="Show"></Dailog>
+    </div>
+</template>
+<script lang="ts">
+import { defineComponent,ref } from 'vue'
+import {Plus,View,EditPen,Delete,CirclePlus} from '@element-plus/icons-vue'
+import Dailog from "./component/Dailog.vue"
+export default defineComponent({
+    components:{Dailog},
+    setup() {
+      const tableData = [
+  {
+    id: 1,
+    date: '2016-05-02',
+    name: 'wangxiaohu',
+  },
+  {
+    id: 2,
+    date: '2016-05-04',
+    name: 'wangxiaohu',
+  },
+  {
+    id: 3,
+    date: '2016-05-01',
+    name: 'wangxiaohu',
+    children: [
+      {
+        id: 31,
+        date: '2016-05-01',
+        name: 'wangxiaohu',
+         children: [
+      {
+        id: 35,
+        date: '2016-05-01',
+        name: 'wangxiaohu',
+      },
+      {
+        id: 36,
+        date: '2016-05-01',
+        name: 'wangxiaohu',
+      },
+    ],
+      },
+      {
+        id: 32,
+        date: '2016-05-01',
+        name: 'wangxiaohu',
+      },
+    ],
+  },
+  {
+    id: 4,
+    date: '2016-05-03',
+    name: 'wangxiaohu',
+  },
+]
+    const Show=ref()
+    const openD=()=>{
+        Show.value.openDailog()
+    }
+       return{
+           tableData,
+           Show,
+           openD,
+           Plus,
+           View,
+           EditPen,
+           Delete,
+           CirclePlus
+       } 
+    },
+})
+</script>
+<style scoped>
+.box{
+    padding: 20px;
+    background-color: #fff;
+}
+</style>

--
Gitblit v1.9.2