using MiAssessment.Model.Models.Payment; namespace MiAssessment.Core.Interfaces; /// /// 支付回调服务接口 /// public interface IPaymentNotifyService { /// /// 处理微信支付回调(自动识别 V2/V3 格式) /// /// 回调请求体 /// 回调请求头(V3 需要用于签名验证) /// 回调处理结果 Task HandleWechatNotifyAsync(string notifyBody, WechatPayNotifyHeaders? headers = null); /// /// 处理微信支付 V2 回调(XML 格式) /// /// 微信回调XML数据 /// 回调处理结果 Task HandleWechatV2NotifyAsync(string xmlData); /// /// 处理微信支付 V3 回调(JSON 格式) /// /// 微信回调JSON数据 /// 回调请求头 /// 回调处理结果 Task HandleWechatV3NotifyAsync(string jsonData, WechatPayNotifyHeaders headers); /// /// 检查订单是否已处理(幂等性检查) /// /// 订单号 /// 是否已处理 Task IsOrderProcessedAsync(string orderNo); /// /// 记录支付回调通知 /// /// 订单号 /// 回调数据 /// 是否记录成功 Task RecordNotifyAsync(string orderNo, WechatNotifyData notifyData); /// /// 更新订单通知状态 /// /// 订单号 /// 状态:0-待处理 1-处理成功 2-处理失败 /// 处理消息 /// 是否更新成功 Task UpdateNotifyStatusAsync(string orderNo, byte status, string? message = null); }