1微信用户采集店铺商品功能 2查询达人带货商品并联系达人功能

This commit is contained in:
wule committed 2026-06-09 18:11:32 +08:00
1 parent e1ee91dd03
commit 2759ff0f6d
33 files changed
+2464 -626

No files matched your search

+6 -6
View File
@@ -23,7 +23,7 @@ namespace TemuKJD.BLL
/// <param name="UpdateOldData"></param>
/// <param name="specialProdType"></param>
/// <returns></returns>
public string PddFrontToPddBackConvert(string outProdJson, bool UpdateOldData = true, string specialProdType = null, bool IsAuthorityUser = false)
public string PddFrontToPddBackConvert(string outProdJson, bool UpdateOldData = true, string specialProdType = null, bool IsCollectAuthorityUser = false)
{
PDDFrontProductInfo frontProdInfo = null;
try
@@ -328,7 +328,7 @@ namespace TemuKJD.BLL
// 商品采集权限用户采集的数据加上用户前缀(商品前缀显示给用户的时候隐藏)
string collectAuthorityTag = "";
if (IsAuthorityUser)
if (IsCollectAuthorityUser)
collectAuthorityTag = "-" + BaseClass.UserName;
bool isExist = false;
@@ -381,7 +381,7 @@ namespace TemuKJD.BLL
"&product_get_type=" + HttpUtility.UrlEncode("多多外部数据", Encoding.UTF8);
if (!string.IsNullOrEmpty(specialProdType))
data += "&special_prod_type=" + HttpUtility.UrlEncode(specialProdType, Encoding.UTF8);
if (IsAuthorityUser)
if (IsCollectAuthorityUser)
{
data += "&add_user_name=" + BaseClass.UserName;
data += "&group=用户" + BaseClass.UserName;
@@ -404,7 +404,7 @@ namespace TemuKJD.BLL
/// <param name="UpdateOldData"></param>
/// <param name="specialProdType"></param>
/// <returns></returns>
public string PddFrontToPddBackConvert2(string outProdJson, bool UpdateOldData = true, string specialProdType = null, bool IsAuthorityUser = false)
public string PddFrontToPddBackConvert2(string outProdJson, bool UpdateOldData = true, string specialProdType = null, bool IsCollectAuthorityUser = false)
{
PDDFrontProductInfo2 frontProdInfo = null;
try
@@ -719,7 +719,7 @@ namespace TemuKJD.BLL
// 商品采集权限用户采集的数据加上用户前缀(商品前缀显示给用户的时候隐藏)
string collectAuthorityTag = "";
if (IsAuthorityUser)
if (IsCollectAuthorityUser)
collectAuthorityTag = "-" + BaseClass.UserName;
bool isExist = false;
@@ -772,7 +772,7 @@ namespace TemuKJD.BLL
"&product_get_type=" + HttpUtility.UrlEncode("多多外部数据", Encoding.UTF8);
if (!string.IsNullOrEmpty(specialProdType))
data += "&special_prod_type=" + HttpUtility.UrlEncode(specialProdType, Encoding.UTF8);
if (IsAuthorityUser)
if (IsCollectAuthorityUser)
{
data += "&add_user_name=" + BaseClass.UserName;
data += "&group=用户" + BaseClass.UserName;
+82
View File
@@ -176,6 +176,88 @@ namespace TemuKJD.BLL
return result;
}
public static string WeiXinTalentOpenKfPostResponse(ShopLoginInfo shop, string _url, string _data, string referer)
{
string biz_magic = "";
string cookies = "";
try
{
var cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(shop?.Cookies.ParseToString());
if (cookieLst == null)
cookieLst = new List<CefSharp.Cookie>();
foreach (var cook in cookieLst)
{
cookies += cook.Name + "=" + cook.Value + ";";
}
var bizMagicCookie = cookieLst.FirstOrDefault(c => c.Name == "biz_magic");
if (bizMagicCookie != null)
biz_magic = bizMagicCookie.Value;
}
catch { }
HttpWebResponse response = null;
string result;
try
{
string url = _url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.KeepAlive = true;
request.Headers.Add("wecom_magic", @"");
request.Headers.Add("user_scene", @"1002");
request.Headers.Add("kf_scene", @"6");
request.Headers.Add("sec-ch-ua-platform", @"""Windows""");
request.Headers.Add("supplier_magic", @"");
request.Headers.Add("sec-ch-ua", @"""Not)A;Brand"";v=""8"", ""Chromium"";v=""138""");
request.Headers.Add("sec-ch-ua-mobile", @"?0");
request.Headers.Add("potter-scene", @"weixinShop");
request.Headers.Add("biz_magic", biz_magic);
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
request.Accept = "application/json, text/plain, */*";
request.Headers.Add("talent_magic", @"");
request.ContentType = "application/json";
request.Headers.Add("logistics_magic", @"");
request.Headers.Add("mcn_magic", @"");
request.Headers.Add("Origin", @"https://store.weixin.qq.com");
request.Headers.Add("Sec-Fetch-Site", @"same-origin");
request.Headers.Add("Sec-Fetch-Mode", @"cors");
request.Headers.Add("Sec-Fetch-Dest", @"empty");
request.Referer = referer;
request.Headers.Set(HttpRequestHeader.AcceptEncoding, "gzip, deflate, br, zstd");
request.Headers.Set(HttpRequestHeader.AcceptLanguage, "zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6");
request.Headers.Set(HttpRequestHeader.Cookie, cookies);
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
string body = _data;
byte[] postBytes = System.Text.Encoding.UTF8.GetBytes(body);
request.ContentLength = postBytes.Length;
Stream stream = request.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
response = (HttpWebResponse)ex.Response;
result = GetProxyHtml.ReadResponse(response);
return result;
}
else return ex.Message;
}
catch (Exception e)
{
if (response != null) response.Close();
return e.Message;
}
result = GetProxyHtml.ReadResponse(response);
return result;
}
public static string WeiXinImgPostResponse(ShopLoginInfo shop, string _url, string _data, string dis_k, long dis_t, string ext, string referer = "https://store.weixin.qq.com/")
{
string biz_magic = "";
@@ -259,7 +259,7 @@ namespace TemuKJD.BLL.Wx
// string wx_safe_status = !dbProdNormalLst.Any(p => p.wx_safe_status == "违规商品") ? "安全商品" : "违规商品";
// int? view_uv = recommendProd.product_view_uv.IsNullOrEmpty() ? (int?)null : recommendProd.product_view_uv.ParseToInt();
// var rst2 = new WXShopBrowserObject()
// .SaveWxProd(shop, prodId, wxProdInfoLite, "爆款数据", coid, real_coid, view_uv, wx_safe_status);
// .SaveWxProd(shop, prodId, wxProdInfoLite, false, "爆款数据", coid, real_coid, view_uv, wx_safe_status);
// if (!rst2.Contains("微信商品采集入库成功"))
// {
@@ -481,6 +481,7 @@ namespace TemuKJD.BLL.Wx
#region 查询原始数据
dbProdLst.Clear();
// 先查询聚水潭商品
if (spuCode.Length == 19)
{
url = BaseClass.BuildPDDObjString("product/get_product_list");
@@ -577,13 +578,14 @@ namespace TemuKJD.BLL.Wx
var normalJstProd = dbProdNormalLst
.FirstOrDefault(p => p.product_get_type_text == "厂商直采" && p.secret_spu_id == wxProdInfoLite.product.info.spuCode);
// 查询店铺商品,违规商品依然以违规商品入库,防止重复违规。
string prodId = recommendProd.product_id;
string coid = normalJstProd?.skc_id;
string real_coid = string.IsNullOrEmpty(normalJstProd?.real_coid) ? coid : normalJstProd?.real_coid;
string wx_safe_status = !dbProdNormalLst.Any(p => p.wx_safe_status == "违规商品") ? "安全商品" : "违规商品";
int? view_uv = recommendProd.product_view_uv.IsNullOrEmpty() ? (int?)null : recommendProd.product_view_uv.ParseToInt();
var rst2 = new WXShopBrowserObject()
.SaveWxProd(shop, prodId, wxProdInfoLite, "爆款数据", coid, real_coid, view_uv, wx_safe_status);
.SaveWxProd(shop, prodId, wxProdInfoLite, false, "爆款数据", coid, real_coid, view_uv, wx_safe_status);
if (!rst2.Contains("微信商品采集入库成功"))
{