From fd9151c94a8fa297119e7618a132cd04f6ca580f Mon Sep 17 00:00:00 2001
From: lzhe <181968431@qq.com>
Date: 星期日, 21 四月 2024 23:58:27 +0800
Subject: [PATCH] 1

---
 src/views/mdc/status-record.vue             |  195 +++++++++++++++++++++++++++++++++++++++++++++---
 src/views/login/index.vue                   |    2 
 src/views/login/components/passwordForm.vue |    4 
 src/layout/components/NavMenu.vue           |   27 +++++-
 4 files changed, 206 insertions(+), 22 deletions(-)

diff --git a/src/layout/components/NavMenu.vue b/src/layout/components/NavMenu.vue
index c1b09ed..fc83c32 100644
--- a/src/layout/components/NavMenu.vue
+++ b/src/layout/components/NavMenu.vue
@@ -5,7 +5,12 @@
 	<template v-for="navMenu in navMenus" v-bind:key="navMenu">
 		<el-menu-item v-if="!hasChildren(navMenu)" :index="navMenu.path">
 			<a v-if="navMenu.meta&&navMenu.meta.type=='link'" :href="navMenu.path" target="_blank" @click.stop='()=>{}'></a>
-			<el-icon v-if="navMenu.meta&&navMenu.meta.icon"><component :is="navMenu.meta.icon || 'el-icon-menu'"/></el-icon>
+			<!-- <el-icon><Warning /></el-icon> -->
+			<el-icon>
+				 <component v-if="icons.includes(navMenu.source)" :is="navMenu.source"/>
+				 <component v-if="!icons.includes(navMenu.source)" :is="'TakeawayBox'"/>
+				<!-- <el-icon v-if="navMenu.meta&&navMenu.meta.icon"><component :is="navMenu.meta.icon || 'el-icon-menu'"/></el-icon> -->
+			</el-icon>
 			<template #title>
 				<span>{{navMenu.meta.title}}</span>
 				<span v-if="navMenu.meta.tag" class="menu-tag">{{navMenu.meta.tag}}</span>
@@ -13,7 +18,11 @@
 		</el-menu-item>
 		<el-sub-menu v-else :index="navMenu.path">
 			<template #title>
-				<!-- <el-icon v-if="navMenu.meta&&navMenu.meta.icon"><component :is="navMenu.meta.icon || 'el-icon-menu'"/></el-icon> -->
+				<el-icon v-if="navMenu.parentId!='0' &&navMenu.meta&&navMenu.meta.icon">
+					<component v-if="icons.includes(navMenu.source)" :is="navMenu.source"/>
+					<component v-if="!icons.includes(navMenu.source)" :is="'TakeawayBox'"/>
+					<!-- <component :is="navMenu.meta.icon || 'el-icon-menu'"/> -->
+				</el-icon>
 				<span>{{navMenu.meta.title}}</span>
 				<span v-if="navMenu.meta.tag" class="menu-tag">{{navMenu.meta.tag}}</span>
 			</template>
@@ -23,19 +32,29 @@
 </template>
 
 <script>
+	import * as ElementPlusIconsVue from '@element-plus/icons-vue'
+	let icons = []
+	for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
+	    icons.push(key)
+	}
 	export default {
 		name: 'NavMenu',
 		props: ['navMenus'],
 		data() {
-			return {}
+			return {
+				icons
+			}
 		},
+		components: {
+	        ...ElementPlusIconsVue
+	    },
 		methods: {
 			hasChildren(item) {
 				return item.children && !item.children.every(item => item.meta.hidden)
+				//return item.parentId == '0';
 			}
 		},
 		mounted(){
-			
 		}
 	}
 </script>
diff --git a/src/views/login/components/passwordForm.vue b/src/views/login/components/passwordForm.vue
index ea84d84..380479c 100644
--- a/src/views/login/components/passwordForm.vue
+++ b/src/views/login/components/passwordForm.vue
@@ -140,10 +140,10 @@
 							menu: transformedArray,
 							permissions: ["list.add", "list.edit", "list.delete", "user.add", "user.edit", "user.delete"]
 						}
-						this.$TOOL.data.set("MENU", obj.menu)
+						this.$TOOL.data.set("MENU", obj.menu);
+						console.log(obj.menu,289)
 						this.$TOOL.data.set("PERMISSIONS", obj.permissions)
 						this.$TOOL.data.set("DASHBOARDGRID", obj.dashboardGrid)
-						console.log(transformedArray, 222)
 
 						this.$router.replace({
 							path: '/'
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 6aeeb65..25d2ef2 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -80,7 +80,7 @@
 
 <style scoped>
 	.login_bg {width: 100%;height: 100%;background: #fff;display: flex;}
-    .login_adv {width: 100%;background-color: #555;background-size: cover;background-position: center center;background-repeat: no-repeat;position: relative;background-size: 100% 100%;}
+    .login_adv {width: 100%;background-color: #555;background-size: cover;background-position: center center;background-repeat: no-repeat;position: relative;}
     .login_adv__title {color: #fff;padding: 40px;position: absolute;top:0px;left:0px;right: 0px;z-index: 2;}
     .login_adv__title h2 {font-size: 40px;}
     .login_adv__title h4 {font-size: 18px;margin-top: 10px;font-weight: normal;}
diff --git a/src/views/mdc/status-record.vue b/src/views/mdc/status-record.vue
index 1715377..89ae316 100644
--- a/src/views/mdc/status-record.vue
+++ b/src/views/mdc/status-record.vue
@@ -1,24 +1,189 @@
-<!--
- * @Date: 2024-04-09 22:11:21
- * @LastEditors: Sneed
- * @LastEditTime: 2024-04-13 22:15:52
- * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/status-record.vue
- 鐘舵�佽褰�
--->
 <template>
-    <el-main>
-        <el-card shadow="never">
-            鏁堢巼鍒嗘瀽
+	<div class="aposcope-main">
+		<div class="aposcope-left">
+			<div class="left-title">鏌ヨ鏉′欢</div>
+			<div>鏃ユ湡</div>
+			<!-- <el-date-picker
+		      v-model="time"
+		      type="datetimerange"
+		      range-separator="-"
+		      start-placeholder=""
+		      end-placeholder="" />
+ -->
+    <el-date-picker
+      v-model="time"
+      type="datetimerange"
+      :shortcuts="shortcuts"
+      range-separator="-"
+      start-placeholder="Start date"
+      end-placeholder="End date"
+    />
+
+			<!-- <el-date-picker value-format="YYYY-MM-DD" style="width: 250px" v-model="time" type="daterange" range-separator="-" start-placeholder="" end-placeholder="" /> -->
+		</div>
+		<div class="aposcope-right">
+		</div>
+	</div>
+    <!-- <el-main style="height: 100%;">
+        <el-card shadow="never" style="height: 100%;" body-style="height: 100%">
+            <el-container style="height: 100%;">
+                <el-aside width="300px" style="height: 100%;">
+                    <el-container>
+                        <el-main class="nopadding">
+                            <el-row>
+                                <el-col style="margin-top: 14px;">鏃ユ湡</el-col>
+                                <el-col>
+                                    <el-date-picker value-format="YYYY-MM-DD" style="width: 250px" v-model="time"
+                                        type="daterange" range-separator="-" start-placeholder="" end-placeholder="" />
+                                </el-col>
+                            </el-row>
+                            <el-row style="margin-top: 14px;">
+                                宸ヤ綅
+                            </el-row>
+                            <MYTree v-model="treeChecked" show-checkbox></MYTree>
+                        </el-main>
+                        <el-footer>
+                            <el-button @click="query">鏌ヨ</el-button>
+                            <el-button>瀵煎嚭</el-button>
+                        </el-footer>
+                    </el-container>
+                </el-aside>
+                <el-container>
+                    <el-main>
+                        <el-tabs tab-position="top" v-model="activeName" type="card">
+                            <el-tab-pane label="鎸夌彮娆$粺璁�" name="shift">
+                                <Shift colname="浜ч噺" url="/api/blade-mdc/output" ref="shift"
+                                    v-if="activeName == 'shift'">
+                                </Shift>
+                            </el-tab-pane>
+                            <el-tab-pane label="鎸夋椂闂村懆鏈熺粺璁�" name="time">
+                                <Time url="/api/blade-mdc/output" ref="time" v-if="activeName == 'time'">
+
+                                </Time>
+                            </el-tab-pane>
+                        </el-tabs>
+                    </el-main>
+                </el-container>
+            </el-container>
         </el-card>
-    </el-main>
+    </el-main> -->
 </template>
 
 <script>
-    export default {
-        
+import moment from 'moment';
+import MYTree from './MYTree.vue'
+import Shift from './components/Shift.vue'
+import Time from './components/Time.vue'
+
+export default {
+    components: {
+    	time: "",
+        MYTree,
+        Shift,
+        Time,
+        shortcuts: [
+        	{
+			    text: 'Last week',
+			    value: () => {
+			      const end = new Date()
+			      const start = new Date()
+			      start.setDate(start.getDate() - 7)
+			      return [start, end]
+			    },
+			  },
+			  {
+			    text: 'Last month',
+			    value: () => {
+			      const end = new Date()
+			      const start = new Date()
+			      start.setMonth(start.getMonth() - 1)
+			      return [start, end]
+			    },
+			  },
+			  {
+			    text: 'Last 3 months',
+			    value: () => {
+			      const end = new Date()
+			      const start = new Date()
+			      start.setMonth(start.getMonth() - 3)
+			      return [start, end]
+			    },
+			  },
+        ]
+    },
+    watch: {
+        activeName() {
+            this.$nextTick(() => {
+                this.query()
+            })
+
+        }
+    },
+    data() {
+        return {
+            activeName: 'shift',
+            time: [],
+            treeChecked: [],
+            options: [
+                {
+                    label: '绋煎姩鐜�',
+                    value: 'OEE',
+                },
+                {
+                    label: '鎶ヨ鐜�',
+                    value: 'ALARM',
+                },
+                {
+                    label: '杩愯鐜�',
+                    value: 'RUNNING',
+                },
+            ]
+        }
+    },
+    created() {
+        this.time = [moment().format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')]
+    },
+    mounted() {
+        this.query()
+    },
+    methods: {
+        query() {
+            // this.$refs[this.activeName].init({
+            //     endDate: this.time[1],
+            //     startDate: this.time[0],
+            //     shiftIndexList: [1, 2],
+            //     workStationIdList: [...this.treeChecked]
+            // })
+        }
     }
+}
 </script>
 
-<style lang="scss" scoped>
-
+<style scoped>
+.aposcope-main {
+	display: flex;
+	min-height: 100%;
+	margin: 8px;
+}
+.aposcope-left {
+	width: 240px;
+	margin-right: 8px;
+	padding: 4px;
+	background-color: #fff;
+}
+.aposcope-right {
+	flex: 1;
+	padding: 8px;
+	background-color: #fff;
+}
+.left-title {
+	font-size: 16px;
+    text-align: center;
+    height: 38px;
+    line-height: 38px;
+    border-bottom: 1px solid #e2e2e2;
+    background-color: #409eff;
+    color: #fff;
+    border-radius: 2px 2px 0 0;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3