package com.sk.view;
import com.sk.dao.CuisineDao;
import com.sk.dao.impl.CuisineDaoImpl;
import com.sk.entity.Cuisine;
import com.sk.entity.Order;
import com.sk.entity.User;
import com.sk.service.CuisineService;
import com.sk.service.OrderService;
import com.sk.service.UserService;
import com.sk.service.impl.CuisineServiceImpl;
import com.sk.service.impl.OrderServiceImpl;
import com.sk.service.impl.UserServiceImpl;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Scanner;
/**
* ClassName: OrderView <br/>
* Description: <br/>
* date: 2022/1/4 10:57<br/>
*
* @author 斑马<br />
*/
public class OrderView {
Scanner sc=new Scanner(System.in);
OrderService orderService=new OrderServiceImpl();
/**点餐*/
public void addOrder(User user){
//显示商品
new CuisineView().showCuisine0();
System.out.println("请输入要购买的菜品编号:");
int cid=sc.nextInt();
System.out.println("请输入购买数量:");
int num=sc.nextInt();
Order o=orderService.addOrder(user.getTel(),cid,num);
if(o!=null){
System.out.println("点餐成功!总金额:"+o.getSum());
System.out.println("是否付款?y/n");
String str=sc.next();
if(str.equals("y")){
orderService.updateStateById(o.getoId(),1);
System.out.println("付款成功!");
}else{
System.out.println("付款失败!");
}
}else{
System.out.println("点餐失败!菜品不存在!");
}
}
/**查看订单*/
public void showOrder(User user){
List<Order> list=orderService.showOrderByTel(user.getTel());
CuisineService service=new CuisineServiceImpl();
System.out.println("订单编号:\t菜品名称\t菜品单价\t购买数量\t总价\t配送状态\t购买日期");
for (Order o:list){
if(o.getAbandon()==1){//弃用
continue;
}
//根据菜品编号找到对应的菜品
Cuisine c=service.showCuisineByCid(o.getcId());
Date date=o.getDate();
SimpleDateFormat sm=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String d=sm.format(date);//格式化日期类型
String state=null;
switch (o.getState()){
case 0:
state="未付款";
break;
case 1:
state="已付款";
break;
case 2:
state="配送中";
break;
case 3:
state="已签收";
break;
}
System.out.println(o.getoId()+"\t"+c.getcName()+"\t"+c.getPrice()+"\t"+o.getNum()
+"\t"+o.getSum()+"\t"+state+"\t"+d
);
}
}
//System.out.println("3.确认收货");
public void receiving(User user){
//显示未收货的列表
List<Order> list=orderService.showOrderByTelAndState(user.getTel(),2);
CuisineService service=new CuisineServiceImpl();
System.out.println("订单编号:\t菜品名称\t菜品单价\t购买数量\t总价\t配送状态\t购买日期");
for (Order o:list){
//根据菜品编号找到对应的菜品
Cuisine c=service.showCuisineByCid(o.getcId());
Date date=o.getDate();
SimpleDateFormat sm=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String d=sm.format(date);//格式化日期类型
System.out.println(o.getoId()+"\t"+c.getcName()+"\t"+c.getPrice()+"\t"+o.getNum()
+"\t"+o.getSum()+"\t"+"配送中\t"+d
);
}
System.out.println("请输入要确认收货的订单编号:");
int oid=sc.nextInt();
boolean flag=orderService.updateStateById(oid,3);
if(flag){
System.out.println("签收成功!");
}else {
System.out.println("签收失败!");
}
}
/**删除订单*/
public void delete(User user){
showOrder(user);//显示所有订单
System.out.println("请输入要删除的订单");
int oid=sc.nextInt();
boolean flag=orderService.updateAbandonById(oid,1);
if(flag){
System.out.println("删除成功!");
}else {
System.out.println("删除失败!");
}
}
/**显示所有订单*/
public void showAllOrder(){
CuisineService service=new CuisineServiceImpl();
UserService userService=new UserServiceImpl();
//所有的订单
List<Order> list=orderService.showOrders();
System.out.println("订单编号:\t菜品名称\t菜品单价\t购买数量\t总价\t配送状态\t购买日期\t用户\t收货地址");
for (Order o:list){
//根据菜品编号找到对应的菜品
Cuisine c=service.showCuisineByCid(o.getcId());
Date date=o.getDate();
SimpleDateFormat sm=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String d=sm.format(date);//格式化日期类型
User user=userService.findUserByTel(o.getTel());
String state=null;
switch (o.getState()){
case 0:
state="未付款";
break;
case 1:
state="已付款";
break;
case 2:
state="配送中";
break;
case 3:
state="已签收";
break;
}
System.out.println(o.getoId()+"\t"+c.getcName()+"\t"+c.getPrice()+"\t"+o.getNum()
+"\t"+o.getSum()+"\t"+state+"\t"+d+"\t"+user.getTel()+"\t"+user.getAddress()
);
}
}
/**配送订单*/
public void distribution(){
//显示所有需要配送的订单
List<Order> list=orderService.showOrdersByState(1);
CuisineService service=new CuisineServiceImpl();
UserService userService=new UserServiceImpl();
System.out.println("订单编号:\t菜品名称\t菜品单价\t购买数量\t总价\t配送状态\t购买日期\t手机号\t收货地址");
for (Order o:list){
//根据菜品编号找到对应的菜品
Cuisine c=service.showCuisineByCid(o.getcId());
Date date=o.getDate();
SimpleDateFormat sm=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String d=sm.format(date);//格式化日期类型
User user=userService.findUserByTel(o.getTel());
System.out.println(o.getoId()+"\t"+c.getcName()+"\t"+c.getPrice()+"\t"+o.getNum()
+"\t"+o.getSum()+"\t"+"已付款\t"+d+"\t"+user.getTel()+"\t"+user.getAddress()
);
}
//配送单个订单
System.out.println("请输入配送的订单编号:");
int oid=sc.nextInt();
boolean flag= orderService.updateStateById(oid,2);
if(flag){
System.out.println("配送成功");
}else {
System.out.println("配送失败");
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
JAVASE点餐系统,java基础项目练习
共64个文件
java:27个
class:27个
xml:4个
需积分: 50 3 下载量 39 浏览量
2022-01-05
10:22:49
上传
评论 1
收藏 58KB ZIP 举报
温馨提示
使用面向对象集合框架序列化反序列化完成的点餐系统
资源详情
资源评论
资源推荐
收起资源包目录
shop.zip (64个子文件)
shop
out
production
shop
com
sk
dao
AdminDao.class 201B
impl
UserDaoImpl.class 2KB
CuisineDaoImpl.class 3KB
OrderDaoImpl.class 3KB
AdminDaoImpl.class 1KB
CuisineDao.class 513B
UserDao.class 334B
OrderDao.class 726B
test
Test.class 2KB
view
OrderView.class 7KB
View.class 1KB
UserView.class 4KB
CuisineView.class 5KB
AdminView.class 3KB
service
UserService.class 346B
CuisineService.class 530B
OrderService.class 734B
AdminService.class 213B
impl
CuisineServiceImpl.class 2KB
AdminServiceImpl.class 608B
OrderServiceImpl.class 2KB
UserServiceImpl.class 1KB
entity
Order.class 2KB
User.class 1KB
Cuisine.class 2KB
Admin.class 883B
util
DataUtil.class 3KB
user.data 185B
admin.data 165B
src
com
sk
dao
CuisineDao.java 703B
UserDao.java 497B
OrderDao.java 864B
impl
AdminDaoImpl.java 627B
UserDaoImpl.java 1KB
OrderDaoImpl.java 2KB
CuisineDaoImpl.java 2KB
AdminDao.java 306B
test
Test.java 2KB
view
View.java 819B
AdminView.java 2KB
OrderView.java 6KB
CuisineView.java 5KB
UserView.java 3KB
service
UserService.java 508B
AdminService.java 319B
impl
CuisineServiceImpl.java 1KB
OrderServiceImpl.java 2KB
UserServiceImpl.java 783B
AdminServiceImpl.java 474B
OrderService.java 825B
CuisineService.java 669B
entity
Order.java 2KB
User.java 963B
Cuisine.java 1KB
Admin.java 646B
util
DataUtil.java 1KB
cuisine.data 357B
.idea
.gitignore 223B
uiDesigner.xml 9KB
workspace.xml 7KB
misc.xml 278B
modules.xml 255B
shop.iml 433B
order.data 428B
共 64 条
- 1
斑马有点困
- 粉丝: 636
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0