using AllBase; using AllBase.Extension; using NaiBa.Util.Extension; using AllBase.Helper; using AllBase.Model.Config; using AllBase.Model.DBModel; using AllBase.Model.Param.WXParam; using AllBase.Model.Result; using AllBase.Model.Result.PDDResult; using AllBase.Model.Result.WXResult; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Store.Product.Models.PublishParameters.Wx; using Store.Product.Publish; using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Drawing2D; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using Work; namespace Store.Product.Publish.Steps.Wx; /// /// 由 WXDBProdUploadForm.UploadProduct 的“保存主图盗链映射”区段迁移。 /// TODO(迁移): 原区段中的 TEMUKJD/WXUpload/窗体服务引用需按 Store.Product 运行时适配逐项核对。 /// public sealed class SaveMainImageHotlinkMapStep : WxProductPublishStepBase { public override string Description => "保存主图盗链映射"; protected override Task ExecuteProvider(WXPublishContext context, CancellationToken cancellationToken) { if (context.Parameters.IsChangeImgDic && context.Product.DbType != "云端数据") { var url = BaseClass.BuildObjString("product/mdy_pdd_product"); var data = ""; Invoke(new Action(() => { data = UserLogin.GetSignaturex(); data += "&spu_id=" + context.Product.SpuId; data += "&wx_img_map_json=" + JsonHelper.SerializeObject(context.Parameters.WxImgMapDic); })); var html = GetHtml.PostUtf8(url, data); if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) html = GetHtml.PostUtf8(url, data); if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) html = GetHtml.PostUtf8(url, data); context.Parameters.IsChangeImgDic = false; } return Task.CompletedTask; } }