华联超市进销存管理系统_Java期末课程设计(80页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《华联超市进销存管理系统_Java期末课程设计(80页).doc》由会员分享,可在线阅读,更多相关《华联超市进销存管理系统_Java期末课程设计(80页).doc(80页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-华联超市进销存管理系统_Java期末课程设计-第 80 页甘肃政法学院Java课程设计报告题 目 兰州华联超市进销管理系统一.需求分析企业进销存管理系统的主要工作,是对企业的进货、销售和库存以信息化的方式进行管理,最大限度的减少各个环境中可能出现的错误,有效减少盲目采购,降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,使企业能够合理安排进、销、存的每个关键步骤,替身企业市场竞争力。针对经营管理中存在的问题,兰州华联超市对产品的进销存合理化提出了更高的要求。 通过实际调查,要求企业进销存管理系统具有以下功能。 界面设计美观大方,方便、快捷、操作灵活。实现强大的进销存管理,包括基本信息
2、、进货、销售和库存管理。能够在不同的操作系统下运行,不局限于特定的平台。提供数据库备份与恢复功能。提供库存盘点功能。提供技术支持的联系方式,可以使用邮件进行沟通,或者直接连接到技术网站。二.分析与设计:(1)功能模块划分:本进销存管理系统划分为六个模块,分别为系统登陆模块,系统主窗体设计模块,进货单模块,销售单模块,库存盘点模块和数据库备份与恢复模块,(2)数据库结构描述:企业进销存管理系统需要使用数据库存储和管理进销存过程中的所有信息,本企业进销存管理系统使用SQL Server 2000数据库系统作为后台数据库,数据库名称为db_database28。其中包含了14张数据表两个视图。以下是
3、系统主要涉及的六个数据库表:1供应商信息表:主要用于存储供应商详细信息,其结构如下表所示:tb_gysinfo供应商信息表字段名称数据类型字段大小是否主键说明idvarchar32主键供应商编号namevarchar50供应商名称jcvarchar20供应商简称addressvarchar100供应商地址bianmavarchar10邮政编码telvarchar15电 话faxvarchar15传 真lianvarchar8联 系 人ltelvarchar15联系电话yhvarchar50开户银行mailvarchar50电子信箱2.商品信息表:主要用于存储商品详细信息,其结构如下表所示;tb
4、_spinfo商品信息表字段名称数据类型字段大小是否主键说明idvarchar32主键商品编号spnamevarchar50商品名称jcvarchar30商品简称cdvarchar50产 地dwvarchar10计量单位ggvarchar10商品规格bzvarchar20包 装phvarchar32批 号pzwhvarchar50批准文号memovarchar100备 注gysnamevarchar50供应商名称3.入库主表:主要用于存出入库单据信息,其结构如下表所示: Tb_ru_ku_main入库主表字段名称数据类型字段大小是否主键说明rkIDvachar32主键入库编号pzsfloat8
5、品种数量jemoney8总计金额ysjlvachar50验收结论gysnamevachar100供应商名称rkatedatetime8入库时间czyvachar30操 作 员jsrvachar30经 手 人jsfsvachar10结算方式4.入库明细:主要用于存出入库详细信息,其结构如下表所示: tb_ruku_detail入库明细表字段名称数据类型字段大小是否主键说明idvachar50主键流 水 号rkIDvachar30入库编号spidvachar50商品编号djmoney8单 价slfloat8数 量5.销售主表:主要用于存储销售单据信息,其结构如下表所示: tb_sell_main销
6、售主表字段名称数据类型字段大小是否主键说明sellIDvachar30主键销售编号pzsfloat8销售品种数jemoney8总计金额ysjlvachar50验收结论khnamevachar100客户名称xsdatedatetime8销售日期czyvachar30操作员jsrvachar30经手人jsfsvachar10结算方式6.销售明细表:主要用于存储销售详细信息,其结构如下表所示: tb_sell_detail销售明细表字段名称数据类型字段大小是否主键说明idvachar50主键流水号sellIDvachar50销售编号spidvachar50商品编号djMoney8销售单价slfloa
7、t8销售数量三.系统详细设计文档:1.系统流程图: (1)系统功能结构图: (2)系统业务流程图:(3)系统中的主要类及功能: 1.Item公共类:Item公共类是对数据表最常用的ID和name属性的封装,属于swing列表,表格,下拉列表框等组件的赋值。该类重写了toString()方法,在该方法中只输出name属性。但是在获取组件的内容时,获取的是Item类的对象,从该对象中可以获取ID的属性,然后通过该属性到数据库中获取唯一的数据。 2.数据模型公共类: 数据模型公共类对应着数据库中不同的数据表,这些模型将被访问数据库的Dao类和程序中各个模块甚至各个组件使用,数据模型是对数据表所有字段
8、的封装,它是纯粹的模型类,他也要重写toString()方法,另外还要重写hashCode()方法和equal()方法。它主要用于存贮数据,并通过相应的getXXX()方法和setXXX()实现不同属性的访问原则。 3.Dao公共类: Dao类实现了数据库的驱动,连接,关闭和多个操作数据库的方法,Dao类不需要创建对象,可以直接调用类中的所有数据库操作方法。Dao类自定义的主要方法有getKhlnfo(Item item)方法,主要是获取客户信息,方法的返回值是tKhlnfo的对象,及客户信息的数据模型。getGyslnfo(Item item)方法,主要是获取供应商信息,返回值是Gyslnf
9、o类的对象,及供应商数据表的模型对象。getSplnfo(Item item)方法,主要用于获取商品信息,返回值是Splnfo类的对象,及商品数据表的数据模型。getLogin(String name,String password)方法主要适用于判断登录用户的用户名与密码是否正确,返回值是boolean类型。insertSelllnfo(TbSellMain sellMain)方法,主要是添加销售信息到数据库中。restoreOrBackup(String sql)方法,此方法是设置数据库的模式为单用户连接模式,这样可以避免数据库恢复或备份时失败。checkLogin(String user
10、Str,String passStr)方法,用于判断登录用户与密码是否正确。(2)各个模块实现方法描述: 1.系统登录模块 实现该模块的主要代码如下 package com.lzw.login;import java.awt.*;import java.awt.event.*;import java.sql.SQLException;import javax.swing.*;import com.lzw.MainFrame;import com.lzw.dao.Dao;public class LoginDialog extends JFrame private static final lo
11、ng serialVersionUID = 1L;private LoginPanel loginPanel = null;private JLabel jLabel = null;private JTextField userField = null;private JLabel jLabel1 = null;private JPasswordField passwordField = null;private JButton loginButton = null;private JButton exitButton = null;private static String userStr;
12、private MainFrame mainFrame;* param ownerpublic LoginDialog() try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName(); mainFrame = new MainFrame(); initialize();catch (Exception e) e.printStackTrace(); * 初始化loginPanel登录面板的方法 * return com.lzw.login.LoginPanelprivate LoginPanel getLogin
13、Panel() if (loginPanel = null) jLabel1 = new JLabel();jLabel1.setBounds(new Rectangle(86, 71, 55, 18);jLabel1.setText(密码:);jLabel = new JLabel();jLabel.setText(用户名:);jLabel.setBounds(new Rectangle(85, 41, 56, 18);loginPanel = new LoginPanel();loginPanel.setLayout(null);loginPanel.setBackground(new C
14、olor(0xD8DDC7);loginPanel.add(jLabel, null);loginPanel.add(getUserField(), null);loginPanel.add(jLabel1, null);loginPanel.add(getPasswordField(), null);loginPanel.add(getLoginButton(), null);loginPanel.add(getExitButton(), null);return loginPanel; * This method initializes userField * return javax.s
15、wing.JTextFieldprivate JTextField getUserField() if (userField = null) userField = new JTextField();userField.setBounds(new Rectangle(142, 39, 127, 22);return userField; * This method initializes passwordField * return javax.swing.JPasswordFieldprivate JPasswordField getPasswordField() if (passwordF
16、ield = null) passwordField = new JPasswordField();passwordField.setBounds(new Rectangle(143, 69, 125, 22);passwordField.addKeyListener(new java.awt.event.KeyAdapter() public void keyTyped(java.awt.event.KeyEvent e) if(e.getKeyChar()=n)loginButton.doClick();return passwordField; * This method initial
17、izes loginButton * return javax.swing.JButtonprivate JButton getLoginButton() if (loginButton = null) loginButton = new JButton();loginButton.setBounds(new Rectangle(109, 114, 48, 20);loginButton.setIcon(new ImageIcon(getClass().getResource(/res/loginButton.jpg);loginButton.addActionListener(new Act
18、ionListener() public void actionPerformed(ActionEvent e) try userStr = userField.getText();StringpassStr=new String(passwordField.getPassword();if (!Dao.checkLogin(userStr, passStr) JOptionPane.showMessageDialog(LoginDialog.this,用户名与密码无法登录, 登录失败,JOptionPane.ERROR_MESSAGE);return; catch (Exception e1
19、) e1.printStackTrace();MainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);mainFrame.setVisible(true);mainFrame.getCzyStateLabel().setText(userStr);setVisible(false);return loginButton; * This method initializes exitButton * return javax.swing.JButtonprivate JButton getExitButton() if (exitButt
20、on = null) exitButton = new JButton();exitButton.setBounds(new Rectangle(181, 114, 48, 20);exitButton.setIcon(new ImageIcon(getClass().getResource(/res/exitButton.jpg);exitButton.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent e) System.ex
21、it(0);return exitButton; * 界面初始化方法 * return voidprivate void initialize() Dimension size = getToolkit().getScreenSize();setLocation(size.width - 296) / 2, (size.height - 188) / 2);setSize(296, 188);this.setTitle(系统登录);setContentPane(getLoginPanel();public String getUserStr() return userStr; / jve:de
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 进销存 管理 系统 _Java 期末 课程设计 80
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内