核心代码:
#region 打包下载
/// <summary>
/// 淘宝数据包下载,生成csv格式。可直接通过淘宝助理上传到淘宝店铺
/// </summary>
/// <param name="ids">传入的参数产品ID格式:1-2-3-4</param>
/// <returns></returns>
[HttpGet]
public ActionResult GetZip_Products(string ids)
{
//string host = Request.UrlReferrer.Authority;
if (String.IsNullOrEmpty(ids)) return null;
List<int> idList = ids.Split('-').Select(s => int.Parse(s)).ToList();
OperationResult result = ProductService.GetZip_Products(idList);
var list = result.AppendData as List<ProductInfo>;
string ProName = "";
#region 拼接淘宝属性
//根据自己需要创建列头
DataTable dt = new DataTable();
dt.Columns.Add("title");//宝贝名称
dt.Columns.Add("cid");//宝贝类目
dt.Columns.Add("num");//宝贝数量
dt.Columns.Add("cateProps");//宝贝属性
dt.Columns.Add("skuProps");//销售属性组合
dt.Columns.Add("price");//价格
dt.Columns.Add("description");//描述
dt.Columns.Add("picture");//图片
foreach (var info in list)
{
ProName = info.txtTitle;
//获取单条产品信息
OperationResult proResult = ProductService.Pro_GetInfo(info.ID);
ProductInfo pInfo = proResult.AppendData as ProductInfo;
DataRow dr = dt.NewRow();
dr["title"] = info.txtTitle;
#region 宝贝数量
int temp_num = 0;
foreach (var item in pInfo.hidStockPropertyList)
{
temp_num += (item.num ?? 0);
}
dr["num"] = temp_num;
#endregion
#region 宝贝类目
dr["cid"] = ProductService.GetCid_Info((pInfo.hidAttrStencilID ?? 0));
#endregion
#region 宝贝属性
string temp = string.Empty;
List<TreeGrid> tg = pInfo.hidAttrStencilTable;
foreach (var item in tg)
{
if (item.inputtype.Equals(2))
{
string Vid = ProductService.GetVid_Info(item.value, item.id);
if (!string.IsNullOrEmpty(Vid))
{
temp += item.pid + ":" + Vid + ";";
}
}
}
if (!string.IsNullOrEmpty(temp))
{
dr["cateProps"] = temp.Substring(0, temp.Length - 1);
}
else
{
dr["cateProps"] = "";