北大青鸟第一单元超市收银管理系统解析.docx

上传人:b****6 文档编号:9087977 上传时间:2023-02-03 格式:DOCX 页数:61 大小:43.75KB
下载 相关 举报
北大青鸟第一单元超市收银管理系统解析.docx_第1页
第1页 / 共61页
北大青鸟第一单元超市收银管理系统解析.docx_第2页
第2页 / 共61页
北大青鸟第一单元超市收银管理系统解析.docx_第3页
第3页 / 共61页
北大青鸟第一单元超市收银管理系统解析.docx_第4页
第4页 / 共61页
北大青鸟第一单元超市收银管理系统解析.docx_第5页
第5页 / 共61页
点击查看更多>>
下载资源
资源描述

北大青鸟第一单元超市收银管理系统解析.docx

《北大青鸟第一单元超市收银管理系统解析.docx》由会员分享,可在线阅读,更多相关《北大青鸟第一单元超市收银管理系统解析.docx(61页珍藏版)》请在冰豆网上搜索。

北大青鸟第一单元超市收银管理系统解析.docx

北大青鸟第一单元超市收银管理系统解析

包结构

四个包,九个类,一个资源文件

客户端类

packagecom.supermarket.Client;

/**

*客户端界面

*/

importjava.text.SimpleDateFormat;

importjava.util.ArrayList;

importjava.util.Date;

importjava.util.Scanner;

importcom.supermarket.Tools.Datas;

importcom.supermarket.Tools.SysConstans;

importcom.supermarket.entity.Goods;

publicclassClient{

//定义扫描器,用于键盘输入

publicstaticScannerinput=newScanner(System.in);

//创建客户端业务类对象,调用方法

publicstaticClientBcb=newClientB();

publicstaticvoidmain(String[]args){

do{

System.out.println("***********欢迎使用青鸟超市系统*************");

System.out.println("1.登录"+"\n2.退出");

System.out.println("***********请选择1/2*************");

Stringchoice=input.next();

if(choice.equals("1")){

//登录视图

createLoginView();

break;

}

elseif(choice.equals("2")){

//退出

System.exit(0);

}

else{

//输入有误,报错

System.out.println("无此选项!

");

}

}while(true);

System.out.println("***********谢谢使用青鸟超市系统*************");

}

/**

*登录视图

*通过输入的用户名与密码验证用户身份,管理员则进入管理界面,收银员则进入收银界面,都不是则提示错误,并重新进行输入

*/

publicstaticvoidcreateLoginView(){

do{

//提示登录信息

System.out.println("请输入用户名:

");

Stringname=input.next();

System.out.println("请输入密码:

");

Stringpassword=input.next();

//调用客户端登录方法,接收返回值,判断登录者的身份

Datasdatas=cb.doLogin(name,password);

//判断是管理员还是收银员

if(datas.getFlag().equals(SysConstans.SYS_ADMIN)){

createAdminView();

break;

}elseif(datas.getFlag().equals(SysConstans.SYS_CASHIER)){

createCashierView();

break;

}else{

System.out.println("用户名或密码有误,请重新输入");

}

}while(true);

}

/**

*管理员菜单

*实现管理员功能:

*1.商品入库2.商品出库3.新增商品4.查询全部商品5.按编号查询商品6.退出

*/

privatestaticvoidcreateAdminView(){

//循环操作

//管理员菜单

System.out.println("管理员登录成功,进入管理员界面");

do{

System.out.println("***********欢迎进入青鸟超市库存管理系统*************");

System.out.println("1.商品入库\t2.商品出库\t3.新增商品\t4.查询全部商品\t5.按序号查询商品\t6.退出");

//提示用户选择

System.out.println("请输入您的选择");

intchoice=input.nextInt();

switch(choice){

//商品入库,调入库方法

case1:

//提示输入要入库的编号

System.out.println("请输入入库商品编号:

");

//定义变量接收输入的编号

Stringgoodnum=input.next();

//调用方法判断库存中是否有要入库的商品

if(cb.Find(goodnum).getFlag().equals(SysConstans.SYS_SUCCESS)){

System.out.println("请输入入库数量:

");

intcount=input.nextInt();

if(count>=0){

Datasdatas=cb.RuKu(goodnum,count);

if(datas.getFlag().equals(SysConstans.SYS_SUCCESS)){

System.out.println("入库成功!

");

showList(cb.FindAll());

}

}else{

System.out.println("入库数量必须大于0");

}

}else{

System.out.println("无此商品,请选择3新增");

}

break;

//商品出库,调出库方法

case2:

do{//提示输入出库商品编号

System.out.println("请选择出库商品编号:

");

//定义变量接收编号

Stringgoodid=input.next();

//先查询是否由此商品

if(cb.Find(goodid).getFlag().equals(SysConstans.SYS_SUCCESS)){

//提示输入出库数量

System.out.println("请输入出库数量:

");

intcount=input.nextInt();

if(count>0){

Datasdatas=cb.ChuKu(goodid,count);

if(datas.getFlag().equals(SysConstans.SYS_LACK)){

System.out.println("库存不足!

");

showGood(datas);

break;

}else{

System.out.println("出库成功!

");

showList(datas);

break;

}

}else{

System.out.println("出库数量必须大于0!

");

}

}else{

System.out.println("库存中无此商品,请选择3新增");

break;

}

}while(true);

break;

case3:

//新增商品,调新增方法

do{//提示输入新增商品编号

System.out.println("请输入新增商品的编号:

");

Stringnewgoodid=input.next();

if(cb.Find(newgoodid).getFlag().equals(SysConstans.SYS_SUCCESS)){

System.out.println("商品已存在");

break;

}

else{

System.out.println("请输入商品名称:

");

Stringname=input.next();

System.out.println("请输入商品单价:

");

doubleprice=input.nextDouble();

System.out.println("请输入商品单位:

");

Stringunit=input.next();

System.out.println("请输入商品数量:

");

intcount=input.nextInt();

Goodsgood=newGoods(newgoodid,(name+"\t"),price,unit,count);

//把要新增的商品通过调用方法传给业务类,并接收返回值

Datasdatas=cb.Add(good);

System.out.println("新增商品成功!

");

//打印商品列表

showList(cb.FindAll());

break;

}

}while(true);

break;

//查询全部商品的方法

case4:

//查询商品,调用showList方法参数为Datas类型,是FindAll传回来的

showList(cb.FindAll());

break;

//按编号查询商品,调按编号查询方法

case5:

//提示输入编号

System.out.println("请输入要查询的编号:

");

//定义变量接收输入

Stringid=input.next();

//判断库存中是否存在编号为goodid的商品

Datasdatas=cb.Find(id);

//如果存在,调用方法,打印商品

if(datas.getFlag().equals(SysConstans.SYS_SUCCESS)){

showGood(datas);

}else{

System.out.println("没有此商品");

}

break;

case6:

//退出

System.out.println("管理员退出成功!

");

System.exit(0);

default:

//提示无此选项

System.out.println("无此选项,请重新输入:

");

}

}while(true);

}

/**

*收银员管理界面.

*实现收银员的功能:

*1.扫描商品2.修改购买商品的数量3.结账4.退出

*/

//收银员管理界面

privatestaticvoidcreateCashierView(){

//循环操作收银界面

while(true){

System.out.println("收银员登录成功,进入收银员界面");

System.out.println("***********欢迎进入青鸟超市收银管理系统*************");

System.out.println("1.扫描商品\t2.修改数量\t3.结账\t4.退出");

//提示用户输入操作选项

System.out.println("请输入您的选择:

");

intchoice=input.nextInt();

switch(choice){

case1:

//调用扫描方法

do{

//提示输入扫描编号

System.out.println("请输入要扫描的商品编号:

");

Stringscannum=input.next();

//如果查询到编号,说明商品存在,否则商品不存在

if(cb.Find(scannum).getFlag().equals(SysConstans.SYS_SUCCESS)){

//如果商品存在,调用扫描的方法

Datasdatas=cb.scan(scannum);

//判断返回的标识

if(datas.getFlag().equals(SysConstans.SYS_SUCCESS)){

System.out.println("扫描成功");

showScan(datas);

break;

}else{

System.out.println("扫描失败");

//showScan(datas);

break;

}

}else{

System.out.println("商品不存在!

");

break;

}

}while(true);

break;

case2:

//修改数量的方法

//判断购买列表是否为空

if(cb.result().getFlag().equals(SysConstans.SYS_ERROR)){

System.out.println("购买列表中还没有购买物品!

");

continue;

}

//循环操作数据

do{

//提示用户输入要修改的编号,并判断购买列表中是否存在此编号

System.out.println("请输入要修改的商品编号:

");

Stringchangeid=input.next();

Datasdatas=newDatas();

//调用方法判断是否存在商品编号

if(hasid(changeid)){

//存在,提示修改数量

System.out.println("请输入修改后的数量");

intchangenum=input.nextInt();

if(changenum>1){

datas=cb.ChangeCount(changeid,changenum);

if(datas.getFlag().equals(SysConstans.SYS_LACK)){

System.out.println("数量不足,请确认!

");

showGood(cb.Find(changeid));

continue;

}else{

System.out.println("修改成功!

");

showScan(cb.result());

break;

}

}else{

System.out.println("购买数量必须大于0!

");

break;

}

}

//如果包含,提示修改数量

System.out.println("购买列表中无此商品,请核实");

continue;

}while(true);

break;

case3:

//调用结账方法

creatOver();

break;

case4:

//退出

System.out.println("收银员退出系统成功!

");

System.exit(0);

default:

//错误提示

System.out.println("输入有问题,请重新输入:

");

}

}

}

/**

*打印商品列表的方法,参数是Datas类型,无返回值

*通过调用客户端业务类的方法得到返回值,打印商品列表

*@paramdatas

*/

//打印商品列表

privatestaticvoidshowList(Datasdatas){

System.out.println("------------------------------------------------------------------------------------------------");

System.out.println("商品编号\t\t商品名称\t\t\t\t商品单价\t\t单位\t\t数量");

for(Goodsgood:

datas.getGoodslist()){

System.out.println(good.getGoodid()+"\t\t"+good.getGoodname()+"\t\t"+good.getGoodprice()+"\t\t"+good.getGoodunit()+"\t\t"+good.getGoodcount());

}

System.out.println("------------------------------------------------------------------------------------------------");

}

/**

*按编号查询商品的方法.得到返回值,直接打印返回值中的商品

*@paramdatas

*/

//打印单个商品

privatestaticvoidshowGood(Datasdatas){

System.out.println("------------------------------------------------------------------------------------------------");

System.out.println("商品编号\t\t商品名称\t\t\t\t商品单价\t\t单位\t\t数量");

System.out.println(datas.getGood().getGoodid()+"\t\t"+datas.getGood().getGoodname()+"\t\t"

+datas.getGood().getGoodprice()+"\t\t"+datas.getGood().getGoodunit()+"\t\t"+datas.getGood().getGoodcount());

System.out.println("------------------------------------------------------------------------------------------------");

}

/**

*收银员菜单中的扫描商品的方法后打印扫描商品列表的方法

*

*@paramdatas

*/

//打印扫描商品列表

privatestaticvoidshowScan(Datasdatas){

if(datas.getFlag().equals(SysConstans.SYS_SUCCESS)){

//定义列表接收扫描后的购买列表

ArrayListscanlist=datas.getBuylist();

//输出商品列表

System.out.println("商品编号\t商品名称\t\t\t\t数量\t\t单价\t\t金额");

System.out.println("------------------------------------------------------------------------------------------------");

for(Goodsgood:

scanlist){

System.out.println(good.getGoodid()+"\t"+good.getGoodname()+"\t\t"+good.getGoodcount()+"\t\t"+good.getGoodprice()+"\t\t"+

(good.getGoodprice()*good.getGoodcount()));

}

System.out.println("------------------------------------------------------------------------------------------------");

}

}

/**

*查询购买列表中是否存在要修改数量的商品

*参数为商品编号,如果存在,返回true.不存在则返回false

*@paramid

*@return

*/

//查询购买列表中是否存在要修改数量商品的编号

privatestaticbooleanhasid(Stringid){

Datasdatas=newDatas();

datas.setBuylist(cb.result().getBuylist());

for(Goodsgood:

datas.getBuylist()){

if(good.getGoodid().equals(id)){

returntrue;

}

}

returnfalse;

}

/**

*结账方法,分为普通结账和会员结账

*普通结账和会员结账,分别调用普通结账方法和会员结账方法

*/

//结账方法

privatestaticvoidcreatOver(){

//首先打印购买列表,算出总金额.调用普通结账,或vip结账

doublemoney=sum(cb.result());

//Sys

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1