/// <summary>
        /// Neu thanh cong -> true, that bai -> false
        /// </summary>
        /// <param name="email"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public static async Task API_Order(BeanDonHang beanDonHang, List <BeanItemCart> lstGioHang)
        {
            try
            {
                //beanDonHang = new BeanDonHang();
                //beanDonHang.MaKH = "e605743b-314a-48d9-b292-bc46d7880bf4";
                //beanDonHang.DiaChi = "31B Sư Vạn Hạnh Phường 3 Quận 10 Tp.Hồ Chí Minh";
                //beanDonHang.PhiVanChuyen = 15000;
                //beanDonHang.ThanhTien = 65000;

                //lstGioHang = new List<BeanItemCart>();
                //BeanItemCart temp = new BeanItemCart();
                //temp.MaMon = 2;
                //temp.TenMon = "Cơm Sườn Nướng";
                //temp.GiaTien = 50000;
                //temp.HinhAnh = "ComSuonNuong.jpeg";
                //temp.SoLuong = 1;
                //lstGioHang.Add(temp);

                //Link/ApiDonHang.ashx?func=update
                RESULT_APIADD_BILL = false;

                _APIDetailName     = "/Link/ApiDonHang.ashx?func=update";
                _BeanAPIResult     = new BeanAPI();
                client             = new HttpClient();
                client.BaseAddress = new Uri(_SiteName);
                string jsonBDonHang   = JsonConvert.SerializeObject(beanDonHang);
                string jsonBCTDonHang = JsonConvert.SerializeObject(lstGioHang);
                var    jsonData       = new FormUrlEncodedContent(new[]
                {
                    new KeyValuePair <string, string>("Data", "{\"jsonBDonHang\":" + jsonBDonHang + ",\"jsonBCTDonHang\":" + jsonBCTDonHang + "}")
                });

                HttpResponseMessage response = await client.PostAsync(_APIDetailName, jsonData);

                if (response.IsSuccessStatusCode) // thanh cong -> lay ket qua ve
                {
                    _BeanAPIResult = JsonConvert.DeserializeObject <BeanAPI>(await response.Content.ReadAsStringAsync());
                    if (_BeanAPIResult.status.Equals("SUCCESS"))
                    {
                        RESULT_APIADD_BILL = true;
                    }
                }
            }
            catch (Exception ex)
            {
            }
        }
Пример #2
0
        private async void Click_Order(object sender, EventArgs e)
        {
            if (!_tvShip.Text.Equals("Không giao hàng") && _currentmoney > 0)
            {
                list = SQLiteDataHandler.BeanSession_LoadList();
                if (list != null && list.Count > 0) // Co session
                {
                    // don hang
                    BeanDonHang beanDonHang = new BeanDonHang();
                    beanDonHang.MaKH = list[0].MaNguoiDung;
                    if (!String.IsNullOrEmpty(_selectedBeanDiaChi.SoNha))
                    {
                        beanDonHang.DiaChi = _selectedBeanDiaChi.SoNha + " " + generateDistrict(_selectedBeanDiaChi.PhuongXa) + " " + generateDistrict(_selectedBeanDiaChi.QuanHuyen) + " " + _selectedBeanDiaChi.TinhThanh;
                    }
                    beanDonHang.SoDT         = _selectedBeanDiaChi.SoDT;
                    beanDonHang.PhiVanChuyen = _currentship;
                    beanDonHang.ThanhTien    = _currentmoney;
                    // CT don hang
                    List <BeanItemCart> _lstAddCart = new List <BeanItemCart>();
                    _lstCart = SQLiteDataHandler.BeanShoppingCart_LoadList();
                    foreach (BeanShoppingCart item in _lstCart)
                    {
                        BeanItemCart temp = new BeanItemCart();
                        temp.MaMon   = item.MaMonAn;
                        temp.SoLuong = item.SoLuong;
                        _lstAddCart.Add(temp);
                    }
                    await Utilities_API.API_Order(beanDonHang, _lstAddCart);

                    bool res = Utilities_API.RESULT_APIADD_BILL;
                    if (res == true)
                    {
                        SQLiteDataHandler.BeanShoppingCart_ClearAll();

                        _lstCart = new List <BeanShoppingCart>();
                        ShoppingCartRecyclerViewAdapter adapter = new ShoppingCartRecyclerViewAdapter(this, _lstCart);
                        adapter.ClickDecrease += Click_ItemDecrease;
                        adapter.ClickIncrease += Click_ItemIncrease;
                        adapter.ItemClick     += Click_DeleteItem;
                        _recyclerData.SetAdapter(adapter);
                        _recyclerData.SetLayoutManager(new LinearLayoutManager(this));

                        Android.App.AlertDialog.Builder dialog = new AlertDialog.Builder(this);
                        AlertDialog alert = dialog.Create();
                        alert.SetTitle("Thông báo");
                        alert.SetMessage("Thêm mới thành công");
                        alert.SetButton("OK", (c, ev) =>
                        {
                            dialog.Dispose();
                            Finish();
                        });
                        alert.Show();
                    }
                    else
                    {
                        Android.App.AlertDialog.Builder dialog = new AlertDialog.Builder(this);
                        AlertDialog alert = dialog.Create();
                        alert.SetTitle("Thông báo");
                        alert.SetMessage("Thêm mới thất bại");
                        alert.SetButton("OK", (c, ev) =>
                        {
                            dialog.Dispose();
                        });
                        alert.Show();
                    }
                }
            }
            else
            {
                Android.App.AlertDialog.Builder dialog = new AlertDialog.Builder(this);
                AlertDialog alert = dialog.Create();
                alert.SetTitle("Thông báo");
                alert.SetMessage("Vui lòng nhập đủ thông tin");
                alert.SetButton("OK", (c, ev) =>
                {
                    dialog.Dispose();
                });
                alert.Show();
            }
        }