diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs
index a5a16e4..54c97ba 100644
--- a/AllBase/BaseClass.cs
+++ b/AllBase/BaseClass.cs
@@ -31,7 +31,7 @@ namespace AllBase
///
/// 版本ID
///
- public static int VersionCount = 1263;
+ public static int VersionCount = 1265;
public static string MainPath = "29wx";
//public static string MainPath = "29wx";
//public static string MainPath = "29pdd";
diff --git a/KJDService/KJD_WebService/BLL/BXX/BXXProductManage.cs b/KJDService/KJD_WebService/BLL/BXX/BXXProductManage.cs
index db25511..64f9453 100644
--- a/KJDService/KJD_WebService/BLL/BXX/BXXProductManage.cs
+++ b/KJDService/KJD_WebService/BLL/BXX/BXXProductManage.cs
@@ -1031,6 +1031,29 @@ namespace KJD_Web.BLL.BXX
}
mySql.Close();
}
+ if (prod.product_json.Contains(":null"))
+ {
+ mySql = new MysqlUtils(conn);
+ try
+ {
+ JObject jObj = JsonUtils.JObjectParse(prod.product_json);
+
+ RemoveNullProperties(jObj);
+
+ JsonSerializerSettings jsonIgnoreNullSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
+ var newProdJson = JsonUtils.SerializeObjectToString(jObj, jsonIgnoreNullSetting);
+
+ sql = "update " + tableName + " set product_json=@product_json where spu_id='" + prod.spu_id + "'";
+ paramLst = new List();
+ paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "product_json", Value = newProdJson, });
+ mySql.ExecuteNonQuery(sql, paramLst.ToArray());
+ prod.product_json = newProdJson;
+ }
+ catch
+ {
+ }
+ mySql.Close();
+ }
}
if (!string.IsNullOrEmpty(get_select_count))
{
@@ -1058,6 +1081,93 @@ namespace KJD_Web.BLL.BXX
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
+ ///
+ /// 递归剔除JObject中值为null的字段 (修改为null才删除,empty不删除)
+ ///
+ public static void RemoveNullProperties(JToken token)
+ {
+ if (token.Type == JTokenType.Object)
+ {
+ var jObj = (JObject)token;
+ var propertiesToRemove = jObj.Properties()
+ //.Where(p =>
+ // p.Value == null ||
+ // p.Value.Type == JTokenType.Null ||
+ // (p.Value.Type == JTokenType.String && string.IsNullOrEmpty((string)p.Value)) ||
+ // (p.Value.Type == JTokenType.String && string.IsNullOrWhiteSpace((string)p.Value)) ||
+ // (p.Value.Type == JTokenType.Array && !p.Value.HasValues))
+ .Where(p =>
+ p.Value == null ||
+ p.Value.Type == JTokenType.Null)
+ .ToList();
+
+ foreach (var prop in propertiesToRemove)
+ prop.Remove();
+
+ foreach (var child in jObj.Children())
+ {
+ if (child.Children().Count() > 0)
+ {
+ RemoveNullProperties(child);
+ }
+ }
+ }
+ else if (token.Type == JTokenType.Property)
+ {
+ if (token.Children().Count() > 0)
+ {
+ var childs = token.Children()
+ //.Where(p =>
+ // p == null ||
+ // p.Type == JTokenType.Null ||
+ // (p.Type == JTokenType.String && string.IsNullOrEmpty((string)p)) ||
+ // (p.Type == JTokenType.String && string.IsNullOrWhiteSpace((string)p)) ||
+ // (p.Type == JTokenType.Array && !p.HasValues))
+ .Where(p =>
+ p == null ||
+ p.Type == JTokenType.Null)
+ .ToList();
+
+ foreach (var prop in childs)
+ prop.Remove();
+ foreach (var child in token.Children())
+ {
+ if (child.Children().Count() > 0)
+ {
+ RemoveNullProperties(child);
+ }
+ }
+ }
+ }
+ else if (token.Type == JTokenType.Array)
+ {
+ var jArray = (JArray)token;
+
+ // 清理数组内部的 null / ""
+ for (int i = jArray.Count - 1; i >= 0; i--)
+ {
+ var item = jArray[i];
+ //if (item.Type == JTokenType.Null ||
+ // (item.Type == JTokenType.String && string.IsNullOrWhiteSpace((string)item)))
+ if (item.Type == JTokenType.Null)
+ {
+ jArray.RemoveAt(i);
+ }
+ }
+
+ // 递归数组内对象/子数组
+ foreach (var child in jArray)
+ RemoveNullProperties(child);
+
+ //// 如果数组最后变空,也删除
+ //if (!jArray.HasValues)
+ //{
+ // if (jArray.Parent is JProperty prop)
+ // prop.Remove();
+ //}
+ }
+ }
+
///
/// 回采微信小店属性等商品数据入库
///
@@ -1924,6 +2034,9 @@ namespace KJD_Web.BLL.BXX
add_user_name = "admin";
var no_fission_words = RegexUtils.GetStringQuery(ref inputData, "no_fission_words").ParseToBool(); // 未裂变标题
var fission_words = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "fission_words"))?.Replace("'", "\\'");
+ var min_view_uv = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "min_view_uv"))?.ParseToNullableInt();
+ if (min_view_uv > 0 && min_view_uv < 100)
+ min_view_uv = 100;
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50);
@@ -2062,6 +2175,10 @@ namespace KJD_Web.BLL.BXX
{
where += " and fission_words LIKE '" + fission_words + "%'";
}
+ if (min_view_uv > 0)
+ {
+ where += " and view_uv >= " + min_view_uv + "";
+ }
sql += where;
int count = prod_count;
diff --git a/KJDService/KJD_WebService/Utils/JsonUtils.cs b/KJDService/KJD_WebService/Utils/JsonUtils.cs
index 14b25c4..6907546 100644
--- a/KJDService/KJD_WebService/Utils/JsonUtils.cs
+++ b/KJDService/KJD_WebService/Utils/JsonUtils.cs
@@ -70,12 +70,20 @@ namespace KJD_Web.Utils
}
}
- public static JObject JObjectParse(string json)
+ public static JObject JObjectParse(string json, JsonLoadSettings settings = null)
{
try
{
- JObject obj = JObject.Parse(json);
- return obj;
+ if (settings == null)
+ {
+ JObject obj = JObject.Parse(json);
+ return obj;
+ }
+ else
+ {
+ JObject obj = JObject.Parse(json, settings);
+ return obj;
+ }
}
catch
{
diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs
index f7ad4f6..5cbfa04 100644
--- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs
@@ -139,6 +139,7 @@ namespace TemuKJD.WXForms.ProductForms
this.label37 = new System.Windows.Forms.Label();
this.label15 = new System.Windows.Forms.Label();
this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
+ this.numFilterViewUv = new System.Windows.Forms.NumericUpDown();
this.cmbNotes = new System.Windows.Forms.ComboBox();
this.cmbJstInitSet = new System.Windows.Forms.ComboBox();
this.pbSelectProd = new System.Windows.Forms.PictureBox();
@@ -175,6 +176,7 @@ namespace TemuKJD.WXForms.ProductForms
this.lblWaitToUp = new System.Windows.Forms.Label();
this.chkWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.lblNotes = new System.Windows.Forms.Label();
+ this.chkFilterViewUv = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
this.cmbFilterShopGroup = new TemuKJD.UserComponent.UcComboBoxMutiSelect();
this.label24 = new System.Windows.Forms.Label();
@@ -258,6 +260,7 @@ namespace TemuKJD.WXForms.ProductForms
this.佣金上货.SuspendLayout();
this.裂变调试.SuspendLayout();
this.ucGroupBoxEx4.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.numFilterViewUv)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pbSelectProd)).BeginInit();
this.ucGroupBoxEx1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit();
@@ -1593,6 +1596,7 @@ namespace TemuKJD.WXForms.ProductForms
| System.Windows.Forms.AnchorStyles.Left)));
this.ucGroupBoxEx4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucGroupBoxEx4.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
+ this.ucGroupBoxEx4.Controls.Add(this.numFilterViewUv);
this.ucGroupBoxEx4.Controls.Add(this.cmbNotes);
this.ucGroupBoxEx4.Controls.Add(this.cmbJstInitSet);
this.ucGroupBoxEx4.Controls.Add(this.pbSelectProd);
@@ -1629,6 +1633,7 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx4.Controls.Add(this.lblWaitToUp);
this.ucGroupBoxEx4.Controls.Add(this.chkWXComplateProd);
this.ucGroupBoxEx4.Controls.Add(this.lblNotes);
+ this.ucGroupBoxEx4.Controls.Add(this.chkFilterViewUv);
this.ucGroupBoxEx4.Location = new System.Drawing.Point(186, 2);
this.ucGroupBoxEx4.Name = "ucGroupBoxEx4";
this.ucGroupBoxEx4.Size = new System.Drawing.Size(423, 165);
@@ -1636,12 +1641,34 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx4.TabStop = false;
this.ucGroupBoxEx4.Text = "待传商品";
//
+ // numFilterViewUv
+ //
+ this.numFilterViewUv.Location = new System.Drawing.Point(192, 101);
+ this.numFilterViewUv.Maximum = new decimal(new int[] {
+ 99999999,
+ 0,
+ 0,
+ 0});
+ this.numFilterViewUv.Minimum = new decimal(new int[] {
+ 200,
+ 0,
+ 0,
+ 0});
+ this.numFilterViewUv.Name = "numFilterViewUv";
+ this.numFilterViewUv.Size = new System.Drawing.Size(46, 23);
+ this.numFilterViewUv.TabIndex = 931;
+ this.numFilterViewUv.Value = new decimal(new int[] {
+ 200,
+ 0,
+ 0,
+ 0});
+ //
// cmbNotes
//
this.cmbNotes.FormattingEnabled = true;
- this.cmbNotes.Location = new System.Drawing.Point(322, 46);
+ this.cmbNotes.Location = new System.Drawing.Point(323, 46);
this.cmbNotes.Name = "cmbNotes";
- this.cmbNotes.Size = new System.Drawing.Size(96, 25);
+ this.cmbNotes.Size = new System.Drawing.Size(94, 25);
this.cmbNotes.TabIndex = 823;
this.cmbNotes.Visible = false;
//
@@ -1707,10 +1734,10 @@ namespace TemuKJD.WXForms.ProductForms
this.txtRandomFissionProductCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.txtRandomFissionProductCount.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.txtRandomFissionProductCount.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtRandomFissionProductCount.Location = new System.Drawing.Point(253, 100);
+ this.txtRandomFissionProductCount.Location = new System.Drawing.Point(297, 103);
this.txtRandomFissionProductCount.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtRandomFissionProductCount.Name = "txtRandomFissionProductCount";
- this.txtRandomFissionProductCount.Size = new System.Drawing.Size(32, 25);
+ this.txtRandomFissionProductCount.Size = new System.Drawing.Size(30, 25);
this.txtRandomFissionProductCount.TabIndex = 911;
this.txtRandomFissionProductCount.Text = "100";
this.txtRandomFissionProductCount.Visible = false;
@@ -1733,7 +1760,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnSwitchCatType.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSwitchCatType.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSwitchCatType.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- this.btnSwitchCatType.Location = new System.Drawing.Point(6, 21);
+ this.btnSwitchCatType.Location = new System.Drawing.Point(5, 21);
this.btnSwitchCatType.Name = "btnSwitchCatType";
this.btnSwitchCatType.Size = new System.Drawing.Size(17, 21);
this.btnSwitchCatType.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -1758,9 +1785,9 @@ namespace TemuKJD.WXForms.ProductForms
"",
"爆款数据",
"普通商品"});
- this.cmbHot.Location = new System.Drawing.Point(322, 73);
+ this.cmbHot.Location = new System.Drawing.Point(323, 73);
this.cmbHot.Name = "cmbHot";
- this.cmbHot.Size = new System.Drawing.Size(96, 25);
+ this.cmbHot.Size = new System.Drawing.Size(94, 25);
this.cmbHot.TabIndex = 837;
this.cmbHot.Text = "普通商品";
this.cmbHot.Visible = false;
@@ -1806,10 +1833,10 @@ namespace TemuKJD.WXForms.ProductForms
//
this.txtSearchGoodsName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.txtSearchGoodsName.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtSearchGoodsName.Location = new System.Drawing.Point(189, 46);
+ this.txtSearchGoodsName.Location = new System.Drawing.Point(191, 46);
this.txtSearchGoodsName.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtSearchGoodsName.Name = "txtSearchGoodsName";
- this.txtSearchGoodsName.Size = new System.Drawing.Size(96, 25);
+ this.txtSearchGoodsName.Size = new System.Drawing.Size(94, 25);
this.txtSearchGoodsName.TabIndex = 795;
//
// cmbSourceType
@@ -1826,9 +1853,9 @@ namespace TemuKJD.WXForms.ProductForms
"机会商品",
"以图搜品",
"多多外部数据"});
- this.cmbSourceType.Location = new System.Drawing.Point(56, 73);
+ this.cmbSourceType.Location = new System.Drawing.Point(55, 73);
this.cmbSourceType.Name = "cmbSourceType";
- this.cmbSourceType.Size = new System.Drawing.Size(96, 25);
+ this.cmbSourceType.Size = new System.Drawing.Size(94, 25);
this.cmbSourceType.TabIndex = 673;
this.cmbSourceType.Text = "厂商直采";
this.cmbSourceType.Visible = false;
@@ -1842,9 +1869,9 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCateFilter3.DropDownWidth = 1;
this.cmbCateFilter3.FormattingEnabled = true;
this.cmbCateFilter3.IntegralHeight = false;
- this.cmbCateFilter3.Location = new System.Drawing.Point(322, 19);
+ this.cmbCateFilter3.Location = new System.Drawing.Point(323, 19);
this.cmbCateFilter3.Name = "cmbCateFilter3";
- this.cmbCateFilter3.Size = new System.Drawing.Size(96, 25);
+ this.cmbCateFilter3.Size = new System.Drawing.Size(94, 25);
this.cmbCateFilter3.TabIndex = 710;
this.cmbCateFilter3.Text = "全部";
this.cmbCateFilter3.SelectedIndexChanged += new System.EventHandler(this.cmbCateFilter3_SelectedIndexChanged);
@@ -1853,7 +1880,7 @@ namespace TemuKJD.WXForms.ProductForms
// label21
//
this.label21.AutoSize = true;
- this.label21.Location = new System.Drawing.Point(286, 23);
+ this.label21.Location = new System.Drawing.Point(288, 23);
this.label21.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label21.Name = "label21";
this.label21.Size = new System.Drawing.Size(39, 17);
@@ -1863,9 +1890,9 @@ namespace TemuKJD.WXForms.ProductForms
// cmbGroupFilter
//
this.cmbGroupFilter.FormattingEnabled = true;
- this.cmbGroupFilter.Location = new System.Drawing.Point(189, 73);
+ this.cmbGroupFilter.Location = new System.Drawing.Point(191, 73);
this.cmbGroupFilter.Name = "cmbGroupFilter";
- this.cmbGroupFilter.Size = new System.Drawing.Size(96, 25);
+ this.cmbGroupFilter.Size = new System.Drawing.Size(94, 25);
this.cmbGroupFilter.TabIndex = 641;
this.cmbGroupFilter.Visible = false;
this.cmbGroupFilter.SelectedIndexChanged += new System.EventHandler(this.cmbGroupFilter_SelectedIndexChanged);
@@ -1874,10 +1901,10 @@ namespace TemuKJD.WXForms.ProductForms
//
this.txtIdFilter.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.txtIdFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
- this.txtIdFilter.Location = new System.Drawing.Point(56, 100);
+ this.txtIdFilter.Location = new System.Drawing.Point(55, 100);
this.txtIdFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtIdFilter.Name = "txtIdFilter";
- this.txtIdFilter.Size = new System.Drawing.Size(96, 25);
+ this.txtIdFilter.Size = new System.Drawing.Size(94, 25);
this.txtIdFilter.TabIndex = 652;
this.txtIdFilter.Visible = false;
//
@@ -1888,9 +1915,9 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCateFilter2.DropDownWidth = 1;
this.cmbCateFilter2.FormattingEnabled = true;
this.cmbCateFilter2.IntegralHeight = false;
- this.cmbCateFilter2.Location = new System.Drawing.Point(189, 19);
+ this.cmbCateFilter2.Location = new System.Drawing.Point(191, 19);
this.cmbCateFilter2.Name = "cmbCateFilter2";
- this.cmbCateFilter2.Size = new System.Drawing.Size(96, 25);
+ this.cmbCateFilter2.Size = new System.Drawing.Size(94, 25);
this.cmbCateFilter2.TabIndex = 708;
this.cmbCateFilter2.Text = "全部";
this.cmbCateFilter2.SelectedIndexChanged += new System.EventHandler(this.cmbCateFilter2_SelectedIndexChanged);
@@ -1902,7 +1929,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnClearFilter.CanvasColor = System.Drawing.SystemColors.Control;
this.btnClearFilter.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnClearFilter.DisabledBackColor = System.Drawing.Color.Empty;
- this.btnClearFilter.Location = new System.Drawing.Point(387, 100);
+ this.btnClearFilter.Location = new System.Drawing.Point(387, 103);
this.btnClearFilter.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
this.btnClearFilter.Name = "btnClearFilter";
this.btnClearFilter.Size = new System.Drawing.Size(31, 25);
@@ -1929,9 +1956,9 @@ namespace TemuKJD.WXForms.ProductForms
"安全+未校验",
"安全商品",
"未校验"});
- this.cmbWxSafe.Location = new System.Drawing.Point(56, 46);
+ this.cmbWxSafe.Location = new System.Drawing.Point(55, 46);
this.cmbWxSafe.Name = "cmbWxSafe";
- this.cmbWxSafe.Size = new System.Drawing.Size(96, 25);
+ this.cmbWxSafe.Size = new System.Drawing.Size(94, 25);
this.cmbWxSafe.TabIndex = 675;
this.cmbWxSafe.Text = "安全+未校验";
//
@@ -1968,9 +1995,9 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCateFilter1.DropDownWidth = 1;
this.cmbCateFilter1.FormattingEnabled = true;
this.cmbCateFilter1.IntegralHeight = false;
- this.cmbCateFilter1.Location = new System.Drawing.Point(56, 19);
+ this.cmbCateFilter1.Location = new System.Drawing.Point(55, 19);
this.cmbCateFilter1.Name = "cmbCateFilter1";
- this.cmbCateFilter1.Size = new System.Drawing.Size(96, 25);
+ this.cmbCateFilter1.Size = new System.Drawing.Size(94, 25);
this.cmbCateFilter1.TabIndex = 663;
this.cmbCateFilter1.Text = "全部";
this.cmbCateFilter1.SelectedIndexChanged += new System.EventHandler(this.cmbCateFilter1_SelectedIndexChanged);
@@ -1979,7 +2006,7 @@ namespace TemuKJD.WXForms.ProductForms
// label2
//
this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(21, 23);
+ this.label2.Location = new System.Drawing.Point(20, 23);
this.label2.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(39, 17);
@@ -2013,7 +2040,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblSourceType
//
this.lblSourceType.AutoSize = true;
- this.lblSourceType.Location = new System.Drawing.Point(28, 77);
+ this.lblSourceType.Location = new System.Drawing.Point(27, 77);
this.lblSourceType.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblSourceType.Name = "lblSourceType";
this.lblSourceType.Size = new System.Drawing.Size(32, 17);
@@ -2024,7 +2051,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblGroupFilter
//
this.lblGroupFilter.AutoSize = true;
- this.lblGroupFilter.Location = new System.Drawing.Point(160, 77);
+ this.lblGroupFilter.Location = new System.Drawing.Point(162, 77);
this.lblGroupFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblGroupFilter.Name = "lblGroupFilter";
this.lblGroupFilter.Size = new System.Drawing.Size(32, 17);
@@ -2035,7 +2062,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblWxSafe
//
this.lblWxSafe.AutoSize = true;
- this.lblWxSafe.Location = new System.Drawing.Point(4, 49);
+ this.lblWxSafe.Location = new System.Drawing.Point(3, 49);
this.lblWxSafe.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblWxSafe.Name = "lblWxSafe";
this.lblWxSafe.Size = new System.Drawing.Size(56, 17);
@@ -2045,7 +2072,7 @@ namespace TemuKJD.WXForms.ProductForms
// label20
//
this.label20.AutoSize = true;
- this.label20.Location = new System.Drawing.Point(160, 50);
+ this.label20.Location = new System.Drawing.Point(162, 50);
this.label20.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label20.Name = "label20";
this.label20.Size = new System.Drawing.Size(32, 17);
@@ -2054,7 +2081,7 @@ namespace TemuKJD.WXForms.ProductForms
//
// lblIdFilter
//
- this.lblIdFilter.Location = new System.Drawing.Point(28, 104);
+ this.lblIdFilter.Location = new System.Drawing.Point(27, 104);
this.lblIdFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblIdFilter.Name = "lblIdFilter";
this.lblIdFilter.Size = new System.Drawing.Size(32, 17);
@@ -2066,7 +2093,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblHot
//
this.lblHot.AutoSize = true;
- this.lblHot.Location = new System.Drawing.Point(293, 77);
+ this.lblHot.Location = new System.Drawing.Point(295, 77);
this.lblHot.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblHot.Name = "lblHot";
this.lblHot.Size = new System.Drawing.Size(32, 17);
@@ -2077,7 +2104,7 @@ namespace TemuKJD.WXForms.ProductForms
// label19
//
this.label19.AutoSize = true;
- this.label19.Location = new System.Drawing.Point(153, 23);
+ this.label19.Location = new System.Drawing.Point(155, 23);
this.label19.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label19.Name = "label19";
this.label19.Size = new System.Drawing.Size(39, 17);
@@ -2086,11 +2113,12 @@ namespace TemuKJD.WXForms.ProductForms
//
// chkRandomFissionProduct
//
- this.chkRandomFissionProduct.Location = new System.Drawing.Point(163, 102);
+ this.chkRandomFissionProduct.AutoSize = true;
+ this.chkRandomFissionProduct.Location = new System.Drawing.Point(242, 96);
this.chkRandomFissionProduct.Name = "chkRandomFissionProduct";
- this.chkRandomFissionProduct.Size = new System.Drawing.Size(96, 21);
+ this.chkRandomFissionProduct.Size = new System.Drawing.Size(63, 38);
this.chkRandomFissionProduct.TabIndex = 910;
- this.chkRandomFissionProduct.Text = "裂变标题数量";
+ this.chkRandomFissionProduct.Text = "裂变标\r\n题数量";
this.chkRandomFissionProduct.UseVisualStyleBackColor = true;
this.chkRandomFissionProduct.Visible = false;
//
@@ -2112,18 +2140,18 @@ namespace TemuKJD.WXForms.ProductForms
// chkWXComplateProd
//
this.chkWXComplateProd.AutoSize = true;
- this.chkWXComplateProd.Location = new System.Drawing.Point(296, 102);
+ this.chkWXComplateProd.Location = new System.Drawing.Point(331, 96);
this.chkWXComplateProd.Name = "chkWXComplateProd";
- this.chkWXComplateProd.Size = new System.Drawing.Size(99, 21);
+ this.chkWXComplateProd.Size = new System.Drawing.Size(63, 38);
this.chkWXComplateProd.TabIndex = 807;
- this.chkWXComplateProd.Text = "微信回采商品";
+ this.chkWXComplateProd.Text = "微信回\r\n采商品";
this.chkWXComplateProd.UseVisualStyleBackColor = true;
this.chkWXComplateProd.Visible = false;
//
// lblNotes
//
this.lblNotes.AutoSize = true;
- this.lblNotes.Location = new System.Drawing.Point(293, 50);
+ this.lblNotes.Location = new System.Drawing.Point(295, 50);
this.lblNotes.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblNotes.Name = "lblNotes";
this.lblNotes.Size = new System.Drawing.Size(32, 17);
@@ -2131,6 +2159,17 @@ namespace TemuKJD.WXForms.ProductForms
this.lblNotes.Text = "备注";
this.lblNotes.Visible = false;
//
+ // chkFilterViewUv
+ //
+ this.chkFilterViewUv.AutoSize = true;
+ this.chkFilterViewUv.Location = new System.Drawing.Point(150, 102);
+ this.chkFilterViewUv.Name = "chkFilterViewUv";
+ this.chkFilterViewUv.Size = new System.Drawing.Size(51, 21);
+ this.chkFilterViewUv.TabIndex = 911;
+ this.chkFilterViewUv.Text = "曝光";
+ this.chkFilterViewUv.UseVisualStyleBackColor = true;
+ this.chkFilterViewUv.Visible = false;
+ //
// ucGroupBoxEx1
//
this.ucGroupBoxEx1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
@@ -3143,6 +3182,7 @@ namespace TemuKJD.WXForms.ProductForms
this.裂变调试.PerformLayout();
this.ucGroupBoxEx4.ResumeLayout(false);
this.ucGroupBoxEx4.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.numFilterViewUv)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pbSelectProd)).EndInit();
this.ucGroupBoxEx1.ResumeLayout(false);
this.ucGroupBoxEx1.PerformLayout();
@@ -3375,5 +3415,7 @@ namespace TemuKJD.WXForms.ProductForms
private System.Windows.Forms.ComboBox cmbNotes;
private System.Windows.Forms.Label lblNotes;
private UserComponent.UcCheckBox chkIsSubmitSuccess;
+ private System.Windows.Forms.NumericUpDown numFilterViewUv;
+ private UserComponent.UcCheckBox chkFilterViewUv;
}
}
\ No newline at end of file
diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs
index 1b4358f..172a044 100644
--- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs
+++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs
@@ -352,6 +352,8 @@ namespace TemuKJD.WXForms.ProductForms
{
lblHot.Visible = true;
cmbHot.Visible = true;
+ chkFilterViewUv.Visible = true;
+ numFilterViewUv.Visible = true;
if (!string.IsNullOrWhiteSpace(cmbSourceType.Text))
{
//lblGroupFilter.Visible = true;
@@ -412,8 +414,8 @@ namespace TemuKJD.WXForms.ProductForms
List ctrlLst = new List()
{
- lblSourceType, cmbSourceType, lblGroupFilter, cmbGroupFilter, lblHot, cmbHot, lblIdFilter, txtIdFilter,
- chkRandomFissionProduct, txtRandomFissionProductCount/*, lblNotes, cmbNotes*//*, lblJstInitSet, cmbJstInitSet*/
+ lblSourceType, cmbSourceType, lblGroupFilter, cmbGroupFilter, lblHot, cmbHot, lblIdFilter, txtIdFilter,
+ chkFilterViewUv, numFilterViewUv /*chkRandomFissionProduct, txtRandomFissionProductCount, lblNotes, cmbNotes*//*, lblJstInitSet, cmbJstInitSet*/
};
for (int i = 0; i < ctrlLst.Count - 2; i += 2)
{
@@ -6050,10 +6052,12 @@ namespace TemuKJD.WXForms.ProductForms
if (chkWXComplateProd.Checked)
data += "&has_wx_format=1";
+ // 标题裂变
if (chkRandomFissionProduct.Checked)
- {
data += "&fission_words=fission_goods_names:";
- }
+
+ if (chkFilterViewUv.Checked)
+ data += "&min_view_uv=" + numFilterViewUv.Value;
}));
var html = GetHtml.PostUtf8(url, data);
//if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
@@ -6305,6 +6309,8 @@ namespace TemuKJD.WXForms.ProductForms
cmbHot.Text = "普通商品";
chkSkipQualification.Checked = false;
cmbHot_TextChanged(null, null);
+ chkFilterViewUv.Checked = false;
+ numFilterViewUv.Value = 200;
int prodCount;
pbSelectProd.Visible = true;