diff --git a/29WxOrderWpf/Ctrls/Statistics/Models/ShopRevenueStatisticsModels.cs b/29WxOrderWpf/Ctrls/Statistics/Models/ShopRevenueStatisticsModels.cs index e11a639..24f5bc9 100644 --- a/29WxOrderWpf/Ctrls/Statistics/Models/ShopRevenueStatisticsModels.cs +++ b/29WxOrderWpf/Ctrls/Statistics/Models/ShopRevenueStatisticsModels.cs @@ -200,6 +200,14 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Models /// public class BuyerOrderInfo { + /// + /// 买手订单ID + /// + public long Id { get; set; } + /// + /// 仓库类型 0,1直发 + /// + public int PurchaseType { get; set; } /// /// 外部订单(买手订单)号 /// @@ -210,6 +218,7 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Models /// public int OutAmount { get; set; } + public long RefundId { get; set; } /// /// 退款金额(分) /// diff --git a/29WxOrderWpf/Ctrls/Statistics/Services/ShopRevenueStatisticsService.cs b/29WxOrderWpf/Ctrls/Statistics/Services/ShopRevenueStatisticsService.cs index 819dc07..21d452c 100644 --- a/29WxOrderWpf/Ctrls/Statistics/Services/ShopRevenueStatisticsService.cs +++ b/29WxOrderWpf/Ctrls/Statistics/Services/ShopRevenueStatisticsService.cs @@ -37,6 +37,12 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Services /// 订单明细列表(有效订单 / 退款订单 / 买手未退回金额的订单),供订单列表弹窗使用。 /// Task> QueryOrderRowsAsync(ShopRevenueStatisticsQuery query, ShopOrderDetailType detailType); + + /// + /// 把某笔买手订单标记为退款成功(订单列表弹窗“退款成功”按钮,仅买手未退回金额的订单使用)。 + /// + /// 买手退款表ID(,即表格当前行的 id) + Task UpdateBuyerRefundStatusAsync(long id); } /// @@ -364,6 +370,9 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Services /// 订单明细接口地址(订单列表弹窗用) private const string GetShopOrderDetailsApi = "shop_revenue_statistics/GetShopOrderDetails"; + /// 更新买手订单退款状态接口地址(id 通过 URL 参数传递) + private const string UpdateBuyerRefundStatusApi = "buyer/UpdateBuyerRefundStatsu"; + /// Unix 纪元(本地时区),用于解析以时间戳作为 Key 的返回数据 private static readonly DateTime UnixEpoch = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); @@ -626,5 +635,24 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Services EnsureSuccess(ret); return ret.Data ?? new List(); } + + /// + /// 请求 buyer/UpdateBuyerRefundStatsu 更新买手订单退款状态: + /// id 拼在 URL 查询参数上(Build29WxObjString 生成的地址已带 ?obj=…,这里用 &id= 追加); + /// 请求体走 UserLogin.GetSignPostData 常规签名(time/code 等)。 + /// 返回码非 200 时抛出异常,由调用方提示。 + /// + public async Task UpdateBuyerRefundStatusAsync(long id) + { + if (id == 0) + throw new Exception("更新失败:缺少买手订单ID"); + + var url = BaseClass.Build29WxObjString(UpdateBuyerRefundStatusApi) + "&id=" + id; + var html = await GetHtml.PostJsonAsync(url, UserLogin.GetSignPostData(new { })); + + var ret = Deserialize>(html); + EnsureSuccess(ret); + return ret.Data; + } } } diff --git a/29WxOrderWpf/Ctrls/Statistics/ShowOrderDialogView.xaml b/29WxOrderWpf/Ctrls/Statistics/ShowOrderDialogView.xaml index 49811dd..f667ec3 100644 --- a/29WxOrderWpf/Ctrls/Statistics/ShowOrderDialogView.xaml +++ b/29WxOrderWpf/Ctrls/Statistics/ShowOrderDialogView.xaml @@ -12,11 +12,12 @@ comn:DialogWindowProperty.Width="1320" d:Background="White" d:DesignHeight="450" - d:DesignWidth="800" + d:DesignWidth="1000" Focusable="True" PreviewKeyDown="ShowOrderDialogView_PreviewKeyDown" mc:Ignorable="d"> +