资源描述
青岛理工大学数据库系统课程设计院(系):计算机工程学院专业:计算机网络工程姓名:班级:学号:题目:酒店职工管理系统起迄日期 :2011.12.26 ? 2012.1.6设计地点 :计算机工程学院机房指导教师 :王金龙第1章前言1.1 课题背景随着全球经济的不断复苏与快速发展,酒店行业在全球与中国地区的发展速度与就业率将远远超出传统型行业。并且随着酒店行业的正规化和竞争的日益加剧,单纯的纸质信息管理已经无法通过有限的人工操作完成。为了节省酒店职工管理成本以及加强酒店管理的规范化,通过酒店职工管理系统可以有效地管理职工的工资发放情况,出勤情况,以及人事调动情况等等。作为劳动力流通比较频繁的酒店行业,人已成为信息化产业的一部分,信息化管理已经成为酒店管理的必经之路。1.2 开发工具本系统在Ubuntu10.10下开发,利用PyQt.QtGui进行前台设计,采用PyQt4.QtSql进行数据库的操作,以mysql作为后台数据库。简介Python(KK英语发音:/pa 9 cn/, DJ英语发音:瀂愀椀B渂)是一种 面向对/象、直译式计算机程序设计语言,由Guido van Rossum于 1989年底发明,第一个公开发行版发行于1991 年。 Python 语法简捷而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是 C/C+ )轻松地联结在一起。常见的一种应用情形是,使用python 快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D 游戏中的图形渲染模块,速度要求非常高,就可以用 C+ 重写。简介Qt 是诺基亚开发的一个跨平台的C+ 图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt 是完全面向对象的,很容易扩展,并且允许真正地组件编程。自从1996 年早些时候, Qt 进入 商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt 也是流行的 Linux 桌面环境 KDE 的基础。基本上, Qt 同 X Window 上的 Motif ,Openwin, GTK 等图形界面库和Windows 平台上的 MFC, OW, VCL ,ATL 是同 类型的东西,但 Qt 具有优良的跨平台特性、面向对象、丰富的 API 、大量的开发文档等优点。简介PyQt 是一个创建 GUI 应用程序的工具包。它是Python 编程语言和 Qt 库的成功融合。 Qt 库是目前最强大的库之一。PyQt 是由 Phil Thompson 开发。 PyQt 实现了一个Python 模块集。它有超过 300 类,将近 6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX, Windows 和Maa PyQt 采用双许可证,开发人员可以选择GPL 和商业许可。在此之前,GPL 的版本只能用在 Unix 上,从 PyQt 的版本4 开始, GPL 许可证可用于所有支持的平台。因为可用的类有很多,他们被分成几个模块。QtCore 模块包含核心的非GUI 功能。该模块用于时间、文件和目录、各种数据类型、流、网址、MIME 类型、线程或进程。 QtGui 模块包含图形组件和相关的类,例如按钮、窗体、状态栏、工具栏、滚动条、位图、颜色、字体等。QtNetwork 模块包含了网络编程的类,这些类允许编写 TCP/IP 和 UDP 的客户端和服务器,他们使网络编程更简单,更轻便。QtXml 包含使用 XML 文件的类,这个模块提供了SAX 和 DOM AP 的实现。 QtSvg 模块提供显示的 SVG 文件的类。可缩放矢量图形(SVG 是一种用于描述二维图形和图形应用程序的 XML 语言。 QtOpenGL 模块使用 OpenGl 库渲染 3D 和 2D图形,该模块能够无缝集成 Qt 的 GUI 库和 OpenGL 库。 QtSql 模块提供用于数 据库的类。简介MySQL !一个小型关系型数据库管理系统,开发者为瑞典MySQIAB 公司。在2008年1月16 号被 Sun 公司收购。而 2009年, SUN 又被 Oracle 收购。 MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL勺结 构化查询语言”。SQL “SQL 是用于访问数据库的最常用标准化语言。MySQ 软件采用了GPL (GNU 通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。开发环境搭建1. 从下载 ubuntu10.10 ,按要求安装。2. 进入 ubuntu ,打开 terminal 按以下内容输入。sudo apt-getin stallpyth on-pippyth on 2.6-devlibxext-devpyth on-qt4 qt4-dev-tools build-esse ntialpip in stall PyQtpip in stall SIPcd /build/SIPpyth on 2.6 con figure.pymakesudo make in stallcd /build/PyQtpyth on 2.6 con figure.pymakesudo make in stall第 2 章需求分析2.1 任务概述系统目标本系统的设计原则:( 1) 实用性原则:可以为用户提供实用的,方便的操作服务,按照酒店职工管理的基本需求设计。( 2) 可靠性原则:保证了信息的安全可靠性。( 3) 友好性原则:本系统在用户进行操作时会有相应的提示和反馈,对于用户的操作会做出正确性判断并给出提醒。采用选项卡式布局,方便用户的操作。( 4) 可扩展性,本系统采用了开源模式,任何人都可以阅读并修改UI及 添加需要的功能类。用户特点本系统主要面向各大酒店,主要用于人力资源部的人员登记、考勤记录和财资管理。务部的工2.2 系统的功能需求221 系统的功能需求 :本系统有一种角色:管理员1?管理员:新进人员登记;当月工资发放记录查询修改;查看部门人员名单;由姓名进行人员模糊查询;查询当天人员出勤情况。功能模块 :本系统主要负责管理模块,各个子模块功能需求如下:(1) 人员部门登记模块功能需求管理员可以登记人员的部门调动等基本信息。可以该信息进行添加、删除、修改。(2) 人员考勤记录模块功能需求管理员可以记录或修改每天人员的考勤记录。(3) 人员工资发放模块功能需求管理员可以记录、修改、删除每个员工当月工资发放情况。(4) 人员查找模块需求功能需求管理员根据姓名模糊查找员工。2.3 系统的性能需求本系统适合于人员在500人以内的酒店使用,非员工查询操作软件提供开源升级服务。2.4 系统的数据需求根据各模块功能需求可以进一步确定数据需求,具体如下:(1) .(2) .人员部门调动模块该模块主要管理人员与部门的调动关系。需要表示具体的调动信息,应动人,调动日期,调动部门等数据项。人员日常考勤模块该模块主要管理人员日常考勤记录。需要表示具体的考勤信息,应包含考勤时间,考勤结果等数据项。包含调考勤人,(3) . 人员工资发放模块该模块主要管理人员每月的工资发放记录。需求表示具体的发放记录,应包含发放人,发放时间,发放金额,发放结果等数据项。数据流图提交人事调动申请第 3 章系统总体设计3.1 系统功能设计系统总体功能各子模块的设计部门调动模块工资发放模块1添修删加改除工工工资资资发发发放放放记记记录录录考勤记录模块1查看当天考添加考修改考勤删除考勤情况勤记录记录勤记录第四章数据库设计4.1 数据库的概念设计查看当月工资发放情况根据系统的需求分析和各个功能模块的数据需求分析,可以得出的实体有:人员、职务、考勤情况、工资发放情况、部门共计五个实体。系统 E-R 图职位日期工资发n人员记录考勤情况发放情况放金额调动日期部门4.2 表逻辑结构设计421 表汇总以下给出该系统中所使用的所使用的表的简单描述:表名简要说明employeedepartme ntcategoriesreleasecpositi onestaffi ngsalaryreleaseatte ndance个人基本信息表,存放个人基本信息部门基本信息表,存放部门基本信息出勤基本情况表,存放出勤基本信息工资发放情况表,存放工资发放基本信息职务表,存放职务基本信息。人事记录表,存放人事调动记录。工资发放记录,存放工资发放记录。考勤记录表,存放考勤记录。422 表逻辑结构设计(1)employee( 个人基本信息表逻辑结构)列名数据类型可否为空简介IDIn teger不能为空主键,职工 IDNameVarchar(20 )不能为空职工姓名Positi onidIn teger不能为空外键,职位 IDAgeIn teger不能为空年龄SexVarchar(10 )不能为空性别TelVarchar(20 )不能为空联系电话(2)department( 部门基本信息表逻辑结构 )列名数据类型可否为空简介IDIn teger不能为空主键,部门 IDDesVarchar(20 )不能为空部门描述(3)categories( 出勤基本情况表逻辑结构 )列名数据类型可否为空简介IDIn teger不能为空主键,出勤情况 IDDesVarchar(20 )不能为空出勤情况描述(4) releasee ( 工资发放情况表逻辑结构 )列名数据类型可否为空简介IDIn teger不能为空主键,工资发放情况IDDesVarchar(20 )不能为空工资发放情况描述(5) positione ( 职务表逻辑结构 )列名数据类型可否为空简介IDIn teger不能为空主键,职务 IDDesVarchar(20 )不能为空职务描述情况。Mon thlysalaryIn teger不能为空月薪(6) staffing( 人事记录表逻辑结构 )
展开阅读全文