public void UpdateOrder(VnPayResponse vnPayResponse, InforOrder order) { var connection = new SqlConnection(connectionString); DateTime date = DateTime.ParseExact(vnPayResponse.vnp_PayDate, "yyyyMMddHHmmss", CultureInfo.InvariantCulture); try { connection.Open(); var command = connection.CreateCommand(); command.CommandType = CommandType.StoredProcedure; command.CommandText = UpdateOrders; var status = vnPayResponse.vnp_ResponseCode == "00" ? "Thành Công" : "Chưa Thanh Toán"; command.Parameters.Add(new SqlParameter("@order_id", order.id_order)); command.Parameters.Add(new SqlParameter("@status", status)); command.ExecuteNonQuery(); connection.Close(); } catch (Exception e) { Console.WriteLine(e.Message); } }
public void AddOrder(VnPayResponse vnPayResponse, CheckUser user, InforOrder order) { var connection = new SqlConnection(connectionString); string mobile = order.phone.ToString(); DateTime date = DateTime.ParseExact(vnPayResponse.vnp_PayDate, "yyyyMMddHHmmss", CultureInfo.InvariantCulture); try { connection.Open(); var command = connection.CreateCommand(); command.CommandType = CommandType.StoredProcedure; command.CommandText = InsertOrder; var status = vnPayResponse.vnp_ResponseCode == "00" ? "Thành Công" : "Chưa Thanh Toán"; string code_order = "#" + DateTime.Now.ToBinary().ToString() + user.ID_User; command.Parameters.Add(new SqlParameter("@USER_ID", user.ID_User)); command.Parameters.Add(new SqlParameter("@Code", code_order)); command.Parameters.Add(new SqlParameter("@TYPEPAY", 1)); command.Parameters.Add(new SqlParameter("@CARDTYPE", order.CardType)); command.Parameters.Add(new SqlParameter("@DENOMINATION_ID", order.denomination)); command.Parameters.Add(new SqlParameter("@PHONE", mobile)); command.Parameters.Add(new SqlParameter("@BRAND", order.network)); command.Parameters.Add(new SqlParameter("@QUANTITY", 1)); command.Parameters.Add(new SqlParameter("@TOTAL", vnPayResponse.vnp_Amount / 100)); command.Parameters.Add(new SqlParameter("@DISCOUNT", 1)); command.Parameters.Add(new SqlParameter("@STATUS", status)); command.Parameters.Add(new SqlParameter("@BANKCODE", vnPayResponse.vnp_BankCode)); command.Parameters.Add(new SqlParameter("@CREATED_AT", date)); command.ExecuteNonQuery(); connection.Close(); } catch (Exception e) { //fix not ho em nhe , dang bi loi convert datetime nua thoi may th kia em fix het rôi Console.WriteLine(e.Message); } }
public ActionResult VnResponse(VnPayResponse vnPayResponse) { var inforOrder = (InforOrder)Session["InforOrder"]; ViewBag.infor = inforOrder; ViewBag.phi = vnPayResponse; Pay pay = new Pay(); var user = (CheckUser)Session["Account"]; if (inforOrder.id_order != 0) { if (vnPayResponse.vnp_ResponseCode != "00") { return(RedirectToAction("HistoryDeal", "User")); } pay.UpdateOrder(vnPayResponse, inforOrder); } else { pay.AddOrder(vnPayResponse, user, inforOrder); } Session.Remove("InforOrder"); return(View(vnPayResponse)); }