4.3.3 营业员
营业员需要读取库存中的信息,然后通过选择商品,输入对应的金额,并返回收银找零页面。
收银找零页面如图4-10所示,收银顺序图如图4-11所示。
图4-10 收银找零页面
图4-11 收银顺序图
首先,营业员根据客户要购买的东西,在库存表里选择商品。点击“添加”按钮,表示客户选购了这个商品。完成商品添加后,会将参数传送到gouwuServlet,调用add()方法,在该方法中调用GouwuDaoImpl类的addgouwu(),这个商品就会添加到购物表中,然后在购物表中显示这个商品。如果在购物表中点击“删除”按钮,则会将参数传送到gouwuServlet,调用del()方法,在该方法中调用GouwuDaoImpl类的delgouwu(),这个商品就会从购物表中删除,表示客户不选择这个商品。在每次点击“添加”或“删除”按钮后,调用GouwuDaoImpl类的listgouwu()方法,会让表格中的数据实时地更新。在gouwuServlet中,float类的变量用来存放根据单价和数量计算出的单个商品的总价。在gouwuServlet层里调用GouwuDaoImpl类的jiesuan()方法,当点击“添加”或“删除”按钮时都会调用这个方法,这样计算出来的总价在〈span〉标签中就会实时地变动。
收银功能:这里设置一个输入框,用来表示用户支付的实际价格。计算原理是,在jsp中编写一个js,根据id来获取输入框和代表总价的〈span〉里的值进行计算,然后赋值给另一个代表找零的〈span〉里。我们再设置一个〈button〉,点击“结账”按钮就会调用js中的方法计算出价格。
结账完成后要点击清空购物表,会传送一个action参数中的值到gouwuServlet,调用delall()方法,在该方法中调用Gouwu DaoImpl类的delgouwuall()方法清空购物表。