Backup/DTcms.Web/api/alipay/notify_url.aspx.cs
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DTcms.API.Alipay;
using DTcms.Common;
namespace DTcms.Web.api.alipay
{
public partial class notify_url : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
SortedDictionary<string, string> sPara = GetRequestPost();
if (sPara.Count > 0)//判断是否有带返回参数
{
Notify aliNotify = new Notify();
bool verifyResult = aliNotify.Verify(sPara, DTRequest.GetString("notify_id"), DTRequest.GetString("sign"));
if (verifyResult)//验证成功
{
string trade_no = DTRequest.GetString("trade_no"); //支付宝交易号
string order_no = DTRequest.GetString("out_trade_no"); //获取订单号
string total_fee = DTRequest.GetString("total_fee"); //获取总金额
string subject = DTRequest.GetString("subject"); //商品名称、订单名称
string body = DTRequest.GetString("body"); //商品描述、订单备注、描述
string buyer_email = DTRequest.GetString("buyer_email"); //买家支付宝账号
string trade_status = DTRequest.GetString("trade_status"); //交易状态
string order_type = DTRequest.GetString("extra_common_param"); //订单交易类别
if (DTRequest.GetString("trade_status") == "TRADE_FINISHED" || DTRequest.GetString("trade_status") == "TRADE_SUCCESS")
{
//修改支付状态、时间
if (order_type.ToLower() == DTEnums.AmountTypeEnum.Recharge.ToString().ToLower()) //在线充值
{
BLL.amount_log bll = new BLL.amount_log();
Model.amount_log model = bll.GetModel(order_no);
if (model == null)
{
Response.Write("该订单号不存在");
return;
}
if (model.value != decimal.Parse(total_fee))
{
Response.Write("订单金额和支付金额不相符");
return;
}
model.status = 1;
model.complete_time = DateTime.Now;
bool result = bll.Update(model);
if (!result)
{
Response.Write("修改订单状态失败");
return;
}
}
后面还有 64 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
