public static List<DON_HANG_DTO> GetAllOrderKH(string username) { provider.connect(); string sqlCommand = "sp_SelectOrderKH"; List<SqlParameter> list = new List<SqlParameter>(); list.Add(new SqlParameter("@username", username)); try { List<DON_HANG_DTO>orders=new List<DON_HANG_DTO>(); DataTable table = provider.executeQueryDataTableProcedure(sqlCommand, list); if (table != null && table.Rows.Count > 0) { foreach(DataRow row in table.Rows) { DON_HANG_DTO dh=new DON_HANG_DTO(); dh.MaDonHang=int.Parse(row["MADH"].ToString()); dh.NgayDat=DateTime.Parse( row["NGAYDAT"].ToString()); dh.TongTien=float.Parse(row["TONGTIEN"].ToString()); dh.TinhTrangDonHang=row["TINHTRANGDH"].ToString(); dh.DiaChiNhan=row["DIACHINHAN"].ToString(); dh.DonViTienTe=row["DVTIENTE"].ToString(); dh.LinkVC=row["URL"].ToString(); dh.MaPackage=int.Parse(row["MAPK"].ToString()); orders.Add(dh); } } return orders; } catch (Exception e) { throw e; } finally { provider.disconnect(); } }
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; } } } } }
public static int InsertOrder(DON_HANG_DTO dh) { provider.connect(); string sqlCommand = "sp_InsertOrder"; List<SqlParameter>list=new List<SqlParameter>(); list.Add(new SqlParameter("@username",dh.UserName)); list.Add(new SqlParameter("@tongtien",dh.TongTien)); list.Add(new SqlParameter("@diachi",dh.DiaChiNhan)); list.Add(new SqlParameter("@ngaygiao",dh.NgayGiao)); list.Add(new SqlParameter("@dvtiente",dh.DonViTienTe)); SqlParameter madh=new SqlParameter("@madh",SqlDbType.Int); madh.Direction=ParameterDirection.Output; list.Add(madh); try { provider.executeNonQueryProcedure(sqlCommand, list); return (int)madh.Value; } catch (Exception e) { throw e; } finally { provider.disconnect(); } }