using CommonUtil.Top;
using DkSdkCore;
using DkSdkCore.Request;
using DkSdkCore.Response;
using Microsoft.AspNetCore.Mvc;
using Microsoft.OpenApi.Writers;
using Operater.DTO.Tk;
using System.Collections.Generic;
namespace Api.Operater.Controllers
{
///
/// 淘宝商品
///
[Route(TopConstants.API_ROUTE)]
public class TkProductController : BaseController
{
///
/// 获取分类
///
///
[HttpPost]
public IActionResult GetSuperCategory()
{
DtkApp app = new DtkApp();
List getTkCategories = new List();
TKGetSuperCategoryRequest tKGetSuperCategoryRequest = new TKGetSuperCategoryRequest();
TKGetSuperCategoryResponse tKGetSuperCategoryResponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(tKGetSuperCategoryRequest));
if (tKGetSuperCategoryResponse == null && tKGetSuperCategoryResponse.data.Count == 0)
{
return Error("没有数据啦!");
}
else
{
foreach (var item in tKGetSuperCategoryResponse.data)
{
GetTkCategoryReponse tbProductListReponse = new GetTkCategoryReponse
{
cid = item.cid,
cname = item.cname,
cpic = item.cpic,
};
List subcategoriesdatas = new List();
foreach (var s in item.subcategories)
{
Subcategoriesdata gEt = new Subcategoriesdata
{
subcid = s.subcid,
scname = s.subcname,
scpic = s.scpic
};
subcategoriesdatas.Add(gEt);
}
tbProductListReponse.subcategories = subcategoriesdatas;
getTkCategories.Add(tbProductListReponse);
}
return Success(getTkCategories);
}
}
///
/// 商品列表(通过商品类目获取)
///
///
///
[HttpPost]
public IActionResult GetCategoryProductList([FromBody] GetTkCategoryProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetGoodsListRequest goodsListRequest = new TkGetGoodsListRequest();
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
goodsListRequest.cids = request.cid;
goodsListRequest.sort = request.sort;
TkGetGoodsListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.GoodsId,
dtitle = item.Dtitle,
shopType = item.ShopType,
actualPrice = item.ActualPrice.ToString(),
couponPrice = item.CouponPrice.ToString(),
monthsale = item.MonthSales,
mainPic=item.MainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 推荐好货
///
///
///
[HttpPost]
public IActionResult GetRecommendGoodsList([FromBody] GetTkProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetGoodsListRequest goodsListRequest = new TkGetGoodsListRequest();
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetGoodsListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.GoodsId,
dtitle = item.Dtitle,
shopType = item.ShopType,
actualPrice = item.ActualPrice.ToString(),
couponPrice = item.CouponPrice.ToString(),
monthsale = item.MonthSales,
mainPic = item.MainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 热销榜
///
///
///
[HttpPost]
public IActionResult GetRankingGoodsList([FromBody] GetTkProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetGoodRankingListRequest goodsListRequest = new TkGetGoodRankingListRequest();
goodsListRequest.rankType = "1";
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetGoodRankingListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.goodsId,
dtitle = item.dtitle,
shopType = item.shopType,
actualPrice = item.actualPrice.ToString(),
couponPrice = item.couponPrice.ToString(),
monthsale = item.monthSales,
mainPic = item.mainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 主播力荐
///
///
///
[HttpPost]
public IActionResult GetLiveGoodsList([FromBody] GetTkProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetLiveGoodListRequest goodsListRequest = new TkGetLiveGoodListRequest();
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetLiveGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.GoodsId,
dtitle = item.Dtitle,
shopType = item.ShopType,
actualPrice = item.ActualPrice.ToString(),
couponPrice = item.CouponPrice.ToString(),
monthsale = item.MonthSales,
mainPic = item.MainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 捡漏爆款
///
///
///
[HttpPost]
public IActionResult GetHeightCommissionGoodList([FromBody] GetTkProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetHeightCommissionGoodListRequest goodsListRequest = new TkGetHeightCommissionGoodListRequest();
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
goodsListRequest.sort = "3";
TkGetLiveGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.GoodsId,
dtitle = item.Dtitle,
shopType = item.ShopType,
actualPrice = item.ActualPrice.ToString(),
couponPrice = item.CouponPrice.ToString(),
monthsale = item.MonthSales,
mainPic = item.MainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 历史最低
///
///
///
[HttpPost]
public IActionResult GetHistoryLowGoodList([FromBody] GetTkProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetHistoryLowPriceGoodListRequest goodsListRequest = new TkGetHistoryLowPriceGoodListRequest();
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
goodsListRequest.sort = "3";
TkGetLiveGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.GoodsId,
dtitle = item.Dtitle,
shopType = item.ShopType,
actualPrice = item.ActualPrice.ToString(),
couponPrice = item.CouponPrice.ToString(),
monthsale = item.MonthSales,
mainPic = item.MainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 商品搜索
///
///
///
[HttpPost]
public IActionResult GetSearchGoodsList([FromBody] GetTkSearchProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetSuperGoodListRequest goodsListRequest = new TkGetSuperGoodListRequest();
goodsListRequest.sort = request.sort == null ? "0" : request.sort;
goodsListRequest.type = request.type==null?"0" : request.type;
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
goodsListRequest.keyWords = request.keyWords ;
goodsListRequest.hasCoupon = request.hasCoupon == null ? "1" : request.hasCoupon;
goodsListRequest.tmall = request.tmall;
TkGetSuperGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkSearchProductListReponse tbProductListReponse = new GetTkSearchProductListReponse
{
imgs = item.smallImages,
originalPrice = item.originalPrice.ToString(),
shopType = item.shopType,
dtitle = item.dtitle,
monthSales = item.monthSales,
couponPrice = item.couponPrice.ToString(),
couponEndTime = item.couponEndTime,
couponStartTime = item.couponStartTime,
desc = item.desc,
goodsId = item.goodsId,
actualPrice = item.actualPrice.ToString(),
monthsale = item.monthSales,
mainPic = item.mainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 搜索联想词
///
///
///
[HttpPost]
public IActionResult GetSearchSuggestion([FromBody] GetTkSearchSuggestionRequest request)
{
DtkApp app = new DtkApp();
TkGetSearchSuggestionRequest goodsListRequest = new TkGetSearchSuggestionRequest();
goodsListRequest.keyWords = request.keyWords;
goodsListRequest.type = "3";
TkGetSearchSuggestionResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
if(dtkresponse.data!=null|| dtkresponse.msg == "成功")
{
return Success(dtkresponse);
}
else
{
return Success("");
}
}
///
/// 热搜词Top100
///
///
[HttpPost]
public IActionResult GetHotTop100()
{
DtkApp app = new DtkApp();
TkGetHotTop100Request goodsListRequest = new TkGetHotTop100Request();
goodsListRequest.type = "1";
TkGetHotTop100Response dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
if (dtkresponse.data != null || dtkresponse.msg == "成功")
{
return Success(dtkresponse.data);
}
else
{
return Success("");
}
}
///
/// 每日爆款
///
///
///
[HttpPost]
public IActionResult GetExplosiveGoodsList([FromBody] GetTkProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetExplosiveGoodsListRequest goodsListRequest = new TkGetExplosiveGoodsListRequest();
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetExplosiveGoodsListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.goodsId,
dtitle = item.dtitle,
shopType = item.shopType,
actualPrice = item.actualPrice.ToString(),
couponPrice = item.couponPrice.ToString(),
monthsale = item.monthSales,
mainPic = item.mainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 9.9包邮精选
///
///
///
[HttpPost]
public IActionResult GetOpGoodsList([FromBody] GetTkOpProductListRequest request)
{
DtkApp app = new DtkApp();
TkGetOpGoodListRequest goodsListRequest = new TkGetOpGoodListRequest();
goodsListRequest.nineCid = request.nineCid;
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetSuperGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.goodsId,
dtitle = item.dtitle,
shopType = item.shopType,
actualPrice = item.actualPrice.ToString(),
couponPrice = item.couponPrice.ToString(),
monthsale = item.monthSales,
mainPic = item.mainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 折上折
///
///
///
[HttpPost]
public IActionResult GetSupperDiscountGoodsList([FromBody] GetTkSupperDiscountGoodsListRequest request)
{
DtkApp app = new DtkApp();
TkGetSupperDiscountGoodListRequest goodsListRequest = new TkGetSupperDiscountGoodListRequest();
goodsListRequest.cids = request.cids;
goodsListRequest.sort = request.sort;
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetSuperGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.goodsId,
dtitle = item.dtitle,
shopType = item.shopType,
actualPrice = item.actualPrice.ToString(),
couponPrice = item.couponPrice.ToString(),
monthsale = item.monthSales,
mainPic = item.mainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 每日半价
///
///
///
[HttpPost]
public IActionResult GetHalfPriceDayGoodsList([FromBody] GetTkHalfPriceDayGoodsListRequest request)
{
DtkApp app = new DtkApp();
TkGetHalfPriceDayGoodsListRequest goodsListRequest = new TkGetHalfPriceDayGoodsListRequest();
goodsListRequest.sessions = request.sessions;
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetSuperGoodListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = item.goodsId,
dtitle = item.dtitle,
shopType = item.shopType,
actualPrice = item.actualPrice.ToString(),
couponPrice = item.couponPrice.ToString(),
monthsale = item.monthSales,
mainPic = item.mainPic
};
getTkTbProductLists.Add(tbProductListReponse);
}
return Success(getTkTbProductLists);
}
///
/// 每日半价
///
///
///
[HttpPost]
public IActionResult GetBrandColumList([FromBody] GetTkBrandColumListRequest request)
{
DtkApp app = new DtkApp();
TkGetBrandColumListRequest goodsListRequest = new TkGetBrandColumListRequest();
goodsListRequest.cid = request.cid;
goodsListRequest.pageId = request.PageNo.ToString();
goodsListRequest.pageSize = request.PageSize.ToString();
TkGetBrandColumListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
List getTkTbProductLists = new List();
if (dtkresponse == null||dtkresponse.code!=0 || dtkresponse.data.list.Count == 0)
{
return Error("没有数据啦!");
}
foreach (var item in dtkresponse.data.list)
{
List goods = new List();
foreach (var good in item.goodsList)
{
GetTkTbProductListReponse tbProductListReponse = new GetTkTbProductListReponse
{
goodsId = good.GoodsId,
dtitle = good.Dtitle,
shopType = good.ShopType,
actualPrice = good.ActualPrice.ToString(),
couponPrice = good.CouponPrice.ToString(),
monthsale = good.MonthSales,
mainPic = good.MainPic
};
goods.Add(tbProductListReponse);
}
GetTkBrandColumListResponse brandColumListResponse = new GetTkBrandColumListResponse
{
brandId=item.brandId,
brandName=item.brandName,
brandLogo=item.brandLogo,
brandFeatures=item.brandFeatures,
brandDesc=item.brandDesc,
sales=item.sales,
maxDiscountAmount=item.maxDiscountAmount,
maxDiscount=item.maxDiscount,
goodlist=goods
};
}
return Success(getTkTbProductLists);
}
///
/// 整点秒杀
///
///
///
[HttpPost]
public IActionResult GetDdqGoodList([FromBody] GetTkddqRequest request)
{
DtkApp app = new DtkApp();
TkGetDdpGoodsListRequest goodsListRequest = new TkGetDdpGoodsListRequest();
goodsListRequest.roundTime = request.roundTime;
TkGetDdpGoodsListResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodsListRequest));
if (dtkresponse.data != null || dtkresponse.msg == "成功")
{
return Success(dtkresponse);
}
else
{
return Success("");
}
}
///
/// 商品详情
///
///
///
[HttpPost]
public IActionResult GetGoodDetail([FromBody] GetTkProductDetailRequest request)
{
DtkApp app = new DtkApp();
TkGetGoodDetailRequest goodDetailRequest = new TkGetGoodDetailRequest();
goodDetailRequest.id = request.id;
TkGetGoodDetailResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodDetailRequest));
if (dtkresponse == null || dtkresponse.data == null)
{
return Error("未查到数据");
}
else
{
GetTkProductDetailResponse getTkProductDetail = new GetTkProductDetailResponse
{
imgs = dtkresponse.data.imgs.Split(','),
subdivisionName = dtkresponse.data.subdivisionName,
subdivisionRank=dtkresponse.data.subdivisionRank,
actualPrice=dtkresponse.data.actualPrice,
originalPrice = dtkresponse.data.originalPrice,
shopType = dtkresponse.data.shopType,
dtitle = dtkresponse.data.dtitle,
monthSales = dtkresponse.data.monthSales,
couponPrice = dtkresponse.data.couponPrice,
couponEndTime= dtkresponse.data.couponEndTime,
couponStartTime= dtkresponse.data.couponStartTime,
desc= dtkresponse.data.desc,
detailPics=dtkresponse.data.detailPics
};
return Success(getTkProductDetail);
}
}
///
/// 生成淘宝口令
///
///
///
[HttpPost]
public IActionResult GetPrivilegeLink([FromBody] GetTkProductDetailRequest request)
{
DtkApp app = new DtkApp();
TkGetPrivilegeLinkRequest goodDetailRequest = new TkGetPrivilegeLinkRequest();
goodDetailRequest.goodsId = request.id;
TkGetPrivilegeLinkResponse dtkresponse = Newtonsoft.Json.JsonConvert.DeserializeObject(app.Excute(goodDetailRequest));
if (dtkresponse == null || dtkresponse.data == null)
{
return Error("未查到数据");
}
else
{
GetPrivilegeLinkResponse getTkProductDetail = new GetPrivilegeLinkResponse
{
couponClickUrl= dtkresponse.data.couponClickUrl,
couponEndTime = dtkresponse.data.couponEndTime,
couponInfo = dtkresponse.data.couponInfo,
couponStartTime = dtkresponse.data.couponStartTime,
itemId = dtkresponse.data.itemId,
couponTotalCount = dtkresponse.data.couponTotalCount,
couponRemainCount = dtkresponse.data.couponRemainCount,
itemUrl = dtkresponse.data.itemUrl,
tpwd = dtkresponse.data.tpwd,
longTpwd = dtkresponse.data.longTpwd,
TpwdNew=dtkresponse.data.TpwdNew,
maxCommissionRate = dtkresponse.data.maxCommissionRate,
shortUrl = dtkresponse.data.shortUrl,
minCommissionRate = dtkresponse.data.minCommissionRate
};
return Success(getTkProductDetail);
}
}
}
}