实验室设备管理系统(课程设计报告)(共59页)

上传人:3626209****147198... 文档编号:56038254 上传时间:2022-02-19 格式:DOCX 页数:59 大小:1.13MB
收藏 版权申诉 举报 下载
实验室设备管理系统(课程设计报告)(共59页)_第1页
第1页 / 共59页
实验室设备管理系统(课程设计报告)(共59页)_第2页
第2页 / 共59页
实验室设备管理系统(课程设计报告)(共59页)_第3页
第3页 / 共59页
资源描述:

《实验室设备管理系统(课程设计报告)(共59页)》由会员分享,可在线阅读,更多相关《实验室设备管理系统(课程设计报告)(共59页)(59页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上西安文理学院 软件学院课程设计报告设计名称: 实验设备管理系统设计题目: 实验设备管理系统专业班级: 软件工程一班学生姓名: 张兴华 陈琛 任小艳学生成绩:指导教师(职称):甘田(教授)课题工作时间: 2013 年 12 月 20 日至 2014 年 1 月 8 日专心-专注-专业软件学院课程设计任务书学生姓名张兴华陈琛 任小艳学号 9专业班级软件工程一班设计题目实验设备管理系统内容概要:每学年要对实验室设备使用情况进行统计、更新,其中:(1)对于已彻底损坏的作报废处理,同时详细记录有关信息。(2)对于有严重问题(故障)的要即使修理,并记录修理日期、设备名、修理厂家、

2、修理费、责任人等。(3)对于急需但又缺少的设备需以“申请表”的形式送交上级领导请求批准购买。新设备购入后要立即进行设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等),同时更新申请表的内容。(4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段(某日期之前)查询。文献资料:Java 面向对象程序设计,耿祥义、张跃平编著,清华大学出版社SQL Server 数据库教程(2008 版 ), 郑阿奇,刘启芬,顾韵华主编,人民邮电出版社设计要求:(1)所有工作由专门人员负责完成,其他人不得任意使用。(2)每件设备在作入库登记时均由系统按类别自动顺序编

3、号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。(3)本系统的数据存储至少应包含:设备记录、修理记录、报废记录、购买申请。(4)本系统的输入项至少包含:新设备信息、修理信息、申请购买信息、报废信息、具体查询统计要求。(5)本系统的输出项至少包含:设备购买申请表、修理/报废注销/设备资金统计表。工作期限:设计工作自 2013 年 12 月 20 日至 2014 年 01 月 08 日止。指导教师: 甘田 院主任:日 期:2014 年 01 月 06 日课程设计:实验室设备管理系统一、 项目管理:阶段 时间 任务 参与人员 产生文档项目管理 2013.12.21 确定课题,组织组

4、员,合理 分工明细及项目进分工。 程表需求分析 2013.12.22 确定软件的功能和需求、性 需求规格说明书能需求和运行环境约束,编 确认测试准则制软件需求规格说明、软件系统的确认测试准则概要设计 建立软件系统的总体结构和 概要设计说明书2013.12.23 模块间的关系,定义各功能 组装测试计划模块的接口,涉及全局数据库,规定涉及约束,制定组装测试计划。数据库设计 2013.12.24 根据概要设计对本软件所必 数据库设计说明书须的数据库进行分析及设计详细设计 2013.12.25 对概要设计产生的功能模块 模块测试方案逐步细化,形成若干个可编程的程序模块编码 2013.12.26 根据详

5、细设计文档将详细设 源程序清单2014.01.01 计转化为所要求的编程语言或数据库语言的程序,并对这些程序进行调试和程序单元测试,验证程序模块与详细设计文档的一致性测 单元测试 2014.01.02 采用白盒测试技术进行如下 单元测试报告试 2014.01.03 测试:1. 模块接口测试;2. 模块局部数据结构测试;3. 模块边界条件测试;4. 模块中所有独立执行通路测试;5. 模块的各条错误处理通路测试。综合测试 2014.01.04 发现与接口有关的各种错误 综合测试报告确认测试 2014.01.04 检查软件是否满足软件需求 确认测试报告说明书中的确认标准2014.01.04 完善程序

6、流图 项目开发总结报告项目实施2014.01.04书写软件使用说明书和用户手册最终用户手册二、 软件需求分析1. 引言1.1编写目的 此需求说明书详细陈述了“实验设备管理系统”的所提供各项功能。其中包括用户的功能性需求以及非功能性需求,为用户提供完整且较详尽的系统功能运作 蓝图。同时为设计人员提供一个完整的、可靠的设计约束,以便高质量地设计、编写代码,完成系项目预期目标。还给开发人员提供了参考。此需求说明书的预期读者为项目经理、设计人员、开发人员、用户等。1.2背景说明:a.待开发的软件系统的名称:实验设备管理系统;b.本项目的任务提出者:西安文理学院;c.本项目的开发者:张兴华 陈琛 任小艳

7、; d.本项目的用户:西安文理学院相关管理人员; e.该软件系统同其他系统或其他机构的基本的相互来往关系:与西安文理学院财务管理软件系统有相应接口。1.3定义LEM:实验室设备管理系统(Laboratory Equipment Management);2. 任务概述2.1目标 随着高校规模的扩大,实验室及仓库的增多,人工管理实验设备已变得过于低效,为了解决这一问题,高校实验室设备管理系统将实现设备管理的自动化。 实验室设备管理系统将贯穿于设备从购进到报废的整个流程的管理过程,帮助管理员高效地管理整个高校的所有设备,并给上级领导提供一个审核监督管理的平台。2.2用户的特点此软件的使用用户为: 西

8、安文理学院相关管理人员。 因此,我们通常可以认为:用户具有较高的文化水平和学习能力,并且具有一定的计算机使用水平和经验,可以了解整个 LEM 系统的工作流程及注意事项,与此同时对于 LEM 系统的基本操作,可以无困难执行。在参考用户手册的情况下可以无需进行专业培训,即可顺利使用本系统。3. 需求规定3.1 功能性需求规定3.1.1 系统整体功能层次图3.1.2 业务流程分析数据流图:流程详细说明:(1) 仓库管理员统计仓库中设备的库存量,找出库存量不足的设备,填写购买申请表,领导对此申请表进行审核,审核通过后,产生购买报表交给购买员。(2) 购买员将购买的设备及购买信息交给购买登记员,由他进行

9、购买登记。购买登记员查询申请审核表,将设备分配到各仓库。(3) 仓库管理员对购买的设备进行入库登记,出库登记。(4) 实验室管理员负责对报废的设备进行报废登记并处理,找出要维修的设备 填写维修申请表,领导对维修申请表进行审核,通过后产生维修报表交给 维修员,维修员将设备送交某一修理厂家进行维修。(5) 设备维修完后,交还原实验室,由实验室管理员进行维修登记。3.1.2 系统用户列表 高校 LEM 面向五类用户:系统管理员,购买登记员,仓库管理员,实验室管理员,上级领导,这几类用户通过高校 LEM 系统进行设备管理上的交流,而该系统为用户提供不同的功能。【1】系统管理员1注册本系统用户; 2注销

10、本系统用户; 3数据库的维护; 4本人信息维护; 【2】购买登记员1 将购买员提交的购买信息进行登记,记录有关设备基本信息,设备的购买信 息如价格,数量等;2查询领导的购买申请审核信息;3根据审核信息将购买的设备分配到相应的仓库,将有关详单提交仓库管理员,4本人信息维护。 【3】仓库管理员1 根据购买登记员提交的详单进行入库登记;2 根据实验室管理员提交的详单进行出库登记;3 查询统计本仓库中的所有设备的库存量,统计出库存量不足的设备;4 根据统计信息进行购买申请。5 本人信息维护; 【4】实验室管理员1 管理本实验室中各设备,找出需要维修的设备,进行维修申请;2 对于不能维修的设备,要进行报

11、废记录;3 查询统计本实验室设备拥有量,统计出数量不足的设备,产生详单提交仓库管理员;4 对于已维修完成的设备,根据维修员提交维修单进行维修记录;5 本人信息维护。 【5】上级领导1 查看购买申请表,对申请进行审核,审核后产生购买订单交于购买员;2 查看维修申请表,对申请进行审核,审核后产生维修订单交于维修员;3 个人信息维护。3.2 软件系统数据字典3.21 数据流条目1 登陆信息输入:设备管理员输出:身份验证 1描述:登陆信息=用户名+密码+登陆权限2 查询信息输入:合法人员对设备的查询操作输出:设备信息表描述:查询信息=设备名/型号/类别/购置日期3 维修信息输入:所需维修设备的信息输出

12、:确定维修设备的记录描述:维修信息=设备名+修理日期+修理厂家+修理费+负责人4 新设备输入:购买设备的信息输出:确定购买的新设备的记录描述:新设备=类别+设备名+型号+规格+单价+数量等5 报废设备输入:所需报废的设备的信息输出:报废的设备记录描述:报废设备=类别+设备名+型号等6 审核信息输入:审核 3输出:上级领导描述:审核信息=报废设备信息/新设备购买记录3.22 加工条目身份验证 1,统计查询 2.1,维修 2.2,购买 2.3,报废 2.4,生产报表 3.1,审核 3.23.23 文件条目7 登陆表输入:身份验证 1输出:身份验证 1数据结构:用户名+密码+登陆权限8 设备基本信息

13、表输入:统计查询 2.1数据结构:类别+设备名+型号+规格等9 维修记录表输入:统计查询 2.1,维修 2.2输出:统计查询 2.1数据结构:设备名+修理日期+修理厂家+修理费+责任人等10 新设备表输入:统计查询 2.1,购买 2.2输出:统计查询 2.1数据结构:类别+设备名+型号+规格+单价+数量+生产厂家+购买人等11 报废记录表输入:报废 2.4,统计查询 2.1,生产报表 3.1输出:统计查询 2.1,生产报表 3.1数据结构:类别+设备名+型号等12 申请表输入:统计查询 2.1,生产报表 3.1输出:统计查询 2.1,生产报表 3.1,购买 2.3数据结构:设备名+型号+规格+

14、数量+负责人3.3 非功能新需求规定3.3.1 精度软件的输入精度:a.输入的数字信息,精度保留到小数点后两位。b.输入的公司或单位名称,必须是全称,不可以是简称或者是简写。e.输入的可选信息时,以下拉框内容为备选选择,不可以自行输入。3.3.2 时间特性需求对于该软件的时间特性要求为:a.响应时间:小于 7 秒钟;b.更新处理时间:小于 6 秒钟;3.3.3 灵活性 该软件的灵活性的要求(即当需求发生某些变化时,该软件对这些变化的适应能力): a.运行环境的变化:可以实现跨平台操作; b.同其他软件的接口的变化:设计多元化接口,以实现与其他软件接口之间的通信;c.精度和有效时限的变化:统一修

15、改数据精度、以及有效时限的数据库内容;3.3.4 可靠性 本系统的可靠性是指:系统在规定的条件下、在规定的时间内完成规定的功能的能力。影响可靠性的操作流程有:1. 新增用户时可能出现信息无法提交的情况。2. 设备购买登记阶段,可能出现设备信息无法写入,购买信息登记错误。由于本系统是 LEM 系统,故对于可靠性的要求较高。具体要求:1. 全部录入信息以各纸质详单,如购买详单,维修详单等为准;2. 数据的正确性需经过多方核查。 3. 自动对于各种信息数据进行备份。4. 报表生成与纸质、电子报表相一致。3.4 输入输出要求输入: a. 输入数据数字信息符合输入精度要求 b. 输入可选信息完全使用下拉

16、框完成输出:a. 输出数据符合输出精度要求b. 输出数据格式字体大小统一3.4 故障处理要求当服务器死机时,要求服务器必须在 2 小时内恢复,数据必须在 3 小时内恢复。4. 运行环境规定4.1设备 运行该软件所需要的硬设备,包括:【1】 处理器型号:Intel Core2;【2】 内存容量:1.00G; 【3】 硬盘:120G4.2支持软件【1】 操作系统:windows2000 操作系统以及以上版本;【2】 数据库:Sql Server 2008 R2 版数据库【3】 MyEclipse 开发工具5 文化和政策需求不得引起用户文化上的冲突,不能出现敏感和不应出现的字眼和图片。符合 国家基本

17、法律法规以及最新的国家营销以及市场战略上的相关政策,不得与我国社会主义政策相违背。三:软件设计1 实验室设备管理系统模块结构图2 界面设计(1) 登录界面(2)任意注册管理人员登录后界面3 实验室设备管理系统数据设计4 管理系统其中的 3 个模块的详细设计1 上级领导操作模块设备管理员操作模块3 统功能操作模块开始用户登陆N合法性检查Y 有效登陆信息?身份验证操作界面结束5 数据库设计1. 模型图2. E-R 图3. 物理实现(1) 实体表【1】 用户表(UserInfo)字段 类型 备注uId Varchar(15) 用户名,主键uName Varchar(15) 姓名uPasswd Var

18、char(15) 密码uPosition Varchar(15) 身份,主键【2】 仓库管理员表(StoreManagerInfo)字段 类型 备注uId Varchar(15) 用户名,主键sId Varchar(15) 仓库编号,外键约束于仓库表【3】实验室管理员表(StoreManagerInfo)字段 类型 备注uId Varchar(15) 用户名,主键lId Varchar(15) 仓库编号,外键约束于实验室表【4】仓库表(StoreInfo)字段 类型 备注sId Varchar(15) 仓库编号,主键sName Varchar(15) 仓库名称sPlace Varchar(15

19、) 所在校区【5】实验室表(LabInfo)字段 类型 备注lId Varchar(15) 实验室编号,主键lName Varchar(15) 实验室名称lPlace Varchar(15) 所在校区【5】设备表(EquipInfo)字段 类型 备注eId Varchar(15) 设备编号,主键eName Varchar(15) 设备名称eStandard Varchar(15) 规格型号eProCompany Varchar(15) 生产厂商eType Varchar(15) 设备类型【6】固定资产表(PropertyInfo)字段 类型 备注pId Varchar(15) 固定资产编号,主

20、键eId Varchar(15) 所属设备编号,外键约束于设备表lId Varchar(15) 所在实验室编号,外键约束于实验室表(2) 关系表【1】 入库登记表(InInfo)字段 类型 备注eId Varchar(15) 设备编号,主键,外键约束于设备表sId Varchar(15) 仓库编号,主键,外键约束于仓库表iDate DateTime 入库时间,主键iNum int 入库数量【2】出库登记表(OutInfo)字段 类型 备注eId Varchar(15) 设备编号,主键,外键约束于设备表sId Varchar(15) 仓库编号,主键,外键约束于仓库表lId Varchar(15)

21、 实验室编号,主键,外键约束于实验室表iDate DateTime 出库时间,主键iNum int 出库数量(3) 记录表【1】购买申请表(BuyApplyInfo)字段 类型 备注baId Varchar(15) 序列号,主键eId Varchar(15) 设备编号,外键约束于设备表smName Varchar(15) 申请人,外键约束于仓库管理员表baDate DateTime 申请时间baNum Int 申请数量【2】维修申请表(MaintainInfo)字段 类型 备注maId Varchar(15) 序列号,主键pId Varchar(15) 固定资产编号,外键约束于固定资产表lmN

22、ame Varchar(15) 申请人,外键约束于实验室管理员表maDate DateTime 申请时间【3】购买登记表(BuyInfo)字段 类型 备注bId Varchar(15) 序列号,主键eId Varchar(15) 设备编号,外键约束于设备表bPrice Money 购买单价bDate DateTime 购买时间bNum Int 购买数量【4】维修记录表(MaintainInfo)字段 类型 备注mId Varchar(15) 序列号,主键pId Varchar(15) 固定资产编号,外键约束于固定资产表mDate DateTime 维修时间【5】报废记录表(DiscardInf

23、o)字段 类型 备注dId Varchar(15) 序列号,主键pId Varchar(15) 固定资产编号,外键约束于固定资产表dDate DateTime 报废时间【6】 购买审核表(BuyCheckInfo)字段 类型 备注bcId Varchar(15) 序列号,主键baId Varchar(15) 申请序列号,外键约束于购买申请表olName Varchar(15) 审核人,外键约束于上级领导表bcDate DateTime 审核时间【7】维修审核表(MaintainCheckInfo)字段 类型 备注mcId Varchar(15) 序列号,主键maId Varchar(15) 申

24、请序列号,外键约束于维修申请表olName Varchar(15) 审核人,外键约束于上级领导表mcDate DateTime 审核时间四、编码与单元测试1、用户登录界面:package com.niit.gui_event;import com.niit.logical.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Login extends JFrame /*/private static final long serialVersionUID = 1L;/ 控件声明private

25、 JLabel lPosition, lName, lPasswd, lTitle;private JComboBox cbPosition, cbName;private JPasswordField pfPasswd;private JButton bConfirm, bCancel;private Container con;private JPanel pCon;private User info;public Login() super(用户登录);/ 控件初始化con = getContentPane();lPosition = new JLabel(身 份:);lName = n

26、ew JLabel(用户名:);lPasswd = new JLabel(密 码:);lTitle = new JLabel(实验室设备管理系统);lTitle.setForeground(Color.RED);pfPasswd = new JPasswordField();bConfirm = new JButton(确定);bCancel = new JButton(取消);String aPosition = new String 系统管理员, 仓库管理员, 实验室管理员,购买登记员, 上级领导 ;cbPosition = new JComboBox(aPosition);int ind

27、ex = cbPosition.getSelectedIndex();if (index = 0) info = new Administration(); else if (index = 1) info = new StoreManager(); else if (index = 2) info = new LabManager(); else if (index = 3) info = new BuyManager(); else info = new OverLeader();/ 数组初始化pCon = new JPanel5;String cName = info.getIdByPo

28、sition(info);cbName = new JComboBox(cName);for (int i = 0; i pCon.length; i+)pConi = new JPanel();public void launch() / 控件添加con.setLayout(new GridLayout(5, 1);pCon0.add(lPosition);pCon0.add(cbPosition);pCon1.add(lName);pCon1.add(cbName);pCon2.add(lPasswd);pCon2.add(pfPasswd);pCon3.add(bConfirm);pCo

29、n3.add(bCancel);pCon4.add(lTitle);add(pCon4);for (int i = 0; i pCon.length - 1; i+)con.add(pConi);/ 控件设置pfPasswd.setEchoChar(*);pfPasswd.setColumns(10);setBounds(400, 100, 400, 400);setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/ 添加监听器cbPosition.addActionListener(new ListenAction()

30、;bConfirm.addActionListener(new ListenAction();bCancel.addActionListener(new ListenAction();pfPasswd.addKeyListener(new ListenKey();/ 定义按钮,下拉框处理器class ListenAction implements ActionListener public void actionPerformed(ActionEvent e) if (e.getSource() = bConfirm) /点击确定按钮info.setuId(cbName.getSelected

31、Item().toString();info.setuPasswd(new String(pfPasswd.getPassword();info.setuPosition(cbPosition.getSelectedItem().toString();if (info.login(info) new Main(info).launch();setVisible(false);pfPasswd.setText(null); else JOptionPane.showMessageDialog(new Login(), 用户名,密码或身份错误);pfPasswd.setText(null); el

32、se if (e.getSource() = cbPosition) /身份下拉框改变时int index = cbPosition.getSelectedIndex();if (index = 0) info = new Administration(); else if (index = 1) info = new StoreManager(); else if (index = 2) info = new LabManager(); else if (index = 3) info = new BuyManager(); else info = new OverLeader();Stri

33、ng cName = info.getIdByPosition(info);/刷新用户名列表cbName.removeAllItems();for (int i = 0; i cName.length; i+)cbName.addItem(cNamei); else System.exit(0);pfPasswd.setText(null);/定义键盘处理器class ListenKey extends KeyAdapter SuppressWarnings(static-access)public void keyPressed(KeyEvent e) if (e.getKeyText(e.

34、getKeyCode().compareToIgnoreCase(ENTER) =0) bConfirm.doClick();2、主界面:package com.niit.gui_event;import javax.swing.*;import com.niit.logical.*;import java.awt.event.*;public class Main extends JFrame /*/private static final long serialVersionUID = 1L;private JTabbedPane tp;private JPanel p;private U

35、ser info;public Main() super(实验室设备管理系统);tp = new JTabbedPane();p = new JPanel8;public Main(User info)this();this.info=info;p0 = new UserManage();p1 = new EquipIn();p2 = new EquipOut();p3 = new Register(info);p4 = new Apply(info);p5 = new Checks(info);p6= new Search();p7=new PasswdModyfy(info);public

36、 void launch() tp.addTab(用户管理, p0);tp.addTab(设备入库, p1);tp.addTab(设备出库, p2);tp.addTab(设备登记, p3);tp.addTab(设备申请, p4);tp.addTab(审核申请, p5);tp.addTab(统计查询, p6);tp.addTab(个人信息维护, p7);if(info instanceof Administration)tp.setEnabledAt(1, false);tp.setEnabledAt(2, false);tp.setEnabledAt(3, false);tp.setEnabl

37、edAt(4, false);tp.setEnabledAt(5, false);tp.setEnabledAt(6, false);else if(info instanceof StoreManager)tp.setEnabledAt(0, false);tp.setEnabledAt(3, false);tp.setEnabledAt(5, false);tp.setSelectedIndex(1);else if(info instanceof LabManager)tp.setEnabledAt(0, false);tp.setEnabledAt(1, false);tp.setEn

38、abledAt(2, false);tp.setEnabledAt(5, false);tp.setSelectedIndex(3);else if(info instanceof BuyManager)tp.setEnabledAt(0, false);tp.setEnabledAt(1, false);tp.setEnabledAt(2, false);tp.setEnabledAt(4, false);tp.setEnabledAt(5, false);tp.setSelectedIndex(3);else if(info instanceof OverLeader)tp.setEnab

39、ledAt(0, false);tp.setEnabledAt(1, false);tp.setEnabledAt(2, false);tp.setEnabledAt(3, false);tp.setEnabledAt(4, false);tp.setSelectedIndex(5);getContentPane().add(tp);setSize(1280, 780);setVisible(true);addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););3、

40、设备申请:package com.niit.gui_event;import javax.swing.*;import com.niit.logical.*;import java.awt.*;import java.awt.event.*;import com.niit.data.*;import java.sql.*;public class MaintainApply extends JPanel /*/private static final long serialVersionUID = 1L;private JLabel lpId;private JTextField tf;pri

41、vate JButton bApply, bAgain, bDelete;private JPanel pUp, pDown;private JTable t;private JScrollPane jsp;private User user;private LabManager lm;private MaintainApplyData maInfo;public MaintainApply(User user) super(new BorderLayout();this.user = user;lpId = new JLabel(固定资产编号);tf = new JTextField();t

42、f.setColumns(15);bApply = new JButton(申请);bAgain = new JButton(重置);bDelete = new JButton(取消申请);pUp = new JPanel();pDown = new JPanel();lm = new LabManager();maInfo = new MaintainApplyData();String head = new String 序列号, 固定资产编号, 申请人, 申请时间 ;Object data = lm.getMaintainApplyAll();t = new JTable(data, h

43、ead);t.setRowHeight(25);jsp = new JScrollPane(t);pUp.add(lpId);pUp.add(tf);pUp.add(bApply);pUp.add(bAgain);pDown.add(bDelete);add(pUp, BorderLayout.NORTH);add(jsp, BorderLayout.CENTER);add(pDown, BorderLayout.SOUTH);/ 添加监听器bApply.addActionListener(new ListenButton();bAgain.addActionListener(new List

44、enButton();bDelete.addActionListener(new ListenButton();/ 处理器class ListenButton implements ActionListener public void actionPerformed(ActionEvent e) if (e.getSource() = bApply) / 申请按钮maInfo.setpId(new Integer(tf.getText();maInfo.setuId(user.getuId();maInfo.setDate(new Date(System.currentTimeMillis()

45、;lm.add(maInfo);bAgain.doClick(); else if (e.getSource() = bAgain) / 重置按钮tf.setText(null); else if (e.getSource() = bDelete) / 删除按钮int selectedIndex = -1;for (int i = 0; i t.getRowCount(); i+) if (t.isRowSelected(i) = true)selectedIndex = i;if (selectedIndex = -1) JOptionPane.showMessageDialog(null,

46、 请先选择某一项!);return; else int option = JOptionPane.showConfirmDialog(null, 是否确定删除?,提示, JOptionPane.YES_NO_CANCEL_OPTION);if (option = JOptionPane.YES_OPTION) maInfo.setId(new Integer(t.getValueAt(selectedIndex,0).toString();lm.delete(maInfo);/ 刷新数据表remove(jsp);String head = new String 序列号, 固定资产编号, 申请人

47、, 申请时间 ;Object data = lm.getMaintainApplyAll();t = new JTable(data, head);t.setRowHeight(25);t.validate();jsp = new JScrollPane(t);add(jsp, BorderLayout.CENTER);validate();4、设备入库:package com.niit.gui_event;import java.awt.BorderLayout;import java.awt.Cursor;import javax.swing.*;import java.awt.*;imp

48、ort com.niit.logical.*;import java.awt.event.*;import java.sql.Date;import com.niit.data.*;public class EquipIn extends JPanel /*/private static final long serialVersionUID = 1L;private JLabel leId, lsId, liNum, lPara;private JTextField tfiNum;private JComboBox cbeId, cbsId;private JButton bIn, bAga

49、in, bDelete;private JPanel pUp, pDown;private JScrollPane jsp;private JTable t;private StoreManager sma;private InData inInfo;public EquipIn() super(new BorderLayout();/ 设置布局管理器/ 控件初始化leId = new JLabel(设备编号);lsId = new JLabel(仓库编号);liNum = new JLabel(入库数量);lPara = new JLabel(参数设置);lPara.setForegroun

50、d(Color.RED);tfiNum = new JTextField();tfiNum.setColumns(10);bIn = new JButton(入库);bAgain = new JButton(重置);bDelete = new JButton(删除);pUp = new JPanel();pDown = new JPanel();sma = new StoreManager();inInfo = new InData();String eId = sma.geteId();String sId = sma.getsIdAll();cbeId = new JComboBox(eI

51、d);cbsId = new JComboBox(sId);String head = new String 设备编号, 仓库编号, 入库时间, 入库数量 ;Object data = sma.getInAll();t = new JTable(data, head);t.setRowHeight(25);jsp = new JScrollPane(t);/ 添加控件pUp.add(leId);pUp.add(cbeId);pUp.add(lsId);pUp.add(cbsId);pUp.add(liNum);pUp.add(tfiNum);pUp.add(bIn);pUp.add(bAgai

52、n);pUp.add(lPara);pDown.add(bDelete);add(pUp, BorderLayout.NORTH);add(jsp, BorderLayout.CENTER);add(pDown, BorderLayout.SOUTH);/ 添加监听器bIn.addActionListener(new ListenButton();bAgain.addActionListener(new ListenButton();bDelete.addActionListener(new ListenButton();lPara.addMouseListener(new ListenMou

53、se();/ 定义按钮处理器class ListenButton implements ActionListener public void actionPerformed(ActionEvent e) if (e.getSource() = bIn) / 点击入库按钮inInfo.seteId(cbeId.getSelectedItem().toString();inInfo.setsId(cbsId.getSelectedItem().toString();inInfo.setDate(new Date(System.currentTimeMillis();inInfo.setNum(ne

54、w Integer(tfiNum.getText();sma.add(inInfo);bAgain.doClick(); else if (e.getSource() = bAgain) / 点击重置按钮tfiNum.setText(null); else if (e.getSource() = bDelete) / 点击删除按钮int selectedIndex = -1;for (int i = 0; i t.getRowCount(); i+) if (t.isRowSelected(i) = true)selectedIndex = i;if (selectedIndex = -1)

55、JOptionPane.showMessageDialog(null, 请先选择某一项!);return; else int option = JOptionPane.showConfirmDialog(null, 是否确定删除?,提示, JOptionPane.YES_NO_CANCEL_OPTION);if (option = JOptionPane.YES_OPTION) inInfo.seteId(String) t.getValueAt(selectedIndex,0);inInfo.setsId(String) t.getValueAt(selectedIndex,1);inInf

56、o.setDate(Date) t.getValueAt(selectedIndex,2);sma.delete(inInfo);/ 刷新数据表remove(jsp);String head = new String 设备编号, 仓库编号, 入库时间, 入库数量 ;Object data = sma.getInAll();t = new JTable(data, head);t.setRowHeight(25);t.validate();jsp = new JScrollPane(t);add(jsp, BorderLayout.CENTER);validate();/ 定义鼠标处理器clas

57、s ListenMouse extends MouseAdapter public void mouseEntered(MouseEvent e) lPara.setCursor(new Cursor(Cursor.HAND_CURSOR);public void mousePressed(MouseEvent e) new ParameterSet();5、用户管理package com.niit.gui_event;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.*;import j

58、ava.awt.*;import javax.swing.*;import com.niit.logical.*;public class UserManage extends JPanel /*/private static final long serialVersionUID = 1L;private JLabel lArray = new JLabel7;private JButton bArray = new JButton3;private JTextField tfArray = new JTextField2;private JPasswordField pfArray = n

59、ew JPasswordField2;private JPanel pArray = new JPanel4;private JComboBox cbPosition, cbSL;private JScrollPane jsp;private JTable t;private Administration Admin;private StoreManager sma;private LabManager lm;public UserManage() super(new BorderLayout();/ 设置布局管理器/ 控件初始化lArray0 = new JLabel(注册身份);lArray1 = n

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!