收藏 分销(赏)

Java超市管理系统.doc

上传人:w****g 文档编号:3635949 上传时间:2024-07-11 格式:DOC 页数:86 大小:733KB
下载 相关 举报
Java超市管理系统.doc_第1页
第1页 / 共86页
Java超市管理系统.doc_第2页
第2页 / 共86页
Java超市管理系统.doc_第3页
第3页 / 共86页
Java超市管理系统.doc_第4页
第4页 / 共86页
Java超市管理系统.doc_第5页
第5页 / 共86页
点击查看更多>>
资源描述

1、Java超市管理系统- 78 -2020年5月29日文档仅供参考沈 阳 工 程 学 院课 程 设 计设计题目: 面向对象程序设计课程设计 小超市管理系统 课程设计任务书课程设计题目: 面向对象程序设计课程设计 小超市管理系统 目 录摘 要I第1章 绪 论1第2章 系统功能介绍22.1系统功能总框图22.2 本系统模块功能介绍22.2.1 登录功能介绍22.2.2 商品销售功能介绍32.2.3 权限管理功能介绍32.2.4 销售管理功能介绍42.2.5 商品管理功能介绍42.3 组内任务分工5第3章 数据库设计63.1 数据库需求分析63.2 数据库概念结构设计63.3 数据库表的设计7第4章

2、系统功能实现84.1 登录功能实现84.2 销售界面功能介绍114.2.1 搜索商品的信息114.2.2 购买商品114.2.3 模块的核心代码124.3 权限管理功能介绍184.3.1 添加用户功能介绍184.3.2 修改用户功能介绍194.3.3 删除用户功能介绍194.3.4 显示用户信息与刷新按钮介绍204.3.5 用户管理的实现代码.204.4销售管理功能介绍274.4.1 编号查询功能274.4.2 账单查询功能274.4.3 销售管理模块的核心代码284.4商品管理功能介绍314.4.1 查询信息314.4.2 添加信息及提交添加324.4.3 删除信息及提交删除324.4.4

3、修改信息及提交修改334.4.5 关于334.4.6 模块的核心代码.34总 结39致 谢40参考文献41 第1章 绪 论随着人们生活水平的不断提高,购物已成为一种时尚。每天都有大量的消费者在各大商场中留下消费信息,因此作为商场的管理人员就需要有一个自动化、智能化的管理系统来完成这些信息的处理。由此我们设计开发小超市管理系统。当前市场上的超市管理系统,大部分为基于分布式数据库的网络管理系统,对于规模较小的超市没有必要花巨资来购买这样功能全面的管理系统,另外,对于那样功能齐全的管理系统也需要花大精力来维护。基于这种情况,我们用所学的java知识,能够开发一种既能节约资金,又能完成小超市日常的管理

4、任务。本系统所包括的功能主要有:限于不同身份的人登录的登录界面;权限管理功能;商品销售功能;商品管理功能;销售管理功能。在系统的设计中,用户管理功能能够管理登录本系统的人员,如:管理员、用户和超级用户等。在最初的系统使用中只有技术管理员一种身份。商品销售功能;能够完成商品信息的查询。如:输入一种商品的编号在商品信息栏就显示该商品的所有信息,名称、价格、生产日期、生产地。然后选择购买功能,就能够将商品添加到购物信息栏,最后选择提交,所购买的商品信息同时也添加到数据库中。在商品管理功能中,能够把一种新引进的商品信息添加到小超市管理系统中。在销售管理功能中,能够查看超市的销售情况,所有商品的购买信息

5、都存储在数据库中。在系统的安全性方面,我们规定了不同权限的登录用户,管理员(主要负责用户管理)能够登录到任何一个管理模块,以及后台的数据库,能够改变任一个登录者的用户名和密码。用户只能进入到销售界面。老板超级主要查看商品的销售情况和商品管理,她能够进入到商品销售管理查看商品的销售情况。经过这样的权限限制就能够方便的控制系统的安全性。 总之,小超市管理系统是一个经济、实惠的应用软件,适合小规模的商店和超市。操作难度小,易学易用。 第2章 系统功能介绍2.1系统功能总框图 小超市管理系统是一个专门针对小型的商店和超市的智能化、自动化的管理系统。其功能总框图如图2-1所示。图2-1 系统功能总框图2

6、.2 本系统模块功能介绍2.2.1 登录功能介绍登录功能是进入系统必须经过的验证过程,其主要功能是验证使用者的身份,确认使用者的权限,从而在使用软件过程中能安全地控制系统数据,即不同的工作人员有不同的权限,每个使用人员不得跨越其权限操作软件,能够避免不必要的数据丢失事件发生。登录的界面如图2-2所示: 图2-2登录的界面2.2.2 商品销售功能介绍销售界面是本系统直接供销售的店员应用的专管销售功能的界面,首先要查询欲购买的商品,在左侧的查询框内输入商品代号,然后点击搜索按钮,相应的商品信息将显示在”商品信息”一栏中,确认是此商品后点击购买,购买的商品将出现在下面的购物信息一栏中,当所有欲购买的

7、商品都已输入好,点击提交,购买的商品信息将记录到数据库中。若输入有误,点击清除按钮,刚输入的信息将被清除,可重新输入。界面的右下方右商品总价的标签,能够时时地显示已购买商品的总价,以供参考。商品销售功能的主界面如图2-3所示:图2-3销售窗口的主界面2.2.3 用户管理功能介绍用户管理功能是管理人员使用的界面。管理人员能够使用此功能管理所有登录用户的信息。能够修改所有用户的帐号和密码,设置用户的权限,删除用户的帐号;对于已存在的用户技术管理员能够查询她们的信息,在下面的显示用户信息处显示。添加、修改、删除等操作后,单击”刷新”后,新的更改信息才能够在下面的用户信息显示处显示。用户管理的主界面如

8、图2-4所示:图2-4 用户管理的主界面2.2.4 销售管理功能介绍销售管理功能主要是老板查看超市商品销售情况。老板能够根据已售出的商品号查询该商品的信息,如能够查询该商品已售出的总数量。还能够根据销售的账单号查询,就是在消费者每一次购买商品时,就分配一个账单号,如出现消费者退货情况时,老板能够查询账单号解决。”按编号查询”输入商品的编号,在下面的商品信息处显示该商品的信息;”按账单号查询”输入商品的账单号,在下面的商品信息处显示该商品的信息。销售管理功能的主界面如图2-5所示:图2-5商品管理功能主界面2.2.5 商品管理功能介绍商品管理的功能是店员在进货、商品信息维护时所需要的界面,此界面

9、功能是管理所有商品的信息,在这里能够添加、修改、删除任意商品信息,做到对商品信息的及时维护。应用时,对应按钮的功能,进行应用,维护方便。 商品管理功能的主界面如图2-6所示:图2-6商品管理系统的主界面2.3 组内任务分工组内人员分工如表2-1所示:表2-1 组内分工组内分工姓名主要任务成绩组长王浩数据库的设计、商品管理和用户管理等功能组员魏兴龙销售管理界面及功能组员王潇伯商品销售界面及功能组员夏恩亮权限销售界面及功能第3章 数据库设计在每个管理系统中都一定有储存机制,若单单以文件形式储存,查找和存储时速度比较缓慢,会降低系统的整体运行速度,一定要运用数据库的进行信息管理,因此我们的”小超市管

10、理系统”运用了Microsoft Access数据库,存储其后台数据。下面将介绍本系统的数据库设计。3.1 数据库需求分析此系统需要有两个实体,账户和商品。数据项如表3-1和3-2所示。表3-1用户信息数据项数据项名数据项含义说明别名数据类型长度ID用户登录的帐号Id字符型50PASSWORD用户登录帐号对应的密码Psw字符型50PERSONTY登录用户的权限Pst字符型50表3-2商品信息数据项数据项名数据项含义说明别名数据类型长度NUM商品的编号编号字符型50NAME商品的名称名称字符型50TIME商品的进货时间货时字符型50ADD商品的生产地址产地字符型50PRICE商品的单价价格整型5

11、0COUNT商品的库存数量数量整型3.2 数据库概念结构设计根据需求分析设计出E-R图如图3-1所示: 图3-1 系统E-R图3.3 数据库表的设计Password表,其中存储的是用户的帐号、密码及权限,用于登陆系统时确认身份。此表设计如3-3表所示:表3-3 Password信息表字段名称数据类型长 度备 注ID文 本50PASSWORD文 本50PERSONTY文 本50Goods表,其中存储的是商品的详细信息,作用是记录商品的信息及在本超市中的数量。此表设计如3-4标所示。表3-4Goods信息表字段名称数据类型长 度备 注NUM文 本50NAME文 本50PRICE整 型TIME文 本

12、50ADD文 本50COUNT文 本50Information表,其中存储的是顾客在超市中的消费情况,其中有帐单号、商品代号、数量及总价,用来记录超市中销售情况,此表设计如3-5表所示。表3-5 Information信息表字段名称数据类型长 度备 注编号长 整 型销售的每件商品有不同的编号LISTNUM文 本50每提交一次帐单帐单号增加1GOODSNUM文 本50ALLPRICE整 型每个帐单的最后合出此帐单的总价第4章 系统功能实现4.1 登录功能实现登录界面是使用者在使用此软件时需要输入自已的账号和密码,从而使用自已的权限来管理超市的运行。小超市登录界面如4-1所示。 图4-1 小超市管

13、理系统登录界面模块核心代码:public class Login extends Frame implements ActionListener,WindowListener /登陆界面 public int screanWidth,screanHeight; String idin=null; String keyin=null; String passwordD=null; public static String persontyD=null; MenuBar menubar; Menu menu; MenuItem quet,help; Label id,key; TextField

14、idtf,keytf; Box boxV1,boxV2,boxV3,baseBox,boxx; Button enterB; Login() setTitle(超市管理系统登陆界面); Toolkit tool=getToolkit(); Dimension dim=tool.getScreenSize(); screanWidth=dim.width; screanHeight=dim.height; setBounds(dim.width/3,dim.height/3,320,215); menubar=new MenuBar(); menu=new Menu(功能); help=new

15、MenuItem(帮助); quet=new MenuItem(退出); quet.setShortcut(new MenuShortcut(KeyEvent.VK_E); quet.addActionListener(new ActionListener() /匿名类实例控制public void actionPerformed(ActionEvent p)System.exit(0); ); menu.add(help); menu.add(quet); menubar.add(menu); setMenuBar(menubar); id=new Label(请输入帐号:,Label.RI

16、GHT); key=new Label(请输入密码:,Label.RIGHT); idtf=new TextField(10); keytf=new TextField(10); keytf.setEchoChar(*); enterB=new Button(登陆); boxV1=Box.createVerticalBox(); boxV1.add(Box.createVerticalStrut(35); boxV1.add(id); boxV1.add(Box.createVerticalStrut(15); boxV1.add(key); boxV1.add(Box.createVerti

17、calStrut(15); boxV2=Box.createVerticalBox(); boxV2.add(Box.createVerticalStrut(35); boxV2.add(idtf); boxV2.add(Box.createVerticalStrut(15); boxV2.add(keytf); boxV2.add(Box.createVerticalStrut(15); baseBox=Box.createHorizontalBox(); baseBox.add(Box.createHorizontalStrut(25); baseBox.add(boxV1); baseB

18、ox.add(Box.createHorizontalStrut(5); baseBox.add(boxV2); baseBox.add(Box.createHorizontalStrut(70); boxV3=Box.createHorizontalBox(); boxV3.add(Box.createHorizontalStrut(125); boxV3.add(enterB); boxV3.add(Box.createHorizontalStrut(125); boxx=Box.createVerticalBox(); boxx.add(baseBox); boxx.add(Box.cr

19、eateVerticalStrut(15); boxx.add(boxV3); boxx.add(Box.createVerticalStrut(70); add(boxx); enterB.addActionListener(this); addWindowListener(this); setResizable(false); setVisible(true);public void actionPerformed(ActionEvent e)Connection con;Statement sql;ResultSet rs;if (e.getSource()=enterB)idin=id

20、tf.getText();keyin=keytf.getText(); try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch (ClassNotFoundException f) System.out.println(+f); trycon=DriverManager.getConnection(jdbc:odbc:q,);sql=con.createStatement();rs=sql.executeQuery(SELECT * FROM password where ID=+idin+);while(rs.next()password

21、D=rs.getString(2);persontyD=rs.getString(3);con.close();catch (SQLException g)System.out.println(g); if (keyin.equals(passwordD) View2 frame=new View2(); this.setVisible(false); else JOptionPane.showMessageDialog(this, 帐户或密码错误n 请重新输入,提示,JOptionPane.WARNING_MESSAGE); public void windowActivated(Windo

22、wEvent o)validate();public void windowDeactivated(WindowEvent o)setBounds(screanWidth/3,screanHeight/3,320,215);validate();public void windowClosing(WindowEvent o)dispose();public void windowClosed(WindowEvent o)System.exit(0);public void windowIconified(WindowEvent o)public void windowDeiconified(W

23、indowEvent o)setBounds(screanWidth/3,screanHeight/3,320,215); validate();public void windowOpened(WindowEvent o)4.2 销售界面功能介绍该功能是此系统的最关键的模块,是消费者直接使用的功能。消费者能够根据已看到的商,在搜索栏中打入商品的编号,进行查询商品的信息,然后能够依椐自已的需要购买。最后单击提交,购买的商品就记录到系统的数据库中。销售的主界面如图4-2所示:图 4-2 销售的主界面4.2.1 搜索商品的信息 消费者可根据自已所需要的商品编号,在销售功能中搜索,查看商品的信息无误

24、后,确定是否购买。如搜索001号商品,查看它的信息,如图4-3所示。图4-3 搜索001号商品的信息4.2.2 购买商品在确定自已需要的商品后,然后就是购买商品,消费者能够按”购买”键进行购买物品,购买一份就单击一次”购买”键,购买物品的信息显示在购物信息框中,最后单击”提交”,消费者所购买的物品就作为一个账单号存储在数据库中。如购买004、005、006、008、010和011号商品时,购买信息如图4-4下: 图4-4 购买信息当购买人不想购买这些商品时,能够点击窗口左下角的清除按钮,来清除刚才购买的商品,数据库中也不会有此记录。另外,本系统是每购买一件商品向数据库提交一次记录,当未点击提交

25、按钮之前,若要结束此窗口进程,我们在代码中嵌入了一段删除当前帐单的数据库记录代码,以达到没有误提交的操作。4.2.3 模块的核心代码 销售界面的实现public class View2 extends JFrame implements ActionListener /销售界面String num=null,name=null,time=null,add=null,t1=null,t2=null,t3=null;int price=0;int n1,n2,ap,n3; private JPanel sM=new JPanel(); /supermarket面板private JButton p

26、S=new JButton(销售界面),new JButton(销售管理), new JButton(商品管理),new JButton(权限管理);/personty 按钮 private JTextArea goodsShow=new JTextArea(), searchShow=new JTextArea(); /文本区 private JScrollPane jsp=new JScrollPane(goodsShow); /滚动区域 设定内容为 商品显示的文本区private JTextField numSearch=new JTextField(),showGoods=new JT

27、extField(); /商品查询/显示商品 private JButton searchGoods=new JButton(搜索),buyGoods=new JButton(购买), clean=new JButton(清空), ok=new JButton(提交),print=new JButton(打印并提交); /查询按钮private JLabel goodsInformation=new JLabel(商品编码,JLabel.CENTER),new JLabel(商品名称,JLabel.CENTER), new JLabel(商品价格,JLabel.CENTER),new JLab

28、el(生产日期,JLabel.CENTER),new JLabel(生产地,JLabel.CENTER) ;private JLabel goodsI=new JLabel(商品编码,JLabel.CENTER),new JLabel(商品名称,JLabel.CENTER), new JLabel(商品价格,JLabel.CENTER),new JLabel(生产日期,JLabel.CENTER),new JLabel(生产地,JLabel.CENTER) ; private JLabel allPrice=new JLabel(商品总价:n ,JLabel.LEFT),label1=new

29、JLabel(商品信息 ,JLabel.RIGHT),label2=new JLabel(购物信息 ,JLabel.RIGHT); public View2()sM.setLayout(null);for(int i=0;i4;i+)pSi.setBounds(550+i*110,50,100,22);sM.add(pSi);pSi.addActionListener(this); jsp.setBounds(100,180,800,500); goodsShow.setLineWrap(true) numSearch.setBounds(100,50,150,22); searchGoods

30、.setBounds(260,50,60,22); searchGoods.addActionListener(this); buyGoods.setBounds(330,50,60,22); buyGoods.addActionListener(this); showGoods.setBounds(100,120,800,22); for (int b=0;b5 ;b+ ) goodsInformationb.setBounds(100+160*b,87,160,30); sM.add(goodsInformationb); for (int b=0;b5 ;b+ ) goodsIb.set

31、Bounds(100+160*b,150,160,30); sM.add(goodsIb); clean.setBounds(100,690,100,22); clean.addActionListener(this); ok.setBounds(690,690,100,22); ok.addActionListener(this); print.setBounds(800,690,100,22); print.addActionListener(this); allPrice.setBounds(900,480,100,50); label1.setBounds(20,120,80,22);

32、 label2.setBounds(20,180,80,22); sM.add(label1); sM.add(label2); sM.add(allPrice); sM.add(print); sM.add(ok); sM.add(showGoods); sM.add(clean); sM.add(numSearch); sM.add(searchGoods); sM.add(buyGoods); sM.add(jsp); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) Connec

33、tion con;Statement sql;ResultSet rs;try if (n3!=0) int a1=0; con=DriverManager.getConnection(jdbc:odbc:q,); sql=con.createStatement(); rs=sql.executeQuery(SELECT MAX(编号) from information); while(rs.next() a1=rs.getInt(1); for (int i=0;in3 ;i+ ) sql.executeUpdate(delete from information where 编号=+(a1

34、-i); con.close(); ap=0; num=null;name=null;price=0;time=null;add=null;n3=0; goodsShow.setText(null); catch (SQLException g)System.out.println(g); System.exit(0); ); this.add(sM); this.setTitle(销售窗口); this.setResizable(false); this.setBounds(0,0,1024,768); this.setVisible(true); validate(); 购买商品功能的代码

35、if(p.getSource()=buyGoods) /购买按键 tryif (num!=null)con=DriverManager.getConnection(jdbc:odbc:q,);sql=con.createStatement();sql.executeUpdate(insert into information(listnum,goodsnum) values(+n2+,+num+);rs=sql.executeQuery(SELECT * FROM information where listnum=+n2);n3+;/记录购买商品个数con.close();goodsShow

36、.append( +num+ +name+ +price+ +time+ +add+n); elseJOptionPane.showMessageDialog(this,请选择商品,提示,JOptionPane.WARNING_MESSAGE);ap=ap+price;/总价allPrice.setText(商品总价:n+ap);catch (SQLException g)System.out.println(g); if(p.getSource()=ok) try if (n3!=0) con=DriverManager.getConnection(jdbc:odbc:q,); sql=co

37、n.createStatement(); sql.executeUpdate(insert into information(listnum,allprice) values(+n2+,+ap+); rs=sql.executeQuery(SELECT * FROM information where listnum=+n2); con.close(); ap=0; num=null;name=null;price=0;time=null;add=null;n3=0; goodsShow.setText(null); n2+;/帐单号elseJOptionPane.showMessageDia

38、log(this,请购买商品,提示,JOptionPane.WARNING_MESSAGE); catch (SQLException g)System.out.println(g); if(p.getSource()=print) try if (n3!=0) con=DriverManager.getConnection(jdbc:odbc:q,); sql=con.createStatement(); sql.executeUpdate(insert into information(listnum,allprice) values(+n2+,+ap+); rs=sql.executeQuery(SELECT * FROM information where listnum=+n2); con.cl

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服