文章目录

  • 一、前言
    • 1.什么是智能制造MES系统
    • 2.MES系统的主要功能
    • 3.MES系统解决的问题
  • 二、菜单栏的设计
  • 三、效果

一、前言

1.什么是智能制造MES系统

MES系统是一套面向制造企业车间执行层的生产信息化管理系统。

MES系统为企业提供包括制造数据管理、计划排程管理、生产调度管理、库存管理、质量管理、人力资源管理、工作中心/设备管理、工具工装管理、采购管理、成本管理、项目看板管理、生产过程控制、底层数据集成分析、上层数据集成分解等管理模块,为企业打造一个扎实、可靠、全面、可行的制造协同管理平台。

2.MES系统的主要功能

现场管理细度:由按天变为按分钟/秒
现场数据採集:由人手录入变为扫描、快速準确採集
电子看板管理:由人工统计发布变为自动採集、自动发布
仓库物料存放:模糊、杂散变为透明、规整
生产任务分配:人工变为自动分配、产能平衡
仓库管理:人工、数据滞后变为系统指导、及时、準确
责任追溯:困难、模糊变为清晰、正确
绩效统计评估:靠残缺数据估计变为凭準确数据分析
统计分析:按不同时间/机种/生产线等多角度分析对比
综合分析:按不同的需求综合分析不同的数据

3.MES系统解决的问题

1、正确掌握在制品数量,及不良品的追蹤,降低在制品成本;
2、 用条形码追蹤产品序号,提高产品的售后服务水平;
3、及时反应产品质量问题,追溯品质历史,提高产品治理;
4、 大幅减少现场手工作业,提高现场管理人员的生产力;
5、充分掌握工具、设备的使用状况,使製造资源高效运作;
6、 强大的统计报表为企业管理决策提供实时、準确、可靠的生产数据,提高公司核心竞争力。

二、菜单栏的设计

<Window x:Class="Zhaoxi.MES.Frame.Views.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"FontFamily="Microsoft YaHei" FontWeight="ExtraLight" FontSize="13"mc:Ignorable="d" WindowStartupLocation="CenterScreen"Title="朝夕MES" Height="700" Width="1300"><!--无边框--><WindowChrome.WindowChrome><WindowChrome GlassFrameThickness="-1"/></WindowChrome.WindowChrome><Window.Background><!--线性渐变--><LinearGradientBrush StartPoint="0,0" EndPoint="0,1"><GradientStop Color="#F7F9FA" Offset="0"/><GradientStop Color="#FFD4EEFB" Offset="1"/></LinearGradientBrush></Window.Background><Window.Resources><ControlTemplate TargetType="ToggleButton" x:Key="ArrowButtonTemplate"><Grid Background="Transparent" Name="back"><TextBlock Text="" FontFamily="{StaticResource Iconfont}" VerticalAlignment="Center" HorizontalAlignment="Center"RenderTransformOrigin="0.5,0.5" Name="arrow" Foreground="{TemplateBinding Foreground}"><TextBlock.RenderTransform><RotateTransform Angle="-90"/></TextBlock.RenderTransform></TextBlock></Grid><ControlTemplate.Triggers><Trigger Property="IsChecked" Value="True"><Setter TargetName="arrow" Property="RenderTransform"><Setter.Value><RotateTransform Angle="0"/></Setter.Value></Setter></Trigger><Trigger Property="IsMouseOver" Value="True"><Setter TargetName="back" Property="Background" Value="#11000000"/></Trigger></ControlTemplate.Triggers></ControlTemplate><Style TargetType="TreeViewItem"><Setter Property="IsExpanded" Value="{Binding IsExpanded,Mode=TwoWay}"/><Setter Property="Background" Value="Transparent"/><Setter Property="HorizontalContentAlignment" Value="Left"/><Setter Property="VerticalContentAlignment" Value="Center"/><Setter Property="Padding" Value="8,5"/><Setter Property="Foreground" Value="White"/><Setter Property="FontSize" Value="12"/><Setter Property="BorderThickness" Value="0"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="TreeViewItem"><Grid Background="Transparent" Name="root"><Grid.ColumnDefinitions><ColumnDefinition/><ColumnDefinition MaxWidth="30"/></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition Height="Auto" MinHeight="36"/><RowDefinition  /></Grid.RowDefinitions><!--响应当前节点的鼠标双击动作,并且关联到VM中的命令--><Grid.InputBindings><MouseBinding MouseAction="LeftDoubleClick"Command="{Binding OpenViewCommand}"CommandParameter="{Binding}"/></Grid.InputBindings><Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}"BorderThickness="{TemplateBinding BorderThickness}"Background="{TemplateBinding Background}"CornerRadius="0" Grid.ColumnSpan="2" Padding="{TemplateBinding Padding}"SnapsToDevicePixels="true"TextBlock.Foreground="{TemplateBinding Foreground}"><ContentPresenter x:Name="PART_Header" ContentSource="Header"HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"VerticalAlignment="{TemplateBinding VerticalContentAlignment}"SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"></ContentPresenter></Border><ToggleButton x:Name="Expander" Grid.Column="1" ClickMode="Press" Foreground="{Binding ElementName=Bd,Path=(TextBlock.Foreground)}"IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource TemplatedParent}}"Template="{StaticResource ArrowButtonTemplate}"/><!--当前子项的  Children集合--><ItemsPresenter x:Name="ItemsHost" Margin="18,0,0,0" Grid.ColumnSpan="2" Grid.Row="1" /></Grid><ControlTemplate.Triggers><Trigger Property="IsExpanded" Value="false"><Setter Property="Visibility" TargetName="ItemsHost" Value="Collapsed"/></Trigger><DataTrigger Binding="{Binding Children.Count}" Value="0"><Setter Property="Visibility" TargetName="Expander" Value="Hidden"/></DataTrigger><Trigger Property="IsSelected" Value="true"><Setter Property="Background" TargetName="Bd" Value="#F7F9FA"/><Setter Property="Foreground" Value="#0b3d90"/><Setter Property="Foreground" Value="#0b3d90" TargetName="Expander"/></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style><Style TargetType="Button" x:Key="TabCloseButtonStyle"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="Button"><Border VerticalAlignment="Center" HorizontalAlignment="Center" CornerRadius="3" Background="Transparent"Name="back"><Path Data="M0 0 8 8M0 8 8 0" Margin="5"Stroke="{TemplateBinding Foreground}" StrokeThickness="1"/></Border><ControlTemplate.Triggers><Trigger Property="IsMouseOver" Value="True"><Setter Property="Background" Value="#BBB" TargetName="back"/></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style></Window.Resources><Grid><Grid.ColumnDefinitions><ColumnDefinition Width="180"/><ColumnDefinition/></Grid.ColumnDefinitions><Border Background="#FF1D5390" BorderBrush="White" BorderThickness="0,0,1,0"/><!--左侧菜单--><StackPanel><StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,15"><Image Source="../Assets/Images/logo.png" Width="35" Margin="0,0,10,0"/><TextBlock Text="朝夕MES" VerticalAlignment="Center" Foreground="#FFDEFBFF" FontSize="16"/></StackPanel><TreeView Background="Transparent" BorderThickness="0" ItemsSource="{Binding TreeList}"><TreeView.ItemTemplate><HierarchicalDataTemplate ItemsSource="{Binding Children}"><Grid><Grid.ColumnDefinitions><ColumnDefinition Width="30" Name="c1"/><ColumnDefinition/></Grid.ColumnDefinitions><TextBlock Text="{Binding IconCode}"  FontFamily="{StaticResource Iconfont}"VerticalAlignment="Center" HorizontalAlignment="Center"FontSize="18" SnapsToDevicePixels="True"/><TextBlock Text="{Binding Header}" Grid.Column="1" Margin="5,0,0,0" FontSize="13"/></Grid><HierarchicalDataTemplate.Triggers><DataTrigger Binding="{Binding IconCode}" Value="{x:Null}"><Setter TargetName="c1" Property="Width" Value="13"/></DataTrigger></HierarchicalDataTemplate.Triggers></HierarchicalDataTemplate></TreeView.ItemTemplate></TreeView></StackPanel></Grid>
</Window>
using System;
using System.Collections.Generic;
using System.DirectoryServices.ActiveDirectory;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Zhaoxi.MES.Frame.Models;
using Zhaoxi.MES.Frame.Base;
using System.Collections.ObjectModel;
using System.Reflection;namespace Zhaoxi.MES.Frame.ViewModels
{public class MainViewModel:NotifyBase{// 菜单 集合public List<MenuItemModel> TreeList { get; set; }// 页面 集合public ObservableCollection<PageItemModel> Pages { get; set; }= new ObservableCollection<PageItemModel>();public MainViewModel(){#region 菜单初始化TreeList = new List<MenuItemModel>();{MenuItemModel tim = new MenuItemModel();tim.Header = "工艺设计";//  XAML里使用tim.IconCode = "\ue610"; // 字体图标编码,阿里的Iconfont平台打包的图标库TreeList.Add(tim);tim.Children.Add(new MenuItemModel{Header = "加工工艺",TargetView = "BlankPage",OpenViewCommand = new Command<MenuItemModel>(OpenView)});tim.Children.Add(new MenuItemModel{Header = "EBOM",TargetView = "BlankPage",OpenViewCommand = new Command<MenuItemModel>(OpenView)});tim.Children.Add(new MenuItemModel{Header = "PBOM",//TargetView = "BlankPage"});MenuItemModel subMenu = new MenuItemModel();subMenu.Header = "二级菜单";subMenu.Children.Add(new MenuItemModel{Header = "三级菜单"});tim.Children.Add(subMenu);}#endregion}private void OpenView(MenuItemModel menu){// 两个问题:// 1、每点击一次都会有一个新的页面!  解决方案:从集合中判断是否存在// 2、新打开一个页面后,不能马上显示 //MenuItemModel mim = menu as MenuItemModel;// 需要进行页面的打开 //Pages.Add("EEEE");var page = Pages.ToList().FirstOrDefault(p => p.Header == menu.Header);if (page == null){Type type = Assembly.GetExecutingAssembly().GetType("Zhaoxi.MES.Frame.Views.Pages." + menu.TargetView);object p = Activator.CreateInstance(type);Pages.Add(new PageItemModel{Header = menu.Header,PageView = p,IsSelected = true,CloseTabCommand = new Command<PageItemModel>(ClosePage)});}elsepage.IsSelected = true;}private void ClosePage(PageItemModel menu){Pages.Remove(menu);}}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Zhaoxi.MES.Frame.ViewModels;namespace Zhaoxi.MES.Frame.Views
{/// <summary>/// Interaction logic for MainWindow.xaml/// </summary>public partial class MainWindow : Window{public MainWindow(){InitializeComponent();this.DataContext = new MainViewModel();}}
}

三、效果

2022年10月 基于WPF的智能制造MES系统框架-菜单栏的设计相关推荐

  1. 智能制造MES系统框架

    MES系统概述 MES系统是一套面向制造企业车间执行层的生产信息化管理系统.为企业提供包括制造数据管理.计划排成管理.生产调度管理.库存管理.质量管理.人力资源管理.工作中心/设备管理.工具工装管理. ...

  2. 基于html5的城市公交查询系统,基于WEB的智能公交查询系统的研究与设计

    摘要: 我国城市公交查询系统的发展处于一个较落后的水平,广大乘客可以获得信息的方式很少,为了解决这种问题,加快发展城市公交信息化,设计了这个城市公交出行线路查询系统.公交换乘查询系统是MAS技术和We ...

  3. 智能制造MES系统的主要内容有哪些?系统有什么作用?

    制造企业非常关注实现生产过程中的实时采集.提高生产排产的效率.实现制造过程的追溯.提升工人与设备的绩效.保证产品质量等问题.调研数据显示:92%的企业渴望加强对生产过程的控制. 大多数制造企业已经逐渐 ...

  4. 一周速递|全球车联网产业动态(2022年10月16日)

    政策法规 1.10月13日,上海市经济信息化委透露,上海将加快智能网联汽车终端发展,力争到2025年塑造3个以上具有上海标识度的品牌,打造10款以上爆款产品,产值达到5000亿元,具有辅助自动驾驶功能 ...

  5. Ruoyi-Vue若依前后端分离版 2022年5月 基于代码生成器的新模块添加

    Ruoyi-Vue若依前后端分离版 2022年5月 基于代码生成器的新模块添加 在ruoyi数据库的基础上.编辑好自己的数据库表 启动ruoyi前后端,进系统使用代码生成器 将生成的代码导入到现有的项 ...

  6. CNAS 实验室认可规范文件清单 (截止2022年10月1日)

    CNAS 实验室认可规范文件清单 (截止2022年10月1日) 序号 类别 文件编号 文件名称 发布日期 实施日期 被代替文件 备注 注:有效文件发布实施日期 文件编号/文件名 旧文件废止时间 1 通 ...

  7. 2022年10月30日马丁·加德纳聚会线上活动重磅来袭!

    早点关注我,精彩不错过! 随着秋风的日益清冷,一年一度的马丁·加德纳聚会悄然而至,这红叶纷飞的十月,恰是数学爱好者们期盼的欢聚时刻. 聚会时间:2022年10月30号全天 形式:腾讯线上会议. 地点: ...

  8. 关于2022年10月谷歌浏览器无法使用翻译功能的解决办法

    关于2022年10月谷歌浏览器无法使用翻译功能的解决办法 具体步骤 1.运行CMD(以管理员身份运行) 2.输入下面的代码 echo 203.208.40.66 translate.googleapi ...

  9. 李迟2022年10月工作生活总结

    本文为 2022 年 10 月工作生活总结. 研发编码 Go 判断interface{}是否为空 判断interface{}类型是否为空,不能直接使用==nil来判断(用之无效),需先用reflect ...

最新文章

  1. c语言xml序列化,C# XML和实体类之间相互转换(序列化和反序列化)
  2. maven java 配置文件路径_Maven 的配置文件路径读取
  3. win10安装和配置Maven3.6.3
  4. FlowDroid工具的构建与运行
  5. Nginx RTMP 功能研究
  6. SAP Spartacus breakpoint的决定逻辑
  7. 计算机二级考试需要怎么备考,计算机二级ms office应该怎么备考 考试内容是什么...
  8. 简单文件传输TFTP服务器搭建 Linux RHEL6
  9. 多主机Docker容器的VLAN划分
  10. 排序算法Java实现(基数排序)
  11. ZooKeeper 集群为啥最好奇数台?
  12. SAP License:SAP的2021关键词:协作
  13. 机器学习-吴恩达-笔记-9-聚类
  14. vue - process.env 定义
  15. 【服务器】【阿里云】免费升级HTTP为HTTPS
  16. 在网站中使用Session的简单例子
  17. JDK自带观察者的使用
  18. Python代码缩进
  19. 华为马海旭:+智能,IoT行业云服务使能产业物联网
  20. 饥荒联机一直显示正在启动服务器,饥荒联机版一直正在启动服务器 | 手游网游页游攻略大全...

热门文章

  1. 怎么在本地运行java项目,eclipse怎么运行java web项目?
  2. Sniffing and sending packets is not available: winpcap is not installed
  3. Android朋友圈怎么换行,微信朋友圈个性签名怎么换行
  4. 醉林疯的OJ 1063: 最大公约与最小公倍
  5. win10热点 ip配置失败
  6. 机器学习第四章之逻辑回归模型
  7. nasm做一个简单的操作系统写字本(3)
  8. <Linux开发> ubuntu开发工具-Ubuntu测试网速及实时网速图
  9. 今日头条阅读量怎么刷_今日头条阅读量怎么刷 今日头条怎么增加阅读量
  10. Launcher布局加载流程