public static void NotifHandler(string status_code, string status_message, string transaction_id, string masked_card, string order_id, string gross_amount, string payment_type, string transaction_time, string transaction_status, string fraud_status, string signature_key) { //HttpContext.Current.Response.Write("asdasd"); //HttpContext.Current.Response.Write(status_code + " " + status_message + " " + transaction_id + " " + masked_card + " " + order_id + " " + gross_amount + " " + payment_type + " " + transaction_time + " " + transaction_status + " " + fraud_status + " " + approval_code + " " + signature_key + " " + bank + " " + eci); try { DataClassesDataContext db = new DataClassesDataContext(); TBOrder order = db.TBOrders.Where(x => x.IDOrder.ToString() == order_id).FirstOrDefault(); if (order != null) { HttpContext.Current.Response.Write("ada"); if (status_code == "200") { Class_Order class_order = new Class_Order(); ReturnData result = class_order.AJAX_UpdateOrderStatus_vt(order.IDOrder, 2, ""); HttpContext.Current.Response.Write(result.message); } else { Class_Order class_order = new Class_Order(); class_order.AJAX_UpdateOrderStatus_vt(order.IDOrder, 2, ""); HttpContext.Current.Response.Write("not updated"); } } } catch (Exception ex) { HttpContext.Current.Response.Write(ex.Message); } }
public static void HandlerVA(string status_code, string order_id) { //HttpContext.Current.Response.Write("asdasd"); //HttpContext.Current.Response.Write(status_code + " " + status_message + " " + transaction_id + " " + masked_card + " " + order_id + " " + gross_amount + " " + payment_type + " " + transaction_time + " " + transaction_status + " " + fraud_status + " " + approval_code + " " + signature_key + " " + bank + " " + eci); try { DataClassesDataContext db = new DataClassesDataContext(); TBOrder order = db.TBOrders.Where(x => x.Reference == order_id).FirstOrDefault(); if (order != null) { if (status_code == "200") { Class_Order class_order = new Class_Order(); class_order.AJAX_UpdateOrderStatus_vt(order.IDOrder, 2, ""); //sukses } else if (status_code == "202") { Class_Order class_order = new Class_Order(); class_order.AJAX_UpdateOrderStatus_vt(order.IDOrder, 10, ""); //Transaksi ditolak oleh bank atau Fraud Detection System (FDS). } else if (status_code == "201") { Class_Order class_order = new Class_Order(); class_order.AJAX_UpdateOrderStatus_vt(order.IDOrder, 13, ""); //Transaksi ditolak oleh FDS. Anda harus melakukan konfirmasi di Merchant Administration Portal (MAP). } } } catch (Exception ex) { HttpContext.Current.Response.Write(ex.Message); } }
public ReturnData AJAX_Submit(int idOrder, string name, string email, string phoneNumber, string bank, decimal amount, string paymentDate, string notes, string baseImage, string fnImage) { try { DataClassesDataContext db = new DataClassesDataContext(); DateTime myDate = DateTime.ParseExact(paymentDate, "yyyy-MM-dd HH:mm", System.Globalization.CultureInfo.InvariantCulture); TBOrder order = db.TBOrders.Where(x => !x.Deflag && x.IDOrder == idOrder).FirstOrDefault(); if (order == null) { return(ReturnData.MessageFailed("Order not found", null)); } TBPayment_Confirmation data = new TBPayment_Confirmation(); data.IDOrder = idOrder; data.ReferenceNumber = order.Reference; data.Name = name; data.Email = email; data.PhoneNumber = phoneNumber; data.Bank = bank; data.Amount = amount; data.PaymentDate = myDate; data.Notes = notes; if (baseImage != "" && fnImage != "") { System.Drawing.Image _image = WITLibrary.ConvertCustom.Base64ToImage(baseImage); _image.Save(HttpContext.Current.Server.MapPath("/assets/images/payment_confirmation/" + DateTime.Now.ToString("ddmmyy") + "_" + fnImage)); data.Image = DateTime.Now.ToString("ddmmyy") + "_" + fnImage; } db.TBPayment_Confirmations.InsertOnSubmit(data); //GANTI STATUS JADI AWAITING PAYMENT VERIFICATION order.IDOrderStatus = 13; db.SubmitChanges(); //INSERT LOG ORDER Class_Log_Order logOrder = new Class_Log_Order(); logOrder.Insert((int?)null, order.IDOrder, order.Reference, order.TBOrder_Status.Name, "Customer Payment Confirmation", order.TBCustomer.FirstName + ' ' + order.TBCustomer.LastName); //SEND EMAIL TO ADMIN using (StreamReader reader = new StreamReader(HttpContext.Current.Server.MapPath("~/assets/email-template/admin-payment-notification.html"))) { string body = ""; body = reader.ReadToEnd(); body = body.Replace("{ReferenceCode}", data.ReferenceNumber); body = body.Replace("{CustomerName}", data.Name); body = body.Replace("{Name}", data.Name); body = body.Replace("{Email}", data.Email); body = body.Replace("{Date}", data.PaymentDate.ToString("dd/MM/yyyy hh:mm")); body = body.Replace("{Amount}", WITLibrary.ConvertString.ToCurrency(data.Amount.ToString())); body = body.Replace("{Bank}", data.Bank); body = body.Replace("{Notes}", data.Notes); string emailAdmin = db.TBConfigurations.Where(x => x.Name == "email_user").FirstOrDefault().Value; OurClass.SendEmail(emailAdmin, WebConfigurationManager.AppSettings["Title"] + " Confirm Payment for Order #" + data.ReferenceNumber, body, HttpContext.Current.Server.MapPath("/assets/images/payment_confirmation/" + DateTime.Now.ToString("ddmmyy") + "_" + fnImage)); } //SEND EMAIL KE CUSTOMER Class_Configuration _config = new Class_Configuration(); var emailLogo = _config.Dynamic_Get_EmailLogo(); using (StreamReader reader = new StreamReader(HttpContext.Current.Server.MapPath("~/assets/email-template/template-email-paymentReceived.html"))) { string body = ""; body = reader.ReadToEnd(); body = body.Replace("{name}", name); body = body.Replace("{nomorInvoice}", order.Reference); body = body.Replace("{amount}", WITLibrary.ConvertString.ToCurrency(order.TotalPaid.ToString())); body = body.Replace("{owner}", order.TBPayment_Method.Owner); body = body.Replace("{account}", order.TBPayment_Method.AccountNumber); body = body.Replace("{bank}", order.TBPayment_Method.Bank); body = body.Replace("{title}", System.Configuration.ConfigurationManager.AppSettings["Title"]); body = body.Replace("{email_logo}", System.Configuration.ConfigurationManager.AppSettings["url"] + "/assets/images/email_logo/" + emailLogo); body = body.Replace("{shop_url}", System.Configuration.ConfigurationManager.AppSettings["url"]); OurClass.SendEmail(email, WebConfigurationManager.AppSettings["Title"] + " Order Notification", body, ""); } return(ReturnData.MessageSuccess("Order Confirmation submitted successfully", null)); } catch (Exception ex) { Class_Log_Error log = new Class_Log_Error(); log.Insert(ex.Message, ex.StackTrace); return(ReturnData.MessageFailed(ex.Message, null)); } }
private void btnClear_Click(object sender, EventArgs e) { TBOrder.Clear(); pictureBoxSolution.Image = null; }