版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、26/26摘要本文针对超市销售管理信息系统,以超市销售信息系统为背景,通过对超市的日常业务进行详细调研与研究,对其工作流程进行研究,建立销售信息处理模型,并在此基础上设计销售信息管理软件的方案,并加以实施。本文主要对该超市的现状进行了需求分析,达到了相应的用户需求,功能需求以及相应的业务流程,重点阐述了系统的分析、设计的思路和方法,以及系统数据库设计的方法。建立超市销售管理系统使超市销售管理工作规范化,系统化,程序化,避免管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效地进行信息查询和修改。提高了直接或间接的经济效益,提升超市销售管理和行政管理水平,改善顾客和超市成员关系,增强超
2、市服务竞争力,实现优质服务。关键词:超市销售信息管理系统 数据库前言随着经济发展人们生活水平的提高,人们消费需求提高物品需求种类多样化,超市销售管理的数据结构及处理也日益复杂。超市服务系统不仅要求准确无误地保留有关经济数据,而且要求迅速可靠地采用各种数据信息进行综合分析和决策。计算机所具有的数字化技术和交互式的处理能力,使其对数据庞大、程序复杂的各类信息进行综合处理,从而为超市经济管理的运行提供决策依据。 本文阐述了超市管理系统的设计与实现,以顾客为中心,以时间为轴线,围绕顾客消费过程,详细地、完整地收集所有数据。借助于信息系统的杠杆作用,平衡顾客与超市的需要,将管理信息和顾客信息做集成,使得
3、相关人员在任何时间、任何地点都能得到相关信息。其主要目标是协助完成超市对日常的计算机服务统计和销售管理等业务,减轻超市人员处理业务的劳动强度。 一、系统需求分析系统概述系统分析是系统开发的重要阶段,其目的是要回答系统将要“做什么“,即需求分析。完成需求分析之后,对系统的涉及到的部门进行组织结构分析和业务流程分析。在此基础之上还要做数据流程分析,并利用数据字典对数据流程进行详细的说明。本系统由六个表组成。分别是:供应商表、商品信息表、交易表、会员表、销售表以及入库表。每个表实现不同的功能。主要是为了超市人员的添、删、改、查。提高超市人员的工作效率和工作质量,全面提高了超市的综合管理水平和服务质量
4、,提高顾客满意度,同时为超市带来一定的经济效益产生积极作用。实现功能超市销售管理系统主要实现为了超市人员方便添、删、改、查,提高工作效率,对销售情况一目了然。供应商表主要实现:快速了解供应商的基本信息,比如:编号、姓名、地址、电话。通过查询供应商的编号,就可以对他们的信息有所了解。商品信息表主要实现:快速了解商品的基本信息。比如:商品编号、商品名、商品供应商、商品价格、商品销售日期、商品进货日期、商品库存数量。通过查找商品编号,就可以知道此商品的一系列信息。交易表主要实现:交易的记录。比如:交易编号、交易日期、交易价格、会员卡号。通过查找交易编号,可以知道交易的一切信息。会员表主要实现:会员的
5、基本信息。比如:会员编号、会员卡号、会员姓名、会员性别、会员联系方式以及会员地址。通过查找会员编号,可以一目了然的知道此会员的信息。销售表主要实现:销售的记录。比如:交易编号、商品编号、销售数量、销售价格。通过查找交易编号和商品编号可以快速查找到销售的所有记录。入库表主要实现:入库商品的信息。比如:入库编号、入库商品编号、单额、总额、入库日期、入库数量以及入库状态。通过查找入库编号,就可以了解入库商品的所有信息。划分功能模块供应商供应商地址供应商电话供应商姓名供应商编号 商品信息表商品供应商商品价格商品销售日期商品进货日期商品名商品库存数量商品编号会员编号会员卡号会员性别会员地址会员联系方式会
6、员姓名会员表交易表交易卡号交易日期交易编号交易价格销售表销售数量销售价格商品编号交易编号单额入库状态入库商品编号入库表入库日期入库编号总额入库数量二、数据库的设计1、数据库表的设计数据库共7个表,分别是:商品信息表,会员表,供应商表,交易表,销售表,入库表以及Admin表。以下分别是每个表的内容: 销售表商品信息表入库表会员表交易表Admin表以上为商品信息表,会员表,供应商表,交易表,销售表,入库表以及Admin表的内容。数据流图:2、数据库链接程序package chapter00jdbc.exammanager;import java.awt.*;import java.awt.even
7、t.*;import javax.swing.*;import javax.swing.event.*;import chapter00jdbc.exammanager.db.DBAdmin;import chapter00jdbc.exammanager.mygui.*;public class TestFrame extends JFrame private static JDesktopPane theDesktop;JMenuItem loginItem,exitItem,helpItem;/登录、退出和帮助内容菜单项 final String itemString=管理员,会员;fi
8、nal JPanel itemPanel=new PanelAdmin(超市销售信息管理系统,Admin),new PanelhuiyuanBiao(超市销售信息管理系统,会员表);JMenuItem item=new JMenuItemitemPanel.length;/题库管理菜单的4个菜单项:3个表和生成试卷public TestFrame() super(超市销售信息管理系统);/1.登录菜单:有两个菜单项-登录和退出JMenu loginMenu = new JMenu(登录);JMenuItem loginItem = new JMenuItem(登录);loginMenu.add
9、(loginItem);loginItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) String name=JOptionPane.showInputDialog(null, 请输入登陆名字:);String password=JOptionPane.showInputDialog(null, 请输入登陆密码:);if(DBAdmin.isAdmin(name, password)JOptionPane.showMessageDialog(null, 登录成功!);for(
10、int i=0;iitem.length;i+) itemi.setEnabled(true);elseJOptionPane.showMessageDialog(null, 密码不对,登录失败!););JMenuItem exitItem = new JMenuItem(退出);loginMenu.add(exitItem);exitItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) System.exit(0););/2.题库管理菜单:库中的每个表对应一个菜单项,实现添、
11、删、改、查;导出试卷菜单项JMenu adminMenu = new JMenu(超市销售信息管理系统);for(int i=0;iitem.length;i+) itemi=builedAdminMenuItem(adminMenu,itemStringi,itemPaneli);/3.帮助菜单JMenu helpMenu = new JMenu(帮助);JMenuItem helpItem = new JMenuItem(帮助内容);helpMenu.add(helpItem);helpItem.addActionListener(new ActionListener()public vo
12、id actionPerformed(ActionEvent e) JOptionPane.showMessageDialog(TestFrame.this, 运行程序后,看相应的代码););/4.创建菜单条,添加菜单JMenuBar bar = new JMenuBar();setJMenuBar(bar);bar.add(loginMenu);bar.add(adminMenu);bar.add(helpMenu);/5.窗口中间放置桌面面板,用来显示内部窗口theDesktop = new JDesktopPane();getContentPane().add(theDesktop,Bo
13、rderLayout.CENTER);setSize(800, 600);setVisible(true);/创建菜单项的通用方法:参数menu是菜单项所添加在其上的菜单;/参数itemName是菜单项的名字,因其在匿名内部类对象中引用,必须声明为final;/参数panel是点击菜单项后所生成的内部窗口中的面板对象,必须声明为final。private JMenuItem builedAdminMenuItem(JMenu menu,final String itemName,final JPanel panel)final JMenuItem menuItem = new JMenuIte
14、m(itemName);menu.add(menuItem);menuItem.setEnabled(false);menuItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) buildInternalFrame(panel,itemName,menuItem);/生成内部窗口);return menuItem;/生成内部窗口:窗口中间放置面板对象。参数item是与内部窗口相关的菜单项。private void buildInternalFrame(JPanel panel,
15、String title,final JMenuItem item) JInternalFrame frame = new JInternalFrame(title,true,true,true,true);/内部窗口frame.addInternalFrameListener(new InternalFrameAdapter()/内部窗口监听:关闭后执行public void internalFrameClosed(InternalFrameEvent e) item.setEnabled(true);/关闭内部窗口时,菜单项item可用。);Container container = fr
16、ame.getContentPane();/内部窗口容器面板container.add(panel, BorderLayout.CENTER);/参数面板panel放在容器中间frame.setSize(600,480);theDesktop.add(frame);/内部窗口添加到桌面面板才能显示frame.setVisible(true);item.setEnabled(false);/生成内部窗口后,与之相关的菜单项item不可用。/测试TestFrame类public static void main(String args) JFrame frame = new TestFrame()
17、;frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);*3、数据库表的添、删、改、查/ 添加记录protected void dealAddbtn() huiyuan a1 = new huiyuan(); / 改成你的beana1.setBianhao(fields0.getText().trim(); / 顺序要对,fields里的序号要和表的字段的顺序一样a1.setKahao(fields1.getText().trim();a1.setXingming(fields2.getText().trim();a1.setXingbie(
18、fields3.getText().trim();a1.setLianxifangshi(fields4.getText().trim();a1.setDizhi(fields5.getText().trim();DBhuiyuan.addHuiyuan(a1); / 改成你的DBbeanJOptionPane.showMessageDialog(null, 添加成功);tableModel.setQuery(会员表);/ 改成你的表名/修改记录protected void dealUpdatebtn() huiyuan a1 = new huiyuan(); / 改成你的beana1.set
19、Bianhao(fields0.getText().trim(); / 顺序要对,fields里的序号要和表的字段的顺序一样a1.setKahao(fields1.getText().trim();a1.setXingming(fields2.getText().trim();a1.setXingbie(fields3.getText().trim();a1.setLianxifangshi(fields4.getText().trim();a1.setDizhi(fields5.getText().trim();DBhuiyuan.updatehuiyuanbiao(a1); / 改成你的D
20、BbeanJOptionPane.showMessageDialog(null, 修改成功);tableModel.setQuery(会员表);/ 改成你的表名/删除记录protected void dealDelbtn () DBhuiyuan.deletehuiyuanbiao(fields0.getText().trim(); / 改成你的DBbeanJOptionPane.showMessageDialog(null, 删除成功);tableModel.setQuery(会员表);/ 改成你的表名/查询记录protected void dealQuerybtn()huiyuan hy=
21、DBhuiyuan.gethuiyuan(fields0.getText();fields1.setText(hy.getKahao();fields2.setText(hy.getXingming();fields3.setText(hy.getXingbie();fields4.setText(hy.getLianxifangshi();fields5.setText(hy.getDizhi();JOptionPane.showMessageDialog(null, 查询成功);tableModel.setQuery(会员表);/ 改成你的表名三、图形界面设计与实现登陆界面登陆成功表的操作
22、界面登陆界面程序:package chapter00jdbc.exammanager;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import chapter00jdbc.exammanager.db.DBAdmin;import chapter00jdbc.exammanager.mygui.*;public class TestFrame extends JFrame private static JDesktopPane theDesktop;JMenu
23、Item loginItem,exitItem,helpItem;/登录、退出和帮助内容菜单项 final String itemString=管理员,会员;final JPanel itemPanel=new PanelAdmin(超市销售信息管理系统,Admin),new PanelhuiyuanBiao(超市销售信息管理系统,会员表);JMenuItem item=new JMenuItemitemPanel.length;/题库管理菜单的4个菜单项:3个表和生成试卷public TestFrame() super(超市销售信息管理系统);/1.登录菜单:有两个菜单项-登录和退出JMen
24、u loginMenu = new JMenu(登录);JMenuItem loginItem = new JMenuItem(登录);loginMenu.add(loginItem);loginItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) String name=JOptionPane.showInputDialog(null, 请输入登陆名字:);String password=JOptionPane.showInputDialog(null, 请输入登陆密码:);
25、if(DBAdmin.isAdmin(name, password)JOptionPane.showMessageDialog(null, 登录成功!);for(int i=0;iitem.length;i+) itemi.setEnabled(true);elseJOptionPane.showMessageDialog(null, 密码不对,登录失败!););JMenuItem exitItem = new JMenuItem(退出);loginMenu.add(exitItem);exitItem.addActionListener(new ActionListener()public
26、void actionPerformed(ActionEvent e) System.exit(0););/2.题库管理菜单:库中的每个表对应一个菜单项,实现添、删、改、查;导出试卷菜单项JMenu adminMenu = new JMenu(超市销售信息管理系统);for(int i=0;iitem.length;i+) itemi=builedAdminMenuItem(adminMenu,itemStringi,itemPaneli);/3.帮助菜单JMenu helpMenu = new JMenu(帮助);JMenuItem helpItem = new JMenuItem(帮助内容
27、);helpMenu.add(helpItem);helpItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) JOptionPane.showMessageDialog(TestFrame.this, 运行程序后,看相应的代码););/4.创建菜单条,添加菜单JMenuBar bar = new JMenuBar();setJMenuBar(bar);bar.add(loginMenu);bar.add(adminMenu);bar.add(helpMenu);/5.窗口中间
28、放置桌面面板,用来显示内部窗口theDesktop = new JDesktopPane();getContentPane().add(theDesktop,BorderLayout.CENTER);setSize(800, 600);setVisible(true);/创建菜单项的通用方法:参数menu是菜单项所添加在其上的菜单;/参数itemName是菜单项的名字,因其在匿名内部类对象中引用,必须声明为final;/参数panel是点击菜单项后所生成的内部窗口中的面板对象,必须声明为final。private JMenuItem builedAdminMenuItem(JMenu menu
29、,final String itemName,final JPanel panel)final JMenuItem menuItem = new JMenuItem(itemName);menu.add(menuItem);menuItem.setEnabled(false);menuItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) buildInternalFrame(panel,itemName,menuItem);/生成内部窗口);return menuItem;/生
30、成内部窗口:窗口中间放置面板对象。参数item是与内部窗口相关的菜单项。private void buildInternalFrame(JPanel panel,String title,final JMenuItem item) JInternalFrame frame = new JInternalFrame(title,true,true,true,true);/内部窗口frame.addInternalFrameListener(new InternalFrameAdapter()/内部窗口监听:关闭后执行public void internalFrameClosed(Internal
31、FrameEvent e) item.setEnabled(true);/关闭内部窗口时,菜单项item可用。);Container container = frame.getContentPane();/内部窗口容器面板container.add(panel, BorderLayout.CENTER);/参数面板panel放在容器中间frame.setSize(600,480);theDesktop.add(frame);/内部窗口添加到桌面面板才能显示frame.setVisible(true);item.setEnabled(false);/生成内部窗口后,与之相关的菜单项item不可用
32、。/测试TestFrame类public static void main(String args) JFrame frame = new TestFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);四、程序测试package chapter00jdbc.exammanager;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import chapter00jdbc.exammanager.db
33、.DBAdmin;import chapter00jdbc.exammanager.mygui.*;public class TestFrame extends JFrame private static JDesktopPane theDesktop;JMenuItem loginItem,exitItem,helpItem;/登录、退出和帮助内容菜单项 final String itemString=管理员,会员;final JPanel itemPanel=new PanelAdmin(超市销售信息管理系统,Admin),new PanelhuiyuanBiao(超市销售信息管理系统,会
34、员表);JMenuItem item=new JMenuItemitemPanel.length;/题库管理菜单的4个菜单项:3个表和生成试卷public TestFrame() super(超市销售信息管理系统);/1.登录菜单:有两个菜单项-登录和退出JMenu loginMenu = new JMenu(登录);JMenuItem loginItem = new JMenuItem(登录);loginMenu.add(loginItem);loginItem.addActionListener(new ActionListener()public void actionPerformed
35、(ActionEvent e) String name=JOptionPane.showInputDialog(null, 请输入登陆名字:);String password=JOptionPane.showInputDialog(null, 请输入登陆密码:);if(DBAdmin.isAdmin(name, password)JOptionPane.showMessageDialog(null, 登录成功!);for(int i=0;iitem.length;i+) itemi.setEnabled(true);elseJOptionPane.showMessageDialog(null,
36、 密码不对,登录失败!););JMenuItem exitItem = new JMenuItem(退出);loginMenu.add(exitItem);exitItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) System.exit(0););/2.题库管理菜单:库中的每个表对应一个菜单项,实现添、删、改、查;导出试卷菜单项JMenu adminMenu = new JMenu(超市销售信息管理系统);for(int i=0;iitem.length;i+) itemi
37、=builedAdminMenuItem(adminMenu,itemStringi,itemPaneli);/3.帮助菜单JMenu helpMenu = new JMenu(帮助);JMenuItem helpItem = new JMenuItem(帮助内容);helpMenu.add(helpItem);helpItem.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e) JOptionPane.showMessageDialog(TestFrame.this, 运行程序后,看
38、相应的代码););/4.创建菜单条,添加菜单JMenuBar bar = new JMenuBar();setJMenuBar(bar);bar.add(loginMenu);bar.add(adminMenu);bar.add(helpMenu);/5.窗口中间放置桌面面板,用来显示内部窗口theDesktop = new JDesktopPane();getContentPane().add(theDesktop,BorderLayout.CENTER);setSize(800, 600);setVisible(true);/创建菜单项的通用方法:参数menu是菜单项所添加在其上的菜单;/
39、参数itemName是菜单项的名字,因其在匿名内部类对象中引用,必须声明为final;/参数panel是点击菜单项后所生成的内部窗口中的面板对象,必须声明为final。private JMenuItem builedAdminMenuItem(JMenu menu,final String itemName,final JPanel panel)final JMenuItem menuItem = new JMenuItem(itemName);menu.add(menuItem);menuItem.setEnabled(false);menuItem.addActionListener(ne
40、w ActionListener()public void actionPerformed(ActionEvent e) buildInternalFrame(panel,itemName,menuItem);/生成内部窗口);return menuItem;/生成内部窗口:窗口中间放置面板对象。参数item是与内部窗口相关的菜单项。private void buildInternalFrame(JPanel panel,String title,final JMenuItem item) JInternalFrame frame = new JInternalFrame(title,true,true,true,true);/内部窗口frame.addInternalFrameListener(new In
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南省名校联考联合体2023-2024学年高二物理上学期第一次联考试题含解析
- 《放射免疫技术》课件
- 无所取材相关课件
- 昆明理工大学《电磁场与电磁波》2023-2024学年第一学期期末试卷
- 《价值树分析模型》课件
- 昆明城市学院《广告设计(1)创意与表现》2021-2022学年第一学期期末试卷
- 九江学院《建筑美术》2021-2022学年第一学期期末试卷
- 2025年吐鲁番驾驶员货运从业资格证模拟考试题
- 2025年苏州货运从业资格证试题库及答案
- 业务顾问合同范例
- 阿里巴巴对新员工培训制度
- 2023-2024学年浙江省富阳市小学数学四年级上册期末通关题
- (中职)经济学基础AB卷期末试卷及答案
- 《林黛玉进贾府》原文
- 刑法学(上册)马工程课件 第4章 犯罪概念与犯罪构成
- 羽毛球训练计划以及周计划
- 五年级上册数学说课课件8.1分数四则混合运算∣青岛版五年制 (共24张PPT)
- 电磁场与电磁波课后习题答案全-杨儒贵
- 逻辑学导论 超星尔雅 视频答案及课后答案
- 转子动平衡教程课件
- 经颈静脉肝内门体分流术(TIPS)课件
评论
0/150
提交评论