Пример #1
0
 public static void InsertCTOrder(CHI_TIET_DON_HANG_DTO ct)
 {
     provider.connect();
     string sqlCommand = "sp_InsertCTOrder";
     List<SqlParameter> list = new List<SqlParameter>();
     list.Add(new SqlParameter("@madh",ct.maDonHang));
     list.Add(new SqlParameter("@masp",ct.maSanPham));
     list.Add(new SqlParameter("@sl",ct.soLuong));
     list.Add(new SqlParameter("@price",ct.donGia));
     list.Add(new SqlParameter("@dvtinh",ct.donViTinh));
     try
     {
         provider.executeNonQueryProcedure(sqlCommand, list);
     }
     catch (Exception e)
     {
         throw e;
     }
     finally
     {
         provider.disconnect();
     }
 }
Пример #2
0
        protected void btnPayment_Click(object sender, EventArgs e)
        {
            string ma=rdvc.SelectedValue;
            string[]arr=ma.Split(new char[]{','});
            int madv = 0;
            int.TryParse(arr[0], out madv);
            int type=0;
            int.TryParse(arr[1],out type);
            string bank = rdbank.SelectedValue;
            string[] bankarr=bank.Split(new char[]{'+'});
            string bankid = bankarr[0];
            string stk = bankarr[1];
            /* tao don hang , va xoa gio hang */
            if (Session["Cart"] != null)
            {
                List<GioHang> carts = (List<GioHang>)Session["Cart"];
                if (carts.Count > 0)
                {

                    DON_HANG_DTO dh = new DON_HANG_DTO();
                    dh.DiaChiNhan = txtAddress.Text;
                    dh.DonViTienTe = carts[0].TienTe;
                    dh.NgayGiao = DateTime.Now;
                    dh.UserName = Session["User"].ToString();
                    dh.TongTien=0;
                     foreach (GioHang cart in carts)
                    {
                        dh.TongTien+=(cart.DonGia*cart.SoLuong);
                    }
                    int madh=0;
                    madh=DonHangBUS.InsetOrder(dh);
                    dh.ChiTiet = new List<CHI_TIET_DON_HANG_DTO>();
                    foreach (GioHang cart in carts)
                    {
                        CHI_TIET_DON_HANG_DTO ct = new CHI_TIET_DON_HANG_DTO();
                        ct.donGia = cart.DonGia;
                        ct.donViTinh = cart.DonViTinh;
                        ct.maDonHang = madh;
                        ct.maSanPham = cart.MaSanPham;
                        ct.soLuong = cart.SoLuong;
                        try
                        {
                            DonHangBUS.InsertCTOrder(ct);
                        }
                        catch (Exception ex)
                        {
                            continue;
                        }
                    }
                    /* thanh toan */
                    SERVICE_BANK_DTO svbank = ServiceBankBUS.LayServiceBankTheoMaBank(bankid);
                    NganHang.KhachHangWS proxy1 = new BIZ.NganHang.KhachHangWS();
                    string sid = proxy1.Authenticate(svbank.UserName, svbank.PassWord);
                    int result= proxy1.TransferMoney(sid, txtId.Text, bankid, svbank.Stk, svbank.MaBank, dh.TongTien, "VND");
                    if (result == 1)
                    {
                        /* dang ky van chuyen */
                        SERVICE_TRANS_DTO svtran = ServiceTransBUS.GetServiceTransInfor(madv);
                        VanChuyen.FedexWebService1 proxy2 = new BIZ.VanChuyen.FedexWebService1();
                        sid = proxy2.Authenticate(svtran.UserName, svtran.PassWord);
                        string url = proxy2.TransportGoods(sid, madh.ToString(), carts.Count, DateTime.Now.AddDays(1), txtAddress.Text, type, svtran.BizAddress);
                        if (url.IndexOf(".aspx?") >= 0 || url.IndexOf("http://") >= 0 || url.IndexOf("https://") >= 0)
                        {
                            PACKAGEINFO_DTO pac=new PACKAGEINFO_DTO();
                            pac.URL=url;
                            pac.MaServiceTrans=svtran.MaDV;
                            pac.PackageInfo=madh.ToString();
                            try
                            {
                                DonHangBUS.InsertPackage(pac, madh);
                                foreach (GioHang cart in carts)
                                {
                                    //CHI_TIET_DON_HANG_DTO ct = new CHI_TIET_DON_HANG_DTO();

                                    try
                                    {
                                        ProductBUS.UpdateSLProduct(cart.MaSanPham,cart.SoLuong);
                                    }
                                    catch (Exception ex)
                                    {
                                        continue;
                                    }
                                }
                                Session["Cart"] = null;
                                lbresult.ForeColor = Color.Green;
                                lbresult.Text = "Quá trình mua đã thành công";
                            }
                            catch (Exception ex)
                            {
                                throw ex;
                            }

                        }
                        else
                        {
                            lbresult.ForeColor = Color.Red;
                            lbresult.Text = "Đã thanh toán nhưng đặt vận chuyển thất bại";
                        }
                    }
                    else
                    {
                        switch (result)
                        {
                            case 2:
                                lbresult.ForeColor = Color.Red;
                                lbresult.Text = "Tài khoản chuyển không đủ tiền";
                                break;
                            case 3:
                                lbresult.ForeColor = Color.Red;
                                lbresult.Text = "Tài khoản chuyển không tồn tại";
                                break;
                            case 4:
                                lbresult.ForeColor = Color.Red;
                                lbresult.Text = "Tài khoản nhận không tồn tại";
                                break;
                            case 5:
                                lbresult.ForeColor = Color.Red;
                                lbresult.Text = "Mã ngân hàng chuyển tiền/Mã ngân hàng nhận tiền không tồn tại ";
                                break;
                            case 6:
                                lbresult.ForeColor = Color.Red;
                                lbresult.Text = "Lỗi khác";
                                break;
                        }
                    }

                }
            }
        }
Пример #3
0
 public static List<CHI_TIET_DON_HANG_DTO> ViewOrderDetailsByOrderCode(int maDonHang)
 {
     provider.connect();
     string sqlCommand = "sp_XemThongTinChiTietDonHang";
     List<SqlParameter> ds = new List<SqlParameter>();
     ds.Add( new SqlParameter("@maDonHang", maDonHang));
     try
     {
         DataTable dt = provider.executeQueryDataTableProcedure(sqlCommand, ds);
         List<CHI_TIET_DON_HANG_DTO> dsOrderDetails = new List<CHI_TIET_DON_HANG_DTO>();
         if(dt.Rows.Count>0)
         {
             foreach(DataRow dr in dt.Rows)
             {
                 CHI_TIET_DON_HANG_DTO ordDetailDTO = new CHI_TIET_DON_HANG_DTO();
                 ordDetailDTO.maSanPham = dr["MASP"].ToString();
                 ordDetailDTO.donViTinh = dr["DVTINH"].ToString();
                 ordDetailDTO.soLuong = float.Parse(dr["SOLUONG"].ToString());
                 ordDetailDTO.donGia = float.Parse(dr["DONGIA"].ToString());
                 dsOrderDetails.Add(ordDetailDTO);
             }
         }
         return dsOrderDetails;
     }
     catch(Exception ex)
     {
         throw new Exception(ex.Message);
     }
     finally
     {
         provider.disconnect();
     }
 }