public ActionResult OrderDetail(int?oid)
        {
            if (oid == null)
            {
                RedirectToAction("Index");
            }

            #region 列出訂單明細
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            DB.DB     mydb       = new DB.DB();
            DB.IOrder io         = new DB.Impl_Order(mydb.Connection);
            DataTable tt         = io.GetOrderDetail(oid.Value);
            int       totalPrice = 0;
            if (tt != null)
            {
                foreach (DataRow r in tt.Rows)
                {
                    totalPrice += (int)r["proPrice"] * (int)r["quantity"];
                    sb.Append("<tr>");
                    sb.Append(string.Format("<td>{0}</td>", r["proName"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["proPrice"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["quantity"].ToString()));
                    sb.Append("</tr>");
                }
            }
            ViewData["orderID"]         = oid.ToString();
            ViewData["totalPrice"]      = totalPrice.ToString();
            ViewData["orderDetailList"] = sb.ToString();
            #endregion

            return(View());
        }
        // GET: Customer
        public ActionResult Index()
        {
            #region 列出訂單
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            DB.DB     mydb = new DB.DB();
            DB.IOrder io   = new DB.Impl_Order(mydb.Connection);
            DataTable tt   = io.GetOrderInfoByCustPhone(Session["Login"].ToString());
            if (tt != null)
            {
                foreach (DataRow r in tt.Rows)
                {
                    sb.Append("<tr>");
                    sb.Append(string.Format("<td align=\"center\"><a style=\"text-decoration:underline\" href=\"/Customer/OrderDetail?oid={0}\">{1}</a></td>", r["orderID"].ToString(), r["orderID"].ToString()));
                    sb.Append(string.Format("<td align=\"center\">{0}</td>", r["rcptName"].ToString()));
                    sb.Append(string.Format("<td align=\"center\">{0}</td>", r["rcptPhone"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["rcptAddr"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["DTName"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["Shipping"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["orderState"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["orderNote"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["orderTime"].ToString()));
                    sb.Append("</tr>");
                }
            }
            ViewData["orderList"] = sb.ToString();
            #endregion

            return(View());
        }
 public ActionResult ChageOrderState(Models.Order order)
 {
     DB.DB     mydb = new DB.DB("SQLAdmin", "admin1234");
     DB.IOrder io   = new DB.Impl_Order(mydb.Connection);
     io.UpdateOrder(order.orderID, order.orderState);
     return(RedirectToAction("ManageOrder"));
 }
        public ActionResult ManageOrder()
        {
            #region 列出訂單
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            DB.DB     mydb = new DB.DB();
            DB.IOrder io   = new DB.Impl_Order(mydb.Connection);
            DataTable tt   = io.GetOrderInfo();
            if (tt != null)
            {
                foreach (DataRow r in tt.Rows)
                {
                    sb.Append("<tr>");
                    sb.Append(string.Format("<td align=\"center\">{0}</td>", r["orderID"].ToString()));
                    sb.Append(string.Format("<td align=\"center\">{0}</td>", r["custID"].ToString()));
                    sb.Append(string.Format("<td align=\"center\">{0}</td>", r["rcptName"].ToString()));
                    sb.Append(string.Format("<td align=\"center\">{0}</td>", r["rcptPhone"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["rcptAddr"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["DTName"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["Shipping"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["orderState"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["orderNote"].ToString()));
                    sb.Append(string.Format("<td>{0}</td>", r["orderTime"].ToString()));
                    sb.Append("</tr>");
                }
            }
            ViewData["orderList"] = sb.ToString();
            #endregion

            return(View());
        }
        public ActionResult PlaceOrder(Models.Order order)
        {
            if (Session["Cart"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            DB.DB        mydb = new DB.DB();
            DB.ICustomer ic   = new DB.Impl_Customer(mydb.Connection);
            order.custID = ic.GetCustIDByPhone(Session["Login"].ToString());

            DB.DB     mydb2 = new DB.DB("SQLAdmin", "admin1234");
            DB.IOrder io    = new DB.Impl_Order(mydb2.Connection);
            order.orderID = io.AddNewOrder(order.custID, order.rcptName, order.rcptPhone, order.rcptAddr, order.DTID, order.Shipping, order.orderNote);

            HashSet <Models.CartItem> myCart =
                Session["Cart"] as HashSet <Models.CartItem>;

            List <Dictionary <string, object> > items = new List <Dictionary <string, object> >();

            foreach (Models.CartItem ii in myCart)
            {
                Dictionary <string, object> temp = new Dictionary <string, object>();
                temp["proID"]    = ii.ID;
                temp["Quantity"] = ii.Quantity;
                items.Add(temp);
            }

            DB.DB     mydb3  = new DB.DB("SQLAdmin", "admin1234");
            DB.IOrder io2    = new DB.Impl_Order(mydb3.Connection);
            bool      finish = io2.AddCartItems(order.orderID, items);

            if (finish)
            {
                return(RedirectToAction("FinishOrder", new { msg = "已完成訂單!請至個人中心查看!" }));
            }
            else
            {
                return(RedirectToAction("FinishOrder", new { msg = "訂單失敗!請重新下訂貨聯絡客服!" }));
            }
        }