1303 lines
48 KiB
C#
1303 lines
48 KiB
C#
using Api.Framework.Cps;
|
||
using Api.Framework.Enums;
|
||
using Api.Framework.Model;
|
||
using CsharpHttpHelper;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Text.RegularExpressions;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace Api.Framework.Tools
|
||
{
|
||
/// <summary>
|
||
/// 唯品会助手类
|
||
/// </summary>
|
||
public class WPHHelper
|
||
{
|
||
/// <summary>
|
||
/// 查找宝贝Id的正则表达式
|
||
/// </summary>
|
||
//private static string RegItemId = @"product-\d+-(?<商品Id>\d+)";
|
||
private static List<string> RegItemIds = new List<string>() { @"(?i)(?:product|detail)-\d+-(?<商品Id>\d+)", @"(?i)vip.com.+?goodsId=(?<商品Id>\d+)", @"landing_pid=(?<商品Id>\d+)" };
|
||
|
||
/// <summary>
|
||
/// 内容中获取唯品会商品id
|
||
/// </summary>
|
||
/// <param name="mess"></param>
|
||
/// <returns></returns>
|
||
private static string CheckRegexGetGoodsId(string mess)
|
||
{
|
||
try
|
||
{
|
||
try
|
||
{
|
||
mess = HttpHelper.URLDecode(HttpHelper.URLDecode(HttpHelper.URLDecode(mess)));
|
||
foreach (var item in RegItemIds)
|
||
{
|
||
var reg = Regex.Match(mess, item, RegexOptions.IgnoreCase);
|
||
if (reg.Success)
|
||
return reg.Groups["商品Id"].Value;
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{ }
|
||
|
||
var urlTmps = HttpExtend.RegexMatchesUrl(mess);
|
||
foreach (var url in urlTmps)
|
||
{
|
||
var tmpUrl = FindLocationByUrl(url);
|
||
if (!string.IsNullOrWhiteSpace(tmpUrl))
|
||
{
|
||
tmpUrl = HttpHelper.URLDecode(HttpHelper.URLDecode(HttpHelper.URLDecode(tmpUrl)));
|
||
foreach (var item in RegItemIds)
|
||
{
|
||
var reg = Regex.Match(tmpUrl, item, RegexOptions.IgnoreCase);
|
||
if (reg.Success)
|
||
return reg.Groups["商品Id"].Value;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{ }
|
||
return string.Empty;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取商品id
|
||
/// </summary>
|
||
/// <param name="mess">内容</param>
|
||
/// <returns></returns>
|
||
public static string GetWphGoodsID(string mess)
|
||
{
|
||
try
|
||
{
|
||
var messTmp = HttpHelper.URLDecode(HttpHelper.URLDecode(HttpHelper.URLDecode(mess)));
|
||
if (messTmp.ToLower().Contains("vip.com") || messTmp.ToLower().Contains("m.vip") || messTmp.ToLower().Contains("vipglobal.hk"))
|
||
{
|
||
var itemId = CheckRegexGetGoodsId(messTmp);
|
||
if (!string.IsNullOrWhiteSpace(itemId))
|
||
return itemId;
|
||
}
|
||
//pages/index/index.html?$route=/pages/productDetail/productDetail?goodsId=6919530373160104087&brandId=1710613367&f=share_pd&nmsns=shop_android-7.62.2-weixin&nst=product&nsbc=&nct=card&ncid=075f0b5e-f292-3b6f-a846-7aab008970f9&nabtid=121&nuid=377785401&nchl_param=share:075f0b5e-f292-3b6f-a846-7aab008970f9:1642813783344&mars_cid_a=075f0b5e-f292-3b6f-a846-7aab008970f9&chl_type=share&nmsns=shop_android-7.62.2-weixin&nst=product&nsbc=&nct=card&ncid=075f0b5e-f292-3b6f-a846-7aab008970f9&nabtid=121&nuid=377785401&nchl_param=share:075f0b5e-f292-3b6f-a846-7aab008970f9:1642813783344&mars_cid_a=075f0b5e-f292-3b6f-a846-7aab008970f9&chl_type=share&tra_from=adp:C01V4m7y4lstf247::mig_code::x214d703d4124f5fbd3f8451e99b81f7
|
||
if (messTmp.ToLower().Contains("vipshop/") || messTmp.Contains("唯品") || messTmp.ToLower().Contains("productDetail/productDetail".ToLower()))
|
||
{
|
||
var reg = Regex.Match(messTmp, @"goodsId=(?<商品Id>\d+)", RegexOptions.IgnoreCase);
|
||
if (reg.Success)
|
||
{
|
||
return reg.Groups["商品Id"].Value;
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{ }
|
||
return string.Empty;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 转链(根据商品id生成联盟链接) 参数参考:https://vop.vip.com/home#/api/method/detail/com.vip.adp.api.open.service.UnionUrlService-1.0.0/genByGoodsIdWithOauth
|
||
/// </summary>
|
||
/// <param name="data">参数</param>
|
||
/// <returns></returns>
|
||
public WPHCpsUrl GetCpsUrl(WeipinhuiApi api, object data)
|
||
{
|
||
return api.SendWeipinhui<WPHCpsUrl>("com.vip.adp.api.open.service.UnionUrlService-1.0.0#genByGoodsIdWithOauth", data);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 转链(根据唯品会链接生成联盟链接) 参数参考:https://vop.vip.com/home#/api/method/detail/com.vip.adp.api.open.service.UnionUrlService-1.0.0/genByVIPUrlWithOauth
|
||
/// </summary>
|
||
/// <param name="data">参数</param>
|
||
/// <returns></returns>
|
||
public WPHCpsUrl GetCpsUrl_Hide(WeipinhuiApi api, object data)
|
||
{
|
||
return api.SendWeipinhui<WPHCpsUrl>("com.vip.adp.api.open.service.UnionUrlService-1.0.0#genByVIPUrlWithOauth", data);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取链接真实地址
|
||
/// </summary>
|
||
/// <param name="url">链接</param>
|
||
/// <param name="referer">开源</param>
|
||
/// <param name="allowautoredirect"></param>
|
||
/// <returns></returns>
|
||
private static string FindLocationByUrl(string url, string referer = "", bool allowautoredirect = false)
|
||
{
|
||
try
|
||
{
|
||
HttpHelper http = new HttpHelper();
|
||
HttpItem item = new HttpItem()
|
||
{
|
||
URL = url,
|
||
IsToLower = false,
|
||
Timeout = 5000,
|
||
ReadWriteTimeout = 30000,
|
||
UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.154 Safari/537.36 LBBROWSER",
|
||
ContentType = "application/x-www-form-urlencoded",
|
||
Referer = referer,
|
||
Allowautoredirect = allowautoredirect
|
||
};
|
||
HttpResult result = http.GetHtml(item);
|
||
var ss = result.Header.Get("Location");
|
||
return ss;
|
||
}
|
||
catch (Exception)
|
||
{ }
|
||
return string.Empty;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 将订单明细对象转换成数据库唯品会fl_order_weipinhui对象
|
||
/// </summary>
|
||
/// <param name="order"></param>
|
||
/// <param name="wphList"></param>
|
||
/// <returns></returns>
|
||
internal List<fl_order_weipinhui> OrderInfoListConvertDbWeipinhuiOrder(OrderInfoList order, List<fl_order_weipinhui> wphList)
|
||
{
|
||
try
|
||
{
|
||
if (order == null)
|
||
return wphList;
|
||
|
||
if (wphList == null)
|
||
{
|
||
#region 商品明细
|
||
if (order.detailList != null)
|
||
{
|
||
var wphs = new List<fl_order_weipinhui>();
|
||
|
||
foreach (var detail in order.detailList)
|
||
{
|
||
var wph = new fl_order_weipinhui();
|
||
#region 公共部分
|
||
wph.orderSn = order.orderSn; //订单号
|
||
wph.newCustomer = order.newCustomer;//新老客:0-待定,1-新客,2-老客 WeipinhuiNewCustomer
|
||
wph.channelTag = order.channelTag;//渠道商模式下表示自定义渠道标识;工具商模式下表示pid
|
||
wph.orderTime = order.orderTime;//下单时间 时间戳 单位毫秒
|
||
wph.signTime = order.signTime;//签收时间 时间戳 单位毫秒
|
||
wph.settledTime = order.settledTime;//结算时间 时间戳 单位毫秒
|
||
wph.lastUpdateTime = order.lastUpdateTime;//订单上次更新时间 时间戳 单位毫秒
|
||
wph.settled = order.settled;//订单结算状态 0-未结算,1-已结算 WeipinhuiOrderSettled
|
||
wph.selfBuy = order.selfBuy;//是否自推自买 0-否,1-是 WeipinhuiShiFou
|
||
wph.orderSubStatusName = Util.ConvertEnum<WeipinhuiOrderSubStatusName>(order.orderSubStatusName);//订单子状态:流转状态-支持状态:(已下单、已付款、已签收、待结算、已结算、已失效)
|
||
wph.afterSaleChangeCommission = order.afterSaleChangeCommission;//售后订单佣金变动:仅在订单完结之后发生售后行为时返回
|
||
wph.afterSaleChangeGoodsCount = order.afterSaleChangeGoodsCount;//售后订单总商品数量变动:仅在订单完结之后发生售后行为时返回
|
||
wph.commissionEnterTime = order.commissionEnterTime;//入账时间,时间戳,单位毫秒
|
||
wph.pid = order.pid;//推广PID:目前等同于channelTag
|
||
wph.isPrepay = order.isPrepay;//是否预付订单:0-否,1-是 WeipinhuiShiFou
|
||
wph.statParam = order.statParam; //自定义统计参数
|
||
wph.isSplit = order.isSplit;//订单拆单标识: 0-否,1-是 WeipinhuiShiFou
|
||
wph.parentSn = order.parentSn;//订单母单号:订单为拆单子单时返回
|
||
wph.orderTrackReason = order.orderTrackReason;//订单归因方式:0-常规推广,1-惊喜红包,2-锁粉,3-超级红包 WeipinhuiGuiYin
|
||
|
||
//wph.status = ;//订单状态:0-不合格,1-待定,2-已完结 WeipinhuiOrderStatus
|
||
//wph. string orderSource ;//订单来源
|
||
#endregion
|
||
|
||
//if (detail.goodsId == "6918315325800001858")
|
||
//{
|
||
|
||
//}
|
||
|
||
wph.goodsId = detail.goodsId;//商品id
|
||
wph.goodsName = detail.goodsName;//商品名称
|
||
wph.goodsThumb = detail.goodsThumb;//商品缩略图
|
||
wph.goodsCount = detail.goodsCount;//商品数量
|
||
wph.commissionTotalCost = double.Parse(detail.commissionTotalCost);//商品计佣金额(元,保留两位小数)
|
||
wph.commissionRate = Math.Round(double.Parse(detail.commissionRate) / 100.00, 2);//商品佣金比例(%)
|
||
wph.commission = double.Parse(detail.commission);//商品佣金金额(元,保留两位小数)
|
||
wph.commCode = detail.commCode;//佣金编码:对应商品二级分类
|
||
wph.commName = detail.commName;//佣金方案名称
|
||
wph.orderSource = detail.orderSource;//订单来源
|
||
wph.sizeId = detail.sizeId;//商品尺码:2019.01.01之后可用
|
||
wph.status = detail.status;//商品状态:0-不合格,1-待定,2-已完结
|
||
wph.brandStoreSn = detail.brandStoreSn;//品牌编号
|
||
wph.brandStoreName = detail.brandStoreName;//品牌名称
|
||
wph.spuId = detail.spuId;//商品spuId
|
||
wph.goodsFinalPrice = double.Parse(detail.goodsFinalPrice);//商品成交价(元,保留两位小数,商品成交价上线之后的订单才有该值)
|
||
|
||
#region 售后信息 无售后为空
|
||
if (detail.afterSaleInfo != null && detail.afterSaleInfo.Count != 0)
|
||
{
|
||
var afterSaleChangedCommission = string.IsNullOrWhiteSpace(detail.afterSaleInfo[0].afterSaleChangedCommission) ? 0 : double.Parse(detail.afterSaleInfo[0].afterSaleChangedCommission);
|
||
|
||
if (afterSaleChangedCommission != 0)
|
||
{
|
||
wph.afterSaleChangedCommission = afterSaleChangedCommission;//商品佣金售后变动:仅在订单完结之后发生售后时返回,无售后时为空
|
||
|
||
wph.afterSaleChangedGoodsCount = detail.afterSaleInfo[0].afterSaleChangedGoodsCount;//商品数量售后变动:仅在订单完结之后发生售后时返回,无售后时为空
|
||
wph.afterSaleSn = detail.afterSaleInfo[0].afterSaleSn;//商品售后单号,无售后时为空
|
||
wph.afterSaleStatus = detail.afterSaleInfo[0].afterSaleStatus;//商品售后状态:1-售后中,2-售后完成,3-售后取消,无售后时为空 WeipinhuiAfterSaleStatus
|
||
wph.afterSaleType = detail.afterSaleInfo[0].afterSaleType;//售后类型:1-退货,2-换货,无售后时为空 WeipinhuiSfterSaleType
|
||
wph.afterSaleFinishTime = detail.afterSaleInfo[0].afterSaleFinishTime;//售后完成时间,时间戳,单位:毫秒,无售后时为空
|
||
|
||
if (wph.afterSaleChangedGoodsCount != 0)
|
||
wph.orderSubStatusName = WeipinhuiOrderSubStatusName.维权中;
|
||
else
|
||
{
|
||
var db_order = ApiClient.GetSession().FindSingle<fl_order_weipinhui>("orderSn=@orderSn and goodsId=@goodsId and sizeId = @sizeId", new { orderSn = wph.orderSn, goodsId = wph.goodsId, sizeId = wph.sizeId });
|
||
if (db_order != null && db_order.db_status == SystemOrderStatus.订单结算) //跳过相同状态
|
||
{
|
||
wph.orderSubStatusName = WeipinhuiOrderSubStatusName.维权中;
|
||
}
|
||
else
|
||
{
|
||
wph.orderSubStatusName = WeipinhuiOrderSubStatusName.维权完成;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
//退货 = 1
|
||
//换货 = 2
|
||
if (detail.afterSaleInfo[0].afterSaleType == WeipinhuiSfterSaleType.退货 && detail.afterSaleInfo[0].afterSaleStatus == WeipinhuiAfterSaleStatus.售后完成)
|
||
{
|
||
wph.afterSaleStatus = detail.afterSaleInfo[0].afterSaleStatus;
|
||
wph.orderSubStatusName = WeipinhuiOrderSubStatusName.已失效;
|
||
wph.afterSaleType = detail.afterSaleInfo[0].afterSaleType;
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
wphs.Add(wph);
|
||
}
|
||
|
||
return wphs;
|
||
}
|
||
#endregion
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
EventClient.OnEvent("将订单明细对象转换成数据库唯品会fl_order_weipinhui对象异常:", ex.Message + " - " + ex.StackTrace);
|
||
}
|
||
return null;
|
||
}
|
||
|
||
}
|
||
|
||
#region 返回的数据结构
|
||
#region 转链后返回的数据
|
||
/// <summary>
|
||
/// 链接数据
|
||
/// </summary>
|
||
public class UrlInfoList
|
||
{
|
||
/// <summary>
|
||
/// 链接生成的数据源: 如果根据商品id生成链接,该值商品id, 如果根据链接生成链接,该值为唯品会链接
|
||
/// </summary>
|
||
public string source { get; set; }
|
||
/// <summary>
|
||
/// CPS短链接
|
||
/// </summary>
|
||
public string url { get; set; }
|
||
/// <summary>
|
||
/// CPS长连接
|
||
/// </summary>
|
||
public string longUrl { get; set; }
|
||
/// <summary>
|
||
/// CPS通用连接
|
||
/// </summary>
|
||
public string ulUrl { get; set; }
|
||
/// <summary>
|
||
/// CPS Deeplink链接
|
||
/// </summary>
|
||
public string deeplinkUrl { get; set; }
|
||
/// <summary>
|
||
/// 小程序CPS参数:通用小程序跟单参数
|
||
/// </summary>
|
||
public string traFrom { get; set; }
|
||
/// <summary>
|
||
/// CPS短链接:不唤起快应用
|
||
/// </summary>
|
||
public string noEvokeUrl { get; set; }
|
||
/// <summary>
|
||
/// CPS长链接:不唤起快应用
|
||
/// </summary>
|
||
public string noEvokeLongUrl { get; set; }
|
||
/// <summary>
|
||
/// 唯品会小程序链接:仅在根据商品id获取时返回
|
||
/// </summary>
|
||
public string vipWxUrl { get; set; }
|
||
/// <summary>
|
||
/// 唯品会小程序码:仅在根据商品id获取时返回,需获取小程序码高级权限
|
||
/// </summary>
|
||
public string vipWxCode { get; set; }
|
||
/// <summary>
|
||
/// 唯品会快应用链接
|
||
/// </summary>
|
||
public string vipQuickAppUrl { get; set; }
|
||
}
|
||
|
||
public class Result1
|
||
{
|
||
/// <summary>
|
||
/// 链接数据
|
||
/// </summary>
|
||
public List<UrlInfoList> urlInfoList { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 转链后返回的数据解构
|
||
/// </summary>
|
||
public class WPHCpsUrl
|
||
{
|
||
public string returnCode { get; set; }
|
||
public Result1 result { get; set; }
|
||
}
|
||
#endregion
|
||
|
||
#region 订单下载数据解构
|
||
/// <summary>
|
||
/// 商品明细
|
||
/// </summary>
|
||
public class DetailList
|
||
{
|
||
/// <summary>
|
||
/// 商品id
|
||
/// </summary>
|
||
public string goodsId { get; set; }
|
||
/// <summary>
|
||
/// 商品名称
|
||
/// </summary>
|
||
public string goodsName { get; set; }
|
||
/// <summary>
|
||
/// 商品缩略图
|
||
/// </summary>
|
||
public string goodsThumb { get; set; }
|
||
/// <summary>
|
||
/// 商品数量
|
||
/// </summary>
|
||
public int goodsCount { get; set; }
|
||
/// <summary>
|
||
/// 商品计佣金额(元,保留两位小数)
|
||
/// </summary>
|
||
public string commissionTotalCost { get; set; }
|
||
/// <summary>
|
||
/// 商品佣金比例(%)
|
||
/// </summary>
|
||
public string commissionRate { get; set; }
|
||
/// <summary>
|
||
/// 商品佣金金额(元,保留两位小数)
|
||
/// </summary>
|
||
public string commission { get; set; }
|
||
/// <summary>
|
||
/// 佣金编码:对应商品二级分类
|
||
/// </summary>
|
||
public string commCode { get; set; }
|
||
/// <summary>
|
||
/// 佣金方案名称
|
||
/// </summary>
|
||
public string commName { get; set; }
|
||
/// <summary>
|
||
/// 订单来源
|
||
/// </summary>
|
||
public string orderSource { get; set; }
|
||
/// <summary>
|
||
/// 商品售后信息
|
||
/// </summary>
|
||
public List<AfterSaleInfo> afterSaleInfo { get; set; }
|
||
/// <summary>
|
||
/// 商品尺码:2019.01.01之后可用
|
||
/// </summary>
|
||
public string sizeId { get; set; }
|
||
/// <summary>
|
||
/// 商品状态:0-不合格,1-待定,2-已完结
|
||
/// </summary>
|
||
public WeipinhuiOrderStatus status { get; set; }
|
||
/// <summary>
|
||
/// 品牌编号
|
||
/// </summary>
|
||
public string brandStoreSn { get; set; }
|
||
/// <summary>
|
||
/// 品牌名称
|
||
/// </summary>
|
||
public string brandStoreName { get; set; }
|
||
/// <summary>
|
||
/// 商品spuId
|
||
/// </summary>
|
||
public string spuId { get; set; }
|
||
/// <summary>
|
||
/// 商品成交价(元,保留两位小数,商品成交价上线之后的订单才有该值)
|
||
/// </summary>
|
||
public string goodsFinalPrice { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 商品售后信息
|
||
/// </summary>
|
||
public class AfterSaleInfo
|
||
{
|
||
/// <summary>
|
||
/// 商品佣金售后变动:仅在订单完结之后发生售后时返回,无售后时为空
|
||
/// </summary>
|
||
public string afterSaleChangedCommission { get; set; }
|
||
/// <summary>
|
||
/// 商品数量售后变动:仅在订单完结之后发生售后时返回,无售后时为空
|
||
/// </summary>
|
||
public int afterSaleChangedGoodsCount { get; set; }
|
||
/// <summary>
|
||
/// 商品售后单号,无售后时为空
|
||
/// </summary>
|
||
public string afterSaleSn { get; set; }
|
||
/// <summary>
|
||
/// 商品售后状态:1-售后中,2-售后完成,3-售后取消,无售后时为空
|
||
/// </summary>
|
||
public WeipinhuiAfterSaleStatus afterSaleStatus { get; set; }
|
||
/// <summary>
|
||
/// 售后类型:1-退货,2-换货,无售后时为空
|
||
/// </summary>
|
||
public WeipinhuiSfterSaleType afterSaleType { get; set; }
|
||
/// <summary>
|
||
/// 售后完成时间,时间戳,单位:毫秒,无售后时为空
|
||
/// </summary>
|
||
public long afterSaleFinishTime { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 业绩查询响应结果
|
||
/// </summary>
|
||
public class OrderInfoList
|
||
{
|
||
/// <summary>
|
||
/// 订单号
|
||
/// </summary>
|
||
public string orderSn { get; set; }
|
||
/// <summary>
|
||
/// 订单状态:0-不合格,1-待定,2-已完结
|
||
/// </summary>
|
||
public WeipinhuiOrderStatus status { get; set; }
|
||
/// <summary>
|
||
/// 新老客:0-待定,1-新客,2-老客
|
||
/// </summary>
|
||
public WeipinhuiNewCustomer newCustomer { get; set; }
|
||
/// <summary>
|
||
/// 渠道商模式下表示自定义渠道标识;工具商模式下表示pid
|
||
/// </summary>
|
||
public string channelTag { get; set; }
|
||
/// <summary>
|
||
/// 下单时间 时间戳 单位毫秒
|
||
/// </summary>
|
||
public long orderTime { get; set; }
|
||
/// <summary>
|
||
/// 签收时间 时间戳 单位毫秒
|
||
/// </summary>
|
||
public long signTime { get; set; }
|
||
/// <summary>
|
||
/// 结算时间 时间戳 单位毫秒
|
||
/// </summary>
|
||
public long settledTime { get; set; }
|
||
/// <summary>
|
||
/// 商品明细
|
||
/// </summary>
|
||
public List<DetailList> detailList { get; set; }
|
||
/// <summary>
|
||
/// 订单上次更新时间 时间戳 单位毫秒
|
||
/// </summary>
|
||
public long lastUpdateTime { get; set; }
|
||
/// <summary>
|
||
/// 订单结算状态 0-未结算,1-已结算
|
||
/// </summary>
|
||
public WeipinhuiOrderSettled settled { get; set; }
|
||
/// <summary>
|
||
/// 是否自推自买 0-否,1-是
|
||
/// </summary>
|
||
public WeipinhuiShiFou selfBuy { get; set; }
|
||
/// <summary>
|
||
/// 订单子状态:流转状态-支持状态:(已下单、已付款、已签收、待结算、已结算、已失效)
|
||
/// </summary>
|
||
public string orderSubStatusName { get; set; }
|
||
/// <summary>
|
||
/// 商品总佣金:单位元
|
||
/// </summary>
|
||
public string commission { get; set; }
|
||
/// <summary>
|
||
/// 售后订单佣金变动:仅在订单完结之后发生售后行为时返回
|
||
/// </summary>
|
||
public string afterSaleChangeCommission { get; set; }
|
||
/// <summary>
|
||
/// 售后订单总商品数量变动:仅在订单完结之后发生售后行为时返回
|
||
/// </summary>
|
||
public string afterSaleChangeGoodsCount { get; set; }
|
||
/// <summary>
|
||
/// 入账时间,时间戳,单位毫秒
|
||
/// </summary>
|
||
public long commissionEnterTime { get; set; }
|
||
/// <summary>
|
||
/// 订单来源
|
||
/// </summary>
|
||
public string orderSource { get; set; }
|
||
/// <summary>
|
||
/// 推广PID:目前等同于channelTag
|
||
/// </summary>
|
||
public string pid { get; set; }
|
||
/// <summary>
|
||
/// 是否预付订单:0-否,1-是
|
||
/// </summary>
|
||
public WeipinhuiShiFou isPrepay { get; set; }
|
||
/// <summary>
|
||
/// 自定义统计参数
|
||
/// </summary>
|
||
public string statParam { get; set; }
|
||
/// <summary>
|
||
/// 订单拆单标识: 0-否,1-是
|
||
/// </summary>
|
||
public WeipinhuiShiFou isSplit { get; set; }
|
||
/// <summary>
|
||
/// 订单母单号:订单为拆单子单时返回
|
||
/// </summary>
|
||
public string parentSn { get; set; }
|
||
/// <summary>
|
||
/// 订单归因方式:0-常规推广,1-惊喜红包,2-锁粉,3-超级红包
|
||
/// </summary>
|
||
public WeipinhuiGuiYin orderTrackReason { get; set; }
|
||
/// <summary>
|
||
/// 开发者调用的appKey:当订单是通过开发者API推广成单时返回,其余时候返回为空
|
||
/// </summary>
|
||
public string appKey { get; set; }
|
||
/// <summary>
|
||
/// 订单支付金额:单位元
|
||
/// </summary>
|
||
public string totalCost { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 订单数据
|
||
/// </summary>
|
||
public class OrderResult
|
||
{
|
||
/// <summary>
|
||
/// 业绩总条数
|
||
/// </summary>
|
||
public int total { get; set; }
|
||
/// <summary>
|
||
/// 当前页码
|
||
/// </summary>
|
||
public int pageSize { get; set; }
|
||
/// <summary>
|
||
/// 页面大小
|
||
/// </summary>
|
||
public int page { get; set; }
|
||
/// <summary>
|
||
/// 业绩查询响应结果
|
||
/// </summary>
|
||
public List<OrderInfoList> orderInfoList { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 订单响应结果
|
||
/// </summary>
|
||
public class OrderResponseResult
|
||
{
|
||
/// <summary>
|
||
/// 返回代码
|
||
/// </summary>
|
||
public string returnCode { get; set; }
|
||
/// <summary>
|
||
/// 返回数据
|
||
/// </summary>
|
||
public OrderResult result { get; set; }
|
||
}
|
||
#endregion
|
||
|
||
#region 唯品会在推商品数据结构
|
||
///// <summary>
|
||
///// 店铺信息
|
||
///// </summary>
|
||
//public class StoreInfo
|
||
//{
|
||
// /// <summary>
|
||
// /// 店铺名字
|
||
// /// </summary>
|
||
// public string storeName { get; set; }
|
||
// /// <summary>
|
||
// /// 店铺Id
|
||
// /// </summary>
|
||
// public string storeId { get; set; }
|
||
//}
|
||
|
||
/// <summary>
|
||
/// 红包信息
|
||
/// </summary>
|
||
public class CouponInfo
|
||
{
|
||
/// <summary>
|
||
/// 优惠券批次号
|
||
/// </summary>
|
||
public string couponNo { get; set; }
|
||
/// <summary>
|
||
/// 优惠劵名称
|
||
/// </summary>
|
||
public string couponName { get; set; }
|
||
/// <summary>
|
||
/// 使用门槛
|
||
/// </summary>
|
||
public string buy { get; set; }
|
||
/// <summary>
|
||
/// 优惠金额
|
||
/// </summary>
|
||
public string fav { get; set; }
|
||
/// <summary>
|
||
/// 券激活开始时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long activateBeginTime { get; set; }
|
||
/// <summary>
|
||
/// 券激活结束时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long activateEndTime { get; set; }
|
||
/// <summary>
|
||
/// 使用开始时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long useBeginTime { get; set; }
|
||
/// <summary>
|
||
/// 使用结束时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long useEndTime { get; set; }
|
||
/// <summary>
|
||
/// 生成劵的总量
|
||
/// </summary>
|
||
public long totalAmount { get; set; }
|
||
/// <summary>
|
||
/// 劵已激活的数量
|
||
/// </summary>
|
||
public int activedAmount { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 精选商品列表
|
||
/// </summary>
|
||
public class GoodsInfoList
|
||
{
|
||
/// <summary>
|
||
/// 商品id
|
||
/// </summary>
|
||
public string goodsId { get; set; }
|
||
/// <summary>
|
||
/// 商品名称
|
||
/// </summary>
|
||
public string goodsName { get; set; }
|
||
/// <summary>
|
||
/// 商品描述,字段暂不输出
|
||
/// </summary>
|
||
public string goodsDesc { get; set; }
|
||
/// <summary>
|
||
/// 商品落地页
|
||
/// </summary>
|
||
public string destUrl { get; set; }
|
||
/// <summary>
|
||
/// 商品缩略图
|
||
/// </summary>
|
||
public string goodsThumbUrl { get; set; }
|
||
/// <summary>
|
||
/// 商品轮播图:根据商品id查询时返回,商品列表不返回
|
||
/// </summary>
|
||
public List<string> goodsCarouselPictures { get; set; }
|
||
/// <summary>
|
||
/// 商品主图
|
||
/// </summary>
|
||
public string goodsMainPicture { get; set; }
|
||
/// <summary>
|
||
/// 商品三级分类id
|
||
/// </summary>
|
||
public int categoryId { get; set; }
|
||
/// <summary>
|
||
/// 商品三级分类
|
||
/// </summary>
|
||
public string categoryName { get; set; }
|
||
/// <summary>
|
||
/// 商品类型:0-自营,1-MP
|
||
/// </summary>
|
||
public int sourceType { get; set; }
|
||
/// <summary>
|
||
/// 市场价(元)
|
||
/// </summary>
|
||
public string marketPrice { get; set; }
|
||
/// <summary>
|
||
/// 唯品价(元)
|
||
/// </summary>
|
||
public string vipPrice { get; set; }
|
||
/// <summary>
|
||
/// 佣金比例(%)
|
||
/// </summary>
|
||
public string commissionRate { get; set; }
|
||
/// <summary>
|
||
/// 佣金金额(元)
|
||
/// </summary>
|
||
public string commission { get; set; }
|
||
/// <summary>
|
||
/// 折扣:唯品价/市场价 保留两位小数字符串
|
||
/// </summary>
|
||
public string discount { get; set; }
|
||
/// <summary>
|
||
/// 商品详情图片:根据商品id查询商品信息时返回,商品列表不返回
|
||
/// </summary>
|
||
public List<string> goodsDetailPictures { get; set; }
|
||
/// <summary>
|
||
/// 商品一级分类id
|
||
/// </summary>
|
||
public int cat1stId { get; set; }
|
||
/// <summary>
|
||
/// 商品一级分类名称
|
||
/// </summary>
|
||
public string cat1stName { get; set; }
|
||
/// <summary>
|
||
/// 商品二级分类id
|
||
/// </summary>
|
||
public int cat2ndId { get; set; }
|
||
/// <summary>
|
||
/// 商品二级分类名称
|
||
/// </summary>
|
||
public string cat2ndName { get; set; }
|
||
/// <summary>
|
||
/// 商品品牌sn
|
||
/// </summary>
|
||
public string brandStoreSn { get; set; }
|
||
/// <summary>
|
||
/// 商品品牌名称
|
||
/// </summary>
|
||
public string brandName { get; set; }
|
||
/// <summary>
|
||
/// 商品品牌logo全路径地址
|
||
/// </summary>
|
||
public string brandLogoFull { get; set; }
|
||
/// <summary>
|
||
/// 商品推广计划有效期预估截止时间:仅为预估时间,仅做参考;时间戳,单位:毫秒
|
||
/// </summary>
|
||
public long schemeEndTime { get; set; }
|
||
/// <summary>
|
||
/// 商品售卖开始时间,时间戳,单位毫秒
|
||
/// </summary>
|
||
public long sellTimeFrom { get; set; }
|
||
/// <summary>
|
||
/// 商品售卖结束时间,时间戳, 单位毫秒
|
||
/// </summary>
|
||
public long sellTimeTo { get; set; }
|
||
/// <summary>
|
||
/// 推广权重,用于确定推广该商品的优先级,权重值越大,优先级越高
|
||
/// </summary>
|
||
public long weight { get; set; }
|
||
/// <summary>
|
||
/// 店铺信息
|
||
/// </summary>
|
||
public StoreInfo storeInfo { get; set; }
|
||
/// <summary>
|
||
/// 商品所属档期(专场)id
|
||
/// </summary>
|
||
public int brandId { get; set; }
|
||
/// <summary>
|
||
/// 商品所属推广方案开始时间:时间戳,单位:毫秒
|
||
/// </summary>
|
||
public long schemeStartTime { get; set; }
|
||
/// <summary>
|
||
/// 商品状态:0-下架,1-上架
|
||
/// </summary>
|
||
public int status { get; set; }
|
||
/// <summary>
|
||
/// 红包信息
|
||
/// </summary>
|
||
public CouponInfo couponInfo { get; set; }
|
||
/// <summary>
|
||
/// 是否海淘商品标识:1是 0不是
|
||
/// </summary>
|
||
public int haiTao { get; set; }
|
||
/// <summary>
|
||
/// 商品spuId
|
||
/// </summary>
|
||
public string spuId { get; set; }
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 精选商品列表
|
||
/// </summary>
|
||
public class GoodsInfoResult
|
||
{
|
||
/// <summary>
|
||
/// 总数
|
||
/// </summary>
|
||
public int total { get; set; }
|
||
/// <summary>
|
||
/// 精选商品列表
|
||
/// </summary>
|
||
public List<GoodsInfoList> goodsInfoList { get; set; }
|
||
/// <summary>
|
||
/// 分页大小
|
||
/// </summary>
|
||
public int pageSize { get; set; }
|
||
/// <summary>
|
||
/// 支持的排序字段,为空时仅支持默认排序
|
||
/// </summary>
|
||
public List<object> sortFields { get; set; }
|
||
/// <summary>
|
||
/// 当前页码
|
||
/// </summary>
|
||
public int page { get; set; }
|
||
}
|
||
|
||
public class GoodsInfoResponseResult
|
||
{
|
||
public string returnCode { get; set; }
|
||
public GoodsInfoResult result { get; set; }
|
||
}
|
||
#endregion
|
||
|
||
#region 唯品会
|
||
/// <summary>
|
||
/// 商品预付信息
|
||
/// </summary>
|
||
public class PrepayInfo
|
||
{
|
||
/// <summary>
|
||
/// 是否预付商品:0-否,1-是
|
||
/// </summary>
|
||
public int isPrepay { get; set; }
|
||
/// <summary>
|
||
/// 预付到手价:元
|
||
/// </summary>
|
||
public string prepayPrice { get; set; }
|
||
/// <summary>
|
||
/// 预付首款金额:元
|
||
/// </summary>
|
||
public string firstAmount { get; set; }
|
||
/// <summary>
|
||
/// 预付尾款金额:元
|
||
/// </summary>
|
||
public string lastAmount { get; set; }
|
||
/// <summary>
|
||
/// 预付优惠金额: 元
|
||
/// </summary>
|
||
public string prepayFavAmount { get; set; }
|
||
/// <summary>
|
||
/// 抵扣价格(首款+优惠金额):元
|
||
/// </summary>
|
||
public string deductionPrice { get; set; }
|
||
/// <summary>
|
||
/// 预付折扣:(唯品价-优惠金额)/唯品价 保留两位小数的数字字符串
|
||
/// </summary>
|
||
public string prepayDiscount { get; set; }
|
||
/// <summary>
|
||
/// 首款支付开始时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long prepayFirstStartTime { get; set; }
|
||
/// <summary>
|
||
/// 首款支付结束时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long prepayFirstEndTime { get; set; }
|
||
/// <summary>
|
||
/// 尾款支付开始时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long prepayLastStartTime { get; set; }
|
||
/// <summary>
|
||
/// 尾款支付结束时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long prepayLastEndTime { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 商品所属店铺服务能力评价
|
||
/// </summary>
|
||
public class StoreServiceCapability
|
||
{
|
||
/// <summary>
|
||
/// 店铺评分:保留两位小数
|
||
/// </summary>
|
||
public string storeScore { get; set; }
|
||
/// <summary>
|
||
/// 店铺同品类排名比例:例如10表示前10%
|
||
/// </summary>
|
||
public string storeRankRate { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 商品评价信息
|
||
/// </summary>
|
||
public class CommentsInfo
|
||
{
|
||
/// <summary>
|
||
/// 商品评论数
|
||
/// </summary>
|
||
public int comments { get; set; }
|
||
/// <summary>
|
||
/// 商品好评率:百分比,不带百分号
|
||
/// </summary>
|
||
public string goodCommentsShare { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 店铺信息
|
||
/// </summary>
|
||
public class StoreInfo
|
||
{
|
||
/// <summary>
|
||
/// 店铺名称
|
||
/// </summary>
|
||
public string storeName { get; set; }
|
||
/// <summary>
|
||
/// 店铺id
|
||
/// </summary>
|
||
public string storeId { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 商品参与活动信息:未参与活动集合为空
|
||
/// </summary>
|
||
public class JoinedActivities
|
||
{
|
||
/// <summary>
|
||
/// 活动类型:18-唯品快抢
|
||
/// </summary>
|
||
public int actType { get; set; }
|
||
/// <summary>
|
||
/// 活动名称
|
||
/// </summary>
|
||
public string actName { get; set; }
|
||
/// <summary>
|
||
/// 开始时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long beginTime { get; set; }
|
||
/// <summary>
|
||
/// 结束时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long endTime { get; set; }
|
||
/// <summary>
|
||
/// 预热开始时间:时间戳,单位毫秒
|
||
/// </summary>
|
||
public long foreShowBeginTime { get; set; }
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 红包信息
|
||
/// </summary>
|
||
public class CouponInfo1
|
||
{
|
||
/// <summary>
|
||
/// 优惠券批次号
|
||
/// </summary>
|
||
public string couponNo { get; set; }
|
||
/// <summary>
|
||
/// 优惠券名称
|
||
/// </summary>
|
||
public string couponName { get; set; }
|
||
/// <summary>
|
||
/// 使用门槛
|
||
/// </summary>
|
||
public string buy { get; set; }
|
||
/// <summary>
|
||
/// 优惠券金额
|
||
/// </summary>
|
||
public string fav { get; set; }
|
||
/// <summary>
|
||
/// 券激活开始时间, 毫秒级时间戳
|
||
/// </summary>
|
||
public long activateBeginTime { get; set; }
|
||
/// <summary>
|
||
/// 券激活结束时间, 毫秒级时间戳
|
||
/// </summary>
|
||
public long activateEndTime { get; set; }
|
||
//使用开始时间,毫秒级时间戳
|
||
public long useBeginTime { get; set; }
|
||
/// <summary>
|
||
/// 使用结束时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long useEndTime { get; set; }
|
||
/// <summary>
|
||
/// 生成劵的总量
|
||
/// </summary>
|
||
public long totalAmount { get; set; }
|
||
/// <summary>
|
||
/// 劵已激活的数量
|
||
/// </summary>
|
||
public long activedAmount { get; set; }
|
||
}
|
||
|
||
/// <summary>
|
||
/// 对应sku信息
|
||
/// </summary>
|
||
public class SkuInfos
|
||
{
|
||
/// <summary>
|
||
/// 商品尺码id(唯品会体系下和skuId等同)
|
||
/// </summary>
|
||
public string sizeId { get; set; }
|
||
/// <summary>
|
||
/// 售卖属性信息(134 - 颜色,453 - 尺码)
|
||
/// </summary>
|
||
public Dictionary<int, string> saleProps { get; set; }
|
||
/// <summary>
|
||
/// 剩余库存:查询库存时返回
|
||
/// </summary>
|
||
public int leavingStock { get; set; }
|
||
/// <summary>
|
||
/// 商品库存状态:1-已抢光,2-有库存,3-有机会
|
||
/// </summary>
|
||
public int saleStockStatus { get; set; }
|
||
/// <summary>
|
||
/// 唯品价:单位元
|
||
/// </summary>
|
||
public string vipPrice { get; set; }
|
||
/// <summary>
|
||
/// 市场价:单位元
|
||
/// </summary>
|
||
public string marketPrice { get; set; }
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 渠道专属红包:目前仅开放单品券,没有则返回空
|
||
/// </summary>
|
||
public class ExclusiveCoupon
|
||
{
|
||
/// <summary>
|
||
/// 优惠券批次号
|
||
/// </summary>
|
||
public string couponNo { get; set; }
|
||
|
||
/// <summary>
|
||
/// 优惠劵名称
|
||
/// </summary>
|
||
public string couponName { get; set; }
|
||
|
||
/// <summary>
|
||
/// 优惠金额:单位-元,查询详情时返回
|
||
/// </summary>
|
||
public string fav { get; set; }
|
||
|
||
/// <summary>
|
||
/// 使用门槛:单位-元,查询详情时返回
|
||
/// </summary>
|
||
public string buy { get; set; }
|
||
|
||
/// <summary>
|
||
/// 券激活开始时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long activateBeginTime { get; set; }
|
||
|
||
/// <summary>
|
||
/// 券激活结束时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long activateEndTime { get; set; }
|
||
|
||
/// <summary>
|
||
/// 使用开始时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long useBeginTime { get; set; }
|
||
|
||
/// <summary>
|
||
/// 使用结束时间,毫秒级时间戳
|
||
/// </summary>
|
||
public long useEndTime { get; set; }
|
||
|
||
/// <summary>
|
||
/// 生成劵的总量:查询详情时返回
|
||
/// </summary>
|
||
public long totalAmount { get; set; }
|
||
|
||
/// <summary>
|
||
/// 劵已激活的数量:查询详情时返回
|
||
/// </summary>
|
||
public long activedAmount { get; set; }
|
||
|
||
/// <summary>
|
||
/// 专属领券页地址
|
||
/// </summary>
|
||
public string receiveUrl { get; set; }
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 唯品会商品查询详情结果
|
||
/// </summary>
|
||
public class WphGoodsInfoResult
|
||
{
|
||
/// <summary>
|
||
/// 商品id
|
||
/// </summary>
|
||
public string goodsId { get; set; }
|
||
/// <summary>
|
||
/// 商品名称
|
||
/// </summary>
|
||
public string goodsName { get; set; }
|
||
/// <summary>
|
||
/// 商品描述,字段暂不输出
|
||
/// </summary>
|
||
public string goodsDesc { get; set; }
|
||
/// <summary>
|
||
/// 商品落地页
|
||
/// </summary>
|
||
public string destUrl { get; set; }
|
||
/// <summary>
|
||
/// 商品缩略图
|
||
/// </summary>
|
||
public string goodsThumbUrl { get; set; }
|
||
/// <summary>
|
||
/// 商品轮播图:根据商品id查询时返回,商品列表不返回
|
||
/// </summary>
|
||
public List<string> goodsCarouselPictures { get; set; }
|
||
/// <summary>
|
||
/// 商品主图
|
||
/// </summary>
|
||
public string goodsMainPicture { get; set; }
|
||
/// <summary>
|
||
/// 商品三级分类id
|
||
/// </summary>
|
||
public long categoryId { get; set; }
|
||
/// <summary>
|
||
/// 商品三级分类
|
||
/// </summary>
|
||
public string categoryName { get; set; }
|
||
/// <summary>
|
||
/// 商品类型:0-自营,1-MP
|
||
/// </summary>
|
||
public int sourceType { get; set; }
|
||
/// <summary>
|
||
/// 市场价(元)
|
||
/// </summary>
|
||
public string marketPrice { get; set; }
|
||
/// <summary>
|
||
/// 唯品价(元)
|
||
/// </summary>
|
||
public string vipPrice { get; set; }
|
||
/// <summary>
|
||
/// 佣金比例(%)
|
||
/// </summary>
|
||
public string commissionRate { get; set; }
|
||
/// <summary>
|
||
/// 佣金金额(元)
|
||
/// </summary>
|
||
public string commission { get; set; }
|
||
/// <summary>
|
||
/// 折扣:唯品价/市场价 保留两位小数字符串
|
||
/// </summary>
|
||
public string discount { get; set; }
|
||
/// <summary>
|
||
/// 商品详情图片:根据商品id查询商品信息时返回,商品列表不返回
|
||
/// </summary>categoryName
|
||
public List<string> goodsDetailPictures { get; set; }
|
||
/// <summary>
|
||
/// 商品一级分类id
|
||
/// </summary>
|
||
public long cat1stId { get; set; }
|
||
/// <summary>
|
||
/// 商品一级分类名称
|
||
/// </summary>
|
||
public string cat1stName { get; set; }
|
||
/// <summary>
|
||
/// 商品二级分类id
|
||
/// </summary>
|
||
public long cat2ndId { get; set; }
|
||
/// <summary>
|
||
/// 商品二级分类名称
|
||
/// </summary>
|
||
public string cat2ndName { get; set; }
|
||
/// <summary>
|
||
/// 商品品牌sn
|
||
/// </summary>
|
||
public string brandStoreSn { get; set; }
|
||
/// <summary>
|
||
/// 商品品牌名称
|
||
/// </summary>
|
||
public string brandName { get; set; }
|
||
/// <summary>
|
||
/// 商品品牌logo全路径地址
|
||
/// </summary>
|
||
public string brandLogoFull { get; set; }
|
||
/// <summary>
|
||
/// 商品推广计划有效期预估截止时间:仅为预估时间,仅做参考;时间戳,单位:毫秒
|
||
/// </summary>
|
||
public long schemeEndTime { get; set; }
|
||
/// <summary>
|
||
/// 商品售卖开始时间,时间戳,单位毫秒
|
||
/// </summary>
|
||
public long sellTimeFrom { get; set; }
|
||
/// <summary>
|
||
/// 商品售卖结束时间,时间戳, 单位毫秒
|
||
/// </summary>
|
||
public long sellTimeTo { get; set; }
|
||
/// <summary>
|
||
/// 推广权重,用于确定推广该商品的优先级,权重值越大,优先级越高
|
||
/// </summary>
|
||
public int weight { get; set; }
|
||
/// <summary>
|
||
/// 店铺信息
|
||
/// </summary>
|
||
public StoreInfo storeInfo { get; set; }
|
||
/// <summary>
|
||
/// 商品评价信息
|
||
/// </summary>
|
||
public CommentsInfo commentsInfo { get; set; }
|
||
/// <summary>
|
||
/// 商品所属店铺服务能力评价
|
||
/// </summary>
|
||
public StoreServiceCapability storeServiceCapability { get; set; }
|
||
/// <summary>
|
||
/// 商品所属档期(专场)id
|
||
/// </summary>
|
||
public long brandId { get; set; }
|
||
/// <summary>
|
||
/// 商品所属推广方案开始时间:时间戳,单位:毫秒
|
||
/// </summary>
|
||
public long schemeStartTime { get; set; }
|
||
/// <summary>
|
||
/// 商品库存状态:1-已抢光,2-有库存,3-有机会,当列表查询库存或者查询商品详情时返回
|
||
/// </summary>
|
||
public int saleStockStatus { get; set; }
|
||
/// <summary>
|
||
/// 商品状态:0-下架,1-上架
|
||
/// </summary>
|
||
public int status { get; set; }
|
||
/// <summary>
|
||
/// 商品预付信息
|
||
/// </summary>
|
||
public PrepayInfo prepayInfo { get; set; }
|
||
/// <summary>
|
||
/// 商品参与活动信息:未参与活动集合为空
|
||
/// </summary>
|
||
public List<JoinedActivities> joinedActivities { get; set; }
|
||
/// <summary>
|
||
/// 红包信息
|
||
/// </summary>
|
||
public CouponInfo1 couponInfo { get; set; }
|
||
/// <summary>
|
||
/// 是否海淘商品标识:1是 0不是
|
||
/// </summary>
|
||
public int haiTao { get; set; }
|
||
/// <summary>
|
||
/// 商品spuId
|
||
/// </summary>
|
||
public string spuId { get; set; }
|
||
/// <summary>
|
||
/// 同spuId扩展商品id: 新版详情接口返回,其余接口不返回该字段
|
||
/// </summary>
|
||
public List<string> goodsIdsWithSameSpu { get; set; }
|
||
/// <summary>
|
||
/// 对应sku信息
|
||
/// </summary>
|
||
public SkuInfos skuInfos { get; set; }
|
||
|
||
/// <summary>
|
||
/// 渠道专属红包:目前仅开放单品券,没有则返回空
|
||
/// </summary>
|
||
public ExclusiveCoupon exclusiveCoupon { get; set; }
|
||
|
||
/// <summary>
|
||
/// cps推广信息:目前只返回小程序链接和通用追踪参数,其他链接请移步转链接口,1-通用推广参数(tra_from),2-唯品会微信小程序链接
|
||
/// </summary>
|
||
public Dictionary<int, string> cpsInfo { get; set; }
|
||
|
||
}
|
||
|
||
public class WphGoodsInfo
|
||
{
|
||
public string returnCode { get; set; }
|
||
public List<WphGoodsInfoResult> result { get; set; }
|
||
}
|
||
#endregion
|
||
|
||
#endregion
|
||
|
||
}
|