摘要: 接下来是最后一步,客户端点击“结算”按钮,服务器端需要需要做两件事:1. 把此订单的isPay字段置位,表示此订单已经结算。2. 把此订单对应的桌子的flag字段清零,表示已经没人占用此桌。要实现第一点,我们在PayDao与PayDaoImpl中添加一个方法pay():@Override public void pay(int id) { // jdbc连接数据库准备工作 DBUtil util = new DBUtil(); Connection conn = util.openConnection(); ... 阅读全文
posted @ 2013-05-17 15:04 来杯冰镇魔卡 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 这次我们向主订单信息下面添加订单明细信息,也是遵循DAO模式,然后将数据拼成html传回客户端com.moka.entity中新建一个实体类QueryOrderDetail:/** * 用于封装查一个对应订单的明细信息的实体类 */public class QueryOrderDetail { // 菜名 private String dishName; // 菜价 private int price; // 数量 private int dishNum; // 总价 private int totalPrice; // 备注 ... 阅读全文
posted @ 2013-05-17 11:55 来杯冰镇魔卡 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 完成了下单功能后,我们来编写结算功能模块,结算的主要流程为:客户端传送主订单号 ---> 服务器端接收请求 ---> 根据主订单号取出所有与该订单有关的信息 ---> 将其编写为html 传回客户端的WebView直接加载显示这一部分的服务器端实现分为上下两个部分,第一部分我们先让服务器返回主订单信息显示。我们依然使用DAO设计来实现,首先设计出一个实体类来封装根据对应订单号查出的主订单信息:com.moka.entity中新建QueryOrder.java:/** * 用于封装查一个对应订单的信息的实体类 */public class QueryOrder { // 服务员 阅读全文
posted @ 2013-05-16 18:20 来杯冰镇魔卡 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 本篇来编写Activity中的操作,使用的仍然是OrderActivity。本次编写的功能比较多,主要是要用于选择菜品,数量等信息后,将其填入下方ListView中显示出来,ListView中已点菜品可删除,最后下单。OrderActivity准备各种组件等变量,绑定监听事件:public class OrderActivity extends Activity { // 主界面组件 private Spinner tableNoSpinner = null; private EditText personNumEditText = null; private ... 阅读全文
posted @ 2013-05-16 17:27 来杯冰镇魔卡 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 接下来,我们完成客户端的添单功能。选择添菜弹出一个Dialog,选择菜品,输入数量与备注后,显示在下方的ListView中。为了方便,我们仍选择在客户端本地建立sqlite菜品表,并为其编写一个ContentProvider本篇依然先介绍数据库与ContentProvider等准备工作的编写。在com.moka.provider包中,先定义关于菜品表的元数据:public interface Menus extends BaseColumns { // 注意,此处AUTHORITY一定要和Manifest.xml中的配置完全相同 public static final ... 阅读全文
posted @ 2013-05-15 18:11 来杯冰镇魔卡 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 对于点菜来说,首先要有菜单,我们建立一张表menutbl来容纳所有菜品数据,此表结构如下:为了具体记录每个订单点了什么菜,点多少,我们还需要建立一张表orderdetailtbl来实现,此表结构如下:注:orderId与menuId为外键:orderId为ordertbl中的id字段,menuId为menutbl中的id字段于是,在服务器端的编程大体与开桌功能相同:建立该表实体类 ---> 写其DAO接口 ---> 实现该接口,这里我们仍然沿用上次建立的OrderDao接口,只在其中新添加一个方法saveOrderDetail()即可。WirelessServer中的com.mok 阅读全文
posted @ 2013-05-15 17:40 来杯冰镇魔卡 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 本篇来讨论OrderActivity中的具体操作组件等准备:public class OrderActivity extends Activity { private Spinner tableNoSpinner = null; private EditText personNumEditText = null; private Button startBtn, addMealBtn, orderBtn; @Override protected void onCreate(Bundle savedInstanceState) { su... 阅读全文
posted @ 2013-05-15 09:24 来杯冰镇魔卡 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 所谓开桌功能,就是由操作员录入待开桌号与客人人数,把这些信息传送到数据库服务器端的ordertbl表中,而为了减轻服务器端负担,我们将关于桌号等一些信息的表存入客户端的sqlite数据库中,方便客户端读取。而对本地sqlite数据的操作则借助于我们自己编写的ContentProvider类实现。由于有一定的难度,我们把这部分分为上下两个部分,本部分先讨论本地Sqlite的建立,ContentProvider的一些准备工作。在项目Wireless的com.moka.provider目录中,新建一个元数据接口Tables继承BaseColumns,public interface Tables e 阅读全文
posted @ 2013-05-14 17:58 来杯冰镇魔卡 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 为了实现顾客下单的功能,需要在MySQL数据库的中设置一张表:ordertbl然后在服务器端的Wireless项目下的com.moka.entity包中新建一个此表的对象类Order,就像登录部分的User一样:/** * 用于封装OrderTbl表的实体类 */public class Order { // 此订单编号 private int id; // 下单时间 private String orderTime; // 操作用户id private int userId; // 开桌台号 private int tableId; ... 阅读全文
posted @ 2013-05-14 17:21 来杯冰镇魔卡 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 我们向上一个系统中增加一些功能,在成功登陆后,跳转到一个主操作界面,此界面为所有功能的入口,用一个GridView来实现GridView的经典实现方法流程:布局文件中声明GridView ---> 编写一个ImageAdapter继承BaseAdapter并主要复写getView()方法 ---> 给GridView添加此adapter布局文件很简单:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schema 阅读全文
posted @ 2013-05-14 16:48 来杯冰镇魔卡 阅读(517) 评论(0) 推荐(0) 编辑