}//String function end public VPCRequest AmexConfig() { Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Collect Information for AMEX Gateway"); VPCRequest conn = new VPCRequest(_TNS.Properties.Settings.Default.PaymentServerURL); // Configure the proxy details (if needed) conn.SetProxyHost(_TNS.Properties.Settings.Default.ProxyHost); conn.SetProxyUser(_TNS.Properties.Settings.Default.ProxyUser); conn.SetProxyPassword(_TNS.Properties.Settings.Default.ProxyPassword); conn.SetProxyDomain(_TNS.Properties.Settings.Default.ProxyDomain); conn.SetSecureSecret(_TNS.Properties.Settings.Default.vpc_SecureSecret); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("vpc_Version", _TNS.Properties.Settings.Default.vpc_Version); conn.AddDigitalOrderField("vpc_AccessCode", _TNS.Properties.Settings.Default.vpc_AccessCode); conn.AddDigitalOrderField("vpc_Merchant", _TNS.Properties.Settings.Default.vpc_Merchant); conn.AddDigitalOrderField("vpc_User", _TNS.Properties.Settings.Default.vpc_User); conn.AddDigitalOrderField("vpc_Password", _TNS.Properties.Settings.Default.vpc_Password); return(conn); //Configure the Hard coded details (if needed) //VPCRequest conn = new VPCRequest("https://vpos.amxvpos.com/vpcdps"); //conn.SetProxyHost(""); //conn.SetProxyUser(""); //conn.SetProxyPassword(""); //conn.SetProxyDomain(""); //conn.SetSecureSecret("44DD98D32ECD3C1AA7F12A1D0F8B41EA"); }
protected void btnPay_Click(object sender, EventArgs e) { bool isHuman = ExampleCaptcha.Validate(CaptchaCodeTextBox.Text); CaptchaCodeTextBox.Text = null; // clear previous user input if (!isHuman) { // TODO: Captcha validation failed, show error message lbl_capcha.Text = "من فضلك ادخل الحروف مرة اخرى"; lbl_capcha.ForeColor = System.Drawing.Color.Red; } else { pnlRequest.Visible = false; try { decimal FinalAmount = decimal.Parse(vpc_Amount.Text) * 100; // Connect to the Payment Client VPCRequest conn = new VPCRequest(); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("vpc_Version", conn.Version); conn.AddDigitalOrderField("vpc_Command", conn.Command); conn.AddDigitalOrderField("vpc_AccessCode", conn.AccessCode); conn.AddDigitalOrderField("vpc_Merchant", conn.MerchantID); conn.AddDigitalOrderField("vpc_ReturnURL", conn.FormatReturnURL(Request.Url.Scheme, Request.Url.Host, Request.Url.Port, Request.ApplicationPath)); conn.AddDigitalOrderField("vpc_MerchTxnRef", (DB.GetMaxIdahly() + 1).ToString()); conn.AddDigitalOrderField("vpc_OrderInfo", vpc_OrderInfo.Text); conn.AddDigitalOrderField("vpc_Amount", FinalAmount.ToString()); conn.AddDigitalOrderField("vpc_Currency", Currency_List.Text); conn.AddDigitalOrderField("vpc_Locale", drop_Project.SelectedValue); // Perform the transaction String url = conn.Create3PartyQueryString(); Page.Response.Redirect(url); } catch (Exception ex) { // Capture and Display the error information lblErrorMessage.Text = ex.Message + (ex.InnerException != null ? ex.InnerException.Message : ""); pnlError.Visible = true; try { } catch (Exception ex2) { // Do Nothing } } } }
public override void OnNavigatingTo(NavigationParameters parameters) { card = parameters.GetValue <DataCardModel>(string.Empty); VPCRequest conn = new VPCRequest(); conn.AddDigitalOrderField("vpc_Version", SADM.Settings.AppConfiguration.Values.vpc_Version); conn.AddDigitalOrderField("vpc_Command", SADM.Settings.AppConfiguration.Values.vpc_Command); conn.AddDigitalOrderField("vpc_AccessCode", SADM.Settings.AppConfiguration.Values.vpc_AccessCode); conn.AddDigitalOrderField("vpc_Merchant", SADM.Settings.AppConfiguration.Values.vpc_Merchant); conn.AddDigitalOrderField("vpc_ReturnURL", "http://localhost:8080/api/"); conn.AddDigitalOrderField("vpc_MerchTxnRef", "PruebaRfId2529"); conn.AddDigitalOrderField("vpc_OrderInfo", "2529"); conn.AddDigitalOrderField("vpc_Amount", (card.Amount * 100).ToString()); conn.AddDigitalOrderField("vpc_Currency", SADM.Settings.AppConfiguration.Values.vpc_Currency); //conn.AddDigitalOrderField("vpc_CustomPaymentPlanPlanId", vpc_CustomPaymentPlanPlanId.Text); conn.AddDigitalOrderField("vpc_Locale", SADM.Settings.AppConfiguration.Values.vpc_Locale); // Perform the transaction string url = conn.Create3PartyQueryString(); url = "https://banamex.dialectpayments.com/vpcpay" + url; UrlWeb = url; }
//Xây dựng chức năng đặt hàng public ActionResult DatHang(KhachHang kh) { // Kiểm tra giỏ hàng tồn tại hay chưa if (Session["GioHang"] == null) { return(RedirectToAction("Index", "Home")); } KhachHang khang = new KhachHang(); if (Session["TaiKhoan"] == null) { //Thêm kh vào bảng KhachHang ...khi chưa đăng nhập khang = kh; db.KhachHangs.Add(khang); db.SaveChanges(); } else { // Thêm kh bằng session Taikhoan ThanhVien tv = Session["TaiKhoan"] as ThanhVien; khang.TenKH = tv.HoTen; khang.DiaChi = tv.DiaChi; khang.Email = tv.Email; khang.SoDienThoai = tv.SoDienThoai; khang.MaThanhVien = tv.MaThanhVien; db.KhachHangs.Add(khang); db.SaveChanges(); } //Thêm đơn hàng DonDatHang ddh = new DonDatHang(); ddh.MaKH = khang.MaKH; ddh.NgayDat = DateTime.Now; ddh.TinhTrangGiaoHang = false; ddh.DaThanhToan = false; ddh.UuDai = 0; ddh.DaHuy = false; ddh.DaXoa = false; ddh.MaDDHString = DateTime.Now.Ticks; db.DonDatHangs.Add(ddh); db.SaveChanges(); // Thêm chi tiết đơn hàng List <itemGioHang> lstGioHang = LayGioHang(); // double Amoun = 0; foreach (var item in lstGioHang) { ChiTietDonDatHang ctdh = new ChiTietDonDatHang(); ctdh.MaDDH = ddh.MaDDH; ctdh.TenSP = item.TenSP; ctdh.MaSP = item.MaSP; ctdh.SoLuong = item.SoLuong; ctdh.DonGia = item.DonGia; // Amoun = Amoun + (double) ctdh.DonGia * ctdh.SoLuong; db.ChiTietDonDatHangs.Add(ctdh); } db.SaveChanges(); //#region "Thanh toán online thẻ nội địa" //string SECURE_SECRET = "A3EFDFABA8653DF2342E8DAC29B51AF0"; //// Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan //VPCRequest conn = new VPCRequest("https://mtf.onepay.vn/onecomm-pay/vpc.op"); //conn.SetSecureSecret(SECURE_SECRET); //// Add the Digital Order Fields for the functionality you wish to use //// Core Transaction Fields //conn.AddDigitalOrderField("Title", "onepay paygate"); //conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) //conn.AddDigitalOrderField("vpc_Version", "2"); //conn.AddDigitalOrderField("vpc_Command", "pay"); //conn.AddDigitalOrderField("vpc_Merchant", "ONEPAY"); //conn.AddDigitalOrderField("vpc_AccessCode", "D67342C2"); //conn.AddDigitalOrderField("vpc_MerchTxnRef", ddh.MaDDHString.ToString()); //conn.AddDigitalOrderField("vpc_OrderInfo", "9704250000000001 NGUYEN VAN A"); //conn.AddDigitalOrderField("vpc_Amount", (TinhTongTien()*100).ToString()); //conn.AddDigitalOrderField("vpc_Currency", "VND"); //conn.AddDigitalOrderField("vpc_ReturnURL", "http://*****:*****@onepay.vn"); //conn.AddDigitalOrderField("vpc_Customer_Id", "onepay_paygate"); //// Dia chi IP cua khach hang //conn.AddDigitalOrderField("vpc_TicketNo", DateTime.Now.Ticks.ToString()); //// Chuyen huong trinh duyet sang cong thanh toan //String url = conn.Create3PartyQueryString(); //return Redirect(url); //#endregion #region "Thanh toán online quốc tế" string SECURE_SECRET = "6D0870CDE5F24F34F3915FB0045120DB"; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest("https://mtf.onepay.vn/vpcpay/vpcpay.op"); conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn.AddDigitalOrderField("Title", "onepay.vn"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", "TESTONEPAY"); conn.AddDigitalOrderField("vpc_AccessCode", "6BEB2546"); conn.AddDigitalOrderField("vpc_MerchTxnRef", ddh.MaDDHString.ToString()); conn.AddDigitalOrderField("vpc_OrderInfo", "4000000000000002 | 05/21 | 123 | Tran Quang Khai"); conn.AddDigitalOrderField("vpc_Amount", (TinhTongTien() * 100).ToString()); conn.AddDigitalOrderField("vpc_ReturnURL", "http://*****:*****@onepay.vn"); conn.AddDigitalOrderField("vpc_Customer_Id", "onepay_paygate"); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", DateTime.Now.Ticks.ToString()); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); return(Redirect(url)); #endregion }
protected void btnOrderLogin_Click(object sender, EventArgs e) { var dtCart = Session["Cart"] as DataTable; if (dtCart != null) { string OrderNumber = DateTime.Now.ToString("ddMMyy") + Guid.NewGuid().GetHashCode().ToString("X").Substring(0, 4); Session["OrderNumber"] = OrderNumber; double Amount = 0, sAmount = 0; string LastName, FirstName, Address, Email, ProvinceCode, DistrictName, CountryName, AddressBookID, HomePhone, strMessage; //CellPhone, //CountryCode, //City, //Nationality, //ZipCode; var dtAddressBook = (DataView)OdsAddressBook.Select(); AddressBookID = dtAddressBook[0]["AddressBookID"].ToString(); LastName = dtAddressBook[0]["LastName"].ToString(); FirstName = dtAddressBook[0]["FirstName"].ToString(); Address = dtAddressBook[0]["Address1"].ToString(); Email = dtAddressBook[0]["Email"].ToString(); ProvinceCode = dtAddressBook[0]["ProvinceName"].ToString(); CountryName = dtAddressBook[0]["CountryName"].ToString(); DistrictName = dtAddressBook[0]["DistrictName"].ToString(); HomePhone = (FormView1.FindControl("txtPhone") as TextBox).Text; strMessage = (FormView1.FindControl("txtMessage") as TextBox).Text; //ZipCode = dtAddressBook[0]["ZipCode"].ToString(); //City = dtAddressBook[0]["City"].ToString(); //CountryCode = dtAddressBook[0]["CountryShortName"].ToString(); //Nationality = dtAddressBook[0]["Nationality"].ToString(); //HomePhone = dtAddressBook[0]["HomePhone"].ToString(); //CellPhone = dtAddressBook[0]["CellPhone"].ToString(); //var BuyerName = LastName1 + " " + FirstName1; //var BuyerAddress = Address1 + ", " + DistrictName1 + ", " + ProvinceCode1 + ", " + CountryName1; //var lblSubTotal = ((Label)lstShoppingCart.FindControl("lblSubTotal")).Text.Trim(); var ShippingPrice = Session["ShippingPrice"]; //var To = "*****@*****.**"; //var Subject = "Đặt hàng/Order"; var YourName = FirstName + " " + LastName; //var YourEmail = Email; var YourAddress = Address + ", " + DistrictName + ", " + ProvinceCode + ", " + CountryName; //var To = "*****@*****.**"; var To = "*****@*****.**"; var Subject = "Chúng tôi đã nhận được đơn hàng: " + OrderNumber; //var Host = "118.69.199.203"; //int Port = 25; var Host = "smtp.gmail.com"; int Port = 587; var strDisplayNameMailFrom = ""; var From = "*****@*****.**"; var sPassword = "******"; //var strDisplayNameMailFrom = "Pandemos - Đặt Hàng"; //var From = "*****@*****.**"; //var sPassword = "******"; bool bEnableSSL = true; //string Host = "118.69.199.203"; //int Port = 25; //string From = "*****@*****.**"; //string Password = "******"; var oOrders = new Orders(); var oOrderDetail = new OrderDetail(); var OrderID = OrderNumber; var UserName = string.IsNullOrEmpty(User.Identity.Name) ? "" : User.Identity.Name; var OrderStatusID = "1"; var ShippingStatusID = "1"; var BillingAddressID = AddressBookID; var ShippingAddressID = AddressBookID; var Notes = strMessage; var Comission = ""; if (rbtMoney.Checked) { //var To = "*****@*****.**"; string Body = "<div style='width: 100%; font-size: 11px; font-family: Arial;'>"; Body += "<h3 style='color: rgb(204,102,0); font-size: 22px; border-bottom-color: gray; border-bottom-width: 1px;border-bottom-style: dashed; margin-bottom: 20px; font-family: Times New Roman;'>Cảm ơn bạn đã đặt hàng/Thanks for Your Order!</h3>"; Body += "<div style='padding: 10px; background-color: rgb(255,244,234); font-family: Verdana;font-size: 11px; margin-bottom: 20px;'>"; Body += "<p>Mã số đơn hàng của bạn là <b>" + OrderNumber + "</b>. Chi tiết đơn hàng được liệt kê ở phía dưới. Để theo dõi đơn hàng, xin vui lòng vào mục <a style='font-size: 11px;' href='http://www.pandemos.vn/kiem-tra-don-hang.aspx'>theo dõi đơn hàng</a></p>"; //Body += "<p>Your order ID is <b>" + OrderNumber + "</b>. A summary of your order is shown below. To view the status of your order <a style='font-size: 11px;' href='http://www.pandemos.vn/theo-doi-don-hang.aspx'>click here.</a></p>"; Body += "</div>"; //Body += "<div style='padding: 10px; background-color: rgb(255, 239, 239); font-family: Verdana;font-size: 11px; margin-bottom: 20px;'><p>Để hoàn tất đặt hàng xin vui lòng thanh toán đơn hàng theo một trong các phương thức hiện có trên website</p><p>Your order requires payment before it can be finalized. Please check our website for available methods</p></div>"; Body += "<div style='padding: 10px; background-color: rgb(255, 239, 239); font-family: Verdana;font-size: 11px; margin-bottom: 20px;'><p>Để hoàn tất đặt hàng xin vui lòng thanh toán đơn hàng theo một trong các phương thức hiện có trên website</p></div>"; //Body += "<div style='font-family: Verdana; font-size: 11px; margin-bottom: 20px;'><table style='width: 100%' cellpadding='0' cellspacing='0'><tr><td style='width: 50%;'><h4 style='font-size: 18px; margin-bottom: 5px; margin-bottom: 20px;'>Người mua/Buyer</h4><div style='font-size: 11px;font-family: Verdana;'><p><b>" + BuyerName + "</b></p><p>" + Address1 + "</p><p>" + DistrictName1 + "</p><p>" + ProvinceCode1 + "</p></div></td><td style='width: 50%;'><h4 style='font-size: 18px; margin-bottom: 5px; margin-bottom: 20px;'>Người nhận/Recipient</h4><div style='font-size: 11px;font-family: Verdana;'><p><b>" + YourName + "</b></p><p>" + Address + "</p><p>" + DistrictName + "</p><p>" + ProvinceCode + "</p></div></td></tr></table></div>"; Body += "<div style='font-family: Verdana; font-size: 11px; margin-bottom: 20px;'><table style='width: 100%' cellpadding='0' cellspacing='0'><tr><td style='width: 50%;'><h4 style='font-size: 18px; margin-bottom: 5px; margin-bottom: 20px;'>Người nhận/Recipient</h4><div style='font-size: 11px;font-family: Verdana;'><p><b>" + YourName + "</b></p><p>" + Address + "</p><p>" + DistrictName + "</p><p>" + ProvinceCode + "</p></div></td></tr></table></div>"; Body += "<div style='font-family: Verdana; font-size: 11px; margin-bottom: 20px;'><h4 style='font-size: 18px;'>Chi tiết đơn hàng/Your Order Contains...</h4>"; Body += "<div style='font-size: 11px; font-family: Verdana'>"; //Body += "<p><b>* Hình thức giao hàng</b>: " + DeliveryMethodsEmail + "</p>"; //Body += "<p><b>* Hình thức thanh toán</b>:" + ServiceName + "</p>"; Body += "<p><b>* Phương thức thanh toán</b>: Tiền mặt</p>"; //Body += "<p><b>* Ngày - Giờ giao</b>: " + EmailDeliveryDate + "</p>"; Body += "</div>"; Body += "<table style='font-size: 11px; font-family: Verdana; padding: 10px; border: 1px solid #C7D7DB; width: 100%;border-collapse: collapse;' cellpadding='0' cellspacing='0'>"; //Body += "<tr><th align='left' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Sản phẩm/Cart Items</th><th style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Cỡ/Size</th><th style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Số lượng/Qty</th><th align='center' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Giá/Item Price</th><th align='right' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Thành tiền/Item Total</th></tr>"; Body += "<tr><th align='left' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Sản phẩm/Cart Items</th><th style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Số lượng/Qty</th><th align='center' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Giá/Item Price</th><th align='right' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Thành tiền/Item Total</th></tr>"; foreach (DataRow dr in dtCart.Rows) { string ProductCode = dr["Tag"].ToString(); //string ProductID = dr["ProductID"].ToString(); string ProductName = dr["ProductName"].ToString(); string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); string ProductOptionCategoryName = dr["ProductOptionCategoryName"].ToString(); string ProductLengthName = dr["ProductLengthName"].ToString(); double tPrice = Convert.ToDouble(Price) * Convert.ToDouble(Quantity); var itemPrice = string.Format("{0:##,###.##}", tPrice).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VND"; var sPrice = string.Format("{0:##,###.##}", dr["Price"]).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VND"; Amount += Convert.ToDouble(Price) * Convert.ToDouble(Quantity); Body += "<tr>"; Body += "<td style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + ProductName + " - " + ProductCode + " - " + ProductOptionCategoryName + " - " + ProductLengthName + "</td>"; //Body += "<td align='center' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + ProductColorName + "</td>"; Body += "<td align='center' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + Quantity + "</td>"; Body += "<td align='center' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + sPrice + "</td>"; Body += "<td align='right' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + itemPrice + "</td>"; Body += "</tr>"; } Body += "</table>"; Body += "<div style='clear: both;'></div>"; var iShippingPrice = Convert.ToDouble(string.IsNullOrEmpty(ShippingPrice.ToString()) ? "0" : ShippingPrice); sAmount = Amount + iShippingPrice; //sAmount = Amount; var tAmount = string.Format("{0:##,###.##}", Amount).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VNĐ"; var Shipping = string.Format("{0:##,###.##}", iShippingPrice).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VNĐ"; var SubTotal = string.Format("{0:##,###.##}", sAmount).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VNĐ"; Body += "<table style='font-size: 11px; font-family: Verdana; text-align: right; margin: 10px 0; width: 100%; float: right;' cellpadding='0' cellspacing='0'>"; Body += "<tr><td style='width:85%;'>Thành tiền/Subtotal:</td><td style='width:15%;'>" + tAmount + "</td></tr>"; Body += "<tr><td>Phí giao hàng/Shipping:</td><td>" + Shipping + "</td></tr>"; Body += "<tr><td><b>Tổng tiền/Grand Total:</b></td><td><b>" + SubTotal + "</b></td></tr>"; Body += "</table>"; Body += "<div style='clear: both;'></div>"; //Body += "<ul style='font-size: 11px; font-style: italic; padding: 0;margin: 0; list-style-type: none;'>"; //Body += "<li><b>*</b> Giá sản phẩm chưa bao gồm thuế VAT 10%/ Item price is excluded of 10% VAT</li>"; //Body += "<li><b>*</b> Xin vui lòng <a style='font-size: 11px;' href='http://www.pandemos.vn/lien-he.aspx'>gọi điện</a> tới Đồng Hồ Anh Minhs-Hoa Trái Cây để thay đổi nếu Quý khách muốn sửa đơn hàng/ Please <a style='font-size: 11px;' href='http://www.pandemos.vn/lien-he.aspx'>call</a> Đồng Hồ Anh Minhs-Hoa Trái Cây if you are in need of making a modification to your Order </li>"; //Body += "<li><b>*</b> Vui lòng tham khảo các điều khoản về Thay đổi và Hủy đơn hàng trong <a style='font-size: 11px;' href='http://www.pandemos.vn/thoa-thuan-su-dung.aspx'>Thỏa Thuận Sử Dụng</a>/Please check Policy for Order Change and Cancelation in our <a style='font-size: 11px;' href='http://www.pandemos.vn/thoa-thuan-su-dung.aspx'>Term of Use</a></li>"; //Body += "</ul>"; Body += "</div>"; Body += "<div style='font-family:Verdana;font-size:12px;margin-top:10px;'>"; Body += "<div style='font-size:16px;font-weight:bold;'>=================</div>"; Body += "<h4 style='font-size:14px;font-family:Verdana;margin:0;padding:0;'>Pandemos</h4>"; Body += "<div style='font-size:11px;font-family:Verdana;margin-top:5px;padding:0;margin:0;'>"; Body += "<p>Add: 403, Hai Bà Trưng , P.8, Quận 3, HCM </p>"; Body += "<p>Tel: (08)3 820 8577 - Hotline: 0902 563 577 </p>"; //Body += "<p>M: +84 908 xxx xxx>"; Body += "<p>W: <a href='http://www.pandemos.vn'>www.pandemos.vn</a></p>"; Body += "<p>E: <a href='mailto:[email protected]'>[email protected]</a></p>"; Body += "</div>"; Body += "</div>"; Body += "</div>"; var bSendEmail = Common.SendMail(Host, Port, From, sPassword, Email, To, Subject, Body, true); //var a = Common.SendMail(Host, Port, "*****@*****.**", "web123master", "*****@*****.**", "", "LIÊN HỆ CÔNG TY TNHH THƯƠNG MẠI - XUẤT KHẨU SONG KIM LONG HẢI", Body, true); if (bSendEmail) { //var OrderID = OrderNumber; //var UserName = string.IsNullOrEmpty(User.Identity.Name) ? "" : User.Identity.Name; //var OrderStatusID = "1"; //var ShippingStatusID = "1"; var PaymentMethodID = "money"; //var BillingAddressID = AddressBookID; //var ShippingAddressID = AddressBookID; //var Notes = strMessage; //var Comission = ""; oOrders.OrdersInsert1( OrderID, UserName, OrderStatusID, ShippingStatusID, PaymentMethodID, BillingAddressID, ShippingAddressID, Notes, Comission, "", "", YourAddress, "", Email ); foreach (DataRow dr in dtCart.Rows) { string ProductID = dr["ProductID"].ToString(); string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); string CreateBy = UserName; string ProductOptionCategoryName = dr["ProductOptionCategoryName"].ToString(); string ProductLengthName = dr["ProductLengthName"].ToString(); //string ProductName = dr["ProductName"].ToString(); //string Type = dr["Tag"].ToString(); //string Description = dr["Description"].ToString(); oOrderDetail.OrderDetailInsert1( OrderID, ProductID, Quantity, Price, CreateBy, ProductOptionCategoryName, ProductLengthName, Email ); } Session["PaymentMethod"] = "money"; Session["Message"] = strMessage; Response.Redirect("~/xac-nhan-don-hang.aspx"); } } else if (rbtOnePayNoiDia.Checked) { foreach (DataRow dr in dtCart.Rows) { string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); Amount += Convert.ToDouble(Price) * Convert.ToDouble(Quantity); } var iShippingPrice = Convert.ToDouble(string.IsNullOrEmpty(ShippingPrice.ToString()) ? "0" : ShippingPrice); sAmount = Amount + iShippingPrice; //var OrderID = OrderNumber; //var UserName = string.IsNullOrEmpty(User.Identity.Name) ? "" : User.Identity.Name; //var OrderStatusID = "1"; //var ShippingStatusID = "1"; var PaymentMethodID = "onepaynd"; //var BillingAddressID = AddressBookID; //var ShippingAddressID = AddressBookID; //var Notes = strMessage; //var Comission = ""; oOrders.OrdersInsert1( OrderID, UserName, OrderStatusID, ShippingStatusID, PaymentMethodID, BillingAddressID, ShippingAddressID, Notes, Comission, "", "", YourAddress, "", Email ); foreach (DataRow dr in dtCart.Rows) { string ProductID = dr["ProductID"].ToString(); string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); string CreateBy = UserName; string ProductOptionCategoryName = dr["ProductOptionCategoryName"].ToString(); string ProductLengthName = dr["ProductLengthName"].ToString(); oOrderDetail.OrderDetailInsert1( OrderID, ProductID, Quantity, Price, CreateBy, ProductOptionCategoryName, ProductLengthName, Email ); } oOrders.OrdersQuickUpdate_PayStatusID( OrderNumber, "2" ); var uri = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, string.Empty) + Request.ApplicationPath; // Core Transaction Fields var vpc_Locale = "vn"; var vpc_Version = "2"; var vpc_Command = "pay"; var vpc_Merchant = "ONEPAY";//Merchant test var vpc_AccessCode = "D67342C2";//Access Code test //var vpc_Merchant = "PANDEMOS"; //var vpc_AccessCode = "JRCFWZTK"; var vpc_MerchTxnRef = OrderNumber; var vpc_OrderInfo = OrderNumber; var vpc_Amount = sAmount * 100; var vpc_Currency = "VND"; var vpc_ReturnURL = uri + "/thanh-toan-thanh-cong.aspx?ord=" + OrderNumber; //Thong tin khach hang var vpc_SHIP_Street01 = Common.ChangeSymBol(Address); var vpc_SHIP_Provice = Common.ChangeSymBol(DistrictName); var vpc_SHIP_City = Common.ChangeSymBol(ProvinceCode); var vpc_SHIP_Country = "Vietnam"; var vpc_Customer_Phone = Common.ChangeSymBol(HomePhone); var vpc_Customer_Email = Email; var vpc_Customer_Id = ""; var vpc_Customer_Name = Common.ChangeSymBol(FirstName); var vpc_TicketNo = ""; var vpc_SECURE_SECRET = "A3EFDFABA8653DF2342E8DAC29B51AF0";//Secure Hash test //var vpc_SECURE_SECRET = "04E8DA60020D93506DCC15B7F6A71D26"; var vpc_URL_Payment = "https://mtf.onepay.vn/onecomm-pay/vpc.op";//dia chi thanh toan test //var vpc_URL_Payment = "https://onepay.vn/onecomm-pay/vpc.op";//dia chi thanh toan that VPCRequest conn = new VPCRequest(vpc_URL_Payment); conn.SetSecureSecret(vpc_SECURE_SECRET); // Core Transaction Fields conn.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", vpc_Locale);//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", vpc_Version); conn.AddDigitalOrderField("vpc_Command", vpc_Command); conn.AddDigitalOrderField("vpc_Merchant", vpc_Merchant); conn.AddDigitalOrderField("vpc_AccessCode", vpc_AccessCode); conn.AddDigitalOrderField("vpc_MerchTxnRef", vpc_MerchTxnRef); conn.AddDigitalOrderField("vpc_OrderInfo", vpc_OrderInfo); conn.AddDigitalOrderField("vpc_Amount", vpc_Amount.ToString()); conn.AddDigitalOrderField("vpc_Currency", vpc_Currency); conn.AddDigitalOrderField("vpc_ReturnURL", vpc_ReturnURL); //Thong tin khach hang conn.AddDigitalOrderField("vpc_SHIP_Street01", vpc_SHIP_Street01); conn.AddDigitalOrderField("vpc_SHIP_Provice", vpc_SHIP_Provice); conn.AddDigitalOrderField("vpc_SHIP_City", vpc_SHIP_City); conn.AddDigitalOrderField("vpc_SHIP_Country", vpc_SHIP_Country); conn.AddDigitalOrderField("vpc_Customer_Phone", vpc_Customer_Phone); conn.AddDigitalOrderField("vpc_Customer_Email", vpc_Customer_Email); conn.AddDigitalOrderField("vpc_Customer_Id", vpc_Customer_Id); conn.AddDigitalOrderField("vpc_Customer_Name", vpc_Customer_Name); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", vpc_TicketNo); // Chuyen huong trinh duyet sang cong thanh toan Session["PaymentMethod"] = "onepaynd"; Session["Message"] = strMessage; String url = conn.Create3PartyQueryString(); Page.Response.Redirect(url); } else if (rbtOnePayQuocTe.Checked) { foreach (DataRow dr in dtCart.Rows) { string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); Amount += Convert.ToDouble(Price) * Convert.ToDouble(Quantity); } var iShippingPrice = Convert.ToDouble(string.IsNullOrEmpty(ShippingPrice.ToString()) ? "0" : ShippingPrice); sAmount = Amount + iShippingPrice; //var OrderID = OrderNumber; //var UserName = string.IsNullOrEmpty(User.Identity.Name) ? "" : User.Identity.Name; //var OrderStatusID = "1"; //var ShippingStatusID = "1"; var PaymentMethodID = "onepayqt"; //var BillingAddressID = AddressBookID; //var ShippingAddressID = AddressBookID; //var Notes = strMessage; //var Comission = ""; oOrders.OrdersInsert1( OrderID, UserName, OrderStatusID, ShippingStatusID, PaymentMethodID, BillingAddressID, ShippingAddressID, Notes, Comission, "", "", YourAddress, "", Email ); foreach (DataRow dr in dtCart.Rows) { string ProductID = dr["ProductID"].ToString(); string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); string CreateBy = UserName; string ProductOptionCategoryName = dr["ProductOptionCategoryName"].ToString(); string ProductLengthName = dr["ProductLengthName"].ToString(); oOrderDetail.OrderDetailInsert1( OrderID, ProductID, Quantity, Price, CreateBy, ProductOptionCategoryName, ProductLengthName, Email ); } oOrders.OrdersQuickUpdate_PayStatusID( OrderNumber, "2" ); var uri = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, string.Empty) + Request.ApplicationPath; // Core Transaction Fields var vpc_Locale = "en"; var vpc_Version = "2"; var vpc_Command = "pay"; var vpc_Merchant = "TESTONEPAY";//Merchant Test var vpc_AccessCode = "6BEB2546";//Access Code Test //var vpc_Merchant = "PANDEMOS"; //var vpc_AccessCode = "B94D84AE"; var vpc_MerchTxnRef = OrderNumber; var vpc_OrderInfo = OrderNumber; var vpc_Amount = sAmount * 100; var vpc_Currency = "VND"; var vpc_ReturnURL = uri + "/thanh-toan-thanh-cong.aspx?ord=" + OrderNumber; //Thong tin khach hang var vpc_SHIP_Street01 = "194 Tran Quang Khai"; var vpc_SHIP_Provice = "Hanoi"; var vpc_SHIP_City = "Hanoi"; var vpc_SHIP_Country = "Vietnam"; var vpc_Customer_Phone = "043966668"; var vpc_Customer_Email = "*****@*****.**"; var vpc_Customer_Id = "onepay_paygate"; var vpc_Customer_Name = ""; var vpc_TicketNo = ""; var vpc_SECURE_SECRET = "6D0870CDE5F24F34F3915FB0045120DB";//Secure Hash test //var vpc_SECURE_SECRET = "C7BB42E2BE08E07FDF7210CB381FA04A"; var vpc_URL_Payment = "https://mtf.onepay.vn/vpcpay/vpcpay.op";//dia chi thanh toan test //var vpc_URL_Payment = "https://onepay.vn/vpcpay/vpcpay.op";//dia chi thanh toan that VPCRequest conn = new VPCRequest(vpc_URL_Payment); conn.SetSecureSecret(vpc_SECURE_SECRET); // Core Transaction Fields conn.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", vpc_Version); conn.AddDigitalOrderField("vpc_Command", vpc_Command); conn.AddDigitalOrderField("vpc_Merchant", vpc_Merchant); conn.AddDigitalOrderField("vpc_AccessCode", vpc_AccessCode); conn.AddDigitalOrderField("vpc_MerchTxnRef", vpc_MerchTxnRef); conn.AddDigitalOrderField("vpc_OrderInfo", vpc_OrderInfo); conn.AddDigitalOrderField("vpc_Amount", vpc_Amount.ToString()); conn.AddDigitalOrderField("vpc_ReturnURL", vpc_ReturnURL); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", vpc_SHIP_Street01); conn.AddDigitalOrderField("vpc_SHIP_Provice", vpc_SHIP_Provice); conn.AddDigitalOrderField("vpc_SHIP_City", vpc_SHIP_City); conn.AddDigitalOrderField("vpc_SHIP_Country", vpc_SHIP_Country); conn.AddDigitalOrderField("vpc_Customer_Phone", vpc_Customer_Phone); conn.AddDigitalOrderField("vpc_Customer_Email", vpc_Customer_Email); conn.AddDigitalOrderField("vpc_Customer_Id", vpc_Customer_Id); conn.AddDigitalOrderField("vpc_Customer_Name", vpc_Customer_Name); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", vpc_TicketNo); // Chuyen huong trinh duyet sang cong thanh toan Session["PaymentMethod"] = "onepayqt"; Session["Message"] = strMessage; //Common.ShowAlert(vpc_SHIP_Provice); String url = conn.Create3PartyQueryString(); Page.Response.Redirect(url); } else if (rbtEmail.Checked) { string Body = "<div style='width: 100%; font-size: 11px; font-family: Arial;'>"; Body += "<h3 style='color: rgb(204,102,0); font-size: 22px; border-bottom-color: gray; border-bottom-width: 1px;border-bottom-style: dashed; margin-bottom: 20px; font-family: Times New Roman;'>Cảm ơn bạn đã đặt hàng/Thanks for Your Order!</h3>"; Body += "<div style='padding: 10px; background-color: rgb(255,244,234); font-family: Verdana;font-size: 11px; margin-bottom: 20px;'>"; Body += "<p>Mã số đơn hàng của bạn là <b>" + OrderNumber + "</b>. Chi tiết đơn hàng được liệt kê ở phía dưới. Để theo dõi đơn hàng, xin vui lòng vào mục <a style='font-size: 11px;' href='http://www.pandemos.vn/kiem-tra-don-hang.aspx'>theo dõi đơn hàng</a></p>"; //Body += "<p>Your order ID is <b>" + OrderNumber + "</b>. A summary of your order is shown below. To view the status of your order <a style='font-size: 11px;' href='http://www.pandemos.vn/theo-doi-don-hang.aspx'>click here.</a></p>"; Body += "</div>"; //Body += "<div style='padding: 10px; background-color: rgb(255, 239, 239); font-family: Verdana;font-size: 11px; margin-bottom: 20px;'><p>Để hoàn tất đặt hàng xin vui lòng thanh toán đơn hàng theo một trong các phương thức hiện có trên website</p><p>Your order requires payment before it can be finalized. Please check our website for available methods</p></div>"; Body += "<div style='padding: 10px; background-color: rgb(255, 239, 239); font-family: Verdana;font-size: 11px; margin-bottom: 20px;'><p>Để hoàn tất đặt hàng xin vui lòng thanh toán đơn hàng theo một trong các phương thức hiện có trên website</p></div>"; //Body += "<div style='font-family: Verdana; font-size: 11px; margin-bottom: 20px;'><table style='width: 100%' cellpadding='0' cellspacing='0'><tr><td style='width: 50%;'><h4 style='font-size: 18px; margin-bottom: 5px; margin-bottom: 20px;'>Người mua/Buyer</h4><div style='font-size: 11px;font-family: Verdana;'><p><b>" + BuyerName + "</b></p><p>" + Address1 + "</p><p>" + DistrictName1 + "</p><p>" + ProvinceCode1 + "</p></div></td><td style='width: 50%;'><h4 style='font-size: 18px; margin-bottom: 5px; margin-bottom: 20px;'>Người nhận/Recipient</h4><div style='font-size: 11px;font-family: Verdana;'><p><b>" + YourName + "</b></p><p>" + Address + "</p><p>" + DistrictName + "</p><p>" + ProvinceCode + "</p></div></td></tr></table></div>"; Body += "<div style='font-family: Verdana; font-size: 11px; margin-bottom: 20px;'><table style='width: 100%' cellpadding='0' cellspacing='0'><tr><td style='width: 50%;'><h4 style='font-size: 18px; margin-bottom: 5px; margin-bottom: 20px;'>Người nhận/Recipient</h4><div style='font-size: 11px;font-family: Verdana;'><p><b>" + YourName + "</b></p><p>" + Address + "</p><p>" + DistrictName + "</p><p>" + ProvinceCode + "</p></div></td></tr></table></div>"; Body += "<div style='font-family: Verdana; font-size: 11px; margin-bottom: 20px;'><h4 style='font-size: 18px;'>Chi tiết đơn hàng/Your Order Contains...</h4>"; Body += "<div style='font-size: 11px; font-family: Verdana'>"; //Body += "<p><b>* Hình thức giao hàng</b>: " + DeliveryMethodsEmail + "</p>"; //Body += "<p><b>* Hình thức thanh toán</b>:" + ServiceName + "</p>"; Body += "<p><b>* Phương thức thanh toán</b>: Thanh toán bằng chuyển khoản trực tiếp</p>"; //Body += "<p><b>* Ngày - Giờ giao</b>: " + EmailDeliveryDate + "</p>"; Body += "</div>"; Body += "<table style='font-size: 11px; font-family: Verdana; padding: 10px; border: 1px solid #C7D7DB; width: 100%;border-collapse: collapse;' cellpadding='0' cellspacing='0'>"; //Body += "<tr><th align='left' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Sản phẩm/Cart Items</th><th style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Cỡ/Size</th><th style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Số lượng/Qty</th><th align='center' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Giá/Item Price</th><th align='right' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Thành tiền/Item Total</th></tr>"; Body += "<tr><th align='left' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Sản phẩm/Cart Items</th><th style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Số lượng/Qty</th><th align='center' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Giá/Item Price</th><th align='right' style='padding: 8px 5px; border-collapse: collapse; background-color: rgb(2,11,111);color: #fff;'>Thành tiền/Item Total</th></tr>"; foreach (DataRow dr in dtCart.Rows) { string ProductCode = dr["Tag"].ToString(); string ProductID = dr["ProductID"].ToString(); string ProductName = dr["ProductName"].ToString(); string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); string ProductOptionCategoryName = dr["ProductOptionCategoryName"].ToString(); string ProductLengthName = dr["ProductLengthName"].ToString(); double tPrice = Convert.ToDouble(Price) * Convert.ToDouble(Quantity); var itemPrice = string.Format("{0:##,###.##}", tPrice).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VND"; var sPrice = string.Format("{0:##,###.##}", dr["Price"]).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VND"; Amount += Convert.ToDouble(Price) * Convert.ToDouble(Quantity); Body += "<tr>"; Body += "<td style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + ProductName + " - " + ProductCode + " - " + ProductOptionCategoryName + " - " + ProductLengthName + "</td>"; //Body += "<td align='center' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + ProductColorName + "</td>"; Body += "<td align='center' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + Quantity + "</td>"; Body += "<td align='center' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + sPrice + "</td>"; Body += "<td align='right' style='padding: 5px; border-collapse: collapse; border-bottom: 1px solid #C7D7DB;'>" + itemPrice + "</td>"; Body += "</tr>"; } Body += "</table>"; Body += "<div style='clear: both;'></div>"; var iShippingPrice = Convert.ToDouble(string.IsNullOrEmpty(ShippingPrice.ToString()) ? "0" : ShippingPrice); sAmount = Amount + iShippingPrice; //sAmount = Amount; var tAmount = string.Format("{0:##,###.##}", Amount).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VNĐ"; var Shipping = string.Format("{0:##,###.##}", iShippingPrice).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VNĐ"; var SubTotal = string.Format("{0:##,###.##}", sAmount).Replace('.', '*').Replace(',', '.').Replace('*', ',') + " VNĐ"; Body += "<table style='font-size: 11px; font-family: Verdana; text-align: right; margin: 10px 0; width: 100%; float: right;' cellpadding='0' cellspacing='0'>"; Body += "<tr><td style='width:85%;'>Thành tiền/Subtotal:</td><td style='width:15%;'>" + tAmount + "</td></tr>"; Body += "<tr><td>Phí giao hàng/Shipping:</td><td>" + Shipping + "</td></tr>"; Body += "<tr><td><b>Tổng tiền/Grand Total:</b></td><td><b>" + SubTotal + "</b></td></tr>"; Body += "</table>"; Body += "<div style='clear: both;'></div>"; //Body += "<ul style='font-size: 11px; font-style: italic; padding: 0;margin: 0; list-style-type: none;'>"; //Body += "<li><b>*</b> Giá sản phẩm chưa bao gồm thuế VAT 10%/ Item price is excluded of 10% VAT</li>"; //Body += "<li><b>*</b> Xin vui lòng <a style='font-size: 11px;' href='http://www.pandemos.vn/lien-he.aspx'>gọi điện</a> tới Đồng Hồ Anh Minhs-Hoa Trái Cây để thay đổi nếu Quý khách muốn sửa đơn hàng/ Please <a style='font-size: 11px;' href='http://www.pandemos.vn/lien-he.aspx'>call</a> Đồng Hồ Anh Minhs-Hoa Trái Cây if you are in need of making a modification to your Order </li>"; //Body += "<li><b>*</b> Vui lòng tham khảo các điều khoản về Thay đổi và Hủy đơn hàng trong <a style='font-size: 11px;' href='http://www.pandemos.vn/thoa-thuan-su-dung.aspx'>Thỏa Thuận Sử Dụng</a>/Please check Policy for Order Change and Cancelation in our <a style='font-size: 11px;' href='http://www.pandemos.vn/thoa-thuan-su-dung.aspx'>Term of Use</a></li>"; //Body += "</ul>"; Body += "</div>"; Body += "<div style='font-family:Verdana;font-size:12px;margin-top:10px;'>"; Body += "<div style='font-size:16px;font-weight:bold;'>=================</div>"; Body += "<h4 style='font-size:14px;font-family:Verdana;margin:0;padding:0;'>Pandemos</h4>"; Body += "<div style='font-size:11px;font-family:Verdana;margin-top:5px;padding:0;margin:0;'>"; Body += "<p>Add: 403, Hai Bà Trưng , P.8, Quận 3, HCM </p>"; Body += "<p>Tel: (08)3 820 8577 - Hotline: 0902 563 577 </p>"; //Body += "<p>M: +84 908 xxx xxx>"; Body += "<p>W: <a href='http://www.pandemos.vn'>www.pandemos.vn</a></p>"; Body += "<p>E: <a href='mailto:[email protected]'>[email protected]</a></p>"; Body += "</div>"; Body += "</div>"; Body += "</div>"; //var bSendEmail = Common.SendMail(Host, Port, From, strDisplayNameMailFrom, sPassword, Email, To, Subject, Body, false); var bSendEmail = Common.SendMail(Host, Port, From, sPassword, Email, To, Subject, Body, true); if (bSendEmail) { //var OrderID = OrderNumber; //var UserName = string.IsNullOrEmpty(User.Identity.Name) ? "" : User.Identity.Name; //var OrderStatusID = "1"; //var ShippingStatusID = "1"; var PaymentMethodID = "transfer"; //var BillingAddressID = AddressBookID; //var ShippingAddressID = AddressBookID; //var Notes = strMessage; //var Comission = ""; oOrders.OrdersInsert1( OrderID, UserName, OrderStatusID, ShippingStatusID, PaymentMethodID, BillingAddressID, ShippingAddressID, Notes, Comission, "", "", YourAddress, "", Email ); foreach (DataRow dr in dtCart.Rows) { string ProductID = dr["ProductID"].ToString(); string Quantity = dr["Quantity"].ToString(); string Price = dr["Price"].ToString(); string CreateBy = UserName; string ProductOptionCategoryName = dr["ProductOptionCategoryName"].ToString(); string ProductLengthName = dr["ProductLengthName"].ToString(); //string ProductName = dr["ProductName"].ToString(); //string Type = dr["Tag"].ToString(); //string Description = dr["Description"].ToString(); oOrderDetail.OrderDetailInsert1( OrderID, ProductID, Quantity, Price, CreateBy, ProductOptionCategoryName, ProductLengthName, Email ); } Session["PaymentMethod"] = "transfer"; Session["Message"] = strMessage; Response.Redirect("~/xac-nhan-don-hang.aspx"); } } } }
public ActionResult ThanhToanTT() { var sessionCart = (List <CartItem>)Session[CommonConstants.CartSession]; var orderNew = new ORDER(); decimal total = 0; foreach (var item in sessionCart) { var detail = new ORDERDETAIL(); detail.OrderID = orderNew.ID; detail.ProductID = item.Product.ID; detail.Quantity = item.Quantity; if (item.Product.PromotionPrice.HasValue) { detail.Price = item.Product.PromotionPrice.Value; total += (item.Product.PromotionPrice.GetValueOrDefault(0) * item.Quantity); } else { detail.Price = item.Product.Price; total += (item.Product.Price.Value * item.Quantity); } } decimal totals = total * 100; var id = sessionCart.ToList().LastOrDefault(); string text = ""; foreach (var cart in sessionCart) { text = text + cart.Product.Name + " " + cart.Product.Quantity; if (cart.Product.ID != id.Product.ID) { text = text + " + "; } } Session[CommonConstants.CartSession] = null; string SECURE_SECRET = "A3EFDFABA8653DF2342E8DAC29B51AF0"; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest("https://mtf.onepay.vn/onecomm-pay/vpc.op"); conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", "ONEPAY"); conn.AddDigitalOrderField("vpc_AccessCode", "D67342C2"); conn.AddDigitalOrderField("vpc_MerchTxnRef", MaHoaMD5(ngaunhien().ToString())); conn.AddDigitalOrderField("vpc_OrderInfo", text); conn.AddDigitalOrderField("vpc_Amount", totals.ToString()); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", Url.Action("Index", "TrangChu", null, Request.Url.Scheme)); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", "Vietnam"); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", "onepay_paygate"); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", ""); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); return(Redirect(url)); }
}//String function end public VPCRequest AmexConfig() { Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Collect Information for AMEX Gateway"); VPCRequest conn = new VPCRequest(_TNS.Properties.Settings.Default.PaymentServerURL); // Configure the proxy details (if needed) conn.SetProxyHost(_TNS.Properties.Settings.Default.ProxyHost); conn.SetProxyUser(_TNS.Properties.Settings.Default.ProxyUser); conn.SetProxyPassword(_TNS.Properties.Settings.Default.ProxyPassword); conn.SetProxyDomain(_TNS.Properties.Settings.Default.ProxyDomain); conn.SetSecureSecret(_TNS.Properties.Settings.Default.vpc_SecureSecret); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("vpc_Version", _TNS.Properties.Settings.Default.vpc_Version); conn.AddDigitalOrderField("vpc_AccessCode", _TNS.Properties.Settings.Default.vpc_AccessCode); conn.AddDigitalOrderField("vpc_Merchant", _TNS.Properties.Settings.Default.vpc_Merchant); conn.AddDigitalOrderField("vpc_User", _TNS.Properties.Settings.Default.vpc_User); conn.AddDigitalOrderField("vpc_Password", _TNS.Properties.Settings.Default.vpc_Password); return conn; //Configure the Hard coded details (if needed) //VPCRequest conn = new VPCRequest("https://vpos.amxvpos.com/vpcdps"); //conn.SetProxyHost(""); //conn.SetProxyUser(""); //conn.SetProxyPassword(""); //conn.SetProxyDomain(""); //conn.SetSecureSecret("44DD98D32ECD3C1AA7F12A1D0F8B41EA"); }
public string RedirectOnepay(string codeInvoice, string amount, string ip) { // Khoi tao lop thu vien VPCRequest conn = new VPCRequest(OnePayProperty.Url_ONEPAY_TEST); conn.SetSecureSecret(OnePayProperty.HASH_CODE); // Gan cac thong so de truyen sang cong thanh toan onepay conn.AddDigitalOrderField("AgainLink", OnePayProperty.AGAIN_LINK); conn.AddDigitalOrderField("Title", "Tich hop onepay vao web asp.net mvc3,4"); conn.AddDigitalOrderField("vpc_Locale", OnePayProperty.PAYGATE_LANGUAGE); conn.AddDigitalOrderField("vpc_Version", OnePayProperty.VERSION); conn.AddDigitalOrderField("vpc_Command", OnePayProperty.COMMAND); conn.AddDigitalOrderField("vpc_Merchant", OnePayProperty.MERCHANT_ID); conn.AddDigitalOrderField("vpc_AccessCode", OnePayProperty.ACCESS_CODE); conn.AddDigitalOrderField("vpc_MerchTxnRef", "Thanh Toán"); conn.AddDigitalOrderField("vpc_OrderInfo", codeInvoice); conn.AddDigitalOrderField("vpc_Amount", amount); conn.AddDigitalOrderField("vpc_ReturnURL", Url.Action("OnepayResponse", "GioHang", null, Request.Url.Scheme, null)); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", ""); conn.AddDigitalOrderField("vpc_TicketNo", ip); string url = conn.Create3PartyQueryString(); return(url); }
public ActionResult MakePayment() { FindItemReponse <UserModel> response = _userService.FindUserByID(Session["User-UserID"].ToString()); if (response.Item != null) { FindAllItemReponse <MailingAddressModel> mailingResponse = _mailingService.FindMailingAddressByUser(Session["User-UserID"].ToString()); if (mailingResponse.Items != null) { var mailing = mailingResponse.Items.SingleOrDefault(); if (mailing != null) { //Caculate payment //Get fee int fee = -1; DateTime earlyBird = new DateTime(2017, 6, 30); DateTime regular = new DateTime(2017, 11, 26); int age = DataHelper.GetInstance().CalculateAge(response.Item.DateOfBirth.Value); switch (mailing.ParticipantType) { case "International delegates": case "International youth": if (age < 25) { fee = 150; } else { if (DateTime.UtcNow <= earlyBird) { fee = 550; } else { fee = 600; } } break; case "Vietnamese delegate": case "Vietnamese youth": if (age < 25) { fee = 100; } else { if (DateTime.UtcNow <= earlyBird) { fee = 200; } else { fee = 250; } } break; default: fee = -1; break; } if (fee == -1) { return(RedirectToAction("RegistrationIncompleted")); } //Parse currency decimal amount = 0; decimal usdrate = 0; try { usdrate = DataHelper.GetInstance().GetCurrencyRate(FROM_CURRENCY, 22265); } catch (Exception) { //Try convert using google try { string _amount = DataHelper.GetInstance().CurrencyConvert(fee, FROM_CURRENCY, TO_CURRENCY); _amount = _amount.Substring(0, _amount.IndexOf(" ")); amount = decimal.Parse(_amount); } catch (Exception) { return(RedirectToAction("Index", "RequestError")); } } //Calculate amount if (usdrate != 0) { amount = fee * usdrate; } if (amount == 0) { return(RedirectToAction("Index", "RequestError")); } //amount X 100 before parse to OnePay amount = amount * 100; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest(VIRTUAL_PAYMENT_CLIENT); conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn.AddDigitalOrderField("Title", "onepay paygate"); //Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Locale", vpc_Locale); conn.AddDigitalOrderField("vpc_Version", vpc_Version); conn.AddDigitalOrderField("vpc_Command", vpc_Command); //Test account string subId = string.Format("{0}", DateTime.Now.Ticks); conn.AddDigitalOrderField("vpc_Merchant", vpc_Merchant); conn.AddDigitalOrderField("vpc_AccessCode", vpc_AccessCode); conn.AddDigitalOrderField("vpc_MerchTxnRef", subId); //Package order conn.AddDigitalOrderField("vpc_Amount", amount.ToString()); var transactionReference = DateTime.Now.Ticks; StringBuilder builder = new StringBuilder(); builder.Append(string.Format("Transaction vpc_MerchTxnRef {0}, ", subId)); builder.Append(string.Format("Transaction vpc_Merchant {0}, ", vpc_Merchant)); builder.Append(string.Format("Transaction vpc_Amount {0}, ", amount)); builder.Append(string.Format("Transaction fullname {0}, ", response.Item.FullName)); builder.Append(string.Format("Transaction email {0}", response.Item.Email)); builder.Append(string.Format("Transaction reference {0}", transactionReference)); TransactionHistoryModel trans = new TransactionHistoryModel { Action = "Create payment", CreatedDate = DateTime.Now, Log = builder.ToString(), Status = (int)TransactionStatus.Created, UserId = response.Item.UserID, Email = response.Item.Email, TransactionReference = transactionReference }; var insertResponse = _transaction.Create(trans); //Order info conn.AddDigitalOrderField("vpc_OrderInfo", transactionReference.ToString()); //Return url conn.AddDigitalOrderField("vpc_ReturnURL", vpc_ReturnURL); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); return(Redirect(url)); } } } return(RedirectToAction("RegistrationIncompleted")); }
void setMomo(int httt) { if (httt == 0) { //request params need to request to MoMo system String Endpoint = "https://test-payment.momo.vn/gw_payment/transactionProcessor"; string endpoint = Endpoint.ToString().Equals("") ? "https://test-payment.momo.vn/gw_payment/transactionProcessor" : Endpoint.ToString(); string partnerCode = "MOMOSGYC20201014"; string accessKey = "T3WSXamh01G2JIFZ"; string serectkey = "NrNTKthB262X4BgGjdVm8ej86tkl2eDC"; string orderInfo = "Khách hàng: " + hoten + "\nSố điện thoại: " + sdt; string returnUrl = "https://*****:*****@gmail.com"; //Before sign HMAC SHA256 signature string rawHash = "partnerCode=" + partnerCode + "&accessKey=" + accessKey + "&requestId=" + requestId + "&amount=" + amount + "&orderId=" + orderid + "&orderInfo=" + orderInfo + "&returnUrl=" + returnUrl + "¬ifyUrl=" + notifyurl + "&extraData=" + extraData; MoMoSecurity crypto = new MoMoSecurity(); //sign signature SHA256 string signature = crypto.signSHA256(rawHash, serectkey); //build body json request JObject message = new JObject { { "partnerCode", partnerCode }, { "accessKey", accessKey }, { "requestId", requestId }, { "amount", amount }, { "orderId", orderid }, { "orderInfo", orderInfo }, { "returnUrl", returnUrl }, { "notifyUrl", notifyurl }, { "extraData", extraData }, { "requestType", "captureMoMoWallet" }, { "signature", signature } }; string responseFromMomo = PaymentRequest.sendPaymentRequest(endpoint, message.ToString()); JObject jmessage = JObject.Parse(responseFromMomo); //System.Diagnostics.Process.Start(jmessage.GetValue("payUrl").ToString()); Response.Redirect(jmessage.GetValue("payUrl").ToString()); } else if (httt == 1) { #region //Xử lý one pay string SECURE_SECRET = OnepayCode.SECURE_SECRET; VPCRequest conn = new VPCRequest(OnepayCode.VPCRequest); conn.SetSecureSecret(SECURE_SECRET); conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", OnepayCode.Merchant); //cần thanh bằng mã thật cấu hình trong app_code conn.AddDigitalOrderField("vpc_AccessCode", OnepayCode.AccessCode); //cần thanh bằng mã thật cấu hình trong app_code conn.AddDigitalOrderField("vpc_MerchTxnRef", maDH); //mã thanh toán conn.AddDigitalOrderField("vpc_OrderInfo", "Thông tin đơn hàng"); //thông tin đơn hàng conn.AddDigitalOrderField("vpc_Amount", (TongThanhTien * 100).ToString()); //chi phí cần nhân 100 theo yêu cầu của onepay conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", OnepayCode.ReturnURL); //địa chỉ nhận kết quả trả về // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", ""); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); #endregion Response.Redirect(url); //Response.Write("<div class='result'>" + url + "-" + OnepayQuocTeCode.ReturnURL + "</div>"); } else if (httt == 2) { string SECURE_SECRET1 = OnepayQuocTeCode.SECURE_SECRET; //cần thanh bằng mã thật cấu hình trong app_code; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn1 = new VPCRequest(OnepayQuocTeCode.VPCRequest); //Cần thay bằng cổng thật conn1.SetSecureSecret(SECURE_SECRET1); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn1.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn1.AddDigitalOrderField("Title", "onepay paygate"); conn1.AddDigitalOrderField("vpc_Locale", "en");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn1.AddDigitalOrderField("vpc_Version", "2"); conn1.AddDigitalOrderField("vpc_Command", "pay"); conn1.AddDigitalOrderField("vpc_Merchant", OnepayQuocTeCode.Merchant); //ần thanh bằng mã thật cấu hình trong app_code conn1.AddDigitalOrderField("vpc_AccessCode", OnepayQuocTeCode.AccessCode); //cần thanh bằng mã thật cấu hình trong app_code conn1.AddDigitalOrderField("vpc_MerchTxnRef", maDH); //mã thanh toán conn1.AddDigitalOrderField("vpc_OrderInfo", "Thông tin đơn hàng"); //mã thanh toán conn1.AddDigitalOrderField("vpc_Amount", (TongThanhTien * 100).ToString()); //chi phí cần nhân 100 theo yêu cầu của onepay conn1.AddDigitalOrderField("vpc_ReturnURL", OnepayQuocTeCode.ReturnURL); //địa chỉ nhận kết quả trả về // Thong tin them ve khach hang. De trong neu khong co thong tin conn1.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn1.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn1.AddDigitalOrderField("vpc_SHIP_City", ""); conn1.AddDigitalOrderField("vpc_SHIP_Country", ""); conn1.AddDigitalOrderField("vpc_Customer_Phone", ""); conn1.AddDigitalOrderField("vpc_Customer_Email", ""); conn1.AddDigitalOrderField("vpc_Customer_Id", ""); // Dia chi IP cua khach hang conn1.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); // Chuyen huong trinh duyet sang cong thanh toan String url1 = conn1.Create3PartyQueryString(); Response.Redirect(url1); } }
public string GetRedirectUrl(PaymentMethod config, Guid paymentTransactionId, string orderCode, long amount, string ipAddress, Guid languageId, string siteDomainUrl) { var siteUrl = (string.IsNullOrEmpty(siteDomainUrl) ? "http://onepay.vn" : siteDomainUrl).Trim(new[] { ' ', '/' }); var returnUrl = Config.ReturnUrl; if (returnUrl.IndexOf("http://", StringComparison.OrdinalIgnoreCase) < 0 || returnUrl.IndexOf("https://", StringComparison.OrdinalIgnoreCase) < 0) { returnUrl = siteUrl + "/" + Config.ReturnUrl.Trim(new[] { ' ', '/', ':' }); } string secureSecret = Config.SecureSecret; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest(Config.ApiPayUrl); conn.SetSecureSecret(secureSecret); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "en");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", Config.PayVersion); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", Config.Merchant); conn.AddDigitalOrderField("vpc_AccessCode", Config.AccessCode); conn.AddDigitalOrderField("vpc_MerchTxnRef", paymentTransactionId.ToString()); conn.AddDigitalOrderField("vpc_OrderInfo", orderCode); conn.AddDigitalOrderField("vpc_Amount", (amount * 100).ToString()); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", returnUrl); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); //"194 Tran Quang Khai"); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); //"Hanoi"); conn.AddDigitalOrderField("vpc_SHIP_City", ""); //"Hanoi"); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); //"Vietnam"); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); //"043966668"); conn.AddDigitalOrderField("vpc_Customer_Email", ""); //"*****@*****.**"); conn.AddDigitalOrderField("vpc_Customer_Id", ""); // "onepay_paygate"); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", ipAddress); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); return(url); }
public void makePay(string genId, string totalAtm) { string ipaddress; ipaddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (ipaddress == "" || ipaddress == null) { ipaddress = Request.ServerVariables["REMOTE_ADDR"]; } string SECURE_SECRET = "0C1D637C06AC75FDE9D7B4B550A3A641"; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest("https://onepay.vn/onecomm-pay/vpc.op"); conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("Title", "Mibo.vn - Cong thanh toan OnePay"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", "NGUYENPHONG"); conn.AddDigitalOrderField("vpc_AccessCode", "GWJBCBJX"); conn.AddDigitalOrderField("vpc_MerchTxnRef", genId); conn.AddDigitalOrderField("vpc_OrderInfo", "Tin Hoc Nguyen Phong - Mibo.vn"); conn.AddDigitalOrderField("vpc_Amount", totalAtm); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", "http://mibo.vn/pay-process.aspx"); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", ipaddress); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); Page.Response.Redirect(url); }
public ActionResult CreateOrder(string orderViewModel) { var order = new JavaScriptSerializer().Deserialize <OrderViewModel>(orderViewModel); var orderNew = new Order(); order.CreatedDate = DateTime.Now; order.CreatedBy = order.CustomerName; orderNew.UpdateOrder(order); List <OrderDetail> orderDetails = new List <OrderDetail>(); var sessionCart = (List <ShoppingCartViewModel>)Session[CommonConstants.SessionCart]; var cart = new List <CartInsertViewModel>(); foreach (var session in sessionCart) { if (cart.Any(x => x.ProductId == session.ProductId)) { foreach (var item in cart) { if (item.ProductId == session.ProductId) { item.Quantity += session.Quantity; item.Note = item.Note + " " + session.Quantity + " " + "màu: " + " " + session.Color + ",size: " + session.Size + ";"; } } } else { CartInsertViewModel newItem = new CartInsertViewModel(); newItem.ProductId = session.ProductId; newItem.Product = session.Product; newItem.Quantity = session.Quantity; newItem.Color = session.Color; newItem.Size = session.Size; newItem.Note = session.Quantity + " " + "màu" + " " + session.Color + ",size: " + session.Size + ";"; cart.Add(newItem); } } decimal total = 0; foreach (var item in cart) { var detail = new OrderDetail(); detail.ProductID = item.ProductId; detail.Quantity = item.Quantity; if (item.Product.PromotionPrice.HasValue) { detail.Price = item.Product.PromotionPrice.Value; total += (item.Product.PromotionPrice.GetValueOrDefault(0) * item.Quantity); } else { detail.Price = item.Product.Price; total += (item.Product.Price * item.Quantity); } detail.Note = item.Note; orderDetails.Add(detail); } decimal totals = total * 100; string text = ""; foreach (var item in cart) { text = text + item.Quantity + "x" + item.Product.Name + "-" + item.Note + " "; } if (order.PaymentMethod == "Thanh toán khi giao hàng") { _orderService.Create(ref orderNew, orderDetails); _productService.Save(); string content = System.IO.File.ReadAllText(Server.MapPath("~/Assets/client/template/neworder.html")); content = content.Replace("{{CustomerName}}", order.CustomerName); content = content.Replace("{{Phone}}", order.CustomerMobile); content = content.Replace("{{Email}}", order.CustomerEmail); content = content.Replace("{{Address}}", order.CustomerAddress); content = content.Replace("{{Total}}", total.ToString("N0")); var adminEmail = ConfigHelper.GetByKey("AdminEmail"); MailHelper.SendMail(order.CustomerEmail, "Đơn hàng mới từ TheShoes", content); MailHelper.SendMail(adminEmail, "Đơn hàng mới từ TheShoes", content); Session[CommonConstants.SessionCart] = null; Session[CommonConstants.SessionConfirmCart] = null; Session[CommonConstants.SessionOrder] = null; return(Json(new { status = true })); } else { Session.Add(CommonConstants.SessionConfirmCart, cart); Session.Add(CommonConstants.SessionOrder, orderNew); string SECURE_SECRET = "A3EFDFABA8653DF2342E8DAC29B51AF0"; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest("https://mtf.onepay.vn/onecomm-pay/vpc.op"); conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", "ONEPAY"); conn.AddDigitalOrderField("vpc_AccessCode", "D67342C2"); conn.AddDigitalOrderField("vpc_MerchTxnRef", MaHoaMD5(ngaunhien().ToString())); conn.AddDigitalOrderField("vpc_OrderInfo", text); conn.AddDigitalOrderField("vpc_Amount", totals.ToString()); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", Url.Action("ConfirmOrder", "ShoppingCart", null, Request.Url.Scheme)); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", "Vietnam"); conn.AddDigitalOrderField("vpc_Customer_Phone", order.CustomerMobile); conn.AddDigitalOrderField("vpc_Customer_Email", order.CustomerEmail); conn.AddDigitalOrderField("vpc_Customer_Id", "onepay_paygate"); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", ""); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); return(Json(new { status = true, urlCheckout = url, })); } }
public ActionResult XacNhanDonHang(FormCollection f) { if (f["CMND"].Length != 9 && f["CMND"].Length != 12) { ViewData["L1"] = "Vui lòng nhập đúng CMND"; return(View()); } List <GIOHANG> gh = LayGioHang(); DONDATHANG donhang = new DONDATHANG(); donhang.CMND = f["CMND"]; donhang.Ngaydat = DateTime.Now; donhang.Ngaygiao = DateTime.Parse(f["NgayGiao"]); donhang.DiaChiLienHe = f["DCGiaoHang"]; donhang.EmailLienHe = f["Email"]; donhang.SDTLienHe = f["SDT"]; donhang.Tinhtranggiaohang = false; donhang.TongTien = TongTien(); donhang.Dathanhtoan = false; donhang.TrangThai = true; db.DONDATHANGs.InsertOnSubmit(donhang); db.SubmitChanges(); string mathanhtoantructuyen = DateTime.Now.Ticks.ToString(); if (string.Compare(f["rbHinhThucThanhToan"], "Onepay") == 0) { string SECURE_SECRET = OnepayCode.SECURE_SECRET;// HAO : CAN THANH MA THAT TRONG APP CODE //// KHOI TAO LOP THU VIEN VA GAN GIA TRI CAC THAM SO VPCRequest conn = new VPCRequest(OnepayCode.VPCRequest); conn.SetSecureSecret(SECURE_SECRET); //add digital order field conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn"); conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", OnepayCode.Merchant); conn.AddDigitalOrderField("vpc_AccessCode", OnepayCode.AccessCode); conn.AddDigitalOrderField("vpc_MerchTxnRef", mathanhtoantructuyen); conn.AddDigitalOrderField("vpc_OrderInfo", mathanhtoantructuyen); conn.AddDigitalOrderField("vpc_Amount", (TongTien() * 100).ToString()); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", OnepayCode.ReturnURL); conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", ""); conn.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); string ketQua = ""; string url = conn.Create3PartyQueryString(); ketQua = url; foreach (var item in gh) { CHITIETDONTHANG ctdh = new CHITIETDONTHANG(); DONGHO dh = db.DONGHOs.SingleOrDefault(m => m.MaSP == item.iMaSP); ctdh.MaDonHang = donhang.MaDonHang; ctdh.MaSP = item.iMaSP; ctdh.Soluong = item.iSoLuong; ctdh.ThanhTien = item.fThanhTien; ctdh.Dongia = item.fDonGia; db.CHITIETDONTHANGs.InsertOnSubmit(ctdh); dh.Soluongton = dh.Soluongton - item.iSoLuong; UpdateModel(dh); } Session["GIOHANG"] = null; db.SubmitChanges(); ViewBag.Ma = donhang.MaDonHang; return(Redirect(ketQua)); } else { foreach (var item in gh) { CHITIETDONTHANG ctdh = new CHITIETDONTHANG(); DONGHO dh = db.DONGHOs.SingleOrDefault(m => m.MaSP == item.iMaSP); ctdh.MaDonHang = donhang.MaDonHang; ctdh.MaSP = item.iMaSP; ctdh.Soluong = item.iSoLuong; ctdh.ThanhTien = item.fThanhTien; ctdh.Dongia = item.fDonGia; db.CHITIETDONTHANGs.InsertOnSubmit(ctdh); dh.Soluongton = dh.Soluongton - item.iSoLuong; UpdateModel(dh); } Session["GIOHANG"] = null; db.SubmitChanges(); return(View()); } }
private Boolean AmexRefund(string BookingID, string ReferenceNo, string TotalAmount, string TransactionNo) { VPCRequest conn = AmexConfig(); string MerchantRefNo = BookingID + "_" + ReferenceNo + "~WEB"; string vpc_TransNo = TransactionNo; if (TotalAmount.Contains(".")) { TotalAmount = TotalAmount.Replace(".00", ""); } TotalAmount = Convert.ToString(Convert.ToInt32(TotalAmount) * 100); string vpc_Amount = TotalAmount; conn.AddDigitalOrderField("vpc_Command", "refund"); conn.AddDigitalOrderField("vpc_MerchTxnRef", MerchantRefNo); conn.AddDigitalOrderField("vpc_TransNo", vpc_TransNo); conn.AddDigitalOrderField("vpc_Amount", vpc_Amount); conn.SendRequest(); string ResponseResult = null; int CounterChkAmexRefundValue; for (CounterChkAmexRefundValue = 1; CounterChkAmexRefundValue <= 2; CounterChkAmexRefundValue++) { string vpc_TxnResponseCode = conn.GetResultField("vpc_TxnResponseCode", "Unknown"); ResponseResult = PaymentCodesHelper.GetTxnResponseCodeDescription(vpc_TxnResponseCode); if (ResponseResult == "" || ResponseResult == null) { conn.SendRequest(); } else { StringBuilder RefundDetails = new StringBuilder(); RefundDetails.Append(" These are the Refund Details for Booking ID and Reference : " + BookingID + "," + ReferenceNo + "<br/>"); RefundDetails.Append(" vpc_TxnResponseCode : " + conn.GetResultField("vpc_TxnResponseCode", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_MerchTxnRef : " + conn.GetResultField("vpc_MerchTxnRef", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_Merchant : " + conn.GetResultField("vpc_Merchant", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_OrderInfo : " + conn.GetResultField("vpc_OrderInfo", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_Amount : " + conn.GetResultField("vpc_Amount", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_DRExists :" + conn.GetResultField("vpc_DRExists", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_FoundMultipleDRs : " + conn.GetResultField("vpc_FoundMultipleDRs", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_Message : " + conn.GetResultField("vpc_Message", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_AcqResponseCode : " + conn.GetResultField("vpc_AcqResponseCode", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_TransactionNo : " + conn.GetResultField("vpc_TransactionNo", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_ReceiptNo : " + conn.GetResultField("vpc_ReceiptNo", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_AuthorizeId : " + conn.GetResultField("vpc_AuthorizeId", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_BatchNo : " + conn.GetResultField("vpc_BatchNo", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_TicketNo : " + conn.GetResultField("vpc_TicketNo", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_Card : " + conn.GetResultField("vpc_Card", "Unknown") + "<br/>"); RefundDetails.Append(" Response Result :" + ResponseResult + "<br/>"); RefundDetails.Append(" vpc_AuthorisedAmount : " + conn.GetResultField("vpc_AuthorisedAmount", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_CapturedAmount : " + conn.GetResultField("vpc_CapturedAmount", "Unknown") + "<br/>"); RefundDetails.Append(" vpc_RefundedAmount : " + conn.GetResultField("vpc_RefundedAmount", "Unknown") + "<br/>"); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Refund Details for Amex : " + RefundDetails); string vpc_avsResultCode = conn.GetResultField("vpc_AVSResultCode", "Unknown"); string Transaction = conn.GetResultField("vpc_TransactionNo", "Unknown"); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("vpc_AVSResultCode : " + vpc_avsResultCode + " and vpc_TransactionNo : " + TransactionNo); if (vpc_TxnResponseCode == "0")//&& (vpc_avsResultCode == "Y" || vpc_avsResultCode == "M") { Boolean IsSuccess = Successfull_1(BookingID); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Update ISProcessed Value to ' 1 ' and Payment Successful : " + IsSuccess + " for BookingID : " + BookingID); return(IsSuccess); } else { Boolean IsRefundPossible = RefundNotPossible_5(BookingID); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Update ISProcessed Value to ' 5 ' and Refund : " + IsRefundPossible + " for BookingID : " + BookingID); return(IsRefundPossible); } } } if (CounterChkAmexRefundValue == 3) { Boolean IsAmexException = ExceptioninRefund_4(BookingID); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Update ISProcessed Value to ' 4 ' and Refund : " + IsAmexException + " for BookingID : " + BookingID); return(IsAmexException); } return(false); }
public Boolean AmexQuery(string BookingID, string ReferenceNo, string TotalAmount) { VPCRequest conn = AmexConfig(); string MerchantRefNo = BookingID + "_" + ReferenceNo + "~WEB"; conn.AddDigitalOrderField("vpc_Command", "queryDR"); conn.AddDigitalOrderField("vpc_MerchTxnRef", MerchantRefNo); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Amex Reversal Payment process for MerchantRefNo. : " + MerchantRefNo); // Perform the transaction conn.SendRequest(); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Returning form Amex Gateway"); string ResponseResult = null; int CounterChkAmexQueryValue; for (CounterChkAmexQueryValue = 1; CounterChkAmexQueryValue <= 2; CounterChkAmexQueryValue++) { string vpc_TxnResponseCode = conn.GetResultField("vpc_TxnResponseCode", "Unknown"); ResponseResult = PaymentCodesHelper.GetTxnResponseCodeDescription(vpc_TxnResponseCode); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Response Code : " + ResponseResult); if (ResponseResult == "" || ResponseResult == null || ResponseResult == "null response") { conn.SendRequest(); } else { StringBuilder InquiryDetails = new StringBuilder(); InquiryDetails.Append("These are the Inquiry Details for Booking ID and Reference :" + BookingID + "," + ReferenceNo + "<br/>"); InquiryDetails.Append(" vpc_TxnResponseCode :" + conn.GetResultField("vpc_TxnResponseCode", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_MerchTxnRef :" + conn.GetResultField("vpc_MerchTxnRef", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_Merchant :" + conn.GetResultField("vpc_Merchant", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_OrderInfo :" + conn.GetResultField("vpc_OrderInfo", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_Amount :" + conn.GetResultField("vpc_Amount", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_DRExists :" + conn.GetResultField("vpc_DRExists", "Unknown")); InquiryDetails.Append(" vpc_FoundMultipleDRs :" + conn.GetResultField("vpc_FoundMultipleDRs", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_Message :" + conn.GetResultField("vpc_Message", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_AcqResponseCode :" + conn.GetResultField("vpc_AcqResponseCode", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_TransactionNo :" + conn.GetResultField("vpc_TransactionNo", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_ReceiptNo :" + conn.GetResultField("vpc_ReceiptNo", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_AuthorizeId :" + conn.GetResultField("vpc_AuthorizeId", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_BatchNo :" + conn.GetResultField("vpc_BatchNo", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_TicketNo :" + conn.GetResultField("vpc_TicketNo", "Unknown") + "<br/>"); InquiryDetails.Append(" vpc_Card :" + conn.GetResultField("vpc_Card", "Unknown") + "<br/>"); InquiryDetails.Append(" Response Result :" + ResponseResult + "<br/>"); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Inquiry Details for Amex : " + InquiryDetails); string vpc_avsResultCode = conn.GetResultField("vpc_AVSResultCode", "Unknown"); string TransactionNo = conn.GetResultField("vpc_TransactionNo", "Unknown"); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("vpc_AVSResultCode : " + vpc_avsResultCode + " and vpc_TransactionNo : " + TransactionNo); if (vpc_TxnResponseCode == "0" && (vpc_avsResultCode == "Y" || vpc_avsResultCode == "M")) { if ((MerchantRefNo != "" || MerchantRefNo != null) && (TotalAmount != "" || TotalAmount != null) && (TransactionNo != "" || TransactionNo != null)) { Boolean Result = AmexRefund(BookingID, ReferenceNo, TotalAmount, TransactionNo); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Value Return from AmexRefund i.e. IsSuccess : " + Result); if (Result == true) { return(true); } else { return(false); } } else { return(false); } } else { Boolean IsPaymentSuccess = UserPaymentNotSuccess_3(BookingID); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Update ISProcessed Value to ' 3 ' and Inquiry Payment Success : " + IsPaymentSuccess + " for BookingID : " + BookingID); return(IsPaymentSuccess); } } }//for loop end if (CounterChkAmexQueryValue == 3) { Boolean IsHDFCInquirySuccess = ExceptioninInquiry_2(BookingID); Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write("Update ISProcessed Value to ' 2 ' and Inquiry Payment Success : " + IsHDFCInquirySuccess + " for BookingID : " + BookingID); return(IsHDFCInquirySuccess); } return(false); }
public string RedirectToOnpayMienNam(string codeInvoice, string amount, string ip) { //khởi tạo lớp thư viện VPCRequest conn = new VPCRequest(OnePayProperties.URL_ONEPAY_TEST); conn.SetSecureSecret(OnePayProperties.HASH_CODE); //truyền các thông số để chuyển sang cổng onepay conn.AddDigitalOrderField("AgainLink", OnePayProperties.AGAIN_LINK); conn.AddDigitalOrderField("Title", "Online Payment With OnePay"); conn.AddDigitalOrderField("vpc_Locale", OnePayProperties.PAYGATE_LANGUAGE); conn.AddDigitalOrderField("vpc_Version", OnePayProperties.VERSION); conn.AddDigitalOrderField("vpc_Command", OnePayProperties.COMMAND); conn.AddDigitalOrderField("vpc_Merchant", OnePayProperties.MERCHANT_ID); conn.AddDigitalOrderField("vpc_AccessCode", OnePayProperties.ACCESS_CODE); conn.AddDigitalOrderField("vpc_MerchTxnRef", RandomString()); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_OrderInfo", codeInvoice); conn.AddDigitalOrderField("vpc_Amount", amount); conn.AddDigitalOrderField("vpc_ReturnURL", Url.Action("OnepayResponseMienNam", "OnePay", null, Request.Scheme, null)); //thông tin khách hàng conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", ""); conn.AddDigitalOrderField("vpc_TicketNo", ip); string url = conn.Create3rdPartyQueryString(); return(url); }
public IActionResult OnePayPayment(Orders order) { var current_invoice = CreateInvoice(order); //Send request to OnePay string returnURL = Url.Action("OnePayResult", "OnePay", null, Request.Scheme); VPCRequest conn = new VPCRequest(); conn.SetSecureSecret(VPCRequest.SECURE_SECRET); conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", VPCRequest.MERCHANT_ID); conn.AddDigitalOrderField("vpc_AccessCode", VPCRequest.ACCESS_CODE); conn.AddDigitalOrderField("vpc_MerchTxnRef", "HoaDon #:" + current_invoice.OrderId); conn.AddDigitalOrderField("vpc_OrderInfo", "HoaDon #:" + current_invoice.OrderId); conn.AddDigitalOrderField("vpc_Amount", current_invoice.Total + "00"); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", returnURL); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_Customer_Phone", order.Phone); conn.AddDigitalOrderField("vpc_Customer_Email", order.Email); // Chuyen huong trinh duyet sang cong thanh toan string url = conn.Create3PartyQueryString(); return(Redirect(url)); }
public ActionResult SubmitInvoidOnePay(string idOrder, double deposit) { PaymentConfigOnePay pay = new PaymentConfigOnePay(); using (var db = new MyDbDataContext()) { pay = db.PaymentConfigOnePays.FirstOrDefault(); } if (pay != null) { System.Web.HttpContext context = System.Web.HttpContext.Current; string ip = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; VPCRequest conn = new VPCRequest("https://onepay.vn/vpcpay/vpcpay.op"); conn.SetSecureSecret(pay.Hashcode); conn.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "en"); conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", pay.MerchantId); conn.AddDigitalOrderField("vpc_AccessCode", pay.AccessCode); conn.AddDigitalOrderField("vpc_MerchTxnRef", idOrder); conn.AddDigitalOrderField("vpc_OrderInfo", idOrder); conn.AddDigitalOrderField("vpc_Amount", deposit.ToString()); conn.AddDigitalOrderField("vpc_ReturnURL", pay.WebSite + "/BookTour/MessageOnePay"); conn.AddDigitalOrderField("vpc_TicketNo", ip); String url = conn.Create3PartyQueryString(); return(Redirect(url)); } else { return(View()); } }
public void makePay(Accept acc) { string ipaddress; ipaddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (ipaddress == "" || ipaddress == null) { ipaddress = Request.ServerVariables["REMOTE_ADDR"]; } string SECURE_SECRET = "0C1D637C06AC75FDE9D7B4B550A3A641"; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest("https://onepay.vn/onecomm-pay/vpc.op"); conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("Title", "Mibo.vn - Cong thanh toan OnePay"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", "NGUYENPHONG"); conn.AddDigitalOrderField("vpc_AccessCode", "GWJBCBJX"); conn.AddDigitalOrderField("vpc_MerchTxnRef", genId); conn.AddDigitalOrderField("vpc_OrderInfo", "Tin Hoc Nguyen Phong - Mibo.vn"); conn.AddDigitalOrderField("vpc_Amount", acc.TotalAmt.ToString()+"00"); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", "http://mibo.vn/pay-process.aspx"); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", ipaddress); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); Page.Response.Redirect(url); }
public IActionResult OnePayPayment([Bind("vpc_Customer_Phone,vpc_Customer_Email,vpc_Customer_Id,vpc_Customer_Name")] VPC vpc) { string value = SessionHelper.GetObjectFromJson <string>(HttpContext.Session, "User"); var user = eMarketContext.TaiKhoan.Include(p => p.ThongTinTaiKhoan).Where(p => p.UserName == value).FirstOrDefault(); List <GioHang> danhsachhang = SessionHelper.GetObjectFromJson <List <GioHang> >(HttpContext.Session, "cart"); double total = 0; foreach (var x in danhsachhang) { total += x.HangHoa.Gia * x.SoLuong; } total = VPCRequest.USD_VND * total; var current_invoice = CreateInvoice(danhsachhang, vpc.vpc_Customer_Name, vpc.vpc_Customer_Email, vpc.vpc_Customer_Address, vpc.vpc_Customer_Phone); HttpContext.Session.SetString("cart", ""); foreach (var item in danhsachhang) { var topselling = eMarketContext.TopSelling.Where(p => p.HangHoaId == item.HangHoa.HangHoaId).FirstOrDefault(); if (topselling == null) { var newcolumn = new TopSelling(); newcolumn.HangHoaId = item.HangHoa.HangHoaId; newcolumn.SoLan = 1; eMarketContext.Add(newcolumn); eMarketContext.SaveChanges(); } else { topselling.SoLan += 1; eMarketContext.Update(topselling); eMarketContext.SaveChanges(); } } //Send request to OnePay string returnURL = Url.Action("OnePayResult", "GioHang", null, Request.Scheme);; VPCRequest conn = new VPCRequest(); conn.SetSecureSecret(VPCRequest.SECURE_SECRET); conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", VPCRequest.MERCHANT_ID); conn.AddDigitalOrderField("vpc_AccessCode", VPCRequest.ACCESS_CODE); conn.AddDigitalOrderField("vpc_MerchTxnRef", "HoaDon_" + current_invoice.HoaDonId); conn.AddDigitalOrderField("vpc_OrderInfo", "HoaDon_" + current_invoice.HoaDonId); conn.AddDigitalOrderField("vpc_Amount", total + "00"); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", returnURL); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_Customer_Phone", vpc.vpc_Customer_Phone); conn.AddDigitalOrderField("vpc_Customer_Email", vpc.vpc_Customer_Email); conn.AddDigitalOrderField("vpc_Customer_Id", "" + user.TaiKhoanId); // Dia chi IP cua khach hang string ipAddress = _accessor.HttpContext.Connection.RemoteIpAddress.ToString(); conn.AddDigitalOrderField("vpc_TicketNo", ipAddress); // Chuyen huong trinh duyet sang cong thanh toan string url = conn.Create3PartyQueryString(); return(Redirect(url)); }
private void GuiDonHang() { string ketQua = ""; string detail = "Working"; //Lấy các thông tin người dùng gửi lên string hoTen = Request.Params["hoTen"]; string diaChi = Request.Params["diaChi"]; string soDienThoai = Request.Params["soDienThoai"]; string email = Request.Params["email"]; string phuongThucThanhToan = Request.Params["phuongThucThanhToan"]; //Nếu tồn tại giỏ hàng thì mới xử lý đặt hàng if (Session["GioHang"] != null) { //Khai báo datatable để chứa giỏ hàng DataTable dtGioHang = new DataTable(); dtGioHang = (DataTable)Session["GioHang"]; #region Lặp trong giỏ hàng để lấy ra tổng tiền double tongTien = 0; for (int i = 0; i < dtGioHang.Rows.Count; i++) { tongTien += int.Parse(dtGioHang.Rows[i]["SoLuong"].ToString()) * double.Parse(dtGioHang.Rows[i]["GiaSP"].ToString()); } #endregion #region Kiểm tra và thêm thông tin vào bảng Khách hàng string maKH = XuLyThongTinKhachHang(hoTen, diaChi, soDienThoai, email); #endregion //Lấy ngày giờ hiện tại trả về dạng số để làm mã thanh toán trực tuyến string mathanhtoantructuyen = DateTime.Now.Ticks.ToString(); #region Thêm thông tin vào bảng Đơn đặt hàng //Tạo đơn đặt hàng string ngayTao = DateTime.Now.ToString(); Order.Order_Inser(ngayTao, tongTien.ToString(), mathanhtoantructuyen, maKH, hoTen, soDienThoai, email, detail.ToString(), ""); //Lấy ra thông tin Đơn đặt hàng vừa tạo DataTable dtDonDatHang = Order.Info_Order_Desc(); string maDonDatHang = dtDonDatHang.Rows[0]["OrderID"].ToString(); #endregion #region Đọc giỏ hàng và thêm từng sản phẩm vào bảng Chi tiết đơn đặt hàng for (int i = 0; i < dtGioHang.Rows.Count; i++) { OrderDetail.OrderDetail_Inser(dtGioHang.Rows[i]["MaSP"].ToString(), maDonDatHang, dtGioHang.Rows[i]["SoLuong"].ToString(), dtGioHang.Rows[i]["GiaSP"].ToString(), ""); } #endregion #region Xóa session giỏ hàng Session["GioHang"] = null; #endregion #region Xử lý tương ứng cho các hình thức thanh toán switch (phuongThucThanhToan) { case "ChuyenKhoan": break; case "Onepay": #region Chuyển sang trang Onepay string SECURE_SECRET = OnepayCode.SECURE_SECRET; //Hòa: cần thanh bằng mã thật cấu hình trong app_code // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn = new VPCRequest(OnepayCode.VPCRequest); //Hòa: Cần thay bằng cổng thật cấu hình trong app_code conn.SetSecureSecret(SECURE_SECRET); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn.AddDigitalOrderField("Title", "onepay paygate"); conn.AddDigitalOrderField("vpc_Locale", "vn"); //Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", "2"); conn.AddDigitalOrderField("vpc_Command", "pay"); conn.AddDigitalOrderField("vpc_Merchant", OnepayCode.Merchant); //Hòa: cần thanh bằng mã thật cấu hình trong app_code conn.AddDigitalOrderField("vpc_AccessCode", OnepayCode.AccessCode); //Hòa: cần thanh bằng mã thật cấu hình trong app_code conn.AddDigitalOrderField("vpc_MerchTxnRef", mathanhtoantructuyen); //Hòa: mã thanh toán conn.AddDigitalOrderField("vpc_OrderInfo", mathanhtoantructuyen); //Hòa: thông tin đơn hàng conn.AddDigitalOrderField("vpc_Amount", (tongTien * 100).ToString()); //Hòa: chi phí cần nhân 100 theo yêu cầu của onepay conn.AddDigitalOrderField("vpc_Currency", "$"); conn.AddDigitalOrderField("vpc_ReturnURL", OnepayCode.ReturnURL); //Hòa: địa chỉ nhận kết quả trả về // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", ""); // Dia chi IP cua khach hang conn.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); // Chuyen huong trinh duyet sang cong thanh toan String url = conn.Create3PartyQueryString(); #endregion ketQua = url; break; case "OnepayQuocTe": string SECURE_SECRET1 = OnepayQuocTeCode.SECURE_SECRET; //Hòa: cần thanh bằng mã thật cấu hình trong app_code; // Khoi tao lop thu vien va gan gia tri cac tham so gui sang cong thanh toan VPCRequest conn1 = new VPCRequest(OnepayQuocTeCode.VPCRequest); //Hòa: Cần thay bằng cổng thật conn1.SetSecureSecret(SECURE_SECRET1); // Add the Digital Order Fields for the functionality you wish to use // Core Transaction Fields conn1.AddDigitalOrderField("AgainLink", "http://onepay.vn"); conn1.AddDigitalOrderField("Title", "onepay paygate"); conn1.AddDigitalOrderField("vpc_Locale", "en"); //Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn1.AddDigitalOrderField("vpc_Version", "2"); conn1.AddDigitalOrderField("vpc_Command", "pay"); conn1.AddDigitalOrderField("vpc_Merchant", OnepayQuocTeCode.Merchant); //Hòa: cần thanh bằng mã thật cấu hình trong app_code conn1.AddDigitalOrderField("vpc_AccessCode", OnepayQuocTeCode.AccessCode); //Hòa: cần thanh bằng mã thật cấu hình trong app_code conn1.AddDigitalOrderField("vpc_MerchTxnRef", mathanhtoantructuyen); //Hòa: mã thanh toán conn1.AddDigitalOrderField("vpc_OrderInfo", mathanhtoantructuyen); //Hòa: mã thanh toán conn1.AddDigitalOrderField("vpc_Amount", (tongTien * 100).ToString()); //Hòa: chi phí cần nhân 100 theo yêu cầu của onepay conn1.AddDigitalOrderField("vpc_ReturnURL", OnepayQuocTeCode.ReturnURL); //Hòa: địa chỉ nhận kết quả trả về // Thong tin them ve khach hang. De trong neu khong co thong tin conn1.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn1.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn1.AddDigitalOrderField("vpc_SHIP_City", ""); conn1.AddDigitalOrderField("vpc_SHIP_Country", ""); conn1.AddDigitalOrderField("vpc_Customer_Phone", ""); conn1.AddDigitalOrderField("vpc_Customer_Email", ""); conn1.AddDigitalOrderField("vpc_Customer_Id", ""); // Dia chi IP cua khach hang conn1.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); // Chuyen huong trinh duyet sang cong thanh toan String url1 = conn1.Create3PartyQueryString(); ketQua = url1; break; } #endregion } else { ketQua = "Giỏ hàng đã hết hạn, vui lòng thực hiện chọn lại sản phẩm và đặt hàng lại"; } Response.Write(ketQua); }
public ActionResult OnePayNoiDia() { string amount = (ShoppingCart.Instance.GetTotal() * 100).ToString(); // Khoi tao lop thu vien VPCRequest conn = new VPCRequest(OnepayProperty.URL_ONEPAY_TEST); conn.SetSecureSecret(OnepayProperty.HASH_CODE); conn.AddDigitalOrderField("Title", "Thanh toán trực tuyến"); conn.AddDigitalOrderField("vpc_Locale", "vn");//Chon ngon ngu hien thi tren cong thanh toan (vn/en) conn.AddDigitalOrderField("vpc_Version", OnepayProperty.VERSION); conn.AddDigitalOrderField("vpc_Command", OnepayProperty.COMMAND); conn.AddDigitalOrderField("vpc_Merchant", OnepayProperty.MERCHANT_ID); conn.AddDigitalOrderField("vpc_AccessCode", OnepayProperty.ACCESS_CODE); conn.AddDigitalOrderField("vpc_MerchTxnRef", RandomString()); conn.AddDigitalOrderField("vpc_OrderInfo", "Test đơn hàng"); conn.AddDigitalOrderField("vpc_Amount", amount); conn.AddDigitalOrderField("vpc_Currency", "VND"); conn.AddDigitalOrderField("vpc_ReturnURL", Url.Action("OnePayNoiDiaRes", "CheckOut", null, Request.Url.Scheme, null)); // Thong tin them ve khach hang. De trong neu khong co thong tin conn.AddDigitalOrderField("vpc_SHIP_Street01", ""); conn.AddDigitalOrderField("vpc_SHIP_Provice", ""); conn.AddDigitalOrderField("vpc_SHIP_City", ""); conn.AddDigitalOrderField("vpc_SHIP_Country", ""); conn.AddDigitalOrderField("vpc_Customer_Phone", ""); conn.AddDigitalOrderField("vpc_Customer_Email", ""); conn.AddDigitalOrderField("vpc_Customer_Id", ""); conn.AddDigitalOrderField("vpc_TicketNo", Request.UserHostAddress); string url = conn.Create3PartyQueryString(); return(Redirect(url)); }