diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs
index 1f248d3..c5a48e4 100644
--- a/AllBase/BaseClass.cs
+++ b/AllBase/BaseClass.cs
@@ -27,7 +27,7 @@ namespace AllBase
///
/// 版本ID
///
- public static int VersionCount = 1092;
+ public static int VersionCount = 1099;
//public static int VersionCount = 613;
///
diff --git a/AllBase/BaseRegex.cs b/AllBase/BaseRegex.cs
index d0ff0cf..ed06a5b 100644
--- a/AllBase/BaseRegex.cs
+++ b/AllBase/BaseRegex.cs
@@ -674,6 +674,32 @@ namespace AllBase
return temp;
}
+ ///
+ /// 获取字符串值,多个参数,返回第一个匹配的
+ ///
+ ///
+ ///
+ ///
+ public static string GetStringJsonByRegs(ref string html, string defaultValue, params string[] regs)
+ {
+ foreach (var reg in regs)
+ {
+ string temp = GetMatchRegexString(html, @"[""]" + reg + @"[""][\s]*:[\s]*[""]([^""]+?)[""]");
+ if (temp != null)
+ return temp;
+ temp = GetMatchRegexString(html, @"[""]" + reg + @"[""][\s]*:[\s]*[""]([^""]*?)[""]");
+ if (temp != null)
+ return temp;
+ temp = GetMatchRegexString(html, @"[']" + reg + @"['][\s]*:[\s]*[']([^']*?)[']");
+ if (temp != null)
+ return temp;
+ temp = GetMatchRegexString(html, @"['""]" + reg + @"['""][\s]*:[\s]*([\d]+)");
+ if (temp != null)
+ return temp;
+ }
+ return defaultValue;
+ }
+
public static string GetOneJsonObjStrJson(ref string html, string reg)
{
return GetJsonObjStrJson(ref html, reg).FirstOrDefault();
diff --git a/AllBase/Model/Result/1688/_1688ClientProductInfo.cs b/AllBase/Model/Result/1688/_1688ClientProductInfo.cs
index 6f4447a..744a284 100644
--- a/AllBase/Model/Result/1688/_1688ClientProductInfo.cs
+++ b/AllBase/Model/Result/1688/_1688ClientProductInfo.cs
@@ -160,6 +160,7 @@ namespace AllBase.Model.Result._1688
public string specId { get; set; } // "9245e6730c7356a7eaaaeab64f57a6d7",
public string specAttrs { get; set; } // "浅灰+浅灰>L(建议100-125斤)", //sku规格
public string price { get; set; } // "21.00", //价格不含邮费
+ public string multiPrice { get; set; } // "18.50", //价格不含邮费,如果此值不为空,则price包含邮费 26.5.23
public int? saleCount { get; set; } // 0,
public string discountPrice { get; set; } // "21.00", //折扣价格不含邮费
public int? canBookCount { get; set; } // 9999, //库存
diff --git a/AllBase/Model/Result/WXResult/WxOrderInfoLite.cs b/AllBase/Model/Result/WXResult/WxOrderInfoLite.cs
index 2e0d9eb..cd87e94 100644
--- a/AllBase/Model/Result/WXResult/WxOrderInfoLite.cs
+++ b/AllBase/Model/Result/WXResult/WxOrderInfoLite.cs
@@ -13,11 +13,23 @@ namespace AllBase.Model.Result.WXResult
public flagInfoInfo flagInfo { get; set; }
public acceptInfoInfo acceptInfo { get; set; }
+ public expressDataInfo expressData { get; set; }
public notesInfoInfo notesInfo { get; set; }
public List orderProductInfo { get; set; }
public priceInfoInfo priceInfo { get; set; }
}
+ public class expressDataInfo
+ {
+ public int? type { get; set; } // 3, // 3在线寄件
+ public int? status { get; set; } // 0, // 待揽收
+ public string jumpPath { get; set; } // "/basicFunction/pages/address/allToAll/allToAllBillDetail/allToAllBillDetail?ewaybillOrderId=4527181286223364098",
+ public string jumpPage { get; set; } // "/shop/waybill/allToAllDetail?ewaybillOrderId=4527181286223364098",
+ public string title { get; set; } // "寄件码 8000",
+ public string content { get; set; } // "预计明天上门。"
+
+ }
+
public class priceInfoInfo
{
public string productPrice { get; set; } // "1314",
diff --git a/TEMUKJD/KJD.csproj b/TEMUKJD/KJD.csproj
index e8b544f..29986fe 100644
--- a/TEMUKJD/KJD.csproj
+++ b/TEMUKJD/KJD.csproj
@@ -294,6 +294,12 @@
WXActivity618Form.cs
+
+ Form
+
+
+ WXOrderListAddSkuPriceForm.cs
+
Form
@@ -1378,6 +1384,9 @@
WXActivity618Form.cs
+
+ WXOrderListAddSkuPriceForm.cs
+
WXOrderListForm.cs
diff --git a/TEMUKJD/MainForm.cs b/TEMUKJD/MainForm.cs
index 821801e..8eb3c06 100644
--- a/TEMUKJD/MainForm.cs
+++ b/TEMUKJD/MainForm.cs
@@ -1237,5 +1237,10 @@ namespace TemuKJD
SupportQrCodeForm qrForm = new SupportQrCodeForm();
qrForm.ShowDialog();
}
+
+ private void btnClose_Click(object sender, EventArgs e)
+ {
+ cefPanel.SendToBack();
+ }
}
}
diff --git a/TEMUKJD/MainForm.designer.cs b/TEMUKJD/MainForm.designer.cs
index 6808811..b118b9d 100644
--- a/TEMUKJD/MainForm.designer.cs
+++ b/TEMUKJD/MainForm.designer.cs
@@ -43,6 +43,7 @@ namespace TemuKJD
this.btnDyCollect = new DevComponents.DotNetBar.ButtonX();
this.btnTest = new DevComponents.DotNetBar.ButtonX();
this.cefPanel = new System.Windows.Forms.Panel();
+ this.btnClose = new DevComponents.DotNetBar.PanelEx();
this.navPanel = new DevComponents.DotNetBar.PanelEx();
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
this.pnlSA = new DevComponents.DotNetBar.PanelEx();
@@ -67,6 +68,7 @@ namespace TemuKJD
this.tableLayoutPanel1.SuspendLayout();
this.bodyPanelBg.SuspendLayout();
this.bodyPanel.SuspendLayout();
+ this.cefPanel.SuspendLayout();
this.navPanel.SuspendLayout();
this.flowLayoutPanel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLogo)).BeginInit();
@@ -222,11 +224,37 @@ namespace TemuKJD
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.cefPanel.BackColor = System.Drawing.Color.White;
+ this.cefPanel.Controls.Add(this.btnClose);
this.cefPanel.Location = new System.Drawing.Point(49, 77);
this.cefPanel.Name = "cefPanel";
this.cefPanel.Size = new System.Drawing.Size(1183, 527);
this.cefPanel.TabIndex = 131;
//
+ // btnClose
+ //
+ this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnClose.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnClose.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnClose.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnClose.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnClose.Location = new System.Drawing.Point(1153, 3);
+ this.btnClose.Name = "btnClose";
+ this.btnClose.Size = new System.Drawing.Size(23, 25);
+ this.btnClose.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClose.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClose.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnClose.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnClose.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnClose.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnClose.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnClose.Style.GradientAngle = 90;
+ this.btnClose.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnClose.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnClose.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnClose.TabIndex = 844;
+ this.btnClose.Text = "关";
+ this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
+ //
// navPanel
//
this.navPanel.CanvasColor = System.Drawing.SystemColors.Control;
@@ -743,6 +771,7 @@ namespace TemuKJD
this.tableLayoutPanel1.ResumeLayout(false);
this.bodyPanelBg.ResumeLayout(false);
this.bodyPanel.ResumeLayout(false);
+ this.cefPanel.ResumeLayout(false);
this.navPanel.ResumeLayout(false);
this.navPanel.PerformLayout();
this.flowLayoutPanel1.ResumeLayout(false);
@@ -784,6 +813,7 @@ namespace TemuKJD
public DevComponents.DotNetBar.PanelEx pnlJit;
public System.Windows.Forms.Label lblVersionName;
public System.Windows.Forms.Panel cefPanel;
+ private DevComponents.DotNetBar.PanelEx btnClose;
}
}
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs
index 85bbe4a..3823c19 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs
@@ -33,6 +33,7 @@ namespace TemuKJD.WXForms.AdminForms
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer5 = new System.Windows.Forms.SplitContainer();
+ this.chkHot = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkShopOptimize = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkChanceProdCollect = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkShopPoints = new TemuKJD.UserComponent.UcCheckBox(this.components);
@@ -87,7 +88,7 @@ namespace TemuKJD.WXForms.AdminForms
this.editColumn = new System.Windows.Forms.DataGridViewLinkColumn();
this.deleteColumn = new System.Windows.Forms.DataGridViewLinkColumn();
this.btnExportShopErp = new DevComponents.DotNetBar.PanelEx();
- this.chkHot = new TemuKJD.UserComponent.UcCheckBox(this.components);
+ this.chkEcWaybill = new TemuKJD.UserComponent.UcCheckBox(this.components);
((System.ComponentModel.ISupportInitialize)(this.splitContainer5)).BeginInit();
this.splitContainer5.Panel1.SuspendLayout();
this.splitContainer5.Panel2.SuspendLayout();
@@ -110,6 +111,7 @@ namespace TemuKJD.WXForms.AdminForms
// splitContainer5.Panel1
//
this.splitContainer5.Panel1.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.splitContainer5.Panel1.Controls.Add(this.chkEcWaybill);
this.splitContainer5.Panel1.Controls.Add(this.chkHot);
this.splitContainer5.Panel1.Controls.Add(this.chkShopOptimize);
this.splitContainer5.Panel1.Controls.Add(this.chkChanceProdCollect);
@@ -157,9 +159,18 @@ namespace TemuKJD.WXForms.AdminForms
this.splitContainer5.SplitterWidth = 1;
this.splitContainer5.TabIndex = 3;
//
+ // chkHot
+ //
+ this.chkHot.Location = new System.Drawing.Point(192, 394);
+ this.chkHot.Name = "chkHot";
+ this.chkHot.Size = new System.Drawing.Size(68, 21);
+ this.chkHot.TabIndex = 814;
+ this.chkHot.Text = "爆款数据";
+ this.chkHot.UseVisualStyleBackColor = true;
+ //
// chkShopOptimize
//
- this.chkShopOptimize.Location = new System.Drawing.Point(112, 408);
+ this.chkShopOptimize.Location = new System.Drawing.Point(112, 394);
this.chkShopOptimize.Name = "chkShopOptimize";
this.chkShopOptimize.Size = new System.Drawing.Size(68, 21);
this.chkShopOptimize.TabIndex = 813;
@@ -168,7 +179,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// chkChanceProdCollect
//
- this.chkChanceProdCollect.Location = new System.Drawing.Point(112, 429);
+ this.chkChanceProdCollect.Location = new System.Drawing.Point(192, 415);
this.chkChanceProdCollect.Name = "chkChanceProdCollect";
this.chkChanceProdCollect.Size = new System.Drawing.Size(96, 21);
this.chkChanceProdCollect.TabIndex = 812;
@@ -187,7 +198,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// chkWXShowProdGetFromType
//
- this.chkWXShowProdGetFromType.Location = new System.Drawing.Point(192, 387);
+ this.chkWXShowProdGetFromType.Location = new System.Drawing.Point(192, 373);
this.chkWXShowProdGetFromType.Name = "chkWXShowProdGetFromType";
this.chkWXShowProdGetFromType.Size = new System.Drawing.Size(68, 21);
this.chkWXShowProdGetFromType.TabIndex = 810;
@@ -198,7 +209,7 @@ namespace TemuKJD.WXForms.AdminForms
//
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, 387);
+ this.label7.Location = new System.Drawing.Point(55, 373);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(51, 20);
this.label7.TabIndex = 809;
@@ -206,7 +217,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// chkWXComplateProd
//
- this.chkWXComplateProd.Location = new System.Drawing.Point(112, 387);
+ this.chkWXComplateProd.Location = new System.Drawing.Point(112, 373);
this.chkWXComplateProd.Name = "chkWXComplateProd";
this.chkWXComplateProd.Size = new System.Drawing.Size(68, 21);
this.chkWXComplateProd.TabIndex = 808;
@@ -220,7 +231,7 @@ namespace TemuKJD.WXForms.AdminForms
"普通用户",
"一级超管",
"二级超管"});
- this.cmbSaLevel.Location = new System.Drawing.Point(112, 348);
+ this.cmbSaLevel.Location = new System.Drawing.Point(112, 336);
this.cmbSaLevel.Name = "cmbSaLevel";
this.cmbSaLevel.Size = new System.Drawing.Size(148, 25);
this.cmbSaLevel.TabIndex = 48;
@@ -230,7 +241,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, 350);
+ this.label6.Location = new System.Drawing.Point(27, 338);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(79, 20);
this.label6.TabIndex = 47;
@@ -294,7 +305,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, 312);
+ this.label3.Location = new System.Drawing.Point(55, 302);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(51, 20);
this.label3.TabIndex = 40;
@@ -302,7 +313,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtCompany
//
- this.txtCompany.Location = new System.Drawing.Point(112, 311);
+ this.txtCompany.Location = new System.Drawing.Point(112, 301);
this.txtCompany.Name = "txtCompany";
this.txtCompany.Size = new System.Drawing.Size(148, 23);
this.txtCompany.TabIndex = 39;
@@ -379,7 +390,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label30.AutoSize = true;
this.label30.ForeColor = System.Drawing.SystemColors.ButtonShadow;
- this.label30.Location = new System.Drawing.Point(282, 164);
+ this.label30.Location = new System.Drawing.Point(282, 162);
this.label30.Name = "label30";
this.label30.Size = new System.Drawing.Size(56, 17);
this.label30.TabIndex = 33;
@@ -389,7 +400,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, 238);
+ this.label31.Location = new System.Drawing.Point(266, 232);
this.label31.Name = "label31";
this.label31.Size = new System.Drawing.Size(13, 17);
this.label31.TabIndex = 32;
@@ -397,7 +408,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtRePass
//
- this.txtRePass.Location = new System.Drawing.Point(112, 235);
+ this.txtRePass.Location = new System.Drawing.Point(112, 229);
this.txtRePass.Name = "txtRePass";
this.txtRePass.PasswordChar = '*';
this.txtRePass.Size = new System.Drawing.Size(148, 23);
@@ -407,7 +418,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, 236);
+ this.label32.Location = new System.Drawing.Point(27, 230);
this.label32.Name = "label32";
this.label32.Size = new System.Drawing.Size(79, 20);
this.label32.TabIndex = 31;
@@ -417,7 +428,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, 276);
+ this.label33.Location = new System.Drawing.Point(266, 268);
this.label33.Name = "label33";
this.label33.Size = new System.Drawing.Size(13, 17);
this.label33.TabIndex = 30;
@@ -427,7 +438,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, 201);
+ this.label34.Location = new System.Drawing.Point(266, 197);
this.label34.Name = "label34";
this.label34.Size = new System.Drawing.Size(13, 17);
this.label34.TabIndex = 29;
@@ -437,7 +448,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, 164);
+ this.label35.Location = new System.Drawing.Point(266, 162);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(13, 17);
this.label35.TabIndex = 28;
@@ -462,7 +473,7 @@ namespace TemuKJD.WXForms.AdminForms
"上货",
"数据",
"登录"});
- this.cmbGroup.Location = new System.Drawing.Point(112, 272);
+ this.cmbGroup.Location = new System.Drawing.Point(112, 264);
this.cmbGroup.Name = "cmbGroup";
this.cmbGroup.Size = new System.Drawing.Size(148, 25);
this.cmbGroup.TabIndex = 26;
@@ -472,7 +483,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, 274);
+ this.label37.Location = new System.Drawing.Point(55, 266);
this.label37.Name = "label37";
this.label37.Size = new System.Drawing.Size(51, 20);
this.label37.TabIndex = 25;
@@ -480,7 +491,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtPassword
//
- this.txtPassword.Location = new System.Drawing.Point(112, 198);
+ this.txtPassword.Location = new System.Drawing.Point(112, 194);
this.txtPassword.Name = "txtPassword";
this.txtPassword.PasswordChar = '*';
this.txtPassword.Size = new System.Drawing.Size(148, 23);
@@ -490,7 +501,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, 199);
+ this.label38.Location = new System.Drawing.Point(55, 195);
this.label38.Name = "label38";
this.label38.Size = new System.Drawing.Size(51, 20);
this.label38.TabIndex = 22;
@@ -498,7 +509,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtMobile
//
- this.txtMobile.Location = new System.Drawing.Point(112, 161);
+ this.txtMobile.Location = new System.Drawing.Point(112, 159);
this.txtMobile.Name = "txtMobile";
this.txtMobile.Size = new System.Drawing.Size(148, 23);
this.txtMobile.TabIndex = 21;
@@ -507,7 +518,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, 162);
+ this.label39.Location = new System.Drawing.Point(41, 160);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(65, 20);
this.label39.TabIndex = 20;
@@ -724,14 +735,14 @@ namespace TemuKJD.WXForms.AdminForms
this.btnExportShopErp.Visible = false;
this.btnExportShopErp.Click += new System.EventHandler(this.btnExportShopErp_Click);
//
- // chkHot
+ // chkEcWaybill
//
- this.chkHot.Location = new System.Drawing.Point(192, 408);
- this.chkHot.Name = "chkHot";
- this.chkHot.Size = new System.Drawing.Size(68, 21);
- this.chkHot.TabIndex = 814;
- this.chkHot.Text = "爆款数据";
- this.chkHot.UseVisualStyleBackColor = true;
+ this.chkEcWaybill.Location = new System.Drawing.Point(112, 415);
+ this.chkEcWaybill.Name = "chkEcWaybill";
+ this.chkEcWaybill.Size = new System.Drawing.Size(68, 21);
+ this.chkEcWaybill.TabIndex = 815;
+ this.chkEcWaybill.Text = "在线寄件";
+ this.chkEcWaybill.UseVisualStyleBackColor = true;
//
// WXAdminAccountForm
//
@@ -816,5 +827,6 @@ namespace TemuKJD.WXForms.AdminForms
private UserComponent.UcCheckBox chkChanceProdCollect;
private UserComponent.UcCheckBox chkShopOptimize;
private UserComponent.UcCheckBox chkHot;
+ private UserComponent.UcCheckBox chkEcWaybill;
}
}
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs
index 0e433b4..f0a9715 100644
--- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs
+++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs
@@ -87,6 +87,8 @@ namespace TemuKJD.WXForms.AdminForms
authority += "爆款数据,";
if (chkShopOptimize.Checked)
authority += "评分考核,";
+ if (chkEcWaybill.Checked)
+ authority += chkEcWaybill.Text + ",";
if (chkShopPoints.Checked)
authority += "积分用户,";
data.Append("&authority=" + authority.Trim(','));
@@ -199,6 +201,7 @@ namespace TemuKJD.WXForms.AdminForms
chkWXShowProdGetFromType.Checked = false;
chkChanceProdCollect.Checked = false;
chkShopOptimize.Checked = false;
+ chkEcWaybill.Checked = false;
chkHot.Checked = false;
chkShopPoints.Checked = false;
}
@@ -236,6 +239,7 @@ namespace TemuKJD.WXForms.AdminForms
chkShopPoints.Checked = authority.Contains(chkShopPoints.Text);
chkChanceProdCollect.Checked = authority.Contains(chkChanceProdCollect.Text);
chkShopOptimize.Checked = authority.Contains(chkShopOptimize.Text);
+ chkEcWaybill.Checked = authority.Contains(chkEcWaybill.Text);
chkHot.Checked = authority.Contains(chkHot.Text);
chkWXShowProdGetFromType.Checked = authority.Contains(chkWXShowProdGetFromType.Text);
}
diff --git a/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.Designer.cs b/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.Designer.cs
index 4ef89da..78db976 100644
--- a/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.Designer.cs
+++ b/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.Designer.cs
@@ -32,13 +32,13 @@ namespace TemuKJD.WXForms.ProductForms
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 dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.ucGroupBoxEx3 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
this.label1 = new System.Windows.Forms.Label();
@@ -111,6 +111,9 @@ namespace TemuKJD.WXForms.ProductForms
this.statusBar = new TemuKJD.UserControls.StatusBarUserControl();
this.btnClear = new DevComponents.DotNetBar.PanelEx();
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
+ this.chkSkipPriceEnd = new TemuKJD.UserComponent.UcCheckBox(this.components);
+ this.txtSkipPriceEnd = new System.Windows.Forms.TextBox();
+ this.label2 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
@@ -166,6 +169,9 @@ namespace TemuKJD.WXForms.ProductForms
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.label2);
+ this.ucGroupBoxEx3.Controls.Add(this.txtSkipPriceEnd);
+ this.ucGroupBoxEx3.Controls.Add(this.chkSkipPriceEnd);
this.ucGroupBoxEx3.Controls.Add(this.label1);
this.ucGroupBoxEx3.Controls.Add(this.flowLayoutPanel1);
this.ucGroupBoxEx3.Controls.Add(this.cmbType);
@@ -320,7 +326,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnSetActivity.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnSetActivity.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnSetActivity.TabIndex = 517;
- this.btnSetActivity.Text = "批量设置";
+ this.btnSetActivity.Text = "批量报名";
this.btnSetActivity.Click += new System.EventHandler(this.btnSetActivity_Click);
//
// ucGroupBoxEx4
@@ -783,19 +789,19 @@ namespace TemuKJD.WXForms.ProductForms
//
this.dgvShop.AllowUserToAddRows = false;
this.dgvShop.AllowUserToDeleteRows = false;
- dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke;
- this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+ dataGridViewCellStyle15.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle15;
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;
+ dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+ dataGridViewCellStyle16.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle16.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ dataGridViewCellStyle16.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle16.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle16.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle16;
this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colSelect,
@@ -957,19 +963,19 @@ namespace TemuKJD.WXForms.ProductForms
//
this.dgvSelectProduct.AllowUserToAddRows = false;
this.dgvSelectProduct.AllowUserToDeleteRows = false;
- dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke;
- this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3;
+ dataGridViewCellStyle17.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle17;
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;
+ dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+ dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle18.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle18.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle18;
this.dgvSelectProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvSelectProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colCheck,
@@ -1017,8 +1023,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colSupplierName
//
- dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5;
+ dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle19;
this.colSupplierName.HeaderText = "店铺名称";
this.colSupplierName.Name = "colSupplierName";
this.colSupplierName.ReadOnly = true;
@@ -1075,8 +1081,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colProductName
//
- dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colProductName.DefaultCellStyle = dataGridViewCellStyle6;
+ dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colProductName.DefaultCellStyle = dataGridViewCellStyle20;
this.colProductName.HeaderText = "商品名称";
this.colProductName.Name = "colProductName";
this.colProductName.ReadOnly = true;
@@ -1103,8 +1109,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colStock
//
- dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colStock.DefaultCellStyle = dataGridViewCellStyle7;
+ dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colStock.DefaultCellStyle = dataGridViewCellStyle21;
this.colStock.HeaderText = "库存";
this.colStock.Name = "colStock";
this.colStock.ReadOnly = true;
@@ -1197,6 +1203,37 @@ namespace TemuKJD.WXForms.ProductForms
this.panelEx1.Text = "停止当前操作";
this.panelEx1.Visible = false;
//
+ // chkSkipPriceEnd
+ //
+ this.chkSkipPriceEnd.AutoSize = true;
+ this.chkSkipPriceEnd.Location = new System.Drawing.Point(25, 73);
+ this.chkSkipPriceEnd.Name = "chkSkipPriceEnd";
+ this.chkSkipPriceEnd.Size = new System.Drawing.Size(111, 21);
+ this.chkSkipPriceEnd.TabIndex = 853;
+ this.chkSkipPriceEnd.Text = "跳过价格尾数为";
+ this.chkSkipPriceEnd.UseVisualStyleBackColor = true;
+ //
+ // txtSkipPriceEnd
+ //
+ this.txtSkipPriceEnd.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.txtSkipPriceEnd.Font = new System.Drawing.Font("微软雅黑", 10F);
+ this.txtSkipPriceEnd.Location = new System.Drawing.Point(128, 71);
+ this.txtSkipPriceEnd.Margin = new System.Windows.Forms.Padding(0);
+ this.txtSkipPriceEnd.Name = "txtSkipPriceEnd";
+ this.txtSkipPriceEnd.Size = new System.Drawing.Size(47, 25);
+ this.txtSkipPriceEnd.TabIndex = 854;
+ this.txtSkipPriceEnd.Text = ".66";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(177, 75);
+ this.label2.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(32, 17);
+ this.label2.TabIndex = 855;
+ this.label2.Text = "商品";
+ //
// WXActivity618Form
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
@@ -1315,5 +1352,8 @@ namespace TemuKJD.WXForms.ProductForms
private System.Windows.Forms.DataGridViewTextBoxColumn colValidPrice;
private System.Windows.Forms.DataGridViewTextBoxColumn colStock;
private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult;
+ private System.Windows.Forms.TextBox txtSkipPriceEnd;
+ private UserComponent.UcCheckBox chkSkipPriceEnd;
+ private System.Windows.Forms.Label label2;
}
}
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs b/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs
index a8c082a..535daba 100644
--- a/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs
+++ b/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs
@@ -741,13 +741,13 @@ namespace TemuKJD.WXForms.ProductForms
{
if (cancellationTokenSource.IsCancellationRequested)
{
- this.statusBar.lblTaskStatus.Text = "设置活动中断";
- BaseMsgForm.ShowInfo("设置活动中断");
+ this.statusBar.lblTaskStatus.Text = "报名活动中断";
+ BaseMsgForm.ShowInfo("报名活动中断");
}
else
{
- this.statusBar.lblTaskStatus.Text = "设置活动完毕";
- BaseMsgForm.ShowInfo("设置活动完毕");
+ this.statusBar.lblTaskStatus.Text = "报名活动完毕";
+ BaseMsgForm.ShowInfo("报名活动完毕");
}
this.pbLoading.Visible = false;
@@ -760,7 +760,7 @@ namespace TemuKJD.WXForms.ProductForms
Invoke(new Action(() =>
{
this.pbLoading.Visible = true;
- this.statusBar.lblTaskStatus.Text = "正在设置活动" + "...".Substring(0, DateTime.Now.Second % 4);
+ this.statusBar.lblTaskStatus.Text = "正在报名活动" + "...".Substring(0, DateTime.Now.Second % 4);
this.statusBar.pgbTaskProgress.Maximum = rowLst.Count;
this.statusBar.UpdateProgressBar(0);
}));
@@ -781,7 +781,7 @@ namespace TemuKJD.WXForms.ProductForms
Invoke(new Action(() =>
{
- this.statusBar.lblTaskStatus.Text = "正在设置活动" + "...".Substring(0, DateTime.Now.Second % 4);
+ this.statusBar.lblTaskStatus.Text = "正在报名活动" + "...".Substring(0, DateTime.Now.Second % 4);
this.statusBar.UpdateProgressBar(this.statusBar.pgbTaskProgress.Value + 1);
r.Cells["colOpResult"].Value = "";
}));
@@ -828,6 +828,14 @@ namespace TemuKJD.WXForms.ProductForms
hasProdForActivity = true;
Invoke(new Action(() => { row.Cells["colOpResult"].Value = "正在报名"; }));
}
+
+ if (chkSkipPriceEnd.Checked && txtSkipPriceEnd.Text.Trim().Length > 0 && skus.Any(s => (s.salePrice.ParseToInt() * 0.01m).ParseToString().EndsWith(txtSkipPriceEnd.Text.Trim())))
+ {
+ hasProdForActivity = false;
+ row.Cells["colOpResult"].Value = "价格尾数命中跳过";
+ break;
+ }
+
skus = skus.Where(s => s.isAdded != true).ToList();
foreach (var sku in skus)
{
diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.Designer.cs
new file mode 100644
index 0000000..57ad2d7
--- /dev/null
+++ b/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.Designer.cs
@@ -0,0 +1,301 @@
+
+namespace TemuKJD.WXForms.ProductForms
+{
+ partial class WXOrderListAddSkuPriceForm
+ {
+ ///
+ /// 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()
+ {
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WXOrderListAddSkuPriceForm));
+ this.panel1 = new System.Windows.Forms.Panel();
+ this.txtOrderPrice = new System.Windows.Forms.TextBox();
+ this.txtCurrentPrice = new System.Windows.Forms.TextBox();
+ this.label4 = new System.Windows.Forms.Label();
+ this.lblSkuId = new System.Windows.Forms.Label();
+ this.lblSpuId = new System.Windows.Forms.Label();
+ this.btnCancel = new DevComponents.DotNetBar.PanelEx();
+ this.商品名 = new System.Windows.Forms.Label();
+ this.label3 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.label1 = new System.Windows.Forms.Label();
+ this.btnAddPrice = new DevComponents.DotNetBar.PanelEx();
+ this.numAddPrice = new System.Windows.Forms.NumericUpDown();
+ this.txtSkuName = new System.Windows.Forms.TextBox();
+ this.txtGoodsName = new System.Windows.Forms.TextBox();
+ this.panel1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.numAddPrice)).BeginInit();
+ this.SuspendLayout();
+ //
+ // panel1
+ //
+ this.panel1.BackColor = System.Drawing.Color.White;
+ this.panel1.Controls.Add(this.txtOrderPrice);
+ this.panel1.Controls.Add(this.txtCurrentPrice);
+ this.panel1.Controls.Add(this.label4);
+ this.panel1.Controls.Add(this.lblSkuId);
+ this.panel1.Controls.Add(this.lblSpuId);
+ this.panel1.Controls.Add(this.btnCancel);
+ this.panel1.Controls.Add(this.商品名);
+ this.panel1.Controls.Add(this.label3);
+ this.panel1.Controls.Add(this.label2);
+ this.panel1.Controls.Add(this.label1);
+ this.panel1.Controls.Add(this.btnAddPrice);
+ this.panel1.Controls.Add(this.numAddPrice);
+ this.panel1.Controls.Add(this.txtSkuName);
+ this.panel1.Controls.Add(this.txtGoodsName);
+ this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.panel1.Location = new System.Drawing.Point(1, 33);
+ this.panel1.Name = "panel1";
+ this.panel1.Size = new System.Drawing.Size(562, 260);
+ this.panel1.TabIndex = 1;
+ //
+ // txtOrderPrice
+ //
+ this.txtOrderPrice.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtOrderPrice.BackColor = System.Drawing.SystemColors.Window;
+ this.txtOrderPrice.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.txtOrderPrice.Location = new System.Drawing.Point(96, 172);
+ this.txtOrderPrice.Name = "txtOrderPrice";
+ this.txtOrderPrice.ReadOnly = true;
+ this.txtOrderPrice.Size = new System.Drawing.Size(409, 16);
+ this.txtOrderPrice.TabIndex = 821;
+ this.txtOrderPrice.Text = "orderPrice";
+ //
+ // txtCurrentPrice
+ //
+ this.txtCurrentPrice.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtCurrentPrice.BackColor = System.Drawing.SystemColors.Window;
+ this.txtCurrentPrice.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.txtCurrentPrice.Location = new System.Drawing.Point(96, 138);
+ this.txtCurrentPrice.Name = "txtCurrentPrice";
+ this.txtCurrentPrice.ReadOnly = true;
+ this.txtCurrentPrice.Size = new System.Drawing.Size(409, 16);
+ this.txtCurrentPrice.TabIndex = 820;
+ this.txtCurrentPrice.Text = "currentPrice";
+ //
+ // label4
+ //
+ this.label4.AutoSize = true;
+ this.label4.Location = new System.Drawing.Point(46, 172);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(44, 17);
+ this.label4.TabIndex = 813;
+ this.label4.Text = "订单价";
+ //
+ // lblSkuId
+ //
+ this.lblSkuId.AutoSize = true;
+ this.lblSkuId.Location = new System.Drawing.Point(46, 107);
+ this.lblSkuId.Name = "lblSkuId";
+ this.lblSkuId.Size = new System.Drawing.Size(40, 17);
+ this.lblSkuId.TabIndex = 811;
+ this.lblSkuId.Text = "skuId";
+ this.lblSkuId.Visible = false;
+ //
+ // lblSpuId
+ //
+ this.lblSpuId.AutoSize = true;
+ this.lblSpuId.Location = new System.Drawing.Point(46, 54);
+ this.lblSpuId.Name = "lblSpuId";
+ this.lblSpuId.Size = new System.Drawing.Size(41, 17);
+ this.lblSpuId.TabIndex = 810;
+ this.lblSpuId.Text = "spuId";
+ this.lblSpuId.Visible = false;
+ //
+ // btnCancel
+ //
+ this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnCancel.CanvasColor = System.Drawing.SystemColors.Control;
+ this.btnCancel.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnCancel.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnCancel.Location = new System.Drawing.Point(440, 203);
+ this.btnCancel.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.btnCancel.Name = "btnCancel";
+ this.btnCancel.Size = new System.Drawing.Size(65, 23);
+ this.btnCancel.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnCancel.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnCancel.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnCancel.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.btnCancel.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnCancel.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.btnCancel.Style.GradientAngle = 90;
+ this.btnCancel.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnCancel.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnCancel.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnCancel.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnCancel.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.btnCancel.TabIndex = 5;
+ this.btnCancel.TabStop = true;
+ this.btnCancel.Text = "取消";
+ this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+ //
+ // 商品名
+ //
+ this.商品名.AutoSize = true;
+ this.商品名.Location = new System.Drawing.Point(46, 29);
+ this.商品名.Name = "商品名";
+ this.商品名.Size = new System.Drawing.Size(44, 17);
+ this.商品名.TabIndex = 440;
+ this.商品名.Text = "规格名";
+ //
+ // label3
+ //
+ this.label3.AutoSize = true;
+ this.label3.Location = new System.Drawing.Point(46, 82);
+ this.label3.Name = "label3";
+ this.label3.Size = new System.Drawing.Size(44, 17);
+ this.label3.TabIndex = 439;
+ this.label3.Text = "规格名";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(46, 138);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(44, 17);
+ this.label2.TabIndex = 438;
+ this.label2.Text = "当前价";
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(58, 206);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(32, 17);
+ this.label1.TabIndex = 436;
+ this.label1.Text = "加价";
+ //
+ // btnAddPrice
+ //
+ this.btnAddPrice.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.btnAddPrice.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnAddPrice.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnAddPrice.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnAddPrice.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnAddPrice.Location = new System.Drawing.Point(368, 203);
+ this.btnAddPrice.Name = "btnAddPrice";
+ this.btnAddPrice.Size = new System.Drawing.Size(65, 23);
+ this.btnAddPrice.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnAddPrice.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnAddPrice.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnAddPrice.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnAddPrice.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnAddPrice.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnAddPrice.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnAddPrice.Style.GradientAngle = 90;
+ this.btnAddPrice.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnAddPrice.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnAddPrice.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnAddPrice.TabIndex = 4;
+ this.btnAddPrice.TabStop = true;
+ this.btnAddPrice.Text = "改价";
+ this.btnAddPrice.Click += new System.EventHandler(this.btnAddPrice_Click);
+ //
+ // numAddPrice
+ //
+ this.numAddPrice.DecimalPlaces = 2;
+ this.numAddPrice.Increment = new decimal(new int[] {
+ 1,
+ 0,
+ 0,
+ 65536});
+ this.numAddPrice.Location = new System.Drawing.Point(96, 203);
+ this.numAddPrice.Maximum = new decimal(new int[] {
+ 100000,
+ 0,
+ 0,
+ 0});
+ this.numAddPrice.Name = "numAddPrice";
+ this.numAddPrice.Size = new System.Drawing.Size(128, 23);
+ this.numAddPrice.TabIndex = 0;
+ //
+ // txtSkuName
+ //
+ this.txtSkuName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtSkuName.BackColor = System.Drawing.SystemColors.Window;
+ this.txtSkuName.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.txtSkuName.Location = new System.Drawing.Point(96, 82);
+ this.txtSkuName.Multiline = true;
+ this.txtSkuName.Name = "txtSkuName";
+ this.txtSkuName.ReadOnly = true;
+ this.txtSkuName.Size = new System.Drawing.Size(409, 42);
+ this.txtSkuName.TabIndex = 2;
+ this.txtSkuName.Text = "skuName";
+ //
+ // txtGoodsName
+ //
+ this.txtGoodsName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.txtGoodsName.BackColor = System.Drawing.SystemColors.Window;
+ this.txtGoodsName.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.txtGoodsName.Location = new System.Drawing.Point(96, 29);
+ this.txtGoodsName.Multiline = true;
+ this.txtGoodsName.Name = "txtGoodsName";
+ this.txtGoodsName.ReadOnly = true;
+ this.txtGoodsName.Size = new System.Drawing.Size(409, 42);
+ this.txtGoodsName.TabIndex = 1;
+ this.txtGoodsName.Text = "goodsName";
+ //
+ // WXOrderListAddSkuPriceForm
+ //
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
+ this.ClientSize = new System.Drawing.Size(564, 294);
+ this.Controls.Add(this.panel1);
+ 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.Name = "WXOrderListAddSkuPriceForm";
+ this.Text = "修改sku价格";
+ this.TitleText = "修改sku价格";
+ this.Controls.SetChildIndex(this.panel1, 0);
+ this.panel1.ResumeLayout(false);
+ this.panel1.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.numAddPrice)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Panel panel1;
+ public System.Windows.Forms.TextBox txtSkuName;
+ public System.Windows.Forms.TextBox txtGoodsName;
+ private System.Windows.Forms.Label 商品名;
+ private System.Windows.Forms.Label label3;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.Label label1;
+ private DevComponents.DotNetBar.PanelEx btnAddPrice;
+ public System.Windows.Forms.NumericUpDown numAddPrice;
+ private DevComponents.DotNetBar.PanelEx btnCancel;
+ public System.Windows.Forms.Label lblSkuId;
+ public System.Windows.Forms.Label lblSpuId;
+ private System.Windows.Forms.Label label4;
+ public System.Windows.Forms.TextBox txtCurrentPrice;
+ public System.Windows.Forms.TextBox txtOrderPrice;
+ }
+}
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.cs b/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.cs
new file mode 100644
index 0000000..5b92ede
--- /dev/null
+++ b/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.cs
@@ -0,0 +1,93 @@
+using AllBase;
+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.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using TemuKJD.BaseForms;
+
+namespace TemuKJD.WXForms.ProductForms
+{
+ public partial class WXOrderListAddSkuPriceForm : BaseForms.BaseGeneralForm
+ {
+ public ShopLoginInfo shop;
+
+ public WXOrderListAddSkuPriceForm(ShopLoginInfo _shop)
+ {
+ InitializeComponent();
+ shop = _shop;
+ this.TitleText = "店铺 " + shop.ShopAccount + " 修改sku价格";
+ }
+
+ private void btnCancel_Click(object sender, EventArgs e)
+ {
+ this.Close();
+ }
+
+ public JObject prodObj = new JObject();
+ public bool EditSuccess { get; set; } = false;
+ private void btnAddPrice_Click(object sender, EventArgs e)
+ {
+ EditSuccess = false;
+
+ try
+ {
+ var spuId = lblSpuId.Text;
+ int onSaleStatusCode = -1;
+ int pageSize = 50;
+ var getProdOnSaleRst = WXClearNoVisit.searchProduct(shop, 1, pageSize, spuId, onSaleStatusCode);
+ if (!getProdOnSaleRst.Contains("\"success\":true"))
+ {
+ var error = BaseRegex.GetStringJsonByRegs(ref getProdOnSaleRst, getProdOnSaleRst, "err_msg", "error_msg", "errMsg", "errorMsg", "msg");
+ BaseMsgForm.ShowInfo("改价失败" + error);
+ }
+ prodObj = JsonHelper.JObjectParse(getProdOnSaleRst)["productList"].FirstOrDefault() as JObject;
+ if (prodObj != null)
+ {
+ var str = JsonHelper.SerializeObject(prodObj);
+ }
+
+ //var rst = WXOrderList.EditPrice(shop, lblSpuId.Text, lblSkuId.Text, (numAddPrice.Value * 100).ParseToInt());
+
+ JObject changePriceObj = new JObject();
+ JArray skuArr = new JArray();
+ foreach (var sku in prodObj["skuList"])
+ {
+ JObject obj = new JObject();
+ obj["spuId"] = spuId;
+ obj["skuId"] = sku["skuId"];
+ obj["salePrice"] = sku["price"].ParseToInt() + (numAddPrice.Value * 100).ParseToInt();
+ skuArr.Add(obj);
+ }
+ changePriceObj["skuList"] = skuArr;
+ changePriceObj["uploadSource"] = 6;
+
+ // string body = @"{""skuList"":[{""spuId"":" + spuId + @",""skuId"":""" + skuId + @""",""salePrice"":" + newPrice + @"}],""uploadSource"":6}";
+ var rst = WXOrderList.EditPrice(shop, changePriceObj);
+
+ if (rst.Contains("\"code\":0"))
+ {
+ EditSuccess = true;
+ BaseMsgForm.ShowInfo("改价成功");
+ this.Close();
+ }
+ else
+ {
+ var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "err_msg", "error_msg", "errMsg", "errorMsg", "msg");
+ BaseMsgForm.ShowError("改价失败:" + error);
+ }
+ }
+ catch
+ {
+
+ }
+ }
+ }
+}
diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.resx b/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.resx
new file mode 100644
index 0000000..2bdeb30
--- /dev/null
+++ b/TEMUKJD/WXForms/ProductForms/WXOrderListAddSkuPriceForm.resx
@@ -0,0 +1,298 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+
+
+ AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
+ AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ
+ AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA
+ OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT
+ AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj///////
+ ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP//
+ //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ
+ mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4
+ mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ
+ mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ
+ mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ
+ mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ
+ mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ
+ mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY
+ //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ
+ mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf
+ //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/
+ //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv///
+ //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP//
+ if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ
+ mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz
+ MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///
+ iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ
+ mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4
+ kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP//
+ /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ
+ mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ
+ mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ
+ mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ
+ mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ
+ //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ
+ mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ
+ mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ
+ mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT
+ mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj///////
+ ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn///
+ //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ
+ mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ
+ mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ
+ mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ
+ mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj///////////
+ ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY//////
+ ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP
+ //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4
+ /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ
+ mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ
+ mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7
+ mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4
+ eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb////
+ ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ
+ mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj/////
+ /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/
+ ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ
+ mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ
+ mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ
+ mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ
+ mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ
+ mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA
+ AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA
+ AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ
+ mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz
+ MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA
+ AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w
+ AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA
+ Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA
+ AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA
+ AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA
+ AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+ AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+ AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
+ AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
+ AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+ AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+ AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
+ AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
+ AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+ AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+ AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
+ AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
+ AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+ AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+ AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
+ AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
+ AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+ AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+ AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
+ AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
+ AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
+ AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
+ AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
+ AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA
+ AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA
+ AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA
+ AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA
+ AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD/////
+ wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w==
+
+
+
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderListForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXOrderListForm.Designer.cs
index bf4b6e0..625caef 100644
--- a/TEMUKJD/WXForms/ProductForms/WXOrderListForm.Designer.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXOrderListForm.Designer.cs
@@ -53,8 +53,12 @@ namespace TemuKJD.WXForms.ProductForms
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.ucGroupBoxEx3 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.btnStopBatchOnlieWaybill = new DevComponents.DotNetBar.PanelEx();
+ this.btnBatchOnlieWaybill = new DevComponents.DotNetBar.PanelEx();
+ this.btnRefreshPrintId = new DevComponents.DotNetBar.PanelEx();
this.dtpFilterEndTime = new System.Windows.Forms.DateTimePicker();
this.dtpFilterBeginTime = new System.Windows.Forms.DateTimePicker();
this.txtFilterTitleNotContainWords = new System.Windows.Forms.TextBox();
@@ -133,6 +137,8 @@ namespace TemuKJD.WXForms.ProductForms
this.label12 = new System.Windows.Forms.Label();
this.label6 = new System.Windows.Forms.Label();
this.pnlEditReceiveInfo = new System.Windows.Forms.Panel();
+ this.label20 = new System.Windows.Forms.Label();
+ this.txtEditReceiveInfoOldAddress = new System.Windows.Forms.TextBox();
this.lblEditReceiveInfoShopId = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.txtEditReceiveInfoAddress = new System.Windows.Forms.TextBox();
@@ -175,24 +181,30 @@ namespace TemuKJD.WXForms.ProductForms
this.colImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colProductSkcPic = new System.Windows.Forms.DataGridViewImageColumn();
this.colProdInfo = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.colDraftId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSpuId = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colProductName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSpuCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSkuId = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSkuSpec = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSkuCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colSalePrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colCnt = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colPriceCnt = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colTotalPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colDiscount = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colCurrentPrice = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colAddPrice = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colEndDiscount = new System.Windows.Forms.DataGridViewLinkColumn();
this.colOrderStatus = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colBuyUrl = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colEditBuyPath = new System.Windows.Forms.DataGridViewLinkColumn();
this.colReceiveInfo = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colDecrypt = new System.Windows.Forms.DataGridViewLinkColumn();
- this.colOnlineWaybill = new System.Windows.Forms.DataGridViewLinkColumn();
this.colAddReceiveInfo = new System.Windows.Forms.DataGridViewLinkColumn();
+ this.colPrintId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colOnlineWaybillOrderId = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.colOnlineWaybill = new System.Windows.Forms.DataGridViewLinkColumn();
this.colNotes = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colNotesColor = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colEditNotes = new System.Windows.Forms.DataGridViewLinkColumn();
@@ -254,6 +266,9 @@ namespace TemuKJD.WXForms.ProductForms
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.btnStopBatchOnlieWaybill);
+ this.ucGroupBoxEx3.Controls.Add(this.btnBatchOnlieWaybill);
+ this.ucGroupBoxEx3.Controls.Add(this.btnRefreshPrintId);
this.ucGroupBoxEx3.Controls.Add(this.dtpFilterEndTime);
this.ucGroupBoxEx3.Controls.Add(this.dtpFilterBeginTime);
this.ucGroupBoxEx3.Controls.Add(this.txtFilterTitleNotContainWords);
@@ -287,6 +302,79 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx3.TabStop = false;
this.ucGroupBoxEx3.Text = "订单操作";
//
+ // btnStopBatchOnlieWaybill
+ //
+ this.btnStopBatchOnlieWaybill.CanvasColor = System.Drawing.SystemColors.Control;
+ this.btnStopBatchOnlieWaybill.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnStopBatchOnlieWaybill.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnStopBatchOnlieWaybill.Location = new System.Drawing.Point(213, 129);
+ this.btnStopBatchOnlieWaybill.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
+ this.btnStopBatchOnlieWaybill.Name = "btnStopBatchOnlieWaybill";
+ this.btnStopBatchOnlieWaybill.Size = new System.Drawing.Size(85, 23);
+ this.btnStopBatchOnlieWaybill.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnStopBatchOnlieWaybill.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnStopBatchOnlieWaybill.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
+ this.btnStopBatchOnlieWaybill.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
+ this.btnStopBatchOnlieWaybill.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnStopBatchOnlieWaybill.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
+ this.btnStopBatchOnlieWaybill.Style.GradientAngle = 90;
+ this.btnStopBatchOnlieWaybill.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnStopBatchOnlieWaybill.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnStopBatchOnlieWaybill.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnStopBatchOnlieWaybill.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnStopBatchOnlieWaybill.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
+ this.btnStopBatchOnlieWaybill.TabIndex = 1070;
+ this.btnStopBatchOnlieWaybill.Text = "停止批量寄件";
+ this.btnStopBatchOnlieWaybill.Click += new System.EventHandler(this.panelEx2_Click);
+ //
+ // btnBatchOnlieWaybill
+ //
+ this.btnBatchOnlieWaybill.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnBatchOnlieWaybill.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnBatchOnlieWaybill.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnBatchOnlieWaybill.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnBatchOnlieWaybill.Location = new System.Drawing.Point(124, 129);
+ this.btnBatchOnlieWaybill.Name = "btnBatchOnlieWaybill";
+ this.btnBatchOnlieWaybill.Size = new System.Drawing.Size(84, 23);
+ this.btnBatchOnlieWaybill.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnBatchOnlieWaybill.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnBatchOnlieWaybill.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnBatchOnlieWaybill.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnBatchOnlieWaybill.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnBatchOnlieWaybill.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnBatchOnlieWaybill.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnBatchOnlieWaybill.Style.GradientAngle = 90;
+ this.btnBatchOnlieWaybill.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnBatchOnlieWaybill.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnBatchOnlieWaybill.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnBatchOnlieWaybill.TabIndex = 1035;
+ this.btnBatchOnlieWaybill.Text = "批量在线寄件";
+ this.btnBatchOnlieWaybill.Click += new System.EventHandler(this.btnBatchOnlieWaybill_Click);
+ //
+ // btnRefreshPrintId
+ //
+ this.btnRefreshPrintId.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.btnRefreshPrintId.Cursor = System.Windows.Forms.Cursors.Hand;
+ this.btnRefreshPrintId.DisabledBackColor = System.Drawing.Color.Empty;
+ this.btnRefreshPrintId.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+ this.btnRefreshPrintId.Location = new System.Drawing.Point(34, 129);
+ this.btnRefreshPrintId.Name = "btnRefreshPrintId";
+ this.btnRefreshPrintId.Size = new System.Drawing.Size(84, 23);
+ this.btnRefreshPrintId.Style.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnRefreshPrintId.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnRefreshPrintId.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
+ this.btnRefreshPrintId.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
+ this.btnRefreshPrintId.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
+ this.btnRefreshPrintId.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
+ this.btnRefreshPrintId.Style.ForeColor.Color = System.Drawing.Color.White;
+ this.btnRefreshPrintId.Style.GradientAngle = 90;
+ this.btnRefreshPrintId.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
+ this.btnRefreshPrintId.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnRefreshPrintId.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
+ this.btnRefreshPrintId.TabIndex = 1006;
+ this.btnRefreshPrintId.Text = "刷新打印单号";
+ this.btnRefreshPrintId.Click += new System.EventHandler(this.btnRefreshPrintId_Click);
+ //
// dtpFilterEndTime
//
this.dtpFilterEndTime.CustomFormat = "yyyy-MM-dd HH:mm";
@@ -1436,6 +1524,8 @@ namespace TemuKJD.WXForms.ProductForms
//
this.pnlEditReceiveInfo.Anchor = System.Windows.Forms.AnchorStyles.Top;
this.pnlEditReceiveInfo.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.pnlEditReceiveInfo.Controls.Add(this.label20);
+ this.pnlEditReceiveInfo.Controls.Add(this.txtEditReceiveInfoOldAddress);
this.pnlEditReceiveInfo.Controls.Add(this.lblEditReceiveInfoShopId);
this.pnlEditReceiveInfo.Controls.Add(this.label8);
this.pnlEditReceiveInfo.Controls.Add(this.txtEditReceiveInfoAddress);
@@ -1444,16 +1534,38 @@ namespace TemuKJD.WXForms.ProductForms
this.pnlEditReceiveInfo.Controls.Add(this.lblEditReceiveInfoOrderId);
this.pnlEditReceiveInfo.Controls.Add(this.lblEditReceiveInfoShopName);
this.pnlEditReceiveInfo.Controls.Add(this.label11);
- this.pnlEditReceiveInfo.Location = new System.Drawing.Point(179, 252);
+ this.pnlEditReceiveInfo.Location = new System.Drawing.Point(179, 248);
this.pnlEditReceiveInfo.Name = "pnlEditReceiveInfo";
- this.pnlEditReceiveInfo.Size = new System.Drawing.Size(474, 146);
+ this.pnlEditReceiveInfo.Size = new System.Drawing.Size(474, 191);
this.pnlEditReceiveInfo.TabIndex = 783;
this.pnlEditReceiveInfo.Visible = false;
//
+ // label20
+ //
+ this.label20.AutoSize = true;
+ this.label20.Location = new System.Drawing.Point(16, 42);
+ this.label20.Name = "label20";
+ this.label20.Size = new System.Drawing.Size(44, 17);
+ this.label20.TabIndex = 491;
+ this.label20.Text = "旧地址";
+ //
+ // txtEditReceiveInfoOldAddress
+ //
+ this.txtEditReceiveInfoOldAddress.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.txtEditReceiveInfoOldAddress.BackColor = System.Drawing.Color.White;
+ this.txtEditReceiveInfoOldAddress.Location = new System.Drawing.Point(61, 39);
+ this.txtEditReceiveInfoOldAddress.Multiline = true;
+ this.txtEditReceiveInfoOldAddress.Name = "txtEditReceiveInfoOldAddress";
+ this.txtEditReceiveInfoOldAddress.ReadOnly = true;
+ this.txtEditReceiveInfoOldAddress.Size = new System.Drawing.Size(401, 54);
+ this.txtEditReceiveInfoOldAddress.TabIndex = 490;
+ //
// lblEditReceiveInfoShopId
//
this.lblEditReceiveInfoShopId.AutoSize = true;
- this.lblEditReceiveInfoShopId.Location = new System.Drawing.Point(20, 114);
+ this.lblEditReceiveInfoShopId.Location = new System.Drawing.Point(12, 157);
this.lblEditReceiveInfoShopId.Name = "lblEditReceiveInfoShopId";
this.lblEditReceiveInfoShopId.Size = new System.Drawing.Size(50, 17);
this.lblEditReceiveInfoShopId.TabIndex = 475;
@@ -1463,7 +1575,7 @@ namespace TemuKJD.WXForms.ProductForms
// label8
//
this.label8.AutoSize = true;
- this.label8.Location = new System.Drawing.Point(20, 52);
+ this.label8.Location = new System.Drawing.Point(28, 99);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(32, 17);
this.label8.TabIndex = 468;
@@ -1474,11 +1586,12 @@ namespace TemuKJD.WXForms.ProductForms
this.txtEditReceiveInfoAddress.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.txtEditReceiveInfoAddress.Location = new System.Drawing.Point(55, 48);
+ this.txtEditReceiveInfoAddress.Location = new System.Drawing.Point(61, 96);
this.txtEditReceiveInfoAddress.Multiline = true;
this.txtEditReceiveInfoAddress.Name = "txtEditReceiveInfoAddress";
- this.txtEditReceiveInfoAddress.Size = new System.Drawing.Size(407, 54);
- this.txtEditReceiveInfoAddress.TabIndex = 467;
+ this.txtEditReceiveInfoAddress.Size = new System.Drawing.Size(401, 54);
+ this.txtEditReceiveInfoAddress.TabIndex = 0;
+ this.txtEditReceiveInfoAddress.TextChanged += new System.EventHandler(this.txtEditReceiveInfoAddress_TextChanged);
//
// btnEditReceiveInfoCancel
//
@@ -1486,7 +1599,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnEditReceiveInfoCancel.CanvasColor = System.Drawing.SystemColors.Control;
this.btnEditReceiveInfoCancel.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnEditReceiveInfoCancel.DisabledBackColor = System.Drawing.Color.Empty;
- this.btnEditReceiveInfoCancel.Location = new System.Drawing.Point(406, 112);
+ this.btnEditReceiveInfoCancel.Location = new System.Drawing.Point(406, 157);
this.btnEditReceiveInfoCancel.Name = "btnEditReceiveInfoCancel";
this.btnEditReceiveInfoCancel.Size = new System.Drawing.Size(56, 24);
this.btnEditReceiveInfoCancel.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -1512,7 +1625,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnEditReceiveInfoOk.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnEditReceiveInfoOk.DisabledBackColor = System.Drawing.Color.Empty;
this.btnEditReceiveInfoOk.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnEditReceiveInfoOk.Location = new System.Drawing.Point(347, 112);
+ this.btnEditReceiveInfoOk.Location = new System.Drawing.Point(347, 157);
this.btnEditReceiveInfoOk.Name = "btnEditReceiveInfoOk";
this.btnEditReceiveInfoOk.Size = new System.Drawing.Size(56, 24);
this.btnEditReceiveInfoOk.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -1542,7 +1655,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblEditReceiveInfoShopName
//
this.lblEditReceiveInfoShopName.AutoSize = true;
- this.lblEditReceiveInfoShopName.Location = new System.Drawing.Point(20, 19);
+ this.lblEditReceiveInfoShopName.Location = new System.Drawing.Point(16, 19);
this.lblEditReceiveInfoShopName.Name = "lblEditReceiveInfoShopName";
this.lblEditReceiveInfoShopName.Size = new System.Drawing.Size(73, 17);
this.lblEditReceiveInfoShopName.TabIndex = 455;
@@ -1789,24 +1902,30 @@ namespace TemuKJD.WXForms.ProductForms
this.colImgUrl,
this.colProductSkcPic,
this.colProdInfo,
- this.colDraftId,
+ this.colSpuId,
this.colProductName,
this.colSpuCode,
this.colSkuId,
this.colSkuSpec,
this.colSkuCode,
this.colCode,
+ this.colSalePrice,
this.colCnt,
this.colPriceCnt,
this.colTotalPrice,
this.colDiscount,
+ this.colCurrentPrice,
+ this.colAddPrice,
+ this.colEndDiscount,
this.colOrderStatus,
this.colBuyUrl,
this.colEditBuyPath,
this.colReceiveInfo,
this.colDecrypt,
- this.colOnlineWaybill,
this.colAddReceiveInfo,
+ this.colPrintId,
+ this.colOnlineWaybillOrderId,
+ this.colOnlineWaybill,
this.colNotes,
this.colNotesColor,
this.colEditNotes,
@@ -1972,7 +2091,7 @@ namespace TemuKJD.WXForms.ProductForms
this.colOrderId.HeaderText = "订单号";
this.colOrderId.Name = "colOrderId";
this.colOrderId.ReadOnly = true;
- this.colOrderId.Width = 150;
+ this.colOrderId.Width = 145;
//
// colOrderTimeFull
//
@@ -2014,15 +2133,15 @@ namespace TemuKJD.WXForms.ProductForms
this.colProdInfo.ReadOnly = true;
this.colProdInfo.Width = 200;
//
- // colDraftId
+ // colSpuId
//
- 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.Visible = false;
- this.colDraftId.Width = 110;
+ 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.NotSortable;
+ this.colSpuId.Visible = false;
+ this.colSpuId.Width = 110;
//
// colProductName
//
@@ -2078,6 +2197,13 @@ namespace TemuKJD.WXForms.ProductForms
this.colCode.Visible = false;
this.colCode.Width = 200;
//
+ // colSalePrice
+ //
+ this.colSalePrice.HeaderText = "单价";
+ this.colSalePrice.Name = "colSalePrice";
+ this.colSalePrice.ReadOnly = true;
+ this.colSalePrice.Visible = false;
+ //
// colCnt
//
this.colCnt.HeaderText = "件数";
@@ -2090,7 +2216,7 @@ namespace TemuKJD.WXForms.ProductForms
dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colPriceCnt.DefaultCellStyle = dataGridViewCellStyle12;
- this.colPriceCnt.HeaderText = "数量";
+ this.colPriceCnt.HeaderText = "价/量";
this.colPriceCnt.Name = "colPriceCnt";
this.colPriceCnt.ReadOnly = true;
this.colPriceCnt.Width = 50;
@@ -2115,10 +2241,34 @@ namespace TemuKJD.WXForms.ProductForms
this.colDiscount.Visible = false;
this.colDiscount.Width = 50;
//
+ // colCurrentPrice
+ //
+ dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight;
+ dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colCurrentPrice.DefaultCellStyle = dataGridViewCellStyle15;
+ this.colCurrentPrice.HeaderText = "当前价";
+ this.colCurrentPrice.Name = "colCurrentPrice";
+ this.colCurrentPrice.ReadOnly = true;
+ this.colCurrentPrice.Width = 50;
+ //
+ // colAddPrice
+ //
+ this.colAddPrice.HeaderText = "改价";
+ this.colAddPrice.Name = "colAddPrice";
+ this.colAddPrice.ReadOnly = true;
+ this.colAddPrice.Width = 38;
+ //
+ // colEndDiscount
+ //
+ this.colEndDiscount.HeaderText = "取消优惠";
+ this.colEndDiscount.Name = "colEndDiscount";
+ this.colEndDiscount.ReadOnly = true;
+ this.colEndDiscount.Width = 63;
+ //
// colOrderStatus
//
- dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colOrderStatus.DefaultCellStyle = dataGridViewCellStyle15;
+ dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colOrderStatus.DefaultCellStyle = dataGridViewCellStyle16;
this.colOrderStatus.HeaderText = "状态";
this.colOrderStatus.Name = "colOrderStatus";
this.colOrderStatus.ReadOnly = true;
@@ -2126,8 +2276,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colBuyUrl
//
- dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colBuyUrl.DefaultCellStyle = dataGridViewCellStyle16;
+ dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colBuyUrl.DefaultCellStyle = dataGridViewCellStyle17;
this.colBuyUrl.HeaderText = "采购地址";
this.colBuyUrl.Name = "colBuyUrl";
this.colBuyUrl.ReadOnly = true;
@@ -2143,8 +2293,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colReceiveInfo
//
- dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colReceiveInfo.DefaultCellStyle = dataGridViewCellStyle17;
+ dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colReceiveInfo.DefaultCellStyle = dataGridViewCellStyle18;
this.colReceiveInfo.HeaderText = "收货信息";
this.colReceiveInfo.Name = "colReceiveInfo";
this.colReceiveInfo.ReadOnly = true;
@@ -2159,10 +2309,30 @@ namespace TemuKJD.WXForms.ProductForms
this.colDecrypt.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
this.colDecrypt.Width = 38;
//
+ // colAddReceiveInfo
+ //
+ this.colAddReceiveInfo.HeaderText = "填写";
+ this.colAddReceiveInfo.Name = "colAddReceiveInfo";
+ this.colAddReceiveInfo.ReadOnly = true;
+ this.colAddReceiveInfo.Width = 38;
+ //
+ // colPrintId
+ //
+ this.colPrintId.HeaderText = "打印编号";
+ this.colPrintId.Name = "colPrintId";
+ this.colPrintId.ReadOnly = true;
+ //
+ // colOnlineWaybillOrderId
+ //
+ this.colOnlineWaybillOrderId.HeaderText = "寄件任务编号";
+ this.colOnlineWaybillOrderId.Name = "colOnlineWaybillOrderId";
+ this.colOnlineWaybillOrderId.ReadOnly = true;
+ this.colOnlineWaybillOrderId.Width = 145;
+ //
// colOnlineWaybill
//
- dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colOnlineWaybill.DefaultCellStyle = dataGridViewCellStyle18;
+ dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colOnlineWaybill.DefaultCellStyle = dataGridViewCellStyle19;
this.colOnlineWaybill.HeaderText = "寄件";
this.colOnlineWaybill.Name = "colOnlineWaybill";
this.colOnlineWaybill.ReadOnly = true;
@@ -2171,17 +2341,10 @@ namespace TemuKJD.WXForms.ProductForms
this.colOnlineWaybill.Visible = false;
this.colOnlineWaybill.Width = 38;
//
- // colAddReceiveInfo
- //
- this.colAddReceiveInfo.HeaderText = "填写";
- this.colAddReceiveInfo.Name = "colAddReceiveInfo";
- this.colAddReceiveInfo.ReadOnly = true;
- this.colAddReceiveInfo.Width = 38;
- //
// colNotes
//
- dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colNotes.DefaultCellStyle = dataGridViewCellStyle19;
+ dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colNotes.DefaultCellStyle = dataGridViewCellStyle20;
this.colNotes.HeaderText = "备注";
this.colNotes.Name = "colNotes";
this.colNotes.ReadOnly = true;
@@ -2196,8 +2359,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colEditNotes
//
- dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colEditNotes.DefaultCellStyle = dataGridViewCellStyle20;
+ dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colEditNotes.DefaultCellStyle = dataGridViewCellStyle21;
this.colEditNotes.HeaderText = "修改";
this.colEditNotes.Name = "colEditNotes";
this.colEditNotes.ReadOnly = true;
@@ -2205,8 +2368,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colOpResult
//
- dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.colOpResult.DefaultCellStyle = dataGridViewCellStyle21;
+ dataGridViewCellStyle22.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.colOpResult.DefaultCellStyle = dataGridViewCellStyle22;
this.colOpResult.HeaderText = "操作结果";
this.colOpResult.Name = "colOpResult";
this.colOpResult.ReadOnly = true;
@@ -2371,6 +2534,11 @@ namespace TemuKJD.WXForms.ProductForms
private System.Windows.Forms.DateTimePicker dtpFilterBeginTime;
private UserComponent.UcCheckBox chkFilterBeginTime;
private UserComponent.UcCheckBox chkFilterEndTime;
+ private DevComponents.DotNetBar.PanelEx btnRefreshPrintId;
+ private DevComponents.DotNetBar.PanelEx btnBatchOnlieWaybill;
+ private System.Windows.Forms.Label label20;
+ private System.Windows.Forms.TextBox txtEditReceiveInfoOldAddress;
+ private DevComponents.DotNetBar.PanelEx btnStopBatchOnlieWaybill;
private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck;
private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierId;
private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierName;
@@ -2384,24 +2552,30 @@ namespace TemuKJD.WXForms.ProductForms
private System.Windows.Forms.DataGridViewTextBoxColumn colImgUrl;
private System.Windows.Forms.DataGridViewImageColumn colProductSkcPic;
private System.Windows.Forms.DataGridViewTextBoxColumn colProdInfo;
- private System.Windows.Forms.DataGridViewTextBoxColumn colDraftId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSpuId;
private System.Windows.Forms.DataGridViewTextBoxColumn colProductName;
private System.Windows.Forms.DataGridViewTextBoxColumn colSpuCode;
private System.Windows.Forms.DataGridViewTextBoxColumn colSkuId;
private System.Windows.Forms.DataGridViewTextBoxColumn colSkuSpec;
private System.Windows.Forms.DataGridViewTextBoxColumn colSkuCode;
private System.Windows.Forms.DataGridViewTextBoxColumn colCode;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colSalePrice;
private System.Windows.Forms.DataGridViewTextBoxColumn colCnt;
private System.Windows.Forms.DataGridViewTextBoxColumn colPriceCnt;
private System.Windows.Forms.DataGridViewTextBoxColumn colTotalPrice;
private System.Windows.Forms.DataGridViewTextBoxColumn colDiscount;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colCurrentPrice;
+ private System.Windows.Forms.DataGridViewLinkColumn colAddPrice;
+ private System.Windows.Forms.DataGridViewLinkColumn colEndDiscount;
private System.Windows.Forms.DataGridViewTextBoxColumn colOrderStatus;
private System.Windows.Forms.DataGridViewTextBoxColumn colBuyUrl;
private System.Windows.Forms.DataGridViewLinkColumn colEditBuyPath;
private System.Windows.Forms.DataGridViewTextBoxColumn colReceiveInfo;
private System.Windows.Forms.DataGridViewLinkColumn colDecrypt;
- private System.Windows.Forms.DataGridViewLinkColumn colOnlineWaybill;
private System.Windows.Forms.DataGridViewLinkColumn colAddReceiveInfo;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colPrintId;
+ private System.Windows.Forms.DataGridViewTextBoxColumn colOnlineWaybillOrderId;
+ private System.Windows.Forms.DataGridViewLinkColumn colOnlineWaybill;
private System.Windows.Forms.DataGridViewTextBoxColumn colNotes;
private System.Windows.Forms.DataGridViewTextBoxColumn colNotesColor;
private System.Windows.Forms.DataGridViewLinkColumn colEditNotes;
diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderListForm.cs b/TEMUKJD/WXForms/ProductForms/WXOrderListForm.cs
index 423aff7..c758ebc 100644
--- a/TEMUKJD/WXForms/ProductForms/WXOrderListForm.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXOrderListForm.cs
@@ -31,6 +31,10 @@ using NaiBa.Util;
using AllBase.Model.Config;
using TemuKJD.BLL.Wx;
using AllBase.Model.Data;
+using NaiBa.CefHelper;
+using TemuKJD.Helper;
+using NaiBa.CefHelper.Handler;
+using CefSharp;
namespace TemuKJD.WXForms.ProductForms
{
@@ -39,6 +43,9 @@ namespace TemuKJD.WXForms.ProductForms
int PageBegin = 1;
int PageEnd = 9999;
+ List lstPrintLog = new List();
+ bool isOnlineWayBill = false;
+
public CancellationTokenSource cancellationTokenSource { get; set; } = null;
public bool IsLoadComplate { get; set; } = false;
@@ -60,6 +67,15 @@ namespace TemuKJD.WXForms.ProductForms
dtpFilterBeginTime.Value = DateTime.Now.AddDays(-1);
dtpFilterEndTime.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1);
+ pbLoading.Visible = true;
+ Task.Run(() =>
+ {
+ GetRefreshPrintId();
+ Invoke(new Action(() => {
+ pbLoading.Visible = false;
+ }));
+ });
+
dicCheckedShopId = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_checked_shop_dic");
if (dicCheckedShopId == null)
dicCheckedShopId = new Dictionary();
@@ -72,6 +88,25 @@ namespace TemuKJD.WXForms.ProductForms
dgvOrder.AddImgColumn("colProductSkcPic", "colImgUrl");
+ if (BaseClass.UserAuthority.Contains("在线寄件") || BaseClass.ParentAuthority.Contains("在线寄件"))
+ {
+ this.dgvOrder.Columns["colPrintId"].Visible = true;
+ this.dgvOrder.Columns["colOnlineWaybillOrderId"].Visible = true;
+ this.dgvOrder.Columns["colOnlineWaybill"].Visible = true;
+ this.btnRefreshPrintId.Visible = true;
+ this.btnBatchOnlieWaybill.Visible = true;
+ this.btnStopBatchOnlieWaybill.Visible = true;
+ }
+ else
+ {
+ this.dgvOrder.Columns["colPrintId"].Visible = false;
+ this.dgvOrder.Columns["colOnlineWaybillOrderId"].Visible = false;
+ this.dgvOrder.Columns["colOnlineWaybill"].Visible = false;
+ this.btnRefreshPrintId.Visible = false;
+ this.btnBatchOnlieWaybill.Visible = false;
+ this.btnStopBatchOnlieWaybill.Visible = false;
+ }
+
IsLoadComplate = true;
}
@@ -314,7 +349,7 @@ namespace TemuKJD.WXForms.ProductForms
return;
string headerText = dgvOrder.Columns[e.ColumnIndex].HeaderText;
var shopId = dgvOrder.Rows[e.RowIndex].Cells["colSupplierId"].Value.ParseToString();
- var draftId = dgvOrder.Rows[e.RowIndex].Cells["colDraftId"].Value.ParseToString();
+ var spuId = dgvOrder.Rows[e.RowIndex].Cells["colSpuId"].Value.ParseToString();
var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
var row = dgvOrder.Rows[e.RowIndex];
var orderId = row.Cells["colOrderId"].Value.ParseToString();
@@ -357,45 +392,192 @@ namespace TemuKJD.WXForms.ProductForms
imgFrom.ShowDialog();
break;
}
- case "操作":
+ case "改价":
{
- if (BaseMsgForm.ShowConfirm("确认要取消分配吗?取消分配后,订单将回到待分配状态").DialogResult != DialogResult.OK)
- return;
- this.pbLoading.Visible = true;
- Task.Run(() =>
+ WXOrderListAddSkuPriceForm form = new WXOrderListAddSkuPriceForm(shop);
+ form.txtGoodsName.Text = row.Cells["colProductName"].Value.ParseToString();
+ form.txtSkuName.Text = row.Cells["colSkuSpec"].Value.ParseToString();
+ form.txtCurrentPrice.Text = row.Cells["colCurrentPrice"].Value.ParseToString();
+ form.txtOrderPrice.Text = row.Cells["colSalePrice"].Value.ParseToString();
+ form.numAddPrice.Value = 0;
+ form.lblSpuId.Text = row.Cells["colSpuId"].Value.ParseToString();
+ form.lblSkuId.Text = row.Cells["colSkuId"].Value.ParseToString();
+ form.TitleText = "店铺 " + shop.ShopAccount + " 修改sku价格";
+ form.ShowDialog();
+ if (form.EditSuccess == true)
{
- CancelConsignment(new List() { dgvOrder.Rows[e.RowIndex] });
- Invoke(new Action(() =>
+ if (form.prodObj != null)
{
- this.pbLoading.Visible = false;
- }));
- }, cancellationTokenSource.Token);
- break;
+ foreach (var rw in this.dgvOrder.Rows.Cast())
+ {
+ if (rw.Cells["colSpuId"].Value.ParseToString() != spuId)
+ continue;
+
+ foreach (var sku in form.prodObj["skuList"])
+ {
+ //JObject obj = new JObject();
+ //obj["spuId"] = spuId;
+ //obj["skuId"] = sku["skuId"];
+ //obj["salePrice"] = sku["price"].ParseToInt() + (numAddPrice.Value * 100).ParseToInt();
+ //skuArr.Add(obj);
+ if (rw.Cells["colSkuId"].Value.ParseToString() == sku["skuId"].ParseToString())
+ {
+ rw.Cells["colCurrentPrice"].Value = sku["price"].ParseToInt() * 0.01m + form.numAddPrice.Value;
+ }
+ }
+ }
+ }
+ }
}
+ break;
+ case "取消优惠":
+ {
+ //WXOrderListAddSkuPriceForm form = new WXOrderListAddSkuPriceForm(shop);
+ //form.txtGoodsName.Text = row.Cells["colProductName"].Value.ParseToString();
+ //form.txtSkuName.Text = row.Cells["colSkuSpec"].Value.ParseToString();
+ //form.txtCurrentPrice.Text = row.Cells["colCurrentPrice"].Value.ParseToString();
+ //form.txtOrderPrice.Text = row.Cells["colSalePrice"].Value.ParseToString();
+ //form.numNewPrice.Value = form.txtCurrentPrice.Text.ParseToDecimal().IsNullOrZero() ? form.txtOrderPrice.Text.ParseToDecimal() : form.txtCurrentPrice.Text.ParseToDecimal();
+ //form.lblSpuId.Text = row.Cells["colSpuId"].Value.ParseToString();
+ //form.lblSkuId.Text = row.Cells["colSkuId"].Value.ParseToString();
+ //form.TitleText = "店铺 " + shop.ShopAccount + " 修改sku价格";
+ //form.ShowDialog();
+ //if (form.EditSuccess == true)
+ //{
+ // foreach (var rw in this.dgvOrder.Rows.Cast())
+ // {
+ // if (rw.Cells["colSkuId"].Value.ParseToString() == row.Cells["colSkuId"].Value.ParseToString() &&
+ // rw.Cells["colSpuId"].Value.ParseToString() == row.Cells["colSpuId"].Value.ParseToString())
+ // {
+ // rw.Cells["colCurrentPrice"].Value = form.numNewPrice.Value;
+ // }
+ // }
+ //}
+
+ int onSaleStatusCode = -1;
+ int pageSize = 50;
+ var getProdOnSaleRst = WXClearNoVisit.searchProduct(shop, 1, pageSize, spuId, onSaleStatusCode);
+ Thread.Sleep(Randomx.GetId(50, 100));
+ if (!getProdOnSaleRst.Contains("\"success\":true"))
+ {
+ ShowShopError(shop, getProdOnSaleRst, true);
+ break;
+ }
+ var prodObjs = JsonHelper.JObjectParse(getProdOnSaleRst)["productList"].FirstOrDefault();
+ if (prodObjs != null)
+ {
+ var str = JsonHelper.SerializeObject(prodObjs);
+ }
+
+ var skuId = row.Cells["colSkuId"].Value.ParseToString();
+ var price = (row.Cells["colCurrentPrice"].Value.ParseToDecimal() * 100).ParseToInt();
+ var deltaPrice = 0;
+ while (!price.ToString().EndsWith("66"))
+ {
+ deltaPrice++;
+ price++;
+ }
+
+ JObject changePriceObj = new JObject();
+ JArray skuArr = new JArray();
+ foreach (var sku in prodObjs["skuList"])
+ {
+ JObject obj = new JObject();
+ obj["spuId"] = spuId;
+ obj["skuId"] = sku["skuId"];
+ obj["salePrice"] = sku["price"].ParseToInt() + deltaPrice;
+ skuArr.Add(obj);
+ }
+ changePriceObj["skuList"] = skuArr;
+ changePriceObj["uploadSource"] = 6;
+
+ // string body = @"{""skuList"":[{""spuId"":" + spuId + @",""skuId"":""" + skuId + @""",""salePrice"":" + newPrice + @"}],""uploadSource"":6}";
+ var rst = WXOrderList.EditPrice(shop, changePriceObj);
+ if (!rst.Contains("\"code\":0"))
+ {
+ var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "err_msg", "error_msg", "errMsg", "errorMsg");
+ BaseMsgForm.ShowError("修改优惠商品价格失败 " + error);
+ return;
+ }
+
+ JObject endActivityObj = new JObject();
+ endActivityObj["platformActivityId"] = "1016";
+ JArray arr = new JArray();
+ foreach (var sku in prodObjs["skuList"])
+ {
+ JObject obj = new JObject();
+ obj["productId"] = spuId;
+ obj["skuId"] = sku["skuId"];
+ arr.Add(obj);
+ }
+ endActivityObj["productList"] = arr;
+ endActivityObj["actionType"] = 1;
+ //{ "platformActivityId":"1016","productList":[{ "productId":"10000879673464","skuId":"15601266074"},{ "productId":"10000879673464","skuId":"15601240593"}],"actionType":1}
+
+ rst = WXOrderList.cancelActivity(shop, endActivityObj);
+ if (!rst.Contains("\"code\":0"))
+ {
+ var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "err_msg", "error_msg", "errMsg", "errorMsg");
+ BaseMsgForm.ShowError("取消优惠失败 " + error);
+ return;
+ }
+ else
+ {
+ foreach (var rw in this.dgvOrder.Rows.Cast())
+ {
+ //if (rw.Cells["colSkuId"].Value.ParseToString() == row.Cells["colSkuId"].Value.ParseToString() &&
+ // rw.Cells["colSpuId"].Value.ParseToString() == row.Cells["colSpuId"].Value.ParseToString())
+ //{
+ // rw.Cells["colOpResult"].Value = "取消优惠成功";
+ //}
+
+ if (rw.Cells["colSpuId"].Value.ParseToString() != spuId)
+ continue;
+ rw.Cells["colOpResult"].Value = "取消优惠成功";
+
+ foreach (var sku in prodObjs["skuList"])
+ {
+ //JObject obj = new JObject();
+ //obj["spuId"] = spuId;
+ //obj["skuId"] = sku["skuId"];
+ //obj["salePrice"] = sku["price"].ParseToInt() + (numAddPrice.Value * 100).ParseToInt();
+ //skuArr.Add(obj);
+ if (rw.Cells["colSkuId"].Value.ParseToString() == sku["skuId"].ParseToString())
+ {
+ rw.Cells["colCurrentPrice"].Value = sku["price"].ParseToInt() * 0.01m + deltaPrice * 0.01m;
+ }
+ }
+ }
+ BaseMsgForm.ShowInfo("取消优惠成功");
+ }
+ }
+ break;
case "修改":
- pnlUpdateNotes.Visible = true;
- pnlEditReceiveInfo.Visible = false;
- pnlBuyUrl.Visible = false;
- lblShopName.Text = shop.ShopAccount;
- lblShopId.Text = shop.ShopId;
- lblOrderId.Text = orderId;
- txtNotes.Text = row.Cells["colNotes"].Value.ParseToString();
- lblColorTag.Text = row.Cells["colNotesColor"].Value.ParseToString();
- ucCheckBox1.CheckBoxCheckColor = Color.Gray;
- ucCheckBox1.CheckBoxBorderColor = Color.Gray;
- ucCheckBox2.CheckBoxCheckColor = Color.Red;
- ucCheckBox2.CheckBoxBorderColor = Color.Red;
- ucCheckBox3.CheckBoxCheckColor = Color.Orange;
- ucCheckBox3.CheckBoxBorderColor = Color.Orange;
- ucCheckBox4.CheckBoxCheckColor = Color.Green;
- ucCheckBox4.CheckBoxBorderColor = Color.Green;
- ucCheckBox5.CheckBoxCheckColor = Color.Blue;
- ucCheckBox5.CheckBoxBorderColor = Color.Blue;
- ucCheckBox1.Checked = lblColorTag.Text == "0";
- ucCheckBox2.Checked = lblColorTag.Text == "1";
- ucCheckBox3.Checked = lblColorTag.Text == "2";
- ucCheckBox4.Checked = lblColorTag.Text == "3";
- ucCheckBox5.Checked = lblColorTag.Text == "4";
+ {
+ pnlUpdateNotes.Visible = true;
+ pnlEditReceiveInfo.Visible = false;
+ pnlBuyUrl.Visible = false;
+ lblShopName.Text = shop.ShopAccount;
+ lblShopId.Text = shop.ShopId;
+ lblOrderId.Text = orderId;
+ txtNotes.Text = row.Cells["colNotes"].Value.ParseToString();
+ lblColorTag.Text = row.Cells["colNotesColor"].Value.ParseToString();
+ ucCheckBox1.CheckBoxCheckColor = Color.Gray;
+ ucCheckBox1.CheckBoxBorderColor = Color.Gray;
+ ucCheckBox2.CheckBoxCheckColor = Color.Red;
+ ucCheckBox2.CheckBoxBorderColor = Color.Red;
+ ucCheckBox3.CheckBoxCheckColor = Color.Orange;
+ ucCheckBox3.CheckBoxBorderColor = Color.Orange;
+ ucCheckBox4.CheckBoxCheckColor = Color.Green;
+ ucCheckBox4.CheckBoxBorderColor = Color.Green;
+ ucCheckBox5.CheckBoxCheckColor = Color.Blue;
+ ucCheckBox5.CheckBoxBorderColor = Color.Blue;
+ ucCheckBox1.Checked = lblColorTag.Text == "0";
+ ucCheckBox2.Checked = lblColorTag.Text == "1";
+ ucCheckBox3.Checked = lblColorTag.Text == "2";
+ ucCheckBox4.Checked = lblColorTag.Text == "3";
+ ucCheckBox5.Checked = lblColorTag.Text == "4";
+ }
break;
case "解密":
{
@@ -413,9 +595,7 @@ namespace TemuKJD.WXForms.ProductForms
html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
{
- var errMsg = BaseRegex.GetStringJson(ref html, "msg");
- if (errMsg.IsNullOrEmpty())
- errMsg = html;
+ var errMsg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg");
BaseMsgForm.ShowError("解密成功但保存到服务端失败:" + errMsg);
row.Cells["colOpResult"].Value = errMsg;
row.Cells["colReceiveInfo"].Value = GetDecryptOrder(deRst);
@@ -430,13 +610,7 @@ namespace TemuKJD.WXForms.ProductForms
}
else
{
- var error = BaseRegex.GetStringJson(ref deRst, "msg");
- if (string.IsNullOrEmpty(error))
- error = BaseRegex.GetStringJson(ref deRst, "errMsg");
- if (string.IsNullOrEmpty(error))
- error = BaseRegex.GetStringJson(ref deRst, "errorMsg");
- if (string.IsNullOrEmpty(error))
- error = deRst;
+ var error = BaseRegex.GetStringJsonByRegs(ref deRst, deRst, "err_msg", "error_msg", "errMsg", "errorMsg", "msg");
row.Cells["colOpResult"].Value = "解密失败:" + error;
BaseMsgForm.ShowError("解密失败:" + error);
}
@@ -450,7 +624,10 @@ namespace TemuKJD.WXForms.ProductForms
lblEditReceiveInfoShopName.Text = shop.ShopAccount;
lblEditReceiveInfoShopId.Text = shop.ShopId;
lblEditReceiveInfoOrderId.Text = orderId;
- txtEditReceiveInfoAddress.Text = row.Cells["colReceiveInfo"].Value.ParseToString();
+ txtEditReceiveInfoAddress.TextChanged -= txtEditReceiveInfoAddress_TextChanged;
+ txtEditReceiveInfoAddress.Text = ""; // row.Cells["colReceiveInfo"].Value.ParseToString();
+ txtEditReceiveInfoAddress.TextChanged += txtEditReceiveInfoAddress_TextChanged;
+ txtEditReceiveInfoOldAddress.Text = row.Cells["colReceiveInfo"].Value.ParseToString();
}
break;
case "编辑":
@@ -467,100 +644,7 @@ namespace TemuKJD.WXForms.ProductForms
break;
case "寄件":
{
- pbLoading.Visible = true;
- Task.Run(() =>
- {
- WXPreCreateOrderWaybillOnlineParam preWaybillOnlineparam = new WXPreCreateOrderWaybillOnlineParam();
- preWaybillOnlineparam.req.requestContent.Add(new preWaybillOnlineRequestContentParam()
- {
- ecOrderList = new List(),
- uuid = Guid.NewGuid().ParseToString(),
- });
-
-
-#if DEBUG
- var url = BaseClass.BuildObjString("product/wx_get_random_after_sale_list");
- var data = Work.UserLogin.GetSignaturex();
- data += "&page_size=1";
- var html = GetHtml.PostUtf8(url, data);
- if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
- html = GetHtml.PostUtf8(url, data);
- if (html.Contains("\"code\":200") && !html.Contains("\"data\":[]"))
- {
- var obj = JsonHelper.JObjectParse(html)["data"].FirstOrDefault()["after_sale_json"];
- string addressJson = obj.ParseToString();
-
- var senderInfo = preWaybillOnlineparam.req.requestContent.FirstOrDefault().sender;
- senderInfo.province = BaseRegex.GetStringJson(ref addressJson, "province_name");
- senderInfo.city = BaseRegex.GetStringJson(ref addressJson, "city_name");
- senderInfo.county = BaseRegex.GetStringJson(ref addressJson, "county_name");
- senderInfo.street = BaseRegex.GetStringJson(ref addressJson, "street_name").ParseToString();
- senderInfo.mobile = BaseRegex.GetStringJson(ref addressJson, "tel_number");
- senderInfo.name = BaseRegex.GetStringJson(ref addressJson, "user_name");
- senderInfo.address = BaseRegex.GetStringJson(ref addressJson, "detail_info");
- senderInfo.mobile = WaybillHelper.MobileHead[Randomx.GetId(WaybillHelper.MobileHead.Count)] + Randomx.GetNumber(8);
- senderInfo.name = WaybillHelper.LastName[Randomx.GetId(WaybillHelper.LastName.Count)] + (Randomx.GetId(2) == 1 ? "先生" : "女士");
- }
- ecOrderParam orderParam = new ecOrderParam();
- orderParam.ecOrderId = orderId;
- var rows = dgvOrder.Rows.Cast().Where(r => r.Cells["colOrderId"].Value.ParseToString() == orderId);
- foreach(var rw in rows)
- {
- orderParam.goodsList.Add(new orderGoodsParam
- {
- goodCount = rw.Cells["colCnt"].Value.ParseToInt(),
- goodName = rw.Cells["colProductName"].Value.ParseToString(),
- productId = rw.Cells["colDraftId"].Value.ParseToString(),
- skuId = rw.Cells["colSkuId"].Value.ParseToString(),
- });
- }
- preWaybillOnlineparam.req.requestContent.FirstOrDefault().ecOrderList.Add(orderParam);
-
- var result = WXOrderList.preCreateOrderWaybillOnline(shop, preWaybillOnlineparam);
- if (result.Contains("账号未开通在线寄件服务"))
- {
- BaseMsgForm.ShowError("账号未开通在线寄件服务");
- Invoke(new Action(() => { pbLoading.Visible = false; }));
- return;
- }
- if (result.Contains("订单已分配给供货商,商家无需发货"))
- {
- BaseMsgForm.ShowError("订单已分配给供货商,商家无需发货");
- Invoke(new Action(() => { pbLoading.Visible = false; }));
- return;
- }
- if (!result.Contains("\"ret\":0,"))
- {
- BaseMsgForm.ShowError("在线寄件失败:" + result, "错误", FormLevel.LARGE);
- Invoke(new Action(() => { pbLoading.Visible = false; }));
- return;
- }
- List deliverInfoLst = new List();
- var jObj = JsonHelper.JObjectParse(result)["list"];
- deliverInfoLst = JsonHelper.DeserializeJsonToList(jObj.ParseToString())
- .Where(d => d.responseContent.FirstOrDefault()?.deliveryId == "YTO" || d.responseContent.FirstOrDefault()?.deliveryId == "YUNDA" ||
- d.responseContent.FirstOrDefault()?.deliveryId == "ZTO" || d.responseContent.FirstOrDefault()?.deliveryId == "STO").ToList()
- .Where(d => d.responseContent.FirstOrDefault()?.deliveryErrorMsg == "success").ToList();
-
- var deliverInfo = deliverInfoLst[Randomx.GetId(deliverInfoLst.Count)];
-
- WXCreateOrderWaybillOnlineParam waybillOnlineparam = new WXCreateOrderWaybillOnlineParam();
- waybillOnlineparam.requestContent.Add(new WaybillOnlineRequestContentParam()
- {
- deliveryId = deliverInfo.responseContent.FirstOrDefault().deliveryId,
- deliveryInfo = preWaybillOnlineparam.req.requestContent.FirstOrDefault().deliveryInfo,
- ecOrderList = preWaybillOnlineparam.req.requestContent.FirstOrDefault().ecOrderList,
- ewaybillOrderId = deliverInfo.responseContent.FirstOrDefault().ewaybillOrderId,
- extInfo = preWaybillOnlineparam.req.requestContent.FirstOrDefault().extInfo,
- orderVasList = preWaybillOnlineparam.req.requestContent.FirstOrDefault().orderVasList,
- sender = preWaybillOnlineparam.req.requestContent.FirstOrDefault().sender,
- source = preWaybillOnlineparam.req.requestContent.FirstOrDefault().source,
- uuid = preWaybillOnlineparam.req.requestContent.FirstOrDefault().uuid,
- });
-#endif
-
- Invoke(new Action(() => { pbLoading.Visible = false; }));
- });
+ Task.Run(() => { GetOnlineWayBill(shop, row); });
}
break;
case "":
@@ -571,6 +655,368 @@ namespace TemuKJD.WXForms.ProductForms
}
}
+ void GetOnlineWayBill(ShopLoginInfo shop, DataGridViewRow row)
+ {
+ var orderId = row.Cells["colOrderId"].Value.ParseToString();
+
+ //Task.Run(() =>
+ //{
+ while (isOnlineWayBill)
+ Thread.Sleep(150);
+
+ Invoke(new Action(() => { pbLoading.Visible = true; }));
+ isOnlineWayBill = true;
+
+ WXPreCreateOrderWaybillOnlineParam preWaybillOnlineparam = new WXPreCreateOrderWaybillOnlineParam();
+ preWaybillOnlineparam.req.requestContent.Add(new preWaybillOnlineRequestContentParam()
+ {
+ ecOrderList = new List(),
+ uuid = Guid.NewGuid().ParseToString(),
+ });
+
+ //#if DEBUG
+ var rst = WXOrderList.searchOnlineWaybill(shop, orderId);
+ if (!rst.Contains("\"code\":0"))
+ {
+ //BaseMsgForm.ShowError("在线寄件失败:" + rst, "错误", FormLevel.LARGE);
+ var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "errMsg", "errorMsg", "err_msg", "error_msg");
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "在线寄件失败:" + error;
+ pbLoading.Visible = false;
+ }));
+ isOnlineWayBill = false;
+ return;
+ }
+ if (rst.Contains("\"orderList\":[]"))
+ {
+
+ var url = BaseClass.BuildObjString("product/wx_get_random_after_sale_list");
+ var data = Work.UserLogin.GetSignaturex();
+ data += "&page_size=1";
+ var html = GetHtml.PostUtf8(url, data);
+ if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
+ html = GetHtml.PostUtf8(url, data);
+ if (html.Contains("\"code\":200") && !html.Contains("\"data\":[]"))
+ {
+ var obj = JsonHelper.JObjectParse(html)["data"].FirstOrDefault()["after_sale_json"];
+ string addressJson = obj.ParseToString();
+
+ var senderInfo = preWaybillOnlineparam.req.requestContent.FirstOrDefault().sender;
+ senderInfo.province = BaseRegex.GetStringJson(ref addressJson, "province_name");
+ senderInfo.city = BaseRegex.GetStringJson(ref addressJson, "city_name");
+ senderInfo.county = BaseRegex.GetStringJson(ref addressJson, "county_name");
+ senderInfo.street = BaseRegex.GetStringJson(ref addressJson, "street_name").ParseToString();
+ senderInfo.mobile = BaseRegex.GetStringJson(ref addressJson, "tel_number");
+ senderInfo.name = BaseRegex.GetStringJson(ref addressJson, "user_name");
+ senderInfo.address = BaseRegex.GetStringJson(ref addressJson, "detail_info");
+ senderInfo.mobile = WaybillHelper.MobileHead[Randomx.GetId(WaybillHelper.MobileHead.Count)] + Randomx.GetNumber(8);
+ senderInfo.name = WaybillHelper.LastName[Randomx.GetId(WaybillHelper.LastName.Count)] + (Randomx.GetId(2) == 1 ? "先生" : "女士");
+ }
+ ecOrderParam orderParam = new ecOrderParam();
+ orderParam.ecOrderId = orderId;
+ var rows = dgvOrder.Rows.Cast().Where(r => r.Cells["colOrderId"].Value.ParseToString() == orderId);
+ foreach (var rw in rows)
+ {
+ orderParam.goodsList.Add(new orderGoodsParam
+ {
+ goodCount = rw.Cells["colCnt"].Value.ParseToInt(),
+ goodName = rw.Cells["colProductName"].Value.ParseToString(),
+ productId = rw.Cells["colSpuId"].Value.ParseToString(),
+ skuId = rw.Cells["colSkuId"].Value.ParseToString(),
+ });
+ }
+ preWaybillOnlineparam.req.requestContent.FirstOrDefault().ecOrderList.Add(orderParam);
+
+ var result = WXOrderList.preCreateOrderWaybillOnline(shop, preWaybillOnlineparam);
+ if (result.Contains("账号未开通在线寄件服务"))
+ {
+ //BaseMsgForm.ShowError("账号未开通在线寄件服务");
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "账号未开通在线寄件服务";
+ pbLoading.Visible = false;
+ }));
+ isOnlineWayBill = false;
+ return;
+ }
+ if (result.Contains("订单已分配给供货商,商家无需发货"))
+ {
+ //BaseMsgForm.ShowError("订单已分配给供货商,商家无需发货");
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "订单已分配给供货商,商家无需发货";
+ pbLoading.Visible = false;
+ }));
+ isOnlineWayBill = false;
+ return;
+ }
+ if (result.Contains("订单商品已全部发货"))
+ {
+ //BaseMsgForm.ShowError("订单商品已全部发货");
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "订单商品已全部发货";
+ pbLoading.Visible = false;
+ }));
+ isOnlineWayBill = false;
+ return;
+ }
+ if (!result.Contains("\"ret\":0,"))
+ {
+ //BaseMsgForm.ShowError("在线寄件失败:" + result, "错误", FormLevel.LARGE);
+ var error = BaseRegex.GetStringJsonByRegs(ref result, result, "errMsg", "errorMsg", "err_msg", "error_msg");
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "在线寄件失败:" + error;
+ pbLoading.Visible = false;
+ }));
+ isOnlineWayBill = false;
+ return;
+ }
+ List deliverInfoLst = new List();
+ var jObj = JsonHelper.JObjectParse(result)["list"];
+ deliverInfoLst = JsonHelper.DeserializeJsonToList(jObj.ParseToString())
+ .Where(d => d.responseContent.FirstOrDefault()?.deliveryId == "YTO" || d.responseContent.FirstOrDefault()?.deliveryId == "YUNDA" ||
+ d.responseContent.FirstOrDefault()?.deliveryId == "ZTO" || d.responseContent.FirstOrDefault()?.deliveryId == "STO").ToList()
+ .Where(d => d.responseContent.FirstOrDefault()?.deliveryErrorMsg == "success").ToList();
+
+ var deliverInfo = deliverInfoLst[Randomx.GetId(deliverInfoLst.Count)];
+
+ WXCreateOrderWaybillOnlineParam waybillOnlineparam = new WXCreateOrderWaybillOnlineParam();
+ waybillOnlineparam.requestContent.Add(new WaybillOnlineRequestContentParam()
+ {
+ deliveryId = deliverInfo.responseContent.FirstOrDefault().deliveryId,
+ deliveryInfo = preWaybillOnlineparam.req.requestContent.FirstOrDefault().deliveryInfo,
+ ecOrderList = preWaybillOnlineparam.req.requestContent.FirstOrDefault().ecOrderList,
+ ewaybillOrderId = deliverInfo.responseContent.FirstOrDefault().ewaybillOrderId,
+ extInfo = preWaybillOnlineparam.req.requestContent.FirstOrDefault().extInfo,
+ orderVasList = preWaybillOnlineparam.req.requestContent.FirstOrDefault().orderVasList,
+ sender = preWaybillOnlineparam.req.requestContent.FirstOrDefault().sender,
+ source = preWaybillOnlineparam.req.requestContent.FirstOrDefault().source,
+ uuid = preWaybillOnlineparam.req.requestContent.FirstOrDefault().uuid,
+ });
+ result = WXOrderList.createOrderWaybillOnline(shop, waybillOnlineparam);
+ if (!result.Contains("\"ret\":0,"))
+ {
+ var error = BaseRegex.GetStringJsonByRegs(ref result, result, "errMsg", "errorMsg", "err_msg", "error_msg");
+ //BaseMsgForm.ShowError("在线寄件失败:" + error, "错误", FormLevel.LARGE);
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOpResult"].Value = "在线寄件失败:" + error;
+ pbLoading.Visible = false;
+ }));
+ isOnlineWayBill = false;
+ return;
+ }
+ else
+ {
+ Invoke(new Action(() =>
+ {
+ row.Cells["colOnlineWaybillOrderId"].Value = BaseRegex.GetStringJson(ref result, "ewaybillOrderId");
+ row.Cells["colOnlineWaybill"].Value = "在线\r\n寄件\r\n打印";
+ ShowDgvRow(row);
+ }));
+ }
+ }
+
+ Invoke(new Action(() =>
+ {
+ if (shop.Chat == null)
+ {
+ shop.Chat = CEFBrowser.CreateChromiumWebBrowser("https://store.weixin.qq.com/shop/waybill/allToAll", false);
+ CustomResourceRequestHandlerLocal resourceRequestHandler = new CustomResourceRequestHandlerLocal();
+ resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete;
+ resourceRequestHandler.BeforeResourceLoadEvent += RequestHandler_BeforeResourceLoad;
+ shop.Chat.RequestHandler = new CustomRequestHandler(resourceRequestHandler);
+ var lifeSapnHandler = new LifeSpanHandlerLocal(PopWindowType.SelfWindow);
+ shop.Chat.LifeSpanHandler = lifeSapnHandler;
+ shop.Chat.KeyboardHandler = new KeyboardHandler();
+ shop.Chat.FrameLoadEnd += CefWebBrowser_FrameLoadEnd;
+ shop.Chat.AddressChanged += CefWebBrowser_AddressChanged;
+ shop.Chat.LoadError += CefWebBrowser_LoadError;
+ shop.Chat.Dock = DockStyle.Fill;
+ MainForm.instance.cefPanel.Controls.Add(shop.Chat);
+ }
+
+ shop.Chat.SendToBack();
+ //MainForm.instance.cefPanel.BringToFront();
+ MainForm.instance.cefPanel.SendToBack();
+ MainForm.instance.cefPanel.Visible = true;
+ }));
+ while (!shop.Chat.IsBrowserInitialized)
+ Thread.Sleep(100);
+ CEFBrowser.DeleteCookie(shop.Chat.GetCookieManager(null));
+ var cookieLst = JsonHelper.DeserializeJsonToList(shop.Cookies);
+ var t = CEFBrowser.SetCookieAsync(JsonHelper.SerializeObject(cookieLst), shop.Chat.GetCookieManager(null));
+ shop.Chat.Load("https://store.weixin.qq.com/shop/waybill/allToAll");
+
+ var jsStr = @"(function() {
+ const element = document.getElementsByName('waybill')[0];
+ const shadowRoot = element.shadowRoot;
+ //var aElements = document.getElementsByTagName('a');
+ //var aElements = shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
+ var aElements = shadowRoot.querySelector('micro-app-body').getElementsByTagName('a')
+ for (i = 0; i = 0) {
+ var rect = aElement.getBoundingClientRect();
+ aElement.click();
+ return rect.left + ',' + rect.top;
+ }
+ }
+ return '0,0';
+ })();";
+ var resultStr = "";
+ for (int i = 0; i < 10; i++)
+ {
+ Thread.Sleep(250);
+ var client = shop.Chat.GetDevToolsClient();
+ if (client != null)
+ {
+ var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
+ result.Wait(5000);
+ resultStr = result.Result.Result.Value.ParseToString();
+ if (!resultStr.IsNullOrEmpty() && !resultStr.Contains("0,0"))
+ {
+ break;
+ }
+ }
+ }
+
+ Thread.Sleep(500);
+
+ jsStr = @"(function() {
+ const element = document.getElementsByName('waybill')[0];
+ const shadowRoot = element.shadowRoot;
+ var aElements = shadowRoot.querySelector('micro-app-body').getElementsByTagName('tr');
+ for (i = 0; i = 0) {
+ var chk = aElement.getElementsByClassName('weui-desktop-table_flex')[0].children[0];
+ var rect = chk.getBoundingClientRect();
+ chk.click();
+ return rect.left + ',' + rect.top;
+ }
+ }
+ return '0,0';
+ })();";
+ resultStr = "";
+ for (int i = 0; i < 10; i++)
+ {
+ Thread.Sleep(250);
+ var client = shop.Chat.GetDevToolsClient();
+ if (client != null)
+ {
+ var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
+ result.Wait(5000);
+ resultStr = result.Result.Result.Value.ParseToString();
+ if (!resultStr.IsNullOrEmpty() && !resultStr.Contains("0,0"))
+ {
+ break;
+ }
+ }
+ }
+
+ Thread.Sleep(1000);
+
+ jsStr = @"(function() {
+ const element = document.getElementsByName('waybill')[0];
+ const shadowRoot = element.shadowRoot;
+ var aElements = shadowRoot.querySelector('micro-app-body').getElementsByTagName('button');
+ //var aElements = document.getElementsByTagName('button');
+ for (i = 0; i = 0) {
+ var rect = aElement.getBoundingClientRect();
+ aElement.click();
+ return rect.left + ',' + rect.top;
+ }
+ }
+ return '0,0';
+ })();";
+ resultStr = "";
+ int count = 0;
+ for (int i = 0; i < 5; i++)
+ {
+ Thread.Sleep(500);
+ var client = shop.Chat.GetDevToolsClient();
+ if (client != null)
+ {
+ var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
+ result.Wait(5000);
+ resultStr = result.Result.Result.Value.ParseToString();
+ if (!resultStr.IsNullOrEmpty() && !resultStr.Contains("0,0"))
+ {
+ count++;
+ if (count > 1)
+ break;
+ }
+ }
+ }
+
+ Thread.Sleep(500);
+
+ jsStr = @"(function() {
+ const element = document.getElementsByName('waybill')[0];
+ const shadowRoot = element.shadowRoot;
+ var aElements = shadowRoot.querySelector('micro-app-body').getElementsByTagName('button');
+ for (i = 0; i = 0) {
+ var rect = aElement.getBoundingClientRect();
+ if (rect.left > 0) {
+ aElement.click();
+ return rect.left + ',' + rect.top;
+ }
+ }
+ }
+ return '0,0';
+ })();";
+ resultStr = "";
+ for (int i = 0; i < 5; i++)
+ {
+ Thread.Sleep(500);
+ var client = shop.Chat.GetDevToolsClient();
+ if (client != null)
+ {
+ var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
+ result.Wait(5000);
+ resultStr = result.Result.Result.Value.ParseToString();
+ if (!resultStr.IsNullOrEmpty() && !resultStr.Contains("0,0"))
+ {
+ break;
+ }
+ }
+ }
+ Thread.Sleep(500);
+ GetRefreshPrintId();
+ Invoke(new Action(() => { ShowRefreshPrintId(row); }));
+
+ isOnlineWayBill = false;
+
+ //#endif
+ Invoke(new Action(() => { pbLoading.Visible = false; }));
+ //});
+ }
+
+ private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData, IRequest request)
+ {
+ }
+ private bool RequestHandler_BeforeResourceLoad(object sender, string url, string postData, IRequest request)
+ {
+ return false;
+ }
+ private void CefWebBrowser_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e)
+ {
+ }
+ private void CefWebBrowser_LoadError(object sender, CefSharp.LoadErrorEventArgs e)
+ {
+ }
+ private void CefWebBrowser_AddressChanged(object sender, CefSharp.AddressChangedEventArgs e)
+ {
+ }
+
public string GetDecryptOrder(string sourceOrderAddressStr)
{
//黄颖飞(4559),18466134204-4559,广西壮族自治区柳州市柳南区福柳宏都8-1-701 (拨打请输入分机号4559)
@@ -682,6 +1128,10 @@ namespace TemuKJD.WXForms.ProductForms
{
ShowShopError(shop, result);
break;
+ }
+ if (result.Contains("4527181286223364098"))
+ {
+
}
totalPage = Math.Ceiling(BaseRegex.GetIntJson(ref result, "totalNum") * 1m / pageSize).ParseToInt();
List orderLst = new List();
@@ -734,10 +1184,52 @@ namespace TemuKJD.WXForms.ProductForms
buyUrlNotesInfoLst = JsonHelper.DeserializeJsonToList(jObj.ParseToString());
}
+ // 查找对应商品
+ string getProdOnSaleRst = "";
+ JObject prodObjs = new JObject();
+ try
+ {
+ if (orderLst.Count > 0)
+ {
+ int onSaleStatusCode = -1;
+ pageSize = 50;
+ string spuIds = GetHtml.UrlEncodeUtf8(string.Join(",", orderLst.SelectMany(o => o.orderProductInfo.Select(p => p.productId)).Distinct()));
+ getProdOnSaleRst = WXClearNoVisit.searchProduct(shop, 1, pageSize, spuIds, onSaleStatusCode);
+ Thread.Sleep(Randomx.GetId(50, 100));
+ if (!getProdOnSaleRst.Contains("\"success\":true"))
+ {
+ ShowShopError(shop, getProdOnSaleRst);
+ break;
+ }
+ }
+ prodObjs = JsonHelper.JObjectParse(getProdOnSaleRst);
+ }
+ catch { }
+
foreach (var order in orderLst)
{
+ var orStr = JsonHelper.SerializeObject(order);
+ if (orStr.Contains("4527181286223364098") || orStr.Contains("4527546611026165767"))
+ {
+
+ }
+
foreach (var orderProd in order.orderProductInfo)
{
+ decimal? currentPrice = null;
+ try
+ {
+ var prod = prodObjs["productList"].FirstOrDefault(p => p["productId"].ParseToString() == orderProd.productId);
+ if (prod != null)
+ {
+ var prodStr = prod.ParseToString();
+ var sku = prod["skuList"].FirstOrDefault(p => p["skuId"].ParseToString() == orderProd.skuId);
+ if (sku != null)
+ currentPrice = sku["price"].ParseToDecimal() * 0.01m;
+ }
+ }
+ catch { }
+
var discount = orderProd.salePrice.ParseToInt() * orderProd.productCnt - orderProd.realPrice;
var orderAddresss = orderDecryptAddressLst.FirstOrDefault(a => a.order_id == order.commonInfo.orderId);
var buyUrlNotes = buyUrlNotesInfoLst.FirstOrDefault(b => b.spu_code == orderProd.spuCode);
@@ -770,25 +1262,34 @@ namespace TemuKJD.WXForms.ProductForms
orderProd.skuCode, // sku编码
"商品编码:\r\n" + orderProd.spuCode + "\r\n" + "规格编码:\r\n" + orderProd.skuCode, // 编码信息合集
+
+ orderProd.salePrice.ParseToInt() * 0.01m,
orderProd.productCnt, // 商品数量
orderProd.salePrice.ParseToInt() * 0.01m + "\r\nx" + orderProd.productCnt, // 商品单价/数量
orderProd.realPrice * 0.01m + (discount > 0 ? "\r\n优惠\r\n-" + discount * 0.01m : ""), // 商品总价/优惠
discount > 0 ? discount * 0.01m : null, // 商品优惠
+ currentPrice,
+ "改价",
+ "取消优惠",
+
order.commonInfo.statusStr, // 订单状态
buyUrlNotes?.buy_url_notes, // 采购地址
"编辑",
- DecryptAddress.IsNullOrEmpty() ? (order.acceptInfo.addressInfo.userName + " " + order.acceptInfo.addressInfo.telNumber + " " +
- order.acceptInfo.addressInfo.provinceName + " " + order.acceptInfo.addressInfo.cityName + " " +
+ DecryptAddress.IsNullOrEmpty() ? (order.acceptInfo.addressInfo.userName + " " + order.acceptInfo.addressInfo.telNumber + " " +
+ order.acceptInfo.addressInfo.provinceName + " " + order.acceptInfo.addressInfo.cityName + " " +
order.acceptInfo.addressInfo.countyName + " " + order.acceptInfo.addressInfo.detailInfo + " " +
" 未解密") : DecryptAddress, // 收件地址解密
"解密",
- "在线\r\n寄件",
"填写",
+ "", // 在线寄件打印单号
+ order.expressData?.type == 3 && order.expressData?.status != 1 ? order.expressData?.jumpPath?.Substring((order.expressData?.jumpPath).ParseToString().IndexOf("ewaybillOrderId=")).Replace("ewaybillOrderId=", "") : "",
+ order.expressData?.type == 3 && order.expressData?.status != 1 ? "在线\r\n寄件\r\n打印" : "在线\r\n寄件",
+
order.flagInfo.flagNotes, // 卖家备注
order.flagInfo.flagColor, // 卖家备注颜色
"修改",
@@ -796,22 +1297,8 @@ namespace TemuKJD.WXForms.ProductForms
);
var row = dgvOrder.Rows[rowIndex];
- SizeF textSize = TextRenderer.MeasureText(row.Cells["colProdInfo"].Value.ParseToString(), row.Cells["colProdInfo"].Style.Font,
- new Size(row.Cells["colProdInfo"].ContentBounds.Width, 500), TextFormatFlags.WordBreak);
-
- row.Height = Math.Max(textSize.Height + 20, 100).ParseToInt();
- // 根据卖家备注颜色显示文字颜色
- if (order.flagInfo.flagColor == 1)
- row.Cells["colNotes"].Style.ForeColor = Color.Red;
- if (order.flagInfo.flagColor == 2)
- row.Cells["colNotes"].Style.ForeColor = Color.Orange;
- if (order.flagInfo.flagColor == 3)
- row.Cells["colNotes"].Style.ForeColor = Color.Green;
- if (order.flagInfo.flagColor == 4)
- row.Cells["colNotes"].Style.ForeColor = Color.Blue;
-
- if (row.Cells["colReceiveInfo"].Value.ParseToString().Contains("未解密"))
- row.Cells["colReceiveInfo"].Style.ForeColor = Color.DarkGray;
+ ShowDgvRow(row, order);
+ ShowRefreshPrintId(row);
}));
}
}
@@ -825,6 +1312,45 @@ namespace TemuKJD.WXForms.ProductForms
}
}
+ private void ShowDgvRow(DataGridViewRow row, WxOrderInfoLite order = null)
+ {
+ SizeF textSize1 = TextRenderer.MeasureText(row.Cells["colProdInfo"].Value.ParseToString(), row.Cells["colProdInfo"].Style.Font,
+ new Size(row.Cells["colProdInfo"].ContentBounds.Width, 500), TextFormatFlags.WordBreak);
+ SizeF textSize2 = TextRenderer.MeasureText(row.Cells["colReceiveInfo"].Value.ParseToString(), row.Cells["colReceiveInfo"].Style.Font,
+ new Size(row.Cells["colReceiveInfo"].ContentBounds.Width, 500), TextFormatFlags.WordBreak);
+ row.Height = Math.Max(textSize2.Height, Math.Max(textSize1.Height, 80)).ParseToInt() + 20;
+
+ if (order != null)
+ {
+ // 根据卖家备注颜色显示文字颜色
+ row.Cells["colNotes"].Style.ForeColor = DefaultForeColor;
+ if (order.flagInfo.flagColor == 1)
+ row.Cells["colNotes"].Style.ForeColor = Color.Red;
+ if (order.flagInfo.flagColor == 2)
+ row.Cells["colNotes"].Style.ForeColor = Color.Orange;
+ if (order.flagInfo.flagColor == 3)
+ row.Cells["colNotes"].Style.ForeColor = Color.Green;
+ if (order.flagInfo.flagColor == 4)
+ row.Cells["colNotes"].Style.ForeColor = Color.Blue;
+ }
+
+ if (row.Cells["colReceiveInfo"].Value.ParseToString().Contains("未解密"))
+ row.Cells["colReceiveInfo"].Style.ForeColor = Color.DarkGray;
+
+ if (row.Cells["colOnlineWaybill"].Value.ParseToString() == "在线\r\n寄件\r\n打印")
+ {
+ (row.Cells["colOnlineWaybill"] as DataGridViewLinkCell).LinkColor = Color.Red; // Color.Blue
+ (row.Cells["colOnlineWaybill"] as DataGridViewLinkCell).VisitedLinkColor = Color.DarkRed; // Color.FromArgb(255, 128, 0, 128)
+ (row.Cells["colOnlineWaybill"] as DataGridViewLinkCell).ActiveLinkColor = Color.Orange; // Color.Red;
+ }
+ else
+ {
+ (row.Cells["colOnlineWaybill"] as DataGridViewLinkCell).LinkColor = Color.Blue;
+ (row.Cells["colOnlineWaybill"] as DataGridViewLinkCell).VisitedLinkColor = Color.FromArgb(255, 128, 0, 128);
+ (row.Cells["colOnlineWaybill"] as DataGridViewLinkCell).ActiveLinkColor = Color.Red;
+ }
+ }
+
private void btnClearDgv_Click(object sender, EventArgs e)
{
var rows = this.dgvOrder.Rows.Cast().ToList(); //Cast后Rows做foreach循环时仍会夹花跳过,所以要ToList转一个新的数组。
@@ -832,13 +1358,9 @@ namespace TemuKJD.WXForms.ProductForms
{
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.dgvOrder.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)
@@ -1093,7 +1615,7 @@ namespace TemuKJD.WXForms.ProductForms
foreach (var dgvr in dgvrs)
{
JObject jProd = new JObject();
- jProd["spuId"] = dgvr.Cells["colDraftId"].Value.ParseToString();
+ jProd["spuId"] = dgvr.Cells["colSpuId"].Value.ParseToString();
jProd["skuId"] = dgvr.Cells["colSkuId"].Value.ParseToString();
jProd["cancelScene"] = 2;
jArr.Add(jProd);
@@ -1298,6 +1820,56 @@ namespace TemuKJD.WXForms.ProductForms
row.Cells["colReceiveInfo"].Value = address;
row.Cells["colReceiveInfo"].Style.ForeColor = DefaultForeColor;
}
+
+ if (rows.FirstOrDefault() != null && rows.FirstOrDefault().Cells["colOnlineWaybillOrderId"].Value.ParseToString() != null &&
+ (BaseClass.UserAuthority.Contains("在线寄件") || BaseClass.ParentAuthority.Contains("在线寄件")))
+ {
+ var rst = WXOrderList.searchOnlineWaybill(shop, orderId);
+ if (!rst.Contains("\"code\":0"))
+ {
+ //BaseMsgForm.ShowError("在线寄件失败:" + rst, "错误", FormLevel.LARGE);
+ var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "errMsg", "errorMsg", "err_msg", "error_msg");
+ Invoke(new Action(() =>
+ {
+ foreach (var row in rows)
+ row.Cells["colOpResult"].Value = "填写收货地址成功, 但查询在线寄件失败:" + error;
+ pbLoading.Visible = false;
+ }));
+ return;
+ }
+
+ var ewaybillOrderId = BaseRegex.GetStringJson(ref rst, "ewaybillOrderId");
+ var waybillId = BaseRegex.GetStringJson(ref rst, "waybillId");
+ if (!ewaybillOrderId.IsNullOrEmpty() && !waybillId.IsNullOrEmpty() && ewaybillOrderId == rows.FirstOrDefault().Cells["colOnlineWaybillOrderId"].Value.ParseToString())
+ {
+ rst = WXOrderList.cancelOnlineWaybill(shop, ewaybillOrderId, waybillId);
+ if (!rst.Contains("\"code\":0"))
+ {
+ //BaseMsgForm.ShowError("在线寄件失败:" + rst, "错误", FormLevel.LARGE);
+ var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "errMsg", "errorMsg", "err_msg", "error_msg");
+ Invoke(new Action(() =>
+ {
+ foreach (var row in rows)
+ row.Cells["colOpResult"].Value = "填写收货地址成功, 但取消在线寄件失败:" + error;
+ pbLoading.Visible = false;
+ }));
+ return;
+ }
+ else
+ {
+ Invoke(new Action(() =>
+ {
+ foreach (var row in rows)
+ {
+ row.Cells["colOpResult"].Value = "填写收货地址成功, 取消在线寄件成功";
+ row.Cells["colOnlineWaybill"].Value = "在线\r\n寄件";
+ ShowDgvRow(row);
+ }
+ pbLoading.Visible = false;
+ }));
+ }
+ }
+ }
}
}
@@ -1436,6 +2008,132 @@ namespace TemuKJD.WXForms.ProductForms
dtpFilterEndTime.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1);
btnFilterOrder_Click(null, null);
}
+
+ private void btnRefreshPrintId_Click(object sender, EventArgs e)
+ {
+ GetRefreshPrintId();
+ foreach (DataGridViewRow row in dgvOrder.Rows)
+ {
+ ShowRefreshPrintId(row);
+ }
+ }
+
+ void GetRefreshPrintId()
+ {
+ try
+ {
+ lstPrintLog.Clear();
+ string logPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "WeChatShopPrintClient\\log");
+ DirectoryInfo dirInfo = new DirectoryInfo(logPath); // 创建DirectoryInfo对象
+ FileInfo[] files = dirInfo.GetFiles();
+ foreach (FileInfo file in files)
+ {
+ if (file.FullName.EndsWith(".log"))
+ {
+ string content = File.ReadAllText(file.FullName);
+ lstPrintLog.Add(content);
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ BaseMsgForm.ShowError("读取打印单号失败" + ex.Message);
+ }
+ }
+
+ void ShowRefreshPrintId(DataGridViewRow row)
+ {
+ var waybillOrderId = row.Cells["colOnlineWaybillOrderId"].Value.ParseToString();
+ if (!waybillOrderId.IsNullOrEmpty())
+ {
+ foreach (var fileStr in lstPrintLog)
+ {
+ //task 4527181286223364098
+ var index = fileStr.IndexOf("task " + waybillOrderId);
+ if (index > 50)
+ {
+ var str = fileStr.Substring(index - 50, 50 + ("task " + waybillOrderId).Length);
+ str = str.Replace("task " + waybillOrderId, "").Replace("printPage", "").Replace("requestID", "").Trim();
+ if (str.ParseToLong() > 0)
+ row.Cells["colPrintId"].Value = str;
+ break;
+ }
+ }
+ }
+ }
+
+ private void btnBatchOnlieWaybill_Click(object sender, EventArgs e)
+ {
+ var rows = this.dgvOrder.Rows.Cast().Where(r => r.Cells["colCheck"].Value.ParseToBool() == true).ToList();
+ if (rows.Count == 0)
+ {
+ BaseMsgForm.ShowError("请选择订单");
+ return;
+ }
+ if (cancellationTokenSource != null)
+ cancellationTokenSource.Cancel();
+ cancellationTokenSource = new CancellationTokenSource();
+
+ Task.Run(() =>
+ {
+ foreach (var row in rows)
+ {
+ var shopId = row.Cells["colSupplierId"].Value.ParseToString();
+ var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId);
+ if (shop != null)
+ {
+ if (cancellationTokenSource.IsCancellationRequested)
+ break;
+
+ if (!row.Cells["colPrintId"].Value.ParseToString().IsNullOrEmpty())
+ {
+ row.Cells["colOpResult"].Value = "已打印,跳过";
+ continue;
+ }
+
+ GetOnlineWayBill(shop, row);
+ }
+ }
+ Invoke(new Action(() =>
+ {
+ if (cancellationTokenSource.IsCancellationRequested)
+ BaseMsgForm.ShowInfo("批量在线寄件终止");
+ else
+ BaseMsgForm.ShowInfo("批量在线寄件完成");
+ }));
+ }, cancellationTokenSource.Token);
+ }
+
+ private void txtEditReceiveInfoAddress_TextChanged(object sender, EventArgs e)
+ {
+ txtEditReceiveInfoAddress.TextChanged -= txtEditReceiveInfoAddress_TextChanged;
+ if (txtEditReceiveInfoAddress.Text.Length > 25 && txtEditReceiveInfoAddress.Text.Substring(0, 25).Contains("*******"))
+ {
+ txtEditReceiveInfoAddress.Text = txtEditReceiveInfoAddress.Text.Substring(0, 25).Replace("*******", WaybillHelper.MobileHead[Randomx.GetId(WaybillHelper.MobileHead.Count)] + Randomx.GetNumber(4)) + txtEditReceiveInfoAddress.Text.Substring(25);
+ }
+ if (txtEditReceiveInfoAddress.Text.Length > 25 && txtEditReceiveInfoAddress.Text.Substring(0, 25).Contains("****"))
+ {
+ txtEditReceiveInfoAddress.Text = txtEditReceiveInfoAddress.Text.Substring(0, 25).Replace("****", Randomx.GetNumber(4)) + txtEditReceiveInfoAddress.Text.Substring(25);
+ }
+ if (txtEditReceiveInfoAddress.Text.Length > 5 && txtEditReceiveInfoAddress.Text.Substring(0, 5).Contains("**"))
+ {
+ txtEditReceiveInfoAddress.Text = txtEditReceiveInfoAddress.Text.Substring(0, 5).Replace("**", "") + txtEditReceiveInfoAddress.Text.Substring(5);
+ }
+ if (txtEditReceiveInfoAddress.Text.Length > 4 && txtEditReceiveInfoAddress.Text.Substring(0, 4).Contains("*"))
+ {
+ txtEditReceiveInfoAddress.Text = txtEditReceiveInfoAddress.Text.Substring(0, 4).Replace("*", "") + txtEditReceiveInfoAddress.Text.Substring(4);
+ }
+ txtEditReceiveInfoAddress.Text = txtEditReceiveInfoAddress.Text.Replace("\r", " ").Replace("\n", " ").Replace(" ", " ").Replace(" ", " ").Replace(" ", " ").Replace(" ", " ");
+ txtEditReceiveInfoAddress.TextChanged += txtEditReceiveInfoAddress_TextChanged;
+ }
+
+ private void panelEx2_Click(object sender, EventArgs e)
+ {
+ if (this.cancellationTokenSource != null)
+ this.cancellationTokenSource.Cancel();
+
+ isOnlineWayBill = false;
+ }
}
public class WXOrderList
@@ -1471,6 +2169,26 @@ namespace TemuKJD.WXForms.ProductForms
return result;
}
+ public static string EditPrice(ShopLoginInfo shop, string spuId, string skuId, int newPrice)
+ {
+ string url = "https://store.weixin.qq.com/shop-faas/mmecnodeproductlist/cgi/goods/listingUpdatePrice?token=&lang=zh_CN";
+ string body = @"{""skuList"":[{""spuId"":" + spuId + @",""skuId"":""" + skuId + @""",""salePrice"":" + newPrice + @"}],""uploadSource"":6}";
+ string refere = "https://store.weixin.qq.com/shop/goods/list";
+ var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, refere);
+ return result;
+ }
+
+
+ public static string EditPrice(ShopLoginInfo shop, JObject priceData)
+ {
+ string url = "https://store.weixin.qq.com/shop-faas/mmecnodeproductlist/cgi/goods/listingUpdatePrice?token=&lang=zh_CN";
+ //string body = @"{""skuList"":[{""spuId"":" + spuId + @",""skuId"":""" + skuId + @""",""salePrice"":" + newPrice + @"}],""uploadSource"":6}";
+ string body = JsonHelper.SerializeObject(priceData);
+ string refere = "https://store.weixin.qq.com/shop/goods/list";
+ var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, refere);
+ return result;
+ }
+
public static string decryptOrder(ShopLoginInfo shop, string orderId)
{
string url = "https://store.weixin.qq.com/shop-faas/mmchannelstradeorder/common/cgi/decryptOrder?token=&lang=zh_CN";
@@ -1504,6 +2222,34 @@ namespace TemuKJD.WXForms.ProductForms
//{"ret":0,"code":0,"responseContent":[{"ewaybillOrderId":"4525894132274036739","retcode":0,"errorMsg":"","deliveryErrorMsg":"success","waybillId":"YT2547223870618","deliveryId":"YTO","uuid":"1ef8b9e2-d68e-4e12-8bda-e188e246d5ae","errorType":0,"deliveryResultCode":"0","blockExplainUrl":{}}],"displayNewuserTips":false,"createSuccTips":"预计 明天上门取件"}
return result;
}
+
+ public static string searchOnlineWaybill(ShopLoginInfo shop, string orderId)
+ {
+ string url = "https://store.weixin.qq.com/shop-faas/mmecnodewaybill/alltoall/searchBill?token=&lang=zh_CN";
+ string body = @"{""createMode"":1,""orderId"":""" + orderId + @""",""cosignmentOrderId"":"""",""goodsTitle"":"""",""receiverPhone"":"""",""receiverName"":"""",""billStatus"":null,""orderStatus"":null,""offset"":0,""limit"":20,""waybillId"":"""",""payMethodList"":[],""platDisplayOrderStatusList"":[],""cosignmentOrderTime"":[],""cosignmentAssignTime"":[],""storeName"":"""",""orderNote"":"""",""deliveryOrderStatusList"":[10,20,40]}";
+ string refere = "https://store.weixin.qq.com/shop/waybill/allToAll";
+ var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, refere);
+ return result;
+ }
+
+ public static string cancelOnlineWaybill(ShopLoginInfo shop, string ewaybillOrderId, string waybillId)
+ {
+ string url = "https://store.weixin.qq.com/shop-faas/mmecnodewaybill/alltoall/platCancelOrder?token=&lang=zh_CN";
+ string body = @"{""requestContent"":[{""ewaybillOrderId"":""" + ewaybillOrderId + @""",""waybillId"":""" + waybillId + @""",""source"":1,""merchCancelReason"":""临时缺货,库存不足""}]}";
+ string refere = "https://store.weixin.qq.com/shop/waybill/allToAll";
+ var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, refere);
+ return result;
+ }
+
+
+ public static string cancelActivity(ShopLoginInfo shop, JObject activityData)
+ {
+ string url = "https://store.weixin.qq.com/shop-faas/mmeckolmarketingnode/activity/cgi/updateRequestProductList?token=&lang=zh_CN";
+ string body = JsonHelper.SerializeObject(activityData);
+ string refere = "https://store.weixin.qq.com/shop/marketingkol/activity/detail?id=1016&curTab=2";
+ var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, refere);
+ return result;
+ }
}
}
diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderListForm.resx b/TEMUKJD/WXForms/ProductForms/WXOrderListForm.resx
index ef44e20..72430cf 100644
--- a/TEMUKJD/WXForms/ProductForms/WXOrderListForm.resx
+++ b/TEMUKJD/WXForms/ProductForms/WXOrderListForm.resx
@@ -195,7 +195,7 @@
True
-
+
True
@@ -216,6 +216,9 @@
True
+
+ True
+
True
@@ -228,6 +231,15 @@
True
+
+ True
+
+
+ True
+
+
+ True
+
True
@@ -243,10 +255,16 @@
True
-
+
True
-
+
+ True
+
+
+ True
+
+
True
diff --git a/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs
index b76e345..aa6a67e 100644
--- a/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs
@@ -330,16 +330,16 @@ namespace TemuKJD.WXForms.ProductForms
// txtViewUvMin
//
this.txtViewUvMin.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtViewUvMin.Location = new System.Drawing.Point(1118, 41);
+ this.txtViewUvMin.Location = new System.Drawing.Point(1113, 41);
this.txtViewUvMin.Name = "txtViewUvMin";
- this.txtViewUvMin.Size = new System.Drawing.Size(72, 23);
+ this.txtViewUvMin.Size = new System.Drawing.Size(77, 23);
this.txtViewUvMin.TabIndex = 882;
this.txtViewUvMin.Visible = false;
//
// chkViewUvMin
//
this.chkViewUvMin.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.chkViewUvMin.Location = new System.Drawing.Point(1064, 42);
+ this.chkViewUvMin.Location = new System.Drawing.Point(1059, 42);
this.chkViewUvMin.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3);
this.chkViewUvMin.Name = "chkViewUvMin";
this.chkViewUvMin.Size = new System.Drawing.Size(48, 21);
@@ -356,10 +356,10 @@ namespace TemuKJD.WXForms.ProductForms
"",
"爆款数据",
"普通商品"});
- this.cmbHot.Location = new System.Drawing.Point(910, 7);
+ this.cmbHot.Location = new System.Drawing.Point(906, 7);
this.cmbHot.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbHot.Name = "cmbHot";
- this.cmbHot.Size = new System.Drawing.Size(145, 25);
+ this.cmbHot.Size = new System.Drawing.Size(144, 25);
this.cmbHot.TabIndex = 882;
this.cmbHot.Text = "普通商品";
this.cmbHot.Visible = false;
@@ -369,7 +369,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.lblHot.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblHot.AutoSize = true;
- this.lblHot.Location = new System.Drawing.Point(866, 9);
+ this.lblHot.Location = new System.Drawing.Point(862, 9);
this.lblHot.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblHot.Name = "lblHot";
this.lblHot.Size = new System.Drawing.Size(44, 17);
@@ -384,7 +384,7 @@ namespace TemuKJD.WXForms.ProductForms
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(1061, 5);
+ this.btnSearch.Location = new System.Drawing.Point(1056, 5);
this.btnSearch.Name = "btnSearch";
this.btnSearch.Size = new System.Drawing.Size(51, 25);
this.btnSearch.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -408,9 +408,9 @@ namespace TemuKJD.WXForms.ProductForms
this.btnEmpty.CanvasColor = System.Drawing.SystemColors.Control;
this.btnEmpty.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnEmpty.DisabledBackColor = System.Drawing.Color.Empty;
- this.btnEmpty.Location = new System.Drawing.Point(1118, 5);
+ this.btnEmpty.Location = new System.Drawing.Point(1113, 5);
this.btnEmpty.Name = "btnEmpty";
- this.btnEmpty.Size = new System.Drawing.Size(72, 25);
+ this.btnEmpty.Size = new System.Drawing.Size(77, 25);
this.btnEmpty.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnEmpty.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
this.btnEmpty.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
@@ -435,10 +435,10 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCat3.DropDownWidth = 1;
this.cmbCat3.FormattingEnabled = true;
this.cmbCat3.IntegralHeight = false;
- this.cmbCat3.Location = new System.Drawing.Point(715, 7);
+ this.cmbCat3.Location = new System.Drawing.Point(712, 7);
this.cmbCat3.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat3.Name = "cmbCat3";
- this.cmbCat3.Size = new System.Drawing.Size(145, 25);
+ this.cmbCat3.Size = new System.Drawing.Size(144, 25);
this.cmbCat3.TabIndex = 811;
this.cmbCat3.Text = "全部";
this.cmbCat3.SelectedIndexChanged += new System.EventHandler(this.cmbCat3_SelectedIndexChanged);
@@ -448,7 +448,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label17.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label17.AutoSize = true;
- this.label17.Location = new System.Drawing.Point(664, 9);
+ this.label17.Location = new System.Drawing.Point(661, 9);
this.label17.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label17.Name = "label17";
this.label17.Size = new System.Drawing.Size(51, 17);
@@ -463,10 +463,10 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCat2.DropDownWidth = 1;
this.cmbCat2.FormattingEnabled = true;
this.cmbCat2.IntegralHeight = false;
- this.cmbCat2.Location = new System.Drawing.Point(513, 7);
+ this.cmbCat2.Location = new System.Drawing.Point(511, 7);
this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat2.Name = "cmbCat2";
- this.cmbCat2.Size = new System.Drawing.Size(145, 25);
+ this.cmbCat2.Size = new System.Drawing.Size(144, 25);
this.cmbCat2.TabIndex = 804;
this.cmbCat2.Text = "全部";
this.cmbCat2.SelectedIndexChanged += new System.EventHandler(this.cmbCat2_SelectedIndexChanged);
@@ -476,7 +476,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label14.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label14.AutoSize = true;
- this.label14.Location = new System.Drawing.Point(462, 9);
+ this.label14.Location = new System.Drawing.Point(460, 9);
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);
@@ -491,10 +491,10 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCat1.DropDownWidth = 1;
this.cmbCat1.FormattingEnabled = true;
this.cmbCat1.IntegralHeight = false;
- this.cmbCat1.Location = new System.Drawing.Point(292, 7);
+ this.cmbCat1.Location = new System.Drawing.Point(291, 7);
this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat1.Name = "cmbCat1";
- this.cmbCat1.Size = new System.Drawing.Size(145, 25);
+ this.cmbCat1.Size = new System.Drawing.Size(144, 25);
this.cmbCat1.TabIndex = 805;
this.cmbCat1.Text = "全部";
this.cmbCat1.SelectedIndexChanged += new System.EventHandler(this.cmbCat1_SelectedIndexChanged);
@@ -504,7 +504,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label2.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(241, 9);
+ this.label2.Location = new System.Drawing.Point(240, 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);
@@ -517,7 +517,7 @@ namespace TemuKJD.WXForms.ProductForms
this.txtProdName.Location = new System.Drawing.Point(71, 6);
this.txtProdName.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtProdName.Name = "txtProdName";
- this.txtProdName.Size = new System.Drawing.Size(145, 23);
+ this.txtProdName.Size = new System.Drawing.Size(144, 23);
this.txtProdName.TabIndex = 427;
//
// label3
@@ -554,14 +554,14 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbWxSafe.Location = new System.Drawing.Point(71, 42);
this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxSafe.Name = "cmbWxSafe";
- this.cmbWxSafe.Size = new System.Drawing.Size(145, 25);
+ this.cmbWxSafe.Size = new System.Drawing.Size(144, 25);
this.cmbWxSafe.TabIndex = 676;
this.cmbWxSafe.Text = "安全+未校验";
//
// chkCatBoundMoreThan
//
this.chkCatBoundMoreThan.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.chkCatBoundMoreThan.Location = new System.Drawing.Point(225, 42);
+ this.chkCatBoundMoreThan.Location = new System.Drawing.Point(224, 42);
this.chkCatBoundMoreThan.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3);
this.chkCatBoundMoreThan.Name = "chkCatBoundMoreThan";
this.chkCatBoundMoreThan.Size = new System.Drawing.Size(64, 21);
@@ -573,10 +573,10 @@ namespace TemuKJD.WXForms.ProductForms
// txtCatBoundMoreThan
//
this.txtCatBoundMoreThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtCatBoundMoreThan.Location = new System.Drawing.Point(292, 41);
+ this.txtCatBoundMoreThan.Location = new System.Drawing.Point(291, 41);
this.txtCatBoundMoreThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtCatBoundMoreThan.Name = "txtCatBoundMoreThan";
- this.txtCatBoundMoreThan.Size = new System.Drawing.Size(145, 23);
+ this.txtCatBoundMoreThan.Size = new System.Drawing.Size(144, 23);
this.txtCatBoundMoreThan.TabIndex = 882;
this.txtCatBoundMoreThan.Text = "1000";
this.txtCatBoundMoreThan.Visible = false;
@@ -584,7 +584,7 @@ namespace TemuKJD.WXForms.ProductForms
// chkCatBoundLessThan
//
this.chkCatBoundLessThan.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.chkCatBoundLessThan.Location = new System.Drawing.Point(446, 42);
+ this.chkCatBoundLessThan.Location = new System.Drawing.Point(444, 42);
this.chkCatBoundLessThan.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3);
this.chkCatBoundLessThan.Name = "chkCatBoundLessThan";
this.chkCatBoundLessThan.Size = new System.Drawing.Size(64, 21);
@@ -596,10 +596,10 @@ namespace TemuKJD.WXForms.ProductForms
// txtCatBoundLessThan
//
this.txtCatBoundLessThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txtCatBoundLessThan.Location = new System.Drawing.Point(513, 41);
+ this.txtCatBoundLessThan.Location = new System.Drawing.Point(511, 41);
this.txtCatBoundLessThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtCatBoundLessThan.Name = "txtCatBoundLessThan";
- this.txtCatBoundLessThan.Size = new System.Drawing.Size(145, 23);
+ this.txtCatBoundLessThan.Size = new System.Drawing.Size(144, 23);
this.txtCatBoundLessThan.TabIndex = 883;
this.txtCatBoundLessThan.Text = "100000";
this.txtCatBoundLessThan.Visible = false;
@@ -608,10 +608,10 @@ namespace TemuKJD.WXForms.ProductForms
//
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(910, 42);
+ this.cmbGroupFilter.Location = new System.Drawing.Point(906, 42);
this.cmbGroupFilter.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbGroupFilter.Name = "cmbGroupFilter";
- this.cmbGroupFilter.Size = new System.Drawing.Size(145, 25);
+ this.cmbGroupFilter.Size = new System.Drawing.Size(144, 25);
this.cmbGroupFilter.TabIndex = 653;
this.cmbGroupFilter.Visible = false;
//
@@ -619,7 +619,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.lblSourceType.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblSourceType.AutoSize = true;
- this.lblSourceType.Location = new System.Drawing.Point(671, 44);
+ this.lblSourceType.Location = new System.Drawing.Point(668, 44);
this.lblSourceType.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblSourceType.Name = "lblSourceType";
this.lblSourceType.Size = new System.Drawing.Size(44, 17);
@@ -631,7 +631,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.lblGroup.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblGroup.AutoSize = true;
- this.lblGroup.Location = new System.Drawing.Point(866, 44);
+ this.lblGroup.Location = new System.Drawing.Point(862, 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);
@@ -653,10 +653,10 @@ namespace TemuKJD.WXForms.ProductForms
"机会商品",
"以图搜品",
"外部数据"});
- this.cmbSourceType.Location = new System.Drawing.Point(715, 42);
+ this.cmbSourceType.Location = new System.Drawing.Point(712, 42);
this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSourceType.Name = "cmbSourceType";
- this.cmbSourceType.Size = new System.Drawing.Size(145, 25);
+ this.cmbSourceType.Size = new System.Drawing.Size(144, 25);
this.cmbSourceType.TabIndex = 654;
this.cmbSourceType.Text = "厂商直采";
this.cmbSourceType.Visible = false;
diff --git a/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs b/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs
index 2b3f47e..a1b2f44 100644
--- a/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs
+++ b/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs
@@ -455,7 +455,7 @@ namespace TemuKJD.WXForms.TalkForms
}
});
}
- if (url1.StartsWith("https://mobile.yangkeduo.com/proxy/api/api/aristotle/order_list_v3"))
+ if (url1.StartsWith("https://mobile.yangkeduo.com/proxy/api/api/aristotle/order_list_v"))
{
Task.Run(() =>
{