temu客户端上传功能 2.拼多多商品提取问题修复(25%)
This commit is contained in:
1 parent
2bb124e2d7
commit
62465769fe
13 files changed
+402
-210
No files matched your search
@@ -27,7 +27,7 @@ namespace AllBase
|
||||
/// <summary>
|
||||
/// 版本ID
|
||||
/// </summary>
|
||||
public static int VersionCount = 723;
|
||||
public static int VersionCount = 725;
|
||||
//public static int VersionCount = 613;
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -109,7 +109,7 @@ namespace TemuKJD.KJDForms.AdminForms
|
||||
SetForm(dbPriceMarkUpForm.Value);
|
||||
break;
|
||||
case "认领待上传":
|
||||
dbProductSelectListManageForm.Value.IsClientJit = false;
|
||||
dbProductSelectListManageForm.Value.ClientMode = DbProductSelectListManageForm.EnumClientMode.Admin;
|
||||
SetForm(dbProductSelectListManageForm.Value);
|
||||
break;
|
||||
case "库存上传":
|
||||
|
||||
@@ -62,7 +62,7 @@ namespace TemuKJD.KJDForms.JITForms
|
||||
SetForm(dbProductListForm.Value);
|
||||
break;
|
||||
case "JIT商品上传":
|
||||
dDbProductSelectListManageForm.Value.IsClientJit = true;
|
||||
dDbProductSelectListManageForm.Value.ClientMode = DbProductSelectListManageForm.EnumClientMode.ClientJit;
|
||||
SetForm(dDbProductSelectListManageForm.Value);
|
||||
break;
|
||||
case "JIT商品核价":
|
||||
|
||||
+16
-8
@@ -35,8 +35,10 @@
|
||||
System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("加入发货台");
|
||||
System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("设置进货价");
|
||||
System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("商品认领");
|
||||
System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("库存上传");
|
||||
System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("商品管理", new System.Windows.Forms.TreeNode[] {
|
||||
System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("库存记录");
|
||||
System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("商品上传");
|
||||
System.Windows.Forms.TreeNode treeNode10 = new System.Windows.Forms.TreeNode("库存上传");
|
||||
System.Windows.Forms.TreeNode treeNode11 = new System.Windows.Forms.TreeNode("商品管理", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode1,
|
||||
treeNode2,
|
||||
treeNode3,
|
||||
@@ -44,7 +46,9 @@
|
||||
treeNode5,
|
||||
treeNode6,
|
||||
treeNode7,
|
||||
treeNode8});
|
||||
treeNode8,
|
||||
treeNode9,
|
||||
treeNode10});
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.panel3 = new System.Windows.Forms.Panel();
|
||||
this.panel2 = new System.Windows.Forms.Panel();
|
||||
@@ -149,12 +153,16 @@
|
||||
treeNode6.Text = "设置进货价";
|
||||
treeNode7.Name = "商品认领";
|
||||
treeNode7.Text = "商品认领";
|
||||
treeNode8.Name = "库存上传";
|
||||
treeNode8.Text = "库存上传";
|
||||
treeNode9.Name = "商品管理";
|
||||
treeNode9.Text = "商品管理";
|
||||
treeNode8.Name = "库存记录";
|
||||
treeNode8.Text = "库存记录";
|
||||
treeNode9.Name = "商品上传";
|
||||
treeNode9.Text = "商品上传";
|
||||
treeNode10.Name = "库存上传";
|
||||
treeNode10.Text = "库存上传";
|
||||
treeNode11.Name = "商品管理";
|
||||
treeNode11.Text = "商品管理";
|
||||
this.tv.Nodes.AddRange(new System.Windows.Forms.TreeNode[] {
|
||||
treeNode9});
|
||||
treeNode11});
|
||||
this.tv.OverForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
|
||||
this.tv.Size = new System.Drawing.Size(140, 521);
|
||||
this.tv.TabIndex = 1;
|
||||
|
||||
@@ -29,6 +29,9 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
public Lazy<TemuAdsForm> temuAdsForm = new Lazy<TemuAdsForm>();
|
||||
public Lazy<JoinDeliveryForm> joinDeliveryFrom = new Lazy<JoinDeliveryForm>();
|
||||
|
||||
public Lazy<DbProductSelectListManageForm> productSelectListManageForm = new Lazy<DbProductSelectListManageForm>();
|
||||
public Lazy<ProductThirdSelectListManageForm> productThirdSelectListManageForm = new Lazy<ProductThirdSelectListManageForm>();
|
||||
|
||||
public ProductForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -75,40 +78,49 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
|
||||
//如果是一级菜单,不做任何动作
|
||||
if (e.Node.Parent == null) return;
|
||||
new Thread(() =>
|
||||
//new Thread(() =>
|
||||
//{
|
||||
//Thread.Sleep(200);
|
||||
//Invoke(new Action(() =>
|
||||
//{
|
||||
switch (e.Node.Name)
|
||||
{
|
||||
Thread.Sleep(200);
|
||||
Invoke(new Action(() =>
|
||||
{
|
||||
switch (e.Node.Name)
|
||||
{
|
||||
case "备货管理":
|
||||
SetForm(saleStockUpForm.Value);
|
||||
break;
|
||||
case "调价管理":
|
||||
SetForm(priceManageForm.Value);
|
||||
break;
|
||||
case "活动报名":
|
||||
SetForm(marketingActivityForm.Value);
|
||||
break;
|
||||
case "推广直通车":
|
||||
SetForm(temuAdsForm.Value);
|
||||
break;
|
||||
case "加入发货台":
|
||||
SetForm(joinDeliveryFrom.Value);
|
||||
break;
|
||||
case "设置进货价":
|
||||
SetForm(purchasePriceForm.Value);
|
||||
break;
|
||||
case "商品认领":
|
||||
SetForm(userSelectDbProductForm.Value);
|
||||
break;
|
||||
case "库存上传":
|
||||
SetForm(userSelectThirdProductForm.Value);
|
||||
break;
|
||||
}
|
||||
}));
|
||||
}).Start();
|
||||
case "备货管理":
|
||||
SetForm(saleStockUpForm.Value);
|
||||
break;
|
||||
case "调价管理":
|
||||
SetForm(priceManageForm.Value);
|
||||
break;
|
||||
case "活动报名":
|
||||
SetForm(marketingActivityForm.Value);
|
||||
break;
|
||||
case "推广直通车":
|
||||
SetForm(temuAdsForm.Value);
|
||||
break;
|
||||
case "加入发货台":
|
||||
SetForm(joinDeliveryFrom.Value);
|
||||
break;
|
||||
case "设置进货价":
|
||||
SetForm(purchasePriceForm.Value);
|
||||
break;
|
||||
case "商品认领":
|
||||
SetForm(userSelectDbProductForm.Value);
|
||||
break;
|
||||
case "库存记录":
|
||||
SetForm(userSelectThirdProductForm.Value);
|
||||
break;
|
||||
|
||||
case "商品上传":
|
||||
productSelectListManageForm.Value.ClientMode = DbProductSelectListManageForm.EnumClientMode.Client;
|
||||
SetForm(productSelectListManageForm.Value);
|
||||
break;
|
||||
case "库存上传":
|
||||
productThirdSelectListManageForm.Value.ClientMode = ProductThirdSelectListManageForm.EnumClientMode.Client;
|
||||
SetForm(productThirdSelectListManageForm.Value);
|
||||
break;
|
||||
}
|
||||
//}));
|
||||
//}).Start();
|
||||
}
|
||||
|
||||
public void SetTvSelect(string name)
|
||||
|
||||
@@ -34,7 +34,14 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
{
|
||||
public partial class DbProductSelectListManageForm : LRBaseForm
|
||||
{
|
||||
public bool IsClientJit { get; set; } = false;
|
||||
public enum EnumClientMode
|
||||
{
|
||||
Admin,
|
||||
Client,
|
||||
ClientJit,
|
||||
}
|
||||
|
||||
public EnumClientMode ClientMode { get; set; } = EnumClientMode.Admin;
|
||||
public CancellationTokenSource cancellationTokenSource { get; set; } = null;
|
||||
|
||||
List<string> skuRandomLetterArr = new List<string> { "~", "#", "¥", "%", "&", "*", "(", ")", "(", ")", "+", "-", "_", "=", "【", "】", "·", "|", "《", "》" };
|
||||
@@ -154,7 +161,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
//ucSplitPage1.cmbPageSize.Items.Remove("1000");
|
||||
}
|
||||
|
||||
if (BaseClass.SaLevel == 1 && !IsClientJit)
|
||||
if (BaseClass.SaLevel == 1 && ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
dgvSelectProduct.Columns["colSubSaNick"].Visible = true;
|
||||
chkShowDel.Visible = true;
|
||||
@@ -168,7 +175,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
//chkSkuRandomPrice.Checked = true;
|
||||
}
|
||||
|
||||
if (IsClientJit)
|
||||
if (ClientMode != EnumClientMode.Admin)
|
||||
{
|
||||
chkShowDel.Visible = true;
|
||||
btnReFission.Visible = true;
|
||||
@@ -210,7 +217,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
}
|
||||
else
|
||||
{
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
{
|
||||
foreach (DataGridViewRow row in dgvSelectProduct.Rows)
|
||||
{
|
||||
@@ -330,7 +337,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
|
||||
dgvSelectProduct.Rows[rowIndex].Height = 60;
|
||||
displayLoginStatusColor(dgvSelectProduct.Rows[rowIndex].Cells["colLogin"], dgvSelectProduct.Rows[rowIndex].Cells["colLogin"].Value.ParseToString());
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
{
|
||||
var clientShop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == prodSelect.shop_id);
|
||||
if (clientShop == null || clientShop.jit_expire_time.IsNullOrEmpty() || clientShop.jit_expire_time < DateTime.Now.Date)
|
||||
@@ -358,6 +365,9 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
pageCount = 1;
|
||||
|
||||
var url = BaseClass.BuildObjString("product/admin_get_user_select_product_list");
|
||||
if (ClientMode != EnumClientMode.Admin)
|
||||
url = BaseClass.BuildObjString("product/get_user_select_product_list");
|
||||
|
||||
var data = "";
|
||||
Invoke(new Action(() =>
|
||||
{
|
||||
@@ -378,8 +388,13 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
data += "&operate_sub_sa_name=" + BaseClass.UserName;
|
||||
if (chkNoSubSa.Checked)
|
||||
data += "&no_sub_sa=true";
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
data += "&is_client_jit=true";
|
||||
if (ClientMode != EnumClientMode.Admin)
|
||||
{
|
||||
string shopIds = string.Join(",", GlobalConfig.ShopLoginList.Where(s => !s.ShopId.IsNullOrEmpty()).Select(s => s.ShopId).Distinct()) ?? "default";
|
||||
data += "&shop_ids=" + shopIds;
|
||||
}
|
||||
}));
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
||||
@@ -440,7 +455,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
var shopId = dgvSelectProduct.Rows[e.RowIndex].Cells["colSupplierId"].Value.ParseToString();
|
||||
var draftId = dgvSelectProduct.Rows[e.RowIndex].Cells["colDraftId"].Value.ParseToString();
|
||||
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
{
|
||||
var clientShop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
|
||||
if (clientShop == null || clientShop.jit_expire_time.IsNullOrEmpty() || clientShop.jit_expire_time < DateTime.Now.Date)
|
||||
@@ -463,7 +478,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
break;
|
||||
case "编辑备注":
|
||||
DbProductSelectEditNotesForm editForm = new DbProductSelectEditNotesForm(dbSelectProduct);
|
||||
editForm.IsClientJit = this.IsClientJit;
|
||||
editForm.IsClientJit = (ClientMode == EnumClientMode.ClientJit);
|
||||
editForm.ShowDialog();
|
||||
dgvSelectProduct.Rows[e.RowIndex].Cells["colNotes"].Value = dbSelectProduct.notes;
|
||||
dgvSelectProduct.Rows[e.RowIndex].Cells["colUserNotes"].Value = dbSelectProduct.user_notes;
|
||||
@@ -483,7 +498,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
// 查看map映射列表
|
||||
var url = BaseClass.BuildObjString("product/get_select_prod_db_id_map_draft_id_list");
|
||||
var data = UserLogin.GetSignaturex() + "&select_db_id=" + dbId;
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
data += "&is_client_jit=true";
|
||||
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
@@ -522,7 +537,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
|
||||
if (flag)
|
||||
{
|
||||
if (!IsClientJit)
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
@@ -550,7 +565,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
case "进店":
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
if (!IsClientJit)
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product/draft";
|
||||
@@ -574,7 +589,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
// 登录店铺
|
||||
if (!IsClientJit)
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm shopLoginForm = new AdminShopLoginForm(shop);
|
||||
shopLoginForm.openType = EnumOpenType.login;
|
||||
@@ -673,7 +688,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
var url = BaseClass.BuildObjString("product/del_select_product");
|
||||
var data = UserLogin.GetSignaturex() +
|
||||
"&db_id=" + dbId;
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
data += "&is_client_jit=true";
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
||||
@@ -696,11 +711,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
ShopLoginInfo GetShop(string shopId)
|
||||
{
|
||||
ShopLoginInfo shop;
|
||||
if (IsClientJit)
|
||||
{
|
||||
shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
|
||||
}
|
||||
else
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
shop = shopLst.FirstOrDefault(s => s.ShopId == shopId);
|
||||
if (shop == null)
|
||||
@@ -708,6 +719,10 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
shop = AdminGetServerShop(shopId);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
|
||||
}
|
||||
if (shop == null)
|
||||
{
|
||||
shop = new ShopLoginInfo() { ShopId = shopId };
|
||||
@@ -867,7 +882,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
var empty_data = UserLogin.GetSignaturex() +
|
||||
"&db_id=" + prod.id +
|
||||
"&status=已清除";
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
empty_data += "&is_client_jit=true";
|
||||
GetHtml.PostUtf8(empty_url, empty_data);
|
||||
}
|
||||
@@ -890,7 +905,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
|
||||
if (result.Contains("登录过期") || result.Contains("Invalid Login State"))
|
||||
{
|
||||
if (!IsClientJit)
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
AdminShopListForm.Instance.CheckShopLogin(shopLst.Where(s => s.LoginName == shop.LoginName).ToArray(), false);
|
||||
else
|
||||
ShopListForm.Instance.CheckShopLogin(shopLst.Where(s => s.LoginName == shop.LoginName).ToArray(), false);
|
||||
@@ -929,7 +944,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
"&up_spu_id=" + prod.spu_id +
|
||||
"&shop_id=" + prod.shop_id +
|
||||
"&status=" + prod.status;
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
data += "&is_client_jit=true";
|
||||
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
@@ -3375,7 +3390,7 @@ Content-Disposition: form-data; name=""sign""
|
||||
var empty_data = UserLogin.GetSignaturex() +
|
||||
"&db_id=" + prod.id +
|
||||
"&status=已清除";
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
empty_data += "&is_client_jit=true";
|
||||
GetHtml.PostUtf8(empty_url, empty_data);
|
||||
}
|
||||
@@ -3397,7 +3412,7 @@ Content-Disposition: form-data; name=""sign""
|
||||
var data = UserLogin.GetSignaturex() +
|
||||
"&db_id=" + prod.id;
|
||||
data += "&fission_product_name=" + GetHtml.UrlEncodeUtf8(fissionProductName.Trim());
|
||||
if (IsClientJit)
|
||||
if (ClientMode == EnumClientMode.ClientJit)
|
||||
data += "&is_client_jit=true";
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
||||
@@ -3641,7 +3656,7 @@ Content-Disposition: form-data; name=""sign""
|
||||
case "已上传商品ID":
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
if (!IsClientJit)
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
|
||||
+12
-12
@@ -110,7 +110,7 @@
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.txtProdName = new System.Windows.Forms.TextBox();
|
||||
this.label12 = new System.Windows.Forms.Label();
|
||||
this.lblUserNotes = new System.Windows.Forms.Label();
|
||||
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
|
||||
this.pbLoading = new System.Windows.Forms.PictureBox();
|
||||
this.panel2 = new System.Windows.Forms.Panel();
|
||||
@@ -1035,7 +1035,7 @@
|
||||
this.tableLayoutPanel1.Controls.Add(this.label3, 10, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.label4, 12, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.txtProdName, 11, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.label12, 18, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.lblUserNotes, 18, 0);
|
||||
this.tableLayoutPanel1.Location = new System.Drawing.Point(2, 0);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
this.tableLayoutPanel1.RowCount = 2;
|
||||
@@ -1254,16 +1254,16 @@
|
||||
this.txtProdName.Size = new System.Drawing.Size(61, 23);
|
||||
this.txtProdName.TabIndex = 427;
|
||||
//
|
||||
// label12
|
||||
// lblUserNotes
|
||||
//
|
||||
this.label12.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.label12.AutoSize = true;
|
||||
this.label12.Location = new System.Drawing.Point(952, 12);
|
||||
this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
|
||||
this.label12.Name = "label12";
|
||||
this.label12.Size = new System.Drawing.Size(56, 17);
|
||||
this.label12.TabIndex = 460;
|
||||
this.label12.Text = "用户备注";
|
||||
this.lblUserNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.lblUserNotes.AutoSize = true;
|
||||
this.lblUserNotes.Location = new System.Drawing.Point(952, 12);
|
||||
this.lblUserNotes.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
|
||||
this.lblUserNotes.Name = "lblUserNotes";
|
||||
this.lblUserNotes.Size = new System.Drawing.Size(56, 17);
|
||||
this.lblUserNotes.TabIndex = 460;
|
||||
this.lblUserNotes.Text = "用户备注";
|
||||
//
|
||||
// splitContainer2
|
||||
//
|
||||
@@ -1809,7 +1809,7 @@
|
||||
private System.Windows.Forms.NumericUpDown numSkuRandomPrice;
|
||||
private System.Windows.Forms.Label label11;
|
||||
private UserComponent.UcCheckBox chkUploadProd;
|
||||
private System.Windows.Forms.Label label12;
|
||||
private System.Windows.Forms.Label lblUserNotes;
|
||||
private System.Windows.Forms.Label label13;
|
||||
private System.Windows.Forms.ComboBox cmbUserNotes;
|
||||
private System.Windows.Forms.ComboBox cmbNotes;
|
||||
|
||||
@@ -36,6 +36,15 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
/// </summary>
|
||||
public partial class ProductThirdSelectListManageForm : LRBaseForm
|
||||
{
|
||||
public enum EnumClientMode
|
||||
{
|
||||
Admin,
|
||||
Client,
|
||||
ClientJit,
|
||||
}
|
||||
|
||||
public EnumClientMode ClientMode { get; set; } = EnumClientMode.Admin;
|
||||
|
||||
public CancellationTokenSource cancellationTokenSource { get; set; } = null;
|
||||
|
||||
List<string> skuRandomLetterArr = new List<string> { "~", "#", "¥", "%", "&", "*", "(", ")", "(", ")", "+", "-", "_", "=", "【", "】", "·", "|", "《", "》" };
|
||||
@@ -80,6 +89,34 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
ucSplitPage1.IsShowPageSize = true; // 可调整分页
|
||||
tableLayoutPanel1.Width -= 86;
|
||||
}
|
||||
|
||||
if (ClientMode != EnumClientMode.Admin)
|
||||
{
|
||||
chkShowDel.Visible = true;
|
||||
pbFissionSetting.Visible = true;
|
||||
btnReFission.Visible = true;
|
||||
cmbUserNotes.Visible = false;
|
||||
lblUserNotes.Visible = false;
|
||||
colUserNotes.Visible = false;
|
||||
ucSplitPage1.IsShowPageSize = true;
|
||||
var columnStyles = tableLayoutPanel1.ColumnStyles.Cast<ColumnStyle>().ToList();
|
||||
columnStyles[columnStyles.Count - 1].SizeType = SizeType.Absolute;
|
||||
columnStyles[columnStyles.Count - 1].Width = 0;
|
||||
columnStyles[columnStyles.Count - 2].SizeType = SizeType.Absolute;
|
||||
columnStyles[columnStyles.Count - 2].Width = 0;
|
||||
int colsWidth = 0;
|
||||
foreach (DataGridViewColumn col in dgvSelectProduct.Columns)
|
||||
{
|
||||
if (col.Visible)
|
||||
{
|
||||
colsWidth += col.Width;
|
||||
}
|
||||
}
|
||||
if (dgvSelectProduct.Width - colsWidth - dgvSelectProduct.RowHeadersWidth > 0)
|
||||
{
|
||||
colOpResult.Width += dgvSelectProduct.Width - colsWidth - dgvSelectProduct.RowHeadersWidth;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool isFirst = true;
|
||||
@@ -249,6 +286,9 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
pageCount = 1;
|
||||
|
||||
var url = BaseClass.BuildObjString("product_third/admin_get_user_select_product_list");
|
||||
if (ClientMode != EnumClientMode.Admin)
|
||||
url = BaseClass.BuildObjString("product_third/get_user_select_product_list");
|
||||
|
||||
var data = "";
|
||||
Invoke(new Action(() =>
|
||||
{
|
||||
@@ -269,6 +309,11 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
data += "&operate_sub_sa_name=" + BaseClass.UserName;
|
||||
if (chkNoSubSa.Checked)
|
||||
data += "&no_sub_sa=true";
|
||||
if (ClientMode != EnumClientMode.Admin)
|
||||
{
|
||||
string shopIds = string.Join(",", GlobalConfig.ShopLoginList.Where(s => !s.ShopId.IsNullOrEmpty()).Select(s => s.ShopId).Distinct()) ?? "default";
|
||||
data += "&shop_ids=" + shopIds;
|
||||
}
|
||||
}));
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
||||
@@ -405,35 +450,70 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
if (flag)
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
adminLoginForm.InitUrl = "https://agentseller.temu.com/goods/edit?productDraftId=" +
|
||||
draftId + "&from=productDraftList";
|
||||
adminLoginForm.openType = EnumOpenType.manage;
|
||||
adminLoginForm.WindowState = FormWindowState.Maximized;
|
||||
adminLoginForm.ShowDialog();
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
adminLoginForm.InitUrl = "https://agentseller.temu.com/goods/edit?productDraftId=" +
|
||||
draftId + "&from=productDraftList";
|
||||
adminLoginForm.openType = EnumOpenType.manage;
|
||||
adminLoginForm.WindowState = FormWindowState.Maximized;
|
||||
adminLoginForm.ShowDialog();
|
||||
}
|
||||
else
|
||||
{
|
||||
ShopLoginForm loginForm = new ShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
loginForm.InitUrl = "https://agentseller.temu.com/goods/edit?productDraftId=" +
|
||||
draftId + "&from=productDraftList";
|
||||
loginForm.openType = EnumOpenType.manage;
|
||||
loginForm.WindowState = FormWindowState.Maximized;
|
||||
loginForm.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "进店":
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product/draft";
|
||||
adminLoginForm.InitUrl = "https://agentseller.temu.com/goods/draft";
|
||||
adminLoginForm.openType = EnumOpenType.manage;
|
||||
adminLoginForm.WindowState = FormWindowState.Maximized;
|
||||
adminLoginForm.ShowDialog();
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product/draft";
|
||||
adminLoginForm.InitUrl = "https://agentseller.temu.com/goods/draft";
|
||||
adminLoginForm.openType = EnumOpenType.manage;
|
||||
adminLoginForm.WindowState = FormWindowState.Maximized;
|
||||
adminLoginForm.ShowDialog();
|
||||
}
|
||||
else
|
||||
{
|
||||
ShopLoginForm loginForm = new ShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product/draft";
|
||||
loginForm.InitUrl = "https://agentseller.temu.com/goods/draft";
|
||||
loginForm.openType = EnumOpenType.manage;
|
||||
loginForm.WindowState = FormWindowState.Maximized;
|
||||
loginForm.ShowDialog();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "登录":
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
// 登录店铺
|
||||
AdminShopLoginForm shopLoginForm = new AdminShopLoginForm(shop);
|
||||
shopLoginForm.openType = EnumOpenType.login;
|
||||
shopLoginForm.SaveComplete += ShopLoginForm_SaveComplete;
|
||||
shopLoginForm.ShowDialog();
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm shopLoginForm = new AdminShopLoginForm(shop);
|
||||
shopLoginForm.openType = EnumOpenType.login;
|
||||
shopLoginForm.SaveComplete += ShopLoginForm_SaveComplete;
|
||||
shopLoginForm.ShowDialog();
|
||||
}
|
||||
else
|
||||
{
|
||||
ShopLoginForm shopLoginForm = new ShopLoginForm(shop);
|
||||
shopLoginForm.openType = EnumOpenType.login;
|
||||
shopLoginForm.SaveComplete += ShopLoginForm_SaveComplete;
|
||||
shopLoginForm.ShowDialog();
|
||||
}
|
||||
foreach (DataGridViewRow row in this.dgvSelectProduct.Rows)
|
||||
{
|
||||
if (row.Cells["colSupplierId"].Value.ParseToString() == shop.ShopId)
|
||||
@@ -552,17 +632,25 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
|
||||
ShopLoginInfo GetShop(string shopId)
|
||||
{
|
||||
var shop = shopLst.FirstOrDefault(s => s.ShopId == shopId);
|
||||
if (shop == null)
|
||||
ShopLoginInfo shop;
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
shop = GetServerShopById(shopId);
|
||||
shop = shopLst.FirstOrDefault(s => s.ShopId == shopId);
|
||||
if (shop == null)
|
||||
{
|
||||
shop = new ShopLoginInfo() { ShopId = shopId };
|
||||
shop.LoginStatus = "不存在";
|
||||
shop = GetServerShopById(shopId);
|
||||
}
|
||||
shopLst.Add(shop);
|
||||
}
|
||||
else
|
||||
{
|
||||
shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
|
||||
}
|
||||
if (shop == null)
|
||||
{
|
||||
shop = new ShopLoginInfo() { ShopId = shopId };
|
||||
shop.LoginStatus = "不存在";
|
||||
}
|
||||
shopLst.Add(shop);
|
||||
return shop;
|
||||
}
|
||||
|
||||
@@ -732,7 +820,10 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
|
||||
if (result.Contains("登录过期") || result.Contains("Invalid Login State"))
|
||||
{
|
||||
AdminShopListForm.Instance.CheckShopLogin(shopLst.Where(s => s.LoginName == shop.LoginName).ToArray(), false);
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
AdminShopListForm.Instance.CheckShopLogin(shopLst.Where(s => s.LoginName == shop.LoginName).ToArray(), false);
|
||||
else
|
||||
ShopListForm.Instance.CheckShopLogin(shopLst.Where(s => s.LoginName == shop.LoginName).ToArray(), false);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
@@ -2041,13 +2132,26 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
case "已上传商品ID":
|
||||
{
|
||||
var shop = GetShop(shopId);
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
adminLoginForm.InitUrl = "https://agentseller.temu.com/goods/edit?productDraftId=" +
|
||||
draftId + "&from=productDraftList";
|
||||
adminLoginForm.openType = EnumOpenType.manage;
|
||||
adminLoginForm.WindowState = FormWindowState.Maximized;
|
||||
adminLoginForm.ShowDialog();
|
||||
if (ClientMode == EnumClientMode.Admin)
|
||||
{
|
||||
AdminShopLoginForm adminLoginForm = new AdminShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
adminLoginForm.InitUrl = "https://agentseller.temu.com/goods/edit?productDraftId=" +
|
||||
draftId + "&from=productDraftList";
|
||||
adminLoginForm.openType = EnumOpenType.manage;
|
||||
adminLoginForm.WindowState = FormWindowState.Maximized;
|
||||
adminLoginForm.ShowDialog();
|
||||
}
|
||||
else
|
||||
{
|
||||
ShopLoginForm loginForm = new ShopLoginForm(shop);
|
||||
//adminLoginForm.InitUrl = "https://seller.kuajingmaihuo.com/goods/product-create/product-edit?productDraftId=" +
|
||||
loginForm.InitUrl = "https://agentseller.temu.com/goods/edit?productDraftId=" +
|
||||
draftId + "&from=productDraftList";
|
||||
loginForm.openType = EnumOpenType.manage;
|
||||
loginForm.WindowState = FormWindowState.Maximized;
|
||||
loginForm.ShowDialog();
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -34,6 +34,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PDDDBProdEditDetailForm));
|
||||
this.panel2 = new System.Windows.Forms.Panel();
|
||||
this.pnlCef = new System.Windows.Forms.Panel();
|
||||
this.pbLoading = new System.Windows.Forms.PictureBox();
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.flowLayoutPanel3 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
@@ -47,6 +48,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.ucPddSpecEdit2 = new TemuKJD.PDDForms.ProductSelectForms.UcPddSpecEdit();
|
||||
this.panel4 = new System.Windows.Forms.Panel();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.flowLayoutPanel4 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.cmbSpec1 = new TemuKJD.UserComponent.UcComboBoxMutiSelect();
|
||||
@@ -70,10 +72,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.colSkuImg = new System.Windows.Forms.DataGridViewImageColumn();
|
||||
this.colEditSkuImg = new System.Windows.Forms.DataGridViewLinkColumn();
|
||||
this.colSkuSn = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.panel5 = new System.Windows.Forms.Panel();
|
||||
this.btnRestoreAll = new DevComponents.DotNetBar.PanelEx();
|
||||
this.btnCancel = new DevComponents.DotNetBar.PanelEx();
|
||||
this.btnSaveSkuLst = new DevComponents.DotNetBar.PanelEx();
|
||||
this.pnlCef = new System.Windows.Forms.Panel();
|
||||
this.panel2.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
@@ -85,6 +87,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.flowLayoutPanel1.SuspendLayout();
|
||||
this.pnlSpec2.SuspendLayout();
|
||||
this.flowLayoutPanel2.SuspendLayout();
|
||||
this.panel4.SuspendLayout();
|
||||
this.flowLayoutPanel4.SuspendLayout();
|
||||
this.panel3.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvDbProduct)).BeginInit();
|
||||
@@ -99,14 +102,21 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.panel2.Location = new System.Drawing.Point(1, 33);
|
||||
this.panel2.Name = "panel2";
|
||||
this.panel2.Size = new System.Drawing.Size(1278, 666);
|
||||
this.panel2.Size = new System.Drawing.Size(1278, 686);
|
||||
this.panel2.TabIndex = 1;
|
||||
//
|
||||
// pnlCef
|
||||
//
|
||||
this.pnlCef.Location = new System.Drawing.Point(5, 7);
|
||||
this.pnlCef.Name = "pnlCef";
|
||||
this.pnlCef.Size = new System.Drawing.Size(78, 49);
|
||||
this.pnlCef.TabIndex = 9;
|
||||
//
|
||||
// pbLoading
|
||||
//
|
||||
this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None;
|
||||
this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue;
|
||||
this.pbLoading.Location = new System.Drawing.Point(614, 6);
|
||||
this.pbLoading.Location = new System.Drawing.Point(614, 16);
|
||||
this.pbLoading.Name = "pbLoading";
|
||||
this.pbLoading.Size = new System.Drawing.Size(50, 50);
|
||||
this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
|
||||
@@ -118,7 +128,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
//
|
||||
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
|
||||
this.splitContainer1.Location = new System.Drawing.Point(0, 62);
|
||||
this.splitContainer1.Location = new System.Drawing.Point(0, 82);
|
||||
this.splitContainer1.Name = "splitContainer1";
|
||||
this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
|
||||
//
|
||||
@@ -142,9 +152,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.flowLayoutPanel3.Controls.Add(this.flowLayoutPanel1);
|
||||
this.flowLayoutPanel3.Controls.Add(this.pnlSpec2);
|
||||
this.flowLayoutPanel3.Controls.Add(this.flowLayoutPanel2);
|
||||
this.flowLayoutPanel3.Controls.Add(this.label3);
|
||||
this.flowLayoutPanel3.Controls.Add(this.panel4);
|
||||
this.flowLayoutPanel3.Controls.Add(this.flowLayoutPanel4);
|
||||
this.flowLayoutPanel3.Controls.Add(this.dgvDbProduct);
|
||||
this.flowLayoutPanel3.Controls.Add(this.panel5);
|
||||
this.flowLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.flowLayoutPanel3.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
|
||||
this.flowLayoutPanel3.Location = new System.Drawing.Point(0, 0);
|
||||
@@ -158,8 +169,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.pnlSpec1.Controls.Add(this.btnAddSpec1);
|
||||
this.pnlSpec1.Controls.Add(this.label1);
|
||||
this.pnlSpec1.Location = new System.Drawing.Point(3, 3);
|
||||
this.pnlSpec1.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.pnlSpec1.Name = "pnlSpec1";
|
||||
this.pnlSpec1.Size = new System.Drawing.Size(204, 23);
|
||||
this.pnlSpec1.Size = new System.Drawing.Size(1250, 23);
|
||||
this.pnlSpec1.TabIndex = 11;
|
||||
//
|
||||
// btnAddSpec1
|
||||
@@ -203,12 +215,12 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.flowLayoutPanel1.AutoSize = true;
|
||||
this.flowLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.flowLayoutPanel1.Controls.Add(this.ucPddSpecEdit1);
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(4, 29);
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(3, 29);
|
||||
this.flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
|
||||
this.flowLayoutPanel1.MaximumSize = new System.Drawing.Size(1240, 9999);
|
||||
this.flowLayoutPanel1.MinimumSize = new System.Drawing.Size(1240, 10);
|
||||
this.flowLayoutPanel1.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(1240, 55);
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(1250, 55);
|
||||
this.flowLayoutPanel1.TabIndex = 0;
|
||||
this.flowLayoutPanel1.Tag = "";
|
||||
//
|
||||
@@ -227,8 +239,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.pnlSpec2.Controls.Add(this.btnAddSpec2);
|
||||
this.pnlSpec2.Controls.Add(this.label2);
|
||||
this.pnlSpec2.Location = new System.Drawing.Point(3, 90);
|
||||
this.pnlSpec2.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.pnlSpec2.Name = "pnlSpec2";
|
||||
this.pnlSpec2.Size = new System.Drawing.Size(204, 23);
|
||||
this.pnlSpec2.Size = new System.Drawing.Size(1250, 23);
|
||||
this.pnlSpec2.TabIndex = 12;
|
||||
//
|
||||
// btnAddSpec2
|
||||
@@ -272,12 +285,12 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.flowLayoutPanel2.AutoSize = true;
|
||||
this.flowLayoutPanel2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.flowLayoutPanel2.Controls.Add(this.ucPddSpecEdit2);
|
||||
this.flowLayoutPanel2.Location = new System.Drawing.Point(4, 116);
|
||||
this.flowLayoutPanel2.Location = new System.Drawing.Point(3, 116);
|
||||
this.flowLayoutPanel2.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
|
||||
this.flowLayoutPanel2.MaximumSize = new System.Drawing.Size(1240, 9999);
|
||||
this.flowLayoutPanel2.MinimumSize = new System.Drawing.Size(1240, 10);
|
||||
this.flowLayoutPanel2.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.flowLayoutPanel2.Name = "flowLayoutPanel2";
|
||||
this.flowLayoutPanel2.Size = new System.Drawing.Size(1240, 55);
|
||||
this.flowLayoutPanel2.Size = new System.Drawing.Size(1250, 55);
|
||||
this.flowLayoutPanel2.TabIndex = 1;
|
||||
//
|
||||
// ucPddSpecEdit2
|
||||
@@ -290,10 +303,19 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.ucPddSpecEdit2.Size = new System.Drawing.Size(295, 49);
|
||||
this.ucPddSpecEdit2.TabIndex = 0;
|
||||
//
|
||||
// panel4
|
||||
//
|
||||
this.panel4.Controls.Add(this.label3);
|
||||
this.panel4.Location = new System.Drawing.Point(3, 177);
|
||||
this.panel4.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.panel4.Name = "panel4";
|
||||
this.panel4.Size = new System.Drawing.Size(1250, 23);
|
||||
this.panel4.TabIndex = 14;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(5, 179);
|
||||
this.label3.Location = new System.Drawing.Point(1, 3);
|
||||
this.label3.Margin = new System.Windows.Forms.Padding(5, 5, 3, 3);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(68, 17);
|
||||
@@ -305,9 +327,11 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.flowLayoutPanel4.Controls.Add(this.cmbSpec1);
|
||||
this.flowLayoutPanel4.Controls.Add(this.cmbSpec2);
|
||||
this.flowLayoutPanel4.Controls.Add(this.panel3);
|
||||
this.flowLayoutPanel4.Location = new System.Drawing.Point(3, 202);
|
||||
this.flowLayoutPanel4.Location = new System.Drawing.Point(3, 203);
|
||||
this.flowLayoutPanel4.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
|
||||
this.flowLayoutPanel4.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.flowLayoutPanel4.Name = "flowLayoutPanel4";
|
||||
this.flowLayoutPanel4.Size = new System.Drawing.Size(1242, 31);
|
||||
this.flowLayoutPanel4.Size = new System.Drawing.Size(1250, 31);
|
||||
this.flowLayoutPanel4.TabIndex = 13;
|
||||
//
|
||||
// cmbSpec1
|
||||
@@ -454,11 +478,12 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.colSkuImg,
|
||||
this.colEditSkuImg,
|
||||
this.colSkuSn});
|
||||
this.dgvDbProduct.Location = new System.Drawing.Point(5, 239);
|
||||
this.dgvDbProduct.Margin = new System.Windows.Forms.Padding(5, 3, 3, 3);
|
||||
this.dgvDbProduct.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
|
||||
this.dgvDbProduct.Location = new System.Drawing.Point(5, 237);
|
||||
this.dgvDbProduct.Margin = new System.Windows.Forms.Padding(5, 0, 3, 3);
|
||||
this.dgvDbProduct.Name = "dgvDbProduct";
|
||||
this.dgvDbProduct.RowTemplate.Height = 23;
|
||||
this.dgvDbProduct.Size = new System.Drawing.Size(1230, 586);
|
||||
this.dgvDbProduct.Size = new System.Drawing.Size(1230, 600);
|
||||
this.dgvDbProduct.TabIndex = 7;
|
||||
this.dgvDbProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellContentClick);
|
||||
this.dgvDbProduct.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellValueChanged);
|
||||
@@ -535,6 +560,14 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.colSkuSn.Name = "colSkuSn";
|
||||
this.colSkuSn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
||||
//
|
||||
// panel5
|
||||
//
|
||||
this.panel5.Location = new System.Drawing.Point(3, 843);
|
||||
this.panel5.MinimumSize = new System.Drawing.Size(1250, 10);
|
||||
this.panel5.Name = "panel5";
|
||||
this.panel5.Size = new System.Drawing.Size(1250, 10);
|
||||
this.panel5.TabIndex = 15;
|
||||
//
|
||||
// btnRestoreAll
|
||||
//
|
||||
this.btnRestoreAll.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
@@ -609,17 +642,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.btnSaveSkuLst.Text = "保存";
|
||||
this.btnSaveSkuLst.Click += new System.EventHandler(this.btnSaveSkuLst_Click);
|
||||
//
|
||||
// pnlCef
|
||||
//
|
||||
this.pnlCef.Location = new System.Drawing.Point(5, 7);
|
||||
this.pnlCef.Name = "pnlCef";
|
||||
this.pnlCef.Size = new System.Drawing.Size(78, 49);
|
||||
this.pnlCef.TabIndex = 9;
|
||||
//
|
||||
// PDDDBProdEditDetailForm
|
||||
//
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
|
||||
this.ClientSize = new System.Drawing.Size(1280, 700);
|
||||
this.ClientSize = new System.Drawing.Size(1280, 720);
|
||||
this.Controls.Add(this.panel2);
|
||||
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
@@ -644,6 +670,8 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.pnlSpec2.PerformLayout();
|
||||
this.flowLayoutPanel2.ResumeLayout(false);
|
||||
this.flowLayoutPanel2.PerformLayout();
|
||||
this.panel4.ResumeLayout(false);
|
||||
this.panel4.PerformLayout();
|
||||
this.flowLayoutPanel4.ResumeLayout(false);
|
||||
this.panel3.ResumeLayout(false);
|
||||
this.panel3.PerformLayout();
|
||||
@@ -695,5 +723,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colSkuSn;
|
||||
private DevComponents.DotNetBar.PanelEx btnRestoreAll;
|
||||
private System.Windows.Forms.Panel pnlCef;
|
||||
private System.Windows.Forms.Panel panel4;
|
||||
private System.Windows.Forms.Panel panel5;
|
||||
}
|
||||
}
|
||||
@@ -46,7 +46,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
this.pbLoading.BringToFront();
|
||||
this.pbLoading.Location = new Point(this.pbLoading.Location.X, 300);
|
||||
|
||||
this.ActiveControl = dgvDbProduct;
|
||||
this.ActiveControl = btnAddSpec1; // dgvDbProduct;
|
||||
this.dgvDbProduct.AddImgColumn("colSkuImg", "colSkuImgUrl");
|
||||
flowLayoutPanel1.Controls.Clear();
|
||||
flowLayoutPanel2.Controls.Clear();
|
||||
@@ -351,6 +351,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
return;
|
||||
|
||||
var newSpec1 = JsonHelper.DeserializeJsonToObject<spec_item>(JsonHelper.SerializeObject(spec));
|
||||
// 防止spec名称重复
|
||||
while (lstSkuEditItem.Any(s => s.spec.Any(sp => sp.spec_name == newSpec1.parent_name + this.addSpecIndex1)))
|
||||
this.addSpecIndex1++;
|
||||
newSpec1.spec_id = null;
|
||||
newSpec1.spec_name = newSpec1.parent_name + this.addSpecIndex1;
|
||||
AddSpec1(newSpec1);
|
||||
@@ -377,6 +380,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
newSku.price = null;
|
||||
newSku.thumb_url = null;
|
||||
newSku.thumb_url_file_id = null;
|
||||
newSku.thumb_md5 = null;
|
||||
newSku.multi_price = null;
|
||||
newSku.out_sku_sn = "";
|
||||
if (this.lstSkuEditItem.All(s => s.spec.Count == 1))
|
||||
@@ -396,6 +400,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
return;
|
||||
|
||||
var newSpec2 = JsonHelper.DeserializeJsonToObject<spec_item>(JsonHelper.SerializeObject(spec));
|
||||
// 防止spec名称重复
|
||||
while (lstSkuEditItem.Any(s => s.spec.Any(sp => sp.spec_name == newSpec2.parent_name + this.addSpecIndex1)))
|
||||
this.addSpecIndex1++;
|
||||
newSpec2.spec_id = null;
|
||||
newSpec2.spec_name = newSpec2.parent_name + this.addSpecIndex2;
|
||||
AddSpec2(newSpec2);
|
||||
@@ -698,6 +705,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
|
||||
private void btnSaveSkuLst_Click(object sender, EventArgs e)
|
||||
{
|
||||
// 焦点移动到别的控件上自动更新表格内的数值
|
||||
this.ActiveControl = btnSaveSkuLst;
|
||||
|
||||
if (this.lstSkuEditItem.Any(s => s.multi_price.ParseToDecimal() == 0 || s.price.ParseToDecimal() == 0))
|
||||
{
|
||||
BaseMsgForm.ShowError("价格不能为 0");
|
||||
@@ -708,6 +718,11 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
BaseMsgForm.ShowError("单买价低于拼单价加 1 元");
|
||||
return;
|
||||
}
|
||||
if (this.lstSkuEditItem.Any(s => s.thumb_url.IsNullOrEmpty() && s.thumb_md5.IsNullOrEmpty()))
|
||||
{
|
||||
BaseMsgForm.ShowError("sku图片不能为空");
|
||||
return;
|
||||
}
|
||||
|
||||
var url = BaseClass.BuildObjString("product/mdy_db_product");
|
||||
var data = UserLogin.GetSignaturex() +
|
||||
|
||||
@@ -53,7 +53,6 @@
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.txtNotes = new DevComponents.DotNetBar.Controls.TextBoxX();
|
||||
this.btnOk = new TemuKJD.UserControls.ButtonEx();
|
||||
this.btnTest = new DevComponents.DotNetBar.PanelEx();
|
||||
this.panel2.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
||||
@@ -62,7 +61,6 @@
|
||||
// panel2
|
||||
//
|
||||
this.panel2.BackColor = System.Drawing.Color.White;
|
||||
this.panel2.Controls.Add(this.btnTest);
|
||||
this.panel2.Controls.Add(this.btnEditDetail);
|
||||
this.panel2.Controls.Add(this.btnSelect);
|
||||
this.panel2.Controls.Add(this.buttonEx1);
|
||||
@@ -371,30 +369,6 @@
|
||||
this.btnOk.UseVisualStyleBackColor = false;
|
||||
this.btnOk.Click += new System.EventHandler(this.btnOk_Click);
|
||||
//
|
||||
// btnTest
|
||||
//
|
||||
this.btnTest.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnTest.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnTest.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnTest.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnTest.Location = new System.Drawing.Point(317, 18);
|
||||
this.btnTest.Name = "btnTest";
|
||||
this.btnTest.Size = new System.Drawing.Size(85, 26);
|
||||
this.btnTest.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.btnTest.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnTest.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnTest.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
|
||||
this.btnTest.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
|
||||
this.btnTest.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
|
||||
this.btnTest.Style.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.btnTest.Style.GradientAngle = 90;
|
||||
this.btnTest.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.btnTest.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
|
||||
this.btnTest.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
|
||||
this.btnTest.TabIndex = 654;
|
||||
this.btnTest.Text = "测试";
|
||||
this.btnTest.Click += new System.EventHandler(this.btnTest_Click);
|
||||
//
|
||||
// PDDDBProdEditForm
|
||||
//
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
|
||||
@@ -441,6 +415,5 @@
|
||||
private UserControls.ButtonEx buttonEx1;
|
||||
private UserControls.ButtonEx btnSelect;
|
||||
private DevComponents.DotNetBar.PanelEx btnEditDetail;
|
||||
private DevComponents.DotNetBar.PanelEx btnTest;
|
||||
}
|
||||
}
|
||||
@@ -234,48 +234,5 @@ namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
PDDDBProdEditDetailForm editDetailForm = new PDDDBProdEditDetailForm(this.dbProd);
|
||||
editDetailForm.ShowDialog();
|
||||
}
|
||||
|
||||
private void btnTest_Click(object sender, EventArgs e)
|
||||
{
|
||||
string text = "";
|
||||
OpenFileDialog openFileDialog = new OpenFileDialog();
|
||||
openFileDialog.Multiselect = false;
|
||||
// 设置过滤条件,只显示文本文件
|
||||
openFileDialog.Filter = "图片文件 (*.jpeg;*.jpg;*.png)|*.jpeg;*.jpg;*.png|All files (*.*)|*.*";
|
||||
// 显示对话框并获取结果
|
||||
if (openFileDialog.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
string filePath = openFileDialog.FileName;
|
||||
//using (Image image = Image.FromFile(filePath))
|
||||
//{
|
||||
// // 现在你可以使用image对象进行各种操作,比如绘制、保存等
|
||||
// //Console.WriteLine("Image loaded successfully.");
|
||||
// this.pictureBox2.Image = image;
|
||||
//}
|
||||
Image image = Image.FromFile(filePath);
|
||||
this.pictureBox2.Image = image;
|
||||
|
||||
string imgBase64 = "";
|
||||
using (MemoryStream memoryStream = new MemoryStream())
|
||||
{
|
||||
image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png);
|
||||
byte[] imageBytes = memoryStream.ToArray();
|
||||
imgBase64 = Convert.ToBase64String(imageBytes);
|
||||
//imgBase64 = Convert.ToBase64String(imageBytes, Base64FormattingOptions.InsertLineBreaks);
|
||||
}
|
||||
string img_md5 = BaseClass.GetMd5(imgBase64);
|
||||
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//Console.WriteLine("An error occurred: " + ex.Message);
|
||||
BaseMsgForm.ShowError("打开自定义图片失败 " + ex.Message);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
using AllBase;
|
||||
using AllBase.Helper;
|
||||
using AllBase.Model.Param.PDDProdParam;
|
||||
using AllBase.Model.Result;
|
||||
using AllBase.Model.Result.PDDResult;
|
||||
using NaiBa.Util.Extension;
|
||||
@@ -182,7 +183,21 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
OnInfoReceived("商品获取失败!商品详情图获取失败!" + ex.Message);
|
||||
return;
|
||||
}
|
||||
if (decoration == null)
|
||||
//if (decoration != null && decoration_json.ParseToString().Length < 20)
|
||||
//{
|
||||
// try
|
||||
// {
|
||||
// var prod_detail_decoration_rst = GetPddProdDetail(sourceShop, sourceProdId.ToString(), commitId);
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// OnInfoReceived("商品获取失败!商品详情图获取失败!" + ex.Message);
|
||||
// return;
|
||||
// }
|
||||
//}
|
||||
|
||||
|
||||
if (decoration == null || decoration_json.ParseToString().Length < 20)
|
||||
{
|
||||
OnInfoReceived("商品获取失败!商品详情图获取失败!");
|
||||
return;
|
||||
@@ -607,6 +622,68 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
private string GetPddProdOnShopDetail(ShopLoginInfo shop, string prodId, string commitId)
|
||||
{
|
||||
var anti = shop.AntiContents.LastOrDefault().ParseToString();
|
||||
if (shop.AntiContents.Count > 0)
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
string url = "https://mms.pinduoduo.com/glide/v2/mms/query/commit/on_shop/detail"; //获取详情图
|
||||
//string url = "https://mms.pinduoduo.com/glide/v2/mms/query/commit/detail";
|
||||
//string body = @"{""goods_id"":" + prodId + "}";
|
||||
string body = @"{""goods_commit_id"":""" + commitId + @""",""goods_id"":""" + prodId + @"""}";
|
||||
string refere = "https://mms.pinduoduo.com/goods/goods_add/index?id=" + commitId + "&goods_id=" + prodId + "&type=edit";
|
||||
var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
for (int i = 0; i < 5 && result.Contains("网络繁忙,请不要频繁操作"); i++)
|
||||
{
|
||||
shop.AntiContents.Remove(anti);
|
||||
anti = shop.AntiContents.FirstOrDefault().ParseToString();
|
||||
if (shop.AntiContents.Count > 0)
|
||||
{
|
||||
Thread.Sleep(Randomx.GetId(300, 500));
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存商品详情图装修列表
|
||||
/// gorse/mms/goods/decoration/commit/save
|
||||
/// </summary>
|
||||
/// <param name="shop"></param>
|
||||
/// <param name="decoration"></param>
|
||||
/// <param name="goodsId"></param>
|
||||
/// <param name="commitId"></param>
|
||||
/// <returns></returns>
|
||||
private string save_decoration(ShopLoginInfo shop, PDDProdDecorationCommitParam decoration, string goodsId, string commitId)
|
||||
{
|
||||
var anti = shop.AntiContents.LastOrDefault().ParseToString();
|
||||
if (shop.AntiContents.Count > 0)
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
string url = "https://mms.pinduoduo.com/gorse/mms/goods/decoration/commit/save";
|
||||
string body = @"{""goods_id"":" + goodsId + "}";
|
||||
body = JsonHelper.SerializeObject(decoration);
|
||||
string refere = "https://mms.pinduoduo.com/goods/goods_add/index?id=" + commitId + "&goods_id=" + goodsId + "&type=edit";
|
||||
|
||||
var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
for (int i = 0; i < 5 && result.Contains("网络繁忙,请不要频繁操作"); i++)
|
||||
{
|
||||
shop.AntiContents.Remove(anti);
|
||||
anti = shop.AntiContents.FirstOrDefault().ParseToString();
|
||||
if (shop.AntiContents.Count > 0)
|
||||
{
|
||||
Thread.Sleep(Randomx.GetId(300, 500));
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
private string GetPddProdSizeSpec(ShopLoginInfo shop, string prodId, string commitId, string sizeSpecId)
|
||||
{
|
||||
var anti = shop.AntiContents.LastOrDefault().ParseToString();
|
||||
@@ -658,6 +735,7 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
if (shop.AntiContents.Count > 0)
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
string url = "https://mms.pinduoduo.com/gorse/mms/goods/decoration/commit/query/V2";
|
||||
url = "https://mms.pinduoduo.com/gorse/mms/goods/decoration/commit/query/V2";
|
||||
string body = @"{""goods_commit_id"":" + commitId + @",""goods_id"":" + prodId + @"}";
|
||||
string refere = "https://mms.pinduoduo.com/goods/goods_add/index?id=" + commitId + "&goods_id=" + prodId + "&type=edit";
|
||||
var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
|
||||
Reference in new issue
Block a user