推送订单
This commit is contained in:
parent
0a65290940
commit
9d07af1b23
|
|
@ -65,7 +65,7 @@ public class TldChargeOrder
|
|||
public int StopReason { get; set; }
|
||||
public int? SumPeriod { get; set; }
|
||||
public List<TldChargeDetail>? ChargeDetails { get; set; }
|
||||
/// <summary>手机号(非标准字段,需与特来电确认是否在订单推送中携带)</summary>
|
||||
/// <summary>手机号(特来电在订单推送中携带)</summary>
|
||||
public string? PhoneNum { get; set; }
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -121,11 +121,8 @@ public class TldService : ITldService
|
|||
/// 处理充电订单推送(核心接口)
|
||||
/// 特来电充电完成后推送订单 → 解密验签 → 根据手机号找用户 → 计算并发放积分
|
||||
///
|
||||
/// 用户关联方案:充电订单号格式为"运营商ID+唯一编号"(27字符),
|
||||
/// 其中运营商ID前9位可提取。但订单中无手机号字段。
|
||||
/// 实际对接中,特来电会在启动充电时通过PhoneNum字段传入手机号,
|
||||
/// 该手机号会包含在订单推送的扩展字段中。
|
||||
/// 如果订单中确实没有手机号,则需要通过TldChargeRecord表预先记录关联关系。
|
||||
/// 用户关联方案:特来电在订单推送中携带PhoneNum字段,
|
||||
/// 通过手机号匹配本平台用户,匹配成功则发放积分。
|
||||
/// </summary>
|
||||
public async Task<TldChargeOrderResponse> HandleChargeOrderAsync(TldRequest request)
|
||||
{
|
||||
|
|
@ -216,7 +213,7 @@ public class TldService : ITldService
|
|||
chargeRecord.UpdatedAt = DateTime.UtcNow;
|
||||
}
|
||||
|
||||
// 方案B:通过订单中的手机号直接匹配用户(需与特来电确认是否携带PhoneNum)
|
||||
// 方案B:通过订单中的手机号匹配用户
|
||||
if (userId is null && !string.IsNullOrEmpty(order.PhoneNum))
|
||||
{
|
||||
var user = await _db.Users.FirstOrDefaultAsync(u => u.Phone == order.PhoneNum);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user