版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业论文(设计) 题 目基于.NET的餐饮管理系统设计与实现 学生姓名 学 号 系 别 年 级 专 业 指导教师 职 称 教授 完成日期 毕业论文(设计)诚信声明书本人郑重声明:提交的毕业论文(设计)基于.NET的餐饮管理系统设计与实现 ,是本人在指导老师的指导下独立研究、撰写的成果;论文(设计)未剽窃、抄袭他人的学术观点、思想和成果,未篡改研究数据,论文(设计)中所引用的文字、研究成果均已在论文(设计)中以明确的方式标明;在毕业论文(设计)过程中,本人恪守学术规范,遵守学校有关规定,依法享有和承担由此论文(设计)产生的权利和责任。声明人(签名):年 月 日摘 要随着信息技术在企业管理上越来越
2、深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个企业要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。本文主要研究如何开发餐饮管理系统,解释了开发餐饮管理系统的必要性和重要性,系统的开发在.net平台上进行,结合后端的Sqlite数据库技术,用C#.net进行编码,开发出一个符合企业需要,比较实用的信息管理系统。通过对计算机硬件和软件解决方案的论证,对应用领域进行调查分析,参考许多资料,在指导老师的帮助下,详细分析了企业管理系统的几个主要设计阶段:需求分析、概要设计和详细设计,同时给出了系统实现的具
3、体思想方案,并列举了实际工程中的实例创建过程、方法和效果。该系统开发由系统需求分析阶段、概念设计阶段、逻辑设计阶段、数据库实施阶段、系统调试和测试阶段、参考文献、附录等阶段组成。关键词:餐饮管理现代化,人工管理,功能模块,存储过程目 录摘 要I1 绪论11.1 课题的提出、现状及研究意义11.2 课题的研究内容11.3 论文的章节安排22 相关技术介绍32.1 C# 简介32.2 SQLITE简介53 系统需求分析73.1 系统需求分析73.2 系统类图73.3 系统用例图74 系统设计94.1 系统总体结构94.2 系统详细设计94.2.1进账管理模块详细设计94.2.2 员工管理模块详细设
4、计104.3 数据库设计114.3.1 概念设计114.3.2 逻辑设计125 系统实现135.1 系统数据库连接实现135.3 登录模块实现145.4 主窗体实现175.5.4 功能实现的补充说明256 结束语266.1 主要276.2 进一步改进的方向27参考文献29致 谢301 绪论1.1 课题的提出、现状及研究意义近年来,随着人民的生活水平的不断提高,餐饮业的消费持续增长,竞争愈来愈激烈。然而,传统餐饮企业的日常运作还是靠人工管理,从原材料入库到客人点单,再到结账基本上由人工完成记录,这样做不仅耗费人力资源而且容易导致记录丢失或重复等错误,造成管理水平低下。XX酒店作为传统的餐饮企业也
5、存在这些问题,进货,库存有人工管理,客人点单需服务员记录并送至厨房,客人结账由手工记录,人力耗费大,客人等待时间长,管理效率低下,这就迫切需要标准的、高效率的计算机管理方式引导其发展,通过计算机管理该企业的日常运作,给管理者以决策参考的模型,来不断完善管理水平,提高工作效率。改革开放二十多年来,我国餐饮业发展迅猛,日新月异,各种风味特色,各种经营形式,各种组织结构的餐饮企业星罗棋布,但“竞争激烈,生意难作”也成了餐饮业的“流行脖。更新经营方式,拓展大众市场,建全餐饮业的“软硬”件设施,发展餐饮信息渠道是我国餐饮业应探索的主旋律。所以,社会化,科学化,集锦化21世纪的发展方向。当今世界已进入了在
6、计算机信息管理领域中激烈竞争的时代,应用计算机已经变得十分普遍了,如同我们离不开的自行车、汽车一样。我们应该承认,谁掌握的知识多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就能够在各种竞争中立于不败之地。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。越来越多的管理人员意识到信息管理的重要性。所以说科学化是二十一世纪餐饮业的主流目前,国内的餐饮管理系统几种情况是:中国的软件系统大多源自管理信息系统(MIS),从部门业务需求的角度出发设计。管理信息系统设计的初衷是服务于学校内绝大多数的业务操作人员,将业务操作人
7、员的重复性劳动予以初场户动化,即从管理理论抽象出理想化的业务管理模式,在基于该业务模式的摹础上实现低层次的数据处理或业务流程电子化。管理信息系统的设计,是根据中小型学校业务单元的需求来编写的,一般无法满足多体制、多元化、多董组织结构的大型学校数据处理需求。与国外同类应用系统及解决方案相比较,目前中国的管理软件还有一些缺憾:第一,很多是从管理信息系统演变而来,虽然目前国内的管理软件已将模块功能扩展至学校管理或人才资本管理相关的整个业务领域,但系统在整体性、前瞻性和集成性方面仍有欠缺。1.2 课题的研究内容本课题是设计一个基于.NET的餐饮管理系统。本系统属于小型的餐饮管理系统,可以有效地对中小型
8、餐厅消费进行管理,本系统应达到以下目标:系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。对用户输入的数据,进行严格的数据检验,尽可能的避免人为错误。实现对消费账目自动结算。实现对消费的历史记录进行查询,支持模糊查询。系统应最大限度地实现易维护性和易操作性。1.3 论文的章节安排整篇论文是基于.NET为背景,从.NET的知识、体系结构等方面,介绍.NET的餐饮管理系统设计与开发实现。具体章节安排如下:第一章绪论阐明了论文课题的提出及其意义,以及本课题研究内容。第二章主要介绍了研究本课题的涉及到的技术和个性技术的特征
9、、功能和应用领域。第三章介绍系统的需求分析,并重点分析了系统功能需求分析以及系统的UML图等。第四章介绍系统设计,并对系统的数据库设计进行的详细分析。第五章进行系统实现设计的分析,包括部分界面分析和部分代码说明。第六章是结束语。总结论文及设计所做的主要及取得的成果,并对系统和.NET下一步要做的进行了分析。2 相关技术介绍2.1 C# 简介C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一
10、继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。 Visual Studio.NET从一开始就是为XML Web服务创建的开发环境。通过允许应用程序通过Internet沟通和共享数据,XML Web服务使业务能够从Internet转换为用于集成和传送它们的核心商业价值的真正平台。Visual Studio.NET和XML Web服务提供简单,灵活和基于标准的模型。允许开发人员从新的和现有的代码汇编应用程序,而与平台,编
11、程语言或对象模型无关。而.NET Framework是一个新的开发平台,它为局域网 (LAN) 和 Internet 上的分布式企业应用提供了一致和有效的支持。 .NET Framework由两个主要部分组成:CLR(通用语言运行时, Common Language Runtime)和一组统一的类库,包括ASP.NET、ADO.NET、Windows Forms和其他能力。C# (C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来
12、最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。.NET是 Microsoft XML .NET 平台。XML .NET 允许应用程序通过 Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。Microsoft .NET 平台提供创建 XML .NET 并将这些服务集成在一起之所需。C#是一个语言,.net是一个平台,上面支持用C#或者VB
13、dotNet写代码。 另外,C#不但可以开发基于.net的应用程序,也可以开发基于WinForm的程序,这就是区别。 若是单纯以概念来说,你可以把.net当做一个工作平台一般,它是一个开发环境的基底,提供你开发Windows、Web、Mobile、XML.等应用程式一个共通的平台,若是要了解深一点,则再去了解其运作的相关机制那是有助于你利用它来开发.C#和.NET主要是应用在网际网路. C#(读做C-sharp)编程语言是由微软公司的Anders Hejlsberg和 Scott Willamette领导的开发小组专门为.NET平台设计的语言,它可以使程序员移植到.NET上。这种移植对于广大的
14、程序员来说是比较容易的,因为C#从C,C+和Java发展而来,它采用了这三种语言最优秀的特点,并加入了它自己的特性。C#是事件的驱动的,完全面向对象的可视化编程语言,我们可以使用集成开发环境来编写C#程序。使用IDE,程序员可以方便的建立,运行,测试和调试C#程序,这就将开发一个可用程序的时间减少到不用IDE开发时所用时间的一小部分。使用IDE迅速建立一个应用程序的过程称为快速反映开发。 . NET 是 Microsoft 的 XML Web 服务平台。不论操作系统或编程语言有何差别,XML Web 服务能使应用程序在 Internet 上传输和共享数据。 Microsoft® .N
15、ET 平台包含广泛的产品系列,它们都是基于 XML 和 Internet 行业标准构建,提供从开发、管理、使用到体验 XML Web 服务的每一方面。XML Web 服务将成为您今天正在使用的 Microsoft 的应用程序、工具和服务器的一部分 并且将要打造出全新的产品以满足您所有业务需求。 更具体地说,Microsoft 正在五个方面创建 .NET 平台,即工具、服务器、XML Web 服务、客户端和 .NET 体验。C#2.0新特性:1、 泛型:在我看来,泛型就是通过将数据类型参数化从而实现了代码的更为灵活的复用,泛型的出现使得C#能够使用同一段代码来操作多种数据类型。泛型无疑是C#2.
16、0最重大的改进,它的出现赋予了C#代码更强的类型安全,更好的复用,更高的效率和更清晰的约束。 2、 匿名方法:匿名方法允许我们将代码直接与委托实例相关联,使委托实例化工作更加直观和方便。在我看来,这只是C#又多了一种语法格式而已,不再像以前必须将方法名传给委托实例,而是又多了一种选择。 3、 迭代器:迭代器允许我们更加方便的编写用于foreach语句的类型。在我看来,迭代器的出现只不过是改进了1.0中不便的可用foreach语句类型的编写限制,简化了一些接口。 4、 局部类型:局部类型允许我们将一个类的代码分别写在不同的cs文件中。最典型的应用就是使用VS2005创建Form文件时,VS会自动
17、将系统生成的代码与用户代码分开。局部类型通过partial关键字来声明。 5、 空属类型:空属类型是一种像int,一样可以为空的变量类型。本质上是一种泛型的应用,是System .Nullable<>的一种类型实例化。 6、 静态类:静态类是只用于包含静态成员的类型,它既不能实例化,亦不能被继承。2.2 .SQL SERVER简介SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流
18、的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至今已经有13个年头,SQLite也迎来了一个版本 SQLite 3已经发布。Sqlite 数据引擎是本企业数据管理解决方案的核心。同时它还支持事务处理功能等等。也有人说它象Microsoft的Access,有时候真的觉得有点象,但是事实上它们区别很大。比如SQLite 支持跨平台,操作简单,能够使用很多语言直接创建数据库,而不象Acce
19、ss一样需要Office的支持。如果是个很小型的应用,或者想做嵌入式开发,没有合适的数据库系统,那么都可以考虑使用SQLite。3 系统需求分析3.1 系统需求分析作为餐饮管理系统,首先需要具有餐饮管理员可以运用系统来进行登记的功能。在进行登记后,餐饮管理员就可以登录了,在登录以后可以对现有的信息的查看、修改等。由于餐饮管理系统是信息管理系统,利用计算机网络的巨大潜在力量、数据信息的理念,从而减少人、物及财等方面上的消耗,完成合理的资源分配。其开发的功能主要包括:本课题是设计一个基于.NET的餐饮管理系统。确的餐饮管理依据与辅助决策数据。3.2 系统类图4 系统设计4.1 系统总体结构根据以上
20、对餐饮管理系统的功能需求分析。现对餐饮管理系统分析。 4.2 系统详细设计不管是管理员还是普通餐饮管理员登录系统都要进行正确的判断后,才能登入到系统,登录活动图如图4-2所示:图4-2 系统登录活动图4.3 数据库设计4.3.1 概念设计5 系统实现5.1 系统数据库连接实现在系统开发过程中,采用三层架构模式开发,因为要多处涉及到对数据库的连接,如果这些连接都在各个C#.NET程序中去实现,那样将会非常繁琐,代码重复量比较大,因此,为了简化这些连接操作,在开发时设计了一个可重用的类SQLiteHelper.cs,把对数据库的操作都封装在在这个类中,需要用到时生成对象调用便可,其流程图如图5-1
21、所示。其中SQLiteHelper.cs文件的主要代码由如下所示:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SQLite;using System.Configuration;namespace Catering.DAL public class SQLiteHelper private static readonly string str = ConfigurationManager.Connecti
22、onStrings"conStr".ConnectionString; / <summary> / 此方法用来做增删改 / </summary> / <param name="sql">sql语句</param> / <param name="param">参数数组</param> / <returns>返回受影响的行数</returns> public static int ExecuteNonQuery(string sql, para
23、ms SQLiteParameter param) /创建连接字符串 using (SQLiteConnection con = new SQLiteConnection(str) /创建执行sql语句对象 using (SQLiteCommand cmd = new SQLiteCommand(sql, con) con.Open();/打开数据库 cmd.Parameters.AddRange(param);/添加参数列表 return cmd.ExecuteNonQuery();/执行命令 / <summary> / 此方法用来返回首行首列 / </summary>
24、; / <param name="sql">sql语句</param> / <param name="param">参数数组</param> / <returns>返回值为object类型</returns> public static object ExecuteScalar(string sql, params SQLiteParameter param) using (SQLiteConnection con = new SQLiteConnection(str) using
25、(SQLiteCommand cmd = new SQLiteCommand(sql, con) con.Open(); cmd.Parameters.AddRange(param); return cmd.ExecuteScalar(); / <summary> / 此方法用来返回每一行数据 / </summary> / <param name="sql">sql语句</param> / <param name="param">参数可变数组</param> / <return
26、s>返回值为SQLiteDataReader类型</returns> public static SQLiteDataReader ExecuteReader(string sql, params SQLiteParameter param) SQLiteConnection con = new SQLiteConnection(str); using (SQLiteCommand cmd = new SQLiteCommand(sql, con) cmd.Parameters.AddRange(param); try con.Open(); return cmd.Execu
27、teReader(System.Data.CommandBehavior.CloseConnection); catch (Exception ex) con.Close(); con.Dispose(); throw ex; / <summary> / 此方法用来返回整个表 / </summary> / <param name="sql">sql语句</param> / <returns>返回值为Datable类型</returns> public static DataTable ExecuteDa
28、teTable(string sql, params SQLiteParameter param) DataTable dt = new DataTable(); using (SQLiteConnection con = new SQLiteConnection(str) using (SQLiteCommand cmd = new SQLiteCommand(sql, con) cmd.Parameters.AddRange(param); using (SQLiteDataAdapter sda = new SQLiteDataAdapter(cmd) /sda.SelectComman
29、d.Parameters.AddRange(param); sda.Fill(dt); return dt; 5.3 登录模块实现using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using Catering.Model;using Catering.BLL;namespace Catering
30、public partial class FrmLogin : Form public FrmLogin() InitializeComponent(); private void btnLogin_Click(object sender, EventArgs e) /帐号和密码不为空 /帐号 和密码 类型 string name = txtLoginName.Text.Trim(); /帐号 string pwd = txtPwd.Text.Trim();/密码 string msg;/要显示的信息 UserInfo per;/对象 if (CheckInput(name, pwd)/调方法
31、判断帐号和密码是否为空 UserInfoBLL bll = new UserInfoBLL(); /调用bll方法验证帐号和密码是否正确 if (bll.IsLogin(name, pwd, out msg, out per) /如果登录成功则在消息窗口显现登录成功的状态并且等待一分钟后显示主窗体 msgDiv1.MsgDivShow(msg, 1, Bind); else msgDiv1.MsgDivShow(msg, 1); void Bind() this.DialogResult = System.Windows.Forms.DialogResult.OK;/登录成功后设置当前登录窗口
32、的返回值状态 /方法验证登录时的帐号和密码是否为空 private bool CheckInput(string name, string pwd) if (string.IsNullOrEmpty(name) msgDiv1.MsgDivShow("帐号不能为空", 1); return false; if (string.IsNullOrEmpty(pwd) msgDiv1.MsgDivShow("密码不能为空", 1); return false; return true; 登录界面如图:5.4 主窗体实现主窗体主要由以下代码来实现:using S
33、ystem;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using Catering.BLL;using Catering.Model;namespace Catering public partial class FrmMain : Form public FrmMain() InitializeComponent
34、(); / <summary> / 获取所有的包间类型 / </summary> / <param name="delFlag">未删除的标识 0 -删除标识是1</param> private void LoadRoomByDelFlag(int delFlag) RoomInfoBLL roomBll = new RoomInfoBLL(); List<RoomInfo> list = roomBll.GetAllRoomByDelFlag(delFlag); for (int i =list.Count-1
35、; i >=0 ; i-) TabPage tp= new TabPage(); tp.Tag = listi;/每个对象绑定到该控件的tag属性中 tp.Text = listi.RoomName; /并且为该控件 ListView lv = new ListView(); /设置ListView控件显示样式- lv.Dock = DockStyle.Fill; lv.LargeImageList = imageList1; lv.View = View.LargeIcon; lv.BackColor = Color.White; lv.ItemSelectionChanged +=
36、new ListViewItemSelectionChangedEventHandler(Listview_ItemSelectionChanged);/为每个listview控件注册一个选项值改变的事件 /为TblPage控件添加ListView控件 tp.Controls.Add(lv); /为tclInfo控件添加TabPate控件 tclInfo.TabPages.Add(tp); /显示当前餐桌的点菜内容 void Listview_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
37、 if (e.IsSelected) DeskInfo desk= e.Item.Tag as DeskInfo; ROrderDeskBLL rdBll = new ROrderDeskBLL(); int orderId = rdBll.GetOrderIdByDeskId(desk.DeskId);/餐桌编号 ROrderInfoProductBLL bllORderProduct = new ROrderInfoProductBLL(); List<ROrderInfoProduct> list = bllORderProduct.GetProductOrderInfo(o
38、rderId); dgvPro.AutoGenerateColumns = false;/禁止自动添加列 dgvPro.DataSource = list;/加载菜单 private void LoadDeskByRoomIdDelFlag(TabPage tp, int delFlag) RoomInfo room = tp.Tag as RoomInfo; ListView lv= tp.Controls0 as ListView; lv.Clear();/清空 /根据包间的id和删除标识,查询该包间所有的餐桌 DeskInfoBLL dkBll = new DeskInfoBLL();
39、List<DeskInfo> list = dkBll.GetAllDeskByRoomIdAndDelFlag(room.RoomId,delFlag); for (int i = 0; i < list.Count; i+) if (listi.DeskState=0)/判断餐桌的状态是0 lv.Items.Add(listi.DeskName, 0); else if (listi.DeskState = 1)/判断餐桌的状态是1 lv.Items.Add(listi.DeskName, 1); else if (listi.DeskState=2)/判断餐桌的状态是2
40、 lv.Items.Add(listi.DeskName, 2); lv.Itemsi.Tag = listi; public event EventHandler evt; public event EventHandler evtFrmMoney; public event EventHandler evtBalance; private void FrmMain_Load(object sender, EventArgs e) /窗体加载的时候第一个问题就是去数据库中查询所有的房间类型,根据房间类型动态加载TblPage控件, LoadRoomByDelFlag(0);/此方法在上面 /
41、获取房间的类型 TabPage tb = tclInfo.TabPages0; /根据房间类型的编号获取该房间内所有的餐桌编号 LoadDeskByRoomIdDelFlag(tb,0); tclInfo.SelectedIndexChanged += new EventHandler(tclInfo_SelectedIndexChanged); /窗体关闭刷新数据 void Frm_Closing(object sender, FormClosingEventArgs e) / lv.Items.Clear(); TabPage tp= tclInfo.SelectedTab; LoadDe
42、skByRoomIdDelFlag(tp,0); / <summary> / TabControl控件的选中项值改变事件 / </summary> void tclInfo_SelectedIndexChanged(object sender, EventArgs e) /选项内容更改时候发生 / TabControl tbInfo = sender as TabControl;/ TabPage tp= tclInfo.TabPagestclInfo.SelectedIndex; /ListView lv = tp.Controls0 as ListView; /lv
43、.Items.Clear(); LoadDeskByRoomIdDelFlag(tp, 0); /会员管理 private void tsslBtnMember1_Click(object sender, EventArgs e) /显示会员窗口 FrmMember frmMember = new FrmMember(); frmMember.ShowDialog(); /商品管理 private void tsslBtnCommodity1_Click(object sender, EventArgs e) FrmCommodity fcd = new FrmCommodity(); fcd.ShowDialog(); /房间管理 private void tsslBtnRoom1_Click(object sender, EventArgs e) FrmRoom fr = new FrmRoom(); fr.ShowDialog(); /顾客开单 private void tsslBtnBilling1_Click(object sender, EventArgs e) TabPage tp = tclInfo.SelectedTab; ListView lv = tp.Controls0 as ListView; if
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大理州强制隔离戒毒所公开招聘辅警5人备考题库及一套答案详解
- 2025年监狱戒毒系统招聘475人备考题库及参考答案详解1套
- 2025年肇庆市德庆县教育局所属公办幼儿园公开招聘合同制工作人员备考题库完整参考答案详解
- 上海海事局2026年关于加强春节期间车辆安全管理的通知
- 建筑施工项目部党支部工作职责
- 推动高质量发展专题研讨发言
- 2025年云南大学附属中学星耀学校招聘备考题库及一套完整答案详解
- 2025年首都医科大学附属北京朝阳医院石景山医院派遣合同制职工招聘备考题库完整参考答案详解
- 2025年凤冈县人民政府行政执法协调监督局关于选聘行政执法人民监督员的备考题库及1套参考答案详解
- 2025年中国科学院力学研究所SKZ专项办公室人员招聘备考题库带答案详解
- 雨水管道工程施工组织设计
- GA 915-2010讯问椅
- 工业区位因素与工业布局教案 高中地理湘教版(2019)必修二
- 篮球英语介绍课件
- 肺结核共45张课件
- 美容岗位职责与标准篇
- 安全告知卡(甲醛 )
- 人教版物理八年级上实验通知单模板
- 保密技术防范试题
- 城市夜景照明设计规范JGJ T 163-2008
- 设备专业三查四定标准(参考)
评论
0/150
提交评论