// 模擬從表單傳送進來的點餐資訊
        private 點餐 submit點餐()
        {
            點餐          dining      = new 點餐();
            List <點餐項目> itemList    = new List <點餐項目>();
            點餐項目        diningItem1 = new 點餐項目();
            點餐項目        diningItem2 = new 點餐項目();

            // 勾選菜單列表上的1份主餐、2杯素食咖啡
            菜單項目 item1, item2;

            item1       = new 菜單項目();
            item1.id    = "001";
            item1.name  = "主餐-義大利麵";
            item1.price = 280;

            item2       = new 菜單項目();
            item2.id    = "003";
            item2.name  = "附餐-素咖啡";
            item2.price = 90;

            // 點餐項目
            diningItem1.item     = item1;
            diningItem1.quantity = 1;
            diningItem2.item     = item2;
            diningItem2.quantity = 2;

            // 點餐
            dining.tableNo = "8";    // 桌號:8
            itemList.Add(diningItem1);
            itemList.Add(diningItem2);
            dining.itemList = itemList;

            return(dining);
        }
        public void test確認點餐總額()
        {
            // 點1份主餐、2杯素咖啡
            int expected = 460;  // 期望值
            int actual;          // 實際值

            點餐 dining = this.submit點餐();

            actual = control.確認點餐資訊(dining).totalPrice;

            Assert.AreEqual(expected, actual);
        }
        public 點餐 確認點餐資訊(點餐 dining)
        {
            // 計算點餐總額
            int total = 0;

            foreach (點餐項目 diningItem in dining.itemList)
            {
                // 計算點餐項目分項金額
                int subtotal = diningItem.item.price * diningItem.quantity;
                total = total + subtotal;
                diningItem.subTotalPrice = subtotal;
            }
            dining.totalPrice = total;

            return(dining);
        }
 public bool Save點餐交易(點餐 dining)
 {
     // 未來實做 INSERT 至 RDB,尚未完成前先回傳 false
     return(false);
 }