diff --git a/AllBase/AllBase.csproj b/AllBase/AllBase.csproj index 36a794c..4786937 100644 --- a/AllBase/AllBase.csproj +++ b/AllBase/AllBase.csproj @@ -187,6 +187,7 @@ + diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index d3f76ff..92607c2 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -27,7 +27,7 @@ namespace AllBase /// /// 版本ID /// - public static int VersionCount = 635; + public static int VersionCount = 637; //public static int VersionCount = 613; /// diff --git a/AllBase/Model/Param/PDDCouponParam/PDDCouponParam.cs b/AllBase/Model/Param/PDDCouponParam/PDDCouponParam.cs new file mode 100644 index 0000000..2a664a8 --- /dev/null +++ b/AllBase/Model/Param/PDDCouponParam/PDDCouponParam.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace AllBase.Model.Param.PDDCouponParam +{ + public class PDDCouponParam + { + public bool? ignore_low_price { get; set; } = false; //false + public int? source_type { get; set; } //1242 + public List create_request_list { get; set; } = new List(); + public string tool_full_channel { get; set; } // "12110_76109_010921_77272" + } + + public class create_request + { + public long? goods_id { get; set; } // 837311546492, + public string batch_desc { get; set; } // "惊喜券", + public long? batch_start_time { get; set; } // 1760785200000, + public long? batch_end_time { get; set; } // 1760889599999, + public int? discount { get; set; } // 300, + public object init_quantity { get; set; } // 380, //有时候是int有时候是string + public int? user_limit { get; set; } // 2, 每人限领数量 + public int? period_type { get; set; } // 0, + public object duration { get; set; } = 7; // 7, //有时候是int有时候是string + public int? status { get; set; } = 2; // 2 + } +} diff --git a/AllBase/Model/Result/PDDResult/PDDCouponResult/PDDCouponGoodsListInfo.cs b/AllBase/Model/Result/PDDResult/PDDCouponResult/PDDCouponGoodsListInfo.cs index a54fe92..27cb0bd 100644 --- a/AllBase/Model/Result/PDDResult/PDDCouponResult/PDDCouponGoodsListInfo.cs +++ b/AllBase/Model/Result/PDDResult/PDDCouponResult/PDDCouponGoodsListInfo.cs @@ -8,12 +8,15 @@ namespace AllBase.Model.Result.PDDResult { public class PDDCouponGoodsListInfo { - public List existed_coupon_list { get; set; } - public List goods_list { get; set; } - public int? remaining_create_num { get; set; } - public int? total { get; set; } + public List existed_coupon_list { get; set; } = new List(); + public List goods_list { get; set; } = new List(); + public int? remaining_create_num { get; set; } = 1; + public int? total { get; set; } = 1; } + /// + /// 设置优惠券活动的商品列表 + /// public class PDDCouponGoods { public long? id { get; set; } // 834340794793 @@ -28,13 +31,18 @@ namespace AllBase.Model.Result.PDDResult public int? max_coupon_value_rule_code { get; set; } // 3, public int? quantity { get; set; } // 19980, public string thumb_url { get; set; } // "https://img.pddpic.com/gaudit-image/2025-10-11/53d910624aa2976ce40a6f86ee7c152d.jpeg", - public bool? is_filtered { get; set; } // false, + public bool? is_filtered { get; set; } // false, 如果是true则不能设置优惠券 + public string filtered_reason { get; set; } // "该商品已售罄" public int? filtered_reason_type { get; set; } // 0, public bool? is_selected { get; set; } // false, public int? recommend_coupon_value { get; set; } // 300, public int? recommend_coupon_value_type { get; set; } // 0, public List recommend_coupon_value_list { get; set; } public List activity_type_list { get; set; } // [ 10101, 101 ] + + // 自定义参数 + public string shopId { get; set; } + public string shopName { get; set; } } public class recommend_coupon_value_info @@ -43,4 +51,45 @@ namespace AllBase.Model.Result.PDDResult public int? recommend_coupon_value_type { get; set; } // 1 } + + public class PDDCreateCouponResult + { + public bool? has_errors { get; set; } + public List errors { get; set; } + public bool? has_create_fail { get; set; } + public List create_fails { get; set; } + public bool? has_low_price { get; set; } + public List low_price_infos { get; set; } + public List low_price_info_token_list { get; set; } + public int? success_num { get; set; } + } + public class PDDCreateCouponFail + { + + } + public class PDDCreateCouponLowPriceInfo + { + + } + + public class PDDCreateCouponError + { + public string error_item { get; set; } //"833145007089", + public string error_msg { get; set; } // "发行量需在1-1000000之间", + public long? error_code { get; set; } // 40003, + public bool? show_error_msg { get; set; } //false, + public long? goods_id { get; set; } // 833145007089, + public string goods_name { get; set; } // "鞋子男2025春秋新款男鞋大码韩版潮流软底休闲鞋透气运动鞋男", + public string goods_image { get; set; } // "https://img.pddpic.com/gaudit-image/2025-10-09/917efb2ca09067bd07882e98752bacf4.jpeg" + } + + public class PDDCreateCouponResultV2 + { + public bool? upload_status { get; set; } + public bool? has_error_msg { get; set; } + public List error_msg_list { get; set; } + public bool? need_phone_code { get; set; } + public List low_price_info_list { get; set; } + public string operate_sn { get; set; } + } } diff --git a/TEMUKJD/KJD.csproj b/TEMUKJD/KJD.csproj index dcf16da..524a804 100644 --- a/TEMUKJD/KJD.csproj +++ b/TEMUKJD/KJD.csproj @@ -441,11 +441,29 @@ SystemRemoveRestrictionsForm.cs - + Form - - PDDProductCouponForm.cs + + PDDProdCouponForm.cs + + + Form + + + PDDProdCouponJingXiForm.cs + + + Form + + + PDDProdCouponLingQuanZhongXinForm.cs + + + Form + + + PDDProdCouponShangPinLiJianForm.cs Form @@ -930,8 +948,17 @@ SystemRemoveRestrictionsForm.cs - - PDDProductCouponForm.cs + + PDDProdCouponForm.cs + + + PDDProdCouponJingXiForm.cs + + + PDDProdCouponLingQuanZhongXinForm.cs + + + PDDProdCouponShangPinLiJianForm.cs PDDProductForm.cs diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.Designer.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.Designer.cs index c429b45..f7f0ca3 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.Designer.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.Designer.cs @@ -30,6 +30,7 @@ { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DbProductSelectEditNotesForm)); this.panel2 = new System.Windows.Forms.Panel(); + this.label7 = new System.Windows.Forms.Label(); this.btnOk = new DevComponents.DotNetBar.PanelEx(); this.cmbUserNotes = new System.Windows.Forms.ComboBox(); this.cmbStatus = new System.Windows.Forms.ComboBox(); @@ -49,7 +50,6 @@ this.pictureBox1 = new System.Windows.Forms.PictureBox(); this.label8 = new System.Windows.Forms.Label(); this.txtNotes = new DevComponents.DotNetBar.Controls.TextBoxX(); - this.label7 = new System.Windows.Forms.Label(); this.panel2.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.SuspendLayout(); @@ -83,6 +83,15 @@ this.panel2.Size = new System.Drawing.Size(391, 546); this.panel2.TabIndex = 1; // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(32, 464); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(56, 17); + this.label7.TabIndex = 494; + this.label7.Text = "客户备注"; + // // btnOk // this.btnOk.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -193,7 +202,7 @@ this.lblTextCount.Name = "lblTextCount"; this.lblTextCount.Size = new System.Drawing.Size(106, 17); this.lblTextCount.TabIndex = 399; - this.lblTextCount.Text = "label5"; + this.lblTextCount.Text = "lblTextCount"; this.lblTextCount.TextAlign = System.Drawing.ContentAlignment.MiddleRight; // // txtSkc @@ -316,15 +325,6 @@ this.txtNotes.Size = new System.Drawing.Size(265, 44); this.txtNotes.TabIndex = 385; // - // label7 - // - this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(32, 464); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(56, 17); - this.label7.TabIndex = 494; - this.label7.Text = "客户备注"; - // // DbProductSelectEditNotesForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs index cb113d0..608f3e8 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs @@ -71,11 +71,16 @@ namespace TemuKJD.KJDForms.ProductSelectForms if (selectNotesType == SetProductSelectNotesType.DbProduct) { byte[] bytes = Encoding.GetEncoding("gb2312").GetBytes(txtProdName.Text.Trim()); - if (bytes.Length > 250) + if (bytes.Length > 1250) { BaseMsgForm.ShowError("商品标题不能大于250个字符!"); return; } + if (txtProdName.Text.Trim().Length > 500) + { + BaseMsgForm.ShowError("商品标题不能大于500个字!"); + return; + } data += "&fission_product_name=" + txtProdName.Text.Trim(); } var html = GetHtml.PostUtf8(url, data); @@ -106,9 +111,10 @@ namespace TemuKJD.KJDForms.ProductSelectForms private void txtProdName_TextChanged(object sender, EventArgs e) { - var textNumber = Encoding.GetEncoding("gb2312").GetBytes(txtProdName.Text.Trim()).Length; - lblTextCount.Text = "" + textNumber + "/250"; - if (textNumber > 250) + var textNumber = Encoding.GetEncoding("gb2312").GetBytes(txtProdName.Text.Trim()).Length; //250 + textNumber = txtProdName.Text.Trim().Length; //500 + lblTextCount.Text = "" + textNumber + "/500"; + if (textNumber > 500) lblTextCount.ForeColor = Color.Red; else lblTextCount.ForeColor = Color.Gray; diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.Designer.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.Designer.cs new file mode 100644 index 0000000..7a3a14f --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.Designer.cs @@ -0,0 +1,134 @@ + +namespace TemuKJD.PDDForms.ProductForms.CouponForms +{ + partial class PDDProdCouponForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.ucTabControl1 = new TemuKJD.UserComponent.UcTabControl(); + this.tabPage1 = new System.Windows.Forms.TabPage(); + this.tabPage2 = new System.Windows.Forms.TabPage(); + this.panel1 = new System.Windows.Forms.Panel(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); + this.splitContainer1.Panel1.SuspendLayout(); + this.splitContainer1.Panel2.SuspendLayout(); + this.splitContainer1.SuspendLayout(); + this.ucTabControl1.SuspendLayout(); + this.SuspendLayout(); + // + // splitContainer1 + // + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Name = "splitContainer1"; + this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer1.Panel1 + // + this.splitContainer1.Panel1.Controls.Add(this.ucTabControl1); + // + // splitContainer1.Panel2 + // + this.splitContainer1.Panel2.Controls.Add(this.panel1); + this.splitContainer1.Size = new System.Drawing.Size(1375, 548); + this.splitContainer1.SplitterDistance = 27; + this.splitContainer1.TabIndex = 1; + // + // ucTabControl1 + // + this.ucTabControl1.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(251)))), ((int)(((byte)(251)))), ((int)(((byte)(251))))); + this.ucTabControl1.Controls.Add(this.tabPage1); + this.ucTabControl1.Controls.Add(this.tabPage2); + this.ucTabControl1.Dock = System.Windows.Forms.DockStyle.Top; + this.ucTabControl1.Location = new System.Drawing.Point(0, 0); + this.ucTabControl1.Name = "ucTabControl1"; + this.ucTabControl1.SelectedIndex = 0; + this.ucTabControl1.ShowCloseButton = false; + this.ucTabControl1.Size = new System.Drawing.Size(1375, 31); + this.ucTabControl1.TabIndex = 0; + this.ucTabControl1.TabSelectColor = System.Drawing.Color.RoyalBlue; + this.ucTabControl1.TabTextColor = System.Drawing.Color.DimGray; + this.ucTabControl1.SelectedIndexChanged += new System.EventHandler(this.ucTabControl1_SelectedIndexChanged); + // + // tabPage1 + // + this.tabPage1.Location = new System.Drawing.Point(2, 26); + this.tabPage1.Name = "tabPage1"; + this.tabPage1.Padding = new System.Windows.Forms.Padding(3); + this.tabPage1.Size = new System.Drawing.Size(1369, 1); + this.tabPage1.TabIndex = 0; + this.tabPage1.Text = "tabPage1"; + this.tabPage1.UseVisualStyleBackColor = true; + // + // tabPage2 + // + this.tabPage2.Location = new System.Drawing.Point(2, 26); + this.tabPage2.Name = "tabPage2"; + this.tabPage2.Padding = new System.Windows.Forms.Padding(3); + this.tabPage2.Size = new System.Drawing.Size(1369, 1); + this.tabPage2.TabIndex = 1; + this.tabPage2.Text = "tabPage2"; + this.tabPage2.UseVisualStyleBackColor = true; + // + // panel1 + // + this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(1375, 517); + this.panel1.TabIndex = 0; + // + // PDDProdCouponForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.Color.White; + this.ClientSize = new System.Drawing.Size(1375, 548); + this.Controls.Add(this.splitContainer1); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Name = "PDDProdCouponForm"; + this.Text = "PDDProdCouponForm"; + this.Load += new System.EventHandler(this.PDDProdCouponForm_Load); + this.splitContainer1.Panel1.ResumeLayout(false); + this.splitContainer1.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); + this.splitContainer1.ResumeLayout(false); + this.ucTabControl1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private UserComponent.UcTabControl ucTabControl1; + private System.Windows.Forms.TabPage tabPage1; + private System.Windows.Forms.TabPage tabPage2; + private System.Windows.Forms.SplitContainer splitContainer1; + private System.Windows.Forms.Panel panel1; + } +} \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.cs new file mode 100644 index 0000000..7f51fa4 --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.cs @@ -0,0 +1,101 @@ +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.PDDForms.ProductForms.CouponForms +{ + public partial class PDDProdCouponForm : BaseForm + { + public Lazy prodCouponJingXiForm = new Lazy(); + public Lazy prodCouponShangPinLiJianForm = new Lazy(); + public Lazy prodCouponLingQuanZhongXinForm = new Lazy(); + + public PDDProdCouponForm() + { + InitializeComponent(); + } + + private void PDDProdCouponForm_Load(object sender, EventArgs e) + { + this.ucTabControl1.TabPages.Clear(); + this.ucTabControl1.TabPages.Add("惊喜券"); + this.ucTabControl1.TabPages.Add("商品立减券"); + this.ucTabControl1.TabPages.Add("领券中心券"); + this.ucTabControl1.SelectedIndex = 0; + ucTabControl1_SelectedIndexChanged(null, null); + } + + private void ucTabControl1_SelectedIndexChanged(object sender, EventArgs e) + { + if (ucTabControl1.SelectedTab == null) + return; + + switch (ucTabControl1.SelectedTab.Text) + { + case "惊喜券": + SetForm(prodCouponJingXiForm.Value); + break; + case "商品立减券": + SetForm(prodCouponShangPinLiJianForm.Value); + break; + case "领券中心券": + SetForm(prodCouponLingQuanZhongXinForm.Value); + break; + } + } + + /// + /// 显示隐藏层 + /// + /// + private void SetForm(Form f) + { + if (f == null) + { + foreach (Control form in panel1.Controls) + { + form.Visible = false; + if (form is Form) + { + panel1.Controls.Remove(form); + } + } + return; + } + + bool had = false; + string sCurrentFormName = f.Name; + for (int i = 0; i < panel1.Controls.Count; i++) + { + if (sCurrentFormName == panel1.Controls[i].Name) + { + had = true; + panel1.Controls[i].Visible = true; + } + else + { + panel1.Controls[i].Visible = false; + } + } + if (had) + { + return; + } + f.TopLevel = false; + f.Left = 0; + f.Top = 0; + f.FormBorderStyle = FormBorderStyle.None; + panel1.Controls.Add(f); + f.AutoSize = true; + f.Dock = DockStyle.Fill; + f.Show(); + } + } +} diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.resx b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponForm.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.Designer.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.Designer.cs similarity index 68% rename from TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.Designer.cs rename to TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.Designer.cs index 479e866..1e11498 100644 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.Designer.cs +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.Designer.cs @@ -1,7 +1,7 @@  -namespace TemuKJD.PDDForms.ProductForms +namespace TemuKJD.PDDForms.ProductForms.CouponForms { - partial class PDDProductCouponForm + partial class PDDProdCouponJingXiForm { /// /// Required designer variable. @@ -30,19 +30,28 @@ namespace TemuKJD.PDDForms.ProductForms private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - 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 dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); - this.btnClearDgv = new DevComponents.DotNetBar.PanelEx(); + this.label14 = new System.Windows.Forms.Label(); + this.label11 = new System.Windows.Forms.Label(); + this.numCouponValue = new System.Windows.Forms.NumericUpDown(); + this.label4 = new System.Windows.Forms.Label(); + this.numCoupon1KeepDays = new System.Windows.Forms.NumericUpDown(); + this.label3 = new System.Windows.Forms.Label(); + this.dtpCoupon1StartTime = new System.Windows.Forms.DateTimePicker(); + this.chkCoupon1 = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.line1 = new DevComponents.DotNetBar.Controls.Line(); this.cmbCoupon1TicketNum = new System.Windows.Forms.ComboBox(); this.label8 = new System.Windows.Forms.Label(); this.txtCoupon1Name = new System.Windows.Forms.TextBox(); this.label2 = new System.Windows.Forms.Label(); - this.btnDelSelect = new DevComponents.DotNetBar.PanelEx(); + this.btnCreate = new DevComponents.DotNetBar.PanelEx(); + this.label1 = new System.Windows.Forms.Label(); this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); this.btnRefreshShop = new DevComponents.DotNetBar.PanelEx(); this.splitContainer3 = new System.Windows.Forms.SplitContainer(); @@ -66,44 +75,27 @@ namespace TemuKJD.PDDForms.ProductForms this.colSupplierId = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colSupplierName = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.colProductSkcPic = new System.Windows.Forms.DataGridViewImageColumn(); + this.colImg = new System.Windows.Forms.DataGridViewImageColumn(); this.colSpuId = new System.Windows.Forms.DataGridViewLinkColumn(); - this.colExtCode = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colProductName = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colPrice = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colStock = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colFavorites = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colSales = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colSalesThirtyDays = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.colAddTime = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.colIsOnSale = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.colStatus = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colIsCanSet = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colOpResult = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.splitContainer4 = new System.Windows.Forms.SplitContainer(); this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); this.btnClear = new DevComponents.DotNetBar.PanelEx(); - this.panelEx1 = new DevComponents.DotNetBar.PanelEx(); - this.line1 = new DevComponents.DotNetBar.Controls.Line(); - this.ucCheckBox1 = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.dtpCoupon1StartTime = new System.Windows.Forms.DateTimePicker(); - this.label1 = new System.Windows.Forms.Label(); - this.label3 = new System.Windows.Forms.Label(); - this.numCoupon1KeepDays = new System.Windows.Forms.NumericUpDown(); - this.label4 = new System.Windows.Forms.Label(); - this.ucCheckBox2 = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.label5 = new System.Windows.Forms.Label(); - this.numericUpDown1 = new System.Windows.Forms.NumericUpDown(); - this.label6 = new System.Windows.Forms.Label(); - this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker(); - this.textBox1 = new System.Windows.Forms.TextBox(); - this.label7 = new System.Windows.Forms.Label(); - this.label9 = new System.Windows.Forms.Label(); - this.line2 = new DevComponents.DotNetBar.Controls.Line(); + this.btnCancel = new DevComponents.DotNetBar.PanelEx(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); this.splitContainer1.SuspendLayout(); this.ucGroupBoxEx2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numCouponValue)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numCoupon1KeepDays)).BeginInit(); this.ucGroupBoxEx1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit(); this.splitContainer3.Panel1.SuspendLayout(); @@ -121,8 +113,6 @@ namespace TemuKJD.PDDForms.ProductForms this.splitContainer4.Panel1.SuspendLayout(); this.splitContainer4.Panel2.SuspendLayout(); this.splitContainer4.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numCoupon1KeepDays)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit(); this.SuspendLayout(); // // splitContainer1 @@ -141,9 +131,9 @@ namespace TemuKJD.PDDForms.ProductForms // splitContainer1.Panel2 // this.splitContainer1.Panel2.Controls.Add(this.splitContainer3); - this.splitContainer1.Size = new System.Drawing.Size(1312, 583); + this.splitContainer1.Size = new System.Drawing.Size(1169, 515); this.splitContainer1.SplitterDistance = 140; - this.splitContainer1.TabIndex = 13; + this.splitContainer1.TabIndex = 14; // // ucGroupBoxEx2 // @@ -152,60 +142,125 @@ namespace TemuKJD.PDDForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; - this.ucGroupBoxEx2.Controls.Add(this.line2); - this.ucGroupBoxEx2.Controls.Add(this.label5); - this.ucGroupBoxEx2.Controls.Add(this.numericUpDown1); - this.ucGroupBoxEx2.Controls.Add(this.label6); - this.ucGroupBoxEx2.Controls.Add(this.dateTimePicker1); - this.ucGroupBoxEx2.Controls.Add(this.textBox1); - this.ucGroupBoxEx2.Controls.Add(this.label7); - this.ucGroupBoxEx2.Controls.Add(this.label9); - this.ucGroupBoxEx2.Controls.Add(this.ucCheckBox2); + this.ucGroupBoxEx2.Controls.Add(this.label14); + this.ucGroupBoxEx2.Controls.Add(this.label11); + this.ucGroupBoxEx2.Controls.Add(this.numCouponValue); this.ucGroupBoxEx2.Controls.Add(this.label4); this.ucGroupBoxEx2.Controls.Add(this.numCoupon1KeepDays); this.ucGroupBoxEx2.Controls.Add(this.label3); this.ucGroupBoxEx2.Controls.Add(this.dtpCoupon1StartTime); - this.ucGroupBoxEx2.Controls.Add(this.ucCheckBox1); + this.ucGroupBoxEx2.Controls.Add(this.chkCoupon1); this.ucGroupBoxEx2.Controls.Add(this.line1); - this.ucGroupBoxEx2.Controls.Add(this.btnClearDgv); this.ucGroupBoxEx2.Controls.Add(this.cmbCoupon1TicketNum); this.ucGroupBoxEx2.Controls.Add(this.label8); this.ucGroupBoxEx2.Controls.Add(this.txtCoupon1Name); this.ucGroupBoxEx2.Controls.Add(this.label2); - this.ucGroupBoxEx2.Controls.Add(this.btnDelSelect); + this.ucGroupBoxEx2.Controls.Add(this.btnCreate); this.ucGroupBoxEx2.Controls.Add(this.label1); this.ucGroupBoxEx2.Location = new System.Drawing.Point(147, 2); this.ucGroupBoxEx2.Name = "ucGroupBoxEx2"; - this.ucGroupBoxEx2.Size = new System.Drawing.Size(1162, 140); + this.ucGroupBoxEx2.Size = new System.Drawing.Size(1019, 140); this.ucGroupBoxEx2.TabIndex = 667; this.ucGroupBoxEx2.TabStop = false; this.ucGroupBoxEx2.Text = "商品查询"; // - // btnClearDgv + // label14 // - this.btnClearDgv.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnClearDgv.CanvasColor = System.Drawing.SystemColors.Control; - this.btnClearDgv.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnClearDgv.DisabledBackColor = System.Drawing.Color.Empty; - this.btnClearDgv.Location = new System.Drawing.Point(1006, 72); - this.btnClearDgv.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); - this.btnClearDgv.Name = "btnClearDgv"; - this.btnClearDgv.Size = new System.Drawing.Size(124, 23); - this.btnClearDgv.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnClearDgv.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnClearDgv.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnClearDgv.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; - this.btnClearDgv.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnClearDgv.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; - this.btnClearDgv.Style.GradientAngle = 90; - this.btnClearDgv.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; - this.btnClearDgv.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnClearDgv.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnClearDgv.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnClearDgv.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; - this.btnClearDgv.TabIndex = 612; - this.btnClearDgv.Text = "清空列表选中"; - this.btnClearDgv.Visible = false; + this.label14.AutoSize = true; + this.label14.Location = new System.Drawing.Point(331, 35); + this.label14.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label14.Name = "label14"; + this.label14.Size = new System.Drawing.Size(20, 17); + this.label14.TabIndex = 715; + this.label14.Text = "元"; + // + // label11 + // + this.label11.AutoSize = true; + this.label11.Location = new System.Drawing.Point(222, 35); + this.label11.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label11.Name = "label11"; + this.label11.Size = new System.Drawing.Size(68, 17); + this.label11.TabIndex = 714; + this.label11.Text = "优惠券金额"; + // + // numCouponValue + // + this.numCouponValue.Location = new System.Drawing.Point(290, 32); + this.numCouponValue.Name = "numCouponValue"; + this.numCouponValue.Size = new System.Drawing.Size(41, 23); + this.numCouponValue.TabIndex = 713; + this.numCouponValue.Value = new decimal(new int[] { + 2, + 0, + 0, + 0}); + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(133, 104); + this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(20, 17); + this.label4.TabIndex = 665; + this.label4.Text = "天"; + // + // numCoupon1KeepDays + // + this.numCoupon1KeepDays.Location = new System.Drawing.Point(91, 101); + this.numCoupon1KeepDays.Maximum = new decimal(new int[] { + 90, + 0, + 0, + 0}); + this.numCoupon1KeepDays.Name = "numCoupon1KeepDays"; + this.numCoupon1KeepDays.Size = new System.Drawing.Size(41, 23); + this.numCoupon1KeepDays.TabIndex = 664; + this.numCoupon1KeepDays.Value = new decimal(new int[] { + 90, + 0, + 0, + 0}); + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(10, 104); + this.label3.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(80, 17); + this.label3.TabIndex = 663; + this.label3.Text = "活动时间持续"; + // + // dtpCoupon1StartTime + // + this.dtpCoupon1StartTime.Location = new System.Drawing.Point(67, 72); + this.dtpCoupon1StartTime.Name = "dtpCoupon1StartTime"; + this.dtpCoupon1StartTime.Size = new System.Drawing.Size(130, 23); + this.dtpCoupon1StartTime.TabIndex = 660; + // + // chkCoupon1 + // + this.chkCoupon1.AutoSize = true; + this.chkCoupon1.Checked = true; + this.chkCoupon1.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkCoupon1.Location = new System.Drawing.Point(14, 19); + this.chkCoupon1.Name = "chkCoupon1"; + this.chkCoupon1.Size = new System.Drawing.Size(87, 21); + this.chkCoupon1.TabIndex = 659; + this.chkCoupon1.Text = "创建惊喜券"; + this.chkCoupon1.UseVisualStyleBackColor = true; + // + // line1 + // + this.line1.ForeColor = System.Drawing.SystemColors.ScrollBar; + this.line1.Location = new System.Drawing.Point(200, 19); + this.line1.Name = "line1"; + this.line1.Size = new System.Drawing.Size(14, 106); + this.line1.TabIndex = 658; + this.line1.Text = "line1"; + this.line1.VerticalLine = true; // // cmbCoupon1TicketNum // @@ -248,29 +303,40 @@ namespace TemuKJD.PDDForms.ProductForms this.label2.TabIndex = 490; this.label2.Text = "券名称"; // - // btnDelSelect + // btnCreate // - this.btnDelSelect.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnDelSelect.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnDelSelect.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnDelSelect.DisabledBackColor = System.Drawing.Color.Empty; - this.btnDelSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnDelSelect.Location = new System.Drawing.Point(1006, 32); - this.btnDelSelect.Name = "btnDelSelect"; - this.btnDelSelect.Size = new System.Drawing.Size(124, 23); - this.btnDelSelect.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnDelSelect.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnDelSelect.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnDelSelect.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnDelSelect.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnDelSelect.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnDelSelect.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnDelSelect.Style.GradientAngle = 90; - this.btnDelSelect.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnDelSelect.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnDelSelect.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnDelSelect.TabIndex = 468; - this.btnDelSelect.Text = "删除选中记录"; + this.btnCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnCreate.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnCreate.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnCreate.DisabledBackColor = System.Drawing.Color.Empty; + this.btnCreate.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnCreate.Location = new System.Drawing.Point(883, 32); + this.btnCreate.Name = "btnCreate"; + this.btnCreate.Size = new System.Drawing.Size(104, 23); + this.btnCreate.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnCreate.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnCreate.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnCreate.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnCreate.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnCreate.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnCreate.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnCreate.Style.GradientAngle = 90; + this.btnCreate.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnCreate.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnCreate.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnCreate.TabIndex = 468; + this.btnCreate.Text = "开始创建"; + this.btnCreate.Click += new System.EventHandler(this.btnCreate_Click); + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(10, 75); + this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(56, 17); + this.label1.TabIndex = 662; + this.label1.Text = "领取时间"; // // ucGroupBoxEx1 // @@ -309,6 +375,7 @@ namespace TemuKJD.PDDForms.ProductForms this.btnRefreshShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.btnRefreshShop.TabIndex = 431; this.btnRefreshShop.Text = "刷新店铺"; + this.btnRefreshShop.Click += new System.EventHandler(this.btnRefreshShop_Click); // // splitContainer3 // @@ -325,8 +392,8 @@ namespace TemuKJD.PDDForms.ProductForms // splitContainer3.Panel2 // this.splitContainer3.Panel2.Controls.Add(this.splitContainer4); - this.splitContainer3.Size = new System.Drawing.Size(1312, 439); - this.splitContainer3.SplitterDistance = 409; + this.splitContainer3.Size = new System.Drawing.Size(1169, 371); + this.splitContainer3.SplitterDistance = 341; this.splitContainer3.TabIndex = 1; // // splitContainer2 @@ -347,7 +414,7 @@ namespace TemuKJD.PDDForms.ProductForms this.splitContainer2.Panel2.Controls.Add(this.panel1); this.splitContainer2.Panel2.Controls.Add(this.dgvProduct); this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); - this.splitContainer2.Size = new System.Drawing.Size(1312, 409); + this.splitContainer2.Size = new System.Drawing.Size(1169, 341); this.splitContainer2.SplitterDistance = 300; this.splitContainer2.TabIndex = 0; // @@ -355,18 +422,18 @@ namespace TemuKJD.PDDForms.ProductForms // this.dgvShop.AllowUserToAddRows = false; this.dgvShop.AllowUserToDeleteRows = false; - dataGridViewCellStyle16.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle16; + dataGridViewCellStyle6.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle6; this.dgvShop.BackgroundColor = System.Drawing.Color.White; this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle17.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle17; + dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle7.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7; this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colSelect, @@ -385,8 +452,9 @@ namespace TemuKJD.PDDForms.ProductForms this.dgvShop.ReadOnly = true; this.dgvShop.RowHeadersWidth = 25; this.dgvShop.RowTemplate.Height = 23; - this.dgvShop.Size = new System.Drawing.Size(296, 409); + this.dgvShop.Size = new System.Drawing.Size(296, 341); this.dgvShop.TabIndex = 6; + this.dgvShop.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvShop_CellContentClick); // // colSelect // @@ -474,7 +542,7 @@ namespace TemuKJD.PDDForms.ProductForms // this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbLoading.Location = new System.Drawing.Point(479, 179); + this.pbLoading.Location = new System.Drawing.Point(407, 145); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -490,7 +558,7 @@ namespace TemuKJD.PDDForms.ProductForms this.panel1.Controls.Add(this.ucSplitPage1); this.panel1.Location = new System.Drawing.Point(36, 53); this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(934, 323); + this.panel1.Size = new System.Drawing.Size(791, 255); this.panel1.TabIndex = 189; // // ucSplitPage1 @@ -498,7 +566,7 @@ namespace TemuKJD.PDDForms.ProductForms this.ucSplitPage1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.ucSplitPage1.CurrentPage = 1; this.ucSplitPage1.IsShowPageSize = false; - this.ucSplitPage1.Location = new System.Drawing.Point(349, 286); + this.ucSplitPage1.Location = new System.Drawing.Point(206, 218); this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); this.ucSplitPage1.Name = "ucSplitPage1"; this.ucSplitPage1.Padding = new System.Windows.Forms.Padding(0, 0, 1, 0); @@ -512,44 +580,42 @@ namespace TemuKJD.PDDForms.ProductForms // this.dgvProduct.AllowUserToAddRows = false; this.dgvProduct.AllowUserToDeleteRows = false; - dataGridViewCellStyle18.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle18; + dataGridViewCellStyle8.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle8; this.dgvProduct.BackgroundColor = System.Drawing.Color.White; this.dgvProduct.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle19.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle19.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle19.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle19.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle19.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle19; + dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle9.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle9; this.dgvProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colCheck, this.colSupplierId, this.colSupplierName, this.colImgUrl, - this.colProductSkcPic, + this.colImg, this.colSpuId, - this.colExtCode, this.colProductName, this.colPrice, this.colStock, this.colFavorites, this.colSales, this.colSalesThirtyDays, - this.colAddTime, - this.colIsOnSale, - this.colStatus, + this.colIsCanSet, this.colOpResult}); this.dgvProduct.Dock = System.Windows.Forms.DockStyle.Fill; this.dgvProduct.Location = new System.Drawing.Point(0, 0); this.dgvProduct.Name = "dgvProduct"; this.dgvProduct.ReadOnly = true; this.dgvProduct.RowTemplate.Height = 23; - this.dgvProduct.Size = new System.Drawing.Size(1004, 409); + this.dgvProduct.Size = new System.Drawing.Size(861, 341); this.dgvProduct.TabIndex = 187; + this.dgvProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProduct_CellContentClick); // // colCheck // @@ -581,13 +647,13 @@ namespace TemuKJD.PDDForms.ProductForms this.colImgUrl.ReadOnly = true; this.colImgUrl.Visible = false; // - // colProductSkcPic + // colImg // - this.colProductSkcPic.HeaderText = "图片"; - this.colProductSkcPic.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom; - this.colProductSkcPic.Name = "colProductSkcPic"; - this.colProductSkcPic.ReadOnly = true; - this.colProductSkcPic.Width = 60; + this.colImg.HeaderText = "图片"; + this.colImg.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom; + this.colImg.Name = "colImg"; + this.colImg.ReadOnly = true; + this.colImg.Width = 60; // // colSpuId // @@ -598,40 +664,35 @@ namespace TemuKJD.PDDForms.ProductForms this.colSpuId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; this.colSpuId.Width = 80; // - // colExtCode - // - this.colExtCode.HeaderText = "商品编码"; - this.colExtCode.Name = "colExtCode"; - this.colExtCode.ReadOnly = true; - // // colProductName // - dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProductName.DefaultCellStyle = dataGridViewCellStyle20; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductName.DefaultCellStyle = dataGridViewCellStyle10; this.colProductName.HeaderText = "商品标题"; this.colProductName.Name = "colProductName"; this.colProductName.ReadOnly = true; - this.colProductName.Width = 180; + this.colProductName.Width = 260; // // colPrice // this.colPrice.HeaderText = "价格"; this.colPrice.Name = "colPrice"; this.colPrice.ReadOnly = true; - this.colPrice.Width = 80; + this.colPrice.Width = 90; // // colStock // this.colStock.HeaderText = "库存"; this.colStock.Name = "colStock"; this.colStock.ReadOnly = true; - this.colStock.Width = 50; + this.colStock.Width = 70; // // colFavorites // this.colFavorites.HeaderText = "收藏"; this.colFavorites.Name = "colFavorites"; this.colFavorites.ReadOnly = true; + this.colFavorites.Visible = false; this.colFavorites.Width = 50; // // colSales @@ -639,6 +700,7 @@ namespace TemuKJD.PDDForms.ProductForms this.colSales.HeaderText = "总销量"; this.colSales.Name = "colSales"; this.colSales.ReadOnly = true; + this.colSales.Visible = false; this.colSales.Width = 60; // // colSalesThirtyDays @@ -646,27 +708,14 @@ namespace TemuKJD.PDDForms.ProductForms this.colSalesThirtyDays.HeaderText = "30日销量"; this.colSalesThirtyDays.Name = "colSalesThirtyDays"; this.colSalesThirtyDays.ReadOnly = true; + this.colSalesThirtyDays.Visible = false; this.colSalesThirtyDays.Width = 70; // - // colAddTime + // colIsCanSet // - this.colAddTime.FillWeight = 110F; - this.colAddTime.HeaderText = "创建时间"; - this.colAddTime.Name = "colAddTime"; - this.colAddTime.ReadOnly = true; - // - // colIsOnSale - // - this.colIsOnSale.HeaderText = "在售/下架"; - this.colIsOnSale.Name = "colIsOnSale"; - this.colIsOnSale.ReadOnly = true; - this.colIsOnSale.Width = 80; - // - // colStatus - // - this.colStatus.HeaderText = "审核状态"; - this.colStatus.Name = "colStatus"; - this.colStatus.ReadOnly = true; + this.colIsCanSet.HeaderText = "是否可设置"; + this.colIsCanSet.Name = "colIsCanSet"; + this.colIsCanSet.ReadOnly = true; // // colOpResult // @@ -689,9 +738,9 @@ namespace TemuKJD.PDDForms.ProductForms // splitContainer4.Panel2 // this.splitContainer4.Panel2.Controls.Add(this.btnClear); - this.splitContainer4.Panel2.Controls.Add(this.panelEx1); - this.splitContainer4.Size = new System.Drawing.Size(1312, 26); - this.splitContainer4.SplitterDistance = 621; + this.splitContainer4.Panel2.Controls.Add(this.btnCancel); + this.splitContainer4.Size = new System.Drawing.Size(1169, 26); + this.splitContainer4.SplitterDistance = 478; this.splitContainer4.TabIndex = 3; // // statusBar @@ -702,7 +751,7 @@ namespace TemuKJD.PDDForms.ProductForms this.statusBar.Location = new System.Drawing.Point(0, 0); this.statusBar.Margin = new System.Windows.Forms.Padding(0); this.statusBar.Name = "statusBar"; - this.statusBar.Size = new System.Drawing.Size(621, 26); + this.statusBar.Size = new System.Drawing.Size(478, 26); this.statusBar.TabIndex = 2; // // btnClear @@ -731,215 +780,49 @@ namespace TemuKJD.PDDForms.ProductForms this.btnClear.Text = "清空结果"; this.btnClear.Visible = false; // - // panelEx1 + // btnCancel // - this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control; - this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty; - this.panelEx1.Location = new System.Drawing.Point(568, 1); - this.panelEx1.Name = "panelEx1"; - this.panelEx1.Size = new System.Drawing.Size(115, 21); - this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center; - this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; - this.panelEx1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; - this.panelEx1.Style.GradientAngle = 90; - this.panelEx1.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; - this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.panelEx1.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; - this.panelEx1.TabIndex = 668; - this.panelEx1.Text = "停止当前操作"; + this.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(568, 1); + this.btnCancel.Name = "btnCancel"; + this.btnCancel.Size = new System.Drawing.Size(115, 21); + 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 = 668; + this.btnCancel.Text = "停止当前操作"; + this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click); // - // line1 - // - this.line1.ForeColor = System.Drawing.SystemColors.ScrollBar; - this.line1.Location = new System.Drawing.Point(199, 19); - this.line1.Name = "line1"; - this.line1.Size = new System.Drawing.Size(14, 106); - this.line1.TabIndex = 658; - this.line1.Text = "line1"; - this.line1.VerticalLine = true; - // - // ucCheckBox1 - // - this.ucCheckBox1.AutoSize = true; - this.ucCheckBox1.Checked = true; - this.ucCheckBox1.CheckState = System.Windows.Forms.CheckState.Checked; - this.ucCheckBox1.Location = new System.Drawing.Point(14, 19); - this.ucCheckBox1.Name = "ucCheckBox1"; - this.ucCheckBox1.Size = new System.Drawing.Size(87, 21); - this.ucCheckBox1.TabIndex = 659; - this.ucCheckBox1.Text = "创建惊喜券"; - this.ucCheckBox1.UseVisualStyleBackColor = true; - // - // dtpCoupon1StartTime - // - this.dtpCoupon1StartTime.Location = new System.Drawing.Point(67, 72); - this.dtpCoupon1StartTime.Name = "dtpCoupon1StartTime"; - this.dtpCoupon1StartTime.Size = new System.Drawing.Size(130, 23); - this.dtpCoupon1StartTime.TabIndex = 660; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(10, 75); - this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(56, 17); - this.label1.TabIndex = 662; - this.label1.Text = "领取时间"; - // - // label3 - // - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(10, 104); - this.label3.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(80, 17); - this.label3.TabIndex = 663; - this.label3.Text = "活动时间持续"; - // - // numCoupon1KeepDays - // - this.numCoupon1KeepDays.Location = new System.Drawing.Point(91, 101); - this.numCoupon1KeepDays.Maximum = new decimal(new int[] { - 90, - 0, - 0, - 0}); - this.numCoupon1KeepDays.Name = "numCoupon1KeepDays"; - this.numCoupon1KeepDays.Size = new System.Drawing.Size(41, 23); - this.numCoupon1KeepDays.TabIndex = 664; - this.numCoupon1KeepDays.Value = new decimal(new int[] { - 90, - 0, - 0, - 0}); - // - // label4 - // - this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(133, 104); - this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(20, 17); - this.label4.TabIndex = 665; - this.label4.Text = "天"; - // - // ucCheckBox2 - // - this.ucCheckBox2.AutoSize = true; - this.ucCheckBox2.Checked = true; - this.ucCheckBox2.CheckState = System.Windows.Forms.CheckState.Checked; - this.ucCheckBox2.Location = new System.Drawing.Point(217, 19); - this.ucCheckBox2.Name = "ucCheckBox2"; - this.ucCheckBox2.Size = new System.Drawing.Size(111, 21); - this.ucCheckBox2.TabIndex = 666; - this.ucCheckBox2.Text = "创建商品立减券"; - this.ucCheckBox2.UseVisualStyleBackColor = true; - // - // label5 - // - this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(336, 104); - this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(20, 17); - this.label5.TabIndex = 673; - this.label5.Text = "天"; - // - // numericUpDown1 - // - this.numericUpDown1.Location = new System.Drawing.Point(294, 101); - this.numericUpDown1.Maximum = new decimal(new int[] { - 90, - 0, - 0, - 0}); - this.numericUpDown1.Name = "numericUpDown1"; - this.numericUpDown1.Size = new System.Drawing.Size(41, 23); - this.numericUpDown1.TabIndex = 672; - this.numericUpDown1.Value = new decimal(new int[] { - 90, - 0, - 0, - 0}); - // - // label6 - // - this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(213, 104); - this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(80, 17); - this.label6.TabIndex = 671; - this.label6.Text = "活动时间持续"; - // - // dateTimePicker1 - // - this.dateTimePicker1.Location = new System.Drawing.Point(270, 72); - this.dateTimePicker1.Name = "dateTimePicker1"; - this.dateTimePicker1.Size = new System.Drawing.Size(130, 23); - this.dateTimePicker1.TabIndex = 669; - // - // textBox1 - // - this.textBox1.Location = new System.Drawing.Point(256, 43); - this.textBox1.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.textBox1.Name = "textBox1"; - this.textBox1.Size = new System.Drawing.Size(144, 23); - this.textBox1.TabIndex = 667; - this.textBox1.Text = "惊喜券"; - // - // label7 - // - this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(213, 46); - this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(44, 17); - this.label7.TabIndex = 668; - this.label7.Text = "券名称"; - // - // label9 - // - this.label9.AutoSize = true; - this.label9.Location = new System.Drawing.Point(213, 75); - this.label9.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label9.Name = "label9"; - this.label9.Size = new System.Drawing.Size(56, 17); - this.label9.TabIndex = 670; - this.label9.Text = "领取时间"; - // - // line2 - // - this.line2.ForeColor = System.Drawing.SystemColors.ScrollBar; - this.line2.Location = new System.Drawing.Point(403, 19); - this.line2.Name = "line2"; - this.line2.Size = new System.Drawing.Size(14, 106); - this.line2.TabIndex = 674; - this.line2.Text = "line2"; - this.line2.VerticalLine = true; - // - // PDDProductCouponForm + // PDDProdCouponJingXiForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; this.BackColor = System.Drawing.Color.White; - this.ClientSize = new System.Drawing.Size(1312, 583); + this.ClientSize = new System.Drawing.Size(1169, 515); this.Controls.Add(this.splitContainer1); this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.Name = "PDDProductCouponForm"; - this.Text = "PDDProductCouponForm"; + this.Name = "PDDProdCouponJingXiForm"; + this.Text = "PDDProdCouponJingXiForm"; + this.Load += new System.EventHandler(this.PDDProductCouponForm_Load); + this.VisibleChanged += new System.EventHandler(this.PDDProductCouponForm_VisibleChanged); this.splitContainer1.Panel1.ResumeLayout(false); this.splitContainer1.Panel2.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); this.splitContainer1.ResumeLayout(false); this.ucGroupBoxEx2.ResumeLayout(false); this.ucGroupBoxEx2.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numCouponValue)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numCoupon1KeepDays)).EndInit(); this.ucGroupBoxEx1.ResumeLayout(false); this.splitContainer3.Panel1.ResumeLayout(false); this.splitContainer3.Panel2.ResumeLayout(false); @@ -957,8 +840,6 @@ namespace TemuKJD.PDDForms.ProductForms this.splitContainer4.Panel2.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit(); this.splitContainer4.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.numCoupon1KeepDays)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit(); this.ResumeLayout(false); } @@ -966,13 +847,6 @@ namespace TemuKJD.PDDForms.ProductForms #endregion private System.Windows.Forms.SplitContainer splitContainer1; - private UserComponent.UcGroupBoxEx ucGroupBoxEx2; - private DevComponents.DotNetBar.PanelEx btnClearDgv; - private System.Windows.Forms.ComboBox cmbCoupon1TicketNum; - private System.Windows.Forms.Label label8; - private System.Windows.Forms.TextBox txtCoupon1Name; - private System.Windows.Forms.Label label2; - private DevComponents.DotNetBar.PanelEx btnDelSelect; private UserComponent.UcGroupBoxEx ucGroupBoxEx1; private DevComponents.DotNetBar.PanelEx btnRefreshShop; private System.Windows.Forms.SplitContainer splitContainer3; @@ -992,42 +866,39 @@ namespace TemuKJD.PDDForms.ProductForms private System.Windows.Forms.Panel panel1; private UserControls.UcSplitPage ucSplitPage1; private UserComponent.DataGridViewEx dgvProduct; + private System.Windows.Forms.SplitContainer splitContainer4; + private UserControls.StatusBarUserControl statusBar; + private DevComponents.DotNetBar.PanelEx btnClear; + private DevComponents.DotNetBar.PanelEx btnCancel; + private UserComponent.UcGroupBoxEx ucGroupBoxEx2; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.NumericUpDown numCoupon1KeepDays; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.DateTimePicker dtpCoupon1StartTime; + private UserComponent.UcCheckBox chkCoupon1; + private DevComponents.DotNetBar.Controls.Line line1; + private System.Windows.Forms.ComboBox cmbCoupon1TicketNum; + private System.Windows.Forms.Label label8; + private System.Windows.Forms.TextBox txtCoupon1Name; + private System.Windows.Forms.Label label2; + private DevComponents.DotNetBar.PanelEx btnCreate; + private System.Windows.Forms.Label label1; private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierId; private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierName; private System.Windows.Forms.DataGridViewTextBoxColumn colImgUrl; - private System.Windows.Forms.DataGridViewImageColumn colProductSkcPic; + private System.Windows.Forms.DataGridViewImageColumn colImg; private System.Windows.Forms.DataGridViewLinkColumn colSpuId; - private System.Windows.Forms.DataGridViewTextBoxColumn colExtCode; private System.Windows.Forms.DataGridViewTextBoxColumn colProductName; private System.Windows.Forms.DataGridViewTextBoxColumn colPrice; private System.Windows.Forms.DataGridViewTextBoxColumn colStock; private System.Windows.Forms.DataGridViewTextBoxColumn colFavorites; private System.Windows.Forms.DataGridViewTextBoxColumn colSales; private System.Windows.Forms.DataGridViewTextBoxColumn colSalesThirtyDays; - private System.Windows.Forms.DataGridViewTextBoxColumn colAddTime; - private System.Windows.Forms.DataGridViewTextBoxColumn colIsOnSale; - private System.Windows.Forms.DataGridViewTextBoxColumn colStatus; + private System.Windows.Forms.DataGridViewTextBoxColumn colIsCanSet; private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult; - private System.Windows.Forms.SplitContainer splitContainer4; - private UserControls.StatusBarUserControl statusBar; - private DevComponents.DotNetBar.PanelEx btnClear; - private DevComponents.DotNetBar.PanelEx panelEx1; - private DevComponents.DotNetBar.Controls.Line line1; - private System.Windows.Forms.Label label4; - private System.Windows.Forms.NumericUpDown numCoupon1KeepDays; - private System.Windows.Forms.Label label3; - private System.Windows.Forms.DateTimePicker dtpCoupon1StartTime; - private UserComponent.UcCheckBox ucCheckBox1; - private System.Windows.Forms.Label label1; - private System.Windows.Forms.Label label5; - private System.Windows.Forms.NumericUpDown numericUpDown1; - private System.Windows.Forms.Label label6; - private System.Windows.Forms.DateTimePicker dateTimePicker1; - private System.Windows.Forms.TextBox textBox1; - private System.Windows.Forms.Label label7; - private System.Windows.Forms.Label label9; - private UserComponent.UcCheckBox ucCheckBox2; - private DevComponents.DotNetBar.Controls.Line line2; + private System.Windows.Forms.Label label11; + private System.Windows.Forms.NumericUpDown numCouponValue; + private System.Windows.Forms.Label label14; } } \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.cs new file mode 100644 index 0000000..e7f296e --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.cs @@ -0,0 +1,570 @@ +using AllBase; +using AllBase.Helper; +using AllBase.Model.Param.PDDCouponParam; +using AllBase.Model.Result; +using AllBase.Model.Result.PDDResult; +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; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.BLL; +using TemuKJD.Extension; +using TemuKJD.PDDForms.ShopForms; +using TemuKJD.ToolForms; + +namespace TemuKJD.PDDForms.ProductForms.CouponForms +{ + public partial class PDDProdCouponJingXiForm : BaseForm + { + public CancellationTokenSource cancellationTokenSource { get; set; } = null; + + bool isInit = false; + Dictionary dicShopGetCount = new Dictionary(); + PDDCouponGoodsListInfo pddCouponGoods = new PDDCouponGoodsListInfo(); + + public PDDProdCouponJingXiForm() + { + InitializeComponent(); + } + + private void PDDProductCouponForm_Load(object sender, EventArgs e) + { + this.dtpCoupon1StartTime.MinDate = DateTime.Now.Date.AddDays(1).AddHours(19); + + this.dgvShop.AddSelectorColumn("colSelect"); + this.dgvProduct.AddSelectorColumn("colCheck"); + dgvProduct.AddImgColumn("colImg", "colImgUrl"); + } + + private void PDDProductCouponForm_VisibleChanged(object sender, EventArgs e) + { + if (Visible == true) + { + RefreshShop(); + isInit = true; + } + } + + private void btnRefreshShop_Click(object sender, EventArgs e) + { + RefreshShop(); + } + private void RefreshShop() + { + // 店铺Id + var selectIds = dgvShop.Rows.Cast().Where(row + => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList(); + // 获取被删除的店铺 + List dgvRowList = dgvShop.Rows.Cast().Where(row + => !GlobalConfig.ShopLoginList.Any(s => s.ShopId == row.Cells["colShopId"]?.Value?.ToString())).ToList(); + // 更新被删除的店铺列表 + foreach (var row in dgvRowList) + { + dgvShop.Rows.Remove(row); + } + // 绑定其他店铺(含新导入的店铺) + foreach (ShopLoginInfo shopEntity in GlobalConfig.ShopLoginList) + { + if (!string.IsNullOrEmpty(shopEntity.ShopId)) + BindShop(shopEntity, selectIds); + } + } + + private void BindShop(ShopLoginInfo shopEntity, List selectShopId = null) + { + if (shopEntity == null) + return; + if (selectShopId == null) + selectShopId = new List(); + + bool canUse = shopEntity.LoginStatus == "登录成功"; + //canUse = true; // 内部库不需要校验登录状态 + var row = dgvShop.Rows.Cast().FirstOrDefault(p => p.Cells.GetCellValueFromColumnName("colShopId").ParseToString() == shopEntity.ShopId); + if (row == null) + { + this.dgvShop.Rows.Add( + !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse), + shopEntity.LoginName, + shopEntity.ShopId, + shopEntity.ShopAccount, + shopEntity.Notes, + "选择商品", + canUse ? "在线" : "掉线", + canUse, + shopEntity.AddProductRemaining, + string.Empty + ); + } + else + { + row.Cells["colSelect"].Value = !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse); + row.Cells["colShopLoginName"].Value = shopEntity.LoginName; + row.Cells["colShopName"].Value = shopEntity.ShopAccount; + row.Cells["colShopNotes"].Value = shopEntity.Notes; + row.Cells["colLoginStatus"].Value = canUse ? "在线" : "掉线"; + row.Cells["colLoginStatus"].Style.ForeColor = canUse ? Color.Green : Color.Red; + row.Cells["colCanUse"].Value = canUse; + row.Cells["colRemaining"].Value = shopEntity.AddProductRemaining; + } + } + + private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvShop.Columns[e.ColumnIndex].HeaderText; + string columnName = dgvShop.Columns[e.ColumnIndex].Name; + string shopId = dgvShop.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString(); + string shopAccount = dgvShop.Rows[e.RowIndex].Cells["colShopName"].Value.ToString(); + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId.ToString()); + var row = dgvShop.Rows[e.RowIndex]; + switch (columnName) + { + case "colSelect": + row.Cells["colSelect"].Value = !row.Cells["colSelect"].Value.ParseToBool(); + break; + case "colLoginStatus": + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + PDDShopLoginForm shopLoginForm = new PDDShopLoginForm(shop); + if (shop.LoginStatus != "登录成功") + { + shopLoginForm.openType = EnumOpenType.login; + shopLoginForm.ShowDialog(); + RefreshShop(); + } + else + { + shopLoginForm.openType = EnumOpenType.manage; + shopLoginForm.WindowState = FormWindowState.Maximized; + shopLoginForm.Show(); + } + break; + } + } + + public string get_jingxiquan_goods(ShopLoginInfo shop, long startTime, long endTime, int page = 1, int pageSize = 20) + { + var anti = shop.AntiContents.LastOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + string url = "https://mms.pinduoduo.com/madrid/query_filtered_mall_goods_list"; + string body = "{\"sort_by\":\"id\",\"sort_type\":\"DESC\",\"size\":" + pageSize + ",\"page\":" + page + + ",\"source_type\":1242,\"start_time\":" + startTime + ",\"end_time\":" + endTime + "}"; + + string refere = "https://mms.pinduoduo.com/tool/surprise-coupon/create?sub_tfc=10877_91066&tool_full_channel=10921_77272"; + + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + for (int i = 0; i < 5 && (result.Contains("网络繁忙,请不要频繁操作") || result.Contains("您的店铺操作过于频繁,请稍后操作")); i++) + { + shop.AntiContents.Remove(anti); + anti = shop.AntiContents.FirstOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + } + } + return result; + } + public string create_jingxiquan_goods(ShopLoginInfo shop, PDDCouponParam couponParam) + { + var anti = shop.AntiContents.LastOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + string url = "https://mms.pinduoduo.com/madrid/merchant/general_create_merchant_goods_batch"; + string body = JsonHelper.SerializeObject(couponParam); + + string refere = "https://mms.pinduoduo.com/tool/surprise-coupon/create?sub_tfc=10877_91066&tool_full_channel=10921_77272"; + + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + for (int i = 0; i < 5 && (result.Contains("网络繁忙,请不要频繁操作") || result.Contains("您的店铺操作过于频繁,请稍后操作")); i++) + { + shop.AntiContents.Remove(anti); + anti = shop.AntiContents.FirstOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + } + } + return result; + } + + private void btnCreate_Click(object sender, EventArgs e) + { + var lstShopId = dgvShop.Rows.Cast() + .Where(row => row.Cells["colSelect"]?.Value.ParseToBool() == true && row.Cells["colLoginStatus"]?.Value.ParseToString() == "在线") + .Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList(); + if (lstShopId.Count == 0) + { + BaseMsgForm.ShowInfo("请选择登录的店铺!"); + return; + } + pddCouponGoods.goods_list.Clear(); + pddCouponGoods.remaining_create_num = 1; + pddCouponGoods.total = 1; + pddCouponGoods.existed_coupon_list = new List(); + + dgvProduct.Rows.Clear(); + + var dgvRows = this.dgvShop.Rows.Cast();//.Where(r => lstShopId.Contains(r.Cells["colShopId"].Value.ParseToString())); + foreach (var row in dgvRows) + { + row.Cells["colMessage"].Value = ""; + } + + + if (PDDShopLoginForm.shopLoginInstance != null && PDDShopLoginForm.shopLoginInstance.IsDisposed != true) + PDDShopLoginForm.shopLoginInstance.Dispose(); + ucGroupBoxEx2.Enabled = false; + cancellationTokenSource = new CancellationTokenSource(); + Task.Run(() => + { + var lstShopIdTemp = new List(); + lstShopIdTemp.AddRange(lstShopId); + int i = 0; + + foreach (var shopId in lstShopIdTemp) + { + this.Invoke(new Action(() => + { + this.statusBar.lblTaskStatus.Text = "正在查询..."; + this.statusBar.pgbTaskProgress.Maximum = lstShopIdTemp.Count; + this.statusBar.UpdateProgressBar(i + 1); + i++; + })); + + if (cancellationTokenSource.IsCancellationRequested) + break; + + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + if (shop == null) + continue; + + #region 检测登录 + if (shop.LoginStatus == "登录成功") + { + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + } + if (shop.LoginStatus != "登录成功") + { + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopLoginName"].Value.ToString() == shop.LoginName); + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "店铺掉线"; + row.Cells["colLoginStatus"].Value = "掉线"; + row.Cells["colCanUse"].Value = false; + } + })); + continue; + } + #endregion + + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ToString() == shop.ShopId); + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "正在查询"; + } + })); + + int page = 0; + int pageSize = 20; // 优惠券最大20 + int totalPage = 1; + bool isError = false; + string errMsg = ""; + while (page < totalPage) + { + if (cancellationTokenSource.IsCancellationRequested) + break; + + page++; + + int tryCount = 0; + tryAgain: + + GetToken(shop); + + if (page > 1) + Thread.Sleep(Randomx.GetId(3000, 7000)); + + long startStamp = BaseClass.DateTimeToTimestampMilliseconds(dtpCoupon1StartTime.Value); + long endStamp = BaseClass.DateTimeToTimestampMilliseconds(dtpCoupon1StartTime.Value.Date.AddDays(numCoupon1KeepDays.Value.ParseToInt())) - 1; + string jsonStr = get_jingxiquan_goods(shop,startStamp, endStamp, page, pageSize); + jsonStr = GetHtml.Unicode2String(jsonStr); + if (jsonStr.Contains("繁忙") && tryCount < 5) + { + tryCount++; + Thread.Sleep(Randomx.GetId(5000, 10000)); + goto tryAgain; + } + if (!jsonStr.Contains("\"success\":true")) + { + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + if (shop.LoginStatus != "登录成功") + break; + + isError = true; + string sErr = BaseRegex.GetStringJson(ref jsonStr, "error_msg"); + if (!string.IsNullOrWhiteSpace(sErr) && !errMsg.Contains(sErr)) + errMsg += sErr + " "; + page++; + continue; + } + + if (jsonStr.Contains("\"success\":true")) + { + PDDCouponGoodsListInfo pddCouponGoodsTmp = new PDDCouponGoodsListInfo(); + try + { + var jObj = JObject.Parse(jsonStr); + var rstStr = JsonHelper.SerializeObject( jObj["result"]); + pddCouponGoodsTmp = JsonHelper.DeserializeJsonToObject(rstStr); + this.pddCouponGoods.remaining_create_num = pddCouponGoodsTmp.remaining_create_num; + this.pddCouponGoods.total = pddCouponGoodsTmp.total; + } + catch (Exception ex) { BaseMsgForm.ShowError(ex.Message); } + foreach (var pInfo in pddCouponGoodsTmp.goods_list) + { + pInfo.shopId = shop.ShopId; + pInfo.shopName = shop.ShopAccount; + if (pInfo != null && !pddCouponGoods.goods_list.Any(a => a.id == pInfo.id)) + { + this.pddCouponGoods.goods_list.Add(pInfo); + string url = pInfo.thumb_url; + Invoke(new Action(() => + { + int rowId = this.dgvProduct.Rows.Add( + pInfo.is_filtered != true, + shop.ShopId, + shop.ShopAccount, + url.Replace("https", "http"), + DataGridViewExtension.defaultBitmap, // 列表图片,public static Bitmap defaultBitmap = new Bitmap(1,1); + pInfo.id, + pInfo.goods_name, + string.Join("~", pInfo.sku_group_price.Select(s => s / 100m)), + pInfo.quantity, + "", //收藏 + "", //总销量 + "", //30日销量 + pInfo.is_filtered == true ? "不可设置:" + pInfo.filtered_reason : "可设置", + "" // 操作结果,状态 + ); + + dgvProduct.Rows[rowId].Height = 60; + })); + } + } + int discountVal = 0; + Invoke(new Action(() => + { + discountVal = (numCouponValue.Value * 100).ParseToInt(); + })); + foreach (var pInfo in pddCouponGoodsTmp.goods_list) + { + if (pInfo.coupon_value_limit.FirstOrDefault() > discountVal || pInfo.coupon_value_limit.LastOrDefault() < discountVal) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + row.Cells["colOpResult"].Value = "优惠券金额不在可设置范围内!"; + } + } + } + var createLst = pddCouponGoodsTmp.goods_list.Where(g => g.coupon_value_limit.FirstOrDefault() <= discountVal && + g.coupon_value_limit.LastOrDefault() >= discountVal).Where(g => g.is_filtered == false).ToList(); + if (createLst.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + //设置惊喜券 + PDDCouponParam creatCouponParam = new PDDCouponParam(); + creatCouponParam.ignore_low_price = false; + creatCouponParam.source_type = 1242; + creatCouponParam.tool_full_channel = "12110_76109_010921_77272"; + creatCouponParam.create_request_list = new List(); + foreach (var pInfo in createLst) + { + Invoke(new Action(() => + { + creatCouponParam.create_request_list.Add(new create_request + { + batch_desc = txtCoupon1Name.Text, + batch_end_time = endStamp, + batch_start_time = startStamp, + discount = (numCouponValue.Value * 100).ParseToInt(), + duration = 7, // 固定填7 + goods_id = pInfo.id, + init_quantity = pInfo.quantity, + period_type = 0, + status = 2, // 固定填2 + user_limit = cmbCoupon1TicketNum.Text.Replace("张", "").ParseToInt(), + }); + })); + } + var creatRst = create_jingxiquan_goods(shop, creatCouponParam); + creatRst = GetHtml.Unicode2String(creatRst); + if (!creatRst.Contains("\"success\":true")) + { + var error = BaseRegex.GetStringJson(ref creatRst, "error_msg"); + if (string.IsNullOrEmpty(error)) + error = creatRst; + foreach (var pInfo in createLst) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + row.Cells["colOpResult"].Value = error; + } + } + } + else + { + try + { + var jObj = JObject.Parse(creatRst); + var rstStr = JsonHelper.SerializeObject(jObj["result"]); + var pDDCreateCouponResult = JsonHelper.DeserializeJsonToObject(rstStr); + + foreach (var pInfo in createLst) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + var createErr = pDDCreateCouponResult.errors.FirstOrDefault(er => er.goods_id == pInfo.id); + if (createErr != null) + row.Cells["colOpResult"].Value = createErr.error_msg; + else + row.Cells["colOpResult"].Value = "设置成功!"; + } + } + } + catch (Exception ex) { BaseMsgForm.ShowError(ex.Message); } + } + } + + int total = BaseRegex.GetStringJson(ref jsonStr, "total").ParseToInt(); + totalPage = Math.Ceiling(1m * total / pageSize).ParseToInt(); + } + } + + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ToString() == shop.ShopId); + + if (!isError) + { + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "已设置"; + } + } + else + { + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "设置失败 " + errMsg; + } + } + })); + } + Invoke(new Action(() => + { + ucGroupBoxEx2.Enabled = true; + string sRst = "设置结束!"; + if (cancellationTokenSource.IsCancellationRequested) + sRst = "已取消设置!"; + + BaseMsgForm.ShowInfo(sRst); + this.statusBar.lblTaskStatus.Text = sRst; + })); + }, cancellationTokenSource.Token); + } + public void GetToken(ShopLoginInfo shop) + { + if (!dicShopGetCount.Keys.Contains(shop)) + dicShopGetCount[shop] = 100; + else + dicShopGetCount[shop]++; + if (dicShopGetCount[shop] > 5) + { + dicShopGetCount[shop] = 0; + + while (PDDShopLoginForm.shopLoginInstance != null && !PDDShopLoginForm.shopLoginInstance.IsDisposed) + { + Thread.Sleep(500); + } + + Invoke(new Action(() => + { + this.panel1.SendToBack(); + PDDShopLoginForm loginForm = new PDDShopLoginForm(shop); + loginForm.TopLevel = false; + loginForm.openType = EnumOpenType.manage; + loginForm.WindowState = FormWindowState.Maximized; + loginForm.InitUrl = "https://mms.pinduoduo.com/tool/surprise-coupon/create/"; + loginForm.Dock = DockStyle.Fill; + this.panel1.Controls.Add(loginForm); + loginForm.Show(); + })); + int sleepTime = Randomx.GetId(2000, 3000); + Thread.Sleep(sleepTime); + + Invoke(new Action(() => + { + if (PDDShopLoginForm.shopLoginInstance != null) + PDDShopLoginForm.shopLoginInstance.Dispose(); + })); + } + } + + private void btnCancel_Click(object sender, EventArgs e) + { + if (cancellationTokenSource != null && !cancellationTokenSource.IsCancellationRequested) + cancellationTokenSource.Cancel(); + } + + private void dgvProduct_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvProduct.Columns[e.ColumnIndex].HeaderText; + switch (headerText) + { + case "删除": + //if (BaseMsgForm.ShowConfirm("确定删除商品吗?删除后不可恢复!").DialogResult == DialogResult.Cancel) + // return; + //var rst = DeleteProduct(dbId); + //if (rst) + //{ + // SearchDbProdSelect(this.ucSplitPage1.CurrentPage); + //} + break; + case "图片": + { + ShowImgForm imgFrom = new ShowImgForm(dgvProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString()); + imgFrom.ShowDialog(); + } + break; + case "": + dgvProduct.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvProduct.Rows[e.RowIndex].Cells["colCheck"].Value; + break; + default: + break; + } + } + } +} diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.resx b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.resx similarity index 92% rename from TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.resx rename to TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.resx index 36d3f53..ff9031b 100644 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.resx +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponJingXiForm.resx @@ -156,15 +156,12 @@ True - + True True - - True - True @@ -183,13 +180,7 @@ True - - True - - - True - - + True diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.Designer.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.Designer.cs new file mode 100644 index 0000000..14a5421 --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.Designer.cs @@ -0,0 +1,925 @@ + +namespace TemuKJD.PDDForms.ProductForms.CouponForms +{ + partial class PDDProdCouponLingQuanZhongXinForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); + this.splitContainer3 = new System.Windows.Forms.SplitContainer(); + this.splitContainer2 = new System.Windows.Forms.SplitContainer(); + this.dgvShop = new TemuKJD.UserComponent.DataGridViewEx(); + this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colShopLoginName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopNotes = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSelectProduct = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colLoginStatus = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colCanUse = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colRemaining = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colMessage = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.pbLoading = new System.Windows.Forms.PictureBox(); + this.panel1 = new System.Windows.Forms.Panel(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.dgvProduct = new TemuKJD.UserComponent.DataGridViewEx(); + this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colSupplierId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSupplierName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colImg = new System.Windows.Forms.DataGridViewImageColumn(); + this.colSpuId = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colProductName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPrice = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colStock = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colFavorites = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSales = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSalesThirtyDays = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colIsCanSet = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOpResult = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.splitContainer4 = new System.Windows.Forms.SplitContainer(); + this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); + this.btnClear = new DevComponents.DotNetBar.PanelEx(); + this.btnCancel = new DevComponents.DotNetBar.PanelEx(); + this.btnRefreshShop = new DevComponents.DotNetBar.PanelEx(); + this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.label14 = new System.Windows.Forms.Label(); + this.label11 = new System.Windows.Forms.Label(); + this.numCouponValue = new System.Windows.Forms.NumericUpDown(); + this.cmbCoupon3TicketNum = new System.Windows.Forms.ComboBox(); + this.label10 = new System.Windows.Forms.Label(); + this.cmbCoupon3KeepHours = new System.Windows.Forms.ComboBox(); + this.label13 = new System.Windows.Forms.Label(); + this.line3 = new DevComponents.DotNetBar.Controls.Line(); + this.txtCoupon3Name = new System.Windows.Forms.TextBox(); + this.label12 = new System.Windows.Forms.Label(); + this.chkCoupon3 = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.label5 = new System.Windows.Forms.Label(); + this.label6 = new System.Windows.Forms.Label(); + this.numCoupon2KeepDays = new System.Windows.Forms.NumericUpDown(); + this.dtpCoupon2StartTime = new System.Windows.Forms.DateTimePicker(); + this.btnCreate = new DevComponents.DotNetBar.PanelEx(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit(); + this.splitContainer3.Panel1.SuspendLayout(); + this.splitContainer3.Panel2.SuspendLayout(); + this.splitContainer3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit(); + this.splitContainer2.Panel1.SuspendLayout(); + this.splitContainer2.Panel2.SuspendLayout(); + this.splitContainer2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); + this.panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit(); + this.splitContainer4.Panel1.SuspendLayout(); + this.splitContainer4.Panel2.SuspendLayout(); + this.splitContainer4.SuspendLayout(); + this.ucGroupBoxEx1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numCouponValue)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); + this.splitContainer1.Panel1.SuspendLayout(); + this.splitContainer1.Panel2.SuspendLayout(); + this.splitContainer1.SuspendLayout(); + this.ucGroupBoxEx2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numCoupon2KeepDays)).BeginInit(); + this.SuspendLayout(); + // + // splitContainer3 + // + this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer3.Location = new System.Drawing.Point(0, 0); + this.splitContainer3.Name = "splitContainer3"; + this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer3.Panel1 + // + this.splitContainer3.Panel1.Controls.Add(this.splitContainer2); + // + // splitContainer3.Panel2 + // + this.splitContainer3.Panel2.Controls.Add(this.splitContainer4); + this.splitContainer3.Size = new System.Drawing.Size(1251, 330); + this.splitContainer3.SplitterDistance = 300; + this.splitContainer3.TabIndex = 1; + // + // splitContainer2 + // + this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer2.Location = new System.Drawing.Point(0, 0); + this.splitContainer2.Name = "splitContainer2"; + // + // splitContainer2.Panel1 + // + this.splitContainer2.Panel1.Controls.Add(this.dgvShop); + this.splitContainer2.Panel1.Padding = new System.Windows.Forms.Padding(4, 0, 0, 0); + // + // splitContainer2.Panel2 + // + this.splitContainer2.Panel2.Controls.Add(this.pbLoading); + this.splitContainer2.Panel2.Controls.Add(this.panel1); + this.splitContainer2.Panel2.Controls.Add(this.dgvProduct); + this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); + this.splitContainer2.Size = new System.Drawing.Size(1251, 300); + this.splitContainer2.SplitterDistance = 300; + this.splitContainer2.TabIndex = 0; + // + // dgvShop + // + this.dgvShop.AllowUserToAddRows = false; + this.dgvShop.AllowUserToDeleteRows = false; + dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + this.dgvShop.BackgroundColor = System.Drawing.Color.White; + this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colSelect, + this.colShopLoginName, + this.colShopId, + this.colShopName, + this.colShopNotes, + this.colSelectProduct, + this.colLoginStatus, + this.colCanUse, + this.colRemaining, + this.colMessage}); + this.dgvShop.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvShop.Location = new System.Drawing.Point(4, 0); + this.dgvShop.Name = "dgvShop"; + this.dgvShop.ReadOnly = true; + this.dgvShop.RowHeadersWidth = 25; + this.dgvShop.RowTemplate.Height = 23; + this.dgvShop.Size = new System.Drawing.Size(296, 300); + this.dgvShop.TabIndex = 6; + this.dgvShop.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvShop_CellContentClick); + // + // colSelect + // + this.colSelect.HeaderText = "全选"; + this.colSelect.Name = "colSelect"; + this.colSelect.ReadOnly = true; + this.colSelect.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSelect.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSelect.Width = 28; + // + // colShopLoginName + // + this.colShopLoginName.HeaderText = "店铺登录名"; + this.colShopLoginName.Name = "colShopLoginName"; + this.colShopLoginName.ReadOnly = true; + this.colShopLoginName.Visible = false; + // + // colShopId + // + this.colShopId.HeaderText = "店铺Id"; + this.colShopId.Name = "colShopId"; + this.colShopId.ReadOnly = true; + this.colShopId.Visible = false; + this.colShopId.Width = 55; + // + // colShopName + // + this.colShopName.FillWeight = 150F; + this.colShopName.HeaderText = "店铺名称"; + this.colShopName.Name = "colShopName"; + this.colShopName.ReadOnly = true; + this.colShopName.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colShopName.Width = 70; + // + // colShopNotes + // + this.colShopNotes.HeaderText = "分组"; + this.colShopNotes.Name = "colShopNotes"; + this.colShopNotes.ReadOnly = true; + this.colShopNotes.Width = 70; + // + // colSelectProduct + // + this.colSelectProduct.HeaderText = "选择商品"; + this.colSelectProduct.Name = "colSelectProduct"; + this.colSelectProduct.ReadOnly = true; + this.colSelectProduct.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSelectProduct.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSelectProduct.Visible = false; + this.colSelectProduct.Width = 62; + // + // colLoginStatus + // + this.colLoginStatus.HeaderText = "状态"; + this.colLoginStatus.Name = "colLoginStatus"; + this.colLoginStatus.ReadOnly = true; + this.colLoginStatus.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colLoginStatus.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colLoginStatus.Width = 40; + // + // colCanUse + // + this.colCanUse.HeaderText = "可用"; + this.colCanUse.Name = "colCanUse"; + this.colCanUse.ReadOnly = true; + this.colCanUse.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCanUse.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCanUse.Visible = false; + this.colCanUse.Width = 28; + // + // colRemaining + // + this.colRemaining.HeaderText = "月限额"; + this.colRemaining.Name = "colRemaining"; + this.colRemaining.ReadOnly = true; + this.colRemaining.Visible = false; + // + // colMessage + // + this.colMessage.HeaderText = "消息"; + this.colMessage.Name = "colMessage"; + this.colMessage.ReadOnly = true; + // + // pbLoading + // + this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; + this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; + this.pbLoading.Location = new System.Drawing.Point(448, 125); + this.pbLoading.Name = "pbLoading"; + this.pbLoading.Size = new System.Drawing.Size(50, 50); + this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pbLoading.TabIndex = 188; + this.pbLoading.TabStop = false; + this.pbLoading.Visible = false; + // + // panel1 + // + this.panel1.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.panel1.Controls.Add(this.ucSplitPage1); + this.panel1.Location = new System.Drawing.Point(36, 53); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(873, 214); + this.panel1.TabIndex = 189; + // + // ucSplitPage1 + // + this.ucSplitPage1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.IsShowPageSize = false; + this.ucSplitPage1.Location = new System.Drawing.Point(288, 177); + this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); + this.ucSplitPage1.Name = "ucSplitPage1"; + this.ucSplitPage1.Padding = new System.Windows.Forms.Padding(0, 0, 1, 0); + this.ucSplitPage1.PageSize = 50; + this.ucSplitPage1.Size = new System.Drawing.Size(573, 26); + this.ucSplitPage1.TabIndex = 675; + this.ucSplitPage1.TotalPage = 1; + this.ucSplitPage1.Visible = false; + // + // dgvProduct + // + this.dgvProduct.AllowUserToAddRows = false; + this.dgvProduct.AllowUserToDeleteRows = false; + dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3; + this.dgvProduct.BackgroundColor = System.Drawing.Color.White; + this.dgvProduct.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.dgvProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4; + this.dgvProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colCheck, + this.colSupplierId, + this.colSupplierName, + this.colImgUrl, + this.colImg, + this.colSpuId, + this.colProductName, + this.colPrice, + this.colStock, + this.colFavorites, + this.colSales, + this.colSalesThirtyDays, + this.colIsCanSet, + this.colOpResult}); + this.dgvProduct.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvProduct.Location = new System.Drawing.Point(0, 0); + this.dgvProduct.Name = "dgvProduct"; + this.dgvProduct.ReadOnly = true; + this.dgvProduct.RowTemplate.Height = 23; + this.dgvProduct.Size = new System.Drawing.Size(943, 300); + this.dgvProduct.TabIndex = 187; + this.dgvProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProduct_CellContentClick); + // + // colCheck + // + this.colCheck.Frozen = true; + this.colCheck.HeaderText = "选择"; + this.colCheck.Name = "colCheck"; + this.colCheck.ReadOnly = true; + this.colCheck.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCheck.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCheck.Width = 30; + // + // colSupplierId + // + this.colSupplierId.HeaderText = "店铺Id"; + this.colSupplierId.Name = "colSupplierId"; + this.colSupplierId.ReadOnly = true; + // + // colSupplierName + // + this.colSupplierName.HeaderText = "店铺名称"; + this.colSupplierName.Name = "colSupplierName"; + this.colSupplierName.ReadOnly = true; + this.colSupplierName.Width = 110; + // + // colImgUrl + // + this.colImgUrl.HeaderText = "图片地址"; + this.colImgUrl.Name = "colImgUrl"; + this.colImgUrl.ReadOnly = true; + this.colImgUrl.Visible = false; + // + // colImg + // + this.colImg.HeaderText = "图片"; + this.colImg.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom; + this.colImg.Name = "colImg"; + this.colImg.ReadOnly = true; + this.colImg.Width = 60; + // + // colSpuId + // + this.colSpuId.HeaderText = "商品ID"; + this.colSpuId.Name = "colSpuId"; + this.colSpuId.ReadOnly = true; + this.colSpuId.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSpuId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSpuId.Width = 80; + // + // colProductName + // + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductName.DefaultCellStyle = dataGridViewCellStyle5; + this.colProductName.HeaderText = "商品标题"; + this.colProductName.Name = "colProductName"; + this.colProductName.ReadOnly = true; + this.colProductName.Width = 260; + // + // colPrice + // + this.colPrice.HeaderText = "价格"; + this.colPrice.Name = "colPrice"; + this.colPrice.ReadOnly = true; + this.colPrice.Width = 90; + // + // colStock + // + this.colStock.HeaderText = "库存"; + this.colStock.Name = "colStock"; + this.colStock.ReadOnly = true; + this.colStock.Width = 70; + // + // colFavorites + // + this.colFavorites.HeaderText = "收藏"; + this.colFavorites.Name = "colFavorites"; + this.colFavorites.ReadOnly = true; + this.colFavorites.Visible = false; + this.colFavorites.Width = 50; + // + // colSales + // + this.colSales.HeaderText = "总销量"; + this.colSales.Name = "colSales"; + this.colSales.ReadOnly = true; + this.colSales.Visible = false; + this.colSales.Width = 60; + // + // colSalesThirtyDays + // + this.colSalesThirtyDays.HeaderText = "30日销量"; + this.colSalesThirtyDays.Name = "colSalesThirtyDays"; + this.colSalesThirtyDays.ReadOnly = true; + this.colSalesThirtyDays.Visible = false; + this.colSalesThirtyDays.Width = 70; + // + // colIsCanSet + // + this.colIsCanSet.HeaderText = "是否可设置"; + this.colIsCanSet.Name = "colIsCanSet"; + this.colIsCanSet.ReadOnly = true; + // + // colOpResult + // + this.colOpResult.HeaderText = "操作结果"; + this.colOpResult.Name = "colOpResult"; + this.colOpResult.ReadOnly = true; + this.colOpResult.Width = 200; + // + // splitContainer4 + // + this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer4.Location = new System.Drawing.Point(0, 0); + this.splitContainer4.Name = "splitContainer4"; + // + // splitContainer4.Panel1 + // + this.splitContainer4.Panel1.Controls.Add(this.statusBar); + // + // splitContainer4.Panel2 + // + this.splitContainer4.Panel2.Controls.Add(this.btnClear); + this.splitContainer4.Panel2.Controls.Add(this.btnCancel); + this.splitContainer4.Size = new System.Drawing.Size(1251, 26); + this.splitContainer4.SplitterDistance = 560; + this.splitContainer4.TabIndex = 3; + // + // statusBar + // + this.statusBar.BackColor = System.Drawing.Color.White; + this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill; + this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.statusBar.Location = new System.Drawing.Point(0, 0); + this.statusBar.Margin = new System.Windows.Forms.Padding(0); + this.statusBar.Name = "statusBar"; + this.statusBar.Size = new System.Drawing.Size(560, 26); + this.statusBar.TabIndex = 2; + // + // btnClear + // + this.btnClear.Anchor = System.Windows.Forms.AnchorStyles.Right; + this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnClear.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnClear.DisabledBackColor = System.Drawing.Color.Empty; + this.btnClear.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnClear.Location = new System.Drawing.Point(4, 1); + this.btnClear.Name = "btnClear"; + this.btnClear.Size = new System.Drawing.Size(90, 21); + this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnClear.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnClear.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnClear.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnClear.Style.GradientAngle = 90; + this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnClear.TabIndex = 440; + this.btnClear.Text = "清空结果"; + this.btnClear.Visible = false; + // + // btnCancel + // + 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(568, 1); + this.btnCancel.Name = "btnCancel"; + this.btnCancel.Size = new System.Drawing.Size(115, 21); + 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 = 668; + this.btnCancel.Text = "停止当前操作"; + this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click); + // + // btnRefreshShop + // + this.btnRefreshShop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnRefreshShop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnRefreshShop.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnRefreshShop.DisabledBackColor = System.Drawing.Color.Empty; + this.btnRefreshShop.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnRefreshShop.Location = new System.Drawing.Point(17, 31); + this.btnRefreshShop.Name = "btnRefreshShop"; + this.btnRefreshShop.Size = new System.Drawing.Size(110, 24); + this.btnRefreshShop.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnRefreshShop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnRefreshShop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnRefreshShop.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnRefreshShop.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnRefreshShop.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnRefreshShop.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnRefreshShop.Style.GradientAngle = 90; + this.btnRefreshShop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnRefreshShop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnRefreshShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnRefreshShop.TabIndex = 431; + this.btnRefreshShop.Text = "刷新店铺"; + this.btnRefreshShop.Click += new System.EventHandler(this.btnRefreshShop_Click); + // + // ucGroupBoxEx1 + // + this.ucGroupBoxEx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.ucGroupBoxEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucGroupBoxEx1.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx1.Controls.Add(this.btnRefreshShop); + this.ucGroupBoxEx1.Location = new System.Drawing.Point(3, 2); + this.ucGroupBoxEx1.Name = "ucGroupBoxEx1"; + this.ucGroupBoxEx1.Size = new System.Drawing.Size(144, 140); + this.ucGroupBoxEx1.TabIndex = 399; + this.ucGroupBoxEx1.TabStop = false; + this.ucGroupBoxEx1.Text = "基础"; + // + // label14 + // + this.label14.AutoSize = true; + this.label14.Location = new System.Drawing.Point(331, 35); + this.label14.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label14.Name = "label14"; + this.label14.Size = new System.Drawing.Size(20, 17); + this.label14.TabIndex = 715; + this.label14.Text = "元"; + // + // label11 + // + this.label11.AutoSize = true; + this.label11.Location = new System.Drawing.Point(222, 35); + this.label11.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label11.Name = "label11"; + this.label11.Size = new System.Drawing.Size(68, 17); + this.label11.TabIndex = 714; + this.label11.Text = "优惠券金额"; + // + // numCouponValue + // + this.numCouponValue.Location = new System.Drawing.Point(290, 32); + this.numCouponValue.Name = "numCouponValue"; + this.numCouponValue.Size = new System.Drawing.Size(41, 23); + this.numCouponValue.TabIndex = 713; + this.numCouponValue.Value = new decimal(new int[] { + 2, + 0, + 0, + 0}); + // + // cmbCoupon3TicketNum + // + this.cmbCoupon3TicketNum.FormattingEnabled = true; + this.cmbCoupon3TicketNum.Items.AddRange(new object[] { + "10张", + "11张", + "12张", + "13张", + "14张", + "15张"}); + this.cmbCoupon3TicketNum.Location = new System.Drawing.Point(67, 100); + this.cmbCoupon3TicketNum.Name = "cmbCoupon3TicketNum"; + this.cmbCoupon3TicketNum.Size = new System.Drawing.Size(130, 25); + this.cmbCoupon3TicketNum.TabIndex = 699; + this.cmbCoupon3TicketNum.Text = "15张"; + // + // label10 + // + this.label10.AutoSize = true; + this.label10.Location = new System.Drawing.Point(10, 104); + this.label10.Name = "label10"; + this.label10.Size = new System.Drawing.Size(56, 17); + this.label10.TabIndex = 698; + this.label10.Text = "每人限领"; + // + // cmbCoupon3KeepHours + // + this.cmbCoupon3KeepHours.FormattingEnabled = true; + this.cmbCoupon3KeepHours.Items.AddRange(new object[] { + "6小时", + "12小时", + "24小时", + "2天"}); + this.cmbCoupon3KeepHours.Location = new System.Drawing.Point(67, 71); + this.cmbCoupon3KeepHours.Name = "cmbCoupon3KeepHours"; + this.cmbCoupon3KeepHours.Size = new System.Drawing.Size(130, 25); + this.cmbCoupon3KeepHours.TabIndex = 697; + this.cmbCoupon3KeepHours.Text = "2天"; + // + // label13 + // + this.label13.AutoSize = true; + this.label13.Location = new System.Drawing.Point(10, 75); + this.label13.Name = "label13"; + this.label13.Size = new System.Drawing.Size(56, 17); + this.label13.TabIndex = 696; + this.label13.Text = "有效时长"; + // + // line3 + // + this.line3.ForeColor = System.Drawing.SystemColors.ScrollBar; + this.line3.Location = new System.Drawing.Point(200, 22); + this.line3.Name = "line3"; + this.line3.Size = new System.Drawing.Size(14, 106); + this.line3.TabIndex = 689; + this.line3.Text = "line3"; + this.line3.VerticalLine = true; + // + // txtCoupon3Name + // + this.txtCoupon3Name.Location = new System.Drawing.Point(53, 43); + this.txtCoupon3Name.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtCoupon3Name.Name = "txtCoupon3Name"; + this.txtCoupon3Name.Size = new System.Drawing.Size(144, 23); + this.txtCoupon3Name.TabIndex = 682; + this.txtCoupon3Name.Text = "领券中心券"; + // + // label12 + // + this.label12.AutoSize = true; + this.label12.Location = new System.Drawing.Point(10, 46); + this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label12.Name = "label12"; + this.label12.Size = new System.Drawing.Size(44, 17); + this.label12.TabIndex = 683; + this.label12.Text = "券名称"; + // + // chkCoupon3 + // + this.chkCoupon3.AutoSize = true; + this.chkCoupon3.Checked = true; + this.chkCoupon3.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkCoupon3.Location = new System.Drawing.Point(14, 19); + this.chkCoupon3.Name = "chkCoupon3"; + this.chkCoupon3.Size = new System.Drawing.Size(111, 21); + this.chkCoupon3.TabIndex = 681; + this.chkCoupon3.Text = "创建领券中心券"; + this.chkCoupon3.UseVisualStyleBackColor = true; + // + // splitContainer1 + // + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Name = "splitContainer1"; + this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer1.Panel1 + // + this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx2); + this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx1); + // + // splitContainer1.Panel2 + // + this.splitContainer1.Panel2.Controls.Add(this.splitContainer3); + this.splitContainer1.Size = new System.Drawing.Size(1251, 474); + this.splitContainer1.SplitterDistance = 140; + this.splitContainer1.TabIndex = 15; + // + // ucGroupBoxEx2 + // + this.ucGroupBoxEx2.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.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx2.Controls.Add(this.label5); + this.ucGroupBoxEx2.Controls.Add(this.label6); + this.ucGroupBoxEx2.Controls.Add(this.numCoupon2KeepDays); + this.ucGroupBoxEx2.Controls.Add(this.dtpCoupon2StartTime); + this.ucGroupBoxEx2.Controls.Add(this.label14); + this.ucGroupBoxEx2.Controls.Add(this.label11); + this.ucGroupBoxEx2.Controls.Add(this.numCouponValue); + this.ucGroupBoxEx2.Controls.Add(this.cmbCoupon3TicketNum); + this.ucGroupBoxEx2.Controls.Add(this.label10); + this.ucGroupBoxEx2.Controls.Add(this.cmbCoupon3KeepHours); + this.ucGroupBoxEx2.Controls.Add(this.label13); + this.ucGroupBoxEx2.Controls.Add(this.line3); + this.ucGroupBoxEx2.Controls.Add(this.txtCoupon3Name); + this.ucGroupBoxEx2.Controls.Add(this.label12); + this.ucGroupBoxEx2.Controls.Add(this.chkCoupon3); + this.ucGroupBoxEx2.Controls.Add(this.btnCreate); + this.ucGroupBoxEx2.Location = new System.Drawing.Point(147, 2); + this.ucGroupBoxEx2.Name = "ucGroupBoxEx2"; + this.ucGroupBoxEx2.Size = new System.Drawing.Size(1101, 140); + this.ucGroupBoxEx2.TabIndex = 667; + this.ucGroupBoxEx2.TabStop = false; + this.ucGroupBoxEx2.Text = "商品查询"; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(310, 74); + this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(44, 17); + this.label5.TabIndex = 725; + this.label5.Text = "天结束"; + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(224, 74); + this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(44, 17); + this.label6.TabIndex = 724; + this.label6.Text = "报名后"; + // + // numCoupon2KeepDays + // + this.numCoupon2KeepDays.Location = new System.Drawing.Point(268, 71); + this.numCoupon2KeepDays.Maximum = new decimal(new int[] { + 999, + 0, + 0, + 0}); + this.numCoupon2KeepDays.Name = "numCoupon2KeepDays"; + this.numCoupon2KeepDays.ReadOnly = true; + this.numCoupon2KeepDays.Size = new System.Drawing.Size(41, 23); + this.numCoupon2KeepDays.TabIndex = 720; + this.numCoupon2KeepDays.Value = new decimal(new int[] { + 999, + 0, + 0, + 0}); + // + // dtpCoupon2StartTime + // + this.dtpCoupon2StartTime.Location = new System.Drawing.Point(227, 100); + this.dtpCoupon2StartTime.Name = "dtpCoupon2StartTime"; + this.dtpCoupon2StartTime.Size = new System.Drawing.Size(130, 23); + this.dtpCoupon2StartTime.TabIndex = 719; + this.dtpCoupon2StartTime.Visible = false; + // + // btnCreate + // + this.btnCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnCreate.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnCreate.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnCreate.DisabledBackColor = System.Drawing.Color.Empty; + this.btnCreate.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnCreate.Location = new System.Drawing.Point(965, 32); + this.btnCreate.Name = "btnCreate"; + this.btnCreate.Size = new System.Drawing.Size(104, 23); + this.btnCreate.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnCreate.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnCreate.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnCreate.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnCreate.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnCreate.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnCreate.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnCreate.Style.GradientAngle = 90; + this.btnCreate.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnCreate.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnCreate.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnCreate.TabIndex = 468; + this.btnCreate.Text = "开始创建"; + this.btnCreate.Click += new System.EventHandler(this.btnCreate_Click); + // + // PDDProdCouponLingQuanZhongXinForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.Color.White; + this.ClientSize = new System.Drawing.Size(1251, 474); + this.Controls.Add(this.splitContainer1); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Name = "PDDProdCouponLingQuanZhongXinForm"; + this.Text = "PDDProdCouponLingQuanZhongXinForm"; + this.Load += new System.EventHandler(this.PDDProdCouponLingQuanZhongXinForm_Load); + this.VisibleChanged += new System.EventHandler(this.PDDProdCouponLingQuanZhongXinForm_VisibleChanged); + this.splitContainer3.Panel1.ResumeLayout(false); + this.splitContainer3.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit(); + this.splitContainer3.ResumeLayout(false); + this.splitContainer2.Panel1.ResumeLayout(false); + this.splitContainer2.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit(); + this.splitContainer2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); + this.panel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).EndInit(); + this.splitContainer4.Panel1.ResumeLayout(false); + this.splitContainer4.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit(); + this.splitContainer4.ResumeLayout(false); + this.ucGroupBoxEx1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.numCouponValue)).EndInit(); + this.splitContainer1.Panel1.ResumeLayout(false); + this.splitContainer1.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); + this.splitContainer1.ResumeLayout(false); + this.ucGroupBoxEx2.ResumeLayout(false); + this.ucGroupBoxEx2.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numCoupon2KeepDays)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.SplitContainer splitContainer3; + private System.Windows.Forms.SplitContainer splitContainer2; + private UserComponent.DataGridViewEx dgvShop; + private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopLoginName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopId; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopNotes; + private System.Windows.Forms.DataGridViewLinkColumn colSelectProduct; + private System.Windows.Forms.DataGridViewLinkColumn colLoginStatus; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCanUse; + private System.Windows.Forms.DataGridViewTextBoxColumn colRemaining; + private System.Windows.Forms.DataGridViewTextBoxColumn colMessage; + private System.Windows.Forms.PictureBox pbLoading; + private System.Windows.Forms.Panel panel1; + private UserControls.UcSplitPage ucSplitPage1; + private UserComponent.DataGridViewEx dgvProduct; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; + private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierId; + private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierName; + private System.Windows.Forms.DataGridViewTextBoxColumn colImgUrl; + private System.Windows.Forms.DataGridViewImageColumn colImg; + private System.Windows.Forms.DataGridViewLinkColumn colSpuId; + private System.Windows.Forms.DataGridViewTextBoxColumn colProductName; + private System.Windows.Forms.DataGridViewTextBoxColumn colPrice; + private System.Windows.Forms.DataGridViewTextBoxColumn colStock; + private System.Windows.Forms.DataGridViewTextBoxColumn colFavorites; + private System.Windows.Forms.DataGridViewTextBoxColumn colSales; + private System.Windows.Forms.DataGridViewTextBoxColumn colSalesThirtyDays; + private System.Windows.Forms.DataGridViewTextBoxColumn colIsCanSet; + private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult; + private System.Windows.Forms.SplitContainer splitContainer4; + private UserControls.StatusBarUserControl statusBar; + private DevComponents.DotNetBar.PanelEx btnClear; + private DevComponents.DotNetBar.PanelEx btnCancel; + private DevComponents.DotNetBar.PanelEx btnRefreshShop; + private UserComponent.UcGroupBoxEx ucGroupBoxEx1; + private System.Windows.Forms.Label label14; + private System.Windows.Forms.Label label11; + private System.Windows.Forms.NumericUpDown numCouponValue; + private System.Windows.Forms.ComboBox cmbCoupon3TicketNum; + private System.Windows.Forms.Label label10; + private System.Windows.Forms.ComboBox cmbCoupon3KeepHours; + private System.Windows.Forms.Label label13; + private DevComponents.DotNetBar.Controls.Line line3; + private System.Windows.Forms.TextBox txtCoupon3Name; + private System.Windows.Forms.Label label12; + private UserComponent.UcCheckBox chkCoupon3; + private System.Windows.Forms.SplitContainer splitContainer1; + private UserComponent.UcGroupBoxEx ucGroupBoxEx2; + private DevComponents.DotNetBar.PanelEx btnCreate; + private System.Windows.Forms.NumericUpDown numCoupon2KeepDays; + private System.Windows.Forms.DateTimePicker dtpCoupon2StartTime; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label label6; + } +} \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.cs new file mode 100644 index 0000000..202cca1 --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.cs @@ -0,0 +1,572 @@ +using AllBase; +using AllBase.Helper; +using AllBase.Model.Param.PDDCouponParam; +using AllBase.Model.Result; +using AllBase.Model.Result.PDDResult; +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; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.BLL; +using TemuKJD.Extension; +using TemuKJD.PDDForms.ShopForms; +using TemuKJD.ToolForms; + +namespace TemuKJD.PDDForms.ProductForms.CouponForms +{ + public partial class PDDProdCouponLingQuanZhongXinForm : BaseForm + { + public CancellationTokenSource cancellationTokenSource { get; set; } = null; + + bool isInit = false; + Dictionary dicShopGetCount = new Dictionary(); + PDDCouponGoodsListInfo pddCouponGoods = new PDDCouponGoodsListInfo(); + + public PDDProdCouponLingQuanZhongXinForm() + { + InitializeComponent(); + } + + private void PDDProdCouponLingQuanZhongXinForm_Load(object sender, EventArgs e) + { + this.dtpCoupon2StartTime.MinDate = DateTime.Now.Date; + + this.dgvShop.AddSelectorColumn("colSelect"); + this.dgvProduct.AddSelectorColumn("colCheck"); + dgvProduct.AddImgColumn("colImg", "colImgUrl"); + } + + private void PDDProdCouponLingQuanZhongXinForm_VisibleChanged(object sender, EventArgs e) + { + if (Visible == true) + { + RefreshShop(); + isInit = true; + } + } + + private void btnRefreshShop_Click(object sender, EventArgs e) + { + RefreshShop(); + } + private void RefreshShop() + { + // 店铺Id + var selectIds = dgvShop.Rows.Cast().Where(row + => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList(); + // 获取被删除的店铺 + List dgvRowList = dgvShop.Rows.Cast().Where(row + => !GlobalConfig.ShopLoginList.Any(s => s.ShopId == row.Cells["colShopId"]?.Value?.ToString())).ToList(); + // 更新被删除的店铺列表 + foreach (var row in dgvRowList) + { + dgvShop.Rows.Remove(row); + } + // 绑定其他店铺(含新导入的店铺) + foreach (ShopLoginInfo shopEntity in GlobalConfig.ShopLoginList) + { + if (!string.IsNullOrEmpty(shopEntity.ShopId)) + BindShop(shopEntity, selectIds); + } + } + + private void BindShop(ShopLoginInfo shopEntity, List selectShopId = null) + { + if (shopEntity == null) + return; + if (selectShopId == null) + selectShopId = new List(); + + bool canUse = shopEntity.LoginStatus == "登录成功"; + //canUse = true; // 内部库不需要校验登录状态 + var row = dgvShop.Rows.Cast().FirstOrDefault(p => p.Cells.GetCellValueFromColumnName("colShopId").ParseToString() == shopEntity.ShopId); + if (row == null) + { + this.dgvShop.Rows.Add( + !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse), + shopEntity.LoginName, + shopEntity.ShopId, + shopEntity.ShopAccount, + shopEntity.Notes, + "选择商品", + canUse ? "在线" : "掉线", + canUse, + shopEntity.AddProductRemaining, + string.Empty + ); + } + else + { + row.Cells["colSelect"].Value = !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse); + row.Cells["colShopLoginName"].Value = shopEntity.LoginName; + row.Cells["colShopName"].Value = shopEntity.ShopAccount; + row.Cells["colShopNotes"].Value = shopEntity.Notes; + row.Cells["colLoginStatus"].Value = canUse ? "在线" : "掉线"; + row.Cells["colLoginStatus"].Style.ForeColor = canUse ? Color.Green : Color.Red; + row.Cells["colCanUse"].Value = canUse; + row.Cells["colRemaining"].Value = shopEntity.AddProductRemaining; + } + } + + private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvShop.Columns[e.ColumnIndex].HeaderText; + string columnName = dgvShop.Columns[e.ColumnIndex].Name; + string shopId = dgvShop.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString(); + string shopAccount = dgvShop.Rows[e.RowIndex].Cells["colShopName"].Value.ToString(); + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId.ToString()); + var row = dgvShop.Rows[e.RowIndex]; + switch (columnName) + { + case "colSelect": + row.Cells["colSelect"].Value = !row.Cells["colSelect"].Value.ParseToBool(); + break; + case "colLoginStatus": + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + PDDShopLoginForm shopLoginForm = new PDDShopLoginForm(shop); + if (shop.LoginStatus != "登录成功") + { + shopLoginForm.openType = EnumOpenType.login; + shopLoginForm.ShowDialog(); + RefreshShop(); + } + else + { + shopLoginForm.openType = EnumOpenType.manage; + shopLoginForm.WindowState = FormWindowState.Maximized; + shopLoginForm.Show(); + } + break; + } + } + + public string get_coupon_goods(ShopLoginInfo shop, long startTime, long endTime, int page = 1, int pageSize = 20) + { + var anti = shop.AntiContents.LastOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + string url = "https://mms.pinduoduo.com/madrid/query_filtered_mall_goods_list"; + string body = "{\"sort_by\":\"id\",\"sort_type\":\"DESC\",\"size\":" + pageSize + ",\"page\":" + page + + ",\"source_type\":221,\"start_time\":" + startTime + ",\"end_time\":" + endTime + ",\"period_type\":2}"; + + string refere = "https://mms.pinduoduo.com/tool/coupon/create?chooseType=8&tool_full_channel=10921_77272&sub_tfc=10877_91066"; + + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + for (int i = 0; i < 5 && (result.Contains("网络繁忙,请不要频繁操作") || result.Contains("您的店铺操作过于频繁,请稍后操作")); i++) + { + shop.AntiContents.Remove(anti); + anti = shop.AntiContents.FirstOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + } + } + return result; + } + public string create_coupon_goods(ShopLoginInfo shop, PDDCouponParam couponParam) + { + var anti = shop.AntiContents.LastOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + string url = "https://mms.pinduoduo.com/madrid/create_batch_activity_goods_batches"; + string body = JsonHelper.SerializeObject(couponParam); + + string refere = "https://mms.pinduoduo.com/tool/coupon/create?chooseType=8&tool_full_channel=10921_77272&sub_tfc=10877_91066"; + + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + for (int i = 0; i < 5 && (result.Contains("网络繁忙,请不要频繁操作") || result.Contains("您的店铺操作过于频繁,请稍后操作")); i++) + { + shop.AntiContents.Remove(anti); + anti = shop.AntiContents.FirstOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + } + } + return result; + } + + private void btnCreate_Click(object sender, EventArgs e) + { + var lstShopId = dgvShop.Rows.Cast() + .Where(row => row.Cells["colSelect"]?.Value.ParseToBool() == true && row.Cells["colLoginStatus"]?.Value.ParseToString() == "在线") + .Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList(); + if (lstShopId.Count == 0) + { + BaseMsgForm.ShowInfo("请选择登录的店铺!"); + return; + } + pddCouponGoods.goods_list.Clear(); + pddCouponGoods.remaining_create_num = 1; + pddCouponGoods.total = 1; + pddCouponGoods.existed_coupon_list = new List(); + + dgvProduct.Rows.Clear(); + + var dgvRows = this.dgvShop.Rows.Cast();//.Where(r => lstShopId.Contains(r.Cells["colShopId"].Value.ParseToString())); + foreach (var row in dgvRows) + { + row.Cells["colMessage"].Value = ""; + } + + + if (PDDShopLoginForm.shopLoginInstance != null && PDDShopLoginForm.shopLoginInstance.IsDisposed != true) + PDDShopLoginForm.shopLoginInstance.Dispose(); + ucGroupBoxEx2.Enabled = false; + cancellationTokenSource = new CancellationTokenSource(); + Task.Run(() => + { + var lstShopIdTemp = new List(); + lstShopIdTemp.AddRange(lstShopId); + int i = 0; + + foreach (var shopId in lstShopIdTemp) + { + this.Invoke(new Action(() => + { + this.statusBar.lblTaskStatus.Text = "正在查询..."; + this.statusBar.pgbTaskProgress.Maximum = lstShopIdTemp.Count; + this.statusBar.UpdateProgressBar(i + 1); + i++; + })); + + if (cancellationTokenSource.IsCancellationRequested) + break; + + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + if (shop == null) + continue; + + #region 检测登录 + if (shop.LoginStatus == "登录成功") + { + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + } + if (shop.LoginStatus != "登录成功") + { + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopLoginName"].Value.ToString() == shop.LoginName); + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "店铺掉线"; + row.Cells["colLoginStatus"].Value = "掉线"; + row.Cells["colCanUse"].Value = false; + } + })); + continue; + } + #endregion + + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ToString() == shop.ShopId); + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "正在查询"; + } + })); + + int page = 0; + int pageSize = 20; // 优惠券最大20 + int totalPage = 1; + bool isError = false; + string errMsg = ""; + while (page < totalPage) + { + if (cancellationTokenSource.IsCancellationRequested) + break; + + page++; + + int tryCount = 0; + tryAgain: + + GetToken(shop); + + if (page > 1) + Thread.Sleep(Randomx.GetId(3000, 7000)); + + long startStamp = BaseClass.DateTimeToTimestampMilliseconds(dtpCoupon2StartTime.Value.Date); + long endStamp = BaseClass.DateTimeToTimestampMilliseconds(dtpCoupon2StartTime.Value.Date.AddDays(numCoupon2KeepDays.Value.ParseToInt() + 1)) - 1; + string jsonStr = get_coupon_goods(shop, startStamp, endStamp, page, pageSize); + jsonStr = GetHtml.Unicode2String(jsonStr); + if (jsonStr.Contains("繁忙") && tryCount < 5) + { + tryCount++; + Thread.Sleep(Randomx.GetId(5000, 10000)); + goto tryAgain; + } + if (!jsonStr.Contains("\"success\":true")) + { + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + if (shop.LoginStatus != "登录成功") + break; + + isError = true; + string sErr = BaseRegex.GetStringJson(ref jsonStr, "error_msg"); + if (!string.IsNullOrWhiteSpace(sErr) && !errMsg.Contains(sErr)) + errMsg += sErr + " "; + page++; + continue; + } + + if (jsonStr.Contains("\"success\":true")) + { + PDDCouponGoodsListInfo pddCouponGoodsTmp = new PDDCouponGoodsListInfo(); + try + { + var jObj = JObject.Parse(jsonStr); + var rstStr = JsonHelper.SerializeObject(jObj["result"]); + pddCouponGoodsTmp = JsonHelper.DeserializeJsonToObject(rstStr); + this.pddCouponGoods.remaining_create_num = pddCouponGoodsTmp.remaining_create_num; + this.pddCouponGoods.total = pddCouponGoodsTmp.total; + } + catch (Exception ex) { BaseMsgForm.ShowError(ex.Message); } + foreach (var pInfo in pddCouponGoodsTmp.goods_list) + { + pInfo.shopId = shop.ShopId; + pInfo.shopName = shop.ShopAccount; + if (pInfo != null && !pddCouponGoods.goods_list.Any(a => a.id == pInfo.id)) + { + this.pddCouponGoods.goods_list.Add(pInfo); + string url = pInfo.thumb_url; + Invoke(new Action(() => + { + int rowId = this.dgvProduct.Rows.Add( + pInfo.is_filtered != true, + shop.ShopId, + shop.ShopAccount, + url.Replace("https", "http"), + DataGridViewExtension.defaultBitmap, // 列表图片,public static Bitmap defaultBitmap = new Bitmap(1,1); + pInfo.id, + pInfo.goods_name, + string.Join("~", pInfo.sku_group_price.Select(s => s / 100m)), + pInfo.quantity, + "", //收藏 + "", //总销量 + "", //30日销量 + pInfo.is_filtered == true ? "不可设置:" + pInfo.filtered_reason : "可设置", + "" // 操作结果,状态 + ); + + dgvProduct.Rows[rowId].Height = 60; + })); + } + } + int discountVal = 0; + Invoke(new Action(() => + { + discountVal = (numCouponValue.Value * 100).ParseToInt(); + })); + foreach (var pInfo in pddCouponGoodsTmp.goods_list) + { + if (pInfo.coupon_value_limit.FirstOrDefault() > discountVal || pInfo.coupon_value_limit.LastOrDefault() < discountVal) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + row.Cells["colOpResult"].Value = "优惠券金额不在可设置范围内!"; + } + } + } + var createLst = pddCouponGoodsTmp.goods_list; + // 筛选下不符合条件的直接不去设置了 + createLst = pddCouponGoodsTmp.goods_list.Where(g => g.coupon_value_limit.FirstOrDefault() <= discountVal && + g.coupon_value_limit.LastOrDefault() >= discountVal).Where(g => g.is_filtered == false).ToList(); + if (createLst.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + //设置商品立减券 + PDDCouponParam creatCouponParam = new PDDCouponParam(); + creatCouponParam.ignore_low_price = null; + creatCouponParam.source_type = 221; + //creatCouponParam.tool_full_channel = "12110_76109_010921_57020_"; + creatCouponParam.create_request_list = new List(); + foreach (var pInfo in createLst) + { + Invoke(new Action(() => + { + creatCouponParam.create_request_list.Add(new create_request + { + batch_desc = txtCoupon3Name.Text, + batch_end_time = endStamp, + batch_start_time = startStamp, + discount = (numCouponValue.Value * 100).ParseToInt(), + duration = cmbCoupon3KeepHours.Text.Trim().Replace("小时", "").Replace("天", ""), + goods_id = pInfo.id, + init_quantity = 10000, //张数固定天一万 //pInfo.quantity, + period_type = 0, + status = 2, // 固定填2 + user_limit = cmbCoupon3TicketNum.Text.Trim().Replace("张", "").ParseToInt(), + }); + })); + } + var creatRst = create_coupon_goods(shop, creatCouponParam); + creatRst = GetHtml.Unicode2String(creatRst); + if (!creatRst.Contains("\"success\":true")) + { + var error = BaseRegex.GetStringJson(ref creatRst, "error_msg"); + if (string.IsNullOrEmpty(error)) + error = creatRst; + foreach (var pInfo in createLst) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + row.Cells["colOpResult"].Value = error; + } + } + } + else + { + try + { + var jObj = JObject.Parse(creatRst); + var rstStr = JsonHelper.SerializeObject(jObj["result"]); + var pDDCreateCouponResultV2 = JsonHelper.DeserializeJsonToObject(rstStr); + + foreach (var pInfo in createLst) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + var createErr = pDDCreateCouponResultV2.error_msg_list?.FirstOrDefault(er => er.goods_id == pInfo.id); + if (createErr != null) + row.Cells["colOpResult"].Value = createErr.error_msg; + else + row.Cells["colOpResult"].Value = "设置成功!"; + } + } + } + catch (Exception ex) { BaseMsgForm.ShowError(ex.Message); } + } + } + + int total = BaseRegex.GetStringJson(ref jsonStr, "total").ParseToInt(); + totalPage = Math.Ceiling(1m * total / pageSize).ParseToInt(); + } + } + + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ToString() == shop.ShopId); + + if (!isError) + { + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "已设置"; + } + } + else + { + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "设置失败 " + errMsg; + } + } + })); + } + Invoke(new Action(() => + { + ucGroupBoxEx2.Enabled = true; + string sRst = "设置结束!"; + if (cancellationTokenSource.IsCancellationRequested) + sRst = "已取消设置!"; + + BaseMsgForm.ShowInfo(sRst); + this.statusBar.lblTaskStatus.Text = sRst; + })); + }, cancellationTokenSource.Token); + } + public void GetToken(ShopLoginInfo shop) + { + if (!dicShopGetCount.Keys.Contains(shop)) + dicShopGetCount[shop] = 100; + else + dicShopGetCount[shop]++; + if (dicShopGetCount[shop] > 5) + { + dicShopGetCount[shop] = 0; + + while (PDDShopLoginForm.shopLoginInstance != null && !PDDShopLoginForm.shopLoginInstance.IsDisposed) + { + Thread.Sleep(500); + } + + Invoke(new Action(() => + { + this.panel1.SendToBack(); + PDDShopLoginForm loginForm = new PDDShopLoginForm(shop); + loginForm.TopLevel = false; + loginForm.openType = EnumOpenType.manage; + loginForm.WindowState = FormWindowState.Maximized; + loginForm.InitUrl = "https://mms.pinduoduo.com/tool/surprise-coupon/create/"; + loginForm.Dock = DockStyle.Fill; + this.panel1.Controls.Add(loginForm); + loginForm.Show(); + })); + int sleepTime = Randomx.GetId(2000, 3000); + Thread.Sleep(sleepTime); + + Invoke(new Action(() => + { + if (PDDShopLoginForm.shopLoginInstance != null) + PDDShopLoginForm.shopLoginInstance.Dispose(); + })); + } + } + + private void btnCancel_Click(object sender, EventArgs e) + { + if (cancellationTokenSource != null && !cancellationTokenSource.IsCancellationRequested) + cancellationTokenSource.Cancel(); + } + + private void dgvProduct_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvProduct.Columns[e.ColumnIndex].HeaderText; + switch (headerText) + { + case "删除": + //if (BaseMsgForm.ShowConfirm("确定删除商品吗?删除后不可恢复!").DialogResult == DialogResult.Cancel) + // return; + //var rst = DeleteProduct(dbId); + //if (rst) + //{ + // SearchDbProdSelect(this.ucSplitPage1.CurrentPage); + //} + break; + case "图片": + { + ShowImgForm imgFrom = new ShowImgForm(dgvProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString()); + imgFrom.ShowDialog(); + } + break; + case "": + dgvProduct.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvProduct.Rows[e.RowIndex].Cells["colCheck"].Value; + break; + default: + break; + } + } + } +} diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.resx b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.resx new file mode 100644 index 0000000..ff9031b --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponLingQuanZhongXinForm.resx @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.Designer.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.Designer.cs new file mode 100644 index 0000000..5dcc1c9 --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.Designer.cs @@ -0,0 +1,876 @@ + +namespace TemuKJD.PDDForms.ProductForms.CouponForms +{ + partial class PDDProdCouponShangPinLiJianForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); + this.splitContainer3 = new System.Windows.Forms.SplitContainer(); + this.splitContainer2 = new System.Windows.Forms.SplitContainer(); + this.dgvShop = new TemuKJD.UserComponent.DataGridViewEx(); + this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colShopLoginName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopNotes = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSelectProduct = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colLoginStatus = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colCanUse = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colRemaining = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colMessage = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.pbLoading = new System.Windows.Forms.PictureBox(); + this.panel1 = new System.Windows.Forms.Panel(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.dgvProduct = new TemuKJD.UserComponent.DataGridViewEx(); + this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colSupplierId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSupplierName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colImg = new System.Windows.Forms.DataGridViewImageColumn(); + this.colSpuId = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colProductName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPrice = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colStock = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colFavorites = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSales = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSalesThirtyDays = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colIsCanSet = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOpResult = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.splitContainer4 = new System.Windows.Forms.SplitContainer(); + this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); + this.btnClear = new DevComponents.DotNetBar.PanelEx(); + this.btnCancel = new DevComponents.DotNetBar.PanelEx(); + this.btnRefreshShop = new DevComponents.DotNetBar.PanelEx(); + this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.label14 = new System.Windows.Forms.Label(); + this.label11 = new System.Windows.Forms.Label(); + this.numCouponValue = new System.Windows.Forms.NumericUpDown(); + this.line2 = new DevComponents.DotNetBar.Controls.Line(); + this.label5 = new System.Windows.Forms.Label(); + this.numCoupon2KeepDays = new System.Windows.Forms.NumericUpDown(); + this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.label6 = new System.Windows.Forms.Label(); + this.dtpCoupon2StartTime = new System.Windows.Forms.DateTimePicker(); + this.txtCoupon2Name = new System.Windows.Forms.TextBox(); + this.label7 = new System.Windows.Forms.Label(); + this.label9 = new System.Windows.Forms.Label(); + this.chkCoupon2 = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.btnCreate = new DevComponents.DotNetBar.PanelEx(); + this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit(); + this.splitContainer3.Panel1.SuspendLayout(); + this.splitContainer3.Panel2.SuspendLayout(); + this.splitContainer3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit(); + this.splitContainer2.Panel1.SuspendLayout(); + this.splitContainer2.Panel2.SuspendLayout(); + this.splitContainer2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); + this.panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit(); + this.splitContainer4.Panel1.SuspendLayout(); + this.splitContainer4.Panel2.SuspendLayout(); + this.splitContainer4.SuspendLayout(); + this.ucGroupBoxEx1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numCouponValue)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numCoupon2KeepDays)).BeginInit(); + this.ucGroupBoxEx2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); + this.splitContainer1.Panel1.SuspendLayout(); + this.splitContainer1.Panel2.SuspendLayout(); + this.splitContainer1.SuspendLayout(); + this.SuspendLayout(); + // + // splitContainer3 + // + this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer3.Location = new System.Drawing.Point(0, 0); + this.splitContainer3.Name = "splitContainer3"; + this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer3.Panel1 + // + this.splitContainer3.Panel1.Controls.Add(this.splitContainer2); + // + // splitContainer3.Panel2 + // + this.splitContainer3.Panel2.Controls.Add(this.splitContainer4); + this.splitContainer3.Size = new System.Drawing.Size(1210, 408); + this.splitContainer3.SplitterDistance = 378; + this.splitContainer3.TabIndex = 1; + // + // splitContainer2 + // + this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer2.Location = new System.Drawing.Point(0, 0); + this.splitContainer2.Name = "splitContainer2"; + // + // splitContainer2.Panel1 + // + this.splitContainer2.Panel1.Controls.Add(this.dgvShop); + this.splitContainer2.Panel1.Padding = new System.Windows.Forms.Padding(4, 0, 0, 0); + // + // splitContainer2.Panel2 + // + this.splitContainer2.Panel2.Controls.Add(this.pbLoading); + this.splitContainer2.Panel2.Controls.Add(this.panel1); + this.splitContainer2.Panel2.Controls.Add(this.dgvProduct); + this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); + this.splitContainer2.Size = new System.Drawing.Size(1210, 378); + this.splitContainer2.SplitterDistance = 300; + this.splitContainer2.TabIndex = 0; + // + // dgvShop + // + this.dgvShop.AllowUserToAddRows = false; + this.dgvShop.AllowUserToDeleteRows = false; + dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + this.dgvShop.BackgroundColor = System.Drawing.Color.White; + this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colSelect, + this.colShopLoginName, + this.colShopId, + this.colShopName, + this.colShopNotes, + this.colSelectProduct, + this.colLoginStatus, + this.colCanUse, + this.colRemaining, + this.colMessage}); + this.dgvShop.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvShop.Location = new System.Drawing.Point(4, 0); + this.dgvShop.Name = "dgvShop"; + this.dgvShop.ReadOnly = true; + this.dgvShop.RowHeadersWidth = 25; + this.dgvShop.RowTemplate.Height = 23; + this.dgvShop.Size = new System.Drawing.Size(296, 378); + this.dgvShop.TabIndex = 6; + this.dgvShop.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvShop_CellContentClick); + // + // colSelect + // + this.colSelect.HeaderText = "全选"; + this.colSelect.Name = "colSelect"; + this.colSelect.ReadOnly = true; + this.colSelect.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSelect.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSelect.Width = 28; + // + // colShopLoginName + // + this.colShopLoginName.HeaderText = "店铺登录名"; + this.colShopLoginName.Name = "colShopLoginName"; + this.colShopLoginName.ReadOnly = true; + this.colShopLoginName.Visible = false; + // + // colShopId + // + this.colShopId.HeaderText = "店铺Id"; + this.colShopId.Name = "colShopId"; + this.colShopId.ReadOnly = true; + this.colShopId.Visible = false; + this.colShopId.Width = 55; + // + // colShopName + // + this.colShopName.FillWeight = 150F; + this.colShopName.HeaderText = "店铺名称"; + this.colShopName.Name = "colShopName"; + this.colShopName.ReadOnly = true; + this.colShopName.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colShopName.Width = 70; + // + // colShopNotes + // + this.colShopNotes.HeaderText = "分组"; + this.colShopNotes.Name = "colShopNotes"; + this.colShopNotes.ReadOnly = true; + this.colShopNotes.Width = 70; + // + // colSelectProduct + // + this.colSelectProduct.HeaderText = "选择商品"; + this.colSelectProduct.Name = "colSelectProduct"; + this.colSelectProduct.ReadOnly = true; + this.colSelectProduct.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSelectProduct.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSelectProduct.Visible = false; + this.colSelectProduct.Width = 62; + // + // colLoginStatus + // + this.colLoginStatus.HeaderText = "状态"; + this.colLoginStatus.Name = "colLoginStatus"; + this.colLoginStatus.ReadOnly = true; + this.colLoginStatus.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colLoginStatus.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colLoginStatus.Width = 40; + // + // colCanUse + // + this.colCanUse.HeaderText = "可用"; + this.colCanUse.Name = "colCanUse"; + this.colCanUse.ReadOnly = true; + this.colCanUse.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCanUse.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCanUse.Visible = false; + this.colCanUse.Width = 28; + // + // colRemaining + // + this.colRemaining.HeaderText = "月限额"; + this.colRemaining.Name = "colRemaining"; + this.colRemaining.ReadOnly = true; + this.colRemaining.Visible = false; + // + // colMessage + // + this.colMessage.HeaderText = "消息"; + this.colMessage.Name = "colMessage"; + this.colMessage.ReadOnly = true; + // + // pbLoading + // + this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; + this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; + this.pbLoading.Location = new System.Drawing.Point(428, 164); + this.pbLoading.Name = "pbLoading"; + this.pbLoading.Size = new System.Drawing.Size(50, 50); + this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pbLoading.TabIndex = 188; + this.pbLoading.TabStop = false; + this.pbLoading.Visible = false; + // + // panel1 + // + this.panel1.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.panel1.Controls.Add(this.ucSplitPage1); + this.panel1.Location = new System.Drawing.Point(36, 53); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(832, 292); + this.panel1.TabIndex = 189; + // + // ucSplitPage1 + // + this.ucSplitPage1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.IsShowPageSize = false; + this.ucSplitPage1.Location = new System.Drawing.Point(247, 255); + this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); + this.ucSplitPage1.Name = "ucSplitPage1"; + this.ucSplitPage1.Padding = new System.Windows.Forms.Padding(0, 0, 1, 0); + this.ucSplitPage1.PageSize = 50; + this.ucSplitPage1.Size = new System.Drawing.Size(573, 26); + this.ucSplitPage1.TabIndex = 675; + this.ucSplitPage1.TotalPage = 1; + this.ucSplitPage1.Visible = false; + // + // dgvProduct + // + this.dgvProduct.AllowUserToAddRows = false; + this.dgvProduct.AllowUserToDeleteRows = false; + dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3; + this.dgvProduct.BackgroundColor = System.Drawing.Color.White; + this.dgvProduct.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.dgvProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4; + this.dgvProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colCheck, + this.colSupplierId, + this.colSupplierName, + this.colImgUrl, + this.colImg, + this.colSpuId, + this.colProductName, + this.colPrice, + this.colStock, + this.colFavorites, + this.colSales, + this.colSalesThirtyDays, + this.colIsCanSet, + this.colOpResult}); + this.dgvProduct.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvProduct.Location = new System.Drawing.Point(0, 0); + this.dgvProduct.Name = "dgvProduct"; + this.dgvProduct.ReadOnly = true; + this.dgvProduct.RowTemplate.Height = 23; + this.dgvProduct.Size = new System.Drawing.Size(902, 378); + this.dgvProduct.TabIndex = 187; + this.dgvProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProduct_CellContentClick); + // + // colCheck + // + this.colCheck.Frozen = true; + this.colCheck.HeaderText = "选择"; + this.colCheck.Name = "colCheck"; + this.colCheck.ReadOnly = true; + this.colCheck.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCheck.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCheck.Width = 30; + // + // colSupplierId + // + this.colSupplierId.HeaderText = "店铺Id"; + this.colSupplierId.Name = "colSupplierId"; + this.colSupplierId.ReadOnly = true; + // + // colSupplierName + // + this.colSupplierName.HeaderText = "店铺名称"; + this.colSupplierName.Name = "colSupplierName"; + this.colSupplierName.ReadOnly = true; + this.colSupplierName.Width = 110; + // + // colImgUrl + // + this.colImgUrl.HeaderText = "图片地址"; + this.colImgUrl.Name = "colImgUrl"; + this.colImgUrl.ReadOnly = true; + this.colImgUrl.Visible = false; + // + // colImg + // + this.colImg.HeaderText = "图片"; + this.colImg.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom; + this.colImg.Name = "colImg"; + this.colImg.ReadOnly = true; + this.colImg.Width = 60; + // + // colSpuId + // + this.colSpuId.HeaderText = "商品ID"; + this.colSpuId.Name = "colSpuId"; + this.colSpuId.ReadOnly = true; + this.colSpuId.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSpuId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSpuId.Width = 80; + // + // colProductName + // + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductName.DefaultCellStyle = dataGridViewCellStyle5; + this.colProductName.HeaderText = "商品标题"; + this.colProductName.Name = "colProductName"; + this.colProductName.ReadOnly = true; + this.colProductName.Width = 260; + // + // colPrice + // + this.colPrice.HeaderText = "价格"; + this.colPrice.Name = "colPrice"; + this.colPrice.ReadOnly = true; + this.colPrice.Width = 90; + // + // colStock + // + this.colStock.HeaderText = "库存"; + this.colStock.Name = "colStock"; + this.colStock.ReadOnly = true; + this.colStock.Width = 70; + // + // colFavorites + // + this.colFavorites.HeaderText = "收藏"; + this.colFavorites.Name = "colFavorites"; + this.colFavorites.ReadOnly = true; + this.colFavorites.Visible = false; + this.colFavorites.Width = 50; + // + // colSales + // + this.colSales.HeaderText = "总销量"; + this.colSales.Name = "colSales"; + this.colSales.ReadOnly = true; + this.colSales.Visible = false; + this.colSales.Width = 60; + // + // colSalesThirtyDays + // + this.colSalesThirtyDays.HeaderText = "30日销量"; + this.colSalesThirtyDays.Name = "colSalesThirtyDays"; + this.colSalesThirtyDays.ReadOnly = true; + this.colSalesThirtyDays.Visible = false; + this.colSalesThirtyDays.Width = 70; + // + // colIsCanSet + // + this.colIsCanSet.HeaderText = "是否可设置"; + this.colIsCanSet.Name = "colIsCanSet"; + this.colIsCanSet.ReadOnly = true; + // + // colOpResult + // + this.colOpResult.HeaderText = "操作结果"; + this.colOpResult.Name = "colOpResult"; + this.colOpResult.ReadOnly = true; + this.colOpResult.Width = 200; + // + // splitContainer4 + // + this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer4.Location = new System.Drawing.Point(0, 0); + this.splitContainer4.Name = "splitContainer4"; + // + // splitContainer4.Panel1 + // + this.splitContainer4.Panel1.Controls.Add(this.statusBar); + // + // splitContainer4.Panel2 + // + this.splitContainer4.Panel2.Controls.Add(this.btnClear); + this.splitContainer4.Panel2.Controls.Add(this.btnCancel); + this.splitContainer4.Size = new System.Drawing.Size(1210, 26); + this.splitContainer4.SplitterDistance = 519; + this.splitContainer4.TabIndex = 3; + // + // statusBar + // + this.statusBar.BackColor = System.Drawing.Color.White; + this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill; + this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.statusBar.Location = new System.Drawing.Point(0, 0); + this.statusBar.Margin = new System.Windows.Forms.Padding(0); + this.statusBar.Name = "statusBar"; + this.statusBar.Size = new System.Drawing.Size(519, 26); + this.statusBar.TabIndex = 2; + // + // btnClear + // + this.btnClear.Anchor = System.Windows.Forms.AnchorStyles.Right; + this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnClear.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnClear.DisabledBackColor = System.Drawing.Color.Empty; + this.btnClear.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnClear.Location = new System.Drawing.Point(4, 1); + this.btnClear.Name = "btnClear"; + this.btnClear.Size = new System.Drawing.Size(90, 21); + this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnClear.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnClear.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnClear.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnClear.Style.GradientAngle = 90; + this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnClear.TabIndex = 440; + this.btnClear.Text = "清空结果"; + this.btnClear.Visible = false; + // + // btnCancel + // + 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(568, 1); + this.btnCancel.Name = "btnCancel"; + this.btnCancel.Size = new System.Drawing.Size(115, 21); + 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 = 668; + this.btnCancel.Text = "停止当前操作"; + this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click); + // + // btnRefreshShop + // + this.btnRefreshShop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnRefreshShop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnRefreshShop.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnRefreshShop.DisabledBackColor = System.Drawing.Color.Empty; + this.btnRefreshShop.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnRefreshShop.Location = new System.Drawing.Point(17, 31); + this.btnRefreshShop.Name = "btnRefreshShop"; + this.btnRefreshShop.Size = new System.Drawing.Size(110, 24); + this.btnRefreshShop.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnRefreshShop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnRefreshShop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnRefreshShop.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnRefreshShop.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnRefreshShop.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnRefreshShop.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnRefreshShop.Style.GradientAngle = 90; + this.btnRefreshShop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnRefreshShop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnRefreshShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnRefreshShop.TabIndex = 431; + this.btnRefreshShop.Text = "刷新店铺"; + this.btnRefreshShop.Click += new System.EventHandler(this.btnRefreshShop_Click); + // + // ucGroupBoxEx1 + // + this.ucGroupBoxEx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.ucGroupBoxEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucGroupBoxEx1.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx1.Controls.Add(this.btnRefreshShop); + this.ucGroupBoxEx1.Location = new System.Drawing.Point(3, 2); + this.ucGroupBoxEx1.Name = "ucGroupBoxEx1"; + this.ucGroupBoxEx1.Size = new System.Drawing.Size(144, 140); + this.ucGroupBoxEx1.TabIndex = 399; + this.ucGroupBoxEx1.TabStop = false; + this.ucGroupBoxEx1.Text = "基础"; + // + // label14 + // + this.label14.AutoSize = true; + this.label14.Location = new System.Drawing.Point(331, 35); + this.label14.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label14.Name = "label14"; + this.label14.Size = new System.Drawing.Size(20, 17); + this.label14.TabIndex = 715; + this.label14.Text = "元"; + // + // label11 + // + this.label11.AutoSize = true; + this.label11.Location = new System.Drawing.Point(222, 35); + this.label11.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label11.Name = "label11"; + this.label11.Size = new System.Drawing.Size(68, 17); + this.label11.TabIndex = 714; + this.label11.Text = "优惠券金额"; + // + // numCouponValue + // + this.numCouponValue.Location = new System.Drawing.Point(290, 32); + this.numCouponValue.Name = "numCouponValue"; + this.numCouponValue.Size = new System.Drawing.Size(41, 23); + this.numCouponValue.TabIndex = 713; + this.numCouponValue.Value = new decimal(new int[] { + 2, + 0, + 0, + 0}); + // + // line2 + // + this.line2.ForeColor = System.Drawing.SystemColors.ScrollBar; + this.line2.Location = new System.Drawing.Point(200, 19); + this.line2.Name = "line2"; + this.line2.Size = new System.Drawing.Size(14, 106); + this.line2.TabIndex = 674; + this.line2.Text = "line2"; + this.line2.VerticalLine = true; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(133, 104); + this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(20, 17); + this.label5.TabIndex = 673; + this.label5.Text = "天"; + // + // numCoupon2KeepDays + // + this.numCoupon2KeepDays.Location = new System.Drawing.Point(91, 101); + this.numCoupon2KeepDays.Maximum = new decimal(new int[] { + 365, + 0, + 0, + 0}); + this.numCoupon2KeepDays.Name = "numCoupon2KeepDays"; + this.numCoupon2KeepDays.Size = new System.Drawing.Size(41, 23); + this.numCoupon2KeepDays.TabIndex = 672; + this.numCoupon2KeepDays.Value = new decimal(new int[] { + 365, + 0, + 0, + 0}); + // + // ucGroupBoxEx2 + // + this.ucGroupBoxEx2.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.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx2.Controls.Add(this.label14); + this.ucGroupBoxEx2.Controls.Add(this.label11); + this.ucGroupBoxEx2.Controls.Add(this.numCouponValue); + this.ucGroupBoxEx2.Controls.Add(this.line2); + this.ucGroupBoxEx2.Controls.Add(this.label5); + this.ucGroupBoxEx2.Controls.Add(this.numCoupon2KeepDays); + this.ucGroupBoxEx2.Controls.Add(this.label6); + this.ucGroupBoxEx2.Controls.Add(this.dtpCoupon2StartTime); + this.ucGroupBoxEx2.Controls.Add(this.txtCoupon2Name); + this.ucGroupBoxEx2.Controls.Add(this.label7); + this.ucGroupBoxEx2.Controls.Add(this.label9); + this.ucGroupBoxEx2.Controls.Add(this.chkCoupon2); + this.ucGroupBoxEx2.Controls.Add(this.btnCreate); + this.ucGroupBoxEx2.Location = new System.Drawing.Point(147, 2); + this.ucGroupBoxEx2.Name = "ucGroupBoxEx2"; + this.ucGroupBoxEx2.Size = new System.Drawing.Size(1060, 140); + this.ucGroupBoxEx2.TabIndex = 667; + this.ucGroupBoxEx2.TabStop = false; + this.ucGroupBoxEx2.Text = "商品查询"; + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(10, 104); + this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(80, 17); + this.label6.TabIndex = 671; + this.label6.Text = "活动时间持续"; + // + // dtpCoupon2StartTime + // + this.dtpCoupon2StartTime.Location = new System.Drawing.Point(67, 72); + this.dtpCoupon2StartTime.Name = "dtpCoupon2StartTime"; + this.dtpCoupon2StartTime.Size = new System.Drawing.Size(130, 23); + this.dtpCoupon2StartTime.TabIndex = 669; + // + // txtCoupon2Name + // + this.txtCoupon2Name.Location = new System.Drawing.Point(53, 43); + this.txtCoupon2Name.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtCoupon2Name.Name = "txtCoupon2Name"; + this.txtCoupon2Name.Size = new System.Drawing.Size(144, 23); + this.txtCoupon2Name.TabIndex = 667; + this.txtCoupon2Name.Text = "商品立减券"; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(10, 46); + this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(44, 17); + this.label7.TabIndex = 668; + this.label7.Text = "券名称"; + // + // label9 + // + this.label9.AutoSize = true; + this.label9.Location = new System.Drawing.Point(10, 75); + this.label9.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label9.Name = "label9"; + this.label9.Size = new System.Drawing.Size(56, 17); + this.label9.TabIndex = 670; + this.label9.Text = "领取时间"; + // + // chkCoupon2 + // + this.chkCoupon2.AutoSize = true; + this.chkCoupon2.Checked = true; + this.chkCoupon2.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkCoupon2.Location = new System.Drawing.Point(14, 19); + this.chkCoupon2.Name = "chkCoupon2"; + this.chkCoupon2.Size = new System.Drawing.Size(111, 21); + this.chkCoupon2.TabIndex = 666; + this.chkCoupon2.Text = "创建商品立减券"; + this.chkCoupon2.UseVisualStyleBackColor = true; + // + // btnCreate + // + this.btnCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnCreate.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnCreate.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnCreate.DisabledBackColor = System.Drawing.Color.Empty; + this.btnCreate.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnCreate.Location = new System.Drawing.Point(924, 32); + this.btnCreate.Name = "btnCreate"; + this.btnCreate.Size = new System.Drawing.Size(104, 23); + this.btnCreate.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnCreate.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnCreate.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnCreate.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnCreate.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnCreate.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnCreate.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnCreate.Style.GradientAngle = 90; + this.btnCreate.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnCreate.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnCreate.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnCreate.TabIndex = 468; + this.btnCreate.Text = "开始创建"; + this.btnCreate.Click += new System.EventHandler(this.btnCreate_Click); + // + // splitContainer1 + // + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Name = "splitContainer1"; + this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer1.Panel1 + // + this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx2); + this.splitContainer1.Panel1.Controls.Add(this.ucGroupBoxEx1); + // + // splitContainer1.Panel2 + // + this.splitContainer1.Panel2.Controls.Add(this.splitContainer3); + this.splitContainer1.Size = new System.Drawing.Size(1210, 552); + this.splitContainer1.SplitterDistance = 140; + this.splitContainer1.TabIndex = 15; + // + // PDDProdCouponShangPinLiJianForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.Color.White; + this.ClientSize = new System.Drawing.Size(1210, 552); + this.Controls.Add(this.splitContainer1); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Name = "PDDProdCouponShangPinLiJianForm"; + this.Text = "PDDProdCouponShangPinLiJianForm"; + this.Load += new System.EventHandler(this.PDDProdCouponShangPinLiJianForm_Load); + this.VisibleChanged += new System.EventHandler(this.PDDProdCouponShangPinLiJianForm_VisibleChanged); + this.splitContainer3.Panel1.ResumeLayout(false); + this.splitContainer3.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit(); + this.splitContainer3.ResumeLayout(false); + this.splitContainer2.Panel1.ResumeLayout(false); + this.splitContainer2.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit(); + this.splitContainer2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); + this.panel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).EndInit(); + this.splitContainer4.Panel1.ResumeLayout(false); + this.splitContainer4.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit(); + this.splitContainer4.ResumeLayout(false); + this.ucGroupBoxEx1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.numCouponValue)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numCoupon2KeepDays)).EndInit(); + this.ucGroupBoxEx2.ResumeLayout(false); + this.ucGroupBoxEx2.PerformLayout(); + this.splitContainer1.Panel1.ResumeLayout(false); + this.splitContainer1.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); + this.splitContainer1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.SplitContainer splitContainer3; + private System.Windows.Forms.SplitContainer splitContainer2; + private UserComponent.DataGridViewEx dgvShop; + private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopLoginName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopId; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopNotes; + private System.Windows.Forms.DataGridViewLinkColumn colSelectProduct; + private System.Windows.Forms.DataGridViewLinkColumn colLoginStatus; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCanUse; + private System.Windows.Forms.DataGridViewTextBoxColumn colRemaining; + private System.Windows.Forms.DataGridViewTextBoxColumn colMessage; + private System.Windows.Forms.PictureBox pbLoading; + private System.Windows.Forms.Panel panel1; + private UserControls.UcSplitPage ucSplitPage1; + private UserComponent.DataGridViewEx dgvProduct; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; + private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierId; + private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierName; + private System.Windows.Forms.DataGridViewTextBoxColumn colImgUrl; + private System.Windows.Forms.DataGridViewImageColumn colImg; + private System.Windows.Forms.DataGridViewLinkColumn colSpuId; + private System.Windows.Forms.DataGridViewTextBoxColumn colProductName; + private System.Windows.Forms.DataGridViewTextBoxColumn colPrice; + private System.Windows.Forms.DataGridViewTextBoxColumn colStock; + private System.Windows.Forms.DataGridViewTextBoxColumn colFavorites; + private System.Windows.Forms.DataGridViewTextBoxColumn colSales; + private System.Windows.Forms.DataGridViewTextBoxColumn colSalesThirtyDays; + private System.Windows.Forms.DataGridViewTextBoxColumn colIsCanSet; + private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult; + private System.Windows.Forms.SplitContainer splitContainer4; + private UserControls.StatusBarUserControl statusBar; + private DevComponents.DotNetBar.PanelEx btnClear; + private DevComponents.DotNetBar.PanelEx btnCancel; + private DevComponents.DotNetBar.PanelEx btnRefreshShop; + private UserComponent.UcGroupBoxEx ucGroupBoxEx1; + private System.Windows.Forms.Label label14; + private System.Windows.Forms.Label label11; + private System.Windows.Forms.NumericUpDown numCouponValue; + private DevComponents.DotNetBar.Controls.Line line2; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.NumericUpDown numCoupon2KeepDays; + private UserComponent.UcGroupBoxEx ucGroupBoxEx2; + private System.Windows.Forms.Label label6; + private System.Windows.Forms.DateTimePicker dtpCoupon2StartTime; + private System.Windows.Forms.TextBox txtCoupon2Name; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.Label label9; + private UserComponent.UcCheckBox chkCoupon2; + private DevComponents.DotNetBar.PanelEx btnCreate; + private System.Windows.Forms.SplitContainer splitContainer1; + } +} \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.cs b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.cs new file mode 100644 index 0000000..b80f5ed --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.cs @@ -0,0 +1,572 @@ +using AllBase; +using AllBase.Helper; +using AllBase.Model.Param.PDDCouponParam; +using AllBase.Model.Result; +using AllBase.Model.Result.PDDResult; +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; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.BLL; +using TemuKJD.Extension; +using TemuKJD.PDDForms.ShopForms; +using TemuKJD.ToolForms; + +namespace TemuKJD.PDDForms.ProductForms.CouponForms +{ + public partial class PDDProdCouponShangPinLiJianForm : BaseForm + { + public CancellationTokenSource cancellationTokenSource { get; set; } = null; + + bool isInit = false; + Dictionary dicShopGetCount = new Dictionary(); + PDDCouponGoodsListInfo pddCouponGoods = new PDDCouponGoodsListInfo(); + + public PDDProdCouponShangPinLiJianForm() + { + InitializeComponent(); + } + + private void PDDProdCouponShangPinLiJianForm_Load(object sender, EventArgs e) + { + this.dtpCoupon2StartTime.MinDate = DateTime.Now.Date; + + this.dgvShop.AddSelectorColumn("colSelect"); + this.dgvProduct.AddSelectorColumn("colCheck"); + dgvProduct.AddImgColumn("colImg", "colImgUrl"); + } + + private void PDDProdCouponShangPinLiJianForm_VisibleChanged(object sender, EventArgs e) + { + if (Visible == true) + { + RefreshShop(); + isInit = true; + } + } + + private void btnRefreshShop_Click(object sender, EventArgs e) + { + RefreshShop(); + } + private void RefreshShop() + { + // 店铺Id + var selectIds = dgvShop.Rows.Cast().Where(row + => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList(); + // 获取被删除的店铺 + List dgvRowList = dgvShop.Rows.Cast().Where(row + => !GlobalConfig.ShopLoginList.Any(s => s.ShopId == row.Cells["colShopId"]?.Value?.ToString())).ToList(); + // 更新被删除的店铺列表 + foreach (var row in dgvRowList) + { + dgvShop.Rows.Remove(row); + } + // 绑定其他店铺(含新导入的店铺) + foreach (ShopLoginInfo shopEntity in GlobalConfig.ShopLoginList) + { + if (!string.IsNullOrEmpty(shopEntity.ShopId)) + BindShop(shopEntity, selectIds); + } + } + + private void BindShop(ShopLoginInfo shopEntity, List selectShopId = null) + { + if (shopEntity == null) + return; + if (selectShopId == null) + selectShopId = new List(); + + bool canUse = shopEntity.LoginStatus == "登录成功"; + //canUse = true; // 内部库不需要校验登录状态 + var row = dgvShop.Rows.Cast().FirstOrDefault(p => p.Cells.GetCellValueFromColumnName("colShopId").ParseToString() == shopEntity.ShopId); + if (row == null) + { + this.dgvShop.Rows.Add( + !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse), + shopEntity.LoginName, + shopEntity.ShopId, + shopEntity.ShopAccount, + shopEntity.Notes, + "选择商品", + canUse ? "在线" : "掉线", + canUse, + shopEntity.AddProductRemaining, + string.Empty + ); + } + else + { + row.Cells["colSelect"].Value = !isInit || (selectShopId.Contains(shopEntity.ShopId) && canUse); + row.Cells["colShopLoginName"].Value = shopEntity.LoginName; + row.Cells["colShopName"].Value = shopEntity.ShopAccount; + row.Cells["colShopNotes"].Value = shopEntity.Notes; + row.Cells["colLoginStatus"].Value = canUse ? "在线" : "掉线"; + row.Cells["colLoginStatus"].Style.ForeColor = canUse ? Color.Green : Color.Red; + row.Cells["colCanUse"].Value = canUse; + row.Cells["colRemaining"].Value = shopEntity.AddProductRemaining; + } + } + + private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvShop.Columns[e.ColumnIndex].HeaderText; + string columnName = dgvShop.Columns[e.ColumnIndex].Name; + string shopId = dgvShop.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString(); + string shopAccount = dgvShop.Rows[e.RowIndex].Cells["colShopName"].Value.ToString(); + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId.ToString()); + var row = dgvShop.Rows[e.RowIndex]; + switch (columnName) + { + case "colSelect": + row.Cells["colSelect"].Value = !row.Cells["colSelect"].Value.ParseToBool(); + break; + case "colLoginStatus": + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + PDDShopLoginForm shopLoginForm = new PDDShopLoginForm(shop); + if (shop.LoginStatus != "登录成功") + { + shopLoginForm.openType = EnumOpenType.login; + shopLoginForm.ShowDialog(); + RefreshShop(); + } + else + { + shopLoginForm.openType = EnumOpenType.manage; + shopLoginForm.WindowState = FormWindowState.Maximized; + shopLoginForm.Show(); + } + break; + } + } + + public string get_coupon_goods(ShopLoginInfo shop, long startTime, long endTime, int page = 1, int pageSize = 20) + { + var anti = shop.AntiContents.LastOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + string url = "https://mms.pinduoduo.com/madrid/query_filtered_mall_goods_list"; + string body = "{\"sort_by\":\"id\",\"sort_type\":\"DESC\",\"size\":" + pageSize + ",\"page\":" + page + + ",\"source_type\":54,\"start_time\":" + startTime + ",\"end_time\":" + endTime + ",\"period_type\":2}"; + + string refere = "https://mms.pinduoduo.com/tool/coupon/create?chooseType=7&tool_full_channel=10921_57020"; + + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + for (int i = 0; i < 5 && (result.Contains("网络繁忙,请不要频繁操作") || result.Contains("您的店铺操作过于频繁,请稍后操作")); i++) + { + shop.AntiContents.Remove(anti); + anti = shop.AntiContents.FirstOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + } + } + return result; + } + public string create_coupon_goods(ShopLoginInfo shop, PDDCouponParam couponParam) + { + var anti = shop.AntiContents.LastOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + string url = "https://mms.pinduoduo.com/madrid/merchant/async_create_merchant_goods_batch_v2"; + string body = JsonHelper.SerializeObject(couponParam); + + string refere = "https://mms.pinduoduo.com/tool/coupon/create?chooseType=7&tool_full_channel=10921_57020"; + + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + for (int i = 0; i < 5 && (result.Contains("网络繁忙,请不要频繁操作") || result.Contains("您的店铺操作过于频繁,请稍后操作")); i++) + { + shop.AntiContents.Remove(anti); + anti = shop.AntiContents.FirstOrDefault().ParseToString(); + if (shop.AntiContents.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)]; + result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti); + } + } + return result; + } + + private void btnCreate_Click(object sender, EventArgs e) + { + var lstShopId = dgvShop.Rows.Cast() + .Where(row => row.Cells["colSelect"]?.Value.ParseToBool() == true && row.Cells["colLoginStatus"]?.Value.ParseToString() == "在线") + .Select(r => r.Cells["colShopId"]?.Value.ToString()).ToList(); + if (lstShopId.Count == 0) + { + BaseMsgForm.ShowInfo("请选择登录的店铺!"); + return; + } + pddCouponGoods.goods_list.Clear(); + pddCouponGoods.remaining_create_num = 1; + pddCouponGoods.total = 1; + pddCouponGoods.existed_coupon_list = new List(); + + dgvProduct.Rows.Clear(); + + var dgvRows = this.dgvShop.Rows.Cast();//.Where(r => lstShopId.Contains(r.Cells["colShopId"].Value.ParseToString())); + foreach (var row in dgvRows) + { + row.Cells["colMessage"].Value = ""; + } + + + if (PDDShopLoginForm.shopLoginInstance != null && PDDShopLoginForm.shopLoginInstance.IsDisposed != true) + PDDShopLoginForm.shopLoginInstance.Dispose(); + ucGroupBoxEx2.Enabled = false; + cancellationTokenSource = new CancellationTokenSource(); + Task.Run(() => + { + var lstShopIdTemp = new List(); + lstShopIdTemp.AddRange(lstShopId); + int i = 0; + + foreach (var shopId in lstShopIdTemp) + { + this.Invoke(new Action(() => + { + this.statusBar.lblTaskStatus.Text = "正在查询..."; + this.statusBar.pgbTaskProgress.Maximum = lstShopIdTemp.Count; + this.statusBar.UpdateProgressBar(i + 1); + i++; + })); + + if (cancellationTokenSource.IsCancellationRequested) + break; + + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + if (shop == null) + continue; + + #region 检测登录 + if (shop.LoginStatus == "登录成功") + { + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + } + if (shop.LoginStatus != "登录成功") + { + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopLoginName"].Value.ToString() == shop.LoginName); + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "店铺掉线"; + row.Cells["colLoginStatus"].Value = "掉线"; + row.Cells["colCanUse"].Value = false; + } + })); + continue; + } + #endregion + + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ToString() == shop.ShopId); + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "正在查询"; + } + })); + + int page = 0; + int pageSize = 20; // 优惠券最大20 + int totalPage = 1; + bool isError = false; + string errMsg = ""; + while (page < totalPage) + { + if (cancellationTokenSource.IsCancellationRequested) + break; + + page++; + + int tryCount = 0; + tryAgain: + + GetToken(shop); + + if (page > 1) + Thread.Sleep(Randomx.GetId(3000, 7000)); + + long startStamp = BaseClass.DateTimeToTimestampMilliseconds(dtpCoupon2StartTime.Value.Date); + long endStamp = BaseClass.DateTimeToTimestampMilliseconds(dtpCoupon2StartTime.Value.Date.AddDays(numCoupon2KeepDays.Value.ParseToInt())) - 1; + string jsonStr = get_coupon_goods(shop, startStamp, endStamp, page, pageSize); + jsonStr = GetHtml.Unicode2String(jsonStr); + if (jsonStr.Contains("繁忙") && tryCount < 5) + { + tryCount++; + Thread.Sleep(Randomx.GetId(5000, 10000)); + goto tryAgain; + } + if (!jsonStr.Contains("\"success\":true")) + { + PDDShopListForm.Instance.CheckShopLogin(new string[] { shop.LoginName }, false); + if (shop.LoginStatus != "登录成功") + break; + + isError = true; + string sErr = BaseRegex.GetStringJson(ref jsonStr, "error_msg"); + if (!string.IsNullOrWhiteSpace(sErr) && !errMsg.Contains(sErr)) + errMsg += sErr + " "; + page++; + continue; + } + + if (jsonStr.Contains("\"success\":true")) + { + PDDCouponGoodsListInfo pddCouponGoodsTmp = new PDDCouponGoodsListInfo(); + try + { + var jObj = JObject.Parse(jsonStr); + var rstStr = JsonHelper.SerializeObject(jObj["result"]); + pddCouponGoodsTmp = JsonHelper.DeserializeJsonToObject(rstStr); + this.pddCouponGoods.remaining_create_num = pddCouponGoodsTmp.remaining_create_num; + this.pddCouponGoods.total = pddCouponGoodsTmp.total; + } + catch (Exception ex) { BaseMsgForm.ShowError(ex.Message); } + foreach (var pInfo in pddCouponGoodsTmp.goods_list) + { + pInfo.shopId = shop.ShopId; + pInfo.shopName = shop.ShopAccount; + if (pInfo != null && !pddCouponGoods.goods_list.Any(a => a.id == pInfo.id)) + { + this.pddCouponGoods.goods_list.Add(pInfo); + string url = pInfo.thumb_url; + Invoke(new Action(() => + { + int rowId = this.dgvProduct.Rows.Add( + pInfo.is_filtered != true, + shop.ShopId, + shop.ShopAccount, + url.Replace("https", "http"), + DataGridViewExtension.defaultBitmap, // 列表图片,public static Bitmap defaultBitmap = new Bitmap(1,1); + pInfo.id, + pInfo.goods_name, + string.Join("~", pInfo.sku_group_price.Select(s => s / 100m)), + pInfo.quantity, + "", //收藏 + "", //总销量 + "", //30日销量 + pInfo.is_filtered == true ? "不可设置:" + pInfo.filtered_reason : "可设置", + "" // 操作结果,状态 + ); + + dgvProduct.Rows[rowId].Height = 60; + })); + } + } + int discountVal = 0; + Invoke(new Action(() => + { + discountVal = (numCouponValue.Value * 100).ParseToInt(); + })); + foreach (var pInfo in pddCouponGoodsTmp.goods_list) + { + if (pInfo.coupon_value_limit.FirstOrDefault() > discountVal || pInfo.coupon_value_limit.LastOrDefault() < discountVal) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + row.Cells["colOpResult"].Value = "优惠券金额不在可设置范围内!"; + } + } + } + var createLst = pddCouponGoodsTmp.goods_list; + // 筛选下不符合条件的直接不去设置了 + createLst = pddCouponGoodsTmp.goods_list.Where(g => g.coupon_value_limit.FirstOrDefault() <= discountVal && + g.coupon_value_limit.LastOrDefault() >= discountVal).Where(g => g.is_filtered == false).ToList(); + if (createLst.Count > 0) + { + Thread.Sleep(Randomx.GetId(500, 1500)); + //设置商品立减券 + PDDCouponParam creatCouponParam = new PDDCouponParam(); + creatCouponParam.ignore_low_price = false; + creatCouponParam.source_type = 54; + creatCouponParam.tool_full_channel = "12110_76109_010921_57020_"; + creatCouponParam.create_request_list = new List(); + foreach (var pInfo in createLst) + { + Invoke(new Action(() => + { + creatCouponParam.create_request_list.Add(new create_request + { + batch_desc = txtCoupon2Name.Text, + batch_end_time = endStamp, + batch_start_time = startStamp, + discount = (numCouponValue.Value * 100).ParseToInt(), + duration = 2, // 固定填2 + goods_id = pInfo.id, + init_quantity = pInfo.quantity, + period_type = 2, + status = 2, // 固定填2 + user_limit = 99, + }); + })); + } + var creatRst = create_coupon_goods(shop, creatCouponParam); + creatRst = GetHtml.Unicode2String(creatRst); + if (!creatRst.Contains("\"success\":true")) + { + var error = BaseRegex.GetStringJson(ref creatRst, "error_msg"); + if (string.IsNullOrEmpty(error)) + error = creatRst; + foreach (var pInfo in createLst) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + row.Cells["colOpResult"].Value = error; + } + } + } + else + { + try + { + var jObj = JObject.Parse(creatRst); + var rstStr = JsonHelper.SerializeObject(jObj["result"]); + var pDDCreateCouponResultV2 = JsonHelper.DeserializeJsonToObject(rstStr); + + foreach (var pInfo in createLst) + { + var row = dgvProduct.Rows.Cast().FirstOrDefault(r => r.Cells["colSpuId"].Value.ParseToLong() == pInfo.id); + if (row != null) + { + var createErr = pDDCreateCouponResultV2.error_msg_list.FirstOrDefault(er => er.goods_id == pInfo.id); + if (createErr != null) + row.Cells["colOpResult"].Value = createErr.error_msg; + else + row.Cells["colOpResult"].Value = "设置成功!"; + } + } + } + catch (Exception ex) { BaseMsgForm.ShowError(ex.Message); } + } + } + + int total = BaseRegex.GetStringJson(ref jsonStr, "total").ParseToInt(); + totalPage = Math.Ceiling(1m * total / pageSize).ParseToInt(); + } + } + + Invoke(new Action(() => + { + var rows = this.dgvShop.Rows.Cast().Where(r => r.Cells["colShopId"].Value.ToString() == shop.ShopId); + + if (!isError) + { + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "已设置"; + } + } + else + { + foreach (var row in rows) + { + row.Cells["colMessage"].Value = "设置失败 " + errMsg; + } + } + })); + } + Invoke(new Action(() => + { + ucGroupBoxEx2.Enabled = true; + string sRst = "设置结束!"; + if (cancellationTokenSource.IsCancellationRequested) + sRst = "已取消设置!"; + + BaseMsgForm.ShowInfo(sRst); + this.statusBar.lblTaskStatus.Text = sRst; + })); + }, cancellationTokenSource.Token); + } + public void GetToken(ShopLoginInfo shop) + { + if (!dicShopGetCount.Keys.Contains(shop)) + dicShopGetCount[shop] = 100; + else + dicShopGetCount[shop]++; + if (dicShopGetCount[shop] > 5) + { + dicShopGetCount[shop] = 0; + + while (PDDShopLoginForm.shopLoginInstance != null && !PDDShopLoginForm.shopLoginInstance.IsDisposed) + { + Thread.Sleep(500); + } + + Invoke(new Action(() => + { + this.panel1.SendToBack(); + PDDShopLoginForm loginForm = new PDDShopLoginForm(shop); + loginForm.TopLevel = false; + loginForm.openType = EnumOpenType.manage; + loginForm.WindowState = FormWindowState.Maximized; + loginForm.InitUrl = "https://mms.pinduoduo.com/tool/surprise-coupon/create/"; + loginForm.Dock = DockStyle.Fill; + this.panel1.Controls.Add(loginForm); + loginForm.Show(); + })); + int sleepTime = Randomx.GetId(2000, 3000); + Thread.Sleep(sleepTime); + + Invoke(new Action(() => + { + if (PDDShopLoginForm.shopLoginInstance != null) + PDDShopLoginForm.shopLoginInstance.Dispose(); + })); + } + } + + private void btnCancel_Click(object sender, EventArgs e) + { + if (cancellationTokenSource != null && !cancellationTokenSource.IsCancellationRequested) + cancellationTokenSource.Cancel(); + } + + private void dgvProduct_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvProduct.Columns[e.ColumnIndex].HeaderText; + switch (headerText) + { + case "删除": + //if (BaseMsgForm.ShowConfirm("确定删除商品吗?删除后不可恢复!").DialogResult == DialogResult.Cancel) + // return; + //var rst = DeleteProduct(dbId); + //if (rst) + //{ + // SearchDbProdSelect(this.ucSplitPage1.CurrentPage); + //} + break; + case "图片": + { + ShowImgForm imgFrom = new ShowImgForm(dgvProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString()); + imgFrom.ShowDialog(); + } + break; + case "": + dgvProduct.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvProduct.Rows[e.RowIndex].Cells["colCheck"].Value; + break; + default: + break; + } + } + } +} diff --git a/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.resx b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.resx new file mode 100644 index 0000000..ff9031b --- /dev/null +++ b/TEMUKJD/PDDForms/ProductForms/CouponForms/PDDProdCouponShangPinLiJianForm.resx @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.cs b/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.cs deleted file mode 100644 index 1cb68fe..0000000 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductCouponForm.cs +++ /dev/null @@ -1,21 +0,0 @@ -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.PDDForms.ProductForms -{ - public partial class PDDProductCouponForm : BaseForm - { - public PDDProductCouponForm() - { - InitializeComponent(); - } - } -} diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductForm.Designer.cs b/TEMUKJD/PDDForms/ProductForms/PDDProductForm.Designer.cs index 3aa6623..dee6f89 100644 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductForm.Designer.cs +++ b/TEMUKJD/PDDForms/ProductForms/PDDProductForm.Designer.cs @@ -30,19 +30,11 @@ { System.Windows.Forms.TreeNode treeNode1 = new System.Windows.Forms.TreeNode("选品上传"); System.Windows.Forms.TreeNode treeNode2 = new System.Windows.Forms.TreeNode("商品列表"); - System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("备货管理"); - System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("调价管理"); - System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("活动报名"); - System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("库存上传"); - System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("设置进货价"); - System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("商品管理", new System.Windows.Forms.TreeNode[] { + System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("营销工具"); + System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("商品管理", new System.Windows.Forms.TreeNode[] { treeNode1, treeNode2, - treeNode3, - treeNode4, - treeNode5, - treeNode6, - treeNode7}); + treeNode3}); this.panel1 = new System.Windows.Forms.Panel(); this.panel3 = new System.Windows.Forms.Panel(); this.panel2 = new System.Windows.Forms.Panel(); @@ -137,20 +129,12 @@ treeNode1.Text = "选品上传"; treeNode2.Name = "商品列表"; treeNode2.Text = "商品列表"; - treeNode3.Name = "备货管理"; - treeNode3.Text = "备货管理"; - treeNode4.Name = "调价管理"; - treeNode4.Text = "调价管理"; - treeNode5.Name = "活动报名"; - treeNode5.Text = "活动报名"; - treeNode6.Name = "库存上传"; - treeNode6.Text = "库存上传"; - treeNode7.Name = "设置进货价"; - treeNode7.Text = "设置进货价"; - treeNode8.Name = "商品管理"; - treeNode8.Text = "商品管理"; + treeNode3.Name = "营销工具"; + treeNode3.Text = "营销工具"; + treeNode4.Name = "商品管理"; + treeNode4.Text = "商品管理"; this.tv.Nodes.AddRange(new System.Windows.Forms.TreeNode[] { - treeNode8}); + treeNode4}); this.tv.OverForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235))))); this.tv.Size = new System.Drawing.Size(140, 521); this.tv.TabIndex = 1; diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductForm.cs b/TEMUKJD/PDDForms/ProductForms/PDDProductForm.cs index e59df9e..024c83c 100644 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductForm.cs +++ b/TEMUKJD/PDDForms/ProductForms/PDDProductForm.cs @@ -11,20 +11,16 @@ using System.Windows.Forms; using TemuKJD.BaseForms; using AllBase; using TemuKJD.PDDForms.ProductSelectForms; +using TemuKJD.PDDForms.ProductForms.CouponForms; namespace TemuKJD.PDDForms.ProductForms { public partial class PDDProductForm : BaseForm { public static PDDProductForm instance; - //public Lazy saleStockUpForm = new Lazy(); - //public Lazy priceManageForm = new Lazy(); public Lazy userSelectDbProductForm = new Lazy(); public Lazy productUpDownForm = new Lazy(); - - //public Lazy userSelectThirdProductForm = new Lazy(); - //public Lazy marketingActivityForm = new Lazy(); - //public Lazy purchasePriceForm = new Lazy(); + public Lazy prodCouponForm = new Lazy(); public PDDProductForm() { @@ -35,8 +31,6 @@ namespace TemuKJD.PDDForms.ProductForms tv.SelectedNode = tv.Nodes[0].Nodes[0]; tv.ExpandGroup(tv.Nodes[0].Name); - List hideName = new List() { "备货管理", "调价管理", "活动报名", "库存上传", "设置进货价", /*"商品列表"*/ }; - if (BaseClass.GroupId == 3) { //hideName.Remove("设置进货价"); @@ -47,13 +41,6 @@ namespace TemuKJD.PDDForms.ProductForms { } } - - foreach (var item in hideName) - { - var n = tv.Nodes[0].Nodes.Find(item, true); - if (n.Count() > 0) - n[0].Remove(); - } } catch { } } @@ -74,27 +61,15 @@ namespace TemuKJD.PDDForms.ProductForms { switch (e.Node.Name) { - //case "备货管理": - // SetForm(saleStockUpForm.Value); - // break; - //case "调价管理": - // SetForm(priceManageForm.Value); - // break; - //case "活动报名": - // SetForm(marketingActivityForm.Value); - // break; - //case "设置进货价": - // SetForm(purchasePriceForm.Value); - // break; case "选品上传": SetForm(userSelectDbProductForm.Value); break; case "商品列表": SetForm(productUpDownForm.Value); break; - //case "库存上传": - // SetForm(userSelectThirdProductForm.Value); - // break; + case "营销工具": + SetForm(prodCouponForm.Value); + break; } })); }).Start(); @@ -142,7 +117,6 @@ namespace TemuKJD.PDDForms.ProductForms } if (had) { - f = null; return; } f.TopLevel = false; @@ -162,16 +136,7 @@ namespace TemuKJD.PDDForms.ProductForms tv.SelectedNode = tv.Nodes[0].Nodes[0]; tv.ExpandGroup(tv.Nodes[0].Name); - //List hideName = new List() { "特殊延迟发货", /*"清理无流量"*/ }; - //if (AllBase.BaseClass.UserName != "18888888888") - // hideName.Add("上传错误列表"); - - List hideName = new List() { "佣金设置", "商品发布", - "净化数据","产品数据库","商品上下架","清理无流量","库存管理","特殊延迟发货","云违规排查","上传错误列表","跳转上家" }; - //if (AllBase.BaseClass.UserName != "15266666666" && AllBase.BaseClass.UserName != "15266666660") - //{ - // hideName.Add("商品认领"); - //} + List hideName = new List() { /*"营销工具"*/ }; foreach (var item in hideName) { diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductForm.resx b/TEMUKJD/PDDForms/ProductForms/PDDProductForm.resx index 9c25dec..1af7de1 100644 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductForm.resx +++ b/TEMUKJD/PDDForms/ProductForms/PDDProductForm.resx @@ -117,25 +117,4 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - True - - - True - - - True - - - True - - - True - - - True - - - True - \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ProductForms/PDDProductUpDownForm.cs b/TEMUKJD/PDDForms/ProductForms/PDDProductUpDownForm.cs index 509fcb6..5b13193 100644 --- a/TEMUKJD/PDDForms/ProductForms/PDDProductUpDownForm.cs +++ b/TEMUKJD/PDDForms/ProductForms/PDDProductUpDownForm.cs @@ -309,7 +309,7 @@ namespace TemuKJD.PDDForms.ProductForms break; isError = true; - string sErr = BaseRegex.GetStringJson(ref jsonStr, "errorMsg"); + string sErr = BaseRegex.GetStringJson(ref jsonStr, "error_msg"); if (!string.IsNullOrWhiteSpace(sErr) && !errMsg.Contains(sErr)) errMsg += sErr + " "; page++; diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs index 7af3e7f..5ff8666 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs @@ -648,16 +648,19 @@ namespace TemuKJD.PDDForms.ProductSelectForms } else { - foreach (var box in boxs) + MainForm.instance.Invoke(new Action(() => { - box.Items.Clear(); - var groups = BaseRegex.GetStringJson(ref html, "data"); - foreach (var item in groups.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + foreach (var box in boxs) { - box.Items.Add(item); + box.Items.Clear(); + var groups = BaseRegex.GetStringJson(ref html, "data"); + foreach (var item in groups.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + { + box.Items.Add(item); + } + box.Items.Add(""); } - box.Items.Add(""); - } + })); } } } diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectForm.cs index 1cc55d5..da4d22c 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectForm.cs @@ -196,9 +196,12 @@ namespace TemuKJD.PDDForms.ProductSelectForms private void RefreshDbProd() { - PDDDBProdListForm.GetPDDProductGroup(cmbGroupFilter); // 同时刷新下商品分组 + Task.Run(() => + { + PDDDBProdListForm.GetPDDProductGroup(cmbGroupFilter); // 同时刷新下商品分组 - GetPddProductCate(); + GetPddProductCate(); + }); } /// @@ -219,13 +222,16 @@ namespace TemuKJD.PDDForms.ProductSelectForms } else { - cmbCateFilter.Items.Clear(); - var groups = BaseRegex.GetStringJson(ref html, "data"); - foreach (var item in groups.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + Invoke(new Action(() => { - cmbCateFilter.Items.Add(item); - } - cmbCateFilter.Items.Add(""); + cmbCateFilter.Items.Clear(); + var groups = BaseRegex.GetStringJson(ref html, "data"); + foreach (var item in groups.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + { + cmbCateFilter.Items.Add(item); + } + cmbCateFilter.Items.Add(""); + })); } } diff --git a/TEMUKJD/UserComponent/UcGroupBoxEx.cs b/TEMUKJD/UserComponent/UcGroupBoxEx.cs index 5026165..a41a6b2 100644 --- a/TEMUKJD/UserComponent/UcGroupBoxEx.cs +++ b/TEMUKJD/UserComponent/UcGroupBoxEx.cs @@ -60,6 +60,7 @@ namespace TemuKJD.UserComponent { e.Graphics.Clear(this.BackColor); // 绘制字体 + e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit; // 或者 AntiAliasGridFit // 平滑字体 e.Graphics.DrawString(this.Text, this.Font, new SolidBrush(this.ForeColor), 10, 1); // 计算文本大小 var vSize = e.Graphics.MeasureString(this.Text, this.Font); diff --git a/TEMUKJD/UserComponent/UcTabControl.cs b/TEMUKJD/UserComponent/UcTabControl.cs index 2098009..43eb7b7 100644 --- a/TEMUKJD/UserComponent/UcTabControl.cs +++ b/TEMUKJD/UserComponent/UcTabControl.cs @@ -168,7 +168,7 @@ namespace TemuKJD.UserComponent //e.Graphics.DrawRectangle(Pens.Red, this.GetTabRect(i)); if (this.SelectedIndex == i) { - for (int j = 0; j < 1; j++) + for (int j = 0; j < 2; j++) e.Graphics.DrawLine(new Pen(tabSelectColor), new Point(this.GetTabRect(i).Left + 0, this.GetTabRect(i).Bottom - j), new Point(this.GetTabRect(i).Right - 5, this.GetTabRect(i).Bottom - j));