毕业设计(论文)-信息管理系统_第1页
毕业设计(论文)-信息管理系统_第2页
毕业设计(论文)-信息管理系统_第3页
毕业设计(论文)-信息管理系统_第4页
毕业设计(论文)-信息管理系统_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

系 别:继续教育学院 专业班级:信息管理与信息系统姓 名 : 2012年05月19日北京北京石油化工学院院(系、部):继续教育学院姓 名:年 级:2010专 业:信息管理与信息系统指导教师:教师职称:讲 师 信息管理系统 引言随着中国加入WTO及全球经济一体化进程的加快,世界经济已由工业化经济逐步进入网络信息化时代。在信息时代来临之季,各企业都紧跟时代的脚步,转变着企业的经营模式、管理模式,从传统的人工管理体制,向信息自动化管理体制过渡。与此同时,企业的传统式的管理模式也在逐步向自动化管理模式转变。网络综合信息管理系统系统就是在这样的大背景下应运而生的。信息时代的到来让人们尝到了“信息爆炸”的滋味,信息的大量拥入让企业在信息处理方便应接不暇,传统的办公模式、对信息的处理方法,早已不能满足企业对信息快速、准确的处理的要求。一个企业对信息数据的掌握程度、处理能力,体现了一个企业对市场的敏感程度,数据的真实性、准确性直接决定着企业的发展方向。从传统的办公模式向自动化办公管理模式转变,提高企业的信息处理能力,以增强企业的市场竞争力,成了企业发展过程中的首要问题。在这里我们以一家实体公司为例,为其量身定做的该制药业信息管理系统。金蟾生化股份有限公司是由安徽金蟾药业总公司作为主要发起人,联合中国药科大学、中国中医研究院中药研究所,安徽省科技产业投资有限公司和北京大卫科医药发展有限公司共同发起成立。公司主要从事中成药、中药饮片及西药的制造、加工、销售,兼营科技成果的开发与转让。主导产品是安徽省淮北市金蟾药业总公司独家研制的“金蟾”牌华蟾素注射剂(口服液、片)。该公司是淮北市科技示范企业,安徽省高新技术企业,国家重点高新技术企业,全国质量效益型先进企业,安徽省十佳产学研示范企业之一.1 系统分析1.1 需求分析目前市场上的软件,特别是针对性强的软件,那么在开发的过程中,需求调研以及需求分析的过程是必须的,那么也在整个的开发环节中占有重要的地位。我们不可能闭门开发,而不顾客户的需求,这样无异于闭门造车。当然一个软件的开发过程也就决定了他的试用范围,为什么这么说呢?那是因为在需求分析结束后,在前期框架设计的过程中,我们要符合软件的开发流程以及开发原则,保证其软件功能的扩展性以及可配置性。那么这样,在别的相同的性质的公司推广应用的时候,那么我们就可以通过其配置功能来满足客户我的特殊需求,当然,即使再完美的软件,那么他也不可能在所有的公司部门都适用的,难免在推广的过程中会有这样或者那样的改动,这是难以避免的!通过对公司的前期的需求调研,对该系统要求有以下功能:q 由于操作人员的计算机知识普遍较差,要求有良好的人机界面。q 管理系统用户,由于该系统的使用对象多,要求有较好的权限管理。q 管理企业的会议信息,发文信息、公共信息。q 提供个人业务办公服务。q 对企业系统使用者进行全面管理。q 设置生产数据统计、打印功能。q 对企业制定的采购计划进行管理。q 对库存信息进行管理。q 发布企业的生产指标,对其进行管理。q 强大的生产数据统计功能。q 对数据库的备份操作进行合理的安排,以及当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。q 在相应的权限下,删除数据方便简单,数据稳定性好。q 数据计算自动完成,尽量减少人工干预。q 系统退出。1.2 可行性分析计算机技术的飞速发展,使计算机应用技术在企业管理中也得到了迅速的普及,人们开始通过计算机对实务工作中的各项信息进行管理,以帮助企业提高生产,运作的效率。医药行业中,利用计算机实现医药产,供,销中的各种信息的管理,早已广泛应用于本行业企业管理以及企业内部信息。本系统结合医药行业的产,供,销制度,对药品,原料,客户,供应商的基本信息,原材料的采购,药品的销售,以及库存盘点信息等进行管理,真正实现了企业的信息化管理q 经济性通过该系统对企业内部信息进行全面的自动化的管理,大大提高了企业的办公效率。通过系统对企业生产经营过程中的数据进行全面的管理和统计,避免人为处理各类数据时所产生的各种问题,提高了企业的经济效益,为企业经营决策提供了大量的、权威的数据,使企业的管理进行到科学化、系统化的范筹。技术性网络化的系统管理,使企业管理更加规范,实现了通过网络对信息进行发布、传递、接收等一系列功能。系统中设置的个人办公管理模块,为个人办公提供了一个更为方便的管理平台,大大提高个人办公的工作效率,进而提高整个企业的运行效率。2 系统设计2.1 设计目标本系统是针对中小型企业内部自动化管理的要求进行设计的,主要实现如下目标:q 系统采用人机对话方式,界面清晰、信息查询灵活、方便、快捷、准确、数据存储安全可靠。q 利用系统快速的统计生产的数据报表,并对报表信息进行打印。q 键盘操作,快速响应。q 实现了各类信息发布、信息联系的强大的管理能力。q 实现对企业系统使用者的管理功能等。q 实现了个人业务的信息自动化管理功能。q 对企业的采购计划、库存信息进行管理。q 发布生产指标,对企业生产指标信息进行管理。q 发布会议信息,并对会议信息进行管理。q 对系统用户进行管理。q 为了加强数据保密性,为每个用户设置权限级别。q 系统最大限度地实现了易安装性、易维护性和易操作性。q 系统运行稳定、安全可靠。q 系统对相关人员的审批权限进行合理的分配。q 系统对相关数据的流通进行有效合理的管理。2.2 开发工具及运行环境开发工具及环境:j2sdk+ tomcat 5.0+Eclipse+JBuilder硬件平台:q CPU:P41.8GHz;q 内存:256MB以上。软件平台:q 操作系统:Windows server 2003q J2sdk+tomcat5.0q 数据库:SQL Server 2000。q 浏览器:IE5.0,推荐使用IE6.0。q Web服务器:IIS5.0。q 分辨率:最佳效果1024768像素。2.3 B/S模式分析本系统采用的是B/S模式结构,该模式在目前的软件开发工程中应用比较广,技术也比较成熟,同时从另外一方面也保证了系统的安全性。Browser/Server (简称B/S) 即浏览器/服务器模式,是一种从传统的二层C/S模式即客户机/服务器模式发展起来的新的网络结构模式。B/S模式管理信息系统克服了C/S 模式管理信息系统的不足,其主要表现在: B/S模式提供了一致的用户界面 B/S模式具有很强的开放性 B/S模式的结构易于扩展 B/S模式提供灵活的信息交流和信息发布服务2.4逻辑结构设计本系统数据库采用SQL Server 2000数据库,系统数据库名称为goldtoad。数据库goldtoad中包含97张表。数据库中的数据表请参见附录B。3 系统总体架构3.1 该系统核心功能 完善的权限分配功能 各部门之间的数据共享以及传输 报表打印功能 功能审批 数据挖掘功能3.2模块功能介绍系统主要包括以下功能模块:q 系统登录模块:主要用于用户登录管理。q 销售管理模块:主要是针对销售科人员的相关操作;q 采购管理模块:主要包括请购单、领料单、入库单、物资台帐等供应科的相关操作;q 车间管理模块:主要是针对生产车间人员的相关操作;q 计划管理模块:主要是针对计划科人员的相关操作;q 统计查询模块:主要是包括各个部门各种报表数据的查询统计打印等功能:q 基础数据维护模块:主要提供各种基础数据的录入以及定义等功能;q 系统管理模块:主要是提供给系统管理员对系统的各种管理;3.3开发技术分析A. J2SDKJAVA 是运行在JAVA虚拟机上的程序代码,要开发JAVA程序必须有J2SDK的支持。B. Tomcat 5.0 Tomcat 5.0是企业系统的服务器,大多用于中,小型网站系统开发和学习开发JSP应用程序。Tomcat 的安装是需要JAVA虚拟机的支持的, C Eclipse 是JAVA的一个开发工具,是有IBM等多家公司联合研制开发的一个开源软件,也是目前比较流行的JAVA开发工具。 D Jbuider 是SUN公司开发的一套可视化的JAVA开发工具,目前的JAVA开发也是一部分人采用该工具开发。4.数据库设计本系统数据库采用SQL Server 2000数据库,系统数据库名称为goldtoad,整个系统数据库中共包含了97张表,下面将给出主要数据表概要说明以及主要数据表的结构。为了对本系统中的数据库的数据表有一个更清晰的认识,在这里设计了一个数据表树形结构图,如图所示,该数据表树形结构图包含系统所有数据表。 4.1主要数据表的结构由于本系统的设计以及结构比较复杂,在这里我们的设计主要是成品销售以及仓库部分做一详细说明:u XsProduct (产品基本情况表)产品基本情况表主要用来保存药品的基本信息,产品基本情况表的结构如表所示:u XsSaleMoney (销售基本情况表)销售基本情况表主要用来保存产品有关销售的基本信息,销售基本情况表的结构如表所示:u XsSaler (销售人员基本情况表)销售基本情况表主要用于保存销售人员的基本信息,销售人员基本情况表的结构如表所示:u XsWriteLogList(销售清单基本情况表)销售清单基本情况表主要用于保存对于销售情况的基本信息,销售清单基本情况表的结构设计如表所示:u SysUser (系统用户基本表)系统用户基本表主要用于保存本系统试用用户的基本信息,系统用户基本表的结构如表所示:数据库设计文件goldtoad.pdm如下图所示:数据库设计文件主要是在数据库开发的过程中,利用powerdesigner工具开发。5系统主要功能模块设计5.1系统用户登录设计系统用户登录主要用来验证用户登录是否有效,完成用户的登录功能,系统运行之后,首先运行登录界面,用户输入用户ID号,按键之后,系统根据用户ID自动检测用户是否存在:如果用户不存在,再进行信息提示;否则显示用户的姓名,然后输入该用户的口令和重复口令之后进行系统的登录。该模块的运行结果如图所示:登录界面的文件名称为:index.jsp。主要的代码如下:form name=loginForm action=/login.do?method=init method=post onsubmit=return submitForm(); 相关脚本语言为:function submitForm() if (loginForm.login_name.value.length=0) alert(请输入用户名); return false; if (loginForm.login_pwd.value.length=0) alert(请输入密码); return false; loginForm.submit();相关Java文件代码如下:package com.goldtoad.action;import java.util.ArrayList;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.log4j.Logger;import org.springframework.web.bind.ServletRequestBindingException;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.multiaction.MultiActionController;import com.goldtoad.ResultInfo;import com.goldtoad.SystemApplication;import com.goldtoad.SystemConstants;import com.goldtoad.UserToken;import com.goldtoad.dao.SysPostMenuDAO;import com.goldtoad.dao.SysUserDAO;import com.goldtoad.dao.SysUserPostDAO;import com.goldtoad.po.SysPost;import com.goldtoad.po.SysUser;import com.goldtoad.po.YgEmployee;import com.txtec.utils.RequestUtil;public class LoginControl extends MultiActionController protected static final Logger log = Logger.getLogger(LoginControl.class); private SysUserDAO sysUserDAO; private SysUserPostDAO sysUserPostDAO; private SysPostMenuDAO sysPostMenuDAO; public LoginControl() public void setSysUserDAO(SysUserDAO sysUserDAO) this.sysUserDAO = sysUserDAO; public void setSysUserPostDAO(SysUserPostDAO sysUserPostDAO) this.sysUserPostDAO = sysUserPostDAO; public void setSysPostMenuDAO(SysPostMenuDAO sysPostMenuDAO) this.sysPostMenuDAO = sysPostMenuDAO; /登陆 public ModelAndView init(HttpServletRequest request, HttpServletResponse response) throws ServletRequestBindingException ResultInfo resultInfo = new ResultInfo(); try String loginName = RequestUtil.getStringParameter(request,login_name,); String loginPwd = RequestUtil.getStringParameter(request,login_pwd,); if (loginName.length()=0|loginPwd.length()=0) resultInfo.setErrorInfo(登陆名、密码不能为空); Object objArr = (Object)this.sysUserDAO.findSysUserByNameAndPwd(loginName,loginPwd); if (objArr=null) resultInfo.setIfSuccess(false); resultInfo.setErrorInfo(用户名、密码错误); resultInfo.setReturnUrl(/index.jsp); return new ModelAndView(/loginPrompt.jsp,SystemConstants.PROMPT_INFO,resultInfo); else UserToken userToken = new UserToken(); SysUser sysUser = (SysUser)objArr1; userToken.setSysUser(sysUser); userToken.setYgEmployee(YgEmployee)objArr0);/ userToken.setPostList(sysUserPostDAO.findSysUserPostListByUserId(sysUser.getUserId(); List postList = new ArrayList(); postList.add(sysUser.getPostId().toString(); userToken.setPostList(postList); if (judgeIfSysMgr(userToken.getPostList() userToken.setMenuList(SystemApplication.getMemoryObject(sysMenu); else String postIdStr = getPostIdStrByPostList(userToken.getPostList(); if (postIdStr.length() 0) userToken.setMenuList(this.sysPostMenuDAO.findSysPostMenuList(postIdStr); if (userToken.getMenuList()=null) userToken.setMenuList(new java.util.ArrayList(); request.getSession().setAttribute(SystemConstants.USERTOKEN,userToken); resultInfo.setIfSuccess(true); resultInfo.setIsRedirect(true); resultInfo.setReturnUrl(/main.jsp); return new ModelAndView(/prompt.jsp,SystemConstants.PROMPT_INFO,resultInfo); catch (Exception ex) log.error(用户登陆时出现异常,ex); resultInfo.setErrorInfo(登陆失败!); return new ModelAndView(/prompt.jsp,SystemConstants.PROMPT_INFO,resultInfo); /* * 退出登陆 * param request * param response * return * throws ServletRequestBindingException */ public ModelAndView logout(HttpServletRequest request, HttpServletResponse response) throws ServletRequestBindingException request.getSession().invalidate(); return new ModelAndView(/index.jsp,name,null); /* * 修改密码 * param request * param response * return * throws ServletRequestBindingException */ public ModelAndView modifyPwd(HttpServletRequest request, HttpServletResponse response) throws ServletRequestBindingException String newPwd = RequestUtil.getStringParameter(request,newPwd,); UserToken userToken = (UserToken) (request.getSession().getAttribute(SystemConstants.USERTOKEN); ResultInfo resultInfo = new ResultInfo(); try sysUserDAO.modifyPwd(userToken.sysUser.getUserId(), newPwd); resultInfo.setIfSuccess(true); resultInfo.setErrorInfo(修改成功); resultInfo.setReturnUrl(/waitProcess.jsp); catch (Exception e) resultInfo.setIfSuccess(false); resultInfo.setErrorInfo(修改密码失败); log.error(修改密码失败,e); return new ModelAndView(/prompt.jsp,SystemConstants.PROMPT_INFO,resultInfo); /* * 获取岗位标识字符串 * 暂不考虑一个用户多个岗位的情况 * param postList List * return String */ private String getPostIdStrByPostList(List postList) String postIdStr = ; for (int i=0;ipostList.size();i+) / postIdStr+= (SysPost)postList.get(i).getPostId()+(i!=(postList.size()-1)?,:); postIdStr+= (String)postList.get(i)+(i!=(postList.size()-1)?,:); return postIdStr; /* * 判断是否为系统管理员 * 暂不考虑一个用户多个岗位的情况 * param postList List * return boolean */ private boolean judgeIfSysMgr(List postList) if (postList.contains(1) return true;/ for (int i=0;ipostList.size();i+)/ / if (SysPost)postList.get(i).getPostLevel().intValue()=1)/ return true;/ return false; 5.2销售出库单模块设计销售出库单模块是销售部分的很重要的部分,该模块为成品仓库的库存情况提供基础信息,因此对于这部分基本信息的有效管理是机器重要。该出库单模块的界面如图所示:该模块的原文件为XsOutStorageList.xml,该文件在系统文件中的浏览页面组件结构图如图所示: 该文件的关键代码如下: select a.*,ductName,ductStandard,b.unit,d.parentTypeId as typeId,c.storageName from XsOutStorageList a,XsProduct b left join XsStorage c on b.storageId=c.storageId left join XsProductType d on b.typeId=d.typeId where ductId=ductId and a.outStorageListId=$outStorageListId$ 5.3销售入库单模块设计销售入库单模块是销售部分的很重要的部分,该模块为成品仓库的库存情况提供基础信息,因此对于这部分基本信息的有效管理是机器重要。该出库单模块的界面如图所示:该模块的原文件为XsOutStorageList.xml,该文件在系统文件中的浏览页面组件结构图如图所示:该文件连接数据库文件代码如下: select a.*,ductName,ductStandard,b.unit,d.parentTypeId as typeId,c.storageName from XsOutStorageList a,XsProduct b left join XsStorage c on b.storageId=c.storageId left join XsProductType d on b.typeId=d.typeId where ductId=ductId and a.outStorageListId=$outStorageListId$ 5.4仓库月报模块设计仓库月报模块是在销售入库模块以及销售出库模块数据基础上经过处理的数据结果,该界面的如图所示:该模块的原文件为StorageMonthStatic.xml,该文件在系统文件中的浏览页面组件结构图如图所示:StorageMonthStatic.xml文件主要代码如下所示: select a.*,ductName,ductStandard,b.unit,d.parentTypeId as typeId,c.storageName from XsOutStorageList a,XsProduct b left join XsStorage c on b.storageId=c.storageId left join XsProductType d on b.typeId=d.typeId where ductId=ductId and a.outStorageListId=$outStorageListId$ 总结本系统采用目前最流行的JSP技术+SQL SERVER数据库,在系统中间,调用了不同的类文件以及各种方法来完成相应的功能,在这个过程中自己总结了一些程序开发以及项目完成中所需要的一些技巧以及能力。此功能基本满足了用户的需求,同时由于技术有限难免出现这样或者那样的遗憾,在这里总结如下缺陷:1) 由于该客户的管理方面的特殊需求,产品分为两种:华蟾素以及普药,而且由于其是两个不同的部门,那么就直接的导致了程序的统一性,在做程序的过程中给于两个不同的部门以不同的页面,这样违反了程序开发的一般原则,给以后的扩展性以及移植做成了不少的难度。2) 在该系统中的另一缺陷为:打印页面的调用,打印页面的调用采用的是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论