《她他乐服装销售系统.docx》由会员分享,可在线阅读,更多相关《她他乐服装销售系统.docx(75页珍藏版)》请在三一办公上搜索。
1、他她乐服装销售系统学 校:渤海大学学 院:信息科学与技术学院指导教师:沈泽刚组 长:杨朝文成 员:马勇喆 王小龙 金振丰 一、项目计划31.1系统开发目的31.2 背景说明31.3 应用范围3二、需求分析32.1 可行性研究32.1.1 技术可行性32.1.2 经济可行性32.1.3 操作可行性42.2 需求分析4三、概要设计53.1 系统总体功能53.2局部E-R图63.3将E-R转换为关系模型9四、数据模块10五、实现界面和部分源代码145.1实现DataBase 和Java连接代码145.2实现系统总体代码155.3实现前台界面,登陆,数据库代码325.4实现后台界面,数据库操作代码52
2、一、项目计划1.1系统开发目的为了满足广大消费者的消费愿望(不在劳神费力),特有软件开发团队,结合用户的需求为服装开发仓库管理系统,来来解决后顾之忧,众所周知:大的服装的商品的存储和调配是不可忽视的大问题,和好的后备调配为前台的产品销售有很大的帮助,也可以很大程度上提高产品的销售效率,满足消费者的消费需求1.2 背景说明信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。随着服装规模的不断扩大,服装商品数量急剧增加,有关商品的各种信息也成倍增加。面对庞大的信息量,就需要有服装进销存系统来提高服装商品管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统
3、计和快速的查询,从而减少管理方面的工作量,所以服装进销存管理系统将会为服装管理带来了极大的方便。1.3 应用范围 本系统适合应用于各个服装销售。二、需求分析2.1 可行性研究系统开始和可行性研究是为系统开发做前期准备。在对一个项目的开发之前,我们总是要对其进行一个可行性分析与需求分析,通过和指导老师的共同分析得出了可行性开发计划。对于需求分析我们作了如下调查分析的需求。2.1.1 技术可行性随着软件编程技术的不断增加,功能的不断加强,和网络技术的不断成熟,信息安全的不断完善以及开发工具的日益进步,采用计算机系统来管理服装销售要求数据的采集、更新能够完整、准确和及时,所以开发通用的服装销售收银系
4、统已经完全可以做到。2.1.2 经济可行性因为通过网络传递销售信息,可以不受距离的限制,因此可以节约许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高服装的销售效率,即提高了服装销售的经济效益,所以从经济上是完全可行的。2.1.3 操作可行性本系统采用Windows图形界面,是大家熟悉的操作系统,对于用户只需要具有一般的计算机知识的人员都可以轻松上手。而且整个销售系统采用最友好的交互界面,简洁明了,不需要对数据库非常了解。 由此,该系统的操作是可行的,有必要推广该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。2.2 需求分析对于大型服装
5、信息管理系统来说,通常它会把员工人事管理系统也包括在内。由于现考虑的是小型服装,其可承担的研发支费也有限。所以在这个系统中,要实现的功能主要如下:(1) 功能要求对库存产品进行资料管理和统计;对产品的进库单和产品的销售单进行录入管理和统计;对进库、销售、库存情况进行查询;对用户进行管理,具体为添加用户、删除用户、修改用户密码;对赢利状况分析,进行营业统计,按年月日及商品类别统计;(2) 数据精确度产品的进货单和销售单中,单价、金额采用浮点数,数量都取整数。(3) 时间特性该系统软件从启动到进入系统登录界面的时间正常情况下少于5秒,录入并更新数据的时间正常情况下少于10秒。(4) 适用性该管理系
6、统软件适用于Windows 2000/Windows XP/ Windows7中文版下运行。三、概要设计3.1 系统总体功能他她乐服装销售系统前台系统后台系统商品录入收银管理货存管理进货管理销售管理用户管理商品编码录入交易总额计算支持会员卡打折库存信息浏览商品信息查询商品信息录入商品销售统计超级用户普通会员 图3.1 系统总体结构图销售统计商品用户管理员入/出库提交购买管理更新 图3.2 系统总体E-R图3.2局部E-R图商品备注序号商品编码条形码类别编号商品名称零售价商品规格保质期进货价计量单位图3.21 局部商品E-R图销售统计销售编号商品编号销售日期销售数量会员卡号商品名称商品单价折扣图
7、3.22 局部销售统计E-R图入/出库数量入库编号商品编号进货价下单人仓库号入库日期经手人图3.23 局部入/出库E-R图会员备注卡号用户名身份证密码开卡日期用户类型折扣积分期限图3.24 局部会员E-R图库存商品编码数量图3.25 库存E-R图商品类别类别编号序号类别名图3.26 商品类别E-R图3.3将E-R转换为关系模型商品(序号,商品编码,条型码,类别编号,商品名称,零售价,商品规格,计量单位,进货价,保质期,备注)销售统计(销售编号,商品编号,销售日期,商品数量,商品单价,折扣,会员卡号,商品名称)入/出库(入库编号,商品编号,数量,进货价,入库日期,仓库号,经手人,下单人)会员(卡
8、号,用户名,身份证,密码,开卡日期,用户类型,期限,积分,折扣,备注)库存(商品编码,数量)商品类别(序号,商品类别,类别名)四、数据模块列名数据类型长度允许空说明 属性SequenceNumberint4序号MerchandiseNumbervarchar20商品编码 主键TreatyCodeVarchar20条型码SortNumberVarchar20类别编号外键references类别表(SortNumber)merchandiseNameVarchar50商品名称RetailPricevarchar9零售价merchandiseSpecVarchar50商品规格UnitsVarchar
9、20计量单位PurchasePricenumeric9进货价CheckTermVarchar50保质期Remarkvarchar50备注图4.1商品表列名数据类型长度允许空说明属性EnterStockIDInt4入库编号主键MerNumbervarchar30商品编号Numbernumeric9数量 外键references库存表(Number)PurchasePricenumeric9进货价PutDatevarchar30入库日期StoreHourse_IDvarchar20仓库号dealWithHumanvarchar20经手人downNamevarchar20下单人inoutchar1图
10、4.2入/出库表列名数据类型长度允许空说明属性CardIDvarchar20卡号 主键UseNamevarchar20用户名IDCardvarchar20身份证Passwordvarchar20密码CardDatevarchar30开卡日期UserGradevarchar16用户类型termchar10期限integralchar10积分agiochar10折扣remarkvarchar200备注图4.3用户表列名数据类型长度允许空说明属性IDnumeric9MerchandiseNumbervarchar20商品编码 外键references商品表(MerchandiseNumber)Num
11、bernumeric9数量主键图4.4库存表列名数据类型长度允许空说明属性SortIDint4序号SortNumbervarchar20类别编号主键SortNamevarchar20类别名图4.5商品类别表列名数据类型长度允许空说明属性Sale_IDnumeric9销售编号主键ProductIDvarchar10商品编号 SaleDatevarchar50销售日期Numbernumeric9商品数量 外键references库存表(Number)Pricenumeric9商品单价Discountvarchar10折扣VIP_IDvarchar10会员卡号 外键references用户表(Car
12、dID)ProductNamevarchar50商品名称图4.6销售统计表五、实现界面和部分源代码5.1实现DataBase 和Java连接代码类 DBAccess.javapackage tatale;import java.sql.*;public class DBAccess private static final String DRIVER = com.microsoft.jdbc.sqlserver.SQLServerDriver; private static final String URL = jdbc:microsoft:sqlserver:/localhost:1433;
13、databaseName=SuperMarket; private static final String USER = sa; private static final String PASSWORD = 0; public static Connection getConnection() /连接数据库 Connection conn = null; try Class.forName(DRIVER); conn = DriverManager.getConnection(URL, USER, PASSWORD); catch (Exception ex) ex.printStackTra
14、ce(); return conn; 5.2实现系统总体代码图5.2-1图5.2-2类 MainFrame.javapackage tatale;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.awt.Rectangle;import javax.swing.JScrollPane;import javax.swing.JTree;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.JTable;import ja
15、vax.swing.BorderFactory;import java.awt.Color;import javax.swing.border.TitledBorder;import javax.swing.event.TreeSelectionEvent;import javax.swing.event.TreeSelectionListener;import javax.swing.event.AncestorEvent;import javax.swing.event.AncestorListener;import javax.swing.tree.TreePath;import tat
16、ale.*;import tatale.dialog.*;import tatale.means.*;import tatale.dialog.Adminstrator;import tatale.dialog.Earning;import tatale.dialog.Guayuqwomen;import tatale.dialog.JoinAndExceed;import tatale.dialog.Mytable;import tatale.dialog.PaymentList;import tatale.dialog.Put_Out_Depot;import tatale.dialog.
17、Select_card;import tatale.dialog.Stock_Dialog;import tatale.dialog.Vendition_dialog;import tatale.means.Select_Means;import tatale.MainFrame;import tatale.MainFrame_AboutBox;import tatale.MainFrame_jMenuItem10_actionAdapter;import tatale.MainFrame_jMenuItem11_actionAdapter;import tatale.MainFrame_jM
18、enuItem15_actionAdapter;import tatale.MainFrame_jMenuItem17_actionAdapter;import tatale.MainFrame_jMenuItem18_actionAdapter;import tatale.MainFrame_jMenuItem19_actionAdapter;import tatale.MainFrame_jMenuItem1_actionAdapter;import tatale.MainFrame_jMenuItem20_actionAdapter;import tatale.MainFrame_jMe
19、nuItem21_actionAdapter;import tatale.MainFrame_jMenuItem25_actionAdapter;import tatale.MainFrame_jMenuItem2_actionAdapter;import tatale.MainFrame_jMenuItem3_actionAdapter;import tatale.MainFrame_jMenuItem5_actionAdapter;import tatale.MainFrame_jMenuItem7_actionAdapter;import tatale.MainFrame_jMenuIt
20、em8_actionAdapter;import tatale.MainFrame_jMenuItem9_actionAdapter;import tatale.MainFrame_jTree1_treeSelectionAdapter;import java.util.Vector;import java.awt.Dimension;public class MainFrame extends JFrame JPanel contentPane; JMenuBar jMenuBar1 = new JMenuBar(); JMenu jMenuFile = new JMenu(); JTool
21、Bar jToolBar = new JToolBar(); JButton jButton1 = new JButton(); JButton jButton2 = new JButton(); JButton jButton3 = new JButton(); ImageIcon image1 = new ImageIcon(tatale.MainFrame.class.getResource( openFile.png); ImageIcon image2 = new ImageIcon(tatale.MainFrame.class.getResource( closeFile.png)
22、; ImageIcon image3 = new ImageIcon(tatale.MainFrame.class.getResource( help.png); JLabel statusBar = new JLabel(); JScrollPane jScrollPane1 = new JScrollPane(); JTree jTree1 = new JTree(); JMenuItem jMenuItem1 = new JMenuItem(); JMenu jMenu1 = new JMenu(); JMenu jMenu2 = new JMenu(); JMenu jMenu3 =
23、new JMenu(); JMenu jMenu4 = new JMenu(); JMenuItem jMenuItem5 = new JMenuItem(); JMenuItem jMenuItem7 = new JMenuItem(); JMenuItem jMenuItem9 = new JMenuItem(); JMenu jMenu5 = new JMenu(); JMenuItem jMenuItem10 = new JMenuItem(); JMenuItem jMenuItem11 = new JMenuItem(); JMenuItem jMenuItem17 = new J
24、MenuItem(); JMenu jMenu7 = new JMenu(); JMenuItem jMenuItem18 = new JMenuItem(); JMenuItem jMenuItem19 = new JMenuItem(); JScrollPane jScrollPane2 = new JScrollPane(); JTable jTable1 = new JTable(); TitledBorder titledBorder1 = new TitledBorder(); JMenuItem jMenuItem2 = new JMenuItem(); JMenuItem jM
25、enuItem3 = new JMenuItem(); JMenuItem jMenuItem15 = new JMenuItem(); JMenuItem jMenuItem16 = new JMenuItem(); JMenu jMenu9 = new JMenu(); JMenuItem jMenuItem8 = new JMenuItem(); JMenuItem jMenuItem20 = new JMenuItem(); JMenuItem jMenuItem21 = new JMenuItem(); JMenuItem jMenuItem22 = new JMenuItem();
26、 JMenuItem jMenuItem23 = new JMenuItem(); JMenuItem jMenuItem24 = new JMenuItem(); JMenuItem jMenuItem25 = new JMenuItem(); public MainFrame() try setDefaultCloseOperation(EXIT_ON_CLOSE); jbInit(); catch (Exception exception) exception.printStackTrace(); private void jbInit() throws Exception conten
27、tPane = (JPanel) getContentPane(); contentPane.setLayout(null); setSize(new Dimension(930, 600); setTitle(他她乐服装销售系统); statusBar.setText( ); statusBar.setBounds(new Rectangle(0, 585, 800, 15); /设置树 DefaultMutableTreeNode root = new DefaultMutableTreeNode(进销存管理); DefaultMutableTreeNode Man2 = new Defa
28、ultMutableTreeNode(销售管理); DefaultMutableTreeNode Man3 = new DefaultMutableTreeNode(库存查询); DefaultMutableTreeNode Man4 = new DefaultMutableTreeNode(用户管理); DefaultMutableTreeNode Man5 = new DefaultMutableTreeNode(信息查询); DefaultMutableTreeNode Man6 = new DefaultMutableTreeNode(商品管理); DefaultMutableTree
29、Node annal = new DefaultMutableTreeNode(入库/出库); jMenuItem1.addActionListener(new MainFrame_jMenuItem1_actionAdapter(this); jMenuItem2.setText(添加/修改用户); jMenuItem2.addActionListener(new MainFrame_jMenuItem2_actionAdapter(this); jMenuItem3.setText(个人账户查询); jMenuItem3.addActionListener(new MainFrame_jM
30、enuItem3_actionAdapter(this); jToolBar.setBackground(SystemColor.control); jMenuItem9.addActionListener(new MainFrame_jMenuItem9_actionAdapter(this); jMenuItem15.setText(后台转前台); jMenuItem15.addActionListener(new MainFrame_jMenuItem15_actionAdapter(this); jMenuItem17.addActionListener(new MainFrame_j
31、MenuItem17_actionAdapter(this); jMenuItem10.addActionListener(new MainFrame_jMenuItem10_actionAdapter(this); jMenuItem7.addActionListener(new MainFrame_jMenuItem7_actionAdapter(this); jMenuItem11.addActionListener(new MainFrame_jMenuItem11_actionAdapter(this); jMenu9.setText(按商品类别查询); jMenuItem8.set
32、Text(上衣类查询); jMenuItem8.addActionListener(new MainFrame_jMenuItem8_actionAdapter(this); jMenuItem20.setText(裤子类查询); jMenuItem20.addActionListener(new MainFrame_jMenuItem20_actionAdapter(this); jMenuItem21.setText(鞋类查询); jMenuItem21.addActionListener(new MainFrame_jMenuItem21_actionAdapter(this); jMe
33、nuItem18.addActionListener(new MainFrame_jMenuItem18_actionAdapter(this); jMenuItem19.addActionListener(new MainFrame_jMenuItem19_actionAdapter(this); jMenuItem25.setText(按商品条形码查询); jMenuItem25.addActionListener(new MainFrame_jMenuItem25_actionAdapter(this); contentPane.setBackground(Color.yellow);
34、jMenuFile.setBackground(Color.yellow); jMenu1.setBackground(Color.yellow); jMenu2.setBackground(Color.yellow); jMenu3.setBackground(Color.yellow); jMenu5.setBackground(Color.yellow); jMenu4.setBackground(Color.yellow); jMenuItem5.addActionListener(new MainFrame_jMenuItem5_actionAdapter(this); Man6.a
35、dd(annal); jMenuFile.setActionCommand(File); jMenuItem1.setText(退出); jMenu2.setText(仓库); jMenu3.setText(账户管理); jMenu4.setText(作者信息); jMenuItem5.setText(作者); jMenuItem7.setText(入库/出库); jMenu5.setText(查询); jMenuItem17.setText(销售统计); jMenu7.setText(查询商品信息); jMenuItem18.setText(按商品名称查询); jMenuItem19.set
36、Text(按商品编号查询); jScrollPane2.setBorder(BorderFactory.createLineBorder(Color.black); jScrollPane2.setBounds(new Rectangle(167, 93, 750, 435); root.add(Man2); root.add(Man3); root.add(Man4); root.add(Man5); root.add(Man6); DefaultMutableTreeNode Sells = new DefaultMutableTreeNode(销售统计); Man2.add(Sells)
37、; DefaultMutableTreeNode Storeinfr = new DefaultMutableTreeNode(库存信息浏览); DefaultMutableTreeNode Store1 = new DefaultMutableTreeNode(按库存商品编号查询); Man3.add(Storeinfr); Man3.add(Store1); DefaultMutableTreeNode UserNa = new DefaultMutableTreeNode(添加/修改用户); DefaultMutableTreeNode UserAdd = new DefaultMuta
38、bleTreeNode(个人账户查询); Man4.add(UserNa); Man4.add(UserAdd); DefaultMutableTreeNode search1 = new DefaultMutableTreeNode(按商品名称查询); DefaultMutableTreeNode search2 = new DefaultMutableTreeNode(按商品编号查询); DefaultMutableTreeNode search3 = new DefaultMutableTreeNode(按商品条形码查询); DefaultMutableTreeNode search5
39、= new DefaultMutableTreeNode(按商品类别查询); DefaultMutableTreeNode sort1 = new DefaultMutableTreeNode(上衣类查询); DefaultMutableTreeNode sort2 = new DefaultMutableTreeNode(裤子类查询); DefaultMutableTreeNode sort3 = new DefaultMutableTreeNode(鞋类查询); search5.add(sort1); search5.add(sort2); search5.add(sort3); Man5
40、.add(search1); Man5.add(search2); Man5.add(search3); Man5.add(search5); /初始化树 jTree1 = new JTree(root); jTree1.addTreeSelectionListener(new MainFrame_jTree1_treeSelectionAdapter(this); jMenuFile.setText(文件); jToolBar.setBounds(new Rectangle(0, 0, 800, 29); jScrollPane1.setBounds(new Rectangle(13, 93, 152, 435); jMenuBar1.add(jMenuFile); jMenuFile.add(jMenuItem1); jMenuBar1.add(jMenu1); jMenuBar1.add(jMenu2);