商品销售统计课程设计Word版_第1页
商品销售统计课程设计Word版_第2页
商品销售统计课程设计Word版_第3页
商品销售统计课程设计Word版_第4页
商品销售统计课程设计Word版_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、传播优秀Word版文档 ,希望对您有帮助,可双击去除!目录一、课程设计概述3二、系统的需求分析3三、系统总体设计6四、详细设计7五、 系统实现11六、系统测试18七、课程设计总结21八、参考文献21一、课程设计概述系统的主要目标减轻收银时计算商品总价的复杂度系统的开发环境及运行环境操作系统:Windos7Java版本:5IDE:myeclipse 2017 CI二、系统的需求分析1.系统可行性分析技术复杂度相对简单投入资金小对于社会普遍存在的收银时计算问题得到良好解决人员投入1人2. 系统功能需求分析商品销售统计系统的完整功能如下:2.1输入商品信息管理对于输入的商品,可以进行数

2、量上的修改,以及商品的删除2.2销售统计管理对已输入的商品进行总价统计,并能在商品数量多的时候进行分页显示3. 系统功能描述此系统的主要功能就是把人们从繁琐的收钱计费中解脱出来,通过计算机来计算出所应收取的钱数。4. 系统的数据流图商品销售统计系统是基于pc上的系统,通过数据库里的商品单价来进行计算总价操作。商品销售统计系统的基本数据流图如图1所示。图 1分析商品销售统计系统的功能需求,得到功能级数据流图如图2。图 25. 系统UML建模设计:6. 系统的用例分析7. 系统的状态图8. 系统的UML类图三、系统总体设计系统结构方框图各模块功能详细的UML类图设计数据管理子系统:数据库只有一张图

3、表故省略掉E-R图、数据表之间的关系、数据库表结构数据库表设计人机交互子系统四、详细设计各模块的流程图主模块结算商品输入商品修改商品删除商品查询商品5、 系统实现想使用工厂模式来进行事务的调用,又因为种种因素而没直接使用,而直接装进了主调用功能类中各模块、各个类的具体实现 (包括截图)对应与Mybatis的接口statisticsModel 模型类SetXXX . getXXX .int id;String name;int mea;float price;double amount; / 考虑计量单位的不同double total; /单类商品 的总价格Overridepublic Stri

4、ng toString() String str;if(mea=0)str=件;return 编号:+id+, 商品名称: + name + , 计量单位: +str+ , 价格: + price + /+str+, 数量:+ amount+ 件, 合计:+total+;elsestr=kg;return 编号:+id+, 商品名称: + name + , 计量单位: +str+ , 价格: + price + /+str+, 重量:+ amount+ kg, 合计:+total+;重点功能的实现statisticsUtil 商品查询功能类package com.util;import jav

5、a.io.IOException;import java.io.Reader;import java.util.List;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import com.impl.statisticsOperation;import com.m

6、odel.statisticsModel;public class statisticsUtil private static SqlSessionFactory sqlSessionFactory;private static Reader reader;statictry reader=Resources.getResourceAsReader(com/conf/dbconf.xml);sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader); catch (IOException e) / TODO Auto-gen

7、erated catch blocke.printStackTrace();public void all_select()SqlSession sqlSession=sqlSessionFactory.openSession();List query_msg=null;try statisticsOperation statisticsOperation=sqlSession.getMapper(statisticsOperation.class);query_msg=statisticsOperation.all_select(); catch (Exception e) / TODO A

8、uto-generated catch blocke.printStackTrace();finally sqlSession.close();for(int j=0;jquery_msg.size();j+)System.out.println(query_msg:+query_msg.get(j);/查找商品public statisticsModel statistics_select(int id)SqlSession sqlSession=sqlSessionFactory.openSession();statisticsModel myModel=null;List query_m

9、sg=null;try statisticsOperation statisticsOperation=sqlSession.getMapper(statisticsOperation.class);query_msg=statisticsOperation.statistics_select(id); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();finally sqlSession.close();for(int j=0;jquery_msg.size();j+)myModel=(stati

10、sticsModel)query_msg.get(j);System.out.println(query_msg:+query_msg.get(j);return myModel;主功能类 testpackage com.serv;import java.util.ArrayList;import java.util.List;import java.util.Scanner;import com.model.statisticsModel;import com.util.statisticsUtil;public class test public static statisticsUtil

11、 statisticsUtil = new statisticsUtil();public static void main(String args) List sale = new ArrayList();statisticsModel temp = null;double total = 0;boolean flag = true;/ TODO Auto-generated method stubSystem.out.println(欢迎进入商品销售管理系统);System.out.println(请输入相应的数字执行对应的操作:);Scanner scanner = new Scanne

12、r(System.in);String key = ;while (flag) System.out.println(1.输入商品 2.修改商品数量 3.删除商品 4.查看总价统计 0.重新计算 其他.退出系统);System.out.println(-我是可爱的分隔符-);try key = scanner.nextLine(); catch (Exception e) / TODO: handle exceptione.printStackTrace();switch (key) case 1:statisticsUtil.all_select();while (true) System.

13、out.println(请输入商品编号:(非数字结束输入);int number;try number = scanner.nextInt(); catch (Exception e1) / TODO Auto-generated catch blockbreak;try temp = statisticsUtil.statistics_select(number);if (temp = null) System.out.println(无此商品);continue;if(temp.getMea()=0)System.out.println(清输入数量:);else if(temp.getMe

14、a()=1)System.out.println(请输入重量 单位kg);double amount = scanner.nextDouble();System.out.println(amount);temp.setAmount(amount);temp.setTotal();sale.add(temp); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();scanner.nextLine();break;case 2:System.out.println(请输入要修改的行号:);try int

15、index = scanner.nextInt();temp = (statisticsModel) sale.get(index);System.out.println(请输入要修改的数量:);double number = scanner.nextDouble();temp.setAmount(number);temp.setTotal();sale.set(index, temp);scanner.nextLine();System.out.println(修改成功!); catch (Exception e) / TODO Auto-generated catch blocke.pri

16、ntStackTrace();break;case 3:System.out.println(请输入要删除的行号:);try int index = scanner.nextInt();sale.remove(index);scanner.nextLine();System.out.println(删除成功!); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();break;case 4:for (int i = 0; i sale.size(); i+) System.out.println(i + . + sale.get(i);total += (statisticsModel) sale.get(i).getTotal();System.out.println(共计: + total + 元);total = 0;break;case 0:sale.clear();break;default:flag = false;break;System.out.println(再见);六、系统测试测试用例测

温馨提示

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

评论

0/150

提交评论