diff --git a/AllBase/AllBase.csproj b/AllBase/AllBase.csproj
index 95c28a4..6d0045d 100644
--- a/AllBase/AllBase.csproj
+++ b/AllBase/AllBase.csproj
@@ -197,6 +197,7 @@
+
diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs
index c35f197..9f8c483 100644
--- a/AllBase/BaseClass.cs
+++ b/AllBase/BaseClass.cs
@@ -27,7 +27,7 @@ namespace AllBase
///
/// 版本ID
///
- public static int VersionCount = 880;
+ public static int VersionCount = 883;
//public static int VersionCount = 613;
///
@@ -304,6 +304,7 @@ namespace AllBase
public static string UserName = "";
//public static bool IsSa;
public static int SaLevel = 0;
+ public static string UserAuthority = "";
public static decimal? AuthorizedAmount = null;
///
/// 注册昵称
diff --git a/AllBase/Model/Param/WXParam/WXUploadProductParam.cs b/AllBase/Model/Param/WXParam/WXUploadProductParam.cs
index 65020c2..5475825 100644
--- a/AllBase/Model/Param/WXParam/WXUploadProductParam.cs
+++ b/AllBase/Model/Param/WXParam/WXUploadProductParam.cs
@@ -274,7 +274,7 @@ namespace AllBase.Model.Param.WXParam
{
public List headImg { get; set; } = new List(); // [ "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/695c7f5f000d23e709f79176079a1715000000a000004f50" ...],
public List category { get; set; } = new List();
- public List param { get; set; } = new List();
+ public List param { get; set; } = new List();
public List productSaleAttrs { get; set; } = new List();
public List
public string notes { get; set; }
+
+ ///
+ /// 用户的功能操作权限
+ ///
+ public string authority { get; set; }
}
}
\ No newline at end of file
diff --git a/KJDService/KJD_WebService/Utils/Extension/Extension.Convert.cs b/KJDService/KJD_WebService/Utils/Extension/Extension.Convert.cs
index 0d7a9cb..b47e916 100644
--- a/KJDService/KJD_WebService/Utils/Extension/Extension.Convert.cs
+++ b/KJDService/KJD_WebService/Utils/Extension/Extension.Convert.cs
@@ -494,6 +494,25 @@ namespace NaiBa.Util.Extension
}
}
+ public static string ParseToNullableString(this object obj)
+ {
+ try
+ {
+ if (obj == null)
+ {
+ return null;
+ }
+ else
+ {
+ return obj.ToString();
+ }
+ }
+ catch
+ {
+ return null;
+ }
+ }
+
public static string ParseToStrings(this object obj, string split = ",")
{
try
diff --git a/KJDService/KJD_WebService/WXProductService.asmx.cs b/KJDService/KJD_WebService/WXProductService.asmx.cs
index 18ded60..a2c8906 100644
--- a/KJDService/KJD_WebService/WXProductService.asmx.cs
+++ b/KJDService/KJD_WebService/WXProductService.asmx.cs
@@ -83,9 +83,21 @@ namespace KJD_Web
Context.Response.Write(result);
Context.Response.End();
- }
-
-
+ }
+
+ [WebMethod]
+ public void get_pdd_prod_wx_complate_list()
+ {
+ string jsontext = GetRequestJsonString();
+
+ var result = jsontext;
+ result = new BXXProductManage().GetProdWXComplateList(jsontext);
+
+ Context.Response.Write(result);
+ Context.Response.End();
+ }
+
+
[WebMethod]
public void get_pdd_product_groups()
{
diff --git a/TEMUKJD/KJD.csproj b/TEMUKJD/KJD.csproj
index af7c2d0..d3cef0a 100644
--- a/TEMUKJD/KJD.csproj
+++ b/TEMUKJD/KJD.csproj
@@ -161,6 +161,7 @@
ImgToolForm.cs
+
Form
@@ -191,6 +192,12 @@
WXAdminShopLoginForm.cs
+
+ Form
+
+
+ WXProdComplateForm.cs
+
Form
@@ -275,7 +282,6 @@
WXSubAccountShopEditForm.cs
-
UserControl
@@ -1096,6 +1102,9 @@
ImgToolForm.cs
+
+ DataGridViewEx.cs
+
WXAdminShopListForm.cs
@@ -1111,6 +1120,9 @@
WXAdminShopLoginForm.cs
+
+ WXProdComplateForm.cs
+
WXDBProdUploadCacheForm.cs
diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs
index 8951689..f496c40 100644
--- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs
+++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs
@@ -63,24 +63,22 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.label8 = new System.Windows.Forms.Label();
this.txtReplaceText = new System.Windows.Forms.TextBox();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+ this.label16 = new System.Windows.Forms.Label();
this.txtSecretStyleCode = new System.Windows.Forms.TextBox();
this.label15 = new System.Windows.Forms.Label();
- this.cmbCat1 = new System.Windows.Forms.ComboBox();
this.label13 = new System.Windows.Forms.Label();
this.cmbSourceType = new System.Windows.Forms.ComboBox();
this.label10 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.txtSPU = new System.Windows.Forms.TextBox();
this.cmbWxCat = new System.Windows.Forms.ComboBox();
- this.label2 = new System.Windows.Forms.Label();
+ this.txtSKC = new System.Windows.Forms.TextBox();
this.cmbSort = new System.Windows.Forms.ComboBox();
this.label6 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label12 = new System.Windows.Forms.Label();
this.txtExtCode = new System.Windows.Forms.TextBox();
this.btnSearch = new DevComponents.DotNetBar.PanelEx();
- this.lblNotes = new System.Windows.Forms.Label();
- this.txtNotes = new System.Windows.Forms.TextBox();
this.lblGroup = new System.Windows.Forms.Label();
this.cmbGroupFilter = new System.Windows.Forms.ComboBox();
this.pnlEmpty = new DevComponents.DotNetBar.PanelEx();
@@ -89,6 +87,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.txtProdName = new System.Windows.Forms.TextBox();
this.cmbWxSafe = new System.Windows.Forms.ComboBox();
this.lblWxSafe = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.cmbCat1 = new System.Windows.Forms.ComboBox();
+ this.lblNotes = new System.Windows.Forms.Label();
+ this.txtNotes = new System.Windows.Forms.TextBox();
this.btnExportTxt = new DevComponents.DotNetBar.PanelEx();
this.btnDelSelect = new DevComponents.DotNetBar.PanelEx();
this.cmbGroup = new System.Windows.Forms.ComboBox();
@@ -108,8 +110,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnEditExtCodePriceOK = new DevComponents.DotNetBar.PanelEx();
this.lblExtCodePrice = new System.Windows.Forms.Label();
this.pbLoading = new System.Windows.Forms.PictureBox();
- this.txtSKC = new System.Windows.Forms.TextBox();
- this.label1 = new System.Windows.Forms.Label();
this.btnSelect = new DevComponents.DotNetBar.PanelEx();
this.label11 = new System.Windows.Forms.Label();
this.dgvDbProduct = new TemuKJD.UserComponent.DataGridViewEx();
@@ -199,7 +199,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
this.splitContainer1.Size = new System.Drawing.Size(1438, 686);
- this.splitContainer1.SplitterDistance = 76;
+ this.splitContainer1.SplitterDistance = 110;
this.splitContainer1.TabIndex = 1;
//
// btnStopStop
@@ -208,7 +208,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnStopStop.CanvasColor = System.Drawing.SystemColors.Control;
this.btnStopStop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnStopStop.DisabledBackColor = System.Drawing.Color.Empty;
- this.btnStopStop.Location = new System.Drawing.Point(668, 9);
+ this.btnStopStop.Location = new System.Drawing.Point(672, 23);
this.btnStopStop.Name = "btnStopStop";
this.btnStopStop.Size = new System.Drawing.Size(76, 25);
this.btnStopStop.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -234,7 +234,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnPull.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnPull.DisabledBackColor = System.Drawing.Color.Empty;
this.btnPull.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnPull.Location = new System.Drawing.Point(806, 43);
+ this.btnPull.Location = new System.Drawing.Point(810, 57);
this.btnPull.Name = "btnPull";
this.btnPull.Size = new System.Drawing.Size(34, 25);
this.btnPull.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -259,7 +259,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnPushToOutServer.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnPushToOutServer.DisabledBackColor = System.Drawing.Color.Empty;
this.btnPushToOutServer.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnPushToOutServer.Location = new System.Drawing.Point(746, 43);
+ this.btnPushToOutServer.Location = new System.Drawing.Point(750, 57);
this.btnPushToOutServer.Name = "btnPushToOutServer";
this.btnPushToOutServer.Size = new System.Drawing.Size(58, 25);
this.btnPushToOutServer.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -284,7 +284,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnGetProdWxCate.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnGetProdWxCate.DisabledBackColor = System.Drawing.Color.Empty;
this.btnGetProdWxCate.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnGetProdWxCate.Location = new System.Drawing.Point(746, 9);
+ this.btnGetProdWxCate.Location = new System.Drawing.Point(750, 23);
this.btnGetProdWxCate.Name = "btnGetProdWxCate";
this.btnGetProdWxCate.Size = new System.Drawing.Size(94, 25);
this.btnGetProdWxCate.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -311,7 +311,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"安全商品",
"违规商品",
"未校验"});
- this.cmbSetWxSafe.Location = new System.Drawing.Point(861, 43);
+ this.cmbSetWxSafe.Location = new System.Drawing.Point(865, 57);
this.cmbSetWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSetWxSafe.Name = "cmbSetWxSafe";
this.cmbSetWxSafe.Size = new System.Drawing.Size(85, 25);
@@ -324,7 +324,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSetWxSafe.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSetWxSafe.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSetWxSafe.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnSetWxSafe.Location = new System.Drawing.Point(948, 43);
+ this.btnSetWxSafe.Location = new System.Drawing.Point(952, 57);
this.btnSetWxSafe.Name = "btnSetWxSafe";
this.btnSetWxSafe.Size = new System.Drawing.Size(84, 25);
this.btnSetWxSafe.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -349,7 +349,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnImport.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnImport.DisabledBackColor = System.Drawing.Color.Empty;
this.btnImport.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnImport.Location = new System.Drawing.Point(1048, 43);
+ this.btnImport.Location = new System.Drawing.Point(1058, 57);
this.btnImport.Name = "btnImport";
this.btnImport.Size = new System.Drawing.Size(84, 25);
this.btnImport.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -373,7 +373,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.chkHighestPriceSku.AutoSize = true;
this.chkHighestPriceSku.Checked = true;
this.chkHighestPriceSku.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkHighestPriceSku.Location = new System.Drawing.Point(1235, 53);
+ this.chkHighestPriceSku.Location = new System.Drawing.Point(1258, 73);
this.chkHighestPriceSku.Name = "chkHighestPriceSku";
this.chkHighestPriceSku.Size = new System.Drawing.Size(119, 21);
this.chkHighestPriceSku.TabIndex = 728;
@@ -386,7 +386,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.chkSameSpecPrice.AutoSize = true;
this.chkSameSpecPrice.Checked = true;
this.chkSameSpecPrice.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkSameSpecPrice.Location = new System.Drawing.Point(1141, 53);
+ this.chkSameSpecPrice.Location = new System.Drawing.Point(1163, 73);
this.chkSameSpecPrice.Name = "chkSameSpecPrice";
this.chkSameSpecPrice.Size = new System.Drawing.Size(99, 21);
this.chkSameSpecPrice.TabIndex = 718;
@@ -397,7 +397,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label9.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label9.AutoSize = true;
- this.label9.Location = new System.Drawing.Point(1268, 32);
+ this.label9.Location = new System.Drawing.Point(1290, 48);
this.label9.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(76, 17);
@@ -407,7 +407,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtMinPrice
//
this.txtMinPrice.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.txtMinPrice.Location = new System.Drawing.Point(1235, 29);
+ this.txtMinPrice.Location = new System.Drawing.Point(1257, 45);
this.txtMinPrice.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtMinPrice.Name = "txtMinPrice";
this.txtMinPrice.Size = new System.Drawing.Size(33, 23);
@@ -418,7 +418,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label8.AutoSize = true;
- this.label8.Location = new System.Drawing.Point(1138, 32);
+ this.label8.Location = new System.Drawing.Point(1160, 48);
this.label8.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(104, 17);
@@ -428,7 +428,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtReplaceText
//
this.txtReplaceText.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.txtReplaceText.Location = new System.Drawing.Point(1235, 5);
+ this.txtReplaceText.Location = new System.Drawing.Point(1257, 16);
this.txtReplaceText.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtReplaceText.Name = "txtReplaceText";
this.txtReplaceText.Size = new System.Drawing.Size(104, 23);
@@ -454,24 +454,22 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 16.66666F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+ this.tableLayoutPanel1.Controls.Add(this.label16, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.txtSecretStyleCode, 5, 0);
this.tableLayoutPanel1.Controls.Add(this.label15, 4, 0);
- this.tableLayoutPanel1.Controls.Add(this.cmbCat1, 3, 0);
this.tableLayoutPanel1.Controls.Add(this.label13, 10, 1);
this.tableLayoutPanel1.Controls.Add(this.cmbSourceType, 5, 1);
this.tableLayoutPanel1.Controls.Add(this.label10, 4, 1);
this.tableLayoutPanel1.Controls.Add(this.label5, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.txtSPU, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.cmbWxCat, 11, 0);
- this.tableLayoutPanel1.Controls.Add(this.label2, 2, 0);
+ this.tableLayoutPanel1.Controls.Add(this.txtSKC, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.cmbSort, 7, 1);
this.tableLayoutPanel1.Controls.Add(this.label6, 6, 1);
this.tableLayoutPanel1.Controls.Add(this.label4, 6, 0);
this.tableLayoutPanel1.Controls.Add(this.label12, 10, 0);
this.tableLayoutPanel1.Controls.Add(this.txtExtCode, 7, 0);
this.tableLayoutPanel1.Controls.Add(this.btnSearch, 12, 0);
- this.tableLayoutPanel1.Controls.Add(this.lblNotes, 0, 1);
- this.tableLayoutPanel1.Controls.Add(this.txtNotes, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.lblGroup, 2, 1);
this.tableLayoutPanel1.Controls.Add(this.cmbGroupFilter, 3, 1);
this.tableLayoutPanel1.Controls.Add(this.pnlEmpty, 12, 1);
@@ -480,44 +478,50 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.tableLayoutPanel1.Controls.Add(this.txtProdName, 9, 0);
this.tableLayoutPanel1.Controls.Add(this.cmbWxSafe, 9, 1);
this.tableLayoutPanel1.Controls.Add(this.lblWxSafe, 8, 1);
+ this.tableLayoutPanel1.Controls.Add(this.label2, 0, 2);
+ this.tableLayoutPanel1.Controls.Add(this.cmbCat1, 1, 2);
+ this.tableLayoutPanel1.Controls.Add(this.lblNotes, 2, 0);
+ this.tableLayoutPanel1.Controls.Add(this.txtNotes, 3, 0);
this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 4);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
- this.tableLayoutPanel1.RowCount = 2;
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.Size = new System.Drawing.Size(650, 71);
+ this.tableLayoutPanel1.RowCount = 3;
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33444F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33445F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33112F));
+ this.tableLayoutPanel1.Size = new System.Drawing.Size(650, 105);
this.tableLayoutPanel1.TabIndex = 679;
//
+ // label16
+ //
+ this.label16.Anchor = System.Windows.Forms.AnchorStyles.Right;
+ this.label16.AutoSize = true;
+ this.label16.Location = new System.Drawing.Point(3, 44);
+ this.label16.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
+ this.label16.Name = "label16";
+ this.label16.Size = new System.Drawing.Size(69, 17);
+ this.label16.TabIndex = 812;
+ this.label16.Text = "coid/skc:";
+ //
// txtSecretStyleCode
//
this.txtSecretStyleCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtSecretStyleCode.Location = new System.Drawing.Point(243, 6);
+ this.txtSecretStyleCode.Location = new System.Drawing.Point(246, 6);
this.txtSecretStyleCode.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtSecretStyleCode.Name = "txtSecretStyleCode";
- this.txtSecretStyleCode.Size = new System.Drawing.Size(38, 23);
+ this.txtSecretStyleCode.Size = new System.Drawing.Size(37, 23);
this.txtSecretStyleCode.TabIndex = 812;
//
// label15
//
this.label15.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label15.AutoSize = true;
- this.label15.Location = new System.Drawing.Point(199, 9);
+ this.label15.Location = new System.Drawing.Point(202, 9);
this.label15.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(44, 17);
this.label15.TabIndex = 811;
this.label15.Text = "编码:";
//
- // cmbCat1
- //
- this.cmbCat1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.cmbCat1.FormattingEnabled = true;
- this.cmbCat1.Location = new System.Drawing.Point(155, 7);
- this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.cmbCat1.Name = "cmbCat1";
- this.cmbCat1.Size = new System.Drawing.Size(38, 25);
- this.cmbCat1.TabIndex = 805;
- //
// label13
//
this.label13.Anchor = System.Windows.Forms.AnchorStyles.Right;
@@ -540,17 +544,17 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"机会商品",
"以图搜品",
"外部数据"});
- this.cmbSourceType.Location = new System.Drawing.Point(243, 43);
+ this.cmbSourceType.Location = new System.Drawing.Point(246, 42);
this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSourceType.Name = "cmbSourceType";
- this.cmbSourceType.Size = new System.Drawing.Size(38, 25);
+ this.cmbSourceType.Size = new System.Drawing.Size(37, 25);
this.cmbSourceType.TabIndex = 654;
//
// label10
//
this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label10.AutoSize = true;
- this.label10.Location = new System.Drawing.Point(199, 44);
+ this.label10.Location = new System.Drawing.Point(202, 44);
this.label10.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(44, 17);
@@ -571,10 +575,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtSPU
//
this.txtSPU.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtSPU.Location = new System.Drawing.Point(60, 6);
+ this.txtSPU.Location = new System.Drawing.Point(72, 6);
this.txtSPU.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtSPU.Name = "txtSPU";
- this.txtSPU.Size = new System.Drawing.Size(38, 23);
+ this.txtSPU.Size = new System.Drawing.Size(37, 23);
this.txtSPU.TabIndex = 434;
//
// cmbWxCat
@@ -588,19 +592,17 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.cmbWxCat.Location = new System.Drawing.Point(555, 7);
this.cmbWxCat.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxCat.Name = "cmbWxCat";
- this.cmbWxCat.Size = new System.Drawing.Size(38, 25);
+ this.cmbWxCat.Size = new System.Drawing.Size(37, 25);
this.cmbWxCat.TabIndex = 802;
//
- // label2
+ // txtSKC
//
- this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(104, 9);
- this.label2.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(51, 17);
- this.label2.TabIndex = 426;
- this.label2.Text = "类目1:";
+ this.txtSKC.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtSKC.Location = new System.Drawing.Point(72, 41);
+ this.txtSKC.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
+ this.txtSKC.Name = "txtSKC";
+ this.txtSKC.Size = new System.Drawing.Size(37, 23);
+ this.txtSKC.TabIndex = 432;
//
// cmbSort
//
@@ -609,10 +611,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.cmbSort.Items.AddRange(new object[] {
"入库时间",
"认领总数"});
- this.cmbSort.Location = new System.Drawing.Point(331, 43);
+ this.cmbSort.Location = new System.Drawing.Point(333, 42);
this.cmbSort.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSort.Name = "cmbSort";
- this.cmbSort.Size = new System.Drawing.Size(38, 25);
+ this.cmbSort.Size = new System.Drawing.Size(37, 25);
this.cmbSort.TabIndex = 448;
this.cmbSort.Text = "入库时间";
//
@@ -620,7 +622,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label6.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label6.AutoSize = true;
- this.label6.Location = new System.Drawing.Point(287, 44);
+ this.label6.Location = new System.Drawing.Point(289, 44);
this.label6.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(44, 17);
@@ -631,7 +633,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label4.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label4.AutoSize = true;
- this.label4.Location = new System.Drawing.Point(287, 9);
+ this.label4.Location = new System.Drawing.Point(289, 9);
this.label4.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(44, 17);
@@ -652,10 +654,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtExtCode
//
this.txtExtCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtExtCode.Location = new System.Drawing.Point(331, 6);
+ this.txtExtCode.Location = new System.Drawing.Point(333, 6);
this.txtExtCode.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtExtCode.Name = "txtExtCode";
- this.txtExtCode.Size = new System.Drawing.Size(38, 23);
+ this.txtExtCode.Size = new System.Drawing.Size(37, 23);
this.txtExtCode.TabIndex = 429;
//
// btnSearch
@@ -665,7 +667,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSearch.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSearch.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnSearch.Location = new System.Drawing.Point(599, 5);
+ this.btnSearch.Location = new System.Drawing.Point(598, 5);
this.btnSearch.Name = "btnSearch";
this.btnSearch.Size = new System.Drawing.Size(46, 25);
this.btnSearch.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -683,31 +685,11 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSearch.Text = "搜索";
this.btnSearch.Click += new System.EventHandler(this.btnSearch_Click);
//
- // lblNotes
- //
- this.lblNotes.Anchor = System.Windows.Forms.AnchorStyles.Right;
- this.lblNotes.AutoSize = true;
- this.lblNotes.Location = new System.Drawing.Point(16, 44);
- this.lblNotes.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
- this.lblNotes.Name = "lblNotes";
- this.lblNotes.Size = new System.Drawing.Size(44, 17);
- this.lblNotes.TabIndex = 440;
- this.lblNotes.Text = "备注:";
- //
- // txtNotes
- //
- this.txtNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtNotes.Location = new System.Drawing.Point(60, 41);
- this.txtNotes.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.txtNotes.Name = "txtNotes";
- this.txtNotes.Size = new System.Drawing.Size(38, 23);
- this.txtNotes.TabIndex = 439;
- //
// lblGroup
//
this.lblGroup.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblGroup.AutoSize = true;
- this.lblGroup.Location = new System.Drawing.Point(111, 44);
+ this.lblGroup.Location = new System.Drawing.Point(115, 44);
this.lblGroup.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblGroup.Name = "lblGroup";
this.lblGroup.Size = new System.Drawing.Size(44, 17);
@@ -718,10 +700,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbGroupFilter.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbGroupFilter.FormattingEnabled = true;
- this.cmbGroupFilter.Location = new System.Drawing.Point(155, 43);
+ this.cmbGroupFilter.Location = new System.Drawing.Point(159, 42);
this.cmbGroupFilter.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbGroupFilter.Name = "cmbGroupFilter";
- this.cmbGroupFilter.Size = new System.Drawing.Size(38, 25);
+ this.cmbGroupFilter.Size = new System.Drawing.Size(37, 25);
this.cmbGroupFilter.TabIndex = 653;
//
// pnlEmpty
@@ -730,7 +712,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.pnlEmpty.CanvasColor = System.Drawing.SystemColors.Control;
this.pnlEmpty.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.pnlEmpty.DisabledBackColor = System.Drawing.Color.Empty;
- this.pnlEmpty.Location = new System.Drawing.Point(599, 40);
+ this.pnlEmpty.Location = new System.Drawing.Point(598, 40);
this.pnlEmpty.Name = "pnlEmpty";
this.pnlEmpty.Size = new System.Drawing.Size(46, 25);
this.pnlEmpty.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -758,17 +740,17 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"是",
"否",
"导出未拉回"});
- this.cmbExportToOutServer.Location = new System.Drawing.Point(555, 43);
+ this.cmbExportToOutServer.Location = new System.Drawing.Point(555, 42);
this.cmbExportToOutServer.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbExportToOutServer.Name = "cmbExportToOutServer";
- this.cmbExportToOutServer.Size = new System.Drawing.Size(38, 25);
+ this.cmbExportToOutServer.Size = new System.Drawing.Size(37, 25);
this.cmbExportToOutServer.TabIndex = 803;
//
// label3
//
this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(375, 9);
+ this.label3.Location = new System.Drawing.Point(376, 9);
this.label3.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(68, 17);
@@ -778,10 +760,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtProdName
//
this.txtProdName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtProdName.Location = new System.Drawing.Point(443, 6);
+ this.txtProdName.Location = new System.Drawing.Point(444, 6);
this.txtProdName.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtProdName.Name = "txtProdName";
- this.txtProdName.Size = new System.Drawing.Size(38, 23);
+ this.txtProdName.Size = new System.Drawing.Size(37, 23);
this.txtProdName.TabIndex = 427;
//
// cmbWxSafe
@@ -794,10 +776,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"安全商品",
"违规商品",
"未校验"});
- this.cmbWxSafe.Location = new System.Drawing.Point(443, 43);
+ this.cmbWxSafe.Location = new System.Drawing.Point(444, 42);
this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxSafe.Name = "cmbWxSafe";
- this.cmbWxSafe.Size = new System.Drawing.Size(38, 25);
+ this.cmbWxSafe.Size = new System.Drawing.Size(37, 25);
this.cmbWxSafe.TabIndex = 676;
this.cmbWxSafe.Text = "安全+未校验";
//
@@ -805,13 +787,54 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.lblWxSafe.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.lblWxSafe.AutoSize = true;
- this.lblWxSafe.Location = new System.Drawing.Point(375, 44);
+ this.lblWxSafe.Location = new System.Drawing.Point(376, 44);
this.lblWxSafe.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblWxSafe.Name = "lblWxSafe";
this.lblWxSafe.Size = new System.Drawing.Size(68, 17);
this.lblWxSafe.TabIndex = 651;
this.lblWxSafe.Text = "微信安检:";
//
+ // label2
+ //
+ this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(3, 79);
+ this.label2.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(51, 17);
+ this.label2.TabIndex = 426;
+ this.label2.Text = "类目1:";
+ //
+ // cmbCat1
+ //
+ this.cmbCat1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+ this.cmbCat1.FormattingEnabled = true;
+ this.cmbCat1.Location = new System.Drawing.Point(72, 77);
+ this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
+ this.cmbCat1.Name = "cmbCat1";
+ this.cmbCat1.Size = new System.Drawing.Size(37, 25);
+ this.cmbCat1.TabIndex = 805;
+ //
+ // lblNotes
+ //
+ this.lblNotes.Anchor = System.Windows.Forms.AnchorStyles.Right;
+ this.lblNotes.AutoSize = true;
+ this.lblNotes.Location = new System.Drawing.Point(115, 9);
+ this.lblNotes.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
+ this.lblNotes.Name = "lblNotes";
+ this.lblNotes.Size = new System.Drawing.Size(44, 17);
+ this.lblNotes.TabIndex = 440;
+ this.lblNotes.Text = "备注:";
+ //
+ // txtNotes
+ //
+ this.txtNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtNotes.Location = new System.Drawing.Point(159, 6);
+ this.txtNotes.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
+ this.txtNotes.Name = "txtNotes";
+ this.txtNotes.Size = new System.Drawing.Size(37, 23);
+ this.txtNotes.TabIndex = 439;
+ //
// btnExportTxt
//
this.btnExportTxt.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
@@ -819,9 +842,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnExportTxt.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnExportTxt.DisabledBackColor = System.Drawing.Color.Empty;
this.btnExportTxt.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnExportTxt.Location = new System.Drawing.Point(1344, 26);
+ this.btnExportTxt.Location = new System.Drawing.Point(1366, 43);
this.btnExportTxt.Name = "btnExportTxt";
- this.btnExportTxt.Size = new System.Drawing.Size(89, 25);
+ this.btnExportTxt.Size = new System.Drawing.Size(67, 25);
this.btnExportTxt.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnExportTxt.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnExportTxt.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
@@ -844,7 +867,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnDelSelect.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnDelSelect.DisabledBackColor = System.Drawing.Color.Empty;
this.btnDelSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnDelSelect.Location = new System.Drawing.Point(1048, 9);
+ this.btnDelSelect.Location = new System.Drawing.Point(1058, 23);
this.btnDelSelect.Name = "btnDelSelect";
this.btnDelSelect.Size = new System.Drawing.Size(84, 25);
this.btnDelSelect.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -866,7 +889,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbGroup.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.cmbGroup.FormattingEnabled = true;
- this.cmbGroup.Location = new System.Drawing.Point(861, 9);
+ this.cmbGroup.Location = new System.Drawing.Point(865, 23);
this.cmbGroup.Name = "cmbGroup";
this.cmbGroup.Size = new System.Drawing.Size(85, 25);
this.cmbGroup.TabIndex = 640;
@@ -878,7 +901,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSetGroup.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSetGroup.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSetGroup.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnSetGroup.Location = new System.Drawing.Point(948, 9);
+ this.btnSetGroup.Location = new System.Drawing.Point(952, 23);
this.btnSetGroup.Name = "btnSetGroup";
this.btnSetGroup.Size = new System.Drawing.Size(84, 25);
this.btnSetGroup.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -900,7 +923,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label7.AutoSize = true;
- this.label7.Location = new System.Drawing.Point(1138, 8);
+ this.label7.Location = new System.Drawing.Point(1160, 19);
this.label7.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(104, 17);
@@ -913,7 +936,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.chkPullAfterPush.AutoSize = true;
this.chkPullAfterPush.Checked = true;
this.chkPullAfterPush.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkPullAfterPush.Location = new System.Drawing.Point(668, 45);
+ this.chkPullAfterPush.Location = new System.Drawing.Point(672, 59);
this.chkPullAfterPush.Name = "chkPullAfterPush";
this.chkPullAfterPush.Size = new System.Drawing.Size(87, 21);
this.chkPullAfterPush.TabIndex = 874;
@@ -936,8 +959,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.splitContainer2.Panel1.Controls.Add(this.label14);
this.splitContainer2.Panel1.Controls.Add(this.pnlEditExtCodePrice);
this.splitContainer2.Panel1.Controls.Add(this.pbLoading);
- this.splitContainer2.Panel1.Controls.Add(this.txtSKC);
- this.splitContainer2.Panel1.Controls.Add(this.label1);
this.splitContainer2.Panel1.Controls.Add(this.btnSelect);
this.splitContainer2.Panel1.Controls.Add(this.label11);
this.splitContainer2.Panel1.Controls.Add(this.dgvDbProduct);
@@ -947,8 +968,8 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.splitContainer2.Panel2.Controls.Add(this.ucSplitPage1);
this.splitContainer2.Panel2.Controls.Add(this.statusBar);
- this.splitContainer2.Size = new System.Drawing.Size(1438, 606);
- this.splitContainer2.SplitterDistance = 577;
+ this.splitContainer2.Size = new System.Drawing.Size(1438, 572);
+ this.splitContainer2.SplitterDistance = 543;
this.splitContainer2.TabIndex = 0;
//
// cmbSpProdType
@@ -959,10 +980,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"",
"普通商品",
"书籍"});
- this.cmbSpProdType.Location = new System.Drawing.Point(87, 134);
+ this.cmbSpProdType.Location = new System.Drawing.Point(82, 75);
this.cmbSpProdType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSpProdType.Name = "cmbSpProdType";
- this.cmbSpProdType.Size = new System.Drawing.Size(27, 25);
+ this.cmbSpProdType.Size = new System.Drawing.Size(37, 25);
this.cmbSpProdType.TabIndex = 677;
this.cmbSpProdType.Visible = false;
//
@@ -970,7 +991,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbCat2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat2.FormattingEnabled = true;
- this.cmbCat2.Location = new System.Drawing.Point(82, 173);
+ this.cmbCat2.Location = new System.Drawing.Point(82, 114);
this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat2.Name = "cmbCat2";
this.cmbCat2.Size = new System.Drawing.Size(37, 25);
@@ -1006,7 +1027,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label14.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label14.AutoSize = true;
- this.label14.Location = new System.Drawing.Point(31, 177);
+ this.label14.Location = new System.Drawing.Point(31, 118);
this.label14.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(51, 17);
@@ -1021,7 +1042,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.pnlEditExtCodePrice.Controls.Add(this.lblExtCode);
this.pnlEditExtCodePrice.Controls.Add(this.panel2);
this.pnlEditExtCodePrice.Controls.Add(this.lblExtCodePrice);
- this.pnlEditExtCodePrice.Location = new System.Drawing.Point(482, 84);
+ this.pnlEditExtCodePrice.Location = new System.Drawing.Point(482, 73);
this.pnlEditExtCodePrice.Name = "pnlEditExtCodePrice";
this.pnlEditExtCodePrice.Size = new System.Drawing.Size(474, 146);
this.pnlEditExtCodePrice.TabIndex = 434;
@@ -1116,31 +1137,13 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None;
this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue;
- this.pbLoading.Location = new System.Drawing.Point(694, 263);
+ this.pbLoading.Location = new System.Drawing.Point(694, 246);
this.pbLoading.Name = "pbLoading";
this.pbLoading.Size = new System.Drawing.Size(50, 50);
this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pbLoading.TabIndex = 7;
this.pbLoading.TabStop = false;
//
- // txtSKC
- //
- this.txtSKC.Location = new System.Drawing.Point(48, 64);
- this.txtSKC.Name = "txtSKC";
- this.txtSKC.Size = new System.Drawing.Size(90, 23);
- this.txtSKC.TabIndex = 432;
- this.txtSKC.Visible = false;
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(15, 67);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(43, 17);
- this.label1.TabIndex = 433;
- this.label1.Text = "SKC:";
- this.label1.Visible = false;
- //
// btnSelect
//
this.btnSelect.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
@@ -1169,7 +1172,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label11.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label11.AutoSize = true;
- this.label11.Location = new System.Drawing.Point(26, 138);
+ this.label11.Location = new System.Drawing.Point(14, 79);
this.label11.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(68, 17);
@@ -1235,7 +1238,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.dgvDbProduct.Name = "dgvDbProduct";
this.dgvDbProduct.ReadOnly = true;
this.dgvDbProduct.RowTemplate.Height = 23;
- this.dgvDbProduct.Size = new System.Drawing.Size(1430, 577);
+ this.dgvDbProduct.Size = new System.Drawing.Size(1430, 543);
this.dgvDbProduct.TabIndex = 6;
this.dgvDbProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellContentClick);
this.dgvDbProduct.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvDbProduct_Scroll);
@@ -1548,11 +1551,14 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.Controls.Add(this.splitContainer1);
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")));
+ this.KeyPreview = true;
this.Name = "PDDDBProdListForm";
this.Text = "产品数据库";
this.TitleText = "产品数据库";
this.Load += new System.EventHandler(this.ProductListForm_Load);
this.VisibleChanged += new System.EventHandler(this.ProductListForm_VisibleChanged);
+ this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.PDDDBProdListForm_KeyDown);
+ this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.PDDDBProdListForm_KeyUp);
this.Controls.SetChildIndex(this.splitContainer1, 0);
this.splitContainer1.Panel1.ResumeLayout(false);
this.splitContainer1.Panel1.PerformLayout();
@@ -1585,7 +1591,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
private System.Windows.Forms.TextBox txtSPU;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox txtSKC;
- private System.Windows.Forms.Label label1;
private DevComponents.DotNetBar.PanelEx pnlEmpty;
private System.Windows.Forms.TextBox txtExtCode;
private System.Windows.Forms.Label label4;
@@ -1678,5 +1683,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
private System.Windows.Forms.DataGridViewLinkColumn col_edit;
private System.Windows.Forms.DataGridViewLinkColumn col_delete;
private System.Windows.Forms.DataGridViewLinkColumn col_select_product;
+ private System.Windows.Forms.Label label16;
}
}
\ No newline at end of file
diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs
index 249cf33..5d54121 100644
--- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs
+++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs
@@ -491,6 +491,36 @@ namespace TemuKJD.PDDForms.ProductSelectForms
break;
case "":
dgvDbProduct.Rows[e.RowIndex].Cells["colSelect"].Value = !(bool)dgvDbProduct.Rows[e.RowIndex].Cells["colSelect"].Value;
+ rowIndex1 = rowIndex2;
+ rowIndex2 = e.RowIndex;
+ if (IsShiftDown)
+ {
+ if (rowIndex1 > -1 && rowIndex2 > -1)
+ {
+ try
+ {
+ if (rowIndex1 > rowIndex2)
+ {
+ for (int i = rowIndex2; i <= rowIndex1; i++)
+ {
+ dgvDbProduct.Rows[i].Cells["colSelect"].Value = dgvDbProduct.Rows[rowIndex1].Cells["colSelect"].Value;
+ }
+ }
+ else
+ {
+ for (int i = rowIndex1; i <= rowIndex2; i++)
+ {
+ dgvDbProduct.Rows[i].Cells["colSelect"].Value = dgvDbProduct.Rows[rowIndex1].Cells["colSelect"].Value;
+ }
+ }
+ }
+ catch
+ {
+ }
+ //rowIndex1 = -1;
+ //rowIndex2 = -1;
+ }
+ }
break;
default:
break;
@@ -1642,5 +1672,36 @@ namespace TemuKJD.PDDForms.ProductSelectForms
}));
});
}
+
+ int rowIndex1 = -1;
+ int rowIndex2 = -1;
+ bool IsShiftDown = false;
+ private void PDDDBProdListForm_KeyDown(object sender, KeyEventArgs e)
+ {
+ switch (e.KeyCode)
+ {
+ case Keys.Shift:
+ case Keys.ShiftKey:
+ case Keys.LShiftKey:
+ case Keys.RShiftKey:
+ IsShiftDown = true;
+ break;
+ }
+ }
+
+ private void PDDDBProdListForm_KeyUp(object sender, KeyEventArgs e)
+ {
+ switch (e.KeyCode)
+ {
+ case Keys.Shift:
+ case Keys.ShiftKey:
+ case Keys.LShiftKey:
+ case Keys.RShiftKey:
+ IsShiftDown = false;
+ rowIndex1 = -1;
+ rowIndex2 = -1;
+ break;
+ }
+ }
}
}
diff --git a/TEMUKJD/UserComponent/DataGridViewEx.resx b/TEMUKJD/UserComponent/DataGridViewEx.resx
new file mode 100644
index 0000000..e5858cc
--- /dev/null
+++ b/TEMUKJD/UserComponent/DataGridViewEx.resx
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ False
+
+
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs
index 3d2d6f9..524255c 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs
@@ -29,10 +29,13 @@ namespace TemuKJD.WXForms.AdminForms
///
private void InitializeComponent()
{
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+ this.components = new System.ComponentModel.Container();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer5 = new System.Windows.Forms.SplitContainer();
+ this.label7 = new System.Windows.Forms.Label();
+ this.chkWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.cmbSaLevel = new System.Windows.Forms.ComboBox();
this.label6 = new System.Windows.Forms.Label();
this.lblWatermark = new System.Windows.Forms.Label();
@@ -74,6 +77,7 @@ namespace TemuKJD.WXForms.AdminForms
this.shopCountColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSaLevel = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSaLevelName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colAuthority = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.editColumn = new System.Windows.Forms.DataGridViewLinkColumn();
this.deleteColumn = new System.Windows.Forms.DataGridViewLinkColumn();
((System.ComponentModel.ISupportInitialize)(this.splitContainer5)).BeginInit();
@@ -96,6 +100,9 @@ namespace TemuKJD.WXForms.AdminForms
//
// splitContainer5.Panel1
//
+ this.splitContainer5.Panel1.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.splitContainer5.Panel1.Controls.Add(this.label7);
+ this.splitContainer5.Panel1.Controls.Add(this.chkWXComplateProd);
this.splitContainer5.Panel1.Controls.Add(this.cmbSaLevel);
this.splitContainer5.Panel1.Controls.Add(this.label6);
this.splitContainer5.Panel1.Controls.Add(this.lblWatermark);
@@ -131,11 +138,30 @@ namespace TemuKJD.WXForms.AdminForms
//
this.splitContainer5.Panel2.Controls.Add(this.splitContainer1);
this.splitContainer5.Panel2.Padding = new System.Windows.Forms.Padding(0, 5, 5, 5);
- this.splitContainer5.Size = new System.Drawing.Size(800, 527);
+ this.splitContainer5.Size = new System.Drawing.Size(1376, 527);
this.splitContainer5.SplitterDistance = 357;
this.splitContainer5.SplitterWidth = 1;
this.splitContainer5.TabIndex = 3;
//
+ // label7
+ //
+ this.label7.AutoSize = true;
+ this.label7.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.label7.Location = new System.Drawing.Point(55, 395);
+ this.label7.Name = "label7";
+ this.label7.Size = new System.Drawing.Size(51, 20);
+ this.label7.TabIndex = 809;
+ this.label7.Text = "权限:";
+ //
+ // chkWXComplateProd
+ //
+ this.chkWXComplateProd.Location = new System.Drawing.Point(112, 395);
+ this.chkWXComplateProd.Name = "chkWXComplateProd";
+ this.chkWXComplateProd.Size = new System.Drawing.Size(87, 21);
+ this.chkWXComplateProd.TabIndex = 808;
+ this.chkWXComplateProd.Text = "微信回采";
+ this.chkWXComplateProd.UseVisualStyleBackColor = true;
+ //
// cmbSaLevel
//
this.cmbSaLevel.FormattingEnabled = true;
@@ -143,7 +169,7 @@ namespace TemuKJD.WXForms.AdminForms
"普通用户",
"一级超管",
"二级超管"});
- this.cmbSaLevel.Location = new System.Drawing.Point(112, 388);
+ this.cmbSaLevel.Location = new System.Drawing.Point(112, 356);
this.cmbSaLevel.Name = "cmbSaLevel";
this.cmbSaLevel.Size = new System.Drawing.Size(148, 25);
this.cmbSaLevel.TabIndex = 48;
@@ -153,7 +179,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label6.AutoSize = true;
this.label6.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label6.Location = new System.Drawing.Point(27, 390);
+ this.label6.Location = new System.Drawing.Point(27, 358);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(79, 20);
this.label6.TabIndex = 47;
@@ -217,7 +243,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label3.Location = new System.Drawing.Point(55, 348);
+ this.label3.Location = new System.Drawing.Point(55, 320);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(51, 20);
this.label3.TabIndex = 40;
@@ -225,7 +251,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtCompany
//
- this.txtCompany.Location = new System.Drawing.Point(112, 347);
+ this.txtCompany.Location = new System.Drawing.Point(112, 319);
this.txtCompany.Name = "txtCompany";
this.txtCompany.Size = new System.Drawing.Size(148, 23);
this.txtCompany.TabIndex = 39;
@@ -274,7 +300,7 @@ namespace TemuKJD.WXForms.AdminForms
this.btnCancel.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnCancel.ForeColor = System.Drawing.Color.White;
- this.btnCancel.Location = new System.Drawing.Point(59, 431);
+ this.btnCancel.Location = new System.Drawing.Point(59, 430);
this.btnCancel.Name = "btnCancel";
this.btnCancel.Size = new System.Drawing.Size(86, 25);
this.btnCancel.TabIndex = 35;
@@ -290,7 +316,7 @@ namespace TemuKJD.WXForms.AdminForms
this.btnOpUser.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnOpUser.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnOpUser.ForeColor = System.Drawing.Color.White;
- this.btnOpUser.Location = new System.Drawing.Point(174, 431);
+ this.btnOpUser.Location = new System.Drawing.Point(174, 430);
this.btnOpUser.Name = "btnOpUser";
this.btnOpUser.Size = new System.Drawing.Size(86, 25);
this.btnOpUser.TabIndex = 34;
@@ -302,7 +328,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label30.AutoSize = true;
this.label30.ForeColor = System.Drawing.SystemColors.ButtonShadow;
- this.label30.Location = new System.Drawing.Point(282, 180);
+ this.label30.Location = new System.Drawing.Point(282, 172);
this.label30.Name = "label30";
this.label30.Size = new System.Drawing.Size(56, 17);
this.label30.TabIndex = 33;
@@ -312,7 +338,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label31.AutoSize = true;
this.label31.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
- this.label31.Location = new System.Drawing.Point(266, 264);
+ this.label31.Location = new System.Drawing.Point(266, 246);
this.label31.Name = "label31";
this.label31.Size = new System.Drawing.Size(13, 17);
this.label31.TabIndex = 32;
@@ -320,7 +346,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtRePass
//
- this.txtRePass.Location = new System.Drawing.Point(112, 261);
+ this.txtRePass.Location = new System.Drawing.Point(112, 243);
this.txtRePass.Name = "txtRePass";
this.txtRePass.PasswordChar = '*';
this.txtRePass.Size = new System.Drawing.Size(148, 23);
@@ -330,7 +356,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label32.AutoSize = true;
this.label32.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label32.Location = new System.Drawing.Point(27, 262);
+ this.label32.Location = new System.Drawing.Point(27, 244);
this.label32.Name = "label32";
this.label32.Size = new System.Drawing.Size(79, 20);
this.label32.TabIndex = 31;
@@ -340,7 +366,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label33.AutoSize = true;
this.label33.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
- this.label33.Location = new System.Drawing.Point(266, 306);
+ this.label33.Location = new System.Drawing.Point(266, 284);
this.label33.Name = "label33";
this.label33.Size = new System.Drawing.Size(13, 17);
this.label33.TabIndex = 30;
@@ -350,7 +376,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label34.AutoSize = true;
this.label34.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
- this.label34.Location = new System.Drawing.Point(266, 222);
+ this.label34.Location = new System.Drawing.Point(266, 209);
this.label34.Name = "label34";
this.label34.Size = new System.Drawing.Size(13, 17);
this.label34.TabIndex = 29;
@@ -360,7 +386,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label35.AutoSize = true;
this.label35.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
- this.label35.Location = new System.Drawing.Point(266, 180);
+ this.label35.Location = new System.Drawing.Point(266, 172);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(13, 17);
this.label35.TabIndex = 28;
@@ -370,7 +396,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label36.AutoSize = true;
this.label36.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
- this.label36.Location = new System.Drawing.Point(266, 138);
+ this.label36.Location = new System.Drawing.Point(266, 135);
this.label36.Name = "label36";
this.label36.Size = new System.Drawing.Size(13, 17);
this.label36.TabIndex = 27;
@@ -385,7 +411,7 @@ namespace TemuKJD.WXForms.AdminForms
"上货",
"数据",
"登录"});
- this.cmbGroup.Location = new System.Drawing.Point(112, 303);
+ this.cmbGroup.Location = new System.Drawing.Point(112, 280);
this.cmbGroup.Name = "cmbGroup";
this.cmbGroup.Size = new System.Drawing.Size(148, 25);
this.cmbGroup.TabIndex = 26;
@@ -395,7 +421,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label37.AutoSize = true;
this.label37.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label37.Location = new System.Drawing.Point(55, 304);
+ this.label37.Location = new System.Drawing.Point(55, 282);
this.label37.Name = "label37";
this.label37.Size = new System.Drawing.Size(51, 20);
this.label37.TabIndex = 25;
@@ -403,7 +429,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtPassword
//
- this.txtPassword.Location = new System.Drawing.Point(112, 219);
+ this.txtPassword.Location = new System.Drawing.Point(112, 206);
this.txtPassword.Name = "txtPassword";
this.txtPassword.PasswordChar = '*';
this.txtPassword.Size = new System.Drawing.Size(148, 23);
@@ -413,7 +439,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label38.AutoSize = true;
this.label38.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label38.Location = new System.Drawing.Point(55, 220);
+ this.label38.Location = new System.Drawing.Point(55, 207);
this.label38.Name = "label38";
this.label38.Size = new System.Drawing.Size(51, 20);
this.label38.TabIndex = 22;
@@ -421,7 +447,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtMobile
//
- this.txtMobile.Location = new System.Drawing.Point(112, 177);
+ this.txtMobile.Location = new System.Drawing.Point(112, 169);
this.txtMobile.Name = "txtMobile";
this.txtMobile.Size = new System.Drawing.Size(148, 23);
this.txtMobile.TabIndex = 21;
@@ -430,7 +456,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label39.AutoSize = true;
this.label39.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label39.Location = new System.Drawing.Point(41, 178);
+ this.label39.Location = new System.Drawing.Point(41, 170);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(65, 20);
this.label39.TabIndex = 20;
@@ -438,7 +464,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtNickName
//
- this.txtNickName.Location = new System.Drawing.Point(112, 135);
+ this.txtNickName.Location = new System.Drawing.Point(112, 132);
this.txtNickName.Name = "txtNickName";
this.txtNickName.Size = new System.Drawing.Size(148, 23);
this.txtNickName.TabIndex = 19;
@@ -447,7 +473,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label40.AutoSize = true;
this.label40.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.label40.Location = new System.Drawing.Point(55, 136);
+ this.label40.Location = new System.Drawing.Point(55, 133);
this.label40.Name = "label40";
this.label40.Size = new System.Drawing.Size(51, 20);
this.label40.TabIndex = 18;
@@ -464,7 +490,7 @@ namespace TemuKJD.WXForms.AdminForms
// splitContainer1.Panel1
//
this.splitContainer1.Panel1.Controls.Add(this.dgvUser);
- this.splitContainer1.Size = new System.Drawing.Size(437, 517);
+ this.splitContainer1.Size = new System.Drawing.Size(1013, 517);
this.splitContainer1.SplitterDistance = 486;
this.splitContainer1.TabIndex = 2;
//
@@ -472,19 +498,20 @@ namespace TemuKJD.WXForms.AdminForms
//
this.dgvUser.AllowUserToAddRows = false;
this.dgvUser.AllowUserToDeleteRows = false;
- dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));
- this.dgvUser.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+ dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));
+ this.dgvUser.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle4;
+ this.dgvUser.AutoRowNumber = true;
this.dgvUser.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
this.dgvUser.BackgroundColor = System.Drawing.Color.White;
this.dgvUser.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
- dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
- dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
- this.dgvUser.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+ dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+ dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle5.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dgvUser.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
this.dgvUser.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvUser.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.UserIdColumn,
@@ -496,23 +523,24 @@ namespace TemuKJD.WXForms.AdminForms
this.shopCountColumn,
this.colSaLevel,
this.colSaLevelName,
+ this.colAuthority,
this.editColumn,
this.deleteColumn});
- dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
- dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Window;
- dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText;
- dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText;
- dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
- this.dgvUser.DefaultCellStyle = dataGridViewCellStyle3;
+ dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+ dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window;
+ dataGridViewCellStyle6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText;
+ dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.ControlText;
+ dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dgvUser.DefaultCellStyle = dataGridViewCellStyle6;
this.dgvUser.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvUser.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(208)))), ((int)(((byte)(215)))), ((int)(((byte)(229)))));
this.dgvUser.Location = new System.Drawing.Point(0, 0);
this.dgvUser.Name = "dgvUser";
this.dgvUser.ReadOnly = true;
this.dgvUser.RowTemplate.Height = 23;
- this.dgvUser.Size = new System.Drawing.Size(437, 486);
+ this.dgvUser.Size = new System.Drawing.Size(1013, 486);
this.dgvUser.TabIndex = 1;
this.dgvUser.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvUser_CellContentClick);
//
@@ -574,8 +602,15 @@ namespace TemuKJD.WXForms.AdminForms
this.colSaLevelName.Name = "colSaLevelName";
this.colSaLevelName.ReadOnly = true;
//
+ // colAuthority
+ //
+ this.colAuthority.HeaderText = "功能权限";
+ this.colAuthority.Name = "colAuthority";
+ this.colAuthority.ReadOnly = true;
+ //
// editColumn
//
+ this.editColumn.FillWeight = 50F;
this.editColumn.HeaderText = "编辑";
this.editColumn.Name = "editColumn";
this.editColumn.ReadOnly = true;
@@ -584,17 +619,18 @@ namespace TemuKJD.WXForms.AdminForms
//
// deleteColumn
//
+ this.deleteColumn.FillWeight = 50F;
this.deleteColumn.HeaderText = "删除";
this.deleteColumn.Name = "deleteColumn";
this.deleteColumn.ReadOnly = true;
//
- // AdminAccountForm
+ // WXAdminAccountForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
- this.ClientSize = new System.Drawing.Size(800, 527);
+ this.ClientSize = new System.Drawing.Size(1376, 527);
this.Controls.Add(this.splitContainer5);
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.Name = "AdminAccountForm";
+ this.Name = "WXAdminAccountForm";
this.Text = "AccountForm";
this.Load += new System.EventHandler(this.MainAccountForm_Load);
this.VisibleChanged += new System.EventHandler(this.MainAccountForm_VisibleChanged);
@@ -646,6 +682,8 @@ namespace TemuKJD.WXForms.AdminForms
private System.Windows.Forms.Label lblWatermark;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.ComboBox cmbSaLevel;
+ private System.Windows.Forms.Label label7;
+ private UserComponent.UcCheckBox chkWXComplateProd;
private System.Windows.Forms.DataGridViewTextBoxColumn UserIdColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn UserNickNameColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn mobileColumn;
@@ -655,6 +693,7 @@ namespace TemuKJD.WXForms.AdminForms
private System.Windows.Forms.DataGridViewTextBoxColumn shopCountColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevel;
private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevelName;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colAuthority;
private System.Windows.Forms.DataGridViewLinkColumn editColumn;
private System.Windows.Forms.DataGridViewLinkColumn deleteColumn;
}
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs
index 3a6d184..40fd9fa 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs
@@ -1,5 +1,6 @@
using AllBase;
using AllBase.Model.Result;
+using NaiBa.Util.Extension;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -73,6 +74,12 @@ namespace TemuKJD.WXForms.AdminForms
data.Append("&sa_level=2");
else
data.Append("&sa_level=0");
+ string authority = "";
+ if (chkWXComplateProd.Checked)
+ authority += "微信回采";
+ //if (!string.IsNullOrEmpty(authority))
+ data.Append("&authority=" + authority);
+
string url = BaseClass.BuildObjString("user/add_user");
if (btnOpUser.Text != "添加用户" && !string.IsNullOrEmpty(Uid))
{
@@ -135,6 +142,7 @@ namespace TemuKJD.WXForms.AdminForms
user.shop_count = BaseRegex.GetIntJson(ref oStr, "shop_count");
user.company_name = BaseRegex.GetStringJson(ref oStr, "company_name");
user.sa_level = BaseRegex.GetIntJson(ref oStr, "sa_level");
+ user.authority = BaseRegex.GetStringJson(ref oStr, "authority");
AllUsers.Add(user);
dgvUser.Rows.Add(
@@ -147,6 +155,7 @@ namespace TemuKJD.WXForms.AdminForms
user.shop_count,
user.sa_level,
user.sa_level_name,
+ user.authority,
"编辑",
"删除");
}
@@ -170,6 +179,7 @@ namespace TemuKJD.WXForms.AdminForms
txtCompany.Clear();
cmbGroup.Text = "主账户";
cmbSaLevel.Text = "普通用户";
+ chkWXComplateProd.Checked = false;
}
private void btnRefresh_Click(object sender, EventArgs e)
@@ -188,6 +198,7 @@ namespace TemuKJD.WXForms.AdminForms
string groupName = dgvUser.Rows[e.RowIndex].Cells["groupNameColumn"].Value.ToString();
string company = dgvUser.Rows[e.RowIndex].Cells["colCompany"].Value.ToString();
string saLevelName = dgvUser.Rows[e.RowIndex].Cells["colSaLevelName"].Value.ToString();
+ string authority = dgvUser.Rows[e.RowIndex].Cells["colAuthority"].Value.ParseToString();
if (columname == "编辑")
{
Uid = uid;
@@ -200,6 +211,7 @@ namespace TemuKJD.WXForms.AdminForms
btnOpUser.Text = "保存用户";
btnCancel.Visible = true;
cmbSaLevel.Text = saLevelName;
+ chkWXComplateProd.Checked = authority.Contains(chkWXComplateProd.Text);
}
if (columname == "删除")
{
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx
index c3a4499..67bc4a6 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx
@@ -144,6 +144,9 @@
True
+
+ True
+
True
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminShopListForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminShopListForm.cs
index ec979a7..895f38c 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminShopListForm.cs
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminShopListForm.cs
@@ -100,7 +100,8 @@ namespace TemuKJD.WXForms.AdminForms
Task.Run(() =>
{
int pageCount;
- var list = AdminGetServerShopLst(out pageCount, page);
+ decimal seconds = 0;
+ var list = AdminGetServerShopLst(out pageCount, out seconds, page);
lstAdminShopInfo.AddRange(list);
this.ucSplitPage1.TotalPage = pageCount;
@@ -146,6 +147,10 @@ namespace TemuKJD.WXForms.AdminForms
Invoke(new Action(() =>
{
this.pbLoading.Visible = false;
+ this.statusBar.lblTaskStatus.Text = "店铺查询完毕";
+#if DEBUG
+ this.statusBar.lblTaskStatus.Text += ",耗时:" + seconds;
+#endif
}));
});
}
@@ -386,10 +391,11 @@ namespace TemuKJD.WXForms.AdminForms
return shopNameList;
}
- public List AdminGetServerShopLst(out int pageCount, int page = 1, int pageSize = 50)
+ public List AdminGetServerShopLst(out int pageCount, out decimal seconds, int page = 1, int pageSize = 50)
{
List list = new List();
pageCount = 1;
+ seconds = 0;
var url = BaseClass.BuildObjString("shop/admin_get_shop_list");
var data = UserLogin.GetSignaturex() +
@@ -416,6 +422,7 @@ namespace TemuKJD.WXForms.AdminForms
int count = BaseRegex.GetIntJson(ref html, "count");
pageCount = Math.Ceiling(1.0 * count / pageSize).ParseToInt();
pageCount = Math.Max(pageCount, 1);
+ seconds = BaseRegex.GetDecimalJson(ref html, "seconds");
return ShopBLL.DeserializationShop(html);
}
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs
index e9f32d9..dcf6bd9 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs
@@ -379,8 +379,8 @@ namespace TemuKJD.WXForms.AdminForms
private void ShopObj_OnInfoReceived(string information)
{
//BaseMsgForm.ShowInfo(information);
- if (!string.IsNullOrEmpty(information))
- cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync("alert('" + information + "');");
+ //if (!string.IsNullOrEmpty(information))
+ // cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync("alert('" + information + "');");
}
private void CefWebBrowser_LoadError(object sender, CefSharp.LoadErrorEventArgs e)
@@ -399,12 +399,13 @@ namespace TemuKJD.WXForms.AdminForms
private void CefWebBrowser_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e)
{
- //js绑定C#对象 html页面内声明绑定的C#对象
+ // js绑定C#对象 html页面内声明绑定的C#对象
+ // 新版cef需要在页面加载后动态绑定
StringBuilder sb = new StringBuilder();
sb.Append("(function(){");
sb.Append("CefSharp.BindObjectAsync('shopObj');");
sb.Append("})();");
- //cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
+ cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
}
//public Func BeforeResourceLoadEvent; // sender, requestUrl, postData, request, true(表示取消执行)
@@ -456,6 +457,58 @@ namespace TemuKJD.WXForms.AdminForms
this.lstShopCompany.Add(sc);
});
}
+
+ if (currentUrl.StartsWith("https://store.weixin.qq.com/shop/goods/list"))
+ {
+ //Task.Run(() => {
+ string sAddInputJs = @"
+ document.addEventListener('wheel', function(event) {
+ // 检查滚动方向
+ //if (event.deltaY < 0) {
+ // console.log('向上滚动');
+ //} else {
+ // console.log('向下滚动');
+ //}
+ // 或者使用 event.deltaX 来检查水平滚动
+ //if (event.deltaX < 0) {
+ // console.log('向左滚动');
+ //} else if (event.deltaX > 0) {
+ // console.log('向右滚动');
+ //}
+
+ // 阻止默认的滚动行为(如果有需要)
+ //event.preventDefault();
+
+ addGetProdButton();
+ });
+ addGetProdButton();
+
+ function addGetProdButton() {
+ const element = document.getElementsByName('goods')[0];
+ const shadowRoot = element.shadowRoot;
+ var productLst = shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
+ for ( i= 0; i < productLst.length; i++) {
+ var addBtnItem = productLst[i]; //.parentElement.parentElement.parentElement;
+ var pos = addBtnItem.innerHTML.indexOf('ID:')
+ if (addBtnItem.innerHTML.indexOf('回采') < 0 && pos >= 0) {
+ var sSpuId = addBtnItem.innerHTML.substring(pos + 3);
+ sSpuId = sSpuId.substring(0, sSpuId.indexOf('""
+ //addBtnItem.innerHTML += """"
+ //addBtnItem.innerHTML = addBtnItem.innerHTML.replace(""分享 "", ""分享 "");
+ var newDiv = document.createElement(""div"");
+ newDiv.innerHTML = ""回采<\a>"";
+ addBtnItem.lastChild.appendChild(newDiv);
+ }
+ }
+ }";
+ cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sAddInputJs);
+ //});
+
+ //const element = document.getElementsByName('goods')[0]
+ //const shadowRoot = element.shadowRoot;
+ //shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
+ }
}
///
diff --git a/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.Designer.cs
new file mode 100644
index 0000000..a57692a
--- /dev/null
+++ b/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.Designer.cs
@@ -0,0 +1,1548 @@
+
+using TemuKJD.PDDForms.ProductSelectForms;
+
+namespace TemuKJD.WXForms.AdminForms
+{
+ partial class WXProdComplateForm
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+ this.splitContainer1 = new System.Windows.Forms.SplitContainer();
+ this.ucGroupBoxEx3 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.cmbSaleSort = new System.Windows.Forms.ComboBox();
+ this.label6 = new System.Windows.Forms.Label();
+ this.label5 = new System.Windows.Forms.Label();
+ this.panelEx6 = new DevComponents.DotNetBar.PanelEx();
+ this.btnClearDgv = new DevComponents.DotNetBar.PanelEx();
+ this.txtPageEnd = new System.Windows.Forms.TextBox();
+ this.txtFiltSaleNumLessThan = new System.Windows.Forms.TextBox();
+ this.label4 = new System.Windows.Forms.Label();
+ this.btnFiltSelectLessThan = new DevComponents.DotNetBar.PanelEx();
+ this.txtFiltSaleNumMoreThan = new System.Windows.Forms.TextBox();
+ this.btnSearchProd = new DevComponents.DotNetBar.PanelEx();
+ this.cmbPreType = new System.Windows.Forms.ComboBox();
+ this.btnFiltSelectMoreThan = new DevComponents.DotNetBar.PanelEx();
+ this.btnClearFilter = new DevComponents.DotNetBar.PanelEx();
+ this.label3 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.chkFailDownProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
+ this.btnPromotion = new DevComponents.DotNetBar.PanelEx();
+ this.panelEx2 = new DevComponents.DotNetBar.PanelEx();
+ this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.textBox2 = new System.Windows.Forms.TextBox();
+ this.label1 = new System.Windows.Forms.Label();
+ this.textBox1 = new System.Windows.Forms.TextBox();
+ this.btnSelectOffline = new DevComponents.DotNetBar.PanelEx();
+ this.btnRefreshShop = new DevComponents.DotNetBar.PanelEx();
+ this.btnSelectOnline = new DevComponents.DotNetBar.PanelEx();
+ this.btnAddUnSelect = new DevComponents.DotNetBar.PanelEx();
+ this.btnReverse = new DevComponents.DotNetBar.PanelEx();
+ this.btnAddSelect = new DevComponents.DotNetBar.PanelEx();
+ this.btnEmptyShop = new DevComponents.DotNetBar.PanelEx();
+ this.label16 = new System.Windows.Forms.Label();
+ this.txtFilterShopName = new System.Windows.Forms.TextBox();
+ this.label17 = new System.Windows.Forms.Label();
+ this.splitContainer3 = new System.Windows.Forms.SplitContainer();
+ this.splitContainer2 = new System.Windows.Forms.SplitContainer();
+ this.btnRefreshAuthor = new DevComponents.DotNetBar.PanelEx();
+ this.pbLoadingShop = new System.Windows.Forms.PictureBox();
+ this.btnFilterShop = new DevComponents.DotNetBar.PanelEx();
+ this.dgvShop = new TemuKJD.UserComponent.DataGridViewEx();
+ this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+ this.colShopLoginName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colShopId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colShopName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colShopNotes = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSelectProduct = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colLoginStatus = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colApi = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colCanUse = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+ this.colUploadCount = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colOnSaleNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colRemaining = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colMessage = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.pbLoading = new System.Windows.Forms.PictureBox();
+ this.chkTestNoAuditUpload = new TemuKJD.UserComponent.UcCheckBox(this.components);
+ this.dgvSelectProduct = new TemuKJD.UserComponent.DataGridViewEx();
+ this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+ this.colSelectId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSupplierId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSupplierName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colLogin = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colInShop = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colSpuId = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colSkcId = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colDraftId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colProductSkcPic = new System.Windows.Forms.DataGridViewImageColumn();
+ this.colSkuFakeImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSkuFakeImg = new System.Windows.Forms.DataGridViewImageColumn();
+ this.colProductName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colProductCat = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colExtCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSoldNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colMsg = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colNotes = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colUserNotes = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.ColDelete = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colAddTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colCouponNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colOpResult = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.splitContainer4 = new System.Windows.Forms.SplitContainer();
+ this.statusBar = new TemuKJD.UserControls.StatusBarUserControl();
+ this.btnClear = new DevComponents.DotNetBar.PanelEx();
+ this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
+ this.splitContainer1.Panel1.SuspendLayout();
+ this.splitContainer1.Panel2.SuspendLayout();
+ this.splitContainer1.SuspendLayout();
+ this.ucGroupBoxEx3.SuspendLayout();
+ this.ucGroupBoxEx4.SuspendLayout();
+ this.ucGroupBoxEx1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
+ this.splitContainer3.Panel1.SuspendLayout();
+ this.splitContainer3.Panel2.SuspendLayout();
+ this.splitContainer3.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit();
+ this.splitContainer2.Panel1.SuspendLayout();
+ this.splitContainer2.Panel2.SuspendLayout();
+ this.splitContainer2.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pbLoadingShop)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.dgvSelectProduct)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit();
+ this.splitContainer4.Panel1.SuspendLayout();
+ this.splitContainer4.Panel2.SuspendLayout();
+ this.splitContainer4.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // splitContainer1
+ //
+ this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+ this.splitContainer1.Location = new System.Drawing.Point(0, 0);
+ this.splitContainer1.Name = "splitContainer1";
+ this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
+ //
+ // splitContainer1.Panel1
+ //
+ this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx3);
+ this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx4);
+ this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx1);
+ //
+ // splitContainer1.Panel2
+ //
+ this.splitContainer1.Panel2.Controls.Add(this.splitContainer3);
+ this.splitContainer1.Size = new System.Drawing.Size(1424, 641);
+ this.splitContainer1.SplitterDistance = 165;
+ this.splitContainer1.TabIndex = 11;
+ //
+ // ucGroupBoxEx3
+ //
+ this.ucGroupBoxEx3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)));
+ this.ucGroupBoxEx3.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+ this.ucGroupBoxEx3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.ucGroupBoxEx3.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
+ this.ucGroupBoxEx3.Controls.Add(this.cmbSaleSort);
+ this.ucGroupBoxEx3.Controls.Add(this.label6);
+ this.ucGroupBoxEx3.Controls.Add(this.label5);
+ this.ucGroupBoxEx3.Controls.Add(this.panelEx6);
+ this.ucGroupBoxEx3.Controls.Add(this.btnClearDgv);
+ this.ucGroupBoxEx3.Controls.Add(this.txtPageEnd);
+ this.ucGroupBoxEx3.Controls.Add(this.txtFiltSaleNumLessThan);
+ this.ucGroupBoxEx3.Controls.Add(this.label4);
+ this.ucGroupBoxEx3.Controls.Add(this.btnFiltSelectLessThan);
+ this.ucGroupBoxEx3.Controls.Add(this.txtFiltSaleNumMoreThan);
+ this.ucGroupBoxEx3.Controls.Add(this.btnSearchProd);
+ this.ucGroupBoxEx3.Controls.Add(this.cmbPreType);
+ this.ucGroupBoxEx3.Controls.Add(this.btnFiltSelectMoreThan);
+ this.ucGroupBoxEx3.Controls.Add(this.btnClearFilter);
+ this.ucGroupBoxEx3.Controls.Add(this.label3);
+ this.ucGroupBoxEx3.Controls.Add(this.label2);
+ this.ucGroupBoxEx3.Location = new System.Drawing.Point(162, 2);
+ this.ucGroupBoxEx3.Name = "ucGroupBoxEx3";
+ this.ucGroupBoxEx3.Size = new System.Drawing.Size(357, 165);
+ this.ucGroupBoxEx3.TabIndex = 668;
+ this.ucGroupBoxEx3.TabStop = false;
+ this.ucGroupBoxEx3.Text = "商品查询";
+ //
+ // cmbSaleSort
+ //
+ this.cmbSaleSort.FormattingEnabled = true;
+ this.cmbSaleSort.Items.AddRange(new object[] {
+ "",
+ "降序",
+ "升序"});
+ this.cmbSaleSort.Location = new System.Drawing.Point(64, 60);
+ this.cmbSaleSort.Name = "cmbSaleSort";
+ this.cmbSaleSort.Size = new System.Drawing.Size(112, 25);
+ this.cmbSaleSort.TabIndex = 869;
+ this.cmbSaleSort.TextChanged += new System.EventHandler(this.cmbSaleSort_TextChanged);
+ //
+ // label6
+ //
+ this.label6.AutoSize = true;
+ this.label6.Location = new System.Drawing.Point(9, 64);
+ this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label6.Name = "label6";
+ this.label6.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
+ this.label6.Size = new System.Drawing.Size(56, 17);
+ this.label6.TabIndex = 868;
+ this.label6.Text = "销量排序";
+ //
+ // label5
+ //
+ this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.label5.AutoSize = true;
+ this.label5.Location = new System.Drawing.Point(256, 28);
+ this.label5.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
+ this.label5.Name = "label5";
+ this.label5.Size = new System.Drawing.Size(56, 17);
+ this.label5.TabIndex = 844;
+ this.label5.Text = "销量小于";
+ //
+ // panelEx6
+ //
+ this.panelEx6.CanvasColor = System.Drawing.SystemColors.Control;
+ this.panelEx6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.panelEx6.DisabledBackColor = System.Drawing.Color.Empty;
+ this.panelEx6.Location = new System.Drawing.Point(288, 127);
+ this.panelEx6.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.panelEx6.Name = "panelEx6";
+ this.panelEx6.Size = new System.Drawing.Size(58, 25);
+ this.panelEx6.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx6.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.panelEx6.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.panelEx6.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.panelEx6.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx6.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.panelEx6.Style.GradientAngle = 90;
+ this.panelEx6.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx6.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx6.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx6.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx6.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.panelEx6.TabIndex = 848;
+ this.panelEx6.Text = "停止查询";
+ this.panelEx6.Click += new System.EventHandler(this.btnStop_Click);
+ //
+ // btnClearDgv
+ //
+ this.btnClearDgv.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnClearDgv.CanvasColor = System.Drawing.SystemColors.Control;
+ this.btnClearDgv.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnClearDgv.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnClearDgv.Location = new System.Drawing.Point(12, 127);
+ this.btnClearDgv.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.btnClearDgv.Name = "btnClearDgv";
+ this.btnClearDgv.Size = new System.Drawing.Size(85, 25);
+ this.btnClearDgv.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClearDgv.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnClearDgv.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnClearDgv.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.btnClearDgv.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClearDgv.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.btnClearDgv.Style.GradientAngle = 90;
+ this.btnClearDgv.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClearDgv.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClearDgv.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClearDgv.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClearDgv.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.btnClearDgv.TabIndex = 612;
+ this.btnClearDgv.Text = "清空列表选中";
+ this.btnClearDgv.Click += new System.EventHandler(this.btnClearDgv_Click);
+ //
+ // txtPageEnd
+ //
+ this.txtPageEnd.Font = new System.Drawing.Font("微软雅黑", 10F);
+ this.txtPageEnd.Location = new System.Drawing.Point(64, 24);
+ this.txtPageEnd.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
+ this.txtPageEnd.Name = "txtPageEnd";
+ this.txtPageEnd.Size = new System.Drawing.Size(112, 25);
+ this.txtPageEnd.TabIndex = 792;
+ this.txtPageEnd.Text = "999";
+ this.txtPageEnd.TextChanged += new System.EventHandler(this.txtPageEnd_TextChanged);
+ //
+ // txtFiltSaleNumLessThan
+ //
+ this.txtFiltSaleNumLessThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtFiltSaleNumLessThan.Location = new System.Drawing.Point(312, 25);
+ this.txtFiltSaleNumLessThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
+ this.txtFiltSaleNumLessThan.Name = "txtFiltSaleNumLessThan";
+ this.txtFiltSaleNumLessThan.Size = new System.Drawing.Size(33, 23);
+ this.txtFiltSaleNumLessThan.TabIndex = 843;
+ this.txtFiltSaleNumLessThan.Text = "1";
+ //
+ // label4
+ //
+ this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.label4.AutoSize = true;
+ this.label4.Location = new System.Drawing.Point(256, 64);
+ this.label4.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(56, 17);
+ this.label4.TabIndex = 801;
+ this.label4.Text = "销量大于";
+ //
+ // btnFiltSelectLessThan
+ //
+ this.btnFiltSelectLessThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnFiltSelectLessThan.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnFiltSelectLessThan.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnFiltSelectLessThan.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnFiltSelectLessThan.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnFiltSelectLessThan.Location = new System.Drawing.Point(192, 24);
+ this.btnFiltSelectLessThan.Name = "btnFiltSelectLessThan";
+ this.btnFiltSelectLessThan.Size = new System.Drawing.Size(62, 25);
+ this.btnFiltSelectLessThan.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnFiltSelectLessThan.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectLessThan.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectLessThan.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnFiltSelectLessThan.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnFiltSelectLessThan.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnFiltSelectLessThan.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnFiltSelectLessThan.Style.GradientAngle = 90;
+ this.btnFiltSelectLessThan.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnFiltSelectLessThan.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectLessThan.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectLessThan.TabIndex = 842;
+ this.btnFiltSelectLessThan.Text = "批量选择";
+ this.btnFiltSelectLessThan.Click += new System.EventHandler(this.btnFiltSelectLessThan_Click);
+ //
+ // txtFiltSaleNumMoreThan
+ //
+ this.txtFiltSaleNumMoreThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtFiltSaleNumMoreThan.Location = new System.Drawing.Point(312, 61);
+ this.txtFiltSaleNumMoreThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
+ this.txtFiltSaleNumMoreThan.Name = "txtFiltSaleNumMoreThan";
+ this.txtFiltSaleNumMoreThan.Size = new System.Drawing.Size(33, 23);
+ this.txtFiltSaleNumMoreThan.TabIndex = 795;
+ this.txtFiltSaleNumMoreThan.Text = "0";
+ //
+ // btnSearchProd
+ //
+ this.btnSearchProd.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnSearchProd.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnSearchProd.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnSearchProd.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnSearchProd.Location = new System.Drawing.Point(164, 127);
+ this.btnSearchProd.Name = "btnSearchProd";
+ this.btnSearchProd.Size = new System.Drawing.Size(58, 25);
+ this.btnSearchProd.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnSearchProd.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnSearchProd.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnSearchProd.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnSearchProd.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnSearchProd.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnSearchProd.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnSearchProd.Style.GradientAngle = 90;
+ this.btnSearchProd.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnSearchProd.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnSearchProd.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnSearchProd.TabIndex = 431;
+ this.btnSearchProd.Text = "商品查询";
+ this.btnSearchProd.Click += new System.EventHandler(this.btnSearchProd_Click);
+ //
+ // cmbPreType
+ //
+ this.cmbPreType.FormattingEnabled = true;
+ this.cmbPreType.Items.AddRange(new object[] {
+ "",
+ "预售",
+ "非预售"});
+ this.cmbPreType.Location = new System.Drawing.Point(64, 95);
+ this.cmbPreType.Name = "cmbPreType";
+ this.cmbPreType.Size = new System.Drawing.Size(112, 25);
+ this.cmbPreType.TabIndex = 807;
+ this.cmbPreType.Visible = false;
+ this.cmbPreType.SelectedIndexChanged += new System.EventHandler(this.cmbPreType_SelectedIndexChanged);
+ //
+ // btnFiltSelectMoreThan
+ //
+ this.btnFiltSelectMoreThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnFiltSelectMoreThan.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnFiltSelectMoreThan.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnFiltSelectMoreThan.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnFiltSelectMoreThan.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnFiltSelectMoreThan.Location = new System.Drawing.Point(192, 60);
+ this.btnFiltSelectMoreThan.Name = "btnFiltSelectMoreThan";
+ this.btnFiltSelectMoreThan.Size = new System.Drawing.Size(62, 25);
+ this.btnFiltSelectMoreThan.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnFiltSelectMoreThan.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectMoreThan.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectMoreThan.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnFiltSelectMoreThan.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnFiltSelectMoreThan.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnFiltSelectMoreThan.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnFiltSelectMoreThan.Style.GradientAngle = 90;
+ this.btnFiltSelectMoreThan.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnFiltSelectMoreThan.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectMoreThan.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnFiltSelectMoreThan.TabIndex = 794;
+ this.btnFiltSelectMoreThan.Text = "批量选择";
+ this.btnFiltSelectMoreThan.Click += new System.EventHandler(this.btnFiltSelectMoreThan_Click);
+ //
+ // btnClearFilter
+ //
+ this.btnClearFilter.CanvasColor = System.Drawing.SystemColors.Control;
+ this.btnClearFilter.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnClearFilter.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnClearFilter.Location = new System.Drawing.Point(226, 127);
+ this.btnClearFilter.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.btnClearFilter.Name = "btnClearFilter";
+ this.btnClearFilter.Size = new System.Drawing.Size(58, 25);
+ this.btnClearFilter.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClearFilter.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnClearFilter.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnClearFilter.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.btnClearFilter.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClearFilter.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.btnClearFilter.Style.GradientAngle = 90;
+ this.btnClearFilter.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClearFilter.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClearFilter.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClearFilter.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClearFilter.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.btnClearFilter.TabIndex = 548;
+ this.btnClearFilter.Text = "清空条件";
+ this.btnClearFilter.Click += new System.EventHandler(this.btnClearFilter_Click);
+ //
+ // label3
+ //
+ this.label3.AutoSize = true;
+ this.label3.Location = new System.Drawing.Point(9, 99);
+ this.label3.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label3.Name = "label3";
+ this.label3.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
+ this.label3.Size = new System.Drawing.Size(56, 17);
+ this.label3.TabIndex = 806;
+ this.label3.Text = "预售状态";
+ this.label3.Visible = false;
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(9, 28);
+ this.label2.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label2.Name = "label2";
+ this.label2.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
+ this.label2.Size = new System.Drawing.Size(56, 17);
+ this.label2.TabIndex = 793;
+ this.label2.Text = "查询页数";
+ //
+ // ucGroupBoxEx4
+ //
+ this.ucGroupBoxEx4.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.ucGroupBoxEx4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.ucGroupBoxEx4.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
+ this.ucGroupBoxEx4.Controls.Add(this.chkFailDownProd);
+ this.ucGroupBoxEx4.Controls.Add(this.btnPromotion);
+ this.ucGroupBoxEx4.Controls.Add(this.panelEx2);
+ this.ucGroupBoxEx4.Location = new System.Drawing.Point(518, 2);
+ this.ucGroupBoxEx4.Name = "ucGroupBoxEx4";
+ this.ucGroupBoxEx4.Size = new System.Drawing.Size(904, 165);
+ this.ucGroupBoxEx4.TabIndex = 666;
+ this.ucGroupBoxEx4.TabStop = false;
+ this.ucGroupBoxEx4.Text = "商品回采";
+ //
+ // chkFailDownProd
+ //
+ this.chkFailDownProd.AutoSize = true;
+ this.chkFailDownProd.Location = new System.Drawing.Point(24, 27);
+ this.chkFailDownProd.Name = "chkFailDownProd";
+ this.chkFailDownProd.Size = new System.Drawing.Size(183, 21);
+ this.chkFailDownProd.TabIndex = 821;
+ this.chkFailDownProd.Text = "如果同步操作失败则下架商品";
+ this.chkFailDownProd.UseVisualStyleBackColor = true;
+ //
+ // btnPromotion
+ //
+ this.btnPromotion.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnPromotion.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnPromotion.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnPromotion.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnPromotion.Location = new System.Drawing.Point(23, 61);
+ this.btnPromotion.Name = "btnPromotion";
+ this.btnPromotion.Size = new System.Drawing.Size(108, 25);
+ this.btnPromotion.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnPromotion.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnPromotion.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnPromotion.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnPromotion.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnPromotion.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnPromotion.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnPromotion.Style.GradientAngle = 90;
+ this.btnPromotion.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnPromotion.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnPromotion.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnPromotion.TabIndex = 521;
+ this.btnPromotion.Text = "批量回采商品";
+ this.btnPromotion.Click += new System.EventHandler(this.btnSync_Click);
+ //
+ // panelEx2
+ //
+ this.panelEx2.CanvasColor = System.Drawing.SystemColors.Control;
+ this.panelEx2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.panelEx2.DisabledBackColor = System.Drawing.Color.Empty;
+ this.panelEx2.Location = new System.Drawing.Point(135, 61);
+ this.panelEx2.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.panelEx2.Name = "panelEx2";
+ this.panelEx2.Size = new System.Drawing.Size(58, 25);
+ this.panelEx2.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx2.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.panelEx2.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.panelEx2.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.panelEx2.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx2.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.panelEx2.Style.GradientAngle = 90;
+ this.panelEx2.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx2.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx2.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx2.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx2.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.panelEx2.TabIndex = 805;
+ this.panelEx2.Text = "停止操作";
+ this.panelEx2.Click += new System.EventHandler(this.btnStop_Click);
+ //
+ // ucGroupBoxEx1
+ //
+ this.ucGroupBoxEx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)));
+ this.ucGroupBoxEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.ucGroupBoxEx1.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
+ this.ucGroupBoxEx1.Controls.Add(this.textBox2);
+ this.ucGroupBoxEx1.Controls.Add(this.label1);
+ this.ucGroupBoxEx1.Controls.Add(this.textBox1);
+ this.ucGroupBoxEx1.Controls.Add(this.btnSelectOffline);
+ this.ucGroupBoxEx1.Controls.Add(this.btnRefreshShop);
+ this.ucGroupBoxEx1.Controls.Add(this.btnSelectOnline);
+ this.ucGroupBoxEx1.Controls.Add(this.btnAddUnSelect);
+ this.ucGroupBoxEx1.Controls.Add(this.btnReverse);
+ this.ucGroupBoxEx1.Controls.Add(this.btnAddSelect);
+ this.ucGroupBoxEx1.Controls.Add(this.btnEmptyShop);
+ this.ucGroupBoxEx1.Controls.Add(this.label16);
+ this.ucGroupBoxEx1.Controls.Add(this.txtFilterShopName);
+ this.ucGroupBoxEx1.Controls.Add(this.label17);
+ this.ucGroupBoxEx1.Location = new System.Drawing.Point(3, 2);
+ this.ucGroupBoxEx1.Name = "ucGroupBoxEx1";
+ this.ucGroupBoxEx1.Size = new System.Drawing.Size(160, 165);
+ this.ucGroupBoxEx1.TabIndex = 399;
+ this.ucGroupBoxEx1.TabStop = false;
+ this.ucGroupBoxEx1.Text = "基础";
+ //
+ // textBox2
+ //
+ this.textBox2.Font = new System.Drawing.Font("微软雅黑", 10F);
+ this.textBox2.Location = new System.Drawing.Point(39, 15);
+ this.textBox2.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
+ this.textBox2.Name = "textBox2";
+ this.textBox2.Size = new System.Drawing.Size(113, 25);
+ this.textBox2.TabIndex = 828;
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(8, 19);
+ this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(32, 17);
+ this.label1.TabIndex = 829;
+ this.label1.Text = "名称";
+ //
+ // textBox1
+ //
+ this.textBox1.Font = new System.Drawing.Font("微软雅黑", 10F);
+ this.textBox1.Location = new System.Drawing.Point(38, 68);
+ this.textBox1.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
+ this.textBox1.Name = "textBox1";
+ this.textBox1.Size = new System.Drawing.Size(113, 25);
+ this.textBox1.TabIndex = 825;
+ //
+ // btnSelectOffline
+ //
+ this.btnSelectOffline.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnSelectOffline.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnSelectOffline.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnSelectOffline.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnSelectOffline.Location = new System.Drawing.Point(61, 139);
+ this.btnSelectOffline.Name = "btnSelectOffline";
+ this.btnSelectOffline.Size = new System.Drawing.Size(50, 20);
+ this.btnSelectOffline.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnSelectOffline.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnSelectOffline.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnSelectOffline.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnSelectOffline.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnSelectOffline.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnSelectOffline.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnSelectOffline.Style.GradientAngle = 90;
+ this.btnSelectOffline.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnSelectOffline.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnSelectOffline.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnSelectOffline.TabIndex = 772;
+ this.btnSelectOffline.Text = "选掉线";
+ this.btnSelectOffline.Click += new System.EventHandler(this.btnSelectOffline_Click);
+ //
+ // btnRefreshShop
+ //
+ this.btnRefreshShop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnRefreshShop.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnRefreshShop.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnRefreshShop.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnRefreshShop.Location = new System.Drawing.Point(9, 95);
+ this.btnRefreshShop.Name = "btnRefreshShop";
+ this.btnRefreshShop.Size = new System.Drawing.Size(102, 20);
+ this.btnRefreshShop.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnRefreshShop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnRefreshShop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnRefreshShop.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnRefreshShop.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnRefreshShop.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnRefreshShop.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnRefreshShop.Style.GradientAngle = 90;
+ this.btnRefreshShop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnRefreshShop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnRefreshShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnRefreshShop.TabIndex = 431;
+ this.btnRefreshShop.Text = "查询店铺";
+ this.btnRefreshShop.Visible = false;
+ this.btnRefreshShop.Click += new System.EventHandler(this.btnRefreshShop_Click);
+ //
+ // btnSelectOnline
+ //
+ this.btnSelectOnline.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnSelectOnline.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnSelectOnline.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnSelectOnline.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnSelectOnline.Location = new System.Drawing.Point(9, 139);
+ this.btnSelectOnline.Name = "btnSelectOnline";
+ this.btnSelectOnline.Size = new System.Drawing.Size(50, 20);
+ this.btnSelectOnline.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnSelectOnline.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnSelectOnline.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnSelectOnline.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnSelectOnline.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnSelectOnline.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnSelectOnline.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnSelectOnline.Style.GradientAngle = 90;
+ this.btnSelectOnline.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnSelectOnline.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnSelectOnline.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnSelectOnline.TabIndex = 768;
+ this.btnSelectOnline.Text = "选在线";
+ this.btnSelectOnline.Click += new System.EventHandler(this.btnSelectOnline_Click);
+ //
+ // btnAddUnSelect
+ //
+ this.btnAddUnSelect.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnAddUnSelect.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnAddUnSelect.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnAddUnSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnAddUnSelect.Location = new System.Drawing.Point(81, 117);
+ this.btnAddUnSelect.Name = "btnAddUnSelect";
+ this.btnAddUnSelect.Size = new System.Drawing.Size(70, 20);
+ this.btnAddUnSelect.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnAddUnSelect.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnAddUnSelect.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnAddUnSelect.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnAddUnSelect.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnAddUnSelect.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnAddUnSelect.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnAddUnSelect.Style.GradientAngle = 90;
+ this.btnAddUnSelect.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnAddUnSelect.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnAddUnSelect.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnAddUnSelect.TabIndex = 746;
+ this.btnAddUnSelect.Text = "弃选条件";
+ this.btnAddUnSelect.Click += new System.EventHandler(this.btnAddUnSelect_Click);
+ //
+ // btnReverse
+ //
+ this.btnReverse.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnReverse.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnReverse.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnReverse.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnReverse.Location = new System.Drawing.Point(113, 139);
+ this.btnReverse.Name = "btnReverse";
+ this.btnReverse.Size = new System.Drawing.Size(38, 20);
+ this.btnReverse.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnReverse.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnReverse.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnReverse.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnReverse.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnReverse.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnReverse.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnReverse.Style.GradientAngle = 90;
+ this.btnReverse.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnReverse.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnReverse.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnReverse.TabIndex = 726;
+ this.btnReverse.Text = "反选";
+ this.btnReverse.Click += new System.EventHandler(this.btnReverse_Click);
+ //
+ // btnAddSelect
+ //
+ this.btnAddSelect.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnAddSelect.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnAddSelect.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnAddSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnAddSelect.Location = new System.Drawing.Point(9, 117);
+ this.btnAddSelect.Name = "btnAddSelect";
+ this.btnAddSelect.Size = new System.Drawing.Size(70, 20);
+ this.btnAddSelect.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnAddSelect.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnAddSelect.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnAddSelect.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnAddSelect.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnAddSelect.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnAddSelect.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnAddSelect.Style.GradientAngle = 90;
+ this.btnAddSelect.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnAddSelect.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnAddSelect.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnAddSelect.TabIndex = 742;
+ this.btnAddSelect.Text = "选中条件";
+ this.btnAddSelect.Click += new System.EventHandler(this.btnAddSelect_Click);
+ //
+ // btnEmptyShop
+ //
+ this.btnEmptyShop.CanvasColor = System.Drawing.SystemColors.Control;
+ this.btnEmptyShop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnEmptyShop.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnEmptyShop.Location = new System.Drawing.Point(113, 95);
+ this.btnEmptyShop.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.btnEmptyShop.Name = "btnEmptyShop";
+ this.btnEmptyShop.Size = new System.Drawing.Size(38, 20);
+ this.btnEmptyShop.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnEmptyShop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnEmptyShop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnEmptyShop.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.btnEmptyShop.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnEmptyShop.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.btnEmptyShop.Style.GradientAngle = 90;
+ this.btnEmptyShop.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnEmptyShop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnEmptyShop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnEmptyShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnEmptyShop.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.btnEmptyShop.TabIndex = 713;
+ this.btnEmptyShop.Text = "清空";
+ this.btnEmptyShop.Click += new System.EventHandler(this.btnEmptyShop_Click);
+ //
+ // label16
+ //
+ this.label16.AutoSize = true;
+ this.label16.Location = new System.Drawing.Point(7, 72);
+ this.label16.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label16.Name = "label16";
+ this.label16.Size = new System.Drawing.Size(32, 17);
+ this.label16.TabIndex = 697;
+ this.label16.Text = "备注";
+ //
+ // txtFilterShopName
+ //
+ this.txtFilterShopName.Font = new System.Drawing.Font("微软雅黑", 10F);
+ this.txtFilterShopName.Location = new System.Drawing.Point(38, 41);
+ this.txtFilterShopName.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
+ this.txtFilterShopName.Name = "txtFilterShopName";
+ this.txtFilterShopName.Size = new System.Drawing.Size(113, 25);
+ this.txtFilterShopName.TabIndex = 653;
+ //
+ // label17
+ //
+ this.label17.AutoSize = true;
+ this.label17.Location = new System.Drawing.Point(7, 45);
+ this.label17.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label17.Name = "label17";
+ this.label17.Size = new System.Drawing.Size(32, 17);
+ this.label17.TabIndex = 699;
+ this.label17.Text = "名称";
+ //
+ // splitContainer3
+ //
+ this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+ this.splitContainer3.Location = new System.Drawing.Point(0, 0);
+ this.splitContainer3.Name = "splitContainer3";
+ this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;
+ //
+ // splitContainer3.Panel1
+ //
+ this.splitContainer3.Panel1.Controls.Add(this.splitContainer2);
+ //
+ // splitContainer3.Panel2
+ //
+ this.splitContainer3.Panel2.Controls.Add(this.splitContainer4);
+ this.splitContainer3.Size = new System.Drawing.Size(1424, 472);
+ this.splitContainer3.SplitterDistance = 442;
+ this.splitContainer3.TabIndex = 1;
+ //
+ // splitContainer2
+ //
+ this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
+ this.splitContainer2.Location = new System.Drawing.Point(0, 0);
+ this.splitContainer2.Name = "splitContainer2";
+ //
+ // splitContainer2.Panel1
+ //
+ this.splitContainer2.Panel1.Controls.Add(this.btnRefreshAuthor);
+ this.splitContainer2.Panel1.Controls.Add(this.pbLoadingShop);
+ this.splitContainer2.Panel1.Controls.Add(this.btnFilterShop);
+ this.splitContainer2.Panel1.Controls.Add(this.dgvShop);
+ this.splitContainer2.Panel1.Padding = new System.Windows.Forms.Padding(4, 0, 0, 0);
+ //
+ // splitContainer2.Panel2
+ //
+ this.splitContainer2.Panel2.Controls.Add(this.pbLoading);
+ this.splitContainer2.Panel2.Controls.Add(this.chkTestNoAuditUpload);
+ this.splitContainer2.Panel2.Controls.Add(this.dgvSelectProduct);
+ this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0);
+ this.splitContainer2.Size = new System.Drawing.Size(1424, 442);
+ this.splitContainer2.SplitterDistance = 350;
+ this.splitContainer2.TabIndex = 0;
+ //
+ // btnRefreshAuthor
+ //
+ this.btnRefreshAuthor.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnRefreshAuthor.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnRefreshAuthor.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnRefreshAuthor.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnRefreshAuthor.Location = new System.Drawing.Point(14, 36);
+ this.btnRefreshAuthor.Name = "btnRefreshAuthor";
+ this.btnRefreshAuthor.Size = new System.Drawing.Size(70, 20);
+ this.btnRefreshAuthor.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnRefreshAuthor.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnRefreshAuthor.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnRefreshAuthor.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnRefreshAuthor.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnRefreshAuthor.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnRefreshAuthor.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnRefreshAuthor.Style.GradientAngle = 90;
+ this.btnRefreshAuthor.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnRefreshAuthor.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnRefreshAuthor.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnRefreshAuthor.TabIndex = 800;
+ this.btnRefreshAuthor.Text = "刷新授权";
+ this.btnRefreshAuthor.Visible = false;
+ this.btnRefreshAuthor.Click += new System.EventHandler(this.btnRefreshAuthor_Click);
+ //
+ // pbLoadingShop
+ //
+ this.pbLoadingShop.Anchor = System.Windows.Forms.AnchorStyles.None;
+ this.pbLoadingShop.Image = global::TemuKJD.Properties.Resources.loading_blue;
+ this.pbLoadingShop.Location = new System.Drawing.Point(150, 196);
+ this.pbLoadingShop.Name = "pbLoadingShop";
+ this.pbLoadingShop.Size = new System.Drawing.Size(50, 50);
+ this.pbLoadingShop.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
+ this.pbLoadingShop.TabIndex = 189;
+ this.pbLoadingShop.TabStop = false;
+ this.pbLoadingShop.Visible = false;
+ //
+ // btnFilterShop
+ //
+ this.btnFilterShop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnFilterShop.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnFilterShop.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnFilterShop.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnFilterShop.Location = new System.Drawing.Point(13, 62);
+ this.btnFilterShop.Name = "btnFilterShop";
+ this.btnFilterShop.Size = new System.Drawing.Size(102, 20);
+ this.btnFilterShop.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnFilterShop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnFilterShop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnFilterShop.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnFilterShop.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnFilterShop.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnFilterShop.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnFilterShop.Style.GradientAngle = 90;
+ this.btnFilterShop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnFilterShop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnFilterShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnFilterShop.TabIndex = 703;
+ this.btnFilterShop.Text = "过滤店铺";
+ this.btnFilterShop.Click += new System.EventHandler(this.btnFilterShop_Click);
+ //
+ // dgvShop
+ //
+ this.dgvShop.AllowUserToAddRows = false;
+ this.dgvShop.AllowUserToDeleteRows = false;
+ dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+ this.dgvShop.AutoRowNumber = true;
+ this.dgvShop.BackgroundColor = System.Drawing.Color.White;
+ this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+ dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+ this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+ this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+ this.colSelect,
+ this.colShopLoginName,
+ this.colShopId,
+ this.colShopName,
+ this.colShopNotes,
+ this.colSelectProduct,
+ this.colLoginStatus,
+ this.colApi,
+ this.colCanUse,
+ this.colUploadCount,
+ this.colOnSaleNum,
+ this.colRemaining,
+ this.colMessage});
+ this.dgvShop.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.dgvShop.Location = new System.Drawing.Point(4, 0);
+ this.dgvShop.Name = "dgvShop";
+ this.dgvShop.ReadOnly = true;
+ this.dgvShop.RowHeadersWidth = 25;
+ this.dgvShop.RowTemplate.Height = 23;
+ this.dgvShop.Size = new System.Drawing.Size(346, 442);
+ this.dgvShop.TabIndex = 6;
+ this.dgvShop.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvShop_CellContentClick);
+ //
+ // colSelect
+ //
+ this.colSelect.HeaderText = "全选";
+ this.colSelect.Name = "colSelect";
+ this.colSelect.ReadOnly = true;
+ this.colSelect.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSelect.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colSelect.Width = 28;
+ //
+ // colShopLoginName
+ //
+ this.colShopLoginName.HeaderText = "店铺登录名";
+ this.colShopLoginName.Name = "colShopLoginName";
+ this.colShopLoginName.ReadOnly = true;
+ this.colShopLoginName.Visible = false;
+ //
+ // colShopId
+ //
+ this.colShopId.HeaderText = "店铺Id";
+ this.colShopId.Name = "colShopId";
+ this.colShopId.ReadOnly = true;
+ this.colShopId.Visible = false;
+ this.colShopId.Width = 55;
+ //
+ // colShopName
+ //
+ this.colShopName.FillWeight = 150F;
+ this.colShopName.HeaderText = "店铺名称";
+ this.colShopName.Name = "colShopName";
+ this.colShopName.ReadOnly = true;
+ this.colShopName.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colShopName.Width = 75;
+ //
+ // colShopNotes
+ //
+ this.colShopNotes.HeaderText = "备注";
+ this.colShopNotes.Name = "colShopNotes";
+ this.colShopNotes.ReadOnly = true;
+ this.colShopNotes.Width = 75;
+ //
+ // colSelectProduct
+ //
+ this.colSelectProduct.HeaderText = "选择商品";
+ this.colSelectProduct.Name = "colSelectProduct";
+ this.colSelectProduct.ReadOnly = true;
+ this.colSelectProduct.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSelectProduct.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colSelectProduct.Visible = false;
+ this.colSelectProduct.Width = 62;
+ //
+ // colLoginStatus
+ //
+ this.colLoginStatus.HeaderText = "状态";
+ this.colLoginStatus.Name = "colLoginStatus";
+ this.colLoginStatus.ReadOnly = true;
+ this.colLoginStatus.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colLoginStatus.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colLoginStatus.Width = 38;
+ //
+ // colApi
+ //
+ this.colApi.HeaderText = "Api";
+ this.colApi.Name = "colApi";
+ this.colApi.ReadOnly = true;
+ this.colApi.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colApi.Visible = false;
+ this.colApi.Width = 38;
+ //
+ // colCanUse
+ //
+ this.colCanUse.HeaderText = "可用";
+ this.colCanUse.Name = "colCanUse";
+ this.colCanUse.ReadOnly = true;
+ this.colCanUse.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colCanUse.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colCanUse.Visible = false;
+ this.colCanUse.Width = 28;
+ //
+ // colUploadCount
+ //
+ this.colUploadCount.HeaderText = "已传";
+ this.colUploadCount.Name = "colUploadCount";
+ this.colUploadCount.ReadOnly = true;
+ this.colUploadCount.Visible = false;
+ this.colUploadCount.Width = 38;
+ //
+ // colOnSaleNum
+ //
+ this.colOnSaleNum.HeaderText = "在售";
+ this.colOnSaleNum.Name = "colOnSaleNum";
+ this.colOnSaleNum.ReadOnly = true;
+ this.colOnSaleNum.Visible = false;
+ this.colOnSaleNum.Width = 38;
+ //
+ // colRemaining
+ //
+ this.colRemaining.HeaderText = "月限额";
+ this.colRemaining.Name = "colRemaining";
+ this.colRemaining.ReadOnly = true;
+ this.colRemaining.Visible = false;
+ //
+ // colMessage
+ //
+ this.colMessage.HeaderText = "消息";
+ this.colMessage.Name = "colMessage";
+ this.colMessage.ReadOnly = true;
+ //
+ // 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(510, 196);
+ this.pbLoading.Name = "pbLoading";
+ this.pbLoading.Size = new System.Drawing.Size(50, 50);
+ this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
+ this.pbLoading.TabIndex = 780;
+ this.pbLoading.TabStop = false;
+ this.pbLoading.Visible = false;
+ //
+ // chkTestNoAuditUpload
+ //
+ this.chkTestNoAuditUpload.AutoSize = true;
+ this.chkTestNoAuditUpload.Location = new System.Drawing.Point(1094, 35);
+ this.chkTestNoAuditUpload.Name = "chkTestNoAuditUpload";
+ this.chkTestNoAuditUpload.Size = new System.Drawing.Size(123, 21);
+ this.chkTestNoAuditUpload.TabIndex = 779;
+ this.chkTestNoAuditUpload.Text = "测试免审提交商品";
+ this.chkTestNoAuditUpload.UseVisualStyleBackColor = true;
+ this.chkTestNoAuditUpload.Visible = false;
+ //
+ // dgvSelectProduct
+ //
+ this.dgvSelectProduct.AllowUserToAddRows = false;
+ this.dgvSelectProduct.AllowUserToDeleteRows = false;
+ dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3;
+ this.dgvSelectProduct.AutoRowNumber = true;
+ this.dgvSelectProduct.BackgroundColor = System.Drawing.Color.White;
+ this.dgvSelectProduct.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+ dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
+ this.dgvSelectProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+ this.dgvSelectProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+ this.colCheck,
+ this.colSelectId,
+ this.colSupplierId,
+ this.colSupplierName,
+ this.colLogin,
+ this.colInShop,
+ this.colSpuId,
+ this.colSkcId,
+ this.colDraftId,
+ this.colImgUrl,
+ this.colProductSkcPic,
+ this.colSkuFakeImgUrl,
+ this.colSkuFakeImg,
+ this.colProductName,
+ this.colProductCat,
+ this.colExtCode,
+ this.colPrice,
+ this.colSoldNum,
+ this.colMsg,
+ this.colNotes,
+ this.colUserNotes,
+ this.ColDelete,
+ this.colAddTime,
+ this.colCouponNum,
+ this.colOpResult});
+ this.dgvSelectProduct.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.dgvSelectProduct.Location = new System.Drawing.Point(0, 0);
+ this.dgvSelectProduct.Name = "dgvSelectProduct";
+ this.dgvSelectProduct.ReadOnly = true;
+ this.dgvSelectProduct.RowTemplate.Height = 23;
+ this.dgvSelectProduct.Size = new System.Drawing.Size(1066, 442);
+ this.dgvSelectProduct.TabIndex = 187;
+ this.dgvSelectProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvSelectProduct_CellContentClick);
+ //
+ // colCheck
+ //
+ this.colCheck.Frozen = true;
+ this.colCheck.HeaderText = "选择";
+ this.colCheck.Name = "colCheck";
+ this.colCheck.ReadOnly = true;
+ this.colCheck.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colCheck.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colCheck.Width = 30;
+ //
+ // colSelectId
+ //
+ this.colSelectId.HeaderText = "认领Id";
+ this.colSelectId.Name = "colSelectId";
+ this.colSelectId.ReadOnly = true;
+ this.colSelectId.Visible = false;
+ //
+ // colSupplierId
+ //
+ this.colSupplierId.Frozen = true;
+ this.colSupplierId.HeaderText = "店铺Id";
+ this.colSupplierId.Name = "colSupplierId";
+ this.colSupplierId.ReadOnly = true;
+ //
+ // colSupplierName
+ //
+ dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5;
+ this.colSupplierName.Frozen = true;
+ this.colSupplierName.HeaderText = "店铺名称";
+ this.colSupplierName.Name = "colSupplierName";
+ this.colSupplierName.ReadOnly = true;
+ //
+ // colLogin
+ //
+ this.colLogin.HeaderText = "登录";
+ this.colLogin.Name = "colLogin";
+ this.colLogin.ReadOnly = true;
+ this.colLogin.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colLogin.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colLogin.Width = 40;
+ //
+ // colInShop
+ //
+ this.colInShop.HeaderText = "进店";
+ this.colInShop.Name = "colInShop";
+ this.colInShop.ReadOnly = true;
+ this.colInShop.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colInShop.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colInShop.Width = 40;
+ //
+ // colSpuId
+ //
+ this.colSpuId.HeaderText = "源商品ID";
+ this.colSpuId.Name = "colSpuId";
+ this.colSpuId.ReadOnly = true;
+ this.colSpuId.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSpuId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colSpuId.Visible = false;
+ //
+ // colSkcId
+ //
+ this.colSkcId.FillWeight = 150F;
+ this.colSkcId.HeaderText = "商品SKC";
+ this.colSkcId.Name = "colSkcId";
+ this.colSkcId.ReadOnly = true;
+ this.colSkcId.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSkcId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colSkcId.Visible = false;
+ this.colSkcId.Width = 80;
+ //
+ // colDraftId
+ //
+ this.colDraftId.HeaderText = "商品Id";
+ this.colDraftId.Name = "colDraftId";
+ this.colDraftId.ReadOnly = true;
+ this.colDraftId.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colDraftId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ this.colDraftId.Width = 120;
+ //
+ // colImgUrl
+ //
+ this.colImgUrl.HeaderText = "图片地址";
+ this.colImgUrl.Name = "colImgUrl";
+ this.colImgUrl.ReadOnly = true;
+ this.colImgUrl.Visible = false;
+ //
+ // colProductSkcPic
+ //
+ this.colProductSkcPic.HeaderText = "图片";
+ this.colProductSkcPic.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom;
+ this.colProductSkcPic.Name = "colProductSkcPic";
+ this.colProductSkcPic.ReadOnly = true;
+ this.colProductSkcPic.Width = 60;
+ //
+ // colSkuFakeImgUrl
+ //
+ this.colSkuFakeImgUrl.HeaderText = "SKU替换图地址";
+ this.colSkuFakeImgUrl.Name = "colSkuFakeImgUrl";
+ this.colSkuFakeImgUrl.ReadOnly = true;
+ this.colSkuFakeImgUrl.Visible = false;
+ //
+ // colSkuFakeImg
+ //
+ this.colSkuFakeImg.HeaderText = "SKU替换图";
+ this.colSkuFakeImg.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom;
+ this.colSkuFakeImg.Name = "colSkuFakeImg";
+ this.colSkuFakeImg.ReadOnly = true;
+ this.colSkuFakeImg.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSkuFakeImg.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+ this.colSkuFakeImg.Visible = false;
+ this.colSkuFakeImg.Width = 60;
+ //
+ // colProductName
+ //
+ dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colProductName.DefaultCellStyle = dataGridViewCellStyle6;
+ this.colProductName.HeaderText = "商品标题";
+ this.colProductName.Name = "colProductName";
+ this.colProductName.ReadOnly = true;
+ this.colProductName.Width = 150;
+ //
+ // colProductCat
+ //
+ dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colProductCat.DefaultCellStyle = dataGridViewCellStyle7;
+ this.colProductCat.HeaderText = "商品类目";
+ this.colProductCat.Name = "colProductCat";
+ this.colProductCat.ReadOnly = true;
+ this.colProductCat.Width = 90;
+ //
+ // colExtCode
+ //
+ this.colExtCode.HeaderText = "商品货号";
+ this.colExtCode.Name = "colExtCode";
+ this.colExtCode.ReadOnly = true;
+ this.colExtCode.Width = 145;
+ //
+ // colPrice
+ //
+ this.colPrice.HeaderText = "价格";
+ this.colPrice.Name = "colPrice";
+ this.colPrice.ReadOnly = true;
+ this.colPrice.Width = 60;
+ //
+ // colSoldNum
+ //
+ this.colSoldNum.HeaderText = "销量";
+ this.colSoldNum.Name = "colSoldNum";
+ this.colSoldNum.ReadOnly = true;
+ this.colSoldNum.Width = 60;
+ //
+ // colMsg
+ //
+ this.colMsg.HeaderText = "状态";
+ this.colMsg.Name = "colMsg";
+ this.colMsg.ReadOnly = true;
+ //
+ // colNotes
+ //
+ this.colNotes.HeaderText = "上传备注";
+ this.colNotes.Name = "colNotes";
+ this.colNotes.ReadOnly = true;
+ this.colNotes.Visible = false;
+ //
+ // colUserNotes
+ //
+ this.colUserNotes.HeaderText = "重上/已买";
+ this.colUserNotes.Name = "colUserNotes";
+ this.colUserNotes.ReadOnly = true;
+ this.colUserNotes.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+ this.colUserNotes.Visible = false;
+ this.colUserNotes.Width = 75;
+ //
+ // ColDelete
+ //
+ this.ColDelete.HeaderText = "删除";
+ this.ColDelete.Name = "ColDelete";
+ this.ColDelete.ReadOnly = true;
+ this.ColDelete.Visible = false;
+ this.ColDelete.Width = 75;
+ //
+ // colAddTime
+ //
+ dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colAddTime.DefaultCellStyle = dataGridViewCellStyle8;
+ this.colAddTime.HeaderText = "上架时间";
+ this.colAddTime.Name = "colAddTime";
+ this.colAddTime.ReadOnly = true;
+ this.colAddTime.Width = 80;
+ //
+ // colCouponNum
+ //
+ this.colCouponNum.HeaderText = "生效券数量";
+ this.colCouponNum.Name = "colCouponNum";
+ this.colCouponNum.ReadOnly = true;
+ this.colCouponNum.Visible = false;
+ this.colCouponNum.Width = 90;
+ //
+ // colOpResult
+ //
+ this.colOpResult.HeaderText = "操作结果";
+ this.colOpResult.Name = "colOpResult";
+ this.colOpResult.ReadOnly = true;
+ this.colOpResult.Width = 260;
+ //
+ // splitContainer4
+ //
+ this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Right;
+ this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
+ this.splitContainer4.Location = new System.Drawing.Point(349, 0);
+ this.splitContainer4.Name = "splitContainer4";
+ //
+ // splitContainer4.Panel1
+ //
+ this.splitContainer4.Panel1.Controls.Add(this.statusBar);
+ //
+ // splitContainer4.Panel2
+ //
+ this.splitContainer4.Panel2.Controls.Add(this.btnClear);
+ this.splitContainer4.Panel2.Controls.Add(this.panelEx1);
+ this.splitContainer4.Size = new System.Drawing.Size(1075, 26);
+ this.splitContainer4.SplitterDistance = 837;
+ this.splitContainer4.TabIndex = 3;
+ //
+ // statusBar
+ //
+ this.statusBar.BackColor = System.Drawing.Color.White;
+ this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.statusBar.Location = new System.Drawing.Point(0, 0);
+ this.statusBar.Margin = new System.Windows.Forms.Padding(0);
+ this.statusBar.Name = "statusBar";
+ this.statusBar.Size = new System.Drawing.Size(837, 26);
+ this.statusBar.TabIndex = 2;
+ //
+ // btnClear
+ //
+ this.btnClear.Anchor = System.Windows.Forms.AnchorStyles.Right;
+ this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnClear.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnClear.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnClear.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnClear.Location = new System.Drawing.Point(22, 2);
+ this.btnClear.Name = "btnClear";
+ this.btnClear.Size = new System.Drawing.Size(90, 21);
+ this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClear.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnClear.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnClear.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnClear.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnClear.Style.GradientAngle = 90;
+ this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.btnClear.TabIndex = 440;
+ this.btnClear.Text = "清空结果";
+ this.btnClear.Visible = false;
+ //
+ // panelEx1
+ //
+ this.panelEx1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control;
+ this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty;
+ this.panelEx1.Location = new System.Drawing.Point(115, 2);
+ this.panelEx1.Name = "panelEx1";
+ this.panelEx1.Size = new System.Drawing.Size(115, 21);
+ this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.panelEx1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.panelEx1.Style.GradientAngle = 90;
+ this.panelEx1.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.panelEx1.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.panelEx1.TabIndex = 668;
+ this.panelEx1.Text = "停止当前操作";
+ this.panelEx1.Visible = false;
+ //
+ // WXProdComplateForm
+ //
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+ this.BackColor = System.Drawing.Color.White;
+ this.ClientSize = new System.Drawing.Size(1424, 641);
+ this.Controls.Add(this.splitContainer1);
+ this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.Name = "WXProdComplateForm";
+ this.Text = "爆单神器";
+ this.Load += new System.EventHandler(this.UserSelectDbProductForm_Load);
+ this.VisibleChanged += new System.EventHandler(this.UserSelectDbProductForm_VisibleChanged);
+ this.splitContainer1.Panel1.ResumeLayout(false);
+ this.splitContainer1.Panel2.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
+ this.splitContainer1.ResumeLayout(false);
+ this.ucGroupBoxEx3.ResumeLayout(false);
+ this.ucGroupBoxEx3.PerformLayout();
+ this.ucGroupBoxEx4.ResumeLayout(false);
+ this.ucGroupBoxEx4.PerformLayout();
+ this.ucGroupBoxEx1.ResumeLayout(false);
+ this.ucGroupBoxEx1.PerformLayout();
+ this.splitContainer3.Panel1.ResumeLayout(false);
+ this.splitContainer3.Panel2.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
+ this.splitContainer3.ResumeLayout(false);
+ this.splitContainer2.Panel1.ResumeLayout(false);
+ this.splitContainer2.Panel2.ResumeLayout(false);
+ this.splitContainer2.Panel2.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
+ this.splitContainer2.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.pbLoadingShop)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.dgvSelectProduct)).EndInit();
+ this.splitContainer4.Panel1.ResumeLayout(false);
+ this.splitContainer4.Panel2.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit();
+ this.splitContainer4.ResumeLayout(false);
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.SplitContainer splitContainer1;
+ private UserComponent.UcGroupBoxEx ucGroupBoxEx1;
+ private DevComponents.DotNetBar.PanelEx btnRefreshShop;
+ private System.Windows.Forms.SplitContainer splitContainer3;
+ private System.Windows.Forms.SplitContainer splitContainer2;
+ private UserComponent.DataGridViewEx dgvShop;
+ private UserComponent.DataGridViewEx dgvSelectProduct;
+ private System.Windows.Forms.SplitContainer splitContainer4;
+ private UserControls.StatusBarUserControl statusBar;
+ private DevComponents.DotNetBar.PanelEx btnSearchProd;
+ private DevComponents.DotNetBar.PanelEx btnClearFilter;
+ private DevComponents.DotNetBar.PanelEx btnClearDgv;
+ private DevComponents.DotNetBar.PanelEx btnClear;
+ private DevComponents.DotNetBar.PanelEx panelEx1;
+ private UserComponent.UcCheckBox chkTestNoAuditUpload;
+ private System.Windows.Forms.PictureBox pbLoadingShop;
+ private System.Windows.Forms.PictureBox pbLoading;
+ private System.Windows.Forms.TextBox txtFilterShopName;
+ private DevComponents.DotNetBar.PanelEx btnFilterShop;
+ private System.Windows.Forms.Label label17;
+ private System.Windows.Forms.Label label16;
+ private DevComponents.DotNetBar.PanelEx btnEmptyShop;
+ private DevComponents.DotNetBar.PanelEx btnReverse;
+ private DevComponents.DotNetBar.PanelEx btnAddUnSelect;
+ private DevComponents.DotNetBar.PanelEx btnAddSelect;
+ private DevComponents.DotNetBar.PanelEx btnSelectOffline;
+ private DevComponents.DotNetBar.PanelEx btnSelectOnline;
+ private DevComponents.DotNetBar.PanelEx btnRefreshAuthor;
+ private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colShopLoginName;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colShopId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colShopName;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colShopNotes;
+ private System.Windows.Forms.DataGridViewLinkColumn colSelectProduct;
+ private System.Windows.Forms.DataGridViewLinkColumn colLoginStatus;
+ private System.Windows.Forms.DataGridViewLinkColumn colApi;
+ private System.Windows.Forms.DataGridViewCheckBoxColumn colCanUse;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colUploadCount;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colOnSaleNum;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colRemaining;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colMessage;
+ private System.Windows.Forms.TextBox txtPageEnd;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.Label label3;
+ private System.Windows.Forms.ComboBox cmbPreType;
+ private UserComponent.UcGroupBoxEx ucGroupBoxEx3;
+ private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.TextBox txtFiltSaleNumMoreThan;
+ private DevComponents.DotNetBar.PanelEx btnFiltSelectMoreThan;
+ private DevComponents.DotNetBar.PanelEx panelEx6;
+ private System.Windows.Forms.Label label5;
+ private System.Windows.Forms.TextBox txtFiltSaleNumLessThan;
+ private DevComponents.DotNetBar.PanelEx btnFiltSelectLessThan;
+ private System.Windows.Forms.ComboBox cmbSaleSort;
+ private System.Windows.Forms.Label label6;
+ private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSelectId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierName;
+ private System.Windows.Forms.DataGridViewLinkColumn colLogin;
+ private System.Windows.Forms.DataGridViewLinkColumn colInShop;
+ private System.Windows.Forms.DataGridViewLinkColumn colSpuId;
+ private System.Windows.Forms.DataGridViewLinkColumn colSkcId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colDraftId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colImgUrl;
+ private System.Windows.Forms.DataGridViewImageColumn colProductSkcPic;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSkuFakeImgUrl;
+ private System.Windows.Forms.DataGridViewImageColumn colSkuFakeImg;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colProductName;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colProductCat;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colExtCode;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colPrice;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSoldNum;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colMsg;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colNotes;
+ private System.Windows.Forms.DataGridViewLinkColumn colUserNotes;
+ private System.Windows.Forms.DataGridViewLinkColumn ColDelete;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colAddTime;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colCouponNum;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult;
+ private UserComponent.UcGroupBoxEx ucGroupBoxEx4;
+ private DevComponents.DotNetBar.PanelEx btnPromotion;
+ private DevComponents.DotNetBar.PanelEx panelEx2;
+ private UserComponent.UcCheckBox chkFailDownProd;
+ private System.Windows.Forms.TextBox textBox1;
+ private System.Windows.Forms.TextBox textBox2;
+ private System.Windows.Forms.Label label1;
+ }
+}
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.cs b/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.cs
new file mode 100644
index 0000000..204ba95
--- /dev/null
+++ b/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.cs
@@ -0,0 +1,1237 @@
+using AllBase;
+using AllBase.Helper;
+using AllBase.Model.Result;
+using NaiBa.Util.Extension;
+using Newtonsoft.Json.Linq;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Net.Http;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using TemuKJD.Extension;
+using TemuKJD.BaseForms;
+using TemuKJD.ToolForms;
+using Work;
+using TemuKJD.BLL;
+using System.Text.RegularExpressions;
+using TemuKJD.PDDForms.ProductSelectForms;
+using TemuKJD.WXForms.ShopForms;
+using AllBase.Model.Result.PDDResult;
+using AllBase.Model.Param.WXParam;
+using AllBase.Model.Result.WXResult;
+using Newtonsoft.Json;
+using NaiBa.Util;
+using AllBase.Model.Config;
+using TemuKJD.WXForms.ProductForms;
+
+namespace TemuKJD.WXForms.AdminForms
+{
+ public partial class WXProdComplateForm : BaseForm
+ {
+ int PageBegin = 1;
+ int PageEnd = 999;
+ string PreType = "";
+ public CancellationTokenSource cancellationTokenSource { get; set; } = null;
+ public bool IsLoadComplate { get; set; } = false;
+
+ bool isInit = false;
+ CheckBox chkSelectAll = null;
+ ConcurrentList lstShopAuthInfo = new ConcurrentList();
+ ConcurrentList lstWXShopTokenInfo = new ConcurrentList();
+ public NaiBa.Util.ConcurrentList lstTemuDBProductSelect = new NaiBa.Util.ConcurrentList();
+ //public Dictionary> dicCheckedShopIdList = new Dictionary>();
+ public Dictionary dicCheckedShopId = new Dictionary();
+ public Dictionary dicShopUpload = new Dictionary();
+ public string pdd_product_cates = "";
+ public WXProdComplateForm()
+ {
+ InitializeComponent();
+ }
+
+ private void UserSelectDbProductForm_Load(object sender, EventArgs e)
+ {
+ this.splitContainer1.Dock = DockStyle.Fill;
+
+ lstShopAuthInfo = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_shop_auth_list");
+ if (lstShopAuthInfo == null)
+ lstShopAuthInfo = new ConcurrentList();
+
+ lstWXShopTokenInfo = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_shop_token_list");
+ if (lstWXShopTokenInfo == null)
+ lstWXShopTokenInfo = new ConcurrentList();
+
+ lstTemuDBProductSelect = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_db_prod_upload_list");
+ if (lstTemuDBProductSelect == null)
+ lstTemuDBProductSelect = new NaiBa.Util.ConcurrentList();
+
+ dicCheckedShopId = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_checked_shop_dic");
+ if (dicCheckedShopId == null)
+ dicCheckedShopId = new Dictionary();
+ dicShopUpload = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_shop_upload_info");
+ if (dicShopUpload == null)
+ dicShopUpload = new Dictionary();
+
+
+
+ chkSelectAll = dgvShop.Columns["colSelect"].AddHeaderCheckBox(HorizontalAlignment.Center, 0, 0, null, null, false);
+ dgvShop.Columns["colSelect"].HeaderText = "";
+ //chkSelectAll.Width = chkSelectAll.Height = 13;
+ chkSelectAll.CheckedChanged += chkSelectAll_CheckedChanged;
+ //chkSelectAll.Checked = true;
+
+ this.dgvSelectProduct.AddSelectorColumn("colCheck");
+
+ dgvSelectProduct.AddImgColumn("colProductSkcPic", "colImgUrl");
+ dgvSelectProduct.AddImgColumn("colSkuFakeImg", "colSkuFakeImgUrl");
+
+ dgvSelectProduct.Columns["colSkuFakeImg"].Visible = false;
+
+//#if DEBUG
+ if (BaseClass.SaLevel == 1)
+ {
+ //txtIdFilter.Visible = true;
+ //txtExtCodeFilter.Visible = true;
+ //lblIdFilter.Visible = true;
+ //lblExtCodeFilter.Visible = true;
+ }
+//#endif
+ IsLoadComplate = true;
+ }
+
+ private void btnRefreshAuthor_Click(object sender, EventArgs e)
+ {
+ updateAuthor(true);
+ }
+
+ ///
+ /// 升级授权
+ ///
+ /// 今日取过的也取
+ private void updateAuthor(bool idRefreshTodayHasGet = false)
+ {
+ this.pbLoadingShop.Visible = true;
+ Task.Run(() =>
+ {
+ // 店铺Id
+ var updateIds = dgvShop.Rows.Cast().Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList();
+ var selectIds = dgvShop.Rows.Cast().Where(row
+ => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList();
+ if (idRefreshTodayHasGet == true)
+ updateIds = selectIds;
+
+ List tList = new List();
+ if (idRefreshTodayHasGet)
+ lstShopAuthInfo.RemoveAll(s => updateIds.Contains(s.ShopId));
+ foreach (var shop in GlobalConfig.ShopLoginList.Where(s => updateIds.Contains(s.ShopId)))
+ {
+ Invoke(new Action(() => { BindShop(shop, selectIds, ""); }));
+ var t = Task.Run(() =>
+ {
+ try
+ {
+ if (shop.LoginStatus != "登录成功")
+ {
+ Invoke(new Action(() => { BindShop(shop, selectIds, "店铺掉线"); }));
+ return;
+ }
+
+ var authInfo = lstShopAuthInfo.FirstOrDefault(sa => sa.ShopId == shop.ShopId);
+ if (idRefreshTodayHasGet || authInfo == null || authInfo?.AddTime.Date != DateTime.Now.Date)
+ {
+ lstShopAuthInfo.RemoveAll(sa => sa.ShopId == shop.ShopId);
+ var rst = WXUpload.GetApiServiceList(shop);
+ if (!rst.Contains("\"code\":0"))
+ {
+ WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ if (shop.LoginStatus != "登录成功")
+ {
+ Invoke(new Action(() => { BindShop(shop, selectIds, "店铺掉线"); }));
+ return;
+ }
+
+ lstShopAuthInfo.Add(new AuthInfo() { ShopId = shop.ShopId, AddTime = DateTime.Now, ExpiresTime = DateTime.Now });
+ Invoke(new Action(() => { BindShop(shop, selectIds, "授权查询失败"); }));
+ return;
+ }
+
+ foreach (var itemObj in JsonHelper.JObjectParse(rst)["itemList"])
+ {
+ // 找到了指定服务
+ if (itemObj["serviceName"].ParseToString() == "店统领供应链-商品管理")
+ {
+ var expiresTick = itemObj["expireTime"].ParseToLong();
+ lstShopAuthInfo.Add(new AuthInfo() { ShopId = shop.ShopId, AddTime = DateTime.Now, ExpiresTime = BaseClass.StampToDateTime(expiresTick.ParseToInt()) });
+ Invoke(new Action(() => { BindShop(shop, selectIds, "已查询"); }));
+ return;
+ }
+ }
+ // 没找到指定服务
+ lstShopAuthInfo.Add(new AuthInfo() { ShopId = shop.ShopId, AddTime = DateTime.Now, ExpiresTime = DateTime.Now });
+ Invoke(new Action(() => { BindShop(shop, selectIds, "已查询"); }));
+ }
+ }
+ catch (Exception ex)
+ {
+ }
+ });
+ tList.Add(t);
+ while (tList.Where(ta => !ta.IsFaulted && !ta.IsCompleted).Count() >= 20) { Thread.Sleep(100); }
+ }
+ while (tList.Where(ta => !ta.IsFaulted && !ta.IsCompleted).Count() >= 1) { Thread.Sleep(100); }
+ NaiBa.Util.Helper.ConfigHelper.SaveConfig( "wx_shop_auth_list", lstShopAuthInfo);
+ Invoke(new Action(() => { pbLoadingShop.Visible = false; }));
+ });
+ }
+
+ private void chkSelectAll_CheckedChanged(object sender, EventArgs e)
+ {
+ if (!chkSelectAll.Checked)
+ {
+ foreach (DataGridViewRow row in dgvShop.Rows)
+ {
+ row.Cells["colSelect"].Value = false;
+ }
+ }
+ else
+ {
+ //var list = GlobalConfig.ShopLoginList.Where(s => s.LoginStatus == "登录成功").Select(ss => ss.ShopId);
+ foreach (DataGridViewRow row in dgvShop.Rows)
+ {
+ //if (list.Any(l => l == row.Cells["colShopId"]?.Value?.ToString()))
+ if(row.Visible == true)
+ row.Cells["colSelect"].Value = true;
+ }
+ }
+
+ foreach (var r in dgvShop.Rows.Cast())
+ {
+ dicCheckedShopId[r.Cells["colShopId"].Value.ParseToString()] = r.Cells["colSelect"].Value.ParseToBool();
+ }
+ NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_checked_shop_dic", dicCheckedShopId);
+ }
+
+ private void btnRefreshShop_Click(object sender, EventArgs e)
+ {
+ pbLoadingShop.Visible = true;
+ RefreshShopLogin();
+ }
+
+ private void UserSelectDbProductForm_VisibleChanged(object sender, EventArgs e)
+ {
+ if (Visible == true)
+ {
+ //RefreshShopLogin();
+ //updateAuthor();
+
+ if (!isInit)
+ {
+ Task.Run(() =>
+ {
+ foreach (var shop in GlobalConfig.ShopLoginList)
+ {
+ //if (shop.LoginStatus == "登录成功")
+ //{
+ // var rst = WXUpload.scanProductPreview(shop);
+ // if (!rst.Contains("\"code\":0") && !rst.Contains("\"success\":true"))
+ // {
+ // WXShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false);
+ // }
+ //}
+ }
+
+ });
+ }
+
+ isInit = true;
+ }
+ }
+
+ private void RefreshShopLogin()
+ {
+ // 店铺Id
+ var selectIds = dgvShop.Rows.Cast().Where(row
+ => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList();
+ // 获取被删除的店铺
+ List dgvRowList = dgvShop.Rows.Cast().Where(row
+ => !GlobalConfig.ShopLoginList.Any(s => s.ShopId == row.Cells["colShopId"]?.Value?.ToString())).ToList();
+ // 更新被删除的店铺列表
+ foreach (var row in dgvRowList)
+ {
+ dgvShop.Rows.Remove(row);
+ }
+ // 绑定其他店铺(含新导入的店铺)
+ foreach (ShopLoginInfo shopEntity in GlobalConfig.ShopLoginList)
+ {
+ if (!string.IsNullOrEmpty(shopEntity.ShopId))
+ BindShop(shopEntity, selectIds);
+ }
+ //cmbFilterShopNotes.Items.Clear();
+ ////cmbFilterShopNotes.Items.Add("");
+ //foreach (var note in GlobalConfig.ShopLoginList.Select(s => s.Notes).Where(s => !s.IsNullOrEmpty()).Distinct())
+ //{
+ // cmbFilterShopNotes.Items.Add(note);
+ //}
+ textBox1.Text = "";
+ }
+
+ private void BindShop(ShopLoginInfo shopEntity, List selectShopId = null, string msg = "")
+ {
+ if (shopEntity == null)
+ return;
+ if (selectShopId == null)
+ selectShopId = new List();
+
+ bool canUse = shopEntity.LoginStatus == "登录成功";
+ //canUse = true; // 内部库不需要校验登录状态
+ var row = dgvShop.Rows.Cast().FirstOrDefault(p => p.Cells.GetCellValueFromColumnName("colShopId").ParseToString() == shopEntity.ShopId);
+ var day = DateTime.Now.ToString("yyyyMMdd").ParseToInt();
+ if (row == null)
+ {
+ this.dgvShop.Rows.Add(
+ //!isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse),
+ dicCheckedShopId.Keys.Contains(shopEntity.ShopId) && dicCheckedShopId[shopEntity.ShopId] == true,
+ shopEntity.LoginName,
+ shopEntity.ShopId,
+ shopEntity.ShopAccount,
+ shopEntity.Notes,
+ "选择商品",
+ canUse ? "在线" : "掉线",
+ lstShopAuthInfo.FirstOrDefault(sa => sa.ShopId == shopEntity.ShopId)?.ExpiresTime > DateTime.Now.AddMinutes(5) ? "可用" : "过期",
+ canUse,
+ dicShopUpload.ContainsKey(shopEntity.ShopId) && dicShopUpload[shopEntity.ShopId].DicDayUploadCount.ContainsKey(day) ?
+ dicShopUpload[shopEntity.ShopId].DicDayUploadCount[day] : 0,
+ dicShopUpload.ContainsKey(shopEntity.ShopId) && dicShopUpload[shopEntity.ShopId].OnSaleRefreshDay == DateTime.Now.ToString("yyyyMMdd").ParseToInt() ?
+ dicShopUpload[shopEntity.ShopId].OnSaleCount : 0,
+ shopEntity.AddProductRemaining,
+ "",
+ msg
+ );
+ }
+ else
+ {
+ row.Cells["colSelect"].Value = !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse);
+ row.Cells["colShopLoginName"].Value = shopEntity.LoginName;
+ row.Cells["colShopName"].Value = shopEntity.ShopAccount;
+ row.Cells["colShopNotes"].Value = shopEntity.Notes;
+ row.Cells["colLoginStatus"].Value = canUse ? "在线" : "掉线";
+ row.Cells["colLoginStatus"].Style.ForeColor = canUse ? Color.Green : Color.Red;
+ row.Cells["colCanUse"].Value = canUse;
+ row.Cells["colApi"].Value = lstShopAuthInfo.FirstOrDefault(sa => sa.ShopId == shopEntity.ShopId)?.ExpiresTime > DateTime.Now.AddMinutes(5) ? "可用" : "过期";
+ row.Cells["colRemaining"].Value = shopEntity.AddProductRemaining;
+ row.Cells["colUploadCount"].Value = dicShopUpload.ContainsKey(shopEntity.ShopId) && dicShopUpload[shopEntity.ShopId].DicDayUploadCount.ContainsKey(day) ?
+ dicShopUpload[shopEntity.ShopId].DicDayUploadCount[day] : 0;
+ row.Cells["colOnSaleNum"].Value = dicShopUpload.ContainsKey(shopEntity.ShopId) && dicShopUpload[shopEntity.ShopId].OnSaleRefreshDay == DateTime.Now.ToString("yyyyMMdd").ParseToInt() ?
+ dicShopUpload[shopEntity.ShopId].OnSaleCount : 0;
+ row.Cells["colMessage"].Value = msg;
+ }
+
+ displayAuthStatus(shopEntity);
+ }
+
+ void displayAuthStatus(ShopLoginInfo shop)
+ {
+ var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ParseToString() == shop?.ShopId);
+ foreach (var row in rows)
+ {
+ bool canUse = row.Cells["colLoginStatus"].Value.ParseToString() == "在线";
+ (row.Cells["colLoginStatus"] as DataGridViewLinkCell).Style.ForeColor = canUse ? Color.Blue : Color.Red;
+ (row.Cells["colLoginStatus"] as DataGridViewLinkCell).LinkColor = canUse ? Color.Blue : Color.Red;
+ (row.Cells["colLoginStatus"] as DataGridViewLinkCell).ActiveLinkColor = canUse ? Color.LightBlue : Color.OrangeRed;
+ (row.Cells["colLoginStatus"] as DataGridViewLinkCell).VisitedLinkColor = canUse ? Color.DarkBlue : Color.DarkRed;
+ canUse = row.Cells["colApi"].Value.ParseToString() == "可用";
+ (row.Cells["colApi"] as DataGridViewLinkCell).Style.ForeColor = canUse ? Color.Blue : Color.Red;
+ (row.Cells["colApi"] as DataGridViewLinkCell).LinkColor = canUse ? Color.Blue : Color.Red;
+ (row.Cells["colApi"] as DataGridViewLinkCell).ActiveLinkColor = canUse ? Color.LightBlue : Color.OrangeRed;
+ (row.Cells["colApi"] as DataGridViewLinkCell).VisitedLinkColor = canUse ? Color.DarkBlue : Color.DarkRed;
+ }
+ }
+
+ private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e)
+ {
+ if (e.ColumnIndex < 0 || e.RowIndex < 0)
+ return;
+ string headerText = dgvShop.Columns[e.ColumnIndex].HeaderText;
+ string columnName = dgvShop.Columns[e.ColumnIndex].Name;
+ string shopId = dgvShop.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString();
+ string shopAccount = dgvShop.Rows[e.RowIndex].Cells["colShopName"].Value.ToString();
+ var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId.ToString());
+ var row = dgvShop.Rows[e.RowIndex];
+ switch (columnName)
+ {
+ case "colSelect":
+ //if (row.Cells["colCanUse"].Value.ParseToBool())
+ {
+ row.Cells["colSelect"].Value = !row.Cells["colSelect"].Value.ParseToBool();
+
+ chkSelectAll.CheckedChanged -= chkSelectAll_CheckedChanged;
+ if (dgvShop.Rows.Cast().All(r => r.Cells["colSelect"].Value.ParseToBool()))
+ chkSelectAll.Checked = true;
+ else
+ chkSelectAll.Checked = false;
+ chkSelectAll.CheckedChanged += chkSelectAll_CheckedChanged;
+ }
+ //else
+ {
+ //BaseMsgForm.ShowInfo("店铺未登录!");
+ }
+
+ dicCheckedShopId[row.Cells["colShopId"].Value.ParseToString()] = row.Cells["colSelect"].Value.ParseToBool();
+ NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_checked_shop_dic", dicCheckedShopId);
+ break;
+ case "colLoginStatus":
+ {
+ if (WXShopListForm.Instance == null)
+ WXShopListForm.Instance = new WXShopListForm();
+ WXAdminShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ WXAdminShopLoginForm shopLoginForm = new WXAdminShopLoginForm(shop);
+ if (shop.LoginStatus != "登录成功")
+ {
+ shopLoginForm.openType = EnumOpenType.login;
+ shopLoginForm.ShowDialog();
+ RefreshShopLogin();
+ }
+ else
+ {
+ shopLoginForm.openType = EnumOpenType.manage;
+ shopLoginForm.WindowState = FormWindowState.Maximized;
+ shopLoginForm.Show();
+ }
+ }
+ break;
+ case "colApi":
+ {
+ WXAdminShopLoginForm shopLoginForm = new WXAdminShopLoginForm(shop);
+ shopLoginForm.openType = EnumOpenType.manage;
+ shopLoginForm.WindowState = FormWindowState.Maximized;
+ shopLoginForm.InitUrl = "https://store.weixin.qq.com/shop/servicemarket/detail?serviceId=3984039898079707139";
+ shopLoginForm.Show();
+ }
+ break;
+ }
+ }
+
+ private void btnSearch_Click(object sender, EventArgs e)
+ {
+ var lstShopId = dgvShop.Rows.Cast().Where(row
+ => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList();
+ if (lstShopId.Count == 0)
+ {
+ BaseMsgForm.ShowInfo("请选择店铺!");
+ return;
+ }
+ }
+
+ private void dgvSelectProduct_CellContentClick(object sender, DataGridViewCellEventArgs e)
+ {
+ if (e.ColumnIndex < 0 || e.RowIndex < 0)
+ return;
+ string headerText = dgvSelectProduct.Columns[e.ColumnIndex].HeaderText;
+ var dbId = dgvSelectProduct.Rows[e.RowIndex].Cells["colSelectId"].Value.ParseToString();
+ var dbProduct = lstTemuDBProductSelect.FirstOrDefault(p => p.id.ToString() == dbId);
+ var shopId = dgvSelectProduct.Rows[e.RowIndex].Cells["colSupplierId"].Value.ParseToString();
+ var draftId = dgvSelectProduct.Rows[e.RowIndex].Cells["colDraftId"].Value.ParseToString();
+ var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
+
+ switch (headerText)
+ {
+ case "删除":
+ break;
+ case "登录":
+ {
+ WXAdminShopLoginForm shopLoginForm = new WXAdminShopLoginForm(shop);
+ //shopLoginForm.prodUserSelectForm = this;
+ shopLoginForm.openType = EnumOpenType.login;
+ shopLoginForm.ShowDialog();
+ RefreshShopLogin();
+ }
+ break;
+ case "进店":
+ {
+ WXAdminShopLoginForm shopLoginForm = new WXAdminShopLoginForm(shop);
+ WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ if (shop.LoginStatus == "登录成功")
+ {
+ shopLoginForm.openType = EnumOpenType.manage;
+ shopLoginForm.WindowState = FormWindowState.Maximized;
+ shopLoginForm.InitUrl = "https://store.weixin.qq.com/shop/home";
+ shopLoginForm.Show();
+ }
+ else
+ {
+ shopLoginForm.openType = EnumOpenType.login;
+ shopLoginForm.ShowDialog();
+ RefreshShopLogin();
+ }
+ }
+ break;
+ case "图片":
+ {
+ ShowImgForm imgFrom = new ShowImgForm(dgvSelectProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString());
+ imgFrom.ShowDialog();
+ break;
+ }
+ case "SKU替换图":
+ {
+ ShowImgForm imgFrom = new ShowImgForm(dgvSelectProduct.Rows[e.RowIndex].Cells["colSkuFakeImgUrl"].Value.ParseToString());
+ imgFrom.ShowDialog();
+ break;
+ }
+ case "":
+ dgvSelectProduct.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvSelectProduct.Rows[e.RowIndex].Cells["colCheck"].Value;
+ break;
+ default:
+ break;
+ }
+ }
+
+ private void btnStop_Click(object sender, EventArgs e)
+ {
+ if (this.cancellationTokenSource != null)
+ this.cancellationTokenSource.Cancel();
+ }
+
+ private void btnSearchProd_Click(object sender, EventArgs e)
+ {
+ var shopIdLst = dgvShop.Rows.Cast().Where(row
+ => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList();
+ if (shopIdLst.Count <= 0)
+ {
+ BaseMsgForm.ShowError("未勾选上传店铺!");
+ return;
+ }
+ btnSearchProd.Enabled = false;
+ pbLoading.Visible = true;
+ cancellationTokenSource = new CancellationTokenSource();
+ dgvSelectProduct.Rows.Clear();
+ dgvSelectProduct.Columns["colCouponNum"].Visible = false;
+ Task.Run(() =>
+ {
+ GetProduct(shopIdLst);
+ Invoke(new Action(() =>
+ {
+ this.statusBar.lblTaskStatus.Text = "商品查询完毕";
+ BaseMsgForm.ShowInfo("商品查询完毕");
+ pbLoading.Visible = false;
+ btnSearchProd.Enabled = true;
+ }));
+ }, cancellationTokenSource.Token);
+ }
+
+ void GetProduct(List shopIdLst)
+ {
+ List shopLst = GlobalConfig.ShopLoginList.Where(s => shopIdLst.Contains(s.ShopId)).ToList();
+ foreach(var shop in shopLst)
+ {
+ if(cancellationTokenSource.IsCancellationRequested)
+ break;
+
+ if (shop.LoginStatus != "登录成功")
+ {
+ continue;
+ }
+
+ int page = PageBegin - 1;
+ int totalPage = 1;
+ int pageSize = 50;
+ string nextKey = "";
+ while (page < totalPage && page < PageEnd)
+ {
+ page++;
+
+ if (cancellationTokenSource.IsCancellationRequested)
+ break;
+
+ string getProdOnSaleRst = "";
+
+ if (string.IsNullOrEmpty(PreType) && sortType == null)
+ getProdOnSaleRst = WXPreSale.scanProductPreview(shop, page, nextKey, pageSize);
+ else
+ getProdOnSaleRst = WXPreSale.searchProduct(shop, page, null, pageSize, sortType);
+ Thread.Sleep(Randomx.GetId(50, 100));
+ if (!getProdOnSaleRst.Contains("\"success\":true"))
+ {
+ var error = BaseRegex.GetStringJson(ref getProdOnSaleRst, "msg");
+ if (string.IsNullOrEmpty(error))
+ error = getProdOnSaleRst;
+
+ WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ if (shop.LoginStatus != "登录成功")
+ {
+ Invoke(new Action(() => { BindShop(shop, shopIdLst, "店铺掉线"); }));
+ }
+
+ var shopRow = dgvShop.Rows.Cast().FirstOrDefault(r => r.Cells["colShopId"].Value.ParseToString() == shop.ShopId);
+ Invoke(new Action(() => {
+ if (shopRow != null)
+ {
+ shopRow.Cells["colOpResult"].Value = error;
+ }
+ }));
+ break;
+ }
+
+ try
+ {
+ var prodObjs = JsonHelper.JObjectParse(getProdOnSaleRst);
+ if (page == 1 || 1 == 1)
+ {
+ var totalNum = prodObjs["totalNum"].ParseToInt();
+ totalPage = Math.Ceiling(1m * totalNum / pageSize).ParseToInt();
+ }
+ nextKey = prodObjs["nextKey"].ParseToString();
+ Invoke(new Action(() =>
+ {
+ this.pbLoading.Visible = true;
+ this.statusBar.lblTaskStatus.Text = "正在查询店铺:" + shop.ShopAccount + " " + page + "/" + Math.Min(PageEnd, totalPage);
+ //this.statusBar.pgbTaskProgress.Maximum = lstTemuDBProductSelect.Count;
+ //this.statusBar.UpdateProgressBar(0);
+ }));
+ foreach (JObject prod in prodObjs["productList"])
+ {
+ var pStr = JsonHelper.SerializeObject(prod);
+ Invoke(new Action(() =>
+ {
+ decimal? price = null;
+ try { price = prod["skuList"][0]["price"].ParseToDecimal() / 100; } catch { }
+ var prodId = prod["productId"].ParseToString();
+ if (dgvSelectProduct.Rows.Cast().Any(r => r.Cells["colDraftId"].ParseToString() == prodId))
+ {
+
+ }
+
+ var rowIndex = this.dgvSelectProduct.Rows.Add(
+ false,
+ "",
+ shop.ShopId,
+ shop.ShopAccount,
+ "登录",
+ "进店",
+ "",
+ "",
+ prod["productId"].ParseToString(),
+ prod["headImg"].ParseToString(),
+ DataGridViewExtension.defaultBitmap,
+ "", // 替换图地址
+ null, // 替换图
+ prod["title"].ParseToString(), // 用户端显示商品原名
+ (prod["recommendCategory"].IsJTokenNullOrEmpty() || prod["recommendCategory"]["categoryNames"].IsJTokenNullOrEmpty()) ?
+ "" : string.Join(" >> ", prod["recommendCategory"]["categoryNames"].Select(s => s.ParseToString())), // 类目名称
+ prod["spuCode"].ParseToString(),
+ //price,
+ prod["price"].ParseToDecimal() * 0.01m,
+ prod["soldNum"].ParseToInt(),
+ "在售" + (prod["presaleTag"].ParseToInt() == 1 ? "[预售]" : ""),
+ "", // 备注
+ "",
+ "删除",
+ BaseClass.StampToDateTime(prod["lastEditDraftTime"].ParseToInt()).ToString("yy-MM-dd HH:mm"),
+ "");
+
+ dgvSelectProduct.Rows[rowIndex].Height = 60;
+ dgvSelectProduct.Rows[rowIndex].Cells["colMsg"].Style.ForeColor = dgvSelectProduct.Rows[rowIndex].Cells["colMsg"].Value.ParseToString().Contains("预售") ? Color.Orange : Color.Blue;
+ }));
+ }
+ }
+ catch (Exception ex)
+ {
+
+ }
+ }
+ }
+ }
+
+ private void btnClearDgv_Click(object sender, EventArgs e)
+ {
+ var rows = this.dgvSelectProduct.Rows.Cast().ToList(); //Cast后Rows做foreach循环时仍会夹花跳过,所以要ToList转一个新的数组。
+ foreach (var row in rows)
+ {
+ if (row.Cells["colCheck"].Value.ParseToBool() == true)
+ {
+ //var draft_id = row.Cells["colDraftId"].Value.ParseToString();
+ //upload_draft_product_lst.RemoveAll(p => p.draft_id == draft_id);
+
+ this.dgvSelectProduct.Rows.Remove(row);
+ }
+ }
+ //NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_select_upload_draft_products", upload_draft_product_lst);
+ }
+
+ private void btnClearFilter_Click(object sender, EventArgs e)
+ {
+ txtFiltSaleNumMoreThan.Text = "0";
+ txtFiltSaleNumLessThan.Text = "1";
+ }
+
+ private void btnFilterShop_Click(object sender, EventArgs e)
+ {
+ foreach(DataGridViewRow row in dgvShop.Rows)
+ {
+ string notes = textBox1.Text.Trim().Trim(';');
+ if (notes == "全部")
+ notes = "";
+ List notesLst = notes.Split(new string[] { ";", ",", ",", " " }, StringSplitOptions.RemoveEmptyEntries).ToList();
+
+ if (!row.Cells["colShopName"].Value.ParseToString().Contains(txtFilterShopName.Text.Trim()))
+ {
+ row.Visible = false;
+ row.Cells["colSelect"].Value = false;
+ continue;
+ }
+ if (!row.Cells["colShopNotes"].Value.ParseToString().Contains(notes) && !notesLst.Contains(row.Cells["colShopNotes"].Value.ParseToString()))
+ {
+ row.Visible = false;
+ row.Cells["colSelect"].Value = false;
+ continue;
+ }
+ row.Visible = true;
+ }
+ }
+
+ private void btnEmptyShop_Click(object sender, EventArgs e)
+ {
+ txtFilterShopName.Text = "";
+ textBox1.Text = "";
+ btnFilterShop_Click(null, null);
+ }
+
+ private void btnReverse_Click(object sender, EventArgs e)
+ {
+ foreach(DataGridViewRow row in dgvShop.Rows)
+ {
+ if (row.Visible == true)
+ row.Cells["colSelect"].Value = !row.Cells["colSelect"].Value.ParseToBool();
+ }
+ }
+
+ private void btnAddSelect_Click(object sender, EventArgs e)
+ {
+ string notes = textBox1.Text.Trim().Trim(';');
+ if (notes == "全部")
+ notes = "";
+ List notesLst = notes.Split(new string[] { ";", ",", ",", " " }, StringSplitOptions.RemoveEmptyEntries).ToList();
+
+ foreach (DataGridViewRow row in dgvShop.Rows)
+ {
+ if (row.Visible == true)
+ {
+ if (row.Cells["colShopName"].Value.ParseToString().Contains(txtFilterShopName.Text.Trim()) &&
+ (row.Cells["colShopNotes"].Value.ParseToString().Contains(notes) || notesLst.Contains(row.Cells["colShopNotes"].Value.ParseToString())))
+ {
+ row.Cells["colSelect"].Value = true;
+ }
+ }
+ }
+ }
+
+ private void btnAddUnSelect_Click(object sender, EventArgs e)
+ {
+ string notes = textBox1.Text.Trim().Trim(';');
+ if (notes == "全部")
+ notes = "";
+ List notesLst = notes.Split(new string[] { ";", ",", ",", " " }, StringSplitOptions.RemoveEmptyEntries).ToList();
+
+ foreach (DataGridViewRow row in dgvShop.Rows)
+ {
+ if (row.Visible == true)
+ {
+ if (row.Cells["colShopName"].Value.ParseToString().Contains(txtFilterShopName.Text.Trim()) &&
+ (row.Cells["colShopNotes"].Value.ParseToString().Contains(notes) || notesLst.Contains(row.Cells["colShopNotes"].Value.ParseToString())))
+ {
+ row.Cells["colSelect"].Value = false;
+ }
+ }
+ }
+ }
+
+ private void btnSelectOnline_Click(object sender, EventArgs e)
+ {
+ foreach (DataGridViewRow row in dgvShop.Rows)
+ {
+ if (row.Visible == true)
+ {
+ if (row.Cells["colLoginStatus"].Value.ParseToString() == "在线")
+ {
+ row.Cells["colSelect"].Value = true;
+ }
+ else
+ {
+ row.Cells["colSelect"].Value = false;
+ }
+ }
+ }
+ }
+
+ private void btnSelectOffline_Click(object sender, EventArgs e)
+ {
+ foreach (DataGridViewRow row in dgvShop.Rows)
+ {
+ if (row.Visible == true)
+ {
+ if (row.Cells["colLoginStatus"].Value.ParseToString() != "在线")
+ {
+ row.Cells["colSelect"].Value = true;
+ }
+ else
+ {
+ row.Cells["colSelect"].Value = false;
+ }
+ }
+ }
+ }
+
+ private void txtPageEnd_TextChanged(object sender, EventArgs e)
+ {
+ PageEnd = txtPageEnd.Text.ParseToInt();
+ }
+
+ private void cmbPreType_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ PreType = cmbPreType.Text.Trim();
+ }
+
+ private void btnFiltSelectMoreThan_Click(object sender, EventArgs e)
+ {
+ foreach(DataGridViewRow row in dgvSelectProduct.Rows)
+ {
+ if (row.Cells["colSoldNum"].Value.ParseToInt() > txtFiltSaleNumMoreThan.Text.Trim().ParseToInt())
+ row.Cells["colCheck"].Value = true;
+ else
+ row.Cells["colCheck"].Value = false;
+ }
+ }
+
+ private void btnFiltSelectLessThan_Click(object sender, EventArgs e)
+ {
+ foreach (DataGridViewRow row in dgvSelectProduct.Rows)
+ {
+ if (row.Cells["colSoldNum"].Value.ParseToInt() >= txtFiltSaleNumLessThan.Text.Trim().ParseToInt())
+ row.Cells["colCheck"].Value = false;
+ else
+ row.Cells["colCheck"].Value = true;
+ }
+ }
+
+ decimal productPriceValue = 0;
+
+ private void btnEndCoupon_Click(object sender, EventArgs e)
+ {
+ var rowLst = dgvSelectProduct.Rows.Cast().Where(r => r.Cells["colCheck"].Value.ParseToBool() == true).ToList();
+ if (rowLst.Count <= 0)
+ {
+ BaseMsgForm.ShowError("请勾选需要操作的商品!");
+ return;
+ }
+
+ this.pbLoading.Visible = true;
+ cancellationTokenSource = new CancellationTokenSource();
+ dgvSelectProduct.Columns["colCouponNum"].HeaderText = "生效券数量";
+ dgvSelectProduct.Columns["colCouponNum"].Visible = true;
+ Task.Run(() =>
+ {
+ EndProdCoupon(rowLst);
+ Invoke(new Action(() =>
+ {
+ this.statusBar.lblTaskStatus.Text = "优惠券作废删除完毕";
+ BaseMsgForm.ShowInfo("优惠券作废删除完毕");
+ this.pbLoading.Visible = false;
+ }));
+ }, cancellationTokenSource.Token);
+ }
+ void EndProdCoupon(List rowLst)
+ {
+ Invoke(new Action(() =>
+ {
+ this.pbLoading.Visible = true;
+ this.statusBar.lblTaskStatus.Text = "正在作废删除" + "...".Substring(0, DateTime.Now.Second % 4);
+ this.statusBar.pgbTaskProgress.Maximum = rowLst.Count;
+ this.statusBar.UpdateProgressBar(0);
+ }));
+
+ foreach (var row in rowLst)
+ {
+ if (cancellationTokenSource.IsCancellationRequested)
+ break;
+
+ Invoke(new Action(() =>
+ {
+ this.statusBar.lblTaskStatus.Text = "正在作废删除" + "...".Substring(0, DateTime.Now.Second % 4);
+ this.statusBar.UpdateProgressBar(this.statusBar.pgbTaskProgress.Value + 1);
+ row.Cells["colOpResult"].Value = "";
+ row.Cells["colCouponNum"].Value = "";
+ }));
+
+ var prodId = row.Cells["colDraftId"].Value.ParseToString();
+ var shopId = row.Cells["colSupplierId"].Value.ParseToString();
+ var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
+ if (shop == null)
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "店铺不存在";
+ }));
+ continue;
+ }
+ if (shop.LoginStatus != "登录成功")
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "店铺掉线";
+ }));
+ continue;
+ }
+
+ var searchCouponRst = WxCoupon.WxSearchCoupon(shop, prodId);
+ Thread.Sleep(Randomx.GetId(500, 1000));
+ if (searchCouponRst.Contains("biz magic invalid"))
+ {
+ WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ }
+ if (!searchCouponRst.Contains("\"success\":true") && !searchCouponRst.Contains("\"code\":0"))
+ {
+ var errmsg = BaseRegex.GetStringJson(ref searchCouponRst, "msg");
+ if (string.IsNullOrWhiteSpace(errmsg))
+ errmsg = searchCouponRst;
+
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = errmsg;
+ }));
+ continue;
+ }
+
+ if (searchCouponRst.Contains("\"code\":0"))
+ {
+ var totalNum = BaseRegex.GetStringJson(ref searchCouponRst, "totalNum");
+ Invoke(new Action(() =>
+ {
+ row.Cells["colCouponNum"].Value = totalNum;
+ }));
+ if (totalNum == "0")
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "商品无专属优惠券,跳过";
+ }));
+ continue;
+ }
+ try
+ {
+ var couponLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(searchCouponRst)["coupons"].ToString());
+ string errMsg = "";
+ foreach (var coupon in couponLst)
+ {
+ var endRst = WxCoupon.WxEndCoupon(shop, coupon.couponKey.couponId.ParseToString());
+ Thread.Sleep(Randomx.GetId(100, 300));
+ if (!endRst.Contains("\"code\":0"))
+ {
+ var err = BaseRegex.GetStringJson(ref endRst, "msg");
+ if (string.IsNullOrWhiteSpace(err))
+ err = endRst;
+ errMsg += coupon.couponKey.couponId + " " + err + " \r\n";
+ continue;
+ }
+ var delRst = WxCoupon.WxDelCoupon(shop, coupon.couponKey.couponId.ParseToString());
+ Thread.Sleep(Randomx.GetId(100, 300));
+ if (!delRst.Contains("\"code\":0"))
+ {
+ var err = BaseRegex.GetStringJson(ref delRst, "msg");
+ if (string.IsNullOrWhiteSpace(err))
+ err = delRst;
+ errMsg += coupon.couponKey.couponId + " " + err + " \r\n";
+ continue;
+ }
+ }
+ if (!errMsg.IsNullOrEmpty())
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "作废删除失败 " + errMsg;
+ }));
+ }
+ else
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "作废删除成功";
+ }));
+ }
+ }
+ catch (Exception ex)
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "作废删除失败 优惠券格式转换失败";
+ }));
+ }
+ }
+ }
+ }
+
+ int? sortType = null;
+ private void cmbSaleSort_TextChanged(object sender, EventArgs e)
+ {
+ sortType = null;
+ if (cmbSaleSort.Text == "降序")
+ sortType = 6;
+ if (cmbSaleSort.Text == "升序")
+ sortType = 5;
+ }
+
+ private void btnSync_Click(object sender, EventArgs e)
+ {
+ var rowLst = dgvSelectProduct.Rows.Cast().Where(r => r.Cells["colCheck"].Value.ParseToBool() == true).ToList();
+ if (rowLst.Count <= 0)
+ {
+ BaseMsgForm.ShowError("请勾选需要操作的商品!");
+ return;
+ }
+
+ this.pbLoading.Visible = true;
+ cancellationTokenSource = new CancellationTokenSource();
+ dgvSelectProduct.Columns["colCouponNum"].Visible = false;
+ Task.Run(() =>
+ {
+ SyncProd(rowLst);
+ Invoke(new Action(() =>
+ {
+ if(cancellationTokenSource.IsCancellationRequested)
+ {
+ this.statusBar.lblTaskStatus.Text = "商品同步中断";
+ BaseMsgForm.ShowInfo("商品同步中断");
+ }
+ else
+ {
+ this.statusBar.lblTaskStatus.Text = "商品同步完毕";
+ BaseMsgForm.ShowInfo("商品同步完毕");
+ }
+ this.pbLoading.Visible = false;
+ }));
+ }, cancellationTokenSource.Token);
+ }
+
+ void SyncProd(List rowLst)
+ {
+ Invoke(new Action(() =>
+ {
+ this.pbLoading.Visible = true;
+ this.statusBar.lblTaskStatus.Text = "正在同步" + "...".Substring(0, DateTime.Now.Second % 4);
+ this.statusBar.pgbTaskProgress.Maximum = rowLst.Count;
+ this.statusBar.UpdateProgressBar(0);
+ }));
+
+ while(rowLst.Count > 0)
+ {
+ if (cancellationTokenSource.IsCancellationRequested)
+ break;
+
+ var r0 = rowLst.FirstOrDefault();
+ var shopId = r0.Cells["colSupplierId"].Value.ParseToString();
+ var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
+ var rowLstTmp = rowLst.Where(r => r.Cells["colSupplierId"].Value.ParseToString() == shopId).Take(50).ToList();
+ foreach(var r in rowLstTmp)
+ {
+ rowLst.Remove(r);
+
+ Invoke(new Action(() =>
+ {
+ this.statusBar.lblTaskStatus.Text = "正在同步" + "...".Substring(0, DateTime.Now.Second % 4);
+ this.statusBar.UpdateProgressBar(this.statusBar.pgbTaskProgress.Value + 1);
+ r.Cells["colOpResult"].Value = "";
+ }));
+ }
+ if (shop == null)
+ {
+ Invoke(new Action(() =>
+ {
+ foreach (var r in rowLstTmp)
+ {
+ r.Cells["colOpResult"].Value = "店铺不存在";
+ }
+ }));
+ continue;
+ }
+ if (shop.LoginStatus != "登录成功")
+ {
+ Invoke(new Action(() =>
+ {
+ foreach (var r in rowLstTmp)
+ {
+ r.Cells["colOpResult"].Value = "店铺掉线";
+ }
+ }));
+ continue;
+ }
+
+ List prodIdLst = new List();
+ List extCodeLst = new List();
+ foreach (var row in rowLstTmp)
+ {
+ var prodId = row.Cells["colDraftId"].Value.ParseToString();
+ var extCode = row.Cells["colExtCode"].Value.ParseToString();
+ prodIdLst.Add(prodId);
+ extCodeLst.Add(extCode);
+ }
+
+ // 查询商品库有没有
+ var url = BaseClass.BuildPDDObjString("product/get_product_spu_id_list");
+ Thread.Sleep(500);
+ var data = UserLogin.GetSignaturex();
+ data += "&search_secret_spu_ids=" + string.Join(",", extCodeLst.Distinct());
+ data += "&wx_safe_status=" + "安全商品,未校验";
+ var result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ {
+ var errMsg = BaseRegex.GetStringJson(ref result, "msg");
+ if (string.IsNullOrEmpty(errMsg))
+ errMsg = result;
+ Invoke(new Action(() =>
+ {
+ foreach (var row in rowLstTmp)
+ {
+ row.Cells["colOpResult"].Value = "查询商品错误:" + errMsg;
+ }
+ }));
+ continue;
+ }
+ List complateDbProdExistLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(result)["data"].ParseToString());
+
+ foreach (var row in rowLstTmp)
+ {
+ var extCode = row.Cells["colExtCode"].Value.ParseToString();
+ // 是否是库存商品
+ var needDownProdLst = complateDbProdExistLst.Where(pe => pe.secret_spu_id == extCode).ToList();
+ if (needDownProdLst.Count == 0)
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "数据库内没有找到该商品,跳过回采";
+ }));
+ continue;
+ }
+ else
+ {
+ if (needDownProdLst.Count > 0)
+ {
+
+ }
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "正在回采商品";
+ }));
+ Thread.Sleep(200);
+
+ var prodId = row.Cells["colDraftId"].Value.ParseToString();
+ var getEditProdRst = WXUpload.getEditProductV2(shop, prodId);
+ Thread.Sleep(Randomx.GetId(50, 100));
+ if (getEditProdRst.Contains("biz magic invalid"))
+ {
+ WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ }
+ if (!getEditProdRst.Contains("\"success\":true"))
+ {
+ var errmsg = BaseRegex.GetStringJson(ref getEditProdRst, "msg");
+ if (string.IsNullOrWhiteSpace(errmsg))
+ errmsg = getEditProdRst;
+ if (shop.LoginStatus != "登录成功")
+ errmsg = "店铺掉线";
+
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = errmsg;
+ }));
+ continue;
+ }
+
+ try
+ {
+ WXGetEditProductInfoLite wxProdInfoLite = JsonHelper.DeserializeJsonToObject(getEditProdRst);
+ var secret_spu_id = wxProdInfoLite.product.info.spuCode;
+ if (!string.IsNullOrWhiteSpace(secret_spu_id))
+ {
+
+ }
+ else
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "商品回采失败:外部编码采集失败,跳过";
+ }));
+ continue;
+ }
+ }
+ catch (Exception ex)
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "商品回采失败:" + ex.Message;
+ }));
+ continue;
+ }
+
+ //DateTime tickTime = DateTime.Now.AddSeconds(0 - Randomx.GetId(10, 30));
+ //int time1 = BaseClass.DateTimeToTimestampSeconds(tickTime) - Randomx.GetId(80, 150);
+ //int time2 = BaseClass.DateTimeToTimestampSeconds(tickTime);
+
+ //// 提交免审修改(实际生效接口)
+ //var listingAuditFreeRst = WXUpload.listingAuditFree(shop, productJson, prodId, time1, time2);
+ //System.Threading.Thread.Sleep(Randomx.GetId(150, 500));
+ //if (!listingAuditFreeRst.Contains("\"code\":0"))
+ //{
+ // var errmsg = BaseRegex.GetStringJson(ref listingAuditFreeRst, "msg");
+ // if (string.IsNullOrWhiteSpace(errmsg))
+ // errmsg = listingAuditFreeRst;
+ // if (errmsg.Contains("107232"))
+ // errmsg = "图片不清晰禁止操作";
+ // if (errmsg.Contains("9401083"))
+ // errmsg = "店铺处罚中禁止操作";
+
+ // if (getEditProdRst.Contains("biz magic invalid"))
+ // {
+ // WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ // Invoke(new Action(() =>
+ // {
+ // row.Cells["colOpResult"].Value = "店铺掉线";
+ // }));
+ // continue;
+ // }
+
+ // if (chkFailDownProd.Checked)
+ // {
+ // var downProd = WXPreSale.DownProd(shop, prodId);
+ // System.Threading.Thread.Sleep(Randomx.GetId(50, 100));
+ // if (downProd.Contains("\"code\":0"))
+ // {
+ // errmsg += " 商品同步失败 已下架";
+ // }
+ // else
+ // errmsg += " 商品同步失败 下架失败";
+ // }
+ // Invoke(new Action(() =>
+ // {
+ // row.Cells["colOpResult"].Value = errmsg;
+ // }));
+ // continue;
+ //}
+ var complateRst = "";
+ if (complateRst.Contains("\"code\":0"))
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "商品回采成功";
+ }));
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.resx b/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.resx
new file mode 100644
index 0000000..df46883
--- /dev/null
+++ b/TEMUKJD/WXForms/AdminForms/WXProdComplateForm.resx
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs
index f672abe..825b24e 100644
--- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs
@@ -41,6 +41,7 @@ namespace TemuKJD.WXForms.ProductForms
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.chkUseWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkSaveBound = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkAiShortTitle = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.label6 = new System.Windows.Forms.Label();
@@ -88,17 +89,16 @@ namespace TemuKJD.WXForms.ProductForms
this.label9 = new System.Windows.Forms.Label();
this.chkStepAddPrice = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.chkWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.txtAddCount = new System.Windows.Forms.TextBox();
this.txtSearchGoodsName = new System.Windows.Forms.TextBox();
this.label20 = new System.Windows.Forms.Label();
this.pbSelectProd = new System.Windows.Forms.PictureBox();
- this.txtExtCodeFilter = new System.Windows.Forms.TextBox();
this.cmbCateFilter3 = new System.Windows.Forms.ComboBox();
this.label21 = new System.Windows.Forms.Label();
this.cmbGroupFilter = new System.Windows.Forms.ComboBox();
this.txtIdFilter = new System.Windows.Forms.TextBox();
this.cmbJstInitSet = new System.Windows.Forms.ComboBox();
- this.lblExtCodeFilter = new System.Windows.Forms.Label();
this.lblGroupFilter = new System.Windows.Forms.Label();
this.lblIdFilter = new System.Windows.Forms.Label();
this.cmbCateFilter2 = new System.Windows.Forms.ComboBox();
@@ -134,7 +134,9 @@ namespace TemuKJD.WXForms.ProductForms
this.splitContainer3 = new System.Windows.Forms.SplitContainer();
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
this.btnRefreshNum = new DevComponents.DotNetBar.PanelEx();
+ this.txtExtCodeFilter = new System.Windows.Forms.TextBox();
this.pbLoadingShop = new System.Windows.Forms.PictureBox();
+ this.lblExtCodeFilter = new System.Windows.Forms.Label();
this.dgvShop = new TemuKJD.UserComponent.DataGridViewEx();
this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.colShopLoginName = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -240,6 +242,7 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
this.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
+ this.ucGroupBoxEx2.Controls.Add(this.chkUseWXComplateProd);
this.ucGroupBoxEx2.Controls.Add(this.chkSaveBound);
this.ucGroupBoxEx2.Controls.Add(this.chkAiShortTitle);
this.ucGroupBoxEx2.Controls.Add(this.label6);
@@ -289,10 +292,21 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx2.TabStop = false;
this.ucGroupBoxEx2.Text = "商品上传";
//
+ // chkUseWXComplateProd
+ //
+ this.chkUseWXComplateProd.Location = new System.Drawing.Point(727, 42);
+ this.chkUseWXComplateProd.Name = "chkUseWXComplateProd";
+ this.chkUseWXComplateProd.Size = new System.Drawing.Size(87, 21);
+ this.chkUseWXComplateProd.TabIndex = 876;
+ this.chkUseWXComplateProd.Text = "使用回采数据";
+ this.chkUseWXComplateProd.UseVisualStyleBackColor = true;
+ this.chkUseWXComplateProd.Visible = false;
+ this.chkUseWXComplateProd.CheckedChanged += new System.EventHandler(this.chkUseWXComplateProd_CheckedChanged);
+ //
// chkSaveBound
//
this.chkSaveBound.AutoSize = true;
- this.chkSaveBound.Location = new System.Drawing.Point(806, 136);
+ this.chkSaveBound.Location = new System.Drawing.Point(791, 136);
this.chkSaveBound.Name = "chkSaveBound";
this.chkSaveBound.Size = new System.Drawing.Size(111, 21);
this.chkSaveBound.TabIndex = 863;
@@ -306,11 +320,11 @@ namespace TemuKJD.WXForms.ProductForms
this.chkAiShortTitle.AutoSize = true;
this.chkAiShortTitle.Checked = true;
this.chkAiShortTitle.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkAiShortTitle.Location = new System.Drawing.Point(653, 42);
+ this.chkAiShortTitle.Location = new System.Drawing.Point(638, 42);
this.chkAiShortTitle.Name = "chkAiShortTitle";
- this.chkAiShortTitle.Size = new System.Drawing.Size(147, 21);
+ this.chkAiShortTitle.Size = new System.Drawing.Size(87, 21);
this.chkAiShortTitle.TabIndex = 862;
- this.chkAiShortTitle.Text = "AI短标题加入商品标题";
+ this.chkAiShortTitle.Text = "AI优化标题";
this.chkAiShortTitle.UseVisualStyleBackColor = true;
this.chkAiShortTitle.CheckedChanged += new System.EventHandler(this.chkAiShotTitle_CheckedChanged);
//
@@ -341,7 +355,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkHighestPriceSku.AutoSize = true;
this.chkHighestPriceSku.Checked = true;
this.chkHighestPriceSku.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkHighestPriceSku.Location = new System.Drawing.Point(582, 16);
+ this.chkHighestPriceSku.Location = new System.Drawing.Point(567, 16);
this.chkHighestPriceSku.Name = "chkHighestPriceSku";
this.chkHighestPriceSku.Size = new System.Drawing.Size(119, 21);
this.chkHighestPriceSku.TabIndex = 739;
@@ -352,7 +366,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtFilterBoundMax
//
this.txtFilterBoundMax.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtFilterBoundMax.Location = new System.Drawing.Point(648, 134);
+ this.txtFilterBoundMax.Location = new System.Drawing.Point(633, 134);
this.txtFilterBoundMax.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtFilterBoundMax.Name = "txtFilterBoundMax";
this.txtFilterBoundMax.Size = new System.Drawing.Size(49, 25);
@@ -363,7 +377,7 @@ namespace TemuKJD.WXForms.ProductForms
// label23
//
this.label23.AutoSize = true;
- this.label23.Location = new System.Drawing.Point(621, 138);
+ this.label23.Location = new System.Drawing.Point(606, 138);
this.label23.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label23.Name = "label23";
this.label23.Size = new System.Drawing.Size(32, 17);
@@ -373,7 +387,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtFilterBoundMin
//
this.txtFilterBoundMin.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtFilterBoundMin.Location = new System.Drawing.Point(571, 134);
+ this.txtFilterBoundMin.Location = new System.Drawing.Point(556, 134);
this.txtFilterBoundMin.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtFilterBoundMin.Name = "txtFilterBoundMin";
this.txtFilterBoundMin.Size = new System.Drawing.Size(49, 25);
@@ -384,7 +398,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtTitleHeadWord
//
this.txtTitleHeadWord.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtTitleHeadWord.Location = new System.Drawing.Point(514, 40);
+ this.txtTitleHeadWord.Location = new System.Drawing.Point(499, 40);
this.txtTitleHeadWord.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtTitleHeadWord.MaxLength = 15;
this.txtTitleHeadWord.Name = "txtTitleHeadWord";
@@ -398,7 +412,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnFilterBound.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnFilterBound.DisabledBackColor = System.Drawing.Color.Empty;
this.btnFilterBound.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnFilterBound.Location = new System.Drawing.Point(742, 135);
+ this.btnFilterBound.Location = new System.Drawing.Point(727, 135);
this.btnFilterBound.Name = "btnFilterBound";
this.btnFilterBound.Size = new System.Drawing.Size(58, 23);
this.btnFilterBound.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -423,7 +437,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkSameSpecPrice.AutoSize = true;
this.chkSameSpecPrice.Checked = true;
this.chkSameSpecPrice.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkSameSpecPrice.Location = new System.Drawing.Point(701, 16);
+ this.chkSameSpecPrice.Location = new System.Drawing.Point(686, 16);
this.chkSameSpecPrice.Name = "chkSameSpecPrice";
this.chkSameSpecPrice.Size = new System.Drawing.Size(99, 21);
this.chkSameSpecPrice.TabIndex = 745;
@@ -434,7 +448,7 @@ namespace TemuKJD.WXForms.ProductForms
// label22
//
this.label22.AutoSize = true;
- this.label22.Location = new System.Drawing.Point(448, 45);
+ this.label22.Location = new System.Drawing.Point(433, 45);
this.label22.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label22.Name = "label22";
this.label22.Size = new System.Drawing.Size(68, 17);
@@ -444,7 +458,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtShippingPriceTimes
//
this.txtShippingPriceTimes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
- this.txtShippingPriceTimes.Location = new System.Drawing.Point(344, 135);
+ this.txtShippingPriceTimes.Location = new System.Drawing.Point(329, 135);
this.txtShippingPriceTimes.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtShippingPriceTimes.Name = "txtShippingPriceTimes";
this.txtShippingPriceTimes.Size = new System.Drawing.Size(32, 23);
@@ -454,7 +468,7 @@ namespace TemuKJD.WXForms.ProductForms
// label12
//
this.label12.AutoSize = true;
- this.label12.Location = new System.Drawing.Point(697, 138);
+ this.label12.Location = new System.Drawing.Point(682, 138);
this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(44, 17);
@@ -465,7 +479,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label13.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label13.AutoSize = true;
- this.label13.Location = new System.Drawing.Point(307, 138);
+ this.label13.Location = new System.Drawing.Point(292, 138);
this.label13.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(41, 17);
@@ -475,7 +489,7 @@ namespace TemuKJD.WXForms.ProductForms
// label1
//
this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(448, 138);
+ this.label1.Location = new System.Drawing.Point(433, 138);
this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(128, 17);
@@ -485,7 +499,7 @@ namespace TemuKJD.WXForms.ProductForms
// label18
//
this.label18.AutoSize = true;
- this.label18.Location = new System.Drawing.Point(811, 112);
+ this.label18.Location = new System.Drawing.Point(796, 112);
this.label18.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label18.Name = "label18";
this.label18.Size = new System.Drawing.Size(54, 17);
@@ -494,7 +508,7 @@ namespace TemuKJD.WXForms.ProductForms
//
// txtPreDays
//
- this.txtPreDays.Location = new System.Drawing.Point(778, 109);
+ this.txtPreDays.Location = new System.Drawing.Point(763, 109);
this.txtPreDays.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtPreDays.Name = "txtPreDays";
this.txtPreDays.Size = new System.Drawing.Size(33, 23);
@@ -505,7 +519,7 @@ namespace TemuKJD.WXForms.ProductForms
// chkPreSale
//
this.chkPreSale.AutoSize = true;
- this.chkPreSale.Location = new System.Drawing.Point(686, 110);
+ this.chkPreSale.Location = new System.Drawing.Point(671, 110);
this.chkPreSale.Name = "chkPreSale";
this.chkPreSale.Size = new System.Drawing.Size(99, 21);
this.chkPreSale.TabIndex = 789;
@@ -518,7 +532,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkSkipUploaded.AutoSize = true;
this.chkSkipUploaded.Checked = true;
this.chkSkipUploaded.CheckState = System.Windows.Forms.CheckState.Checked;
- this.chkSkipUploaded.Location = new System.Drawing.Point(451, 110);
+ this.chkSkipUploaded.Location = new System.Drawing.Point(436, 110);
this.chkSkipUploaded.Name = "chkSkipUploaded";
this.chkSkipUploaded.Size = new System.Drawing.Size(135, 21);
this.chkSkipUploaded.TabIndex = 755;
@@ -529,7 +543,7 @@ namespace TemuKJD.WXForms.ProductForms
// label5
//
this.label5.AutoSize = true;
- this.label5.Location = new System.Drawing.Point(539, 18);
+ this.label5.Location = new System.Drawing.Point(524, 18);
this.label5.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(40, 17);
@@ -538,7 +552,7 @@ namespace TemuKJD.WXForms.ProductForms
//
// txtMinPrice
//
- this.txtMinPrice.Location = new System.Drawing.Point(514, 15);
+ this.txtMinPrice.Location = new System.Drawing.Point(499, 15);
this.txtMinPrice.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtMinPrice.Name = "txtMinPrice";
this.txtMinPrice.Size = new System.Drawing.Size(25, 23);
@@ -549,7 +563,7 @@ namespace TemuKJD.WXForms.ProductForms
// label8
//
this.label8.AutoSize = true;
- this.label8.Location = new System.Drawing.Point(448, 18);
+ this.label8.Location = new System.Drawing.Point(433, 18);
this.label8.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(68, 17);
@@ -560,7 +574,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.txtReplaceText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
- this.txtReplaceText.Location = new System.Drawing.Point(514, 67);
+ this.txtReplaceText.Location = new System.Drawing.Point(499, 67);
this.txtReplaceText.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtReplaceText.Multiline = true;
this.txtReplaceText.Name = "txtReplaceText";
@@ -572,7 +586,7 @@ namespace TemuKJD.WXForms.ProductForms
// label3
//
this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(448, 72);
+ this.label3.Location = new System.Drawing.Point(433, 72);
this.label3.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(68, 17);
@@ -582,7 +596,7 @@ namespace TemuKJD.WXForms.ProductForms
// chkUpDraft
//
this.chkUpDraft.AutoSize = true;
- this.chkUpDraft.Location = new System.Drawing.Point(586, 110);
+ this.chkUpDraft.Location = new System.Drawing.Point(571, 110);
this.chkUpDraft.Name = "chkUpDraft";
this.chkUpDraft.Size = new System.Drawing.Size(99, 21);
this.chkUpDraft.TabIndex = 769;
@@ -631,11 +645,11 @@ namespace TemuKJD.WXForms.ProductForms
//
this.chkAddMorePriceFirst.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.chkAddMorePriceFirst.AutoSize = true;
- this.chkAddMorePriceFirst.Location = new System.Drawing.Point(201, 136);
+ this.chkAddMorePriceFirst.Location = new System.Drawing.Point(199, 136);
this.chkAddMorePriceFirst.Name = "chkAddMorePriceFirst";
- this.chkAddMorePriceFirst.Size = new System.Drawing.Size(111, 21);
+ this.chkAddMorePriceFirst.Size = new System.Drawing.Size(99, 21);
this.chkAddMorePriceFirst.TabIndex = 625;
- this.chkAddMorePriceFirst.Text = "加价时先加再乘";
+ this.chkAddMorePriceFirst.Text = "加价先加再乘";
this.chkAddMorePriceFirst.UseVisualStyleBackColor = true;
this.chkAddMorePriceFirst.CheckedChanged += new System.EventHandler(this.chkAddMorePriceFirst_CheckedChanged);
//
@@ -696,7 +710,7 @@ namespace TemuKJD.WXForms.ProductForms
this.panel4.Controls.Add(this.panel3);
this.panel4.Location = new System.Drawing.Point(76, 17);
this.panel4.Name = "panel4";
- this.panel4.Size = new System.Drawing.Size(366, 114);
+ this.panel4.Size = new System.Drawing.Size(350, 114);
this.panel4.TabIndex = 577;
//
// panel3
@@ -709,7 +723,7 @@ namespace TemuKJD.WXForms.ProductForms
this.panel3.Controls.Add(this.fPnlPriceRule);
this.panel3.Location = new System.Drawing.Point(1, 1);
this.panel3.Name = "panel3";
- this.panel3.Size = new System.Drawing.Size(364, 112);
+ this.panel3.Size = new System.Drawing.Size(348, 112);
this.panel3.TabIndex = 541;
//
// fPnlPriceRule
@@ -872,7 +886,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtStockNum
//
this.txtStockNum.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
- this.txtStockNum.Location = new System.Drawing.Point(410, 135);
+ this.txtStockNum.Location = new System.Drawing.Point(395, 135);
this.txtStockNum.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtStockNum.Name = "txtStockNum";
this.txtStockNum.Size = new System.Drawing.Size(32, 23);
@@ -884,7 +898,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label4.AutoSize = true;
- this.label4.Location = new System.Drawing.Point(379, 138);
+ this.label4.Location = new System.Drawing.Point(364, 138);
this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(32, 17);
@@ -919,17 +933,16 @@ namespace TemuKJD.WXForms.ProductForms
| System.Windows.Forms.AnchorStyles.Left)));
this.ucGroupBoxEx4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucGroupBoxEx4.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
+ this.ucGroupBoxEx4.Controls.Add(this.chkWXComplateProd);
this.ucGroupBoxEx4.Controls.Add(this.txtAddCount);
this.ucGroupBoxEx4.Controls.Add(this.txtSearchGoodsName);
this.ucGroupBoxEx4.Controls.Add(this.label20);
this.ucGroupBoxEx4.Controls.Add(this.pbSelectProd);
- this.ucGroupBoxEx4.Controls.Add(this.txtExtCodeFilter);
this.ucGroupBoxEx4.Controls.Add(this.cmbCateFilter3);
this.ucGroupBoxEx4.Controls.Add(this.label21);
this.ucGroupBoxEx4.Controls.Add(this.cmbGroupFilter);
this.ucGroupBoxEx4.Controls.Add(this.txtIdFilter);
this.ucGroupBoxEx4.Controls.Add(this.cmbJstInitSet);
- this.ucGroupBoxEx4.Controls.Add(this.lblExtCodeFilter);
this.ucGroupBoxEx4.Controls.Add(this.lblGroupFilter);
this.ucGroupBoxEx4.Controls.Add(this.lblIdFilter);
this.ucGroupBoxEx4.Controls.Add(this.cmbCateFilter2);
@@ -955,6 +968,16 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx4.TabStop = false;
this.ucGroupBoxEx4.Text = "待传商品";
//
+ // chkWXComplateProd
+ //
+ this.chkWXComplateProd.Location = new System.Drawing.Point(180, 103);
+ this.chkWXComplateProd.Name = "chkWXComplateProd";
+ this.chkWXComplateProd.Size = new System.Drawing.Size(87, 21);
+ this.chkWXComplateProd.TabIndex = 807;
+ this.chkWXComplateProd.Text = "微信回采商品";
+ this.chkWXComplateProd.UseVisualStyleBackColor = true;
+ this.chkWXComplateProd.Visible = false;
+ //
// txtAddCount
//
this.txtAddCount.Font = new System.Drawing.Font("微软雅黑", 10F);
@@ -996,16 +1019,6 @@ namespace TemuKJD.WXForms.ProductForms
this.pbSelectProd.Visible = false;
this.pbSelectProd.Click += new System.EventHandler(this.pbSelectProd_Click);
//
- // txtExtCodeFilter
- //
- this.txtExtCodeFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtExtCodeFilter.Location = new System.Drawing.Point(178, 101);
- this.txtExtCodeFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
- this.txtExtCodeFilter.Name = "txtExtCodeFilter";
- this.txtExtCodeFilter.Size = new System.Drawing.Size(92, 25);
- this.txtExtCodeFilter.TabIndex = 555;
- this.txtExtCodeFilter.Visible = false;
- //
// cmbCateFilter3
//
this.cmbCateFilter3.FormattingEnabled = true;
@@ -1037,7 +1050,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtIdFilter
//
this.txtIdFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtIdFilter.Location = new System.Drawing.Point(47, 101);
+ this.txtIdFilter.Location = new System.Drawing.Point(47, 100);
this.txtIdFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtIdFilter.Name = "txtIdFilter";
this.txtIdFilter.Size = new System.Drawing.Size(92, 25);
@@ -1057,17 +1070,6 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbJstInitSet.TabIndex = 697;
this.cmbJstInitSet.Text = "已设置";
//
- // lblExtCodeFilter
- //
- this.lblExtCodeFilter.AutoSize = true;
- this.lblExtCodeFilter.Location = new System.Drawing.Point(147, 105);
- this.lblExtCodeFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
- this.lblExtCodeFilter.Name = "lblExtCodeFilter";
- this.lblExtCodeFilter.Size = new System.Drawing.Size(32, 17);
- this.lblExtCodeFilter.TabIndex = 560;
- this.lblExtCodeFilter.Text = "货号";
- this.lblExtCodeFilter.Visible = false;
- //
// lblGroupFilter
//
this.lblGroupFilter.AutoSize = true;
@@ -1082,7 +1084,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblIdFilter
//
this.lblIdFilter.AutoSize = true;
- this.lblIdFilter.Location = new System.Drawing.Point(27, 105);
+ this.lblIdFilter.Location = new System.Drawing.Point(27, 104);
this.lblIdFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblIdFilter.Name = "lblIdFilter";
this.lblIdFilter.Size = new System.Drawing.Size(21, 17);
@@ -1304,10 +1306,9 @@ namespace TemuKJD.WXForms.ProductForms
//
// chkSkipQualification
//
- this.chkSkipQualification.AutoSize = true;
this.chkSkipQualification.Location = new System.Drawing.Point(14, 133);
this.chkSkipQualification.Name = "chkSkipQualification";
- this.chkSkipQualification.Size = new System.Drawing.Size(99, 21);
+ this.chkSkipQualification.Size = new System.Drawing.Size(87, 21);
this.chkSkipQualification.TabIndex = 806;
this.chkSkipQualification.Text = "跳过资质商品";
this.chkSkipQualification.UseVisualStyleBackColor = true;
@@ -1626,7 +1627,9 @@ namespace TemuKJD.WXForms.ProductForms
// splitContainer2.Panel1
//
this.splitContainer2.Panel1.Controls.Add(this.btnRefreshNum);
+ this.splitContainer2.Panel1.Controls.Add(this.txtExtCodeFilter);
this.splitContainer2.Panel1.Controls.Add(this.pbLoadingShop);
+ this.splitContainer2.Panel1.Controls.Add(this.lblExtCodeFilter);
this.splitContainer2.Panel1.Controls.Add(this.dgvShop);
this.splitContainer2.Panel1.Padding = new System.Windows.Forms.Padding(4, 0, 0, 0);
//
@@ -1670,6 +1673,16 @@ namespace TemuKJD.WXForms.ProductForms
this.btnRefreshNum.Visible = false;
this.btnRefreshNum.Click += new System.EventHandler(this.btnRefreshNum_Click);
//
+ // txtExtCodeFilter
+ //
+ this.txtExtCodeFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
+ this.txtExtCodeFilter.Location = new System.Drawing.Point(249, 34);
+ this.txtExtCodeFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
+ this.txtExtCodeFilter.Name = "txtExtCodeFilter";
+ this.txtExtCodeFilter.Size = new System.Drawing.Size(92, 25);
+ this.txtExtCodeFilter.TabIndex = 555;
+ this.txtExtCodeFilter.Visible = false;
+ //
// pbLoadingShop
//
this.pbLoadingShop.Anchor = System.Windows.Forms.AnchorStyles.None;
@@ -1682,6 +1695,17 @@ namespace TemuKJD.WXForms.ProductForms
this.pbLoadingShop.TabStop = false;
this.pbLoadingShop.Visible = false;
//
+ // lblExtCodeFilter
+ //
+ this.lblExtCodeFilter.AutoSize = true;
+ this.lblExtCodeFilter.Location = new System.Drawing.Point(218, 38);
+ this.lblExtCodeFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.lblExtCodeFilter.Name = "lblExtCodeFilter";
+ this.lblExtCodeFilter.Size = new System.Drawing.Size(32, 17);
+ this.lblExtCodeFilter.TabIndex = 560;
+ this.lblExtCodeFilter.Text = "货号";
+ this.lblExtCodeFilter.Visible = false;
+ //
// dgvShop
//
this.dgvShop.AllowUserToAddRows = false;
@@ -2266,6 +2290,7 @@ namespace TemuKJD.WXForms.ProductForms
((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
this.splitContainer3.ResumeLayout(false);
this.splitContainer2.Panel1.ResumeLayout(false);
+ this.splitContainer2.Panel1.PerformLayout();
this.splitContainer2.Panel2.ResumeLayout(false);
this.splitContainer2.Panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
@@ -2428,5 +2453,7 @@ namespace TemuKJD.WXForms.ProductForms
private UserComponent.UcCheckBox chkSaveBound;
private UserComponent.UcCheckBox chkAiShortTitle;
private UserComponent.UcCheckBox chkSkipQualification;
+ private UserComponent.UcCheckBox chkWXComplateProd;
+ private UserComponent.UcCheckBox chkUseWXComplateProd;
}
}
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs
index a21315c..12ea400 100644
--- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs
@@ -165,6 +165,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkPreSale.CheckedChanged -= chkPreSale_CheckedChanged;
this.txtTitleHeadWord.TextChanged -= txtTitleHeadWord_TextChanged;
this.chkAiShortTitle.CheckedChanged -= chkAiShotTitle_CheckedChanged;
+ this.chkUseWXComplateProd.CheckedChanged -= chkUseWXComplateProd_CheckedChanged;
this.chkSaveBound.CheckedChanged -= chkSaveBound_CheckedChanged;
this.txtFilterBoundMin.TextChanged -= txtFilterBoundMin_TextChanged;
this.txtFilterBoundMax.TextChanged -= txtFilterBoundMax_TextChanged;
@@ -180,6 +181,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkPreSale.Checked = wxUploadRule.IsPreSale.ParseToBool();
this.txtTitleHeadWord.Text = wxUploadRule.TitleHeadWords.ParseToString();
this.chkAiShortTitle.Checked = wxUploadRule.IsAiShortTitle;
+ this.chkUseWXComplateProd.Checked = wxUploadRule.IsUseWXComplateProd;
this.chkSaveBound.Checked = wxUploadRule.IsSaveBound;
if (wxUploadRule.IsSaveBound)
{
@@ -198,6 +200,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkPreSale.CheckedChanged += chkPreSale_CheckedChanged;
this.txtTitleHeadWord.TextChanged += txtTitleHeadWord_TextChanged;
this.chkAiShortTitle.CheckedChanged += chkAiShotTitle_CheckedChanged;
+ this.chkUseWXComplateProd.CheckedChanged += chkUseWXComplateProd_CheckedChanged;
this.chkSaveBound.CheckedChanged += chkSaveBound_CheckedChanged;
this.txtFilterBoundMin.TextChanged += txtFilterBoundMin_TextChanged;
this.txtFilterBoundMax.TextChanged += txtFilterBoundMax_TextChanged;
@@ -272,15 +275,22 @@ namespace TemuKJD.WXForms.ProductForms
//#if DEBUG
if (BaseClass.SaLevel == 1)
{
+ //lblExtCodeFilter.Visible = true;
+ //txtExtCodeFilter.Visible = true;
+
txtIdFilter.Visible = true;
- txtExtCodeFilter.Visible = true;
cmbSourceType.Visible = true;
cmbGroupFilter.Visible = true;
lblIdFilter.Visible = true;
- lblExtCodeFilter.Visible = true;
lblSourceType.Visible = true;
lblGroupFilter.Visible = true;
}
+
+ if (BaseClass.UserAuthority.ParseToString().Contains("微信回采"))
+ {
+ chkWXComplateProd.Visible = true;
+ chkUseWXComplateProd.Visible = true;
+ }
//#endif
if (BaseClass.SaLevel == 1)
{
@@ -1023,7 +1033,17 @@ namespace TemuKJD.WXForms.ProductForms
break;
//将商品上传
- var kjdDbProdTmp = JsonHelper.DeserializeJsonToObject(JsonHelper.SerializeObject(kjdDbProd));
+ KJDDBProduct kjdDbProdTmp = null;
+ try
+ {
+ kjdDbProdTmp = JsonHelper.DeserializeJsonToObject(JsonHelper.SerializeObject(kjdDbProd));
+ }
+ catch (Exception ex)
+ {
+ result = "{\"success\":false,\"status\":\"未上传\",\"errMsg\":\"商品初始化失败:" + ex.Message + "\"}";
+ goto endUploadProduct;
+ }
+
result = UploadProduct(shop, kjdDbProdTmp, selectProd, row.Cells["colOpResult"], startTime);
if (result.Contains("今日提审次数已用尽,请明日再试") || result.Contains("如需上架请先缴纳足额保证金"))
{
@@ -1031,6 +1051,7 @@ namespace TemuKJD.WXForms.ProductForms
if (shopRow != null)
Invoke(new Action(() => { shopRow.Cells["colSelect"].Value = false; }));
}
+ // 图片重复的,修改图片缓存为空再传一次
if (result.Contains("10020225") || result.Contains("10020226"))
{
kjdDbProdTmp = JsonHelper.DeserializeJsonToObject(JsonHelper.SerializeObject(kjdDbProd));
@@ -1038,26 +1059,28 @@ namespace TemuKJD.WXForms.ProductForms
result = UploadProduct(shop, kjdDbProdTmp, selectProd, row.Cells["colOpResult"], startTime);
}
- Invoke(new Action(() =>
- {
- row.Cells["colSkuFakeImgUrl"].Value = kjdDbProd.sku_img_replace_url;
- if (row.Displayed)
- {
- string getImgError = "";
- Image img = GetHtml.GetUrlImg(kjdDbProd.sku_img_replace_url.Replace("https://", "http://"), out getImgError);
- if (string.IsNullOrEmpty(getImgError))
- row.Cells["colSkuFakeImg"].Value = img;
- }
- }));
+ // 拼多多的虚拟图,微信不需要
+ //Invoke(new Action(() =>
+ //{
+ // row.Cells["colSkuFakeImgUrl"].Value = kjdDbProd.sku_img_replace_url;
+ // if (row.Displayed)
+ // {
+ // string getImgError = "";
+ // Image img = GetHtml.GetUrlImg(kjdDbProd.sku_img_replace_url.Replace("https://", "http://"), out getImgError);
+ // if (string.IsNullOrEmpty(getImgError))
+ // row.Cells["colSkuFakeImg"].Value = img;
+ // }
+ //}));
if (!result.Contains("success"))
{
WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
}
+ endUploadProduct:;
}
catch (Exception ex)
{
- result = "{\"success\":false,\"status\":\"未上传\",\"errMsg\":\"" + ex.Message + "\"}";
+ result = "{\"success\":false,\"status\":\"未上传\",\"errMsg\":\"内部错误:" + ex.Message + " " + ex.InnerException?.Message + "\"}";
}
Thread.Sleep(Randomx.GetId(100, 300));
@@ -1200,12 +1223,65 @@ namespace TemuKJD.WXForms.ProductForms
}
}
+ public static WXGetEditProductInfoLite GetProductWXComplate(string secret_spu_id, out string errMsg)
+ {
+ errMsg = "";
+
+ if (string.IsNullOrEmpty(secret_spu_id))
+ {
+ errMsg = "产品编码为空";
+ return null;
+ }
+
+ List list = new List();
+
+ var url = BaseClass.BuildObjString("product/get_pdd_prod_wx_complate_list");
+ var data = UserLogin.GetSignaturex() + "&search_secret_spu_ids=" + secret_spu_id;
+
+ 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);
+ if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
+ {
+ errMsg = BaseRegex.GetStringJson(ref html, "msg");
+ if (errMsg.IsNullOrEmpty())
+ errMsg = html;
+ errMsg = "取回采数据失败 " + errMsg;
+ return null;
+ }
+
+ var jArr = JObject.Parse(html)["data"];
+ if (jArr.Count() == 0)
+ {
+ errMsg = "产品不存在";
+ return null;
+ }
+ var sProd = JsonHelper.SerializeObject(jArr);
+
+ try
+ {
+ var item = jArr.FirstOrDefault()["wx_edit_prod_json"];
+ if (item == null)
+ return null;
+
+ var editProd = JsonHelper.DeserializeJsonToObject(((JValue)item).Value.ParseToString());
+ return editProd;
+ }
+ catch (Exception ex)
+ {
+ errMsg = "回采数据转换失败 " + ex.Message;
+ return null;
+ }
+ }
+
string UploadProduct(ShopLoginInfo shop, KJDDBProduct dbProd, TemuDBProductSelect selectProd, DataGridViewCell cell, DateTime startTime)
{
Thread.Sleep(Randomx.GetId(100, 300));
if (shop == null || string.IsNullOrEmpty(shop.ShopId) || shop.LoginStatus != "登录成功")
{
- return "店铺为空或未登录!";
+ return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"店铺为空或未登录!\"}";
}
if (cell != null)
{
@@ -1215,8 +1291,6 @@ namespace TemuKJD.WXForms.ProductForms
}));
}
-
-
#region 跳过已上传商品
if (chkSkipUploaded.Checked)
{
@@ -1437,6 +1511,22 @@ namespace TemuKJD.WXForms.ProductForms
}
#endregion
+ WXGetEditProductInfoLite wxEditProdInfo = null;
+ if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && chkUseWXComplateProd.Checked && dbProd.has_wx_format == "1")
+ {
+ string errMsg = "";
+ wxEditProdInfo = GetProductWXComplate(dbProd.secret_spu_id, out errMsg);
+
+ if (wxEditProdInfo == null)
+ {
+ Invoke(new Action(() =>
+ {
+ cell.Value = errMsg;
+ }));
+ return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"" + errMsg + "\"}";
+ }
+ }
+
#region 图片盗链映射
bool isChangeImgDic = false;
Dictionary wxImgMapDic = new Dictionary();
@@ -2491,192 +2581,233 @@ namespace TemuKJD.WXForms.ProductForms
#region 匹配产品属性
//真丝、蚕丝、香云纱、羊绒、羊毛、羊羔毛、羽绒、皮草
- upProdParam.product.info.param = new List(); // 商品属性值
+ upProdParam.product.info.param = new List(); // 商品属性值
var productAttr = upProdParam.product.info.category.LastOrDefault().catInfo.productAttr;
- foreach (var propInfo in prodInfo.property.goods_properties)
+
+ if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && chkUseWXComplateProd.Checked && dbProd.has_wx_format == "1" && wxEditProdInfo != null)
{
- if (propInfo.values.Count == 0)
- continue;
-
- var attr = productAttr.attr.FirstOrDefault(r => r.name == propInfo.name);
- if (propInfo.name == "生产日期" && propInfo.values.Count > 0)
+ foreach(var wxEditPropParam in wxEditProdInfo.product.info.param)
{
- propInfo.values.FirstOrDefault().value = DateTime.Now.Date.AddDays(-15).ToString("yyyy-MM-dd");
- propInfo.values.FirstOrDefault().raw_value = propInfo.values.FirstOrDefault().value;
+ var wxPropParam = new wxPropParam();
+ upProdParam.product.info.param.Add(wxPropParam);
+ //var wxCategoryParam1 = new categoryPropParam()
+ //{
+ // catType = 7,
+ // name = attr.name,
+ // catInfo = new catInfoParam() { inputType = attr.normalRelease.ruleType, isRequired = attr.isRequired == true ? 1 : 0, isCustomize = 0 }
+ //};
+ //var wxCategoryParam2 = new categoryPropParam()
+ //{
+ // catType = 7,
+ // name = attrValue,
+ // catInfo = new catInfoParam() { inputType = attr.normalRelease.ruleType, isRequired = attr.isRequired == true ? 1 : 0, isCustomize = 0 }
+ //};
+ //wxPropParam.categorys.Add(wxCategoryParam1);
+ //wxPropParam.categorys.Add(wxCategoryParam2);
+ foreach (var wxEditCategoryParam in wxEditPropParam.categorys)
+ {
+ var wxCategoryParam = new categoryPropParam()
+ {
+ catType = wxEditCategoryParam.catType,
+ name = wxEditCategoryParam.name,
+ catInfo = new catInfoParam()
+ {
+ inputType = wxEditCategoryParam.catInfo.inputType,
+ isRequired = wxEditCategoryParam.catInfo.isRequired,
+ isCustomize = wxEditCategoryParam.catInfo.isCustomize,
+ }
+ };
+ wxPropParam.categorys.Add(wxCategoryParam);
+ }
}
- if (attr == null)
+ }
+ else
+ {
+ foreach (var propInfo in prodInfo.property.goods_properties)
{
- if (propInfo.name.Contains("面料俗称"))
+ if (propInfo.values.Count == 0)
+ continue;
+
+ var attr = productAttr.attr.FirstOrDefault(r => r.name == propInfo.name);
+ if (propInfo.name == "生产日期" && propInfo.values.Count > 0)
{
- attr = productAttr.attr.FirstOrDefault(r => r.name == "面料材质");
+ propInfo.values.FirstOrDefault().value = DateTime.Now.Date.AddDays(-15).ToString("yyyy-MM-dd");
+ propInfo.values.FirstOrDefault().raw_value = propInfo.values.FirstOrDefault().value;
}
- if (propInfo.name.Contains("适用年龄"))
+ if (attr == null)
{
- attr = productAttr.attr.FirstOrDefault(r => r.name == "适用年龄" || r.name == "适用年龄段");
+ if (propInfo.name.Contains("面料俗称"))
+ {
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "面料材质");
+ }
+ if (propInfo.name.Contains("适用年龄"))
+ {
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "适用年龄" || r.name == "适用年龄段");
+ }
+ if (propInfo.name.Contains("填充物"))
+ {
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "填充物种类" || r.name == "填充物");
+ }
+
+ // 书籍类目属性匹配
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "图书" || prodInfo.detail.cats.FirstOrDefault() == "书籍/杂志/报纸")
+ {
+ if (propInfo.name == "出版社名称")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "出版社名称");
+ else if (propInfo.name == "ISBN编号")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "ISBN版号/CN刊号");
+ else if (propInfo.name == "书名")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "书名");
+ else if (propInfo.name == "定价")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "定价");
+ else if (propInfo.name == "作者")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "作者");
+ else if (propInfo.name == "出版时间")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "出版时间");
+ else if (propInfo.name == "版次")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "版次");
+ else if (propInfo.name == "装帧类型")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "包装");
+ else if (propInfo.name == "包册数")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "图书册数");
+ }
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "食品饮料" || prodInfo.detail.cats.FirstOrDefault() == "食品饮料")
+ {
+ if (propInfo.name == "厂名")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "生产企业名称");
+ else if (propInfo.name == "食品生产许可证编号")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "食品生产许可证编号");
+ else if (propInfo.name == "产品标准号")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "产品标准号");
+ else if (propInfo.name == "保质期")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "保质期");
+ else if (propInfo.name == "生产日期")
+ {
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "生产日期");
+ }
+ else if (propInfo.name == "产品重量")
+ {
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "单件净含量");
+ if (attr == null)
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "净含量");
+ }
+ else if (propInfo.name == "包装方式")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "包装方式");
+ //else if (propInfo.name == "配料表")
+ // attr = productAttr.attr.FirstOrDefault(r => r.name == "配料表");
+ //else if (propInfo.name == "联系方式")
+ // attr = productAttr.attr.FirstOrDefault(r => r.name == "联系方式");
+ else if (propInfo.name == "厂址")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "地址");
+ else if (propInfo.name == "储藏方法")
+ attr = productAttr.attr.FirstOrDefault(r => r.name == "贮存条件");
+ }
}
- if (propInfo.name.Contains("填充物"))
+ if (attr == null)
{
- attr = productAttr.attr.FirstOrDefault(r => r.name == "填充物种类" || r.name == "填充物");
+ continue;
+ }
+ var attrValueLst = attr.value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries).ToList();
+ var attrValue = attrValueLst.FirstOrDefault(v => v == propInfo.values.FirstOrDefault()?.value);
+ if (propInfo.name == "保质期")
+ {
+ attrValue = "30 天";
+ if (propInfo.values.Count > 0)
+ {
+ if (propInfo.values.FirstOrDefault().value.Contains("年") || propInfo.values.FirstOrDefault().value.Contains("月")
+ || propInfo.values.FirstOrDefault().value.Contains("日") || propInfo.values.FirstOrDefault().value.Contains("天")
+ || propInfo.values.FirstOrDefault().value.Contains("见包装"))
+ {
+ attrValue = propInfo.values.FirstOrDefault().value;
+ }
+ if (attrValue.Contains("天") && attrValue.Replace("天", "").ParseToInt() < 30)
+ {
+ return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"食品保质期小于30天,跳过上传\"}";
+ }
+ }
}
- // 书籍类目属性匹配
+ if (propInfo.name == "产品重量")
+ {
+ attrValue = "10g";
+ if (propInfo.values.FirstOrDefault().value.Contains("g") || propInfo.values.FirstOrDefault().value.Contains("kg"))
+ attrValue = propInfo.values.FirstOrDefault().value;
+ }
+ if (propInfo.name == "风格" && attrValue == null)
+ {
+ attrValue = attrValueLst.FirstOrDefault(v => v == propInfo.values.FirstOrDefault().value + "风");
+ }
+ if (attr.type == "string")
+ {
+ attrValue = propInfo.values.FirstOrDefault()?.value;
+ }
+ //书籍属性处理
if (upProdParam.product.info.category.FirstOrDefault()?.name == "图书" || prodInfo.detail.cats.FirstOrDefault() == "书籍/杂志/报纸")
{
- if (propInfo.name == "出版社名称")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "出版社名称");
- else if (propInfo.name == "ISBN编号")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "ISBN版号/CN刊号");
- else if (propInfo.name == "书名")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "书名");
- else if (propInfo.name == "定价")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "定价");
- else if (propInfo.name == "作者")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "作者");
- else if (propInfo.name == "出版时间")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "出版时间");
- else if (propInfo.name == "版次")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "版次");
- else if (propInfo.name == "装帧类型")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "包装");
- else if (propInfo.name == "包册数")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "图书册数");
- }
- if (upProdParam.product.info.category.FirstOrDefault()?.name == "食品饮料" || prodInfo.detail.cats.FirstOrDefault() == "食品饮料")
- {
- if (propInfo.name == "厂名")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "生产企业名称");
- else if (propInfo.name == "食品生产许可证编号")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "食品生产许可证编号");
- else if (propInfo.name == "产品标准号")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "产品标准号");
- else if (propInfo.name == "保质期")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "保质期");
- else if (propInfo.name == "生产日期")
+ if (attrValue.IsNullOrEmpty() && attr.type == "integer_unit" && (propInfo.values.FirstOrDefault()?.value).IsNumber())
{
- attr = productAttr.attr.FirstOrDefault(r => r.name == "生产日期");
+ attrValue = propInfo.values.FirstOrDefault()?.value + " " + attr.value.Split(';').FirstOrDefault();
}
- else if (propInfo.name == "产品重量")
+ if (attrValue.IsNullOrEmpty() && attr.name == "包装")
{
- attr = productAttr.attr.FirstOrDefault(r => r.name == "单件净含量");
- if (attr == null)
- attr = productAttr.attr.FirstOrDefault(r => r.name == "净含量");
- }
- else if (propInfo.name == "包装方式")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "包装方式");
- //else if (propInfo.name == "配料表")
- // attr = productAttr.attr.FirstOrDefault(r => r.name == "配料表");
- //else if (propInfo.name == "联系方式")
- // attr = productAttr.attr.FirstOrDefault(r => r.name == "联系方式");
- else if (propInfo.name == "厂址")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "地址");
- else if (propInfo.name == "储藏方法")
- attr = productAttr.attr.FirstOrDefault(r => r.name == "贮存条件");
- }
- }
- if (attr == null)
- {
- continue;
- }
- var attrValueLst = attr.value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries).ToList();
- var attrValue = attrValueLst.FirstOrDefault(v => v == propInfo.values.FirstOrDefault()?.value);
- if (propInfo.name == "保质期" )
- {
- attrValue = "30 天";
- if (propInfo.values.Count > 0)
- {
- if (propInfo.values.FirstOrDefault().value.Contains("年") || propInfo.values.FirstOrDefault().value.Contains("月")
- || propInfo.values.FirstOrDefault().value.Contains("日") || propInfo.values.FirstOrDefault().value.Contains("天")
- || propInfo.values.FirstOrDefault().value.Contains("见包装"))
- {
- attrValue = propInfo.values.FirstOrDefault().value;
- }
- if (attrValue.Contains("天") && attrValue.Replace("天", "").ParseToInt() < 30)
- {
- return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"食品保质期小于30天,跳过上传\"}";
+ if (propInfo.values.FirstOrDefault()?.value == "平装-胶订")
+ attrValue = "平装";
}
}
- }
-
- if (propInfo.name == "产品重量" )
- {
- attrValue = "10g";
- if (propInfo.values.FirstOrDefault().value.Contains("g") || propInfo.values.FirstOrDefault().value.Contains("kg"))
- attrValue = propInfo.values.FirstOrDefault().value;
- }
- if (propInfo.name == "风格" && attrValue == null)
- {
- attrValue = attrValueLst.FirstOrDefault(v => v == propInfo.values.FirstOrDefault().value + "风");
- }
- if (attr.type == "string")
- {
- attrValue = propInfo.values.FirstOrDefault()?.value;
- }
- //书籍属性处理
- if (upProdParam.product.info.category.FirstOrDefault()?.name == "图书" || prodInfo.detail.cats.FirstOrDefault() == "书籍/杂志/报纸")
- {
- if (attrValue.IsNullOrEmpty() && attr.type == "integer_unit" && (propInfo.values.FirstOrDefault()?.value).IsNumber())
+ if (attrValue.IsNullOrEmpty() && attr.isRequired == true)
{
- attrValue = propInfo.values.FirstOrDefault()?.value + " " + attr.value.Split(';').FirstOrDefault();
+ if (attrValueLst.Contains("其他"))
+ attrValue = "其他";
+ else if (attrValueLst.Contains("常规"))
+ attrValue = "常规";
+ else if (attrValueLst.Contains("通用"))
+ attrValue = "通用";
+ else
+ attrValue = attrValueLst.Where(v => !"真丝、蚕丝、香云纱、羊绒、羊毛、羊羔绒、羊羔毛、羽绒、皮草".Contains(v)).OrderBy(x => Guid.NewGuid()).FirstOrDefault();
}
- if (attrValue.IsNullOrEmpty() && attr.name == "包装")
+ if (attrValue.IsNullOrEmpty())
{
- if (propInfo.values.FirstOrDefault()?.value == "平装-胶订")
- attrValue = "平装";
+ if (attrValueLst.Contains("其他"))
+ attrValue = "其他";
+ else if (attrValueLst.Contains("通用"))
+ attrValue = "通用";
+ }
+ if (attrValue.IsNullOrEmpty() && attr.type == "string")
+ {
+ attrValue = propInfo.values.FirstOrDefault()?.value;
+ }
+ if (attr.type == "decimal4_unit" || attr.type == "integer_unit")
+ {
+ if (attr.value == "%")
+ attrValue = "10 %";
+ else if (attr.value == "g;kg")
+ attrValue = "50 g";
+ else if (attr.value == "g")
+ attrValue = "10 g";
+ else if (attr.value == "kg")
+ attrValue = "1 kg";
}
- }
- if (attrValue.IsNullOrEmpty() && attr.isRequired == true)
- {
- if (attrValueLst.Contains("其他"))
- attrValue = "其他";
- else if (attrValueLst.Contains("常规"))
- attrValue = "常规";
- else if (attrValueLst.Contains("通用"))
- attrValue = "通用";
- else
- attrValue = attrValueLst.Where(v => !"真丝、蚕丝、香云纱、羊绒、羊毛、羊羔绒、羊羔毛、羽绒、皮草".Contains(v)).OrderBy(x => Guid.NewGuid()).FirstOrDefault();
- }
- if (attrValue.IsNullOrEmpty())
- {
- if (attrValueLst.Contains("其他"))
- attrValue = "其他";
- else if (attrValueLst.Contains("通用"))
- attrValue = "通用";
- }
- if (attrValue.IsNullOrEmpty() && attr.type == "string")
- {
- attrValue = propInfo.values.FirstOrDefault()?.value;
- }
- if (attr.type == "decimal4_unit" || attr.type == "integer_unit")
- {
- if (attr.value == "%")
- attrValue = "10 %";
- else if (attr.value == "g;kg")
- attrValue = "50 g";
- else if (attr.value == "g")
- attrValue = "10 g";
- else if (attr.value == "kg")
- attrValue = "1 kg";
- }
- if (string.IsNullOrEmpty(attrValue))
- continue;
+ if (string.IsNullOrEmpty(attrValue))
+ continue;
- var wxPropParam = new propParam();
- upProdParam.product.info.param.Add(wxPropParam);
- var wxCategoryParam1 = new categoryPropParam()
- {
- catType = 7,
- name = attr.name,
- catInfo = new catInfoParam() { inputType = attr.normalRelease.ruleType, isRequired = attr.isRequired == true ? 1 : 0, isCustomize = 0 }
- };
- var wxCategoryParam2 = new categoryPropParam()
- {
- catType = 7,
- name = attrValue,
- catInfo = new catInfoParam() { inputType = attr.normalRelease.ruleType, isRequired = attr.isRequired == true ? 1 : 0, isCustomize = 0 }
- };
- wxPropParam.categorys.Add(wxCategoryParam1);
- wxPropParam.categorys.Add(wxCategoryParam2);
+ var wxPropParam = new wxPropParam();
+ upProdParam.product.info.param.Add(wxPropParam);
+ var wxCategoryParam1 = new categoryPropParam()
+ {
+ catType = 7,
+ name = attr.name,
+ catInfo = new catInfoParam() { inputType = attr.normalRelease.ruleType, isRequired = attr.isRequired == true ? 1 : 0, isCustomize = 0 }
+ };
+ var wxCategoryParam2 = new categoryPropParam()
+ {
+ catType = 7,
+ name = attrValue,
+ catInfo = new catInfoParam() { inputType = attr.normalRelease.ruleType, isRequired = attr.isRequired == true ? 1 : 0, isCustomize = 0 }
+ };
+ wxPropParam.categorys.Add(wxCategoryParam1);
+ wxPropParam.categorys.Add(wxCategoryParam2);
+ }
}
foreach (var attr in productAttr.attr)
{
@@ -2801,7 +2932,7 @@ namespace TemuKJD.WXForms.ProductForms
attrValue = "20 cm";
}
- var wxPropParam = new propParam();
+ var wxPropParam = new wxPropParam();
upProdParam.product.info.param.Add(wxPropParam);
var wxCategoryParam1 = new categoryPropParam()
{
@@ -3163,262 +3294,291 @@ namespace TemuKJD.WXForms.ProductForms
}
#endregion
- #region 标签图 书籍类生成书籍图片
- //qualificationList
- if (upProdParam.product.info.category.FirstOrDefault()?.name == "图书" || prodInfo.detail.cats.FirstOrDefault() == "书籍/杂志/报纸")
+ // 资质信息
+ if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && chkUseWXComplateProd.Checked && dbProd.has_wx_format == "1" && wxEditProdInfo != null)
{
- if (cell != null)
+ upProdParam.product.info.qualificationList.Clear();
+ if (wxEditProdInfo.product?.info?.qualificationList?.Count > 0)
{
- Invoke(new Action(() =>
+ foreach (var editQualification in wxEditProdInfo.product.info.qualificationList)
{
- cell.Value = "正在生成图书专有信息";
- }));
- }
-
- string publisher = "出版社:" + new List() { "技术出版社", "文化出版社", "美术出版社" }[Randomx.GetId(3)];
- string isbn = "ISBN:";
- string bookName = "书名:";
- string bookPrice = "定价:" + upProdParam.product.productSkus.Max(s => s.productSkuInfo.salePrice) * 0.01;
- string author = "作者:王老师";
- string publishTime = "出版时间:" + DateTime.Now.AddMonths(-3).ToString("yyyy年MM月dd日");
- string edition = "版次:1";
- string binding = "装帧:平装";
-
- foreach (var propParam in upProdParam.product.info.param)
- {
- if (propParam.categorys[0].name.Contains("出版社名称"))
- publisher = "出版社:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("ISBN版号/CN刊号"))
- isbn = "ISBN:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("书名"))
- bookName = "书名:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("定价"))
- {
- //bookPrice = "定价:" + propParam.categorys[1].name;
- propParam.categorys[1].name = bookPrice;
+ upProdParam.product.info.qualificationList.Add(new qualificationParam()
+ {
+ qualificationId = editQualification.qualificationId,
+ qualificationUrl = editQualification.qualificationUrl,
+ });
}
- else if (propParam.categorys[0].name.Contains("作者"))
- author = "作者:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("出版时间"))
- publishTime = "出版时间:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("版次"))
- edition = "版次:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("包装"))
- binding = "装帧:" + propParam.categorys[1].name;
}
- var bookStr = publisher + "\r\n" + "\r\n" +
- isbn + "\r\n" + "\r\n" +
- bookName + "\r\n" + "\r\n" +
- bookPrice + "\r\n" + "\r\n" +
- author + "\r\n" + "\r\n" +
- publishTime + "\r\n" + "\r\n" +
- edition + "\r\n" + "\r\n" +
- binding;
-
- var bookImg = new Bitmap(800, 800);
- using (Graphics g = Graphics.FromImage(bookImg))
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "成人用品" && upProdParam.product.info.category[1].name != "情趣内衣")
{
- g.Clear(Color.White);
- //Font font = new Font("宋体", 15, FontStyle.Bold);
- Font font = new Font("微软雅黑", 15, FontStyle.Regular);
- Brush textBrush = Brushes.Black;
- g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
- RectangleF rectF = new RectangleF(80, 80, 800 - 80, 800 - 80);
- g.DrawString(bookStr, font, textBrush, rectF);
+ upProdParam.product.info.brandId = wxEditProdInfo.product.info.brandId.ParseToLong();
}
-
- Thread.Sleep(Randomx.GetId(500, 800));
- var locationStr = UploadImg(shop, bookImg, cell);
- if (!locationStr.Contains("\"success\":true"))
- return locationStr;
- var location = BaseRegex.GetStringJson(ref locationStr, "Location");
- upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "1111485", qualificationUrl = new List() { location }, });
}
- #endregion
-
- #region 标签图 食品类生成食品图片
- //qualificationList
- if (upProdParam.product.info.category.FirstOrDefault()?.name == "食品饮料" || prodInfo.detail.cats.FirstOrDefault() == "食品饮料")
+ else
{
- if (cell != null)
+ #region 标签图 书籍类生成书籍图片
+ //qualificationList
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "图书" || prodInfo.detail.cats.FirstOrDefault() == "书籍/杂志/报纸")
{
- Invoke(new Action(() =>
+ if (cell != null)
{
- cell.Value = "正在生成食品饮料专有信息";
- }));
+ Invoke(new Action(() =>
+ {
+ cell.Value = "正在生成图书专有信息";
+ }));
+ }
+
+ string publisher = "出版社:" + new List() { "技术出版社", "文化出版社", "美术出版社" }[Randomx.GetId(3)];
+ string isbn = "ISBN:";
+ string bookName = "书名:";
+ string bookPrice = "定价:" + upProdParam.product.productSkus.Max(s => s.productSkuInfo.salePrice) * 0.01;
+ string author = "作者:王老师";
+ string publishTime = "出版时间:" + DateTime.Now.AddMonths(-3).ToString("yyyy年MM月dd日");
+ string edition = "版次:1";
+ string binding = "装帧:平装";
+
+ foreach (var propParam in upProdParam.product.info.param)
+ {
+ if (propParam.categorys[0].name.Contains("出版社名称"))
+ publisher = "出版社:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("ISBN版号/CN刊号"))
+ isbn = "ISBN:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("书名"))
+ bookName = "书名:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("定价"))
+ {
+ //bookPrice = "定价:" + propParam.categorys[1].name;
+ propParam.categorys[1].name = bookPrice;
+ }
+ else if (propParam.categorys[0].name.Contains("作者"))
+ author = "作者:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("出版时间"))
+ publishTime = "出版时间:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("版次"))
+ edition = "版次:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("包装"))
+ binding = "装帧:" + propParam.categorys[1].name;
+ }
+
+ var bookStr = publisher + "\r\n" + "\r\n" +
+ isbn + "\r\n" + "\r\n" +
+ bookName + "\r\n" + "\r\n" +
+ bookPrice + "\r\n" + "\r\n" +
+ author + "\r\n" + "\r\n" +
+ publishTime + "\r\n" + "\r\n" +
+ edition + "\r\n" + "\r\n" +
+ binding;
+
+ var bookImg = new Bitmap(800, 800);
+ using (Graphics g = Graphics.FromImage(bookImg))
+ {
+ g.Clear(Color.White);
+ //Font font = new Font("宋体", 15, FontStyle.Bold);
+ Font font = new Font("微软雅黑", 15, FontStyle.Regular);
+ Brush textBrush = Brushes.Black;
+ g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
+ RectangleF rectF = new RectangleF(80, 80, 800 - 80, 800 - 80);
+ g.DrawString(bookStr, font, textBrush, rectF);
+ }
+
+ Thread.Sleep(Randomx.GetId(500, 800));
+ var locationStr = UploadImg(shop, bookImg, cell);
+ if (!locationStr.Contains("\"success\":true"))
+ return locationStr;
+ var location = BaseRegex.GetStringJson(ref locationStr, "Location");
+ upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "1111485", qualificationUrl = new List() { location }, });
}
+ #endregion
-
- string foodName = "食品名称:" + prodTitle;
- string companyName = "生产商名称:中国地区食品厂";
- string SCID = "食品生产许可证编号:SC10241162100670";
- string GBID = "产品标准号:GB 2726";
- string ExpDate = "保质期:30天";
- string MakeDate = "生产日期:" + DateTime.Now.AddDays(-15).ToString("yyyy-MM-dd");
- string NetContent = "净含量:见包装";
- string Pack = "包装方式:袋装";
- string inList = "配料表:水";
- string contact = "联系方式:无";
- string address = "地址:见包装";
- string Storage = "贮存条件:常温";
-
- foreach (var propParam in upProdParam.product.info.param)
+ #region 标签图 食品类生成食品图片
+ //qualificationList
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "食品饮料" || prodInfo.detail.cats.FirstOrDefault() == "食品饮料")
{
- if (propParam.categorys[0].name.Contains("食品名称"))
- foodName = "食品名称:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("生产企业名称") && !propParam.categorys[1].name.Contains("见包装") && !propParam.categorys[1].name.Contains("见外包装"))
- companyName = "生产商名称:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("食品生产许可证编号") && !propParam.categorys[1].name.Contains("见包装") && !propParam.categorys[1].name.Contains("见外包装"))
- SCID = "食品生产许可证编号:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("产品标准号") && !propParam.categorys[1].name.Contains("见包装") && !propParam.categorys[1].name.Contains("见外包装"))
- GBID = "产品标准号:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("保质期"))
- ExpDate = "保质期:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("生产日期"))
- MakeDate = "生产日期:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("净含量"))
- NetContent = "净含量:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("包装方式"))
- Pack = "包装方式:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("配料表"))
- inList = "配料表:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("联系方式"))
- contact = "联系方式:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("地址"))
- address = "地址:" + propParam.categorys[1].name;
- else if (propParam.categorys[0].name.Contains("贮存条件"))
- Storage = "贮存条件:" + propParam.categorys[1].name;
+ if (cell != null)
+ {
+ Invoke(new Action(() =>
+ {
+ cell.Value = "正在生成食品饮料专有信息";
+ }));
+ }
+
+
+ string foodName = "食品名称:" + prodTitle;
+ string companyName = "生产商名称:中国地区食品厂";
+ string SCID = "食品生产许可证编号:SC10241162100670";
+ string GBID = "产品标准号:GB 2726";
+ string ExpDate = "保质期:30天";
+ string MakeDate = "生产日期:" + DateTime.Now.AddDays(-15).ToString("yyyy-MM-dd");
+ string NetContent = "净含量:见包装";
+ string Pack = "包装方式:袋装";
+ string inList = "配料表:水";
+ string contact = "联系方式:无";
+ string address = "地址:见包装";
+ string Storage = "贮存条件:常温";
+
+ foreach (var propParam in upProdParam.product.info.param)
+ {
+ if (propParam.categorys[0].name.Contains("食品名称"))
+ foodName = "食品名称:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("生产企业名称") && !propParam.categorys[1].name.Contains("见包装") && !propParam.categorys[1].name.Contains("见外包装"))
+ companyName = "生产商名称:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("食品生产许可证编号") && !propParam.categorys[1].name.Contains("见包装") && !propParam.categorys[1].name.Contains("见外包装"))
+ SCID = "食品生产许可证编号:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("产品标准号") && !propParam.categorys[1].name.Contains("见包装") && !propParam.categorys[1].name.Contains("见外包装"))
+ GBID = "产品标准号:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("保质期"))
+ ExpDate = "保质期:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("生产日期"))
+ MakeDate = "生产日期:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("净含量"))
+ NetContent = "净含量:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("包装方式"))
+ Pack = "包装方式:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("配料表"))
+ inList = "配料表:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("联系方式"))
+ contact = "联系方式:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("地址"))
+ address = "地址:" + propParam.categorys[1].name;
+ else if (propParam.categorys[0].name.Contains("贮存条件"))
+ Storage = "贮存条件:" + propParam.categorys[1].name;
+ }
+
+ var bookStr = foodName + "\r\n" + "\r\n";
+ bookStr += companyName + "\r\n" + "\r\n";
+ bookStr += SCID + "\r\n" + "\r\n";
+ bookStr += GBID + "\r\n" + "\r\n";
+ bookStr += ExpDate + "\r\n" + "\r\n";
+ bookStr += MakeDate + "\r\n" + "\r\n";
+ bookStr += NetContent + "\r\n" + "\r\n";
+ bookStr += Pack + "\r\n" + "\r\n";
+ bookStr += inList + "\r\n" + "\r\n";
+ bookStr += contact + "\r\n" + "\r\n";
+ bookStr += address + "\r\n" + "\r\n";
+ bookStr += Storage + "\r\n" + "\r\n";
+
+ var bookImg = new Bitmap(800, 800);
+ using (Graphics g = Graphics.FromImage(bookImg))
+ {
+ g.Clear(Color.White);
+ //Font font = new Font("宋体", 15, FontStyle.Bold);
+ Font font = new Font("微软雅黑", 15, FontStyle.Regular);
+ Brush textBrush = Brushes.Black;
+ g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
+ RectangleF rectF = new RectangleF(80, 80, 800 - 80, 800 - 80);
+ g.DrawString(bookStr, font, textBrush, rectF);
+ }
+
+ Thread.Sleep(Randomx.GetId(500, 800));
+ var locationStr = UploadImg(shop, bookImg, cell);
+ if (!locationStr.Contains("\"success\":true"))
+ return locationStr;
+ var location = BaseRegex.GetStringJson(ref locationStr, "Location");
+ upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "50000057", qualificationUrl = new List() { location }, });
}
+ #endregion
- var bookStr = foodName + "\r\n" + "\r\n";
- bookStr += companyName + "\r\n" + "\r\n";
- bookStr += SCID + "\r\n" + "\r\n";
- bookStr += GBID + "\r\n" + "\r\n";
- bookStr += ExpDate + "\r\n" + "\r\n";
- bookStr += MakeDate + "\r\n" + "\r\n";
- bookStr += NetContent + "\r\n" + "\r\n";
- bookStr += Pack + "\r\n" + "\r\n";
- bookStr += inList + "\r\n" + "\r\n";
- bookStr += contact + "\r\n" + "\r\n";
- bookStr += address + "\r\n" + "\r\n";
- bookStr += Storage + "\r\n" + "\r\n";
-
- var bookImg = new Bitmap(800, 800);
- using (Graphics g = Graphics.FromImage(bookImg))
+ #region 标签图 成人用品
+ //qualificationList
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "成人用品" && upProdParam.product.info.category[1].name != "情趣内衣")
{
- g.Clear(Color.White);
- //Font font = new Font("宋体", 15, FontStyle.Bold);
- Font font = new Font("微软雅黑", 15, FontStyle.Regular);
- Brush textBrush = Brushes.Black;
- g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
- RectangleF rectF = new RectangleF(80, 80, 800 - 80, 800 - 80);
- g.DrawString(bookStr, font, textBrush, rectF);
+ if (cell != null)
+ {
+ Invoke(new Action(() =>
+ {
+ cell.Value = "正在生成成人用品专有信息";
+ }));
+ }
+
+ string prodName = "产品名称:" +
+ (upProdParam.product.info.category.Count > 2 ? upProdParam.product.info.category[2].name : upProdParam.product.info.category.LastOrDefault()?.name);
+ string company = "生产企业:浙江邦臣医药有限公司";
+ string address = "制造商地址:浙江省金华市婺城区神丽路1399号6号厂房";
+ string model = "产品型号:见包装";
+ string material = "材质:其他";
+ string user = "适用人群:18岁以上成年人";
+
+ foreach (var propParam in upProdParam.product.info.param)
+ {
+ //if (propParam.categorys[0].name.Contains("产品名称"))
+ // prodName = "产品名称:" + propParam.categorys[1].name;
+ }
+
+ var bookStr = prodName + "\r\n" + "\r\n" +
+ company + "\r\n" + "\r\n" +
+ address + "\r\n" + "\r\n" +
+ model + "\r\n" + "\r\n" +
+ material + "\r\n" + "\r\n" +
+ user;
+
+ var bookImg = new Bitmap(800, 800);
+ using (Graphics g = Graphics.FromImage(bookImg))
+ {
+ g.Clear(Color.White);
+ //Font font = new Font("宋体", 15, FontStyle.Bold);
+ Font font = new Font("微软雅黑", 15, FontStyle.Regular);
+ Brush textBrush = Brushes.Black;
+ g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
+ RectangleF rectF = new RectangleF(80, 80, 800 - 80, 800 - 80);
+ g.DrawString(bookStr, font, textBrush, rectF);
+ }
+
+ Thread.Sleep(Randomx.GetId(500, 800));
+ var locationStr = UploadImg(shop, bookImg, cell);
+ if (!locationStr.Contains("\"success\":true"))
+ return locationStr;
+ var location = BaseRegex.GetStringJson(ref locationStr, "Location");
+ upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "50000089", qualificationUrl = new List() { location }, });
}
- Thread.Sleep(Randomx.GetId(500, 800));
- var locationStr = UploadImg(shop, bookImg, cell);
- if (!locationStr.Contains("\"success\":true"))
- return locationStr;
- var location = BaseRegex.GetStringJson(ref locationStr, "Location");
- upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "50000057", qualificationUrl = new List() { location }, });
+ if (upProdParam.product.info.category.FirstOrDefault()?.name == "成人用品" && upProdParam.product.info.category[1].name != "情趣内衣")
+ {
+ if (cell != null)
+ {
+ Invoke(new Action(() =>
+ {
+ cell.Value = "正在生成成人用品专有信息";
+ }));
+ }
+
+ string prodName = (upProdParam.product.info.category.Count > 2 ? upProdParam.product.info.category[2].name : upProdParam.product.info.category.LastOrDefault()?.name);
+
+ var baseImg = TemuKJD.Properties.Resources.qingxu;
+ var newImg = new Bitmap(baseImg.Width, baseImg.Height);
+ using (Graphics g = Graphics.FromImage(newImg))
+ {
+ //g.Clear(Color.White);
+ g.DrawImage(baseImg, new Rectangle(0, 0, newImg.Width, newImg.Height), 0, 0, baseImg.Width, baseImg.Height, GraphicsUnit.Pixel);
+
+ g.FillRectangle(Brushes.White, 860.ParseToInt(), (1024 - 4).ParseToInt(), 500, 120);
+
+ //Font font = new Font("宋体", txtSize.Text.Trim().ParseToInt(), FontStyle.Bold);
+ Font font = new Font("宋体", 44.ParseToInt(), FontStyle.Regular);
+ //Font font = new Font("微软雅黑", 15, FontStyle.Regular);
+ Brush textBrush = Brushes.Black;
+ textBrush = new SolidBrush(Color.FromArgb(0, 0, 0));
+ g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
+ RectangleF rectF = new RectangleF(860, 1024, baseImg.Width - 80, baseImg.Height - 80);
+ if (!string.IsNullOrWhiteSpace(prodName.Trim()))
+ g.DrawString(prodName.Trim(), font, textBrush, rectF);
+ }
+
+ Thread.Sleep(Randomx.GetId(500, 800));
+ var locationStr = UploadImg(shop, newImg, cell);
+ if (!locationStr.Contains("\"success\":true"))
+ return locationStr;
+ var location = BaseRegex.GetStringJson(ref locationStr, "Location");
+ upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "50000115", qualificationUrl = new List() { location }, });
+ }
+ #endregion
}
- #endregion
- #region 标签图 成人用品
- //qualificationList
- if (upProdParam.product.info.category.FirstOrDefault()?.name == "成人用品" && upProdParam.product.info.category[1].name != "情趣内衣")
+ if (upProdParam.product.info.category[1].name == "情趣内衣")
{
- if (cell != null)
- {
- Invoke(new Action(() =>
- {
- cell.Value = "正在生成成人用品专有信息";
- }));
- }
-
- string prodName = "产品名称:" +
- (upProdParam.product.info.category.Count > 2 ? upProdParam.product.info.category[2].name : upProdParam.product.info.category.LastOrDefault()?.name);
- string company = "生产企业:浙江邦臣医药有限公司";
- string address = "制造商地址:浙江省金华市婺城区神丽路1399号6号厂房";
- string model = "产品型号:见包装";
- string material = "材质:其他";
- string user = "适用人群:18岁以上成年人";
-
- foreach (var propParam in upProdParam.product.info.param)
- {
- //if (propParam.categorys[0].name.Contains("产品名称"))
- // prodName = "产品名称:" + propParam.categorys[1].name;
- }
-
- var bookStr = prodName + "\r\n" + "\r\n" +
- company + "\r\n" + "\r\n" +
- address + "\r\n" + "\r\n" +
- model + "\r\n" + "\r\n" +
- material + "\r\n" + "\r\n" +
- user;
-
- var bookImg = new Bitmap(800, 800);
- using (Graphics g = Graphics.FromImage(bookImg))
- {
- g.Clear(Color.White);
- //Font font = new Font("宋体", 15, FontStyle.Bold);
- Font font = new Font("微软雅黑", 15, FontStyle.Regular);
- Brush textBrush = Brushes.Black;
- g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
- RectangleF rectF = new RectangleF(80, 80, 800 - 80, 800 - 80);
- g.DrawString(bookStr, font, textBrush, rectF);
- }
-
- Thread.Sleep(Randomx.GetId(500, 800));
- var locationStr = UploadImg(shop, bookImg, cell);
- if (!locationStr.Contains("\"success\":true"))
- return locationStr;
- var location = BaseRegex.GetStringJson(ref locationStr, "Location");
- upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "50000089", qualificationUrl = new List() { location }, });
+ upProdParam.product.info.extraService.freightInsurance = 0;
}
- if (upProdParam.product.info.category.FirstOrDefault()?.name == "成人用品" && upProdParam.product.info.category[1].name != "情趣内衣")
- {
- if (cell != null)
- {
- Invoke(new Action(() =>
- {
- cell.Value = "正在生成成人用品专有信息";
- }));
- }
-
- string prodName = (upProdParam.product.info.category.Count > 2 ? upProdParam.product.info.category[2].name : upProdParam.product.info.category.LastOrDefault()?.name);
-
- var baseImg = TemuKJD.Properties.Resources.qingxu;
- var newImg = new Bitmap(baseImg.Width, baseImg.Height);
- using (Graphics g = Graphics.FromImage(newImg))
- {
- //g.Clear(Color.White);
- g.DrawImage(baseImg, new Rectangle(0, 0, newImg.Width, newImg.Height), 0, 0, baseImg.Width, baseImg.Height, GraphicsUnit.Pixel);
-
- g.FillRectangle(Brushes.White, 860.ParseToInt(), (1024 - 4).ParseToInt(), 500, 120);
-
- //Font font = new Font("宋体", txtSize.Text.Trim().ParseToInt(), FontStyle.Bold);
- Font font = new Font("宋体", 44.ParseToInt(), FontStyle.Regular);
- //Font font = new Font("微软雅黑", 15, FontStyle.Regular);
- Brush textBrush = Brushes.Black;
- textBrush = new SolidBrush(Color.FromArgb(0, 0, 0));
- g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
- RectangleF rectF = new RectangleF(860, 1024, baseImg.Width - 80, baseImg.Height - 80);
- if (!string.IsNullOrWhiteSpace(prodName.Trim()))
- g.DrawString(prodName.Trim(), font, textBrush, rectF);
- }
-
- Thread.Sleep(Randomx.GetId(500, 800));
- var locationStr = UploadImg(shop, newImg, cell);
- if (!locationStr.Contains("\"success\":true"))
- return locationStr;
- var location = BaseRegex.GetStringJson(ref locationStr, "Location");
- upProdParam.product.info.qualificationList.Add(new qualificationParam() { qualificationId = "50000115", qualificationUrl = new List() { location }, });
- }
- #endregion
-
if (cell != null)
{
Invoke(new Action(() =>
@@ -3948,6 +4108,8 @@ namespace TemuKJD.WXForms.ProductForms
data += "&product_name=" + txtSearchGoodsName.Text.Trim();
if (chkSevenDays.Checked)
data += "&add_days_less=7";
+ if (chkWXComplateProd.Checked)
+ data += "&has_wx_format=1";
}));
var html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
@@ -4500,6 +4662,12 @@ namespace TemuKJD.WXForms.ProductForms
wxUploadRule.IsAiShortTitle = chkAiShortTitle.Checked;
NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_upload_rule", wxUploadRule);
}
+
+ private void chkUseWXComplateProd_CheckedChanged(object sender, EventArgs e)
+ {
+ wxUploadRule.IsUseWXComplateProd = chkUseWXComplateProd.Checked;
+ NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_upload_rule", wxUploadRule);
+ }
}
public class WXUpload
@@ -4918,5 +5086,6 @@ Content-Type: application/octet-stream
public int FilterBoundMinSave { get; set; } = 1000;
public int FilterBoundMaxSave { get; set; } = 1000;
public bool IsAiShortTitle { get; set; } = false;
+ public bool IsUseWXComplateProd { get; set; }
}
}
diff --git a/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs b/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs
index d1d979c..a4d09ab 100644
--- a/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs
@@ -1129,11 +1129,39 @@ namespace TemuKJD.WXForms.ProductForms
}
List downSkuExistLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(result)["data"].ParseToString());
+ // 查询作废库有没有
+ url = BaseClass.BuildPDDObjString("product/get_product_spu_id_list");
+ Thread.Sleep(500);
+ data = UserLogin.GetSignaturex();
+ data += "&search_secret_spu_ids=" + string.Join(",", extCodeLst.Distinct());
+ data += "&wx_safe_status=" + "违规商品";
+ result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ {
+ var errMsg = BaseRegex.GetStringJson(ref result, "msg");
+ if (string.IsNullOrEmpty(errMsg))
+ errMsg = result;
+ Invoke(new Action(() =>
+ {
+ foreach (var row in rowLstTmp)
+ {
+ row.Cells["colOpResult"].Value = "查询商品违规错误:" + errMsg;
+ }
+ }));
+ continue;
+ }
+ List downDbProdExistLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(result)["data"].ParseToString());
+
foreach (var row in rowLstTmp)
{
var extCode = row.Cells["colExtCode"].Value.ParseToString();
- var neewDownSkuLst = downSkuExistLst.Where(se => se.secret_spu_id == extCode).ToList();
- if (neewDownSkuLst.Count == 0)
+ // 下架sku
+ var needDownSkuLst = downSkuExistLst.Where(se => se.secret_spu_id == extCode).ToList();
+ // 违规商品
+ var needDownProdLst = downDbProdExistLst.Where(pe => pe.secret_spu_id == extCode).ToList();
+ if (needDownSkuLst.Count == 0 && needDownProdLst.Count == 0)
{
Invoke(new Action(() =>
{
@@ -1143,6 +1171,10 @@ namespace TemuKJD.WXForms.ProductForms
}
else
{
+ if (needDownProdLst.Count > 0)
+ {
+
+ }
Invoke(new Action(() =>
{
row.Cells["colOpResult"].Value = "正在检测同步";
@@ -1187,7 +1219,7 @@ namespace TemuKJD.WXForms.ProductForms
var jSkuStr = jSku.ParseToString();
var itemCode = jSku["productSkuInfo"]?["skuCode"].ParseToString();
var needDownSku = downSkuExistLst.FirstOrDefault(se =>se.secret_spu_id == extCode && se.secret_sku_id == itemCode);
- if (needDownSku != null)
+ if (needDownSku != null || needDownProdLst.Count > 0)
{
if (//jSku["productSkuInfo"]["stockInfo"]["stockNum"].ParseToString() != "0" ||
jSku["productSkuInfo"]["stockInfo"]["totalNum"].ParseToString() != "0" ||
diff --git a/TEMUKJD/WXForms/ShopForms/WXShopBrowserObject.cs b/TEMUKJD/WXForms/ShopForms/WXShopBrowserObject.cs
index eb7e000..242c8d3 100644
--- a/TEMUKJD/WXForms/ShopForms/WXShopBrowserObject.cs
+++ b/TEMUKJD/WXForms/ShopForms/WXShopBrowserObject.cs
@@ -3,7 +3,9 @@ using AllBase.Helper;
using AllBase.Model.Param.PDDProdParam;
using AllBase.Model.Result;
using AllBase.Model.Result.PDDResult;
+using AllBase.Model.Result.WXResult;
using NaiBa.Util.Extension;
+using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
@@ -14,8 +16,9 @@ using System.Threading.Tasks;
using System.Windows.Forms;
using TemuKJD.BaseForms;
using TemuKJD.BLL;
-using TemuKJD.PDDForms.AdminForms;
using TemuKJD.PDDForms.ProductThirdSelectForms;
+using TemuKJD.WXForms.AdminForms;
+using TemuKJD.WXForms.ProductForms;
using Work;
namespace TemuKJD.WXForms.ShopForms
@@ -25,5 +28,153 @@ namespace TemuKJD.WXForms.ShopForms
public delegate void InfoReceivedHandler(string information);
public event InfoReceivedHandler OnInfoReceived;
+ public string getProduct(string sProdId, string supplierId, bool notSaveDb = false)
+ {
+ var prodId = sProdId.ParseToLong();
+ if (prodId <= 0)
+ {
+ MainForm.instance.Invoke(new Action(() =>
+ {
+ BaseMsgForm.ShowError("商品Id不存在!");
+ }));
+ return "failed";
+ }
+ //var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
+ var shop = WXAdminShopListForm.lstAdminShopInfo.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
+ if (shop == null)
+ shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
+ if (string.IsNullOrEmpty(supplierId) || shop == null)
+ {
+ MainForm.instance.Invoke(new Action(() =>
+ {
+ BaseMsgForm.ShowError("店铺不存在!");
+ }));
+ return "failed";
+ }
+
+ Task.Run(() =>
+ {
+ var msg = getPDDProductWidthEdit(shop, sProdId);
+ if (!string.IsNullOrEmpty(msg))
+ {
+ if (!msg.StartsWith("success") && !msg.StartsWith("商品回采保存成功"))
+ {
+ MainForm.instance.Invoke(new Action(() =>
+ {
+ BaseMsgForm.ShowError(msg);
+ }));
+ }
+ else
+ {
+ MainForm.instance.Invoke(new Action(() =>
+ {
+ BaseMsgForm.ShowInfo(msg);
+ }));
+ }
+ }
+ });
+
+ return "success";
+ }
+
+ public string getPDDProductWidthEdit(ShopLoginInfo shop, string prodId)
+ {
+ try
+ {
+ Thread.Sleep(Randomx.GetId(10, 50));
+ string getEditProdRst = "";
+ try
+ {
+ getEditProdRst = WXUpload.getEditProductV2(shop, prodId);
+ Thread.Sleep(Randomx.GetId(50, 100));
+ if (getEditProdRst.Contains("biz magic invalid"))
+ {
+ WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
+ }
+ if (!getEditProdRst.Contains("\"success\":true"))
+ {
+ var errmsg = BaseRegex.GetStringJson(ref getEditProdRst, "msg");
+ if (string.IsNullOrWhiteSpace(errmsg))
+ errmsg = getEditProdRst;
+ if (shop.LoginStatus != "登录成功")
+ errmsg = "店铺掉线";
+
+ return "商品回采失败!" + errmsg;
+ }
+ }
+ catch (Exception ex)
+ {
+ //OnInfoReceived("商品获取失败!商品数据格式获取失败!" + ex.Message);
+ return "商品回采失败!商品数据格式获取失败!" + ex.Message;
+ }
+
+ WXGetEditProductInfoLite wxProdInfoLite = null;
+ try
+ {
+ wxProdInfoLite = JsonHelper.DeserializeJsonToObject(getEditProdRst);
+ var wxProdInfoLiteStr = JsonHelper.SerializeObject(wxProdInfoLite);
+ if (string.IsNullOrWhiteSpace(wxProdInfoLite.product.info.spuCode))
+ {
+ return "商品回采失败:外部编码采集失败,跳过";
+ }
+ }
+ catch (Exception ex)
+ {
+ return "商品回采失败:格式转换失败 " + ex.Message;
+ }
+
+
+ // 查询商品库有没有
+ var url = BaseClass.BuildPDDObjString("product/get_product_spu_id_list");
+ Thread.Sleep(200);
+ var data = UserLogin.GetSignaturex();
+ data += "&search_secret_spu_ids=" + wxProdInfoLite.product.info.spuCode;
+ data += "&wx_safe_status=" + "安全商品,未校验";
+ var result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ {
+ var errMsg = BaseRegex.GetStringJson(ref result, "msg");
+ if (string.IsNullOrEmpty(errMsg))
+ errMsg = result;
+ return "查询回采商品错误:" + errMsg;
+ }
+ List complateDbProdExistLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(result)["data"].ParseToString());
+ if (complateDbProdExistLst.Count == 0)
+ {
+ return "回采商品不存在";
+ }
+
+
+ url = BaseClass.BuildPDDObjString("product/add_prod_wx_complate");
+ Thread.Sleep(200);
+ data = UserLogin.GetSignaturex();
+ data += "&secret_spu_id=" + wxProdInfoLite.product.info.spuCode;
+ data += "&spu_id=" + complateDbProdExistLst[0].spu_id;
+ data += "&coid=" + complateDbProdExistLst[0].skc_id;
+ JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
+ data += "&wx_edit_prod_json=" + GetHtml.UrlEncodeUtf8(JsonConvert.SerializeObject(wxProdInfoLite, jsonSetting));
+ result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ result = GetHtml.PostUtf8(url, data);
+ if (!result.Contains("\"code\":200"))
+ {
+ var errMsg = BaseRegex.GetStringJson(ref result, "msg");
+ if (string.IsNullOrEmpty(errMsg))
+ errMsg = result;
+ return "查询回采商品错误:" + errMsg;
+ }
+ else
+ {
+ return "商品回采保存成功!";
+ }
+ }
+ catch (Exception ex)
+ {
+ return "商品采集失败!" + ex.Message;
+ }
+ return "商品采集失败!";
+ }
}
}
diff --git a/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs
index 0bfa3df..c8e9f43 100644
--- a/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs
+++ b/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs
@@ -445,7 +445,8 @@ namespace TemuKJD.WXForms.ShopForms
List shopIdList = GetCheckedShopIdList();
this.Invoke(new Action(() =>
{
- foreach(DataGridViewRow row in dgvShop.Rows.Cast())
+ var rows = dgvShop.Rows.Cast().ToList();
+ foreach (DataGridViewRow row in rows)
{
if (!shopList.Any(s => s.ShopId == row.Cells["colShopId"].Value.ParseToString()))
this.dgvShop.Rows.Remove(row);
diff --git a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs
index 33912ab..6f0bfa4 100644
--- a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs
+++ b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs
@@ -446,7 +446,7 @@ namespace TemuKJD.WXForms.ShopForms
sb.Append("(function(){");
sb.Append("CefSharp.BindObjectAsync('shopObj');");
sb.Append("})();");
- //cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
+ cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
}
//public Func BeforeResourceLoadEvent; // sender, requestUrl, postData, request, true(表示取消执行)
@@ -538,6 +538,58 @@ namespace TemuKJD.WXForms.ShopForms
this.lstShopCompany.Add(sc);
});
}
+
+ if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && currentUrl.StartsWith("https://store.weixin.qq.com/shop/goods/list"))
+ {
+ //Task.Run(() => {
+ string sAddInputJs = @"
+ document.addEventListener('wheel', function(event) {
+ // 检查滚动方向
+ //if (event.deltaY < 0) {
+ // console.log('向上滚动');
+ //} else {
+ // console.log('向下滚动');
+ //}
+ // 或者使用 event.deltaX 来检查水平滚动
+ //if (event.deltaX < 0) {
+ // console.log('向左滚动');
+ //} else if (event.deltaX > 0) {
+ // console.log('向右滚动');
+ //}
+
+ // 阻止默认的滚动行为(如果有需要)
+ //event.preventDefault();
+
+ addGetProdButton();
+ });
+ addGetProdButton();
+
+ function addGetProdButton() {
+ const element = document.getElementsByName('goods')[0];
+ const shadowRoot = element.shadowRoot;
+ var productLst = shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
+ for ( i= 0; i < productLst.length; i++) {
+ var addBtnItem = productLst[i]; //.parentElement.parentElement.parentElement;
+ var pos = addBtnItem.innerHTML.indexOf('ID:')
+ if (addBtnItem.innerHTML.indexOf('回采') < 0 && pos >= 0) {
+ var sSpuId = addBtnItem.innerHTML.substring(pos + 3);
+ sSpuId = sSpuId.substring(0, sSpuId.indexOf('""
+ //addBtnItem.innerHTML += """"
+ //addBtnItem.innerHTML = addBtnItem.innerHTML.replace(""分享 "", ""分享 "");
+ var newDiv = document.createElement(""div"");
+ newDiv.innerHTML = ""回采<\a>"";
+ addBtnItem.lastChild.appendChild(newDiv);
+ }
+ }
+ }";
+ cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sAddInputJs);
+ //});
+
+ //const element = document.getElementsByName('goods')[0]
+ //const shadowRoot = element.shadowRoot;
+ //shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
+ }
}
///
diff --git a/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs b/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs
index 89612a0..78a6b19 100644
--- a/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs
+++ b/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs
@@ -411,6 +411,7 @@ namespace TemuKJD.WXForms.TalkForms
if (shop == null)
return;
+ string resData = responseData;
Task.Run(() =>
{
var row = dgvShop.Rows.Cast().FirstOrDefault(r => r.Cells["colShopId"].Value.ParseToString() == shop.ShopId);
@@ -421,7 +422,7 @@ namespace TemuKJD.WXForms.TalkForms
{
//{"base_resp":{"err_msg":"ok","ret":0},"list":[{"session_status":1,"summary":{"accept_by_robot":2,"accept_by_robot_time":"0","complaint_info":{"complaint_expire_time":0,"complaint_id":"0"},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"1","is_delete":0,"lastest_msg_content":"","lastest_msg_id":"4348928114244206592","lastest_msg_kf_content":"{\"content\":\"你好\"}","lastest_user_msg_time":"1768807915","msg_type":1,"recv_open_account":"wxf4460bce24e5d58d","recv_openid":"","room_id":"4348927951587721218","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"unread_msg_num":"1","unreplied_msg_time":"1768807915","update_time":"1768807915"}}],"num":1}
//{"base_resp":{"err_msg":"ok","ret":0},"list":[],"num":0}
- var jObj = JsonHelper.JObjectParse(responseData);
+ var jObj = JsonHelper.JObjectParse(resData);
//{"base_resp":{"err_msg":"ok","ret":0},"list":[{"session_status":1,"summary":{"accept_by_robot":2,"accept_by_robot_time":"0","complaint_info":{"complaint_expire_time":0,"complaint_id":"0"},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"160","is_delete":0,"lastest_msg_content":"","lastest_msg_id":"4349035115016224786","lastest_msg_kf_content":"{\"type\":13,\"content\":\"{\\\"finder_live_id\\\":\\\"\\\",\\\"finder_username\\\":\\\"\\\",\\\"finder_object_id\\\":\\\"\\\",\\\"finder_nonce_id\\\":\\\"\\\",\\\"app_id\\\":\\\"wxca8d4b8e8feedc2a\\\",\\\"page_path\\\":\\\"main/pages/productDetail/productDetail.html?productId=10000405003763&realappid=wx2664a142d76831dd&cacheKey=3d585c9672aa92a088812cf9f8b30e0a&cacheType=backup&businessId=1&requestId=4349035091393462273&subScene=1208\\\",\\\"product_id\\\":\\\"10000405003763\\\",\\\"cover_url\\\":\\\"https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/695a36c7000ab9b70c029451f0d71715000000a100004f50?imageView2/1/w/400/h/400/q/50\\\",\\\"product_title\\\":\\\"运动套装女春秋2024新款时尚小熊卫衣连帽宽松跑步服休闲两件套潮\\\",\\\"market_price\\\":\\\"39530\\\",\\\"selling_price\\\":\\\"38730\\\",\\\"platform_head_img\\\":\\\"http://mmbiz.qpic.cn/mmbiz_jpg/cpXibyAIsexe8vObd8jWMktZk6sg1kKJgicdnzFiaxR1XvU0Kchlfdewsu7JETDF3lLp5cyULNNee94UPGeU1r9Rw/0?wx_fmt=jpeg/0\\\",\\\"platform_name\\\":\\\"夜笙供应链\\\",\\\"shop_window_id\\\":\\\"\\\",\\\"live_status\\\":\\\"\\\",\\\"flash_sale_price\\\":0,\\\"flash_sale_end_time\\\":0,\\\"ec_source\\\":\\\"\\\",\\\"selling_price_wording\\\":\\\"\\\",\\\"ext_conv\\\":{\\\"ext_conv_type\\\":1,\\\"ec_product_url\\\":\\\"https://channels.weixin.qq.com/shop?login_appid=wx2664a142d76831dd&redirect_url=%2Fgoods%2Fentry%3FproductId%3D10000405003763\\\",\\\"context\\\":\\\"\\\"}}\"}","lastest_user_msg_time":"1768814292","msg_type":11,"recv_open_account":"wx2664a142d76831dd","recv_openid":"","room_id":"4349034984388345858","scene":6,"send_open_account":"","send_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac","send_scene":6,"unread_msg_num":"1","unreplied_msg_time":"1768814293","update_time":"1768814292"}}],"num":1}
//if (jObj["num"].ParseToInt() <= 0)
// return;
@@ -431,13 +432,13 @@ namespace TemuKJD.WXForms.TalkForms
{
//{"base_resp":{"err_msg":"ok","ret":0},"pin_summary_list":[],"summary_cursor":"4349020771451830279","summary_list":[{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"5","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":0,"lastest_msg_content":"","lastest_msg_id":"4349029975415865363","lastest_msg_kf_content":"{\"content\":\"你好\"}","lastest_user_msg_time":"1768813986","msg_type":1,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348999364009132044","room_session_status":0,"scene":6,"send_open_account":"","send_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"78","unread_msg_num":"1","unreplied_msg_time":"1768813988","update_time":"1768813986","user_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac"}]}
//{"base_resp":{"err_msg":"ok","ret":0},"pin_summary_list":[],"summary_cursor":"4349035365970083850","summary_list":[{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"160","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4349035365970083850","lastest_msg_kf_content":"{\"content\":\"在的亲\"}","lastest_user_msg_time":"1768814292","msg_type":1,"recv_open_account":"wx2664a142d76831dd","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4349034984388345858","room_session_status":0,"scene":6,"send_open_account":"wx2664a142d76831dd","send_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"3186","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768814308","user_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/sstLNDibp2U6zXibjfoE1tUiaHCOKX1olnJNZnFGehlibg4liacAAWmj2VQ\\/64\",\"nickname\":\"我是上帝的女儿李善容\",\"list\":[],\"qa_info_list\":[]}","id":"154","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":0,"lastest_msg_content":"","lastest_msg_id":"4347360170765271042","lastest_msg_kf_content":"{\"type\":\"SessionTimeoutRedDot\",\"content\":\"你已超过10分钟未回复该会话,请及时处理。\",\"room_id\":\"4339855644638920709\",\"msg_id\":\"4347350053416747021\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768713854","msg_type":24,"recv_open_account":"wx2664a142d76831dd","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4339855644638920709","room_session_status":0,"scene":6,"send_open_account":"","send_openid":"o9cq802n8yQWq6bwbx2w8rp_aygk","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"3042","unread_msg_num":"0","unreplied_msg_time":"1768713857","update_time":"1768714458","user_openid":"o9cq802n8yQWq6bwbx2w8rp_aygk"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/IbQhd2Y9oKdcIf3tbP1pciaic0icL271V7iaqWQqGvrrrMbq26tSHnFf9Q\\/64\",\"nickname\":\"素色🍃᭄年华\",\"list\":[],\"qa_info_list\":[]}","id":"155","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4347305586245287937","lastest_msg_kf_content":"{\"type\":\"SessionTimeoutRedDot\",\"content\":\"你已超过10分钟未回复该会话,请及时处理。\",\"room_id\":\"4340576309047115777\",\"msg_id\":\"4347295489464516617\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768710602","msg_type":24,"recv_open_account":"wx2664a142d76831dd","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4340576309047115777","room_session_status":0,"scene":6,"send_open_account":"","send_openid":"o9cq80-t4oDOfQD6J6oJ8pp4yA7M","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"3035","unread_msg_num":"0","unreplied_msg_time":"1768710604","update_time":"1768711205","user_openid":"o9cq80-t4oDOfQD6J6oJ8pp4yA7M"}]}
- var jObj = JsonHelper.JObjectParse(responseData);
+ var jObj = JsonHelper.JObjectParse(resData);
return;
}
else if (url.Contains("action=get_session_summary"))
{
//{"base_resp":{"err_msg":"ok","ret":0},"pin_summary_list":[],"summary_cursor":"4349042918267191303","summary_list":[{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"5","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4349042918267191303","lastest_msg_kf_content":"{\"content\":\"您好亲,有什么需要帮助的吗\"}","lastest_user_msg_time":"1768814710","msg_type":1,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348999364009132044","room_session_status":0,"scene":6,"send_open_account":"wxad4163db54e87b44","send_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"87","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768814758","user_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"2","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348993861855264779","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348684483414425612\",\"msg_id\":\"4348993861855264779\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768811222","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348684483414425612","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"59","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768811834","user_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM61GOTjShX4GX3aSpuNiavic5xxAickB0fxH1Bic8Az5d0LCA\\/64\",\"nickname\":\"春暖花开\",\"list\":[],\"qa_info_list\":[]}","id":"4","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348932333527973902","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348906544732405760\",\"msg_id\":\"4348932333527973902\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768807466","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348906544732405760","scene":6,"send_open_account":"","send_openid":"o9cq807-mRKhlh-MPBpeYyar46HA","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"44","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768808166","user_openid":"o9cq807-mRKhlh-MPBpeYyar46HA"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PdibpV1sFDHeGJDbIwia4cv3UUPxnHqjFQ4piaSFEeJlViaeDPicHuQITkw\\/64\",\"nickname\":\"春雨\",\"list\":[],\"qa_info_list\":[]}","id":"3","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348888492147638275","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348715191491690506\",\"msg_id\":\"4348888492147638275\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768795504","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348715191491690506","scene":6,"send_open_account":"","send_openid":"o9cq805nSmIjHqNthn9QbNimVAsE","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"29","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768805553","user_openid":"o9cq805nSmIjHqNthn9QbNimVAsE"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEJLajvZG4pYqhDrljibs7sNChSx6Cib2mN6KicJgbRESR8Rg\\/64\",\"nickname\":\"喂累了额\",\"list\":[],\"qa_info_list\":[]}","id":"1","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348884857446612993","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4347660512343588869\",\"msg_id\":\"4348884857446612993\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768732601","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4347660512343588869","scene":6,"send_open_account":"","send_openid":"o9cq8038HnVM43HL44F5yGx6S6P0","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"27","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768805337","user_openid":"o9cq8038HnVM43HL44F5yGx6S6P0"}]}
- var jObj = JsonHelper.JObjectParse(responseData);
+ var jObj = JsonHelper.JObjectParse(resData);
if (jObj.IsNullOrEmpty() || jObj["summary_list"].IsNullOrEmpty())
{
return;
@@ -457,6 +458,8 @@ namespace TemuKJD.WXForms.TalkForms
continue;
if (summary.Contains("用户超时未回"))
continue;
+ if (summary.Contains("该对话已投诉成功, 投诉有效期内不计入考核。"))
+ continue;
// 最后一条是自己回复的,返回
var send_open_account = summaryObj["send_open_account"].ParseToString();
if (send_open_account == shop.ShopId)
@@ -488,12 +491,12 @@ namespace TemuKJD.WXForms.TalkForms
//{"finder_live_id":"","finder_username":"","finder_object_id":"","finder_nonce_id":"","app_id":"wxca8d4b8e8feedc2a","page_path":"main/pages/productDetail/productDetail.html?productId=10000444468035&realappid=wx2664a142d76831dd&cacheKey=4f69a37c98838eb27e484b6def86d0ca&cacheType=backup&businessId=1&requestId=4348991209208823817&subScene=1208","product_id":"10000444468035","cover_url":"https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/69677007000d0f3329fc594d77ef1b15000000a000004f50?imageView2/1/w/400/h/400/q/50","product_title":"保暖加绒中老年妈妈装棉服","market_price":"6980","selling_price":"6180","platform_head_img":"http://mmbiz.qpic.cn/mmbiz_jpg/cpXibyAIsexe8vObd8jWMktZk6sg1kKJgicdnzFiaxR1XvU0Kchlfdewsu7JETDF3lLp5cyULNNee94UPGeU1r9Rw/0?wx_fmt=jpeg/0","platform_name":"夜笙供应链","shop_window_id":"","live_status":"","flash_sale_price":0,"flash_sale_end_time":0,"ec_source":"","selling_price_wording":"","ext_conv":{"ext_conv_type":1,"ec_product_url":"https://channels.weixin.qq.com/shop?login_appid=wx2664a142d76831dd&redirect_url=%2Fgoods%2Fentry%3FproductId%3D10000444468035","context":""}}
try
{
- if (responseData.Contains("\"total_num\":0"))
+ if (resData.Contains("\"total_num\":0"))
return;
// 只有一条消息且是更新房间游标的直接退出
- if (responseData.Contains("\"total_num\":1") && responseData.Contains("更新房间游标"))
+ if (resData.Contains("\"total_num\":1") && resData.Contains("更新房间游标"))
return;
- if (responseData.Contains("鉴权失败"))
+ if (resData.Contains("鉴权失败"))
{
return;
//WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
@@ -501,7 +504,7 @@ namespace TemuKJD.WXForms.TalkForms
}
//{"base_resp":{"ret":30000,"err_msg":"鉴权失败"}}
- var jObj = JsonHelper.JObjectParse(responseData);
+ var jObj = JsonHelper.JObjectParse(resData);
if (jObj["total_num"].ParseToInt() <= 0)
return;
// 自己发的消息或者客服自动回复消息不闪烁提示且将表格颜色还原 -----------------------------------------------------------------------------------------------
@@ -529,11 +532,14 @@ namespace TemuKJD.WXForms.TalkForms
// {"base_resp":{"err_msg":"ok","ret":0},"kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","list":[{"accept_by_robot":0,"async_check_spam_stage":0,"client_ms":"1768806150100","create_time":"1768806150","create_time_ms":"1768806150100","encrypt_msg_kf_content":"","extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"31","imunion_msg_id":"mmec-commkf-v2-4348898496719831040","insert_create_time_ms":"1768806150148","is_anonymous_msg":0,"is_delete":0,"is_expired":0,"is_fail":0,"is_hit_spam":0,"is_revoked":0,"is_sys_msg":1,"msg_direction":3,"msg_id":"4348898496719831040","msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348684483414425612\",\"msg_id\":\"4348898496719831040\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","msg_type":5,"properties":"0","recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","reply_type":0,"room_id":"4348684483414425612","room_useruin":"0","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"session_id":"0","update_time":"1768806150"}],"total_num":1}
if (content.Contains("用户超时未回,会话已结束,两天内仍可再次联系"))
return;
-
if (content.Contains("会话已结束"))
return;
if (content.Contains("用户已结束会话") || content.Contains("客服已结束会话"))
return;
+ if (content.Contains("用户超时未回"))
+ return;
+ if (content.Contains("该对话已投诉成功, 投诉有效期内不计入考核。"))
+ return;
// {"base_resp":{"err_msg":"ok","ret":0},"kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","list":[{"accept_by_robot":0,"async_check_spam_stage":0,"client_ms":"1768808777632","create_time":"1768808777","create_time_ms":"1768808777632","encrypt_msg_kf_content":"","extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"46","imunion_msg_id":"mmec-commkf-v2-4348942579357122569","insert_create_time_ms":"1768808777711","is_anonymous_msg":1,"is_delete":0,"is_expired":0,"is_fail":0,"is_hit_spam":0,"is_revoked":0,"is_sys_msg":1,"msg_direction":3,"msg_id":"4348942579357122569","msg_kf_content":"{\"type\":\"AcceptRoom\",\"content\":\"用户已接入\",\"room_id\":\"4348684483414425612\",\"msg_id\":\"4348942569912549377\",\"is_anonymous_msg\":1,\"need_update_summary\":0,\"summary_content\":\"{\\\"id\\\":\\\"2\\\",\\\"room_id\\\":\\\"4348684483414425612\\\",\\\"scene\\\":6,\\\"account\\\":\\\"3641079964\\\",\\\"send_scene\\\":6,\\\"send_account\\\":\\\"user_acct_2044334303_6\\\",\\\"send_uin\\\":2044334303,\\\"lastest_msg_id\\\":\\\"4348942543756476432\\\",\\\"lastest_msg_content\\\":\\\"\\\",\\\"unread_msg_num\\\":\\\"1\\\",\\\"update_time\\\":\\\"1768808774\\\",\\\"kf_uin\\\":1525084715,\\\"extra_info\\\":\\\"{\\\\\\\"head_img\\\\\\\":\\\\\\\"http:\\\\\\\\\\\\\\/\\\\\\\\\\\\\\/wx.qlogo.cn\\\\\\\\\\\\\\/mmhead\\\\\\\\\\\\\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\\\\\\\\\\\\\/64\\\\\\\",\\\\\\\"nickname\\\\\\\":\\\\\\\"Vader\\\\\\\",\\\\\\\"list\\\\\\\":[],\\\\\\\"qa_info_list\\\\\\\":[]}\\\",\\\"lastest_msg_kf_content\\\":\\\"{\\\\\\\"content\\\\\\\":\\\\\\\"测试\\\\\\\"}\\\",\\\"lastest_user_msg_time\\\":\\\"1768808774\\\",\\\"msg_type\\\":1,\\\"send_open_account\\\":\\\"\\\",\\\"recv_open_account\\\":\\\"wxad4163db54e87b44\\\",\\\"send_openid\\\":\\\"o9cq802Ue5pCVRmzuzkFUcnoHjcM\\\",\\\"recv_openid\\\":\\\"o9cq801T0m1dIivQzMyUwBvW5Znk\\\",\\\"is_delete\\\":0,\\\"star_label\\\":0,\\\"star_label_update_time\\\":\\\"0\\\",\\\"unreplied_msg_time\\\":\\\"1768808777\\\",\\\"kf_reply_status\\\":0,\\\"sync_id\\\":\\\"45\\\",\\\"is_pin\\\":0,\\\"is_pin_update_time\\\":\\\"0\\\",\\\"ext_info\\\":{},\\\"complaint_info\\\":{\\\"complaint_expire_time\\\":0,\\\"complaint_id\\\":\\\"\\\",\\\"complaint_status\\\":0},\\\"user_uin\\\":2044334303,\\\"is_expired\\\":0}\"}","msg_type":5,"properties":"0","recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","reply_type":0,"room_id":"4348684483414425612","room_useruin":"0","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"session_id":"0","update_time":"1768808777"}],"total_num":1}
//if (content.Contains("用户已接入"))
@@ -1043,7 +1049,7 @@ namespace TemuKJD.WXForms.TalkForms
Invoke(new Action(() =>
{
if (r != null)
- r.Cells["colMessage"].Value = "正在刷新";
+ r.Cells["colMessage"].Value = "正在刷新店铺";
}));
WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
Invoke(new Action(() =>
diff --git a/Work/UserLogin.cs b/Work/UserLogin.cs
index 9797a27..b88c087 100644
--- a/Work/UserLogin.cs
+++ b/Work/UserLogin.cs
@@ -85,6 +85,7 @@ namespace Work
BaseClass.NickName = BaseRegex.GetStringJson(ref html, "nick_name");
BaseClass.UserName = BaseRegex.GetStringJson(ref html, "user_name");
BaseClass.SaLevel = BaseRegex.GetIntJson(ref html, "sa_level").ParseToInt();
+ BaseClass.UserAuthority = BaseRegex.GetStringJson(ref html, "authority");
BaseClass.Mobile = BaseRegex.GetStringJson(ref html, "mobile");
BaseClass.UserVersion = BaseRegex.GetStringJson(ref html, "version").ParseToInt();
BaseClass.UserVersionString = BaseRegex.GetStringJson(ref html, "version_s");