From 31d11c03417ec1e0e1a6f8bb2866a21e98a758ec Mon Sep 17 00:00:00 2001 From: wule Date: Sat, 15 Nov 2025 17:53:59 +0800 Subject: [PATCH] =?UTF-8?q?1=E4=BA=A7=E5=93=81=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E5=88=86=E7=BB=84=E5=AD=97=E6=AE=B5=E8=AE=BE=E7=BD=AE=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=202jit=E4=BA=A7=E5=93=81=E5=90=88=E8=A7=84=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E5=A1=AB=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AllBase/AllBase.csproj | 2 +- AllBase/BaseClass.cs | 2 +- ...riceInfo.cs => TemuForChainProductInfo.cs} | 6 +- .../KJD_WebService/BLL/KJD/ProductManage.cs | 75 +++- .../KJD_WebService/ProductService.asmx.cs | 12 + .../AdminForms/AdminProductPriceCheckForm.cs | 10 +- .../ProductForms/TemuJitForm.Designer.cs | 350 +++++++++++------- TEMUKJD/KJDForms/ProductForms/TemuJitForm.cs | 211 +++++++++-- .../KJDForms/ProductForms/TemuJitForm.resx | 3 + .../DbProductEditNotesForm.Designer.cs | 58 ++- .../DbProductEditNotesForm.cs | 3 + .../DbProductListForm.Designer.cs | 180 +++++---- .../ProductSelectForms/DbProductListForm.cs | 85 +++++ .../ProductSelectForms/DbProductListForm.resx | 3 + 14 files changed, 734 insertions(+), 266 deletions(-) rename AllBase/Model/Result/{TemuCheckPriceInfo.cs => TemuForChainProductInfo.cs} (94%) diff --git a/AllBase/AllBase.csproj b/AllBase/AllBase.csproj index a57de6c..38de1f3 100644 --- a/AllBase/AllBase.csproj +++ b/AllBase/AllBase.csproj @@ -218,7 +218,7 @@ - + diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index cf1ae59..76d4a94 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -27,7 +27,7 @@ namespace AllBase /// /// 版本ID /// - public static int VersionCount = 673; + public static int VersionCount = 675; //public static int VersionCount = 613; /// diff --git a/AllBase/Model/Result/TemuCheckPriceInfo.cs b/AllBase/Model/Result/TemuForChainProductInfo.cs similarity index 94% rename from AllBase/Model/Result/TemuCheckPriceInfo.cs rename to AllBase/Model/Result/TemuForChainProductInfo.cs index 6ec2b32..8ebf849 100644 --- a/AllBase/Model/Result/TemuCheckPriceInfo.cs +++ b/AllBase/Model/Result/TemuForChainProductInfo.cs @@ -6,7 +6,7 @@ using System.Threading.Tasks; namespace AllBase.Model.Result { - public class TemuCheckPriceInfo + public class TemuForChainProductInfo { public string productName { get; set; } @@ -14,11 +14,11 @@ namespace AllBase.Model.Result public string supplierPrice { get; set; } public long? supplierId { get; set; } public string supplierName { get; set; } - public List skcList { get;set; } + public List skcList { get;set; } } - public class TemuCheckPriceSkcInfo + public class TemuForChainSkcInfo { public long? skcId { get; set; } public int? sampleType { get; set; } diff --git a/KJDService/KJD_WebService/BLL/KJD/ProductManage.cs b/KJDService/KJD_WebService/BLL/KJD/ProductManage.cs index 6d0b109..629a81f 100644 --- a/KJDService/KJD_WebService/BLL/KJD/ProductManage.cs +++ b/KJDService/KJD_WebService/BLL/KJD/ProductManage.cs @@ -68,6 +68,70 @@ namespace KJD_Web.BLL return "{\"code\":19999,\"msg\":\"输入为空\"}"; } + public string GetProductGroupList(string inputData) + { + if (!string.IsNullOrEmpty(inputData)) + { + var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt(); + string time1 = RegexUtils.GetStringQuery(ref inputData, "code"); + if (time1 != EncrypUtil.Encryption(time)) + return "{\"code\":50000,\"msg\":\"校验失败\"}"; + + var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'"); + var password = RegexUtils.GetStringQuery(ref inputData, "password")?.Replace("'", "\\'"); + int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt(); + int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(100); + if (string.IsNullOrEmpty(user_name)) + { + return "{\"code\":500,\"msg\":\"没有用户名\"}"; + } + + string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + MysqlUtils mySql = new MysqlUtils(conn); + + string sql = "select count(distinct p.group) from kjd.product p where p.is_del=0"; + + var count = mySql.ExecuteRowCount(sql); + + DataTable dt; + if (count == 0) + { + dt = new DataTable(); + } + else + { + sql = "select distinct p.group from kjd.product p where p.is_del=0"; + sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + dt = mySql.ExecuteDataTable(sql); + } + + mySql.Close(); + if (dt != null) + { + try + { + List groupNameLst = new List(); + foreach (DataRow row in dt.Rows) + { + var group = row["group"].ToString(); + groupNameLst.Add(group); + } + var data = JsonUtils.SerializerObjectToString(groupNameLst); + return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + "}"; + } + catch (Exception ex) + { + return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}"; + } + } + else + { + return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}"; + } + } + return "{\"code\":19999,\"msg\":\"输入为空\"}"; + } + public string GetProductList(string inputData, bool isDetail = false) { if (!string.IsNullOrEmpty(inputData)) @@ -85,6 +149,7 @@ namespace KJD_Web.BLL var search_ext_code = RegexUtils.GetStringQuery(ref inputData, "search_ext_code")?.Replace("'", "\\'"); var search_prod_name = RegexUtils.GetStringQuery(ref inputData, "search_prod_name")?.Replace("'", "\\'"); var search_notes = RegexUtils.GetStringQuery(ref inputData, "search_notes")?.Replace("'", "\\'"); + var search_group = RegexUtils.GetStringQuery(ref inputData, "search_group")?.Replace("'", "\\'"); var search_db_ids = RegexUtils.GetStringQuery(ref inputData, "search_db_ids")?.Replace("'", "\\'"); var get_select_count = RegexUtils.GetStringQuery(ref inputData, "get_select_count")?.Replace("'", "\\'"); var select_shop_id = RegexUtils.GetStringQuery(ref inputData, "select_shop_id")?.Replace("'", "\\'"); @@ -116,6 +181,8 @@ namespace KJD_Web.BLL where += " and p.product_name like '%" + search_prod_name + "%'"; if (!string.IsNullOrWhiteSpace(search_notes)) where += " and p.notes like '%" + search_notes + "%'"; + if (!string.IsNullOrWhiteSpace(search_group)) + where += " and p.group like '%" + search_group + "%'"; if (!string.IsNullOrEmpty(search_db_ids)) where += " and p.id in (" + search_db_ids + ")"; sql += where; @@ -132,11 +199,11 @@ namespace KJD_Web.BLL if (isDetail) sql = "select * from kjd.product p where p.is_del=0"; else if (string.IsNullOrEmpty(get_select_count)) - sql = "select p.id,p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.ext_code,p.product_name,p.main_img,p.notes," + + sql = "select p.id,p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.ext_code,p.product_name,p.main_img,p.notes,p.group," + "p.add_time,p.mdy_time,p.select_total_count,p.fission_words,p.head_words,p.end_words," + "p.product_get_type from kjd.product p where p.is_del=0"; else - sql = "SELECT p.id,p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.ext_code,p.product_name,p.main_img,p.notes," + + sql = "SELECT p.id,p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.ext_code,p.product_name,p.main_img,p.notes,p.group," + "p.add_time,p.mdy_time,p.select_total_count,p.fission_words,p.head_words,p.end_words,p.product_get_type" + ",COUNT(s.id) AS select_count " + "FROM kjd.product p LEFT JOIN kjd.product_select s ON p.id=s.out_product_id AND s.shop_id='" + select_shop_id + "' " + @@ -181,6 +248,7 @@ namespace KJD_Web.BLL add_time = Convert.ToDateTime(row["add_time"]), mdy_time = Convert.ToDateTime(row["mdy_time"]), notes = row["notes"].ToString(), + group = row["group"].ToString(), select_total_count = row["select_total_count"].ParseToInt(), end_words = row["end_words"].ParseToString(), fission_words = row["fission_words"].ParseToString(), @@ -296,6 +364,7 @@ namespace KJD_Web.BLL var id = RegexUtils.GetStringQuery(ref inputData, "db_id")?.Replace("'", "\\'"); var product_name = RegexUtils.GetStringQuery(ref inputData, "product_name")?.Replace("'", "\\'"); string notes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "notes"))?.Replace("'", "\\'"); + string group = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "group"))?.Replace("'", "\\'"); string ext_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "ext_code"))?.Replace("'", "\\'"); string fission_words = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "fission_words"))?.Replace("'", "\\'"); string head_words = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "head_words"))?.Replace("'", "\\'"); @@ -316,6 +385,8 @@ namespace KJD_Web.BLL sql += " product_name='" + product_name + "',"; if (notes != null) sql += " notes='" + notes + "',"; + if (group != null) + sql += " kjd.product.group='" + group + "',"; if (ext_code != null) sql += " ext_code='" + ext_code + "',"; if (fission_words != null) diff --git a/KJDService/KJD_WebService/ProductService.asmx.cs b/KJDService/KJD_WebService/ProductService.asmx.cs index 4920ed8..623ffb3 100644 --- a/KJDService/KJD_WebService/ProductService.asmx.cs +++ b/KJDService/KJD_WebService/ProductService.asmx.cs @@ -48,6 +48,18 @@ namespace KJD_Web } } + [WebMethod] + public void get_product_group_list() + { + string jsontext = GetRequestJsonString(); + + var result = jsontext; + result = new ProductManage().GetProductGroupList(jsontext); + + Context.Response.Write(result); + Context.Response.End(); + } + [WebMethod] public void get_product_list() { diff --git a/TEMUKJD/KJDForms/AdminForms/AdminProductPriceCheckForm.cs b/TEMUKJD/KJDForms/AdminForms/AdminProductPriceCheckForm.cs index 7755f67..2b5cd36 100644 --- a/TEMUKJD/KJDForms/AdminForms/AdminProductPriceCheckForm.cs +++ b/TEMUKJD/KJDForms/AdminForms/AdminProductPriceCheckForm.cs @@ -27,7 +27,7 @@ namespace TemuKJD.KJDForms.AdminForms PriceCheckConfig priceCheckConfig = null; public CancellationTokenSource cancellationTokenSource { get; set; } = null; public List lstAdminShopInfo { get; set; } = new List(); - public List lstCheckPriceInfo = new List(); + public List lstCheckPriceInfo = new List(); public AdminProductPriceCheckForm() { @@ -427,7 +427,7 @@ namespace TemuKJD.KJDForms.AdminForms return; //TemuSupplierPriceReviewInfo priceReview = null; - TemuCheckPriceInfo checkPriceInfo = null; + TemuForChainProductInfo checkPriceInfo = null; foreach (var price in this.lstCheckPriceInfo) { if (price.productId.ParseToString() == prodId) @@ -606,11 +606,11 @@ namespace TemuKJD.KJDForms.AdminForms jArr = new JArray(); List extCodeLst = new List(); - List checkPriceInfoTmpLst = new List(); + List checkPriceInfoTmpLst = new List(); foreach (var item in jArr) { var jStr = JsonHelper.SerializeObject(item); - TemuCheckPriceInfo priceInfo = JsonHelper.DeserializeJsonToObject(jStr); + TemuForChainProductInfo priceInfo = JsonHelper.DeserializeJsonToObject(jStr); lstCheckPriceInfo.Add(priceInfo); checkPriceInfoTmpLst.Add(priceInfo); extCodeLst.Add(priceInfo.skcList.FirstOrDefault()?.extCode); @@ -1716,7 +1716,7 @@ namespace TemuKJD.KJDForms.AdminForms /// /// /// - bool checkRestoreSizeAndNumber(TemuCheckPriceInfo info) + bool checkRestoreSizeAndNumber(TemuForChainProductInfo info) { //最长边:60 - 100 cm//生成时需转换为mm //次长边:60 - 90 cm//生成时需转换为mm diff --git a/TEMUKJD/KJDForms/ProductForms/TemuJitForm.Designer.cs b/TEMUKJD/KJDForms/ProductForms/TemuJitForm.Designer.cs index ba9869b..d84b47e 100644 --- a/TEMUKJD/KJDForms/ProductForms/TemuJitForm.Designer.cs +++ b/TEMUKJD/KJDForms/ProductForms/TemuJitForm.Designer.cs @@ -37,6 +37,9 @@ namespace TemuKJD.KJDForms.ProductForms System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); + 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.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); this.btnResetExtCode = new DevComponents.DotNetBar.PanelEx(); @@ -72,8 +75,16 @@ namespace TemuKJD.KJDForms.ProductForms this.colLoginStatus = new System.Windows.Forms.DataGridViewLinkColumn(); this.colCanUse = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.colMessage = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.pnlSpecDetail = new System.Windows.Forms.Panel(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.btnClose = new DevComponents.DotNetBar.PanelEx(); this.pbLoading = new System.Windows.Forms.PictureBox(); this.dgvPriceCheck = new TemuKJD.UserComponent.DataGridViewEx(); + this.splitContainer4 = new System.Windows.Forms.SplitContainer(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.panelEx1 = new DevComponents.DotNetBar.PanelEx(); + this.btnClear = new DevComponents.DotNetBar.PanelEx(); + this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.colProdIndex = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colOrderId = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -88,12 +99,8 @@ namespace TemuKJD.KJDForms.ProductForms this.colExtCode = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colPrcie = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colCreatTime = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colCompliance = new System.Windows.Forms.DataGridViewLinkColumn(); this.colMsg = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.splitContainer4 = new System.Windows.Forms.SplitContainer(); - this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); - this.panelEx1 = new DevComponents.DotNetBar.PanelEx(); - this.btnClear = new DevComponents.DotNetBar.PanelEx(); - this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -109,6 +116,7 @@ namespace TemuKJD.KJDForms.ProductForms this.splitContainer2.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbShopLoading)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).BeginInit(); + this.pnlSpecDetail.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvPriceCheck)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit(); @@ -133,7 +141,7 @@ namespace TemuKJD.KJDForms.ProductForms // splitContainer1.Panel2 // this.splitContainer1.Panel2.Controls.Add(this.splitContainer3); - this.splitContainer1.Size = new System.Drawing.Size(1461, 571); + this.splitContainer1.Size = new System.Drawing.Size(1350, 611); this.splitContainer1.SplitterDistance = 130; this.splitContainer1.TabIndex = 12; // @@ -165,7 +173,7 @@ namespace TemuKJD.KJDForms.ProductForms this.ucGroupBoxEx1.Controls.Add(this.label3); this.ucGroupBoxEx1.Location = new System.Drawing.Point(3, 2); this.ucGroupBoxEx1.Name = "ucGroupBoxEx1"; - this.ucGroupBoxEx1.Size = new System.Drawing.Size(1456, 130); + this.ucGroupBoxEx1.Size = new System.Drawing.Size(1345, 130); this.ucGroupBoxEx1.TabIndex = 399; this.ucGroupBoxEx1.TabStop = false; this.ucGroupBoxEx1.Text = "参数设置"; @@ -255,7 +263,7 @@ namespace TemuKJD.KJDForms.ProductForms this.btnStop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.btnStop.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; this.btnStop.TabIndex = 999; - this.btnStop.Text = "停止读取"; + this.btnStop.Text = "停止查询"; // // btnSearchPrice2 // @@ -263,9 +271,9 @@ namespace TemuKJD.KJDForms.ProductForms this.btnSearchPrice2.Cursor = System.Windows.Forms.Cursors.Hand; this.btnSearchPrice2.DisabledBackColor = System.Drawing.Color.Empty; this.btnSearchPrice2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnSearchPrice2.Location = new System.Drawing.Point(410, 98); + this.btnSearchPrice2.Location = new System.Drawing.Point(455, 98); this.btnSearchPrice2.Name = "btnSearchPrice2"; - this.btnSearchPrice2.Size = new System.Drawing.Size(112, 23); + this.btnSearchPrice2.Size = new System.Drawing.Size(67, 23); this.btnSearchPrice2.Style.Alignment = System.Drawing.StringAlignment.Center; this.btnSearchPrice2.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.btnSearchPrice2.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -278,7 +286,7 @@ namespace TemuKJD.KJDForms.ProductForms this.btnSearchPrice2.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.btnSearchPrice2.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.btnSearchPrice2.TabIndex = 996; - this.btnSearchPrice2.Text = "读取待创建首单"; + this.btnSearchPrice2.Text = "查询商品"; this.btnSearchPrice2.Click += new System.EventHandler(this.btnSearchPrice2_Click); // // txtSkcId @@ -418,8 +426,8 @@ namespace TemuKJD.KJDForms.ProductForms // splitContainer3.Panel2 // this.splitContainer3.Panel2.Controls.Add(this.splitContainer4); - this.splitContainer3.Size = new System.Drawing.Size(1461, 437); - this.splitContainer3.SplitterDistance = 407; + this.splitContainer3.Size = new System.Drawing.Size(1350, 477); + this.splitContainer3.SplitterDistance = 447; this.splitContainer3.TabIndex = 1; // // splitContainer2 @@ -438,10 +446,11 @@ namespace TemuKJD.KJDForms.ProductForms // // splitContainer2.Panel2 // + this.splitContainer2.Panel2.Controls.Add(this.pnlSpecDetail); this.splitContainer2.Panel2.Controls.Add(this.pbLoading); this.splitContainer2.Panel2.Controls.Add(this.dgvPriceCheck); this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); - this.splitContainer2.Size = new System.Drawing.Size(1461, 407); + this.splitContainer2.Size = new System.Drawing.Size(1350, 447); this.splitContainer2.SplitterDistance = 280; this.splitContainer2.TabIndex = 0; // @@ -449,7 +458,7 @@ namespace TemuKJD.KJDForms.ProductForms // this.pbShopLoading.Anchor = System.Windows.Forms.AnchorStyles.None; this.pbShopLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbShopLoading.Location = new System.Drawing.Point(115, 178); + this.pbShopLoading.Location = new System.Drawing.Point(115, 198); this.pbShopLoading.Name = "pbShopLoading"; this.pbShopLoading.Size = new System.Drawing.Size(50, 50); this.pbShopLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -501,7 +510,7 @@ namespace TemuKJD.KJDForms.ProductForms this.dgvShop.ReadOnly = true; this.dgvShop.RowHeadersWidth = 25; this.dgvShop.RowTemplate.Height = 23; - this.dgvShop.Size = new System.Drawing.Size(276, 407); + this.dgvShop.Size = new System.Drawing.Size(276, 447); this.dgvShop.TabIndex = 6; this.dgvShop.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvShop_CellContentClick); // @@ -576,11 +585,62 @@ namespace TemuKJD.KJDForms.ProductForms this.colMessage.Name = "colMessage"; this.colMessage.ReadOnly = true; // + // pnlSpecDetail + // + this.pnlSpecDetail.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.pnlSpecDetail.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.pnlSpecDetail.Controls.Add(this.textBox1); + this.pnlSpecDetail.Controls.Add(this.btnClose); + this.pnlSpecDetail.Location = new System.Drawing.Point(115, 58); + this.pnlSpecDetail.Name = "pnlSpecDetail"; + this.pnlSpecDetail.Size = new System.Drawing.Size(837, 134); + this.pnlSpecDetail.TabIndex = 683; + this.pnlSpecDetail.Visible = false; + // + // textBox1 + // + this.textBox1.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.textBox1.Location = new System.Drawing.Point(28, 17); + this.textBox1.Multiline = true; + this.textBox1.Name = "textBox1"; + this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Both; + this.textBox1.Size = new System.Drawing.Size(778, 75); + this.textBox1.TabIndex = 690; + // + // btnClose + // + this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.btnClose.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnClose.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnClose.DisabledBackColor = System.Drawing.Color.Empty; + this.btnClose.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnClose.Location = new System.Drawing.Point(748, 98); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(58, 23); + this.btnClose.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnClose.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClose.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClose.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnClose.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnClose.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnClose.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnClose.Style.GradientAngle = 90; + this.btnClose.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnClose.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnClose.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnClose.TabIndex = 435; + this.btnClose.Text = "关闭"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // // 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(547, 178); + this.pbLoading.Location = new System.Drawing.Point(492, 198); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -592,7 +652,7 @@ namespace TemuKJD.KJDForms.ProductForms // this.dgvPriceCheck.AllowUserToAddRows = false; this.dgvPriceCheck.AllowUserToDeleteRows = false; - dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke; + dataGridViewCellStyle3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249))))); this.dgvPriceCheck.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3; this.dgvPriceCheck.BackgroundColor = System.Drawing.Color.White; this.dgvPriceCheck.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -620,6 +680,7 @@ namespace TemuKJD.KJDForms.ProductForms this.colExtCode, this.colPrcie, this.colCreatTime, + this.colCompliance, this.colMsg}); this.dgvPriceCheck.Dock = System.Windows.Forms.DockStyle.Fill; this.dgvPriceCheck.Location = new System.Drawing.Point(0, 0); @@ -627,8 +688,105 @@ namespace TemuKJD.KJDForms.ProductForms this.dgvPriceCheck.ReadOnly = true; this.dgvPriceCheck.RowHeadersWidth = 36; this.dgvPriceCheck.RowTemplate.Height = 23; - this.dgvPriceCheck.Size = new System.Drawing.Size(1173, 407); + this.dgvPriceCheck.Size = new System.Drawing.Size(1062, 447); this.dgvPriceCheck.TabIndex = 187; + this.dgvPriceCheck.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPriceCheck_CellContentClick); + // + // splitContainer4 + // + this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer4.Location = new System.Drawing.Point(0, 0); + this.splitContainer4.Name = "splitContainer4"; + // + // splitContainer4.Panel1 + // + this.splitContainer4.Panel1.Controls.Add(this.ucSplitPage1); + // + // splitContainer4.Panel2 + // + this.splitContainer4.Panel2.Controls.Add(this.panelEx1); + this.splitContainer4.Panel2.Controls.Add(this.btnClear); + this.splitContainer4.Panel2.Controls.Add(this.statusBar); + this.splitContainer4.Size = new System.Drawing.Size(1350, 26); + this.splitContainer4.SplitterDistance = 282; + this.splitContainer4.TabIndex = 3; + // + // ucSplitPage1 + // + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Left; + this.ucSplitPage1.IsShowPageSize = false; + this.ucSplitPage1.Location = new System.Drawing.Point(0, 0); + this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); + this.ucSplitPage1.Name = "ucSplitPage1"; + this.ucSplitPage1.PageSize = 50; + this.ucSplitPage1.Size = new System.Drawing.Size(282, 26); + this.ucSplitPage1.TabIndex = 5; + this.ucSplitPage1.TotalPage = 1; + this.ucSplitPage1.PageChange += new System.Action(this.ucSplitPage1_PageChange); + // + // panelEx1 + // + this.panelEx1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control; + this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty; + this.panelEx1.Location = new System.Drawing.Point(945, 0); + this.panelEx1.Name = "panelEx1"; + this.panelEx1.Size = new System.Drawing.Size(115, 21); + this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center; + this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.panelEx1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.panelEx1.Style.GradientAngle = 90; + this.panelEx1.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.panelEx1.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.panelEx1.TabIndex = 668; + this.panelEx1.Text = "停止当前操作"; + this.panelEx1.Visible = false; + // + // btnClear + // + this.btnClear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | 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(851, 0); + 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; + // + // 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(1064, 26); + this.statusBar.TabIndex = 2; // // colCheck // @@ -637,6 +795,7 @@ namespace TemuKJD.KJDForms.ProductForms this.colCheck.ReadOnly = true; this.colCheck.Resizable = System.Windows.Forms.DataGridViewTriState.True; this.colCheck.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCheck.Visible = false; this.colCheck.Width = 28; // // colProdIndex @@ -662,6 +821,8 @@ namespace TemuKJD.KJDForms.ProductForms // // colSupplierName // + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5; this.colSupplierName.HeaderText = "店铺名称"; this.colSupplierName.Name = "colSupplierName"; this.colSupplierName.ReadOnly = true; @@ -703,8 +864,8 @@ namespace TemuKJD.KJDForms.ProductForms // // colProdName // - dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProdName.DefaultCellStyle = dataGridViewCellStyle5; + dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProdName.DefaultCellStyle = dataGridViewCellStyle6; this.colProdName.HeaderText = "标题"; this.colProdName.Name = "colProdName"; this.colProdName.ReadOnly = true; @@ -712,8 +873,8 @@ namespace TemuKJD.KJDForms.ProductForms // // colSkuName // - dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colSkuName.DefaultCellStyle = dataGridViewCellStyle6; + dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSkuName.DefaultCellStyle = dataGridViewCellStyle7; this.colSkuName.HeaderText = "规格名称"; this.colSkuName.Name = "colSkuName"; this.colSkuName.ReadOnly = true; @@ -721,10 +882,12 @@ namespace TemuKJD.KJDForms.ProductForms // // colExtCode // + dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colExtCode.DefaultCellStyle = dataGridViewCellStyle8; this.colExtCode.HeaderText = "货号"; this.colExtCode.Name = "colExtCode"; this.colExtCode.ReadOnly = true; - this.colExtCode.Width = 160; + this.colExtCode.Width = 120; // // colPrcie // @@ -735,13 +898,24 @@ namespace TemuKJD.KJDForms.ProductForms // // colCreatTime // - dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colCreatTime.DefaultCellStyle = dataGridViewCellStyle7; + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colCreatTime.DefaultCellStyle = dataGridViewCellStyle9; this.colCreatTime.HeaderText = "创建时间"; this.colCreatTime.Name = "colCreatTime"; this.colCreatTime.ReadOnly = true; this.colCreatTime.Width = 65; // + // colCompliance + // + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colCompliance.DefaultCellStyle = dataGridViewCellStyle10; + this.colCompliance.HeaderText = "合规"; + this.colCompliance.Name = "colCompliance"; + this.colCompliance.ReadOnly = true; + this.colCompliance.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCompliance.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCompliance.Width = 90; + // // colMsg // this.colMsg.HeaderText = "状态"; @@ -749,106 +923,10 @@ namespace TemuKJD.KJDForms.ProductForms this.colMsg.ReadOnly = true; this.colMsg.Width = 160; // - // splitContainer4 - // - this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill; - this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; - this.splitContainer4.Location = new System.Drawing.Point(0, 0); - this.splitContainer4.Name = "splitContainer4"; - // - // splitContainer4.Panel1 - // - this.splitContainer4.Panel1.Controls.Add(this.ucSplitPage1); - // - // splitContainer4.Panel2 - // - this.splitContainer4.Panel2.Controls.Add(this.panelEx1); - this.splitContainer4.Panel2.Controls.Add(this.btnClear); - this.splitContainer4.Panel2.Controls.Add(this.statusBar); - this.splitContainer4.Size = new System.Drawing.Size(1461, 26); - this.splitContainer4.SplitterDistance = 282; - this.splitContainer4.TabIndex = 3; - // - // ucSplitPage1 - // - this.ucSplitPage1.CurrentPage = 1; - this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Left; - this.ucSplitPage1.IsShowPageSize = false; - this.ucSplitPage1.Location = new System.Drawing.Point(0, 0); - this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); - this.ucSplitPage1.Name = "ucSplitPage1"; - this.ucSplitPage1.PageSize = 50; - this.ucSplitPage1.Size = new System.Drawing.Size(282, 26); - this.ucSplitPage1.TabIndex = 5; - this.ucSplitPage1.TotalPage = 1; - this.ucSplitPage1.PageChange += new System.Action(this.ucSplitPage1_PageChange); - // - // panelEx1 - // - this.panelEx1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control; - this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty; - this.panelEx1.Location = new System.Drawing.Point(1056, 0); - this.panelEx1.Name = "panelEx1"; - this.panelEx1.Size = new System.Drawing.Size(115, 21); - this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center; - this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; - this.panelEx1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; - this.panelEx1.Style.GradientAngle = 90; - this.panelEx1.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; - this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.panelEx1.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; - this.panelEx1.TabIndex = 668; - this.panelEx1.Text = "停止当前操作"; - this.panelEx1.Visible = false; - // - // btnClear - // - this.btnClear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | 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(962, 0); - 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; - // - // 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(1175, 26); - this.statusBar.TabIndex = 2; - // // TemuJitForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; - this.ClientSize = new System.Drawing.Size(1461, 571); + this.ClientSize = new System.Drawing.Size(1350, 611); this.Controls.Add(this.splitContainer1); this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.Name = "TemuJitForm"; @@ -872,6 +950,8 @@ namespace TemuKJD.KJDForms.ProductForms this.splitContainer2.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.pbShopLoading)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).EndInit(); + this.pnlSpecDetail.ResumeLayout(false); + this.pnlSpecDetail.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvPriceCheck)).EndInit(); this.splitContainer4.Panel1.ResumeLayout(false); @@ -916,6 +996,19 @@ namespace TemuKJD.KJDForms.ProductForms private System.Windows.Forms.SplitContainer splitContainer4; private UserControls.UcSplitPage ucSplitPage1; private UserControls.StatusBarUserControl statusBar; + private DevComponents.DotNetBar.PanelEx btnResetExtCode; + private System.Windows.Forms.TextBox txtExtCode; + private System.Windows.Forms.Label label12; + private UserComponent.UcCheckBox chkSearchTime; + private System.Windows.Forms.DateTimePicker dtpEndTime; + private System.Windows.Forms.DateTimePicker dtpStartTime; + private DevComponents.DotNetBar.PanelEx btnStop; + private DevComponents.DotNetBar.PanelEx btnSearchPrice2; + private System.Windows.Forms.TextBox txtSkcId; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.Panel pnlSpecDetail; + private System.Windows.Forms.TextBox textBox1; + private DevComponents.DotNetBar.PanelEx btnClose; private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; private System.Windows.Forms.DataGridViewTextBoxColumn colProdIndex; private System.Windows.Forms.DataGridViewTextBoxColumn colOrderId; @@ -930,16 +1023,7 @@ namespace TemuKJD.KJDForms.ProductForms private System.Windows.Forms.DataGridViewTextBoxColumn colExtCode; private System.Windows.Forms.DataGridViewTextBoxColumn colPrcie; private System.Windows.Forms.DataGridViewTextBoxColumn colCreatTime; + private System.Windows.Forms.DataGridViewLinkColumn colCompliance; private System.Windows.Forms.DataGridViewTextBoxColumn colMsg; - private DevComponents.DotNetBar.PanelEx btnResetExtCode; - private System.Windows.Forms.TextBox txtExtCode; - private System.Windows.Forms.Label label12; - private UserComponent.UcCheckBox chkSearchTime; - private System.Windows.Forms.DateTimePicker dtpEndTime; - private System.Windows.Forms.DateTimePicker dtpStartTime; - private DevComponents.DotNetBar.PanelEx btnStop; - private DevComponents.DotNetBar.PanelEx btnSearchPrice2; - private System.Windows.Forms.TextBox txtSkcId; - private System.Windows.Forms.Label label7; } } \ No newline at end of file diff --git a/TEMUKJD/KJDForms/ProductForms/TemuJitForm.cs b/TEMUKJD/KJDForms/ProductForms/TemuJitForm.cs index 386b8f1..ffebd49 100644 --- a/TEMUKJD/KJDForms/ProductForms/TemuJitForm.cs +++ b/TEMUKJD/KJDForms/ProductForms/TemuJitForm.cs @@ -17,6 +17,7 @@ using TemuKJD.BLL; using TemuKJD.Extension; using TemuKJD.KJDForms.AdminForms; using TemuKJD.KJDForms.ShopForms; +using TemuKJD.ToolForms; using Work; namespace TemuKJD.KJDForms.ProductForms @@ -26,7 +27,14 @@ namespace TemuKJD.KJDForms.ProductForms SetJitConfig setJitConfig = null; public CancellationTokenSource cancellationTokenSource { get; set; } = null; public List lstAdminShopInfo { get; set; } = new List(); - public List lstCheckPriceInfo = new List(); + /// + /// 生命周期商品列表 + /// + public List lstChainProdInfo = new List(); + /// + /// 商品合规信息列表 + /// + public List lstComplianceInfo = new List(); public TemuJitForm() { @@ -37,6 +45,7 @@ namespace TemuKJD.KJDForms.ProductForms { this.dgvShop.AddSelectorColumn("colSelect"); this.dgvPriceCheck.AddSelectorColumn("colCheck"); + this.dgvPriceCheck.AddImgColumn("colProductSkcPic", "colImgUrl"); this.dtpEndTime.Value = DateTime.Now.Date.AddDays(1).AddMilliseconds(-1); this.dtpStartTime.Value = DateTime.Now.Date.AddDays(-7); @@ -254,7 +263,8 @@ namespace TemuKJD.KJDForms.ProductForms } this.dgvPriceCheck.Rows.Clear(); - this.lstCheckPriceInfo.Clear(); + this.lstChainProdInfo.Clear(); + this.lstComplianceInfo.Clear(); this.pbLoading.Visible = true; cancellationTokenSource = new CancellationTokenSource(); Task.Run(() => @@ -292,7 +302,7 @@ namespace TemuKJD.KJDForms.ProductForms } string searchSkcIds = txtSkcId.Text.Trim().Trim(','); string searchExtCodes = txtExtCode.Text.Trim().Trim(','); - var searchRst = this.SearchForChainSupplier(shop, page, 100, searchSkcIds, searchExtCodes, type, startTime, endTime); + var searchRst = this.SearchForChainSupplier(shop, page, 50, searchSkcIds, searchExtCodes, type, startTime, endTime); if (searchRst.Contains("登录过期") || searchRst.Contains("Invalid Login State")) { AdminShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false); @@ -314,17 +324,42 @@ namespace TemuKJD.KJDForms.ProductForms jArr = new JArray(); List extCodeLst = new List(); - List checkPriceInfoTmpLst = new List(); + List checkPriceInfoTmpLst = new List(); foreach (var item in jArr) { var jStr = JsonHelper.SerializeObject(item); - TemuCheckPriceInfo priceInfo = JsonHelper.DeserializeJsonToObject(jStr); - lstCheckPriceInfo.Add(priceInfo); + TemuForChainProductInfo priceInfo = JsonHelper.DeserializeJsonToObject(jStr); + lstChainProdInfo.Add(priceInfo); checkPriceInfoTmpLst.Add(priceInfo); extCodeLst.Add(priceInfo.skcList.FirstOrDefault()?.extCode); } + + var spuIds = ""; foreach (var priceInfo in checkPriceInfoTmpLst) { + spuIds += priceInfo.productId + ","; + } + spuIds = "\"" + spuIds.Trim(',').Replace(",", "\",\"") + "\""; + List complianceInfoTmpLst = null; + if (spuIds.Length > 2) + { + Thread.Sleep(Randomx.GetId(50, 100)); + var queryComplianceRst = this.QueryComplianceInfo(shop, 50, spuIds); + queryComplianceRst = GetHtml.Unicode2String(queryComplianceRst); + if (queryComplianceRst.Contains("\"success\":true")) + { + JObject complianceRstObj = JObject.Parse(queryComplianceRst); + + string sData = JsonHelper.SerializeObject(complianceRstObj["result"]["data"]); + complianceInfoTmpLst = JsonHelper.DeserializeJsonToList(sData); + lstComplianceInfo.AddRange(complianceInfoTmpLst); + } + } + + int num = 0; + foreach (var priceInfo in checkPriceInfoTmpLst) + { + num++; if (cancellationTokenSource.IsCancellationRequested) break; @@ -340,9 +375,6 @@ namespace TemuKJD.KJDForms.ProductForms if (imgUrl == null) imgUrl = ""; imgUrl = imgUrl.Replace("https://", "http://").Replace("img.kwcdn.com", "img.cdnfe.com") + "?imageMogr2/thumbnail/60x"; - //string getImgError = ""; - //var img = GetHtml.GetUrlImg(imgUrl + "?imageMogr2/thumbnail/60x", out getImgError); - foreach (var reviewInfo in priceInfo.skcList.FirstOrDefault().supplierPriceReviewInfoList) { if (cancellationTokenSource.IsCancellationRequested) @@ -365,27 +397,16 @@ namespace TemuKJD.KJDForms.ProductForms skuName += "\r\n"; } } - var suggestSupplyPrice = "-"; - //if (type == "待卖家确认") - //{ - // var orderPriceRst = "店铺掉线"; - // if (shop.LoginStatus2 == "国际版在线") - // orderPriceRst = GetCheckPrice(shop, reviewInfo.priceOrderId.ParseToString()); - // if (orderPriceRst.Contains("登录过期") || orderPriceRst.Contains("Invalid Login State")) - // { - // AdminShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false); - // } - // reviewInfo.suggestSupplyPrice = BaseRegex.GetIntJson(ref orderPriceRst, "suggestSupplyPrice"); - // reviewInfo.supplyPrice = BaseRegex.GetIntJson(ref orderPriceRst, "supplyPrice"); - // suggestSupplyPrice = (reviewInfo.suggestSupplyPrice / 100.0).ToString(); - // if (suggestSupplyPrice == "0") - // suggestSupplyPrice = "获取推荐价格失败,请重试" + orderPriceRst; - // else - // suggestSupplyPrice += "¥"; - //} var reviewExtCode = priceInfo.skcList.FirstOrDefault()?.extCode; Thread.Sleep(Randomx.GetId(20, 50)); + var complianceInfo = complianceInfoTmpLst.FirstOrDefault(c => c.spu_id == priceInfo.productId); + if (complianceInfo == null) + complianceInfo = new complianceInfo(); + var complianceTaskNames = complianceInfo.wait_task_dtolist + .Where(t => t.task_name == "欧盟负责人" || t.task_name == "制造商信息" || t.is_not_required == false) + .Select(t => t.task_name).ToList(); + var complianceStr = string.Join("\r\n", complianceTaskNames); Invoke(new Action(() => { int rowId = this.dgvPriceCheck.Rows.Add( @@ -401,14 +422,18 @@ namespace TemuKJD.KJDForms.ProductForms priceInfo.productName, skuName, reviewExtCode, - "-", //货号价格,jit不需要 + //"-", //货号价格,jit不需要 // sku不同价的会被分成多个review,priceInfo此时为价格范围 reviewInfo.productSkuList.FirstOrDefault()?.supplierPrice, //priceInfo.supplierPrice BaseClass.StampToDateTime((priceInfo.skcList.FirstOrDefault()?.statusTime.createdTime.ParseToLong() / 1000).ParseToInt()).ToString("yy/MM/dd HH:mm:ss"), - + complianceStr, "" ); dgvPriceCheck.Rows[rowId].Height = 60; + if (num % 2 == 1) + dgvPriceCheck.Rows[rowId].DefaultCellStyle.BackColor = Color.White; + else + dgvPriceCheck.Rows[rowId].DefaultCellStyle.BackColor = Color.WhiteSmoke; })); } } @@ -434,7 +459,7 @@ namespace TemuKJD.KJDForms.ProductForms } - private string SearchForChainSupplier(ShopLoginInfo shop, int page, int pageSize = 100, string prodSkcIds = null, string skcExtCode = null, + private string SearchForChainSupplier(ShopLoginInfo shop, int page, int pageSize = 50, string prodSkcIds = null, string skcExtCode = null, string type = "待创建首单", long startTime = 0, long endTime = 0) { string url = "https://agentseller.temu.com/api/kiana/mms/robin/searchForChainSupplier"; @@ -456,6 +481,99 @@ namespace TemuKJD.KJDForms.ProductForms string referer = "https://agentseller.temu.com/newon/product-select"; return HttpResponseBLL.PostResponse2(shop, url, body, referer); } + + private string QueryComplianceInfo(ShopLoginInfo shop, int pageSize = 50, string prodSpuIds = null) + { + string url = "https://agentseller.temu.com/ms/bg-flux-ms/compliance_property/page_query"; + string body = ""; + body = @"{""page_num"":1,""page_size"":" + pageSize + @",""type"":2,""spu_id_list"":[" + prodSpuIds + "]}"; + string referer = "https://agentseller.temu.com/govern/information-supplementation"; + return HttpResponseBLL.PostResponse2(shop, url, body, referer); + } + + private void dgvPriceCheck_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvPriceCheck.Columns[e.ColumnIndex].HeaderText; + string orderId = dgvPriceCheck.Rows[e.RowIndex].Cells["colOrderId"].Value.ParseToString(); + string prodId = dgvPriceCheck.Rows[e.RowIndex].Cells["colProductId"].Value.ParseToString(); + string accountId = dgvPriceCheck.Rows[e.RowIndex].Cells["colSupplierId"].Value.ParseToString(); + var shop = lstAdminShopInfo.FirstOrDefault(v => v.ShopId == accountId); + + switch (headerText) + { + case "规格名称": + { + var PriceInfo = lstChainProdInfo.FirstOrDefault(p => p.productId.ParseToString() == prodId); + if (PriceInfo != null) + { + this.pnlSpecDetail.Visible = true; + + string skuName = ""; + var prodSkuList = PriceInfo.skcList.FirstOrDefault().skuList; + if (prodSkuList != null) + { + foreach (var sku in prodSkuList) + { + foreach (var prop in sku.productPropertyList) + { + skuName += prop.value + ","; + } + skuName = skuName.TrimEnd(',') + ";"; + skuName += " "; + skuName += " 长:" + sku.len.ParseToInt() * 0.1; + skuName += " 宽:" + sku.width.ParseToInt() * 0.1; + skuName += " 高:" + sku.height.ParseToInt() * 0.1; + skuName += " 重:" + sku.weight.ParseToInt() * 0.001; + skuName += "\r\n"; + } + } + this.textBox1.Text = skuName; + } + } + break; + //case "同意报价": + // { + // applyHighPrice(shop, orderId, dgvPriceCheck.Rows[e.RowIndex]); + // } + // break; + //case "拒绝报价": + // { + // cancelLowPrice(shop, orderId, dgvPriceCheck.Rows[e.RowIndex]); + // } + // break; + //case "作废待创建": + // { + // this.cancelTitleWrongPrice(shop, prodId); + // } + // break; + case "合规": + { + //加州65号提案 + //欧盟负责人 + //制造商信息 + //其他合规信息 商品识别码 + } + break; + case "Skc图片": + string url = dgvPriceCheck.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString().Replace("img.kwcdn.com", "img.cdnfe.com"); + url = url.IndexOf("?") < 0 ? url : url.Substring(0, url.IndexOf("?")); + ShowImgForm imgFrom = new ShowImgForm(url); + imgFrom.ShowDialog(); + break; + //case "": + // dgvPriceCheck.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvPriceCheck.Rows[e.RowIndex].Cells["colCheck"].Value; + // break; + default: + break; + } + } + + private void btnClose_Click(object sender, EventArgs e) + { + this.pnlSpecDetail.Visible = false; + } } public class SetJitConfig @@ -465,4 +583,37 @@ namespace TemuKJD.KJDForms.ProductForms public string SearchNotes { get; set; } = ""; public bool SearchAllShop { get; set; } = true; } + /// + /// 合规信息 + /// + public class complianceInfo + { + public long? spu_id { get; set; } // 5230217458, + public string spu_name { get; set; } // "XIXITIAO 女款韩式拖鞋 - 夏季休闲纯色 EVA 拖鞋,舒适防滑低跟沙滩凉鞋,室内/室外使用,夏季凉鞋,女式人字拖,夹趾凉鞋时尚女士轻质夏季一脚蹬沙滩人字拖凉鞋,女式人字拖夹趾凉鞋休闲凉鞋淋浴鞋沙滩拖鞋拖鞋凉鞋一脚蹬淌水鞋,百搭设计,适合日常穿着,女式平底凉鞋", + public long? cat_id { get; set; } // 29186, + public string cat_name { get; set; } // "女士人字拖", + public long? goods_id { get; set; } // 601103852497488, + public string goods_url { get; set; } // "https://img.kwcdn.com/product/fancy/0f52acc1-edfe-4f70-8032-012505ad0da5.jpg", + public List wait_task_dtolist { get; set; } + public List wait_task_show_dtolist { get; set; } + public bool? on_sale { get; set; } // false + } + public class task_dto + { + public long? task_id { get; set; } // 101042759897649, + public int? task_type { get; set; } // 25, + public bool? is_not_required { get; set; } // true, + public string task_name { get; set; } // "欧盟负责人", + public int? status { get; set; } // 2, + public long? punish_time { get; set; } // 0, + public sale_effect_info sale_effect_info { get; set; } + } + public class sale_effect_info + { + public long? punish_time { get; set; } // 0, + public bool? on_site { get; set; } // false, + public List region_list { get; set; } // [105, 106, 107, 108, 109, ...], + public string content { get; set; } // "德国站、法国站、意大利站、荷兰站、西班牙站、葡萄牙站、波兰站、瑞典站、希腊站、爱尔兰站、塞浦路斯站、捷克站、匈牙利站、丹麦站、罗马尼亚站、保加利亚站、比利时站、奥地利站、芬兰站、斯洛伐克站、克罗地亚站、斯洛文尼亚站、立陶宛站、爱沙尼亚站、拉脱维亚站、马耳他站、卢森堡站" + + } } diff --git a/TEMUKJD/KJDForms/ProductForms/TemuJitForm.resx b/TEMUKJD/KJDForms/ProductForms/TemuJitForm.resx index bbce3c5..d2b896d 100644 --- a/TEMUKJD/KJDForms/ProductForms/TemuJitForm.resx +++ b/TEMUKJD/KJDForms/ProductForms/TemuJitForm.resx @@ -180,6 +180,9 @@ True + + True + True diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.Designer.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.Designer.cs index da52856..73e0493 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.Designer.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.Designer.cs @@ -51,6 +51,8 @@ this.label8 = new System.Windows.Forms.Label(); this.txtNotes = new DevComponents.DotNetBar.Controls.TextBoxX(); this.btnOk = new TemuKJD.UserControls.ButtonEx(); + this.txtGroup = new System.Windows.Forms.TextBox(); + this.label9 = new System.Windows.Forms.Label(); this.panel2.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.SuspendLayout(); @@ -58,6 +60,8 @@ // panel2 // this.panel2.BackColor = System.Drawing.Color.White; + this.panel2.Controls.Add(this.label9); + this.panel2.Controls.Add(this.txtGroup); this.panel2.Controls.Add(this.btnAuto); this.panel2.Controls.Add(this.pnlRestore); this.panel2.Controls.Add(this.btnSkuAi); @@ -92,7 +96,7 @@ this.btnAuto.Cursor = System.Windows.Forms.Cursors.Hand; this.btnAuto.DisabledBackColor = System.Drawing.Color.Empty; this.btnAuto.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnAuto.Location = new System.Drawing.Point(348, 353); + this.btnAuto.Location = new System.Drawing.Point(348, 360); this.btnAuto.Name = "btnAuto"; this.btnAuto.Size = new System.Drawing.Size(35, 23); this.btnAuto.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -115,7 +119,7 @@ this.pnlRestore.CanvasColor = System.Drawing.SystemColors.Control; this.pnlRestore.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.pnlRestore.DisabledBackColor = System.Drawing.Color.Empty; - this.pnlRestore.Location = new System.Drawing.Point(388, 353); + this.pnlRestore.Location = new System.Drawing.Point(388, 360); this.pnlRestore.Name = "pnlRestore"; this.pnlRestore.Size = new System.Drawing.Size(39, 23); this.pnlRestore.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -154,7 +158,7 @@ // label7 // this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(31, 391); + this.label7.Location = new System.Drawing.Point(31, 393); this.label7.Name = "label7"; this.label7.Size = new System.Drawing.Size(56, 17); this.label7.TabIndex = 403; @@ -177,7 +181,7 @@ this.txtFissionWords.Border.PaddingLeft = 2; this.txtFissionWords.Border.PaddingRight = 2; this.txtFissionWords.Border.PaddingTop = 2; - this.txtFissionWords.Location = new System.Drawing.Point(90, 391); + this.txtFissionWords.Location = new System.Drawing.Point(90, 390); this.txtFissionWords.Multiline = true; this.txtFissionWords.Name = "txtFissionWords"; this.txtFissionWords.Size = new System.Drawing.Size(337, 238); @@ -188,7 +192,7 @@ // this.txtEndWords.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.txtEndWords.Location = new System.Drawing.Point(232, 353); + this.txtEndWords.Location = new System.Drawing.Point(232, 360); this.txtEndWords.Name = "txtEndWords"; this.txtEndWords.Size = new System.Drawing.Size(111, 23); this.txtEndWords.TabIndex = 401; @@ -196,7 +200,7 @@ // label6 // this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(201, 356); + this.label6.Location = new System.Drawing.Point(201, 363); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(32, 17); this.label6.TabIndex = 400; @@ -204,7 +208,7 @@ // // txtHeadWords // - this.txtHeadWords.Location = new System.Drawing.Point(90, 353); + this.txtHeadWords.Location = new System.Drawing.Point(90, 360); this.txtHeadWords.Name = "txtHeadWords"; this.txtHeadWords.Size = new System.Drawing.Size(111, 23); this.txtHeadWords.TabIndex = 399; @@ -212,7 +216,7 @@ // label5 // this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(31, 356); + this.label5.Location = new System.Drawing.Point(31, 363); this.label5.Name = "label5"; this.label5.Size = new System.Drawing.Size(56, 17); this.label5.TabIndex = 398; @@ -222,7 +226,7 @@ // this.txtProductName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.txtProductName.Location = new System.Drawing.Point(90, 205); + this.txtProductName.Location = new System.Drawing.Point(90, 193); this.txtProductName.Multiline = true; this.txtProductName.Name = "txtProductName"; this.txtProductName.Size = new System.Drawing.Size(337, 46); @@ -232,7 +236,7 @@ // this.txtSkcId.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.txtSkcId.Location = new System.Drawing.Point(291, 171); + this.txtSkcId.Location = new System.Drawing.Point(291, 163); this.txtSkcId.Name = "txtSkcId"; this.txtSkcId.ReadOnly = true; this.txtSkcId.Size = new System.Drawing.Size(136, 23); @@ -240,7 +244,7 @@ // // txtSpuId // - this.txtSpuId.Location = new System.Drawing.Point(90, 171); + this.txtSpuId.Location = new System.Drawing.Point(90, 163); this.txtSpuId.Name = "txtSpuId"; this.txtSpuId.ReadOnly = true; this.txtSpuId.Size = new System.Drawing.Size(136, 23); @@ -250,7 +254,7 @@ // this.txtExtCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.txtExtCode.Location = new System.Drawing.Point(90, 262); + this.txtExtCode.Location = new System.Drawing.Point(90, 246); this.txtExtCode.Name = "txtExtCode"; this.txtExtCode.Size = new System.Drawing.Size(337, 23); this.txtExtCode.TabIndex = 394; @@ -258,7 +262,7 @@ // label4 // this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(31, 265); + this.label4.Location = new System.Drawing.Point(31, 249); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(56, 17); this.label4.TabIndex = 393; @@ -267,7 +271,7 @@ // label3 // this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(31, 209); + this.label3.Location = new System.Drawing.Point(31, 196); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(56, 17); this.label3.TabIndex = 392; @@ -276,7 +280,7 @@ // label2 // this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(233, 174); + this.label2.Location = new System.Drawing.Point(233, 166); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(56, 17); this.label2.TabIndex = 391; @@ -285,7 +289,7 @@ // label1 // this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(31, 174); + this.label1.Location = new System.Drawing.Point(31, 166); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(56, 17); this.label1.TabIndex = 390; @@ -304,7 +308,7 @@ // label8 // this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(31, 296); + this.label8.Location = new System.Drawing.Point(31, 279); this.label8.Name = "label8"; this.label8.Size = new System.Drawing.Size(56, 17); this.label8.TabIndex = 386; @@ -327,7 +331,7 @@ this.txtNotes.Border.PaddingLeft = 2; this.txtNotes.Border.PaddingRight = 2; this.txtNotes.Border.PaddingTop = 2; - this.txtNotes.Location = new System.Drawing.Point(90, 296); + this.txtNotes.Location = new System.Drawing.Point(90, 276); this.txtNotes.Multiline = true; this.txtNotes.Name = "txtNotes"; this.txtNotes.Size = new System.Drawing.Size(337, 47); @@ -350,6 +354,22 @@ this.btnOk.UseVisualStyleBackColor = false; this.btnOk.Click += new System.EventHandler(this.btnOk_Click); // + // txtGroup + // + this.txtGroup.Location = new System.Drawing.Point(90, 330); + this.txtGroup.Name = "txtGroup"; + this.txtGroup.Size = new System.Drawing.Size(337, 23); + this.txtGroup.TabIndex = 446; + // + // label9 + // + this.label9.AutoSize = true; + this.label9.Location = new System.Drawing.Point(31, 333); + this.label9.Name = "label9"; + this.label9.Size = new System.Drawing.Size(56, 17); + this.label9.TabIndex = 447; + this.label9.Text = " 分组"; + // // DbProductEditNotesForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -393,5 +413,7 @@ private UserControls.ButtonEx btnSkuAi; private DevComponents.DotNetBar.PanelEx pnlRestore; private DevComponents.DotNetBar.PanelEx btnAuto; + private System.Windows.Forms.Label label9; + private System.Windows.Forms.TextBox txtGroup; } } \ No newline at end of file diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.cs index d796437..09b71dc 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditNotesForm.cs @@ -36,6 +36,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms txtSpuId.Text = dbProd.spu_id; this.pictureBox1.ImageLocation = dbProd.main_img.Replace("https", "http"); this.txtNotes.Text = dbProd.notes; + this.txtGroup.Text = dbProd.group; this.txtExtCode.Text = dbProd.ext_code; this.txtFissionWords.Text = dbProd.fission_words; //this.txtHeadWords.Text = string.IsNullOrWhiteSpace(dbProd.head_words) ? "5-99个" : dbProd.head_words; @@ -51,6 +52,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms var url = BaseClass.BuildObjString("product/mdy_db_product"); var data = UserLogin.GetSignaturex() + "&db_id=" + dbProd.id + "¬es=" + this.txtNotes.Text.Trim(); + data += "&group=" + this.txtGroup.Text.Trim(); data += "&product_name=" + this.txtProductName.Text.Trim(); data += "&ext_code=" + this.txtExtCode.Text.Trim(); data += "&fission_words=" + this.txtFissionWords.Text.Trim(); @@ -68,6 +70,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms else { dbProd.notes = this.txtNotes.Text.Trim(); + dbProd.group = this.txtGroup.Text.Trim(); dbProd.ext_code = this.txtExtCode.Text.Trim(); dbProd.head_words = this.txtHeadWords.Text.Trim(); dbProd.end_words = this.txtEndWords.Text.Trim(); diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.Designer.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.Designer.cs index bd8058f..53bb706 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.Designer.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.Designer.cs @@ -40,6 +40,8 @@ namespace TemuKJD.KJDForms.ProductSelectForms System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DbProductListForm)); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.cmbGroup = new System.Windows.Forms.ComboBox(); + this.lblGroup = new System.Windows.Forms.Label(); this.btnImportHtml = new DevComponents.DotNetBar.PanelEx(); this.cmbSort = new System.Windows.Forms.ComboBox(); this.btnSelect = new TemuKJD.UserControls.ButtonEx(); @@ -47,7 +49,6 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.lblNotes = new System.Windows.Forms.Label(); this.txtSPU = new System.Windows.Forms.TextBox(); this.label5 = new System.Windows.Forms.Label(); - this.txtSKC = new System.Windows.Forms.TextBox(); this.label1 = new System.Windows.Forms.Label(); this.pnlEmpty = new DevComponents.DotNetBar.PanelEx(); this.btnSearch = new TemuKJD.UserControls.ButtonEx(); @@ -55,9 +56,10 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.label4 = new System.Windows.Forms.Label(); this.txtProdName = new System.Windows.Forms.TextBox(); this.label3 = new System.Windows.Forms.Label(); - this.txtCat = new System.Windows.Forms.TextBox(); this.label2 = new System.Windows.Forms.Label(); this.label6 = new System.Windows.Forms.Label(); + this.txtCat = new System.Windows.Forms.TextBox(); + this.txtSKC = new System.Windows.Forms.TextBox(); this.splitContainer2 = new System.Windows.Forms.SplitContainer(); this.pbLoading = new System.Windows.Forms.PictureBox(); this.panel2 = new System.Windows.Forms.Panel(); @@ -78,8 +80,6 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.txtShopId = new System.Windows.Forms.TextBox(); this.label8 = new System.Windows.Forms.Label(); this.dgvDbProduct = new TemuKJD.UserComponent.DataGridViewEx(); - this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); - this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.col_db_id = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.col_product_name = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -93,6 +93,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.colSelectTotalCount = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colProdGetType = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.col_notes = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colGroup = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colHeadWords = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colEndWords = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colFissionWords = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -101,6 +102,8 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.col_edit = new System.Windows.Forms.DataGridViewLinkColumn(); this.col_delete = new System.Windows.Forms.DataGridViewLinkColumn(); this.col_select_product = new System.Windows.Forms.DataGridViewLinkColumn(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -127,6 +130,8 @@ namespace TemuKJD.KJDForms.ProductSelectForms // // splitContainer1.Panel1 // + this.splitContainer1.Panel1.Controls.Add(this.cmbGroup); + this.splitContainer1.Panel1.Controls.Add(this.lblGroup); this.splitContainer1.Panel1.Controls.Add(this.btnImportHtml); this.splitContainer1.Panel1.Controls.Add(this.cmbSort); this.splitContainer1.Panel1.Controls.Add(this.btnSelect); @@ -134,32 +139,49 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.splitContainer1.Panel1.Controls.Add(this.lblNotes); this.splitContainer1.Panel1.Controls.Add(this.txtSPU); this.splitContainer1.Panel1.Controls.Add(this.label5); - this.splitContainer1.Panel1.Controls.Add(this.txtSKC); - this.splitContainer1.Panel1.Controls.Add(this.label1); this.splitContainer1.Panel1.Controls.Add(this.pnlEmpty); this.splitContainer1.Panel1.Controls.Add(this.btnSearch); this.splitContainer1.Panel1.Controls.Add(this.txtExtCode); this.splitContainer1.Panel1.Controls.Add(this.label4); this.splitContainer1.Panel1.Controls.Add(this.txtProdName); - this.splitContainer1.Panel1.Controls.Add(this.label3); - this.splitContainer1.Panel1.Controls.Add(this.txtCat); - this.splitContainer1.Panel1.Controls.Add(this.label2); this.splitContainer1.Panel1.Controls.Add(this.label6); + this.splitContainer1.Panel1.Controls.Add(this.txtCat); + this.splitContainer1.Panel1.Controls.Add(this.txtSKC); + this.splitContainer1.Panel1.Controls.Add(this.label1); + this.splitContainer1.Panel1.Controls.Add(this.label2); + this.splitContainer1.Panel1.Controls.Add(this.label3); // // splitContainer1.Panel2 // this.splitContainer1.Panel2.Controls.Add(this.splitContainer2); this.splitContainer1.Size = new System.Drawing.Size(1278, 686); - this.splitContainer1.SplitterDistance = 53; + this.splitContainer1.SplitterDistance = 70; this.splitContainer1.TabIndex = 1; // + // txtGroup + // + this.cmbGroup.FormattingEnabled = true; + this.cmbGroup.Location = new System.Drawing.Point(361, 37); + this.cmbGroup.Name = "txtGroup"; + this.cmbGroup.Size = new System.Drawing.Size(121, 25); + this.cmbGroup.TabIndex = 500; + // + // lblGroup + // + this.lblGroup.AutoSize = true; + this.lblGroup.Location = new System.Drawing.Point(327, 41); + this.lblGroup.Name = "lblGroup"; + this.lblGroup.Size = new System.Drawing.Size(44, 17); + this.lblGroup.TabIndex = 499; + this.lblGroup.Text = "分组:"; + // // btnImportHtml // this.btnImportHtml.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnImportHtml.Cursor = System.Windows.Forms.Cursors.Hand; this.btnImportHtml.DisabledBackColor = System.Drawing.Color.Empty; this.btnImportHtml.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnImportHtml.Location = new System.Drawing.Point(1046, 14); + this.btnImportHtml.Location = new System.Drawing.Point(950, 7); this.btnImportHtml.Name = "btnImportHtml"; this.btnImportHtml.Size = new System.Drawing.Size(91, 26); this.btnImportHtml.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -183,7 +205,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.cmbSort.Items.AddRange(new object[] { "入库时间", "认领总数"}); - this.cmbSort.Location = new System.Drawing.Point(929, 15); + this.cmbSort.Location = new System.Drawing.Point(833, 8); this.cmbSort.Name = "cmbSort"; this.cmbSort.Size = new System.Drawing.Size(79, 25); this.cmbSort.TabIndex = 448; @@ -197,7 +219,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.btnSelect.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnSelect.ForeColor = System.Drawing.Color.White; - this.btnSelect.Location = new System.Drawing.Point(1171, 14); + this.btnSelect.Location = new System.Drawing.Point(1171, 7); this.btnSelect.Margin = new System.Windows.Forms.Padding(2); this.btnSelect.Name = "btnSelect"; this.btnSelect.Size = new System.Drawing.Size(91, 26); @@ -209,15 +231,15 @@ namespace TemuKJD.KJDForms.ProductSelectForms // // txtNotes // - this.txtNotes.Location = new System.Drawing.Point(653, 16); + this.txtNotes.Location = new System.Drawing.Point(202, 38); this.txtNotes.Name = "txtNotes"; - this.txtNotes.Size = new System.Drawing.Size(85, 23); + this.txtNotes.Size = new System.Drawing.Size(121, 23); this.txtNotes.TabIndex = 439; // // lblNotes // this.lblNotes.AutoSize = true; - this.lblNotes.Location = new System.Drawing.Point(619, 19); + this.lblNotes.Location = new System.Drawing.Point(168, 41); this.lblNotes.Name = "lblNotes"; this.lblNotes.Size = new System.Drawing.Size(44, 17); this.lblNotes.TabIndex = 440; @@ -225,31 +247,24 @@ namespace TemuKJD.KJDForms.ProductSelectForms // // txtSPU // - this.txtSPU.Location = new System.Drawing.Point(44, 16); + this.txtSPU.Location = new System.Drawing.Point(44, 9); this.txtSPU.Name = "txtSPU"; - this.txtSPU.Size = new System.Drawing.Size(85, 23); + this.txtSPU.Size = new System.Drawing.Size(121, 23); this.txtSPU.TabIndex = 434; // // label5 // this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(11, 19); + this.label5.Location = new System.Drawing.Point(11, 12); this.label5.Name = "label5"; this.label5.Size = new System.Drawing.Size(43, 17); this.label5.TabIndex = 435; this.label5.Text = "SPU:"; // - // txtSKC - // - this.txtSKC.Location = new System.Drawing.Point(165, 16); - this.txtSKC.Name = "txtSKC"; - this.txtSKC.Size = new System.Drawing.Size(85, 23); - this.txtSKC.TabIndex = 432; - // // label1 // this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(132, 19); + this.label1.Location = new System.Drawing.Point(169, 12); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(43, 17); this.label1.TabIndex = 433; @@ -260,7 +275,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.pnlEmpty.CanvasColor = System.Drawing.SystemColors.Control; this.pnlEmpty.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.pnlEmpty.DisabledBackColor = System.Drawing.Color.Empty; - this.pnlEmpty.Location = new System.Drawing.Point(805, 14); + this.pnlEmpty.Location = new System.Drawing.Point(709, 7); this.pnlEmpty.Name = "pnlEmpty"; this.pnlEmpty.Size = new System.Drawing.Size(56, 26); this.pnlEmpty.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -286,7 +301,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.btnSearch.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.btnSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.btnSearch.ForeColor = System.Drawing.Color.White; - this.btnSearch.Location = new System.Drawing.Point(744, 14); + this.btnSearch.Location = new System.Drawing.Point(648, 7); this.btnSearch.Margin = new System.Windows.Forms.Padding(2); this.btnSearch.Name = "btnSearch"; this.btnSearch.Size = new System.Drawing.Size(56, 26); @@ -297,15 +312,15 @@ namespace TemuKJD.KJDForms.ProductSelectForms // // txtExtCode // - this.txtExtCode.Location = new System.Drawing.Point(531, 16); + this.txtExtCode.Location = new System.Drawing.Point(44, 38); this.txtExtCode.Name = "txtExtCode"; - this.txtExtCode.Size = new System.Drawing.Size(85, 23); + this.txtExtCode.Size = new System.Drawing.Size(121, 23); this.txtExtCode.TabIndex = 429; // // label4 // this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(497, 19); + this.label4.Location = new System.Drawing.Point(10, 41); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(44, 17); this.label4.TabIndex = 430; @@ -313,31 +328,24 @@ namespace TemuKJD.KJDForms.ProductSelectForms // // txtProdName // - this.txtProdName.Location = new System.Drawing.Point(409, 16); + this.txtProdName.Location = new System.Drawing.Point(520, 9); this.txtProdName.Name = "txtProdName"; - this.txtProdName.Size = new System.Drawing.Size(85, 23); + this.txtProdName.Size = new System.Drawing.Size(121, 23); this.txtProdName.TabIndex = 427; // // label3 // this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(375, 19); + this.label3.Location = new System.Drawing.Point(486, 12); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(44, 17); this.label3.TabIndex = 428; this.label3.Text = "标题:"; // - // txtCat - // - this.txtCat.Location = new System.Drawing.Point(287, 16); - this.txtCat.Name = "txtCat"; - this.txtCat.Size = new System.Drawing.Size(85, 23); - this.txtCat.TabIndex = 425; - // // label2 // this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(253, 19); + this.label2.Location = new System.Drawing.Point(327, 12); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(44, 17); this.label2.TabIndex = 426; @@ -346,12 +354,26 @@ namespace TemuKJD.KJDForms.ProductSelectForms // label6 // this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(872, 19); + this.label6.Location = new System.Drawing.Point(776, 12); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(68, 17); this.label6.TabIndex = 449; this.label6.Text = "排序方式:"; // + // txtCat + // + this.txtCat.Location = new System.Drawing.Point(361, 9); + this.txtCat.Name = "txtCat"; + this.txtCat.Size = new System.Drawing.Size(121, 23); + this.txtCat.TabIndex = 425; + // + // txtSKC + // + this.txtSKC.Location = new System.Drawing.Point(202, 9); + this.txtSKC.Name = "txtSKC"; + this.txtSKC.Size = new System.Drawing.Size(121, 23); + this.txtSKC.TabIndex = 432; + // // splitContainer2 // this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill; @@ -371,15 +393,15 @@ namespace TemuKJD.KJDForms.ProductSelectForms // this.splitContainer2.Panel2.Controls.Add(this.ucSplitPage1); this.splitContainer2.Panel2.Controls.Add(this.statusBar); - this.splitContainer2.Size = new System.Drawing.Size(1278, 629); - this.splitContainer2.SplitterDistance = 600; + this.splitContainer2.Size = new System.Drawing.Size(1278, 612); + this.splitContainer2.SplitterDistance = 583; this.splitContainer2.TabIndex = 0; // // pbLoading // this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbLoading.Location = new System.Drawing.Point(614, 275); + this.pbLoading.Location = new System.Drawing.Point(614, 266); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -645,6 +667,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.colSelectTotalCount, this.colProdGetType, this.col_notes, + this.colGroup, this.colHeadWords, this.colEndWords, this.colFissionWords, @@ -658,36 +681,11 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.dgvDbProduct.Name = "dgvDbProduct"; this.dgvDbProduct.ReadOnly = true; this.dgvDbProduct.RowTemplate.Height = 23; - this.dgvDbProduct.Size = new System.Drawing.Size(1270, 600); + this.dgvDbProduct.Size = new System.Drawing.Size(1270, 583); this.dgvDbProduct.TabIndex = 6; this.dgvDbProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellContentClick); this.dgvDbProduct.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvDbProduct_Scroll); // - // ucSplitPage1 - // - this.ucSplitPage1.CurrentPage = 1; - this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right; - this.ucSplitPage1.IsShowPageSize = false; - this.ucSplitPage1.Location = new System.Drawing.Point(916, 0); - 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(362, 25); - this.ucSplitPage1.TabIndex = 6; - this.ucSplitPage1.TotalPage = 1; - // - // 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(1278, 25); - this.statusBar.TabIndex = 5; - // // colSelect // this.colSelect.FillWeight = 26F; @@ -781,10 +779,18 @@ namespace TemuKJD.KJDForms.ProductSelectForms // dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; this.col_notes.DefaultCellStyle = dataGridViewCellStyle6; + this.col_notes.FillWeight = 90F; this.col_notes.HeaderText = "备注"; this.col_notes.Name = "col_notes"; this.col_notes.ReadOnly = true; // + // colGroup + // + this.colGroup.FillWeight = 58F; + this.colGroup.HeaderText = "分组"; + this.colGroup.Name = "colGroup"; + this.colGroup.ReadOnly = true; + // // colHeadWords // dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True; @@ -852,6 +858,31 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.col_select_product.Resizable = System.Windows.Forms.DataGridViewTriState.True; this.col_select_product.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; // + // ucSplitPage1 + // + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right; + this.ucSplitPage1.IsShowPageSize = false; + this.ucSplitPage1.Location = new System.Drawing.Point(916, 0); + 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(362, 25); + this.ucSplitPage1.TabIndex = 6; + this.ucSplitPage1.TotalPage = 1; + // + // 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(1278, 25); + this.statusBar.TabIndex = 5; + // // DbProductListForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -927,6 +958,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms private System.Windows.Forms.DataGridViewTextBoxColumn colShopNotes; private System.Windows.Forms.NumericUpDown numCount; private System.Windows.Forms.Label lblProdName; + private System.Windows.Forms.Label lblGroup; private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect; private System.Windows.Forms.DataGridViewTextBoxColumn col_db_id; private System.Windows.Forms.DataGridViewTextBoxColumn col_product_name; @@ -940,6 +972,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms private System.Windows.Forms.DataGridViewTextBoxColumn colSelectTotalCount; private System.Windows.Forms.DataGridViewTextBoxColumn colProdGetType; private System.Windows.Forms.DataGridViewTextBoxColumn col_notes; + private System.Windows.Forms.DataGridViewTextBoxColumn colGroup; private System.Windows.Forms.DataGridViewTextBoxColumn colHeadWords; private System.Windows.Forms.DataGridViewTextBoxColumn colEndWords; private System.Windows.Forms.DataGridViewTextBoxColumn colFissionWords; @@ -948,5 +981,6 @@ namespace TemuKJD.KJDForms.ProductSelectForms private System.Windows.Forms.DataGridViewLinkColumn col_edit; private System.Windows.Forms.DataGridViewLinkColumn col_delete; private System.Windows.Forms.DataGridViewLinkColumn col_select_product; + private System.Windows.Forms.ComboBox cmbGroup; } } \ No newline at end of file diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs index 00bc379..c4b8263 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs @@ -52,9 +52,12 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.dgvDbProduct.Columns["colFissionWords"].Visible = true; this.dgvDbProduct.Columns["colSelectProd"].Visible = true; this.dgvDbProduct.Columns["colProdGetType"].Visible = true; + this.dgvDbProduct.Columns["colGroup"].Visible = true; //this.dgvDbProduct.Columns["col_notes"].Visible = true; //this.lblNotes.Visible = true; //this.txtNotes.Visible = true; + this.lblGroup.Visible = true; + this.cmbGroup.Visible = true; this.btnImportHtml.Visible = true; } else @@ -66,9 +69,12 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.dgvDbProduct.Columns["colFissionWords"].Visible = false; this.dgvDbProduct.Columns["colSelectProd"].Visible = false; this.dgvDbProduct.Columns["colProdGetType"].Visible = false; + this.dgvDbProduct.Columns["colGroup"].Visible = false; //this.dgvDbProduct.Columns["col_notes"].Visible = false; //this.lblNotes.Visible = false; //this.txtNotes.Visible = false; + this.lblGroup.Visible = false; + this.cmbGroup.Visible = false; this.btnImportHtml.Visible = false; } @@ -85,6 +91,20 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.ucSplitPage1.PageChange += UcSplitPage1_PageChange; this.dgvDbProduct.AddSelectorColumn("colSelect"); this.dgvDbProduct.AddImgColumn("colMainImg", "colImgUrl"); + + Task.Run(() => + { + var groupNames = getProductGroupList(); + Invoke(new Action(() => + { + this.cmbGroup.Items.Clear(); + this.cmbGroup.Items.Add(""); + foreach (var groupName in groupNames) + { + this.cmbGroup.Items.Add(groupName); + } + })); + }); } private void btnSearch_Click(object sender, EventArgs e) @@ -145,6 +165,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms prod.select_total_count, prod.product_get_type == 0 ? "母店采集" : "前端直采", prod.notes, + prod.group, prod.head_words, prod.end_words, prod.fission_words, @@ -165,6 +186,48 @@ namespace TemuKJD.KJDForms.ProductSelectForms }); } + public List getProductGroupList() + { + List list = new List(); + + var url = BaseClass.BuildObjString("product/get_product_group_list"); + var data = ""; + + Invoke(new Action(() => + { + data = UserLogin.GetSignaturex() + + "&page=" + 1 + + "&page_size=" + 100; + })); + var html = GetHtml.PostUtf8(url, data); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(url, data); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(url, data); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + { + Invoke(new Action(() => + { + //BaseMsgForm.ShowError("获取商品列表失败,请重试!" + BaseRegex.GetStringJson(ref html, "msg")); + })); + return list; + } + var jArr = JObject.Parse(html)["data"]; + if (jArr.Count() == 0) + return list; + var sGroupName = JsonHelper.SerializeObject(jArr); + + try + { + list = JsonHelper.DeserializeJsonToList(sGroupName).Where(s => !string.IsNullOrEmpty(s)).ToList(); + return list; + } + catch (Exception ex) + { + return new List(); + } + } + public List GetProductList(out int pageCount, int page = 1, int pageSize = 200) { List list = new List(); @@ -181,6 +244,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms "&search_spu=" + txtSPU.Text.Trim() + "&search_skc=" + txtSKC.Text.Trim() + "&search_notes=" + txtNotes.Text.Trim() + + "&search_group=" + cmbGroup.Text.Trim() + "&search_cat=" + txtCat.Text.Trim() + "&search_ext_code=" + txtExtCode.Text.Trim() + "&search_prod_name=" + txtProdName.Text.Trim(); @@ -256,6 +320,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms this.txtSKC.Text = ""; this.txtSPU.Text = ""; this.txtNotes.Text = ""; + this.cmbGroup.Text = ""; } private void dgvDbProduct_CellContentClick(object sender, DataGridViewCellEventArgs e) @@ -282,6 +347,26 @@ namespace TemuKJD.KJDForms.ProductSelectForms dgvDbProduct.Rows[e.RowIndex].Cells["colEndWords"].Value = dbProduct.end_words; dgvDbProduct.Rows[e.RowIndex].Cells["colFissionWords"].Value = dbProduct.fission_words; dgvDbProduct.Rows[e.RowIndex].Cells["col_product_name"].Value = dbProduct.product_name; + if (dgvDbProduct.Rows[e.RowIndex].Cells["colGroup"].Value.ParseToString() != dbProduct.group.ParseToString()) + { + dgvDbProduct.Rows[e.RowIndex].Cells["colGroup"].Value = dbProduct.group; + if (!cmbGroup.Items.Cast().Any(s => s.ToString() == dbProduct.group)) + { + Task.Run(() => + { + var groupNames = getProductGroupList(); + Invoke(new Action(() => + { + this.cmbGroup.Items.Clear(); + this.cmbGroup.Items.Add(""); + foreach (var groupName in groupNames) + { + this.cmbGroup.Items.Add(groupName); + } + })); + }); + } + } break; case "主图": ShowImgForm imgFrom = new ShowImgForm(dgvDbProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString()); diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.resx b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.resx index d0651d1..b09767c 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.resx +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.resx @@ -174,6 +174,9 @@ True + + True + True