From aab73b978f7738c2301cbbd269c00cb7fd958694 Mon Sep 17 00:00:00 2001 From: wule Date: Wed, 27 May 2026 22:01:04 +0800 Subject: [PATCH] =?UTF-8?q?1688=E4=B8=8A=E4=BC=A0=E7=B1=BB=E7=9B=AE?= =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E7=AD=89=E4=BC=98=E5=8C=96=20=E5=85=85?= =?UTF-8?q?=E5=80=BC=E7=94=A8=E6=88=B7=E6=9C=8D=E5=8A=A1=E5=85=85=E5=80=BC?= =?UTF-8?q?=E5=92=8C=E7=94=A8=E6=88=B7=E7=BB=AD=E8=B4=B9=E5=BA=97=E9=93=BA?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AllBase/AllBase.csproj | 1 + AllBase/BaseClass.cs | 3 +- .../Model/Result/1688/_1688OutProductInfo.cs | 88 ++ AllBase/Model/Result/ShopLoginInfo.cs | 13 +- .../WXResult/WxOnlineWaybillDeliveryInfo.cs | 2 +- .../BLL/WXXD/WXProductManage.cs | 118 ++ .../KJD_WebService/BLL/WXXD/WXShopManage.cs | 105 +- .../KJD_WebService/BLL/WXXD/WXUserManage.cs | 257 +++- .../Model/ShopModel/ShopParam.cs | 4 +- .../KJD_WebService/WXProductService.asmx.cs | 22 + .../KJD_WebService/WXUserService.asmx.cs | 12 + TEMUKJD/BLL/PDDProdFormConverter.cs | 387 +++++- TEMUKJD/BLL/ShopBLL.cs | 8 +- .../KJDForms/AdminForms/AdminShopLoginForm.cs | 3 - TEMUKJD/KJDForms/ShopForms/ShopListForm.cs | 6 - TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs | 4 - TEMUKJD/MainForm.cs | 13 + TEMUKJD/MainForm.designer.cs | 39 +- .../AdminForms/PDDAdminShopLoginForm.cs | 1 - .../ProductSelectForms/PDDDBProdEditForm.cs | 10 + .../PDDDBProdListForm.Designer.cs | 1 + .../ProductSelectForms/PDDDBProdListForm.cs | 13 +- TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs | 5 - .../PDDForms/ShopForms/PDDShopLoginForm.cs | 2 - TEMUKJD/StartUp.cs | 14 - .../ToolForms/Get1688ProductForm.Designer.cs | 250 +++- TEMUKJD/ToolForms/Get1688ProductForm.cs | 555 +++++--- TEMUKJD/ToolForms/Get1688ProductForm.resx | 39 + .../AdminForms/WXAdminAccountForm.Designer.cs | 249 +++- .../WXForms/AdminForms/WXAdminAccountForm.cs | 48 +- .../AdminForms/WXAdminAccountForm.resx | 3 + TEMUKJD/WXForms/AdminForms/WXAdminForm.cs | 1 + .../AdminForms/WXAdminShopLoginForm.cs | 1 - .../WXSaleAssistantForm.Designer.cs | 958 +++++++------- .../WXForms/AdminForms/WXSaleAssistantForm.cs | 180 ++- .../AdminForms/WXSaleAssistantForm.resx | 178 +++ .../OrderForms/WXOrderListForm.Designer.cs | 283 ++-- TEMUKJD/WXForms/OrderForms/WXOrderListForm.cs | 371 ++++-- .../ActivityForms/WXActivity618Form.cs | 2 +- .../WXDBProdUploadForm.Designer.cs | 1163 ++++++++++------- .../ProductForms/WXDBProdUploadForm.cs | 185 ++- .../ProductForms/WXFinderSquareForm.cs | 9 +- .../ProductForms/WXOrderConsignmentForm.cs | 2 +- .../ProductForms/WXProdClearNoVisitForm.cs | 2 +- .../ProductForms/WXProdCouponOrderBoomForm.cs | 2 +- .../WXForms/ProductForms/WXProdPreSaleForm.cs | 2 +- .../WXForms/ProductForms/WXProdSyncForm.cs | 2 +- .../WXUserProdListForm.Designer.cs | 67 +- .../ShopForms/WXShopDefaultAddressListForm.cs | 2 +- .../ShopForms/WXShopListForm.Designer.cs | 289 +++- TEMUKJD/WXForms/ShopForms/WXShopListForm.cs | 149 ++- TEMUKJD/WXForms/ShopForms/WXShopListForm.resx | 3 + TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs | 3 +- .../WXForms/ShopForms/WXShopOptimizeForm.cs | 2 +- .../TalkForms/PDDBuyerOrderListForm.cs | 147 ++- Work/UserLogin.cs | 2 + 56 files changed, 4532 insertions(+), 1748 deletions(-) create mode 100644 AllBase/Model/Result/1688/_1688OutProductInfo.cs diff --git a/AllBase/AllBase.csproj b/AllBase/AllBase.csproj index d55ff51..b2764c0 100644 --- a/AllBase/AllBase.csproj +++ b/AllBase/AllBase.csproj @@ -210,6 +210,7 @@ + diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index e7c2ca9..9c8377e 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -27,7 +27,7 @@ namespace AllBase /// /// 版本ID /// - public static int VersionCount = 1103; + public static int VersionCount = 1113; //public static int VersionCount = 613; /// @@ -314,6 +314,7 @@ namespace AllBase public static int SaLevel = 0; public static string UserAuthority = ""; public static string ParentAuthority = ""; + public static int Points = 0; public static decimal? AuthorizedAmount = null; /// /// 注册昵称 diff --git a/AllBase/Model/Result/1688/_1688OutProductInfo.cs b/AllBase/Model/Result/1688/_1688OutProductInfo.cs new file mode 100644 index 0000000..cc60f8e --- /dev/null +++ b/AllBase/Model/Result/1688/_1688OutProductInfo.cs @@ -0,0 +1,88 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace AllBase.Model.Result._1688 +{ + public class _1688OutProductInfo + { + public string allItemCount { get; set; } // "", + public List<_1688AttributeInfo> attribute { get; set; } + public string categoryId { get; set; } // "1042687" + public string categoryName { get; set; } // "儿童读物" + public string categoryPath { get; set; } // "" + public _1688DeliveryInfo deliveryInfo { get; set; } + public string desc { get; set; } // "
", + public string freeShipping { get; set; } // "" + public List itemImgs { get; set; } // [ "https://cbu01.alicdn.com/img/ibank/O1CN01JiAErc2EsSSiuKULI_!!2212923598800-0-cib.jpg", "https://cbu01.alicdn.com/img/ibank/O1CN01unRjms2EsSShZZiC5_!!2212923598800-0-cib.jpg", ... ], + public string limitCount { get; set; } // "", + public string minOrderQuaitity { get; set; } // "1", + public string newItemCount { get; set; } // "", + public string nick { get; set; } // "悦慧轩图书", + public string num { get; set; } // "", + public string priceHigh { get; set; } // "3.30", + public string priceLow { get; set; } // "1.50", + public string priceRange { get; set; } // "1.50-3.30", + public string productId { get; set; } // "966477656178", + public string productName { get; set; } // "全横式田字格口算题卡天天练书籍幼小衔接数学10以内加减法练习册", + public string productPicUrl { get; set; } // "https://cbu01.alicdn.com/img/ibank/O1CN01JiAErc2EsSSiuKULI_!!2212923598800-0-cib.jpg", + public string productUrl { get; set; } // "https://detail.1688.com/offer/966477656178.html", + public List<_1688PropsName> propsName { get; set; } + public string provinceCity { get; set; } // "安徽省合肥市", + public string sellerType { get; set; } // "1688", + public string shopId { get; set; } // "", + public string shopName { get; set; } // "安徽省悦慧轩文化科技有限公司", + public List<_1688Sku> skus { get; set; } + public Dictionary>> specs { get; set; } // "颜色": { "3216:7088218": ["10以内数的分解与组成", "https://cbu01.alicdn.com/img/ibank/O1CN01UrBXvP2EsSSiuZ3ay_!!2212923598800-0-cib.jpg"], ... } + public int? sysId { get; set; } // 0, + public string totalCount { get; set; } // "", + public string userId { get; set; } // "2212923598800", + public string videoUrl { get; set; } // "" + + } + + public class _1688Sku + { + public int? quantity { get; set; } // 9984, + public int? price { get; set; } // 150, + public int? orign_price { get; set; } // 150, + public long? skuId { get; set; } // 6074721995513, + public string id { get; set; } // "3216:7088218;450:6532962" + + } + + public class _1688PropsName + { + public string pname { get; set; } // "颜色", + public string pid { get; set; } // "3216", + public List<_1688PropsNameValue> values { get; set; } + } + + public class _1688PropsNameValue + { + public string vname { get; set; } // "10以内数的分解与组成", + public string vid { get; set; } // "7088218", + public string sku_url { get; set; } // "https://cbu01.alicdn.com/img/ibank/O1CN01UrBXvP2EsSSiuZ3ay_!!2212923598800-0-cib.jpg" + + } + + public class _1688DeliveryInfo + { + public string location { get; set; } // "安徽省合肥市" + public List<_1688Carriage> carriageList { get; set; } // [ { "name": "默认", "price": 2.5 } ] + } + + public class _1688Carriage + { + public string name { get; set; } // "默认", + public decimal price { get; set; } // 2.5 + } + + public class _1688AttributeInfo + { + public string key { get; set; } // "品牌", "出版社", "适合阅读年龄", "开本", "正文语种", "书号", "颜色" + public string value { get; set; } // "刊天下", "黑龙江美术出版社", "适合4-8岁", "16", "中文", "9787559389725", "10以内数的分解与组成,10以内数的加减法..." + } +} diff --git a/AllBase/Model/Result/ShopLoginInfo.cs b/AllBase/Model/Result/ShopLoginInfo.cs index f667b4a..1c34a38 100644 --- a/AllBase/Model/Result/ShopLoginInfo.cs +++ b/AllBase/Model/Result/ShopLoginInfo.cs @@ -205,12 +205,13 @@ namespace AllBase.Model.Result ///
public int? expire_time { get; set; } - public bool is_shop_expire + public bool is_point_shop_expire { - get - { - return BaseClass.UserAuthority.Contains("积分用户") && BaseClass.DateTimeToTimestampSeconds(DateTime.Now) > expire_time.ParseToInt(); - } + //get + //{ + // return BaseClass.UserAuthority.Contains("充值用户") && BaseClass.DateTimeToTimestampSeconds(DateTime.Now) > expire_time.ParseToInt(); + //} + get; set; } public string CurrentProdId { get; set; } @@ -280,7 +281,7 @@ namespace AllBase.Model.Result ///
public decimal? authorized_amount { get; set; } /// - /// 店铺积分 + /// 用户积分 /// public int points { get; set; } } diff --git a/AllBase/Model/Result/WXResult/WxOnlineWaybillDeliveryInfo.cs b/AllBase/Model/Result/WXResult/WxOnlineWaybillDeliveryInfo.cs index 5dfd919..e03a695 100644 --- a/AllBase/Model/Result/WXResult/WxOnlineWaybillDeliveryInfo.cs +++ b/AllBase/Model/Result/WXResult/WxOnlineWaybillDeliveryInfo.cs @@ -20,7 +20,7 @@ namespace AllBase.Model.Result.WXResult public string deliveryErrorMsg { get; set; } // "success", public string totalFee { get; set; } // "400", public feeDetailInfo feeDetail { get; set; } - public int? predictedArrivedTime { get; set; } // 0, + public long? predictedArrivedTime { get; set; } // 0, public string uuid { get; set; } // "4da17f94-b935-4022-a531-3b431279273f", public string deliveryId { get; set; } // "JTSD", public int? orderType { get; set; } // 1, diff --git a/KJDService/KJD_WebService/BLL/WXXD/WXProductManage.cs b/KJDService/KJD_WebService/BLL/WXXD/WXProductManage.cs index 6afa0bc..e982156 100644 --- a/KJDService/KJD_WebService/BLL/WXXD/WXProductManage.cs +++ b/KJDService/KJD_WebService/BLL/WXXD/WXProductManage.cs @@ -4,7 +4,9 @@ using KJD_Web.Utils; using MySql.Data.MySqlClient; using Mysqlx.Crud; using NaiBa.Util.Extension; +using NaiBa.Util.Helper; using Newtonsoft.Json; +using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; @@ -1193,6 +1195,122 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":19999,\"msg\":\"输入为空\"}"; } + public string WXAddMdyCommissionRate(string inputData) + { + if (!string.IsNullOrEmpty(inputData)) + { + if (!WXUserManage.GetSign(inputData)) + return "{\"code\":999,\"msg\":\"校验失败\"}"; + + //int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt(); + //int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50); + string spu_id = RegexUtils.GetStringQuery(ref inputData, "spu_id")?.Replace("'", "\\'"); + string product_name = RegexUtils.GetStringQuery(ref inputData, "product_name")?.Replace("'", "\\'"); + int? commission_rate = RegexUtils.GetStringQuery(ref inputData, "commission_rate").ParseToNullableInt(); + if (string.IsNullOrEmpty("spu_id")) + return "{\"code\":50001,\"msg\":\"没有商品Id\"}"; + if (string.IsNullOrEmpty("product_name")) + return "{\"code\":50001,\"msg\":\"没有商品名称\"}"; + + string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + MysqlUtils mySql = new MysqlUtils(conn); + + string sql = "SELECT * FROM `bxx`.`product_wx_commission_rate` where spu_id='" + spu_id + "'"; + + string where = ""; + sql += where; + + var dt = mySql.ExecuteDataTable(sql); + mySql.Close(); + + if (dt != null) + { + conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + mySql = new MysqlUtils(conn); + if (dt.Rows.Count == 0) + { + sql = "INSERT INTO `bxx`.`product_wx_commission_rate` (spu_id,product_name,commission_rate) VALUES (@spu_id,@product_name,@commission_rate);"; + } + else + { + sql = "UPDATE `bxx`.`product_wx_commission_rate` SET product_name=@product_name,commission_rate=@commission_rate WHERE spu_id=@spu_id;"; + } + + List paramLst = new List(); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "spu_id", Value = spu_id, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "product_name", Value = product_name, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "commission_rate", Value = commission_rate, }); + mySql.ExecuteNonQuery(sql, paramLst.ToArray()); + mySql.Close(); + if (string.IsNullOrEmpty(mySql.Message)) + { + return "{\"code\":200,\"msg\":\"success\",\"data\":\"\"}"; + } + else + { + return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":\"\"}"; + } + } + else + { + return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":\"\"}"; + } + } + return "{\"code\":19999,\"msg\":\"输入为空\"}"; + } + + public string WXGetCommissionRate(string inputData) + { + if (!string.IsNullOrEmpty(inputData)) + { + if (!WXUserManage.GetSign(inputData)) + return "{\"code\":999,\"msg\":\"校验失败\"}"; + + //int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt(); + //int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50); + string spu_ids = RegexUtils.GetStringQuery(ref inputData, "spu_ids")?.Replace("'", "\\'"); + + string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + MysqlUtils mySql = new MysqlUtils(conn); + + string sql = "SELECT * FROM `bxx`.`product_wx_commission_rate` where spu_id in ('" + spu_ids.Replace(",", "','") + "')"; + + string where = ""; + sql += where; + + var dt = mySql.ExecuteDataTable(sql); + mySql.Close(); + + if (dt != null) + { + JArray jArr = new JArray(); + try + { + foreach (DataRow row in dt.Rows) + { + JObject jObj = new JObject(); + jObj["id"] = row["id"].ToString(); + jObj["product_name"] = row["product_name"].ToString(); + jObj["commission_rate"] = row["commission_rate"].ParseToNullableInt(); + jObj["add_time"] = Convert.ToDateTime(row["add_time"]); + jObj["mdy_time"] = Convert.ToDateTime(row["mdy_time"]); + jArr.Add(jObj); + } + return "{\"code\":200,\"msg\":\"success\",\"data\":" + JsonUtils.SerializeObject(jArr) + "}"; + } + catch (Exception ex) + { + return "{\"code\":50002,\"msg\":\"" + ex.Message + "\",\"data\":[]}"; + } + } + else + { + return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":[]}"; + } + } + return "{\"code\":19999,\"msg\":\"输入为空\"}"; + } + public string E57GetFreightTemplate(string inputData) { diff --git a/KJDService/KJD_WebService/BLL/WXXD/WXShopManage.cs b/KJDService/KJD_WebService/BLL/WXXD/WXShopManage.cs index 8b0460f..89c4bc9 100644 --- a/KJDService/KJD_WebService/BLL/WXXD/WXShopManage.cs +++ b/KJDService/KJD_WebService/BLL/WXXD/WXShopManage.cs @@ -5,6 +5,7 @@ using KJD_Web.Utils; using MySql.Data.MySqlClient; using MySqlX.XDevAPI; using NaiBa.Util.Extension; +using NaiBa.Util.Helper; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; @@ -12,10 +13,12 @@ using System.Collections.Generic; using System.Data; using System.Drawing; using System.Linq; +using System.Reflection; using System.Security.Cryptography; using System.Web; using System.Web.Security; using System.Web.UI.HtmlControls; +using System.Web.UI.WebControls; namespace KJD_Web.BLL.WXXD { @@ -35,6 +38,8 @@ namespace KJD_Web.BLL.WXXD var search_name = RegexUtils.GetStringQuery(ref inputData, "search_name"); var operate_sub_sa_name = RegexUtils.GetStringQuery(ref inputData, "operate_sub_sa_name")?.Replace("'", "\\'"); var shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", ""); + var is_show_expire = RegexUtils.GetStringQuery(ref inputData, "is_show_expire")?.ParseToBool(); + if (!string.IsNullOrWhiteSpace(shop_ids)) { List shopIdLst = shop_ids.Split(',').ToList(); @@ -58,13 +63,32 @@ namespace KJD_Web.BLL.WXXD if (page_size == 0) page_size = 50; - int r2 = 0; - int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2); string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; MysqlUtils mySql = new MysqlUtils(conn); + string sql; + bool isPayUser = false; + if (!isAdmin) + { + sql = "select u.authority,uu.authority as main_authority " + + "FROM wxxd.user u LEFT JOIN wxxd.user uu ON uu.user_name=u.parent_user_name where u.user_name='" + + user_name + "'"; - string sql = "SELECT COUNT(s.id) FROM wxxd.shop s WHERE 1=1"; + var dtRow = mySql.ExecuteDataTableRow(sql); + if (!string.IsNullOrEmpty(mySql.Message)) + { + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\",\"data\":null}"; + } + if (dtRow == null) + { + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\",\"data\":null}"; + } + isPayUser = dtRow["authority"].ToString().Contains("充值用户") || dtRow["main_authority"].ToString().Contains("充值用户"); + } + + sql = "SELECT COUNT(*) FROM wxxd.shop s WHERE 1=1"; //where子句 string where = ""; @@ -101,7 +125,8 @@ namespace KJD_Web.BLL.WXXD } else { - sql = "SELECT s.*,se.expire_time‌ FROM wxxd.shop s" + + sql = " SELECT s.*,se.expire_time‌ " + + " FROM wxxd.shop s" + " LEFT JOIN wxxd.user_points_shop_expire se ON s.shop_id=se.shop_id" + " WHERE 1=1"; sql += where; // where 子句 @@ -112,9 +137,14 @@ namespace KJD_Web.BLL.WXXD } mySql.Close(); + if (!string.IsNullOrEmpty(mySql.Message)) + { + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\",\"data\":null}"; + } if (dt != null) { - List shopList=new List(); + List shopList = new List(); + List allShopList = new List(); foreach (DataRow row in dt.Rows) { ShopParam shop = new ShopParam @@ -139,63 +169,24 @@ namespace KJD_Web.BLL.WXXD openid = row["openid"].ParseToString(), group_name = row["group_name"].ParseToString(), add_time = row["add_time"].IsNullOrEmpty() ? DateTime.MinValue : Convert.ToDateTime(row["add_time"]), - expire_time = row["expire_time"].IsNullOrEmpty() ? null : (int?)row["expire_time"].ParseToInt(), + //mdy_time = row["mdy_time"].IsNullOrEmpty() ? DateTime.MinValue : Convert.ToDateTime(row["mdy_time"]), + expire_time = row["expire_time"].ParseToInt(), }; + if (shop.shop_id == "wx2543ce37a0009883") + { + var exp = row["expire_time"].ParseToString(); + } + var expire_datetime = TimeUtils.StampToDateTime(shop.expire_time.Value); + if (isPayUser && expire_datetime < DateTime.Now) + shop.is_point_shop_expire = true; + shopList.Add(shop); } - - //sql = "\r\nINSERT INTO wxxd.shop_add_prod_count(shop_id,shop_account,add_product_remaining,add_product_month) VALUES "; - //foreach (var shop in shopList) - //{ - // sql += "\r\n('" + shop.shop_id + "','" + shop.shop_account + "'," + shop.add_product_remaining + "," + shop.add_product_month + "),"; - //} - //sql = sql.TrimEnd(',') + " \r\n"; - //sql += "ON DUPLICATE KEY UPDATE " + - // "shop_account=VALUES(shop_account)," + - // "add_product_remaining=VALUES(add_product_remaining)," + - // "add_product_month=VALUES(add_product_month);"; - //var result = mySql.ExecuteNonQuery(sql); - //mySql.Close(); - - //int month = DateTime.Now.Month; - //var shopMonthList = shopList.Where(s => s.add_product_month != month); - //if (shopMonthList.Count() > 0) - //{ - // int remainCount = 300; - // var shopMonthIdList = shopMonthList.Select(s => s.id); - // mySql = new MysqlUtils(conn); - // string ids = string.Join(",", shopMonthIdList); - // sql = ""; - // sql += "update wxxd.shop set add_product_remaining=" + remainCount + ", add_product_month=" + month + - // " where 1=1 and id in (" + ids + ");"; - - // sql += "\r\nINSERT INTO wxxd.shop_add_prod_count(shop_id,shop_account,add_product_remaining,add_product_month) VALUES "; - // foreach (var shop in shopMonthList) - // { - // sql+= "\r\n('" + shop.shop_id + "','" + shop.shop_account + "'," + remainCount + "," + month + "),"; - // } - // sql = sql.TrimEnd(',') + " \r\n"; - // sql += "ON DUPLICATE KEY UPDATE " + - // "shop_account=VALUES(shop_account)," + - // "add_product_remaining=VALUES(add_product_remaining)," + - // "add_product_month=VALUES(add_product_month);"; - // var rst = mySql.ExecuteNonQuery(sql); - // mySql.Close(); - - // if (rst) - // { - // foreach (var shop in shopMonthList) - // { - // shop.add_product_month = month; - // shop.add_product_remaining = remainCount; - // } - // } - //} - var data = JsonUtils.SerializeObjectToString(shopList); + var valid_data = JsonUtils.SerializeObjectToString(shopList); + var all_data = JsonUtils.SerializeObjectToString(allShopList); var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000"); - //return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"c\":\"" + EncrypUtil.Encryption(r2) + "\"}"; - return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}"; + return "{\"code\":200,\"msg\":\"success\",\"data\":" + valid_data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}"; } } return "{\"code\":19999,\"msg\":\"未知错误\"}"; diff --git a/KJDService/KJD_WebService/BLL/WXXD/WXUserManage.cs b/KJDService/KJD_WebService/BLL/WXXD/WXUserManage.cs index 00e5eff..a8b008c 100644 --- a/KJDService/KJD_WebService/BLL/WXXD/WXUserManage.cs +++ b/KJDService/KJD_WebService/BLL/WXXD/WXUserManage.cs @@ -1,5 +1,6 @@ using KJD_Web.Model; using KJD_Web.Utils; +using MySql.Data.MySqlClient; using Mysqlx.Crud; using NaiBa.Util.Extension; using System; @@ -9,6 +10,7 @@ using System.Linq; using System.Net; using System.Reflection; using System.Web; +using System.Web.ApplicationServices; using System.Web.Security; using System.Web.UI.WebControls; @@ -507,35 +509,60 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":19999,\"msg\":\"输入为空\"}"; } - public string UpdateUserPointsTest(string inputData) + public string AddUserTopUpMsg(string inputData) { if (!string.IsNullOrEmpty(inputData)) { if (!GetSign(inputData)) return "{\"code\":999,\"msg\":\"校验失败\"}"; - var id = RegexUtils.GetStringQuery(ref inputData, "id")?.Replace("'", "\\'"); - var delta_points = RegexUtils.GetStringQuery(ref inputData, "delta_points")?.Replace("'", "\\'"); - int r2 = 0; - int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2); + var nick_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "add_nick_name"))?.Replace("'", "\\'"); + var user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "add_user_name"))?.Replace("'", "\\'"); + var msg = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "msg"))?.Replace("'", "\\'"); + if (string.IsNullOrEmpty(user_name)) + return "{\"code\":501,\"msg\":\"请输入用户名\"}"; + if (string.IsNullOrEmpty(msg)) + return "{\"code\":501,\"msg\":\"请输入充值备注信息\"}"; string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; MysqlUtils mySql = new MysqlUtils(conn); - string sql = ""; - //sql = "select * from wxxd.user where parent_user_name='" - // + user_name + "'"; - sql = "update wxxd.user set"; - if (!string.IsNullOrEmpty(delta_points)) - sql += " points=points+" + delta_points.ParseToInt() + ","; - sql = sql.TrimEnd(','); - sql += " where id=" + id + ""; - + string sql; + sql = "INSERT INTO wxxd.user_points_top_up_msg (nick_name,user_name,msg) " + + "VALUES ('" + nick_name + "','" + user_name + "','" + msg + "');"; var rst = mySql.ExecuteNonQuery(sql); mySql.Close(); - if (rst) - { + if (!rst) + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + else + return "{\"code\":200,\"msg\":\"success\"}"; + } + return "{\"code\":19999,\"msg\":\"输入为空\"}"; + } + + public string UpdateUserTopUpMsg(string inputData) + { + if (!string.IsNullOrEmpty(inputData)) + { + if (!GetSign(inputData)) + return "{\"code\":999,\"msg\":\"校验失败\"}"; + + var id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "id"))?.Replace("'", "\\'"); + var op_rst = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "op_rst"))?.Replace("'", "\\'"); + if (string.IsNullOrEmpty(id)) + return "{\"code\":501,\"msg\":\"请输入要修改的记录\"}"; + if (string.IsNullOrEmpty(op_rst)) + return "{\"code\":501,\"msg\":\"请输入操作结果\"}"; + + string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + MysqlUtils mySql = new MysqlUtils(conn); + string sql; + sql = "UPDATE wxxd.user_points_top_up_msg SET op_rst='" + op_rst + "' WHERE id='" + id + "';"; + var rst = mySql.ExecuteNonQuery(sql); + mySql.Close(); + if (!rst) + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + else return "{\"code\":200,\"msg\":\"success\"}"; - } } return "{\"code\":19999,\"msg\":\"输入为空\"}"; } @@ -554,7 +581,7 @@ namespace KJD_Web.BLL.WXXD var user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "update_user_name"))?.Replace("'", "\\'"); var user_nick = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "update_user_nick"))?.Replace("'", "\\'"); - var delta_points = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "delta_points"))?.ParseToInt(); + var delta_points = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "delta_points")).ParseToInt(); var option_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "option_type"))?.Replace("'", "\\'"); var operator_type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "operator_type"))?.Replace("'", "\\'"); var operator_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "operator_name"))?.Replace("'", "\\'"); @@ -563,66 +590,158 @@ namespace KJD_Web.BLL.WXXD if (string.IsNullOrEmpty(user_name) || string.IsNullOrEmpty(user_nick)) { - return "{\"code\":500,\"msg\":\"充值对象不能为空\"}"; + return "{\"code\":500,\"msg\":\"操作对象不能为空\"}"; } - if (delta_points.IsNullOrZero()) + if (delta_points <= 0 && option_type == "续费") { - return "{\"code\":500,\"msg\":\"充值金额不合法\"}"; + return "{\"code\":500,\"msg\":\"续费金额错误,需大于0\"}"; + } + if (delta_points == 0) + { + return "{\"code\":500,\"msg\":\"操作金额错误,不能等于0\"}"; } if (string.IsNullOrEmpty(option_type) || string.IsNullOrEmpty(operator_type) || string.IsNullOrEmpty(operator_name)) { - return "{\"code\":500,\"msg\":\"操作或操作者信息不合法\"}"; + return "{\"code\":500,\"msg\":\"操作或操作者信息错误\"}"; + } + if (option_type != "充值" && option_type != "续费") + { + return "{\"code\":500,\"msg\":\"操作类型错误\"}"; } string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; - MysqlUtils mySql = new MysqlUtils(conn); + MysqlUtils mySql = new MysqlUtils(conn, true); + string sql; + int userPoints = 0; + int newUserPoints = 0; + + #region 计算是否余额不足 + sql = "SELECT points FROM `wxxd`.`user` WHERE user_name='" + user_name + "'"; + userPoints = mySql.ExecuteFirstInt(sql); + newUserPoints = userPoints; + if (!string.IsNullOrEmpty(mySql.Message)) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + } + if (option_type == "续费") + { + if (delta_points <= 0 || delta_points % 30 > 0) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":501,\"msg\":\"续费点数必须是30的整倍数\"}"; + } + else if (userPoints < delta_points) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"余额不足\"}"; + } + } + #endregion + + sql = "UPDATE `wxxd`.`user` SET"; + if (option_type == "充值") + { + sql += " points=points+" + delta_points.ParseToInt() + ","; + newUserPoints = userPoints + delta_points.ParseToInt(); + } + else + { + sql += " points=points-" + delta_points.ParseToInt() + ","; + newUserPoints = userPoints - delta_points.ParseToInt(); + } + sql = sql.TrimEnd(','); + sql += " WHERE user_name='" + user_name + "' AND points=" + userPoints + ";"; + var changePointsRst = mySql.ExecuteAffectedRows(sql); + if (!string.IsNullOrEmpty(mySql.Message)) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + } + else if (changePointsRst <= 0) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"账户已发生改变,请刷新账户后重新操作\"}"; + } + + sql = " INSERT INTO wxxd.user_points_record(user_name,user_nick,points,option_type,operator_type,operator_name,shop_id,shop_account)"; + sql += " VALUES(@user_name,@user_nick,@points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account);"; + List paramLst = new List(); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_nick", Value = user_nick, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "points", Value = delta_points, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "option_type", Value = option_type, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_type", Value = operator_type, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_name", Value = operator_name, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_id", Value = shop_id, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_account", Value = shop_account, }); + var addOptionRst = mySql.ExecuteAffectedRows(sql, paramLst.ToArray()); + if (!string.IsNullOrEmpty(mySql.Message)) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + } + else if (addOptionRst <= 0) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"新增操作记录失败,请稍候重试\"}"; + } + + int expireTime = 0; + int newExpireTime = 0; + if (option_type == "续费") + { + sql = "SELECT expire_time‌ FROM `wxxd`.`user_points_shop_expire` WHERE shop_id='" + shop_id + "';"; + expireTime = mySql.ExecuteFirstInt(sql); + if (!string.IsNullOrEmpty(mySql.Message)) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + } + + if (expireTime == 0) + { + newExpireTime = TimeUtils.DateTimeToTimestampSeconds(DateTime.Now.AddMonths(delta_points.ParseToInt() / 30)); + sql = " INSERT INTO `wxxd`.`user_points_shop_expire` (shop_id,expire_time‌)" + + " VALUES ('" + shop_id + "'," + newExpireTime + ");"; + } + else + { + DateTime expireDateTime = TimeUtils.StampToDateTime(expireTime); + if (expireDateTime < DateTime.Now) + expireDateTime = DateTime.Now.AddMonths(delta_points.ParseToInt() / 30); + else + expireDateTime = expireDateTime.AddMonths(delta_points.ParseToInt() / 30); + newExpireTime = TimeUtils.DateTimeToTimestampSeconds(expireDateTime); + + sql = "UPDATE `wxxd`.`user_points_shop_expire` set expire_time‌=" + newExpireTime + " WHERE shop_id='" + shop_id + "' AND expire_time‌=" + expireTime; + } + var renewalRst = mySql.ExecuteAffectedRows(sql); + if (!string.IsNullOrEmpty(mySql.Message)) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; + } + else if (renewalRst <= 0) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"店铺已发生改变,请刷新店铺后重新操作\"}"; + } + } + + mySql.Commit(); mySql.Close(); - //////string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; - //////MysqlUtils mySql = new MysqlUtils(conn); - //////string sql = ""; - //////sql += " START TRANSACTION"; - //////sql += " SELECT * FROM wxxd.user WHERE user_name='" + user_name + "' FOR UPDATE;"; - //////sql += " INSERT INTO wxxd.user_points_record(user_name,user_nick,points,option_type,operator_type,operator_name,shop_id,shop_account)"; - //////sql += " VALUES()"; - //////sql += " UPDATE wxxd.user SET points = points + delta_points"; - - ////////INSERT INTO TableB(column1, column2) - ////////SELECT A.column1, 'some_value' AS column2 - ////////FROM TableA A - ////////WHERE A.value > 100; - - //////sql = "select points from wxxd.user where user_name='" + user_name + "'"; - //////var rst1 = mySql.ExecuteFirstInt(sql); - - - //sql = "UPDATE wxxd.user SET"; - //if (option_type == "充值") - // sql += " points=points+" + delta_points.ParseToInt() + ","; - //else - // sql += " points=points-" + delta_points.ParseToInt() + ","; - //sql = sql.TrimEnd(','); - //sql += " where id=" + id + ""; - //- - //if (!string.IsNullOrEmpty(notes)) - // sql += " notes='" + notes + "',"; - //if (!string.IsNullOrEmpty(sa_level)) - // sql += " sa_level=" + sa_level + ","; - //if (authority != null) - // sql += " authority='" + authority + "',"; - //sql = sql.TrimEnd(','); - //sql += " where id=" + id + ""; - - //var rst = mySql.ExecuteNonQuery(sql); - //mySql.Close(); - //if (rst) - //{ - // return "{\"code\":200,\"msg\":\"success\"}"; - //} - //else - //{ - // return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}"; - //} - return "{\"code\":200,\"msg\":\"success\"}"; + return "{\"code\":200,\"msg\":\"success\",\"newExpireTime\":" + newExpireTime + ",\"newUserPoints\":" + newUserPoints + "}"; } return "{\"code\":19999,\"msg\":\"输入为空\"}"; } diff --git a/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs b/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs index e7faad5..64b5703 100644 --- a/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs +++ b/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs @@ -68,7 +68,9 @@ namespace KJD_Web.Model.ShopModel public string ad_login_status { get; set; } public DateTime? jit_expire_time { get; set; } public int? expire_time { get; set; } - public DateTime? add_time { get; set; } + public DateTime add_time { get; set; } + //public DateTime mdy_time { get; set; } + public bool? is_point_shop_expire { get; set; } = false; } public class AuthInfo diff --git a/KJDService/KJD_WebService/WXProductService.asmx.cs b/KJDService/KJD_WebService/WXProductService.asmx.cs index cbdd379..6a86002 100644 --- a/KJDService/KJD_WebService/WXProductService.asmx.cs +++ b/KJDService/KJD_WebService/WXProductService.asmx.cs @@ -288,6 +288,28 @@ namespace KJD_Web Context.Response.Write(result); Context.Response.End(); } + [WebMethod] + public void wx_add_mdy_commission_rate() + { + string jsontext = GetRequestJsonString(); + + var result = jsontext; + result = new WXProductManage().WXAddMdyCommissionRate(jsontext); + + Context.Response.Write(result); + Context.Response.End(); + } + [WebMethod] + public void wx_get_commission_rate() + { + string jsontext = GetRequestJsonString(); + + var result = jsontext; + result = new WXProductManage().WXGetCommissionRate(jsontext); + + Context.Response.Write(result); + Context.Response.End(); + } [WebMethod] public void e57_get_freight_template() diff --git a/KJDService/KJD_WebService/WXUserService.asmx.cs b/KJDService/KJD_WebService/WXUserService.asmx.cs index ac76351..820bca5 100644 --- a/KJDService/KJD_WebService/WXUserService.asmx.cs +++ b/KJDService/KJD_WebService/WXUserService.asmx.cs @@ -175,6 +175,18 @@ namespace KJD_Web Context.Response.End(); } + [WebMethod] + public void update_user_points() + { + string jsontext = GetRequestJsonString(); + + var result = jsontext; + result = new WXUserManage().UpdateUserPoints(jsontext); + + Context.Response.Write(result); + Context.Response.End(); + } + [WebMethod] public void get_wx_sale_assistant_cookie() { diff --git a/TEMUKJD/BLL/PDDProdFormConverter.cs b/TEMUKJD/BLL/PDDProdFormConverter.cs index 31837ab..5cfafb5 100644 --- a/TEMUKJD/BLL/PDDProdFormConverter.cs +++ b/TEMUKJD/BLL/PDDProdFormConverter.cs @@ -1014,15 +1014,15 @@ namespace TemuKJD.BLL prodInfo.detail.list_desc = new List(); prodInfo.detail.local_service_id_list = null; prodInfo.detail.mai_jia_zi_ti = null; - // 聚水潭没有 + // 微信没有 prodInfo.detail.mall_id = 0; - // 聚水潭没有 + // 微信没有 prodInfo.detail.mall_info = new mall_info_item(); - // 聚水潭没有此处随意填 + // 微信没有此处随意填 prodInfo.detail.market_price = 0; - // 聚水潭没有此处随意填 + // 微信没有此处随意填 prodInfo.detail.max_group_price = 0; - // 聚水潭没有此处随意填 + // 微信没有此处随意填 prodInfo.detail.min_group_price = 0; prodInfo.detail.must_check_type = 0; prodInfo.detail.name_prefix = ""; @@ -1085,7 +1085,6 @@ namespace TemuKJD.BLL sku_item skuInfo = new sku_item() { id = 0, - // 聚水潭为string,散列取数值 sku_id = wxEditSkuInfo.skuKey.skuId.ParseToLong(), sku_sn = null, carnival_price = 0, @@ -1373,8 +1372,8 @@ namespace TemuKJD.BLL prodInfo.detail.name_prefix = ""; prodInfo.detail.origin_country_id = 0; prodInfo.detail.origin_country_name = ""; - // 货号 1688没有(没找到) - prodInfo.detail.out_goods_sn = "";//_1688EditProdInfo.product.info.spuCode; + // 货号 1688没有字段直接标明,可能存在属性里面 + prodInfo.detail.out_goods_sn = (_1688ClentProdInfo.offerDetail?.featureAttributes?.FirstOrDefault(s=>s.name == "货号")?.value).ParseToString(); //if (prodInfo.detail.out_goods_sn.IsNullOrEmpty()) //{ // convertRst = "货号不存在"; @@ -1426,7 +1425,6 @@ namespace TemuKJD.BLL sku_item skuInfo = new sku_item() { id = 0, - // 聚水潭为string,散列取数值 sku_id = _1688skuInfo.skuId.ParseToLong(), sku_sn = null, carnival_price = 0, @@ -1446,8 +1444,8 @@ namespace TemuKJD.BLL thumb_url_is_deleted = null, quantity_delta = 0, spec = new List(), - // sku货号下面单独设置 - out_sku_sn = "", + // sku货号 + out_sku_sn = _1688skuInfo.specId, batch_id = null, priority = 1, ware_id = 0, @@ -1497,8 +1495,6 @@ namespace TemuKJD.BLL } } } - // 1688前端数据没找到货号字段 - skuInfo.out_sku_sn = ""; //_1688skuInfo.productSkuInfo.skuCode; prodInfo.detail.sku.Add(skuInfo); } prodInfo.detail.sku_type = null; @@ -1568,7 +1564,361 @@ namespace TemuKJD.BLL } } + /// + /// 1688外部数据转拼多多 + /// + /// + /// + /// + public PDDProductInfo _1688OutToPddConvert(out string convertRst, KJDDBProduct dbProd) + { + convertRst = ""; + try + { + var prod_json = dbProd.product_json; + _1688OutProductInfo _1688OutProdInfo = JsonHelper.DeserializeJsonToObject<_1688OutProductInfo>(prod_json); + PDDProductInfo prodInfo = new PDDProductInfo() + { + sale_count = dbProd.sale_count.ParseToString(), + sale_count_text = dbProd.sale_count_text, + }; + prodInfo.chance_id = null; + prodInfo.chance_refere = null; + prodInfo.chance_tab = null; + prodInfo.decoration = new PDDProductDecorationInfo() { floor_list = new List() }; + + // 商品详情 + prodInfo.detail = new PDDProductDetailInfo(); + prodInfo.detail.allergy_refund = 0; + prodInfo.detail.allowed_region = new List(); + //prodInfo.detail.appeal_status = null; + //prodInfo.detail.app_id = null; + //prodInfo.detail.app_name = null; + //prodInfo.detail.bad_claim_text = null; + prodInfo.detail.bad_fruit_claim = 0; + //prodInfo.detail.business_source_type = null; + prodInfo.detail.can_appeal = null; + prodInfo.detail.card_verification_list = null; + prodInfo.detail.cats = new List(); + prodInfo.detail.cat_id = dbProd.cat_id.ParseToInt(); + prodInfo.detail.cat_ids = new List(); + //foreach (var category in _1688EditProdInfo.product.info.category) + //{ + // prodInfo.detail.cat_ids.Add(category.catId.ParseToInt()); + //} + prodInfo.detail.check_status = 9; + //prodInfo.detail.check_type = null; + //prodInfo.detail.client_id = null; + prodInfo.detail.commit_deleted = 0; + //prodInfo.detail.commit_extension = null; + //prodInfo.detail.community_group_buying = null; + prodInfo.detail.cost_template_id = 0; + //prodInfo.detail.country = null; + prodInfo.detail.country_id = 0; + //prodInfo.detail.created_at = null; + //prodInfo.detail.creator_name = null; + prodInfo.detail.customizable = 0; + prodInfo.detail.customs = ""; + prodInfo.detail.damage_claim = 0; + prodInfo.detail.delivery_one_day = 0; + //prodInfo.detail.delivery_type = null; + //prodInfo.detail.elec_goods_attributes = null; + prodInfo.detail.estimate_quantity = 0; + prodInfo.detail.event_type = 0; + prodInfo.detail.extend_warranty_dto = new extend_warranty_dto_item() { extend_warranty = 0 }; + //prodInfo.detail.fabric = null; + //prodInfo.detail.fabric_content = null; + prodInfo.detail.galleries = new List(); + foreach (var imgItem in _1688OutProdInfo.itemImgs) + { + prodInfo.detail.galleries.Add(new gallery_item() + { + url = imgItem, + type = 1, + }); + } + var desc = _1688OutProdInfo.desc.ParseToString(); + var descLst = desc.Split(new string[] { "src=\"", "\" usemap", "\"/>", "\"" }, StringSplitOptions.RemoveEmptyEntries).ToList(); + foreach (var imgItem in descLst) + { + if (!imgItem.StartsWith("http") || (!imgItem.ToLower().Contains(".jpg") && !imgItem.ToLower().Contains(".jpeg") && !imgItem.ToLower().Contains(".png"))) + continue; + prodInfo.detail.galleries.Add(new gallery_item() + { + url = imgItem, + type = 2, + }); + } + prodInfo.detail.gold_price_template_id = null; + prodInfo.detail.gold_price_type = null; + prodInfo.detail.goods_certificate = null; + prodInfo.detail.goods_commit_check = new List(); + prodInfo.detail.goods_desc = _1688OutProdInfo.productName; + prodInfo.detail.goods_id = _1688OutProdInfo.productId.ParseToLong(); + prodInfo.detail.goods_name = _1688OutProdInfo.productName; + prodInfo.detail.goods_name_prefix = ""; + prodInfo.detail.goods_pattern = 8; + prodInfo.detail.goods_property_list = null; + prodInfo.detail.goods_sn = null; + prodInfo.detail.goods_srv_templates = new List(); + prodInfo.detail.goods_trade_attr = null; + prodInfo.detail.goods_travel_attr = null; + prodInfo.detail.goods_type = 1; + prodInfo.detail.groups = new group_item() { single_price = 0, group_price = 0, customer_num = 2, buy_limit = 999999, order_limit = 999999 }; + // 复用前面已经填写过的 + prodInfo.detail.hd_thumb_url = prodInfo.detail.galleries.FirstOrDefault(g => g.type == 1)?.url; + // 编辑id,随意填写 + prodInfo.detail.id = 0; + // 复用前面已经填写过的 + prodInfo.detail.image_url = prodInfo.detail.galleries.FirstOrDefault(g => g.type == 1)?.url; + prodInfo.detail.instruction_vo = new instruction_vo_item() { template_status = -1 }; + prodInfo.detail.invoice_mode = null; + prodInfo.detail.invoice_mode_sub_type = null; + prodInfo.detail.invoice_status = 0; + prodInfo.detail.is_all_weight_same = true; + prodInfo.detail.is_app = 0; + prodInfo.detail.is_bangdan = 0; + prodInfo.detail.is_card_secret = false; + prodInfo.detail.is_certificate_provide = 0; + prodInfo.detail.is_customized = 0; + prodInfo.detail.is_customs = 0; + prodInfo.detail.is_deposit = false; + prodInfo.detail.is_draft = false; + prodInfo.detail.is_folt = 0; + prodInfo.detail.is_general_trade = 0; + prodInfo.detail.is_gold_price_matched = null; + prodInfo.detail.is_goods_copy = null; + prodInfo.detail.is_goods_decoration = 1; + prodInfo.detail.is_group_pre_sale = 0; + prodInfo.detail.is_only_for_remote_area = false; + prodInfo.detail.is_pre_sale = 0; + prodInfo.detail.is_refundable = 1; + prodInfo.detail.is_refundable_fifteen_day = 0; + prodInfo.detail.is_shop = 1; + prodInfo.detail.is_size_change_casually = 0; + prodInfo.detail.is_sku_pre_sale = 0; + prodInfo.detail.is_sku_shipment = 0; + prodInfo.detail.is_small_group = null; + prodInfo.detail.is_spring_festival_open_tag = false; + prodInfo.detail.is_two_num_group = false; + prodInfo.detail.is_warranty_one_year = 0; + prodInfo.detail.is_wms = 0; + prodInfo.detail.is_wp_service = 0; + prodInfo.detail.lack_of_weight_claim = 0; + prodInfo.detail.last_commit_check_status = 2; + prodInfo.detail.list_desc = new List(); + prodInfo.detail.local_service_id_list = null; + prodInfo.detail.mai_jia_zi_ti = null; + // 1688没有 + prodInfo.detail.mall_id = 0; + // 1688没有 + prodInfo.detail.mall_info = new mall_info_item(); + // 1688没有此处随意填 + prodInfo.detail.market_price = 0; + // 1688没有此处随意填 + prodInfo.detail.max_group_price = 0; + // 1688没有此处随意填 + prodInfo.detail.min_group_price = 0; + prodInfo.detail.must_check_type = 0; + prodInfo.detail.name_prefix = ""; + prodInfo.detail.origin_country_id = 0; + prodInfo.detail.origin_country_name = ""; + // 货号 + prodInfo.detail.out_goods_sn = (_1688OutProdInfo.attribute.FirstOrDefault(a => a.key == "货号")?.value).ParseToString(); + //if (prodInfo.detail.out_goods_sn.IsNullOrEmpty()) + //{ + // convertRst = "货号不存在"; + // return null; + //} + prodInfo.detail.out_source_goods_id = null; + prodInfo.detail.out_source_type = null; + prodInfo.detail.oversea_goods = null; + prodInfo.detail.oversea_type = 0; + prodInfo.detail.owner = "主账号"; + prodInfo.detail.owner_name = ""; + prodInfo.detail.paper_length = null; + prodInfo.detail.paper_net_weight = null; + prodInfo.detail.paper_plies_num = null; + prodInfo.detail.paper_width = null; + prodInfo.detail.pre_sale_time = 0; + prodInfo.detail.privacy_delivery = 0; + prodInfo.detail.processing_charges = null; + prodInfo.detail.processing_charges_type = null; + prodInfo.detail.promised_delivery_seconds = null; + prodInfo.detail.purchase_info_supply = 0; + prodInfo.detail.qualification_id_list = new List(); + prodInfo.detail.quan_guo_lian_bao = 0; + prodInfo.detail.quick_refund = 0; + prodInfo.detail.reason = null; + prodInfo.detail.region_limit = 1; + prodInfo.detail.reject_reason = null; + prodInfo.detail.reject_status = null; + prodInfo.detail.same_city_template_id = 0; + prodInfo.detail.schedule_sale = new schedule_sale_item() { sale_type = 0 }; + prodInfo.detail.second_hand = 0; + prodInfo.detail.sf_markup_template_sn = null; + prodInfo.detail.shang_men_an_zhuang = null; + // 1688没有 + prodInfo.detail.share_desc = ""; + prodInfo.detail.shipment_limit_second = 172800; + prodInfo.detail.shoes_template_id = null; + prodInfo.detail.shop_group_id = null; + prodInfo.detail.shop_group_name = null; + prodInfo.detail.show_activity_price = false; + prodInfo.detail.size_parent_spec_id = null; + prodInfo.detail.size_spec_id = null; + + prodInfo.detail.sku = new List(); + foreach (var sku in _1688OutProdInfo.skus) + { + var postFeeValue = (_1688OutProdInfo.deliveryInfo?.carriageList?.Max(c => c.price)).ParseToDecimal(); + + //_1688skuInfo _1688skuInfo = _1688OutProdInfo.skuModel.skuInfoMap[sku]; + + sku_item skuInfo = new sku_item() + { + id = 0, + sku_id = sku.skuId, + sku_sn = null, + carnival_price = 0, + init_quantity = 0, + is_onsale = 1, + limit_quantity = 999999, + multi_price = (sku.price + postFeeValue * 100).ParseToInt(), + multi_price_in_yuan = null, + price = (sku.price + postFeeValue * 100).ParseToInt() + 100, + price_in_yuan = null, + quantity = sku.quantity, + reserve_quantity = 0, + weight = 0, + //thumb_url = _1688skuInfo.productSkuInfo.thumbImg, + thumb_url_file_id = null, + thumb_url_status = null, + thumb_url_is_deleted = null, + quantity_delta = 0, + spec = new List(), + // sku货号 + out_sku_sn = "", + batch_id = null, + priority = 1, + ware_id = 0, + ware_biz_type = null, + advice_price = null, + length = null, + oversea_sku = null, + cspu_id = null, + child_skus = null, + ref_sku_commit_id = 0, + start_time = null, + end_time = null, + sku_srv_templates = null, + calendar_rule_id = null, + hot_live_group = null, + pre_sale_time = 0, + out_source_sku_id = null, + dd_grocery_sku_params = null, + sku_extended_attribute_dtos = null, + sku_basic_property_dtos = null, + spec_note_map = null, + delivery_schedule_dtos = null, + shipment_limit_second_list = null, + sku69_code = "", + }; + //// 聚水潭供应商价加价10%(最低1元)赚取差价 + //int addPrice = (skuInfo.multi_price * 0.1).ParseToInt(); + //if (addPrice < 100) + // addPrice = 100; + //skuInfo.multi_price += addPrice; + //skuInfo.price += addPrice; + foreach (_1688PropsName _1688skuProp in _1688OutProdInfo.propsName) + { + foreach (_1688PropsNameValue _1688skuPropValue in _1688skuProp.values) + { + if ((";" + sku.id + ";").Contains(";" + _1688skuProp.pid + ":" + _1688skuPropValue.vid + ";")) + { + skuInfo.spec.Add(new spec_item() + { + parent_id = _1688skuProp.pid.ParseToLong(), + parent_name = _1688skuProp.pname, + spec_id = _1688skuPropValue.vid.ParseToLong(), + spec_name = _1688skuPropValue.vname, + }); + if (!string.IsNullOrEmpty(_1688skuPropValue.sku_url)) + skuInfo.thumb_url = _1688skuPropValue.sku_url; + } + } + } + prodInfo.detail.sku.Add(skuInfo); + } + prodInfo.detail.sku_type = null; + prodInfo.detail.song_huo_an_zhuang = null; + prodInfo.detail.song_huo_ru_hu = null; + prodInfo.detail.source = 0; + prodInfo.detail.spu_id = null; + prodInfo.detail.spu_version = null; + prodInfo.detail.submit_time = 0; + prodInfo.detail.thawed_refund = 0; + prodInfo.detail.third_type = 0; + // 复用前面填过的主图 + prodInfo.detail.thumb_url = prodInfo.detail.galleries.FirstOrDefault(g => g.type == 1)?.url; + prodInfo.detail.tiny_name = ""; + prodInfo.detail.transport_type_list = null; + prodInfo.detail.two_pieces_discount = 99; + prodInfo.detail.user_source = 1; + prodInfo.detail.warehouse = ""; + prodInfo.detail.warm_tips = ""; + prodInfo.detail.zhi_huan_bu_xiu = 0; + + prodInfo.size = null; + prodInfo.material1 = null; + prodInfo.material3 = null; + prodInfo.property = new PDDProductPropertyInfo(); + prodInfo.property.sku_properties = new object(); + prodInfo.property.goods_properties = new List(); + + if (1 == 1) + { + foreach (_1688AttributeInfo _1688Attr in _1688OutProdInfo.attribute) + { + // 1688会把商品sku属性放到商品属性里面,需要剔除这个属性 + if (_1688OutProdInfo.propsName.Any(p => p.pname == _1688Attr.key && string.Join(",", p.values.Select(pp => pp.vname)) == _1688Attr.value)) + continue; + + goods_propertie_item propInfo = new goods_propertie_item(); + prodInfo.property.goods_properties.Add(propInfo); + propInfo.name = _1688Attr.key; + propInfo.ref_pid = null; + propInfo.values = new List(); + List values = new List { _1688Attr.value }; + foreach (var wxPropVal in values) + { + propInfo.values.Add(new value_item() + { + value = wxPropVal, + raw_value = wxPropVal, + vid = null, + unit = "" + }); + } + } + } + else + { + //outGoodsParam.productAttrs.Add(new osProductAttrParam { attrKey = "品牌", attrValue = "无品牌" }); + } + // 主图 复用前面的 + dbProd.main_img = prodInfo.detail.galleries.FirstOrDefault(g => g.type == 1).url; + dbProd.product_json = JsonHelper.SerializeObject(prodInfo); + + return prodInfo; + } + catch (Exception ex) + { + convertRst = "转换错误 " + ex.Message; + return null; + } + } public PDDProductInfo WXClientToPddConvert(out string convertRst, KJDDBProduct dbProd) { @@ -1755,15 +2105,15 @@ namespace TemuKJD.BLL prodInfo.detail.list_desc = new List(); prodInfo.detail.local_service_id_list = null; prodInfo.detail.mai_jia_zi_ti = null; - // 聚水潭没有 + // 微信没有 prodInfo.detail.mall_id = 0; - // 聚水潭没有 + // 微信没有 prodInfo.detail.mall_info = new mall_info_item(); - // 聚水潭没有此处随意填 + // 微信没有此处随意填 prodInfo.detail.market_price = 0; - // 聚水潭没有此处随意填 + // 微信没有此处随意填 prodInfo.detail.max_group_price = 0; - // 聚水潭没有此处随意填 + // 微信没有此处随意填 prodInfo.detail.min_group_price = 0; prodInfo.detail.must_check_type = 0; prodInfo.detail.name_prefix = ""; @@ -1827,7 +2177,6 @@ namespace TemuKJD.BLL sku_item skuInfo = new sku_item() { id = 0, - // 聚水潭为string,散列取数值 sku_id = wxEditSkuInfo.skuKey.skuId.ParseToLong(), sku_sn = null, carnival_price = 0, diff --git a/TEMUKJD/BLL/ShopBLL.cs b/TEMUKJD/BLL/ShopBLL.cs index 915aa9a..980393e 100644 --- a/TEMUKJD/BLL/ShopBLL.cs +++ b/TEMUKJD/BLL/ShopBLL.cs @@ -252,13 +252,13 @@ namespace TemuKJD.BLL return true; } - public static List DeserializationShop(string shopJson) + public static List DeserializationShop(string shopJson, string shopDataName = "data") { List list = new List(); - if (!shopJson.Contains("data")) + if (!shopJson.Contains(shopDataName)) return list; - var jArr = JObject.Parse(shopJson)["data"]; + var jArr = JObject.Parse(shopJson)[shopDataName]; if (jArr.Count() == 0) return list; @@ -294,6 +294,8 @@ namespace TemuKJD.BLL shop.openid = BaseRegex.GetStringJson(ref shopStr, "openid"); shop.jit_expire_time = BaseRegex.GetStringJson(ref shopStr, "jit_expire_time") == null ? new DateTime?() : Convert.ToDateTime(BaseRegex.GetStringJson(ref shopStr, "jit_expire_time")); shop.AddTime = BaseRegex.GetStringJson(ref shopStr, "add_time") == null ? DateTime.MinValue : Convert.ToDateTime(BaseRegex.GetStringJson(ref shopStr, "add_time")); + shop.is_point_shop_expire = BaseRegex.GetBoolJson(ref shopStr, "is_point_shop_expire"); + shop.expire_time = BaseRegex.GetIntJson(ref shopStr, "expire_time"); if (BaseClass.MainPath == "binxixi") { diff --git a/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs b/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs index 1906ba7..56fa470 100644 --- a/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs +++ b/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs @@ -369,7 +369,6 @@ namespace TemuKJD.KJDForms.AdminForms { shop.ad_login_status = "在线"; shop.ad_cookie = cookiesAds; - StartUp.SaveLocalShopLoginInfo(); // 店铺保存到本地 ShopListForm.UpdateServerShopAdsCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie OnSaveComplete(shop); if (this.Created && this.chkCloseAfterLogin.Checked) @@ -952,8 +951,6 @@ namespace TemuKJD.KJDForms.AdminForms if (shop != null) { shop.DictMultiCookies.Remove(cmbMultiCookieName.Text); - StartUp.SaveLocalShopLoginInfo(); - InitMultiLoginCookies(); } } diff --git a/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs b/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs index 135e64d..ec1a6d0 100644 --- a/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs @@ -336,8 +336,6 @@ namespace TemuKJD.KJDForms.ShopForms { Task.Run(() => { - //CheckShopListLogin(new string[] { (obj as DouShopLoginInfo).LoginName }); - StartUp.SaveLocalShopLoginInfo(); btnRefreshCookie_Click(null, null); }); } @@ -401,7 +399,6 @@ namespace TemuKJD.KJDForms.ShopForms } else GlobalConfig.ShopLoginList.Add(shop); - StartUp.SaveLocalShopLoginInfo(); ShopBLL.AddServerShop(shop); } } @@ -671,7 +668,6 @@ namespace TemuKJD.KJDForms.ShopForms //if (!string.IsNullOrEmpty(loginResult)) // shop.LastRefreshDate = DateTime.Now.ToString("yyyyMMdd"); UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie - StartUp.SaveLocalShopLoginInfo(); } if (this.Created && isShowProgress) { @@ -742,7 +738,6 @@ namespace TemuKJD.KJDForms.ShopForms shop.ad_cookie = serverShop.ad_cookie; } - StartUp.SaveLocalShopLoginInfo(); ShopListForm.UpdateServerShopAdsCookies(shop); // 店铺cookie写入服务端 } @@ -979,7 +974,6 @@ namespace TemuKJD.KJDForms.ShopForms return; DeleteShop(e.RowIndex); DelServerDouShop(shop.LoginName); - StartUp.SaveLocalShopLoginInfo(); break; case "编辑": { diff --git a/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs b/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs index a780716..534fddf 100644 --- a/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs @@ -196,7 +196,6 @@ namespace TemuKJD.KJDForms.ShopForms s.Cookies = cookies; s.LastRefreshDate = DateTime.Now.ToString("yyyyMMdd"); } - StartUp.SaveLocalShopLoginInfo(); // 店铺保存到本地 ShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie //OnSaveComplete(shop); //if (this.Created && this.chkCloseAfterLogin.Checked) @@ -322,7 +321,6 @@ namespace TemuKJD.KJDForms.ShopForms s.Cookies2 = cookies2; s.LastRefreshDate = DateTime.Now.ToString("yyyyMMdd"); } - StartUp.SaveLocalShopLoginInfo(); // 店铺保存到本地 ShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie if (!IsAdsLogin) { @@ -411,7 +409,6 @@ namespace TemuKJD.KJDForms.ShopForms { shop.ad_login_status = "在线"; shop.ad_cookie = cookiesAds; - StartUp.SaveLocalShopLoginInfo(); // 店铺保存到本地 ShopListForm.UpdateServerShopAdsCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie OnSaveComplete(shop); if (this.Created && this.chkCloseAfterLogin.Checked) @@ -1146,7 +1143,6 @@ function fireKeyEvent(el, evtType, keyCode) { if (shop != null) { shop.DictMultiCookies.Remove(cmbMultiCookieName.Text); - StartUp.SaveLocalShopLoginInfo(); InitMultiLoginCookies(); } diff --git a/TEMUKJD/MainForm.cs b/TEMUKJD/MainForm.cs index 43683f9..609cf04 100644 --- a/TEMUKJD/MainForm.cs +++ b/TEMUKJD/MainForm.cs @@ -312,6 +312,19 @@ namespace TemuKJD //ReadWxCateBound(); ReadWxCateBound60323(); ReadPddCate(); + + while(!StartUp.IsShopInit) + { + Thread.Sleep(500); + } + if (BaseClass.UserAuthority.Contains("充值用户")) + { + Invoke(new Action(() => + { + this.lblPoints.Visible = true; + this.lblPoints.Text = "账户积分:" + BaseClass.Points; + })); + } }); } diff --git a/TEMUKJD/MainForm.designer.cs b/TEMUKJD/MainForm.designer.cs index b118b9d..509191e 100644 --- a/TEMUKJD/MainForm.designer.cs +++ b/TEMUKJD/MainForm.designer.cs @@ -57,6 +57,7 @@ namespace TemuKJD this.pbLogo = new System.Windows.Forms.PictureBox(); this.lklbGetHwCode = new TemuKJD.UserComponent.LinkLabelLc(); this.plTopRight = new System.Windows.Forms.Panel(); + this.lblPoints = new System.Windows.Forms.Label(); this.lblVersionName = new System.Windows.Forms.Label(); this.lblVersionInfo = new System.Windows.Forms.Label(); this.lblContactSupport = new DevComponents.DotNetBar.LabelX(); @@ -83,7 +84,7 @@ namespace TemuKJD // this.picPinDuoDuoToken.Cursor = System.Windows.Forms.Cursors.Hand; this.picPinDuoDuoToken.Image = ((System.Drawing.Image)(resources.GetObject("picPinDuoDuoToken.Image"))); - this.picPinDuoDuoToken.Location = new System.Drawing.Point(144, 3); + this.picPinDuoDuoToken.Location = new System.Drawing.Point(37, 3); this.picPinDuoDuoToken.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3); this.picPinDuoDuoToken.Name = "picPinDuoDuoToken"; this.picPinDuoDuoToken.Size = new System.Drawing.Size(23, 23); @@ -98,7 +99,7 @@ namespace TemuKJD // this.pbAnnouncement.BackColor = System.Drawing.Color.Transparent; this.pbAnnouncement.Image = ((System.Drawing.Image)(resources.GetObject("pbAnnouncement.Image"))); - this.pbAnnouncement.Location = new System.Drawing.Point(115, 3); + this.pbAnnouncement.Location = new System.Drawing.Point(8, 3); this.pbAnnouncement.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3); this.pbAnnouncement.Name = "pbAnnouncement"; this.pbAnnouncement.Size = new System.Drawing.Size(23, 23); @@ -602,6 +603,7 @@ namespace TemuKJD this.plTopRight.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.plTopRight.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("plTopRight.BackgroundImage"))); this.plTopRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.plTopRight.Controls.Add(this.lblPoints); this.plTopRight.Controls.Add(this.lblVersionName); this.plTopRight.Controls.Add(this.lblVersionInfo); this.plTopRight.Controls.Add(this.lblContactSupport); @@ -610,26 +612,40 @@ namespace TemuKJD this.plTopRight.Controls.Add(this.max); this.plTopRight.Controls.Add(this.min); this.plTopRight.Controls.Add(this.close); - this.plTopRight.Location = new System.Drawing.Point(958, 0); + this.plTopRight.Location = new System.Drawing.Point(858, 0); this.plTopRight.Margin = new System.Windows.Forms.Padding(0); this.plTopRight.Name = "plTopRight"; this.plTopRight.RightToLeft = System.Windows.Forms.RightToLeft.Yes; - this.plTopRight.Size = new System.Drawing.Size(320, 91); + this.plTopRight.Size = new System.Drawing.Size(420, 91); this.plTopRight.TabIndex = 0; this.plTopRight.DoubleClick += new System.EventHandler(this.plTopRight_DoubleClick); this.plTopRight.MouseDown += new System.Windows.Forms.MouseEventHandler(this.plTopRight_MouseDown); this.plTopRight.MouseMove += new System.Windows.Forms.MouseEventHandler(this.plTopRight_MouseMove); this.plTopRight.MouseUp += new System.Windows.Forms.MouseEventHandler(this.plTopRight_MouseUp); // + // lblPoints + // + this.lblPoints.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.lblPoints.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.lblPoints.Location = new System.Drawing.Point(3, 37); + this.lblPoints.Name = "lblPoints"; + this.lblPoints.RightToLeft = System.Windows.Forms.RightToLeft.No; + this.lblPoints.Size = new System.Drawing.Size(408, 23); + this.lblPoints.TabIndex = 88; + this.lblPoints.Text = "账户积分:0"; + this.lblPoints.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + this.lblPoints.Visible = false; + // // lblVersionName // this.lblVersionName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.lblVersionName.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0))))); - this.lblVersionName.Location = new System.Drawing.Point(3, 36); + this.lblVersionName.Location = new System.Drawing.Point(217, 3); this.lblVersionName.Name = "lblVersionName"; this.lblVersionName.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.lblVersionName.Size = new System.Drawing.Size(308, 23); + this.lblVersionName.Size = new System.Drawing.Size(119, 23); this.lblVersionName.TabIndex = 78; this.lblVersionName.Text = "版本类型"; this.lblVersionName.TextAlign = System.Drawing.ContentAlignment.MiddleRight; @@ -643,7 +659,7 @@ namespace TemuKJD this.lblVersionInfo.Location = new System.Drawing.Point(3, 60); this.lblVersionInfo.Name = "lblVersionInfo"; this.lblVersionInfo.RightToLeft = System.Windows.Forms.RightToLeft.No; - this.lblVersionInfo.Size = new System.Drawing.Size(308, 23); + this.lblVersionInfo.Size = new System.Drawing.Size(408, 23); this.lblVersionInfo.TabIndex = 77; this.lblVersionInfo.Text = "版本信息"; this.lblVersionInfo.TextAlign = System.Drawing.ContentAlignment.MiddleRight; @@ -660,7 +676,7 @@ namespace TemuKJD this.lblContactSupport.Cursor = System.Windows.Forms.Cursors.Hand; this.lblContactSupport.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.lblContactSupport.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this.lblContactSupport.Location = new System.Drawing.Point(177, 3); + this.lblContactSupport.Location = new System.Drawing.Point(62, 3); this.lblContactSupport.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3); this.lblContactSupport.Name = "lblContactSupport"; this.lblContactSupport.Size = new System.Drawing.Size(65, 23); @@ -676,7 +692,7 @@ namespace TemuKJD this.max.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.max.Cursor = System.Windows.Forms.Cursors.Hand; this.max.DisabledBackColor = System.Drawing.Color.Empty; - this.max.Location = new System.Drawing.Point(270, 6); + this.max.Location = new System.Drawing.Point(370, 6); this.max.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3); this.max.Name = "max"; this.max.Size = new System.Drawing.Size(16, 16); @@ -702,7 +718,7 @@ namespace TemuKJD this.min.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.min.Cursor = System.Windows.Forms.Cursors.Hand; this.min.DisabledBackColor = System.Drawing.Color.Empty; - this.min.Location = new System.Drawing.Point(243, 6); + this.min.Location = new System.Drawing.Point(343, 6); this.min.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3); this.min.Name = "min"; this.min.Size = new System.Drawing.Size(16, 16); @@ -728,7 +744,7 @@ namespace TemuKJD this.close.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.close.Cursor = System.Windows.Forms.Cursors.Hand; this.close.DisabledBackColor = System.Drawing.Color.Empty; - this.close.Location = new System.Drawing.Point(295, 6); + this.close.Location = new System.Drawing.Point(395, 6); this.close.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3); this.close.Name = "close"; this.close.Size = new System.Drawing.Size(16, 16); @@ -814,6 +830,7 @@ namespace TemuKJD public System.Windows.Forms.Label lblVersionName; public System.Windows.Forms.Panel cefPanel; private DevComponents.DotNetBar.PanelEx btnClose; + public System.Windows.Forms.Label lblPoints; } } diff --git a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs index dae42f6..10a13e0 100644 --- a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs +++ b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs @@ -836,7 +836,6 @@ namespace TemuKJD.PDDForms.AdminForms if (shop != null) { shop.DictMultiCookies.Remove(cmbMultiCookieName.Text); - StartUp.SaveLocalShopLoginInfo(); InitMultiLoginCookies(); } diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs index 52830b5..d19049a 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs @@ -284,6 +284,16 @@ namespace TemuKJD.PDDForms.ProductSelectForms return; } } + if (dbProd.product_get_type_text == "1688外部数据") + { + string convertRst = ""; + var pInfo = new PDDProdFormConverter()._1688OutToPddConvert(out convertRst, dbProd); + if (!string.IsNullOrEmpty(convertRst)) + { + BaseMsgForm.ShowError("商品结构获取失败"); + return; + } + } #region 微信小店app if (dbProd.product_get_type_text == "微信小店") { diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs index 0907d5e..3c3c788 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs @@ -961,6 +961,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms "", "厂商直采", "1688厂家", + "1688外部数据", "微信小店", "微信店采", "母店采集", diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs index b43c650..7adcbe3 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs @@ -1298,7 +1298,8 @@ namespace TemuKJD.PDDForms.ProductSelectForms string productTitle = ""; - if (dbProd.product_get_type_text == "厂商直采" || dbProd.product_get_type_text == "1688厂家" || dbProd.product_get_type_text == "微信小店") + if (dbProd.product_get_type_text == "厂商直采" || dbProd.product_get_type_text == "1688厂家" || + dbProd.product_get_type_text == "微信小店" || dbProd.product_get_type_text == "1688外部数据") { if (dbProd.product_get_type_text == "微信小店" && dbProd.wx_cat_leaf != null) @@ -1365,6 +1366,13 @@ namespace TemuKJD.PDDForms.ProductSelectForms mainImgLst3 = wxClientProdInfo.info.head_img.Take(3).ToList(); productTitle = wxClientProdInfo.info.title; } + if (dbProd.product_get_type_text == "1688外部数据") + { + string convertRst = ""; + var pInfo = new PDDProdFormConverter()._1688OutToPddConvert(out convertRst, dbProd); + mainImgLst3 = pInfo.detail.galleries.Where(g => g.type == 1).Take(3).Select(s => s.url).ToList(); + productTitle = pInfo.detail.goods_name; + } //bool is404 = false; foreach (var img in mainImgLst3) @@ -1482,7 +1490,8 @@ namespace TemuKJD.PDDForms.ProductSelectForms } mdyWxCat: - if ((dbProd.product_get_type_text == "厂商直采" || dbProd.product_get_type_text == "1688厂家" || dbProd.product_get_type_text == "微信小店") + if ((dbProd.product_get_type_text == "厂商直采" || dbProd.product_get_type_text == "1688厂家" || + dbProd.product_get_type_text == "微信小店" || dbProd.product_get_type_text == "1688外部数据") && dbProd.wx_cat_1 != null && dbProd.wx_cat_leaf != null) { var row = dgvDbProduct.Rows.Cast().FirstOrDefault(r => r.Cells["col_spu_id"].Value.ParseToString() == dbProd.spu_id); diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs index 141ba07..f8e22a5 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs @@ -289,8 +289,6 @@ namespace TemuKJD.PDDForms.ShopForms { Task.Run(() => { - //CheckShopListLogin(new string[] { (obj as DouShopLoginInfo).LoginName }); - StartUp.SaveLocalShopLoginInfo(); Invoke(new Action(() => { btnRefreshShop_Click(null, null); @@ -357,7 +355,6 @@ namespace TemuKJD.PDDForms.ShopForms } else GlobalConfig.ShopLoginList.Add(shop); - StartUp.SaveLocalShopLoginInfo(); ShopBLL.AddServerShop(shop); } } @@ -642,7 +639,6 @@ namespace TemuKJD.PDDForms.ShopForms } } UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie - StartUp.SaveLocalShopLoginInfo(); } if (this.Created && isShowProgress) { @@ -885,7 +881,6 @@ namespace TemuKJD.PDDForms.ShopForms return; DeleteShop(e.RowIndex); DelServerDouShop(shop.LoginName); - StartUp.SaveLocalShopLoginInfo(); break; case "编辑": PDDShopAddEditForm editForm = new PDDShopAddEditForm(shop); diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs index 9ca7330..0146cb8 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs @@ -277,7 +277,6 @@ namespace TemuKJD.PDDForms.ShopForms s.LastRefreshDate = DateTime.Now.ToString("yyyyMMdd"); s.pddid = ""; // 网页登录无拼多多id(pddid) } - StartUp.SaveLocalShopLoginInfo(); // 店铺保存到本地 PDDShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie OnSaveComplete(shop); @@ -1282,7 +1281,6 @@ function fireKeyEvent(el, evtType, keyCode) { if (shop != null) { shop.DictMultiCookies.Remove(cmbMultiCookieName.Text); - StartUp.SaveLocalShopLoginInfo(); InitMultiLoginCookies(); } diff --git a/TEMUKJD/StartUp.cs b/TEMUKJD/StartUp.cs index a8a9f40..51c7ca8 100644 --- a/TEMUKJD/StartUp.cs +++ b/TEMUKJD/StartUp.cs @@ -436,20 +436,6 @@ namespace TemuKJD #endregion } - public static void SaveLocalShopLoginInfo() - { - //ConcurrentList shopLoginListCopy = - // JsonHelper.DeserializeJsonToObject>(JsonHelper.SerializeObject(GlobalConfig.ShopLoginList)); - //shopLoginListCopy.AddRange(GlobalConfig.DouShopLoginOtherUserShopList); - //// 替换掉密码,cookie等敏感参数 - //foreach (var shop in shopLoginListCopy) - //{ - // shop.Password = ""; - // shop.Cookies = ""; - //} - //NaiBa.Util.Helper.ConfigHelper.SaveConfig("dou_shop_login", shopLoginListCopy); - } - public static void SaveGlobalSettings() { NaiBa.Util.Helper.ConfigHelper.SaveConfig("global_settings", GlobalConfig.GlobalSettings); diff --git a/TEMUKJD/ToolForms/Get1688ProductForm.Designer.cs b/TEMUKJD/ToolForms/Get1688ProductForm.Designer.cs index d8ae880..00000d4 100644 --- a/TEMUKJD/ToolForms/Get1688ProductForm.Designer.cs +++ b/TEMUKJD/ToolForms/Get1688ProductForm.Designer.cs @@ -35,6 +35,11 @@ namespace TemuKJD.ToolForms System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); this.line1 = new DevComponents.DotNetBar.Controls.Line(); this.label2 = new System.Windows.Forms.Label(); this.btnImportCookie = new DevComponents.DotNetBar.PanelEx(); @@ -90,8 +95,24 @@ namespace TemuKJD.ToolForms this.colMsg = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.tabPage3 = new System.Windows.Forms.TabPage(); this.panel1 = new System.Windows.Forms.Panel(); + this.tabPage4 = new System.Windows.Forms.TabPage(); + this.panel2 = new System.Windows.Forms.Panel(); + this.dgvOut1688Prod = new TemuKJD.UserComponent.DataGridViewEx(); this.chkSkip = new TemuKJD.UserComponent.UcCheckBox(this.components); this.btnGetDetail = new DevComponents.DotNetBar.PanelEx(); + this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colFileName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutSupplierId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutSupplierName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutGoodsId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutGoodsName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutCat = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutImgUrl = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutImg = new System.Windows.Forms.DataGridViewImageColumn(); + this.colOutPrice = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOutStock = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewLinkColumn1 = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colOutMsg = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.pnlMultiLogin.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); @@ -106,6 +127,9 @@ namespace TemuKJD.ToolForms ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).BeginInit(); this.tabPage3.SuspendLayout(); + this.tabPage4.SuspendLayout(); + this.panel2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvOut1688Prod)).BeginInit(); this.SuspendLayout(); // // line1 @@ -257,9 +281,9 @@ namespace TemuKJD.ToolForms this.btnSaveDb.Cursor = System.Windows.Forms.Cursors.Hand; this.btnSaveDb.DisabledBackColor = System.Drawing.Color.Empty; this.btnSaveDb.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnSaveDb.Location = new System.Drawing.Point(1321, 58); + this.btnSaveDb.Location = new System.Drawing.Point(1221, 58); this.btnSaveDb.Name = "btnSaveDb"; - this.btnSaveDb.Size = new System.Drawing.Size(76, 23); + this.btnSaveDb.Size = new System.Drawing.Size(86, 23); this.btnSaveDb.Style.Alignment = System.Drawing.StringAlignment.Center; this.btnSaveDb.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.btnSaveDb.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -281,9 +305,9 @@ namespace TemuKJD.ToolForms this.btnStopStop.CanvasColor = System.Drawing.SystemColors.Control; this.btnStopStop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnStopStop.DisabledBackColor = System.Drawing.Color.Empty; - this.btnStopStop.Location = new System.Drawing.Point(1071, 58); + this.btnStopStop.Location = new System.Drawing.Point(1311, 58); this.btnStopStop.Name = "btnStopStop"; - this.btnStopStop.Size = new System.Drawing.Size(76, 23); + this.btnStopStop.Size = new System.Drawing.Size(86, 23); this.btnStopStop.Style.Alignment = System.Drawing.StringAlignment.Center; this.btnStopStop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); this.btnStopStop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); @@ -297,7 +321,7 @@ namespace TemuKJD.ToolForms this.btnStopStop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.btnStopStop.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; this.btnStopStop.TabIndex = 853; - this.btnStopStop.Text = "停止查询"; + this.btnStopStop.Text = "停止查询/入库"; this.btnStopStop.Click += new System.EventHandler(this.btnStopStop_Click); // // chkOverride @@ -376,9 +400,9 @@ namespace TemuKJD.ToolForms this.btnGetGoods.Cursor = System.Windows.Forms.Cursors.Hand; this.btnGetGoods.DisabledBackColor = System.Drawing.Color.Empty; this.btnGetGoods.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnGetGoods.Location = new System.Drawing.Point(1151, 58); + this.btnGetGoods.Location = new System.Drawing.Point(1041, 58); this.btnGetGoods.Name = "btnGetGoods"; - this.btnGetGoods.Size = new System.Drawing.Size(82, 23); + this.btnGetGoods.Size = new System.Drawing.Size(86, 23); this.btnGetGoods.Style.Alignment = System.Drawing.StringAlignment.Center; this.btnGetGoods.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.btnGetGoods.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -544,6 +568,7 @@ namespace TemuKJD.ToolForms this.splitContainer1.Panel2.BackColor = System.Drawing.Color.White; this.splitContainer1.Panel2.Controls.Add(this.chkSkip); this.splitContainer1.Panel2.Controls.Add(this.btnGetDetail); + this.splitContainer1.Panel2.Controls.Add(this.btnStopStop); this.splitContainer1.Panel2.Controls.Add(this.btnExportCookie); this.splitContainer1.Panel2.Controls.Add(this.label7); this.splitContainer1.Panel2.Controls.Add(this.txtWaitSeconds); @@ -553,7 +578,6 @@ namespace TemuKJD.ToolForms this.splitContainer1.Panel2.Controls.Add(this.txtTitle); this.splitContainer1.Panel2.Controls.Add(this.btnSearchTitle); this.splitContainer1.Panel2.Controls.Add(this.chkOverride); - this.splitContainer1.Panel2.Controls.Add(this.btnStopStop); this.splitContainer1.Panel2.Controls.Add(this.btnSaveDb); this.splitContainer1.Panel2.Controls.Add(this.statusBar); this.splitContainer1.Panel2.Controls.Add(this.label4); @@ -567,7 +591,7 @@ namespace TemuKJD.ToolForms this.splitContainer1.Panel2.Controls.Add(this.label2); this.splitContainer1.Panel2.Controls.Add(this.line1); this.splitContainer1.Size = new System.Drawing.Size(1404, 561); - this.splitContainer1.SplitterDistance = 465; + this.splitContainer1.SplitterDistance = 469; this.splitContainer1.SplitterWidth = 3; this.splitContainer1.TabIndex = 4; // @@ -578,17 +602,19 @@ namespace TemuKJD.ToolForms this.ucTabControlMetro1.Controls.Add(this.tabPage1); this.ucTabControlMetro1.Controls.Add(this.tabPage2); this.ucTabControlMetro1.Controls.Add(this.tabPage3); + this.ucTabControlMetro1.Controls.Add(this.tabPage4); this.ucTabControlMetro1.Dock = System.Windows.Forms.DockStyle.Fill; this.ucTabControlMetro1.ItemSize = new System.Drawing.Size(72, 24); this.ucTabControlMetro1.Location = new System.Drawing.Point(0, 0); this.ucTabControlMetro1.Name = "ucTabControlMetro1"; this.ucTabControlMetro1.SelectedIndex = 0; this.ucTabControlMetro1.ShowCloseButton = false; - this.ucTabControlMetro1.Size = new System.Drawing.Size(1404, 465); + this.ucTabControlMetro1.Size = new System.Drawing.Size(1404, 469); this.ucTabControlMetro1.TabIndex = 462; this.ucTabControlMetro1.TabSelectColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucTabControlMetro1.TabSelectTextColor = System.Drawing.Color.Gray; this.ucTabControlMetro1.TabUnSelectTextColor = System.Drawing.Color.White; + this.ucTabControlMetro1.SelectedIndexChanged += new System.EventHandler(this.ucTabControlMetro1_SelectedIndexChanged); // // tabPage1 // @@ -597,7 +623,7 @@ namespace TemuKJD.ToolForms this.tabPage1.Margin = new System.Windows.Forms.Padding(5); this.tabPage1.Name = "tabPage1"; this.tabPage1.Padding = new System.Windows.Forms.Padding(3); - this.tabPage1.Size = new System.Drawing.Size(1396, 433); + this.tabPage1.Size = new System.Drawing.Size(1396, 437); this.tabPage1.TabIndex = 0; this.tabPage1.Text = "商品页面"; this.tabPage1.UseVisualStyleBackColor = true; @@ -616,7 +642,7 @@ namespace TemuKJD.ToolForms this.splitContainer2.Panel1.Controls.Add(this.btnNext); this.splitContainer2.Panel1.Controls.Add(this.btnPrev); this.splitContainer2.Panel1.Controls.Add(this.txtAddress); - this.splitContainer2.Size = new System.Drawing.Size(1390, 427); + this.splitContainer2.Size = new System.Drawing.Size(1390, 431); this.splitContainer2.SplitterDistance = 26; this.splitContainer2.TabIndex = 6; // @@ -658,7 +684,7 @@ namespace TemuKJD.ToolForms this.tabPage2.Location = new System.Drawing.Point(4, 28); this.tabPage2.Name = "tabPage2"; this.tabPage2.Padding = new System.Windows.Forms.Padding(3); - this.tabPage2.Size = new System.Drawing.Size(1396, 433); + this.tabPage2.Size = new System.Drawing.Size(1396, 436); this.tabPage2.TabIndex = 1; this.tabPage2.Text = "采集商品列表"; this.tabPage2.UseVisualStyleBackColor = true; @@ -667,7 +693,7 @@ namespace TemuKJD.ToolForms // this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbLoading.Location = new System.Drawing.Point(673, 189); + this.pbLoading.Location = new System.Drawing.Point(673, 191); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -718,7 +744,7 @@ namespace TemuKJD.ToolForms this.dgvProduct.Name = "dgvProduct"; this.dgvProduct.ReadOnly = true; this.dgvProduct.RowTemplate.Height = 23; - this.dgvProduct.Size = new System.Drawing.Size(1390, 427); + this.dgvProduct.Size = new System.Drawing.Size(1390, 430); this.dgvProduct.TabIndex = 7; this.dgvProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProduct_CellContentClick); // @@ -860,7 +886,7 @@ namespace TemuKJD.ToolForms this.tabPage3.Location = new System.Drawing.Point(4, 28); this.tabPage3.Name = "tabPage3"; this.tabPage3.Padding = new System.Windows.Forms.Padding(3); - this.tabPage3.Size = new System.Drawing.Size(1396, 432); + this.tabPage3.Size = new System.Drawing.Size(1396, 436); this.tabPage3.TabIndex = 2; this.tabPage3.Text = "1688地址管理"; this.tabPage3.UseVisualStyleBackColor = true; @@ -870,9 +896,71 @@ namespace TemuKJD.ToolForms this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; this.panel1.Location = new System.Drawing.Point(3, 3); this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(1390, 426); + this.panel1.Size = new System.Drawing.Size(1390, 430); this.panel1.TabIndex = 0; // + // tabPage4 + // + this.tabPage4.Controls.Add(this.panel2); + this.tabPage4.Location = new System.Drawing.Point(4, 28); + this.tabPage4.Name = "tabPage4"; + this.tabPage4.Padding = new System.Windows.Forms.Padding(3); + this.tabPage4.Size = new System.Drawing.Size(1396, 437); + this.tabPage4.TabIndex = 3; + this.tabPage4.Text = "1688外部数据"; + this.tabPage4.UseVisualStyleBackColor = true; + // + // panel2 + // + this.panel2.Controls.Add(this.dgvOut1688Prod); + this.panel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel2.Location = new System.Drawing.Point(3, 3); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(1390, 431); + this.panel2.TabIndex = 1; + // + // dgvOut1688Prod + // + this.dgvOut1688Prod.AllowUserToAddRows = false; + this.dgvOut1688Prod.AllowUserToDeleteRows = false; + dataGridViewCellStyle6.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvOut1688Prod.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle6; + this.dgvOut1688Prod.AutoRowNumber = true; + this.dgvOut1688Prod.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; + this.dgvOut1688Prod.BackgroundColor = System.Drawing.Color.White; + this.dgvOut1688Prod.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle7.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvOut1688Prod.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7; + this.dgvOut1688Prod.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvOut1688Prod.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewCheckBoxColumn1, + this.colFileName, + this.colOutSupplierId, + this.colOutSupplierName, + this.colOutGoodsId, + this.colOutGoodsName, + this.colOutCat, + this.colOutImgUrl, + this.colOutImg, + this.colOutPrice, + this.colOutStock, + this.dataGridViewLinkColumn1, + this.colOutMsg}); + this.dgvOut1688Prod.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvOut1688Prod.Location = new System.Drawing.Point(0, 0); + this.dgvOut1688Prod.MultiSelectCheckBox = true; + this.dgvOut1688Prod.Name = "dgvOut1688Prod"; + this.dgvOut1688Prod.ReadOnly = true; + this.dgvOut1688Prod.RowTemplate.Height = 23; + this.dgvOut1688Prod.Size = new System.Drawing.Size(1390, 431); + this.dgvOut1688Prod.TabIndex = 839; + // // chkSkip // this.chkSkip.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); @@ -893,9 +981,9 @@ namespace TemuKJD.ToolForms this.btnGetDetail.Cursor = System.Windows.Forms.Cursors.Hand; this.btnGetDetail.DisabledBackColor = System.Drawing.Color.Empty; this.btnGetDetail.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnGetDetail.Location = new System.Drawing.Point(1236, 58); + this.btnGetDetail.Location = new System.Drawing.Point(1131, 58); this.btnGetDetail.Name = "btnGetDetail"; - this.btnGetDetail.Size = new System.Drawing.Size(82, 23); + this.btnGetDetail.Size = new System.Drawing.Size(86, 23); this.btnGetDetail.Style.Alignment = System.Drawing.StringAlignment.Center; this.btnGetDetail.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.btnGetDetail.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -911,6 +999,111 @@ namespace TemuKJD.ToolForms this.btnGetDetail.Text = "采集商品详情"; this.btnGetDetail.Click += new System.EventHandler(this.btnGetDetail_Click); // + // dataGridViewCheckBoxColumn1 + // + this.dataGridViewCheckBoxColumn1.FillWeight = 26F; + this.dataGridViewCheckBoxColumn1.HeaderText = "选"; + this.dataGridViewCheckBoxColumn1.Name = "dataGridViewCheckBoxColumn1"; + this.dataGridViewCheckBoxColumn1.ReadOnly = true; + this.dataGridViewCheckBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewCheckBoxColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // colFileName + // + this.colFileName.FillWeight = 150F; + this.colFileName.HeaderText = "文件名称"; + this.colFileName.Name = "colFileName"; + this.colFileName.ReadOnly = true; + // + // colOutSupplierId + // + this.colOutSupplierId.FillWeight = 50F; + this.colOutSupplierId.HeaderText = "供应商Id"; + this.colOutSupplierId.Name = "colOutSupplierId"; + this.colOutSupplierId.ReadOnly = true; + // + // colOutSupplierName + // + this.colOutSupplierName.FillWeight = 90F; + this.colOutSupplierName.HeaderText = "供应商名称"; + this.colOutSupplierName.Name = "colOutSupplierName"; + this.colOutSupplierName.ReadOnly = true; + // + // colOutGoodsId + // + this.colOutGoodsId.FillWeight = 50F; + this.colOutGoodsId.HeaderText = "商品Id"; + this.colOutGoodsId.Name = "colOutGoodsId"; + this.colOutGoodsId.ReadOnly = true; + // + // colOutGoodsName + // + dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOutGoodsName.DefaultCellStyle = dataGridViewCellStyle8; + this.colOutGoodsName.FillWeight = 150F; + this.colOutGoodsName.HeaderText = "商品名称"; + this.colOutGoodsName.Name = "colOutGoodsName"; + this.colOutGoodsName.ReadOnly = true; + // + // colOutCat + // + this.colOutCat.FillWeight = 40F; + this.colOutCat.HeaderText = "商品类目"; + this.colOutCat.Name = "colOutCat"; + this.colOutCat.ReadOnly = true; + // + // colOutImgUrl + // + this.colOutImgUrl.FillWeight = 300F; + this.colOutImgUrl.HeaderText = "图片路径"; + this.colOutImgUrl.Name = "colOutImgUrl"; + this.colOutImgUrl.ReadOnly = true; + this.colOutImgUrl.Visible = false; + // + // colOutImg + // + this.colOutImg.FillWeight = 40F; + this.colOutImg.HeaderText = "图片"; + this.colOutImg.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom; + this.colOutImg.Name = "colOutImg"; + this.colOutImg.ReadOnly = true; + this.colOutImg.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colOutImg.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // colOutPrice + // + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOutPrice.DefaultCellStyle = dataGridViewCellStyle9; + this.colOutPrice.FillWeight = 40F; + this.colOutPrice.HeaderText = "供货价"; + this.colOutPrice.Name = "colOutPrice"; + this.colOutPrice.ReadOnly = true; + // + // colOutStock + // + this.colOutStock.FillWeight = 50F; + this.colOutStock.HeaderText = "库存"; + this.colOutStock.Name = "colOutStock"; + this.colOutStock.ReadOnly = true; + this.colOutStock.Visible = false; + // + // dataGridViewLinkColumn1 + // + this.dataGridViewLinkColumn1.FillWeight = 35F; + this.dataGridViewLinkColumn1.HeaderText = "删除"; + this.dataGridViewLinkColumn1.Name = "dataGridViewLinkColumn1"; + this.dataGridViewLinkColumn1.ReadOnly = true; + this.dataGridViewLinkColumn1.Visible = false; + // + // colOutMsg + // + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOutMsg.DefaultCellStyle = dataGridViewCellStyle10; + this.colOutMsg.FillWeight = 160F; + this.colOutMsg.HeaderText = "操作结果"; + this.colOutMsg.Name = "colOutMsg"; + this.colOutMsg.ReadOnly = true; + // // Get1688ProductForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -937,6 +1130,9 @@ namespace TemuKJD.ToolForms ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).EndInit(); this.tabPage3.ResumeLayout(false); + this.tabPage4.ResumeLayout(false); + this.panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgvOut1688Prod)).EndInit(); this.ResumeLayout(false); } @@ -1000,5 +1196,21 @@ namespace TemuKJD.ToolForms private System.Windows.Forms.DataGridViewTextBoxColumn colMsg; private System.Windows.Forms.TabPage tabPage3; private System.Windows.Forms.Panel panel1; + private System.Windows.Forms.TabPage tabPage4; + private System.Windows.Forms.Panel panel2; + private UserComponent.DataGridViewEx dgvOut1688Prod; + private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn colFileName; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutSupplierId; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutSupplierName; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutGoodsId; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutGoodsName; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutCat; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutImgUrl; + private System.Windows.Forms.DataGridViewImageColumn colOutImg; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutPrice; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutStock; + private System.Windows.Forms.DataGridViewLinkColumn dataGridViewLinkColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn colOutMsg; } } \ No newline at end of file diff --git a/TEMUKJD/ToolForms/Get1688ProductForm.cs b/TEMUKJD/ToolForms/Get1688ProductForm.cs index 52efc73..deb7937 100644 --- a/TEMUKJD/ToolForms/Get1688ProductForm.cs +++ b/TEMUKJD/ToolForms/Get1688ProductForm.cs @@ -16,6 +16,7 @@ using System.ComponentModel; using System.Data; using System.Drawing; using System.Globalization; +using System.IO; using System.Linq; using System.Text; using System.Text.RegularExpressions; @@ -48,7 +49,7 @@ namespace TemuKJD.ToolForms private string currentGet1688ListProductData = ""; private string appVersion = ""; private string currentSupplierId = ""; - int getDetailWait = 1; + int getDetailWait = 5; int pageStart = 1; int pageEnd = 9999; ConcurrentList<_1688OneProductListInfo> lst1688OneProductListInfo = new ConcurrentList<_1688OneProductListInfo>(); @@ -63,6 +64,7 @@ namespace TemuKJD.ToolForms this.splitContainer1.SplitterDistance = 472; this.dgvProduct.AddSelectorColumn("colCheck"); this.dgvProduct.AddImgColumn("colImg", "colImgUrl"); + this.dgvOut1688Prod.AddImgColumn("colOutImg", "colOutImgUrl"); lst1688cookie = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("1688_cookies"); if (lst1688cookie == null) @@ -227,9 +229,15 @@ namespace TemuKJD.ToolForms Task.Run(() => { GetCurrent1688SearchData(postData, responseData, request); }); } + //if (url.Contains("https://detail.1688.com/offer/")) + //{ + // Task.Run(() => { currentDetailData = responseData; }); + //} if (url.Contains("https://detail.1688.com/offer/")) { - Task.Run(() => { currentDetailData = responseData; }); + var dataTmp = responseData; + if (dataTmp.Contains("specId")) + Task.Run(() => { currentDetailData = dataTmp; }); } if (responseData.Contains("赛龙宠物")) @@ -621,24 +629,34 @@ namespace TemuKJD.ToolForms currentDetailData = ""; //var get1688DetailRst = Get1688DetailData(shop, prod); string url = "https://detail.1688.com/offer/" + prod.offerId + ".html?fxcv=2&sk=consign"; + //string url = "https://detail.1688.com/offer/" + prod.offerId + ".html"; this.cefWebBrowser.Load(url); // 额外休眠 Thread.Sleep(Math.Max(3, getDetailWait) * 1000); + for (int i = 0; i < 20; i++) + { + if (string.IsNullOrEmpty(currentDetailData)) + { + Thread.Sleep(500); + } + } string get1688DetailRst = currentDetailData; //Invoke(new Action(() => { this.ucTabControlMetro1.SelectedIndex = 0; })); - if (!get1688DetailRst.Contains("\"success\":true")) + if (!get1688DetailRst.Contains("\"success\":true") && !get1688DetailRst.Contains("\"specId\":\"")) { if (get1688DetailRst.Contains("___tmd___") || get1688DetailRst.Contains("___TMD___")) { - Invoke(new Action(() => { this.ucTabControlMetro1.SelectedIndex = 0; })); + //Invoke(new Action(() => { this.ucTabControlMetro1.SelectedIndex = 0; })); Thread.Sleep(5000); } var errMsg = BaseRegex.GetStringJson(ref get1688DetailRst, "message"); if (string.IsNullOrEmpty(errMsg)) errMsg = get1688DetailRst; + if (errMsg.Length > 500) + errMsg = errMsg.Substring(0, 500); prod.getProductMsg = "采集失败 " + errMsg; Invoke(new Action(() => { @@ -784,169 +802,176 @@ namespace TemuKJD.ToolForms private void btnSaveDb_Click(object sender, EventArgs e) { - //"&product_get_type=" + HttpUtility.UrlEncode("厂商直采", Encoding.UTF8); - List cookieList = CEFBrowser.GetCookieList(".scm121.com", cefWebBrowser.GetCookieManager(null)); - var shop = new ShopLoginInfo(); - shop.Cookies = JsonHelper.SerializeObject(cookieList); - - List rowLst = new List(); - rowLst.AddRange(dgvProduct.Rows.Cast().Where(r => r.Cells["colCheck"].Value.ParseToBool() == true)); - - if (cancellationTokenSource != null && cancellationTokenSource.IsCancellationRequested) - cancellationTokenSource.Cancel(); - cancellationTokenSource = new CancellationTokenSource(); - - this.pbLoading.Visible = true; - var t = Task.Run(() => + if (btnSaveDb.Text == "商品入库") { - int success = 0; - int total = rowLst.Count; - foreach (var row in rowLst) + //"&product_get_type=" + HttpUtility.UrlEncode("厂商直采", Encoding.UTF8); + List cookieList = CEFBrowser.GetCookieList(".scm121.com", cefWebBrowser.GetCookieManager(null)); + var shop = new ShopLoginInfo(); + shop.Cookies = JsonHelper.SerializeObject(cookieList); + + List rowLst = new List(); + rowLst.AddRange(dgvProduct.Rows.Cast().Where(r => r.Cells["colCheck"].Value.ParseToBool() == true)); + + if (cancellationTokenSource != null && cancellationTokenSource.IsCancellationRequested) + cancellationTokenSource.Cancel(); + cancellationTokenSource = new CancellationTokenSource(); + + this.pbLoading.Visible = true; + var t = Task.Run(() => { - if (cancellationTokenSource.IsCancellationRequested) - break; - - Invoke(new Action(() => + int success = 0; + int total = rowLst.Count; + foreach (var row in rowLst) { - row.Cells["colMsg"].Value = ""; - })); + if (cancellationTokenSource.IsCancellationRequested) + break; - Invoke(new Action(() => - { - this.statusBar.lblTaskStatus.Text = "正在入库表格第 " + (row.Index + 1) + " 行数据 成功 " + success + " 条"; - })); - - var prodId = row.Cells["colProductId"].Value.ParseToString(); - var prod = lst1688OneProductListInfo.FirstOrDefault(c => c.offerId.ParseToString() == prodId); - if (prod == null || prod.dbProduct == null || prod.dbProduct.product_json.Length < 10) - continue; - var dbProd = prod.dbProduct; - - if (!chkOverride.Checked && !prod.getProductMsg.IsNullOrEmpty()) - { - if (prod.getProductMsg.Contains("已存在相同Id商品") || prod.getProductMsg.Contains("商品覆盖成功") || prod.getProductMsg.Contains("商品入库成功")) - { - //已存在相同Id商品,跳过 - //商品覆盖成功! - //商品入库成功! - prod.getProductMsg = "已存在相同Id商品,跳过"; - Invoke(new Action(() => - { - row.Cells["colMsg"].Value = prod.getProductMsg; - })); - success++; - continue; - } - } - - Thread.Sleep(25); - if (row.Index % 20 == 0) - NaiBa.Util.Helper.ConfigHelper.SaveConfig("1688_product_list_" + MainForm.ProcessCount, lst1688OneProductListInfo); - - bool isExist = false; - var existUrl = BaseClass.BuildPDDObjString("product/get_product_spu_id_list"); - string existData = UserLogin.GetSignaturex() + "&search_spu_ids=" + prod.offerId; - string html = GetHtml.PostUtf8(existUrl, existData); - if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) - html = GetHtml.PostUtf8(existUrl, existData); - if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) - { Invoke(new Action(() => { - row.Cells["colMsg"].Value = "入库失败,产品数据库连接失败"; + row.Cells["colMsg"].Value = ""; })); - continue; - } - else - { - if (html.Contains("\"data\":[") && !html.Contains("\"data\":[]")) - isExist = true; - } - //var SetPartnerSpuRst = ""; - var url = BaseClass.BuildPDDObjString("product/add_product"); - if (isExist) - { - if (chkOverride.Checked) + Invoke(new Action(() => { - url = BaseClass.BuildPDDObjString("product/mdy_product"); + this.statusBar.lblTaskStatus.Text = "正在入库表格第 " + (row.Index + 1) + " 行数据 成功 " + success + " 条"; + })); + + var prodId = row.Cells["colProductId"].Value.ParseToString(); + var prod = lst1688OneProductListInfo.FirstOrDefault(c => c.offerId.ParseToString() == prodId); + if (prod == null || prod.dbProduct == null || prod.dbProduct.product_json.Length < 10) + continue; + var dbProd = prod.dbProduct; + + if (!chkOverride.Checked && !prod.getProductMsg.IsNullOrEmpty()) + { + if (prod.getProductMsg.Contains("已存在相同Id商品") || prod.getProductMsg.Contains("商品覆盖成功") || prod.getProductMsg.Contains("商品入库成功")) + { + //已存在相同Id商品,跳过 + //商品覆盖成功! + //商品入库成功! + prod.getProductMsg = "已存在相同Id商品,跳过"; + Invoke(new Action(() => + { + row.Cells["colMsg"].Value = prod.getProductMsg; + })); + success++; + continue; + } + } + + Thread.Sleep(25); + if (row.Index % 20 == 0) + NaiBa.Util.Helper.ConfigHelper.SaveConfig("1688_product_list_" + MainForm.ProcessCount, lst1688OneProductListInfo); + + bool isExist = false; + var existUrl = BaseClass.BuildPDDObjString("product/get_product_spu_id_list"); + string existData = UserLogin.GetSignaturex() + "&search_spu_ids=" + prod.offerId; + string html = GetHtml.PostUtf8(existUrl, existData); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(existUrl, existData); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + { + Invoke(new Action(() => + { + row.Cells["colMsg"].Value = "入库失败,产品数据库连接失败"; + })); + continue; } else { - //入库成功 已存在相同id商品 - prod.getProductMsg = "已存在相同SkuId,跳过"; + if (html.Contains("\"data\":[") && !html.Contains("\"data\":[]")) + isExist = true; + } + + //var SetPartnerSpuRst = ""; + var url = BaseClass.BuildPDDObjString("product/add_product"); + if (isExist) + { + if (chkOverride.Checked) + { + url = BaseClass.BuildPDDObjString("product/mdy_product"); + } + else + { + //入库成功 已存在相同id商品 + prod.getProductMsg = "已存在相同id商品,跳过"; + Invoke(new Action(() => + { + row.Cells["colMsg"].Value = prod.getProductMsg; + })); + success++; + continue; + } + } + + var data = Work.UserLogin.GetSignaturex() + + "&from_shop_id=" + prod.dbProduct.from_shop_id + + "&from_shop_name=" + prod.dbProduct.from_shop_name + + //"&offline_supplier_id=" + prod.dbProduct.offline_supplier_id + + //"&offline_supplier_name=" + prod.dbProduct.offline_supplier_name + + "&spu_id=" + prod.dbProduct.spu_id.ParseToString() + + "&skc_id=" + prod.dbProduct.skc_id.ParseToString() + + "&price_text=" + prod.dbProduct.price_text + + "&ext_code=" + HttpUtility.UrlEncode(prod.dbProduct.ext_code, Encoding.UTF8) + + "&product_name=" + HttpUtility.UrlEncode(prod.dbProduct.product_name, Encoding.UTF8) + + "&product_json=" + HttpUtility.UrlEncode(dbProd.product_json, Encoding.UTF8) + + "&size_json=" + HttpUtility.UrlEncode(dbProd.size_json, Encoding.UTF8) + + "&sale_count=" + dbProd.sale_count + + "&sale_count_text=" + HttpUtility.UrlEncode(dbProd.sale_count_text, Encoding.UTF8) + + "&main_img=" + HttpUtility.UrlEncode(dbProd.main_img, Encoding.UTF8) + + "&wx_safe_status=" + HttpUtility.UrlEncode("未校验", Encoding.UTF8) + + "&product_get_type=" + HttpUtility.UrlEncode("1688厂家", Encoding.UTF8); + if (!isExist) + { + data += "&main_cat_id=" + prod.dbProduct.main_cat_id + + "&main_cat_name=" + HttpUtility.UrlEncode(prod.dbProduct.main_cat_name.ParseToString(), Encoding.UTF8) + + "&cat_id=" + prod.dbProduct.cat_id + + "&cat_name=" + HttpUtility.UrlEncode((prod.dbProduct.cat_name ?? prod.dbProduct.cat_name).ParseToString(), Encoding.UTF8); + } + if (1 == 1) + { + //1688没有分销,但是聚水潭上货条件要判断1是否类目识别 2是否服务端加密 3是否分销 + //作为1688和聚水潭一致的上货必备条件,此处1688分销直接设置为1 + prod.dbProduct.distribution_set = 1; + data += "&distribution_set=1"; + } + + 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")) + { + string msg = "商品入库失败!请检查网络连接:" + BaseRegex.GetStringJson(ref html, "msg"); + Invoke(new Action(() => + { + row.Cells["colMsg"].Value = msg; + })); + } + else + { + success++; + prod.getProductMsg = "商品入库成功!"; + if (url == BaseClass.BuildPDDObjString("product/mdy_product")) + prod.getProductMsg = "商品覆盖成功!"; Invoke(new Action(() => { row.Cells["colMsg"].Value = prod.getProductMsg; })); - success++; - continue; } } + NaiBa.Util.Helper.ConfigHelper.SaveConfig("1688_product_list_" + MainForm.ProcessCount, lst1688OneProductListInfo); - var data = Work.UserLogin.GetSignaturex() + - "&from_shop_id=" + prod.dbProduct.from_shop_id + - "&from_shop_name=" + prod.dbProduct.from_shop_name + - //"&offline_supplier_id=" + prod.dbProduct.offline_supplier_id + - //"&offline_supplier_name=" + prod.dbProduct.offline_supplier_name + - "&spu_id=" + prod.dbProduct.spu_id.ParseToString() + - "&skc_id=" + prod.dbProduct.skc_id.ParseToString() + - "&price_text=" + prod.dbProduct.price_text + - "&ext_code=" + HttpUtility.UrlEncode(prod.dbProduct.ext_code, Encoding.UTF8) + - "&product_name=" + HttpUtility.UrlEncode(prod.dbProduct.product_name, Encoding.UTF8) + - "&product_json=" + HttpUtility.UrlEncode(dbProd.product_json, Encoding.UTF8) + - "&size_json=" + HttpUtility.UrlEncode(dbProd.size_json, Encoding.UTF8) + - "&sale_count=" + dbProd.sale_count + - "&sale_count_text=" + HttpUtility.UrlEncode(dbProd.sale_count_text, Encoding.UTF8) + - "&main_img=" + HttpUtility.UrlEncode(dbProd.main_img, Encoding.UTF8) + - "&wx_safe_status=" + HttpUtility.UrlEncode("未校验", Encoding.UTF8) + - "&product_get_type=" + HttpUtility.UrlEncode("1688厂家", Encoding.UTF8); - if (!isExist) + Invoke(new Action(() => { - data += "&main_cat_id=" + prod.dbProduct.main_cat_id + - "&main_cat_name=" + HttpUtility.UrlEncode(prod.dbProduct.main_cat_name.ParseToString(), Encoding.UTF8) + - "&cat_id=" + prod.dbProduct.cat_id + - "&cat_name=" + HttpUtility.UrlEncode((prod.dbProduct.cat_name ?? prod.dbProduct.cat_name).ParseToString(), Encoding.UTF8); - } - if (1 == 1) - { - //1688没有分销,但是聚水潭上货条件要判断1是否类目识别 2是否服务端加密 3是否分销 - //作为1688和聚水潭一致的上货必备条件,此处1688分销直接设置为1 - prod.dbProduct.distribution_set = 1; - data += "&distribution_set=1"; - } - - 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")) - { - string msg = "商品入库失败!请检查网络连接:" + BaseRegex.GetStringJson(ref html, "msg"); - Invoke(new Action(() => - { - row.Cells["colMsg"].Value = msg; - })); - } - else - { - success++; - prod.getProductMsg = "商品入库成功!"; - if (url == BaseClass.BuildPDDObjString("product/mdy_product")) - prod.getProductMsg = "商品覆盖成功!"; - Invoke(new Action(() => - { - row.Cells["colMsg"].Value = prod.getProductMsg; - })); - } - } - NaiBa.Util.Helper.ConfigHelper.SaveConfig("1688_product_list_" + MainForm.ProcessCount, lst1688OneProductListInfo); - - Invoke(new Action(() => - { - this.pbLoading.Visible = false; - BaseMsgForm.ShowInfo("商品入库完毕!"); - })); - }, cancellationTokenSource.Token); + this.pbLoading.Visible = false; + BaseMsgForm.ShowInfo("商品入库完毕!"); + })); + }, cancellationTokenSource.Token); + } + else if (btnSaveDb.Text == "外部商品入库") + { + Out1688ProductImport(); + } } @@ -1102,5 +1127,241 @@ namespace TemuKJD.ToolForms if (CancelReturn != null) CancelReturn.Cancel(); } + + private void ucTabControlMetro1_SelectedIndexChanged(object sender, EventArgs e) + { + if (ucTabControlMetro1.SelectedTab.Text == "1688外部数据") + { + btnSaveDb.Text = "外部商品入库"; + btnGetDetail.Visible = false; + btnGetGoods.Visible = false; + } + else + { + btnSaveDb.Text = "商品入库"; + btnGetDetail.Visible = true; + btnGetGoods.Visible = true; + } + } + + void Out1688ProductImport() + { + OpenFileDialog openFileDialog = new OpenFileDialog(); + openFileDialog.Multiselect = true; + // 设置过滤条件,只显示文本文件 + openFileDialog.Filter = "文本文件 (*.txt)|*.txt|All files (*.*)|*.*"; + // 显示对话框并获取结果 + if (openFileDialog.ShowDialog() == DialogResult.OK) + { + var filePathLst = openFileDialog.FileNames.ToList(); + dgvOut1688Prod.Rows.Clear(); + pbLoading.Visible = true; + this.statusBar.pgbTaskProgress.Maximum = filePathLst.Count; + this.statusBar.UpdateProgressBar(0); + Task.Run(() => + { + int successNum = 0; + int failedNum = 0; + foreach (var path in filePathLst) + { + string content = ""; + string rst = ""; + try + { + using (StreamReader sr = new StreamReader(path)) + { + content = sr.ReadToEnd(); + } + rst = Out1688ProdImportOne(path, content); + Thread.Sleep(100); + } + catch (Exception ex) + { + rst = ex.Message; + } + if (string.IsNullOrEmpty(rst)) + successNum++; + else + failedNum++; + Invoke(new Action(() => + { + this.statusBar.UpdateProgressBar(this.statusBar.pgbTaskProgress.Value + 1); + this.statusBar.lblTaskStatus.Text = "正在导入"; + })); + } + Invoke(new Action(() => + { + pbLoading.Visible = false; + this.statusBar.lblTaskStatus.Text = "导入完成"; + BaseMsgForm.ShowInfo("导入完成!"); + })); + }); + } + } + + string Out1688ProdImportOne(string filePath, string content) + { + + DataGridViewRow row = null; + Invoke(new Action(() => + { + var index = dgvOut1688Prod.Rows.Add(false, filePath); + row = dgvOut1688Prod.Rows[index]; + row.Height = 60; + })); + + try + { + + if (string.IsNullOrEmpty(content) || content.Length < 10) + return "商品数据为空"; + + KJDDBProduct dbProd = new KJDDBProduct(); + dbProd.product_get_type_text = "1688外部数据"; + dbProd.product_json = content; + dbProd.size_json = "{}"; + _1688OutProductInfo outProd = JsonHelper.DeserializeJsonToObject<_1688OutProductInfo>(content); + string convertRst = ""; + var prodInfo = new PDDProdFormConverter()._1688OutToPddConvert(out convertRst, dbProd); + if (!string.IsNullOrEmpty(convertRst)) + return convertRst; + + Thread.Sleep(25); + //if (row.Index % 20 == 0) + // NaiBa.Util.Helper.ConfigHelper.SaveConfig("1688_product_list_" + MainForm.ProcessCount, lst1688OneProductListInfo); + + bool isExist = false; + var existUrl = BaseClass.BuildPDDObjString("product/get_product_spu_id_list"); + string existData = UserLogin.GetSignaturex() + "&search_spu_ids=" + outProd.productId; + string html = GetHtml.PostUtf8(existUrl, existData); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(existUrl, existData); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + { + Invoke(new Action(() => + { + row.Cells["colOutMsg"].Value = "入库失败,产品数据库连接失败"; + })); + return "入库失败,产品数据库连接失败"; + } + else + { + if (html.Contains("\"data\":[") && !html.Contains("\"data\":[]")) + isExist = true; + } + + + + var priceMin = (prodInfo.detail.sku?.Min(x => x.multi_price)).ParseToInt() * 0.01m; + var priceMax = (prodInfo.detail.sku?.Max(x => x.multi_price)).ParseToInt() * 0.01m; + + Invoke(new Action(() => + { + row.Cells["colOutSupplierId"].Value = (string.IsNullOrEmpty(outProd.shopId) ? outProd.shopName : outProd.shopId); + row.Cells["colOutSupplierName"].Value = outProd.shopName; + row.Cells["colOutGoodsId"].Value = prodInfo.detail.goods_id.ParseToString(); + row.Cells["colOutGoodsName"].Value = prodInfo.detail.goods_name; + row.Cells["colOutCat"].Value = outProd.categoryName; + row.Cells["colOutImgUrl"].Value = prodInfo.detail.image_url; + row.Cells["colOutPrice"].Value = priceMin + "-" + priceMax; + })); + + + + + //var SetPartnerSpuRst = ""; + var url = BaseClass.BuildPDDObjString("product/add_product"); + if (isExist) + { + if (chkOverride.Checked) + { + url = BaseClass.BuildPDDObjString("product/mdy_product"); + } + else + { + //入库成功 已存在相同id商品 + Invoke(new Action(() => + { + row.Cells["colOutMsg"].Value = "已存在相同商品Id,跳过"; + })); + return ""; + } + } + + if (outProd.minOrderQuaitity.ParseToInt() > 1) + { + //Invoke(new Action(() => + //{ + // row.Cells["colOutMsg"].Value = "起批数量超过1,跳过"; + //})); + //return "起批数量超过1,跳过"; + } + + var data = Work.UserLogin.GetSignaturex() + + "&from_shop_id=" + (string.IsNullOrEmpty(outProd.shopId) ? outProd.shopName : outProd.shopId) + + "&from_shop_name=" + outProd.shopName + + //"&offline_supplier_id=" + prod.dbProduct.offline_supplier_id + + //"&offline_supplier_name=" + prod.dbProduct.offline_supplier_name + + "&spu_id=" + prodInfo.detail.goods_id.ParseToString() + + "&skc_id=" + prodInfo.detail.goods_id.ParseToString() + + "&price_text=" + priceMin + "-" + priceMax + + "&ext_code=" + HttpUtility.UrlEncode(prodInfo.detail.out_goods_sn, Encoding.UTF8) + + "&product_name=" + HttpUtility.UrlEncode(prodInfo.detail.goods_name, Encoding.UTF8) + + "&product_json=" + HttpUtility.UrlEncode(content, Encoding.UTF8) + + "&size_json=" + HttpUtility.UrlEncode(dbProd.size_json, Encoding.UTF8) + + "&sale_count=" + dbProd.sale_count + + "&sale_count_text=" + HttpUtility.UrlEncode(dbProd.sale_count_text, Encoding.UTF8) + + "&main_img=" + HttpUtility.UrlEncode(prodInfo.detail.image_url, Encoding.UTF8) + + "&wx_safe_status=" + HttpUtility.UrlEncode("未校验", Encoding.UTF8) + + "&product_get_type=" + HttpUtility.UrlEncode("1688外部数据", Encoding.UTF8); + if (!isExist) + { + data += "&main_cat_id=" + "" + + "&main_cat_name=" + "" + + "&cat_id=" + outProd.categoryId + + "&cat_name=" + HttpUtility.UrlEncode(outProd.categoryName, Encoding.UTF8); + } + if (1 == 1) + { + //1688没有分销,但是聚水潭上货条件要判断1是否类目识别 2是否服务端加密 3是否分销 + //作为1688和聚水潭一致的上货必备条件,此处1688分销直接设置为1 + //dbProd.distribution_set = 1; + //data += "&distribution_set=1"; + } + + 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")) + { + string msg = "商品入库失败!请检查网络连接:" + BaseRegex.GetStringJson(ref html, "msg"); + Invoke(new Action(() => + { + row.Cells["colOutMsg"].Value = msg; + })); + return msg; + } + else + { + var getProductMsg = "商品入库成功!"; + if (url == BaseClass.BuildPDDObjString("product/mdy_product")) + getProductMsg = "商品覆盖成功!"; + Invoke(new Action(() => + { + row.Cells["colOutMsg"].Value = getProductMsg; + })); + } + //NaiBa.Util.Helper.ConfigHelper.SaveConfig("1688_product_list_" + MainForm.ProcessCount, lst1688OneProductListInfo); + } + catch (Exception ex) + { + Invoke(new Action(() => + { + row.Cells["colOutMsg"].Value = "商品入库失败" + ex.Message; + })); + return "商品入库失败" + ex.Message; + } + return ""; + } } } diff --git a/TEMUKJD/ToolForms/Get1688ProductForm.resx b/TEMUKJD/ToolForms/Get1688ProductForm.resx index 4c69ba7..f7794d5 100644 --- a/TEMUKJD/ToolForms/Get1688ProductForm.resx +++ b/TEMUKJD/ToolForms/Get1688ProductForm.resx @@ -168,4 +168,43 @@ True + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + \ No newline at end of file diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs index 3823c19..855c05b 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.Designer.cs @@ -32,7 +32,10 @@ namespace TemuKJD.WXForms.AdminForms this.components = new System.ComponentModel.Container(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); this.splitContainer5 = new System.Windows.Forms.SplitContainer(); + this.chkCommissionUpdate = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.chkEcWaybill = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkHot = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkShopOptimize = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkChanceProdCollect = new TemuKJD.UserComponent.UcCheckBox(this.components); @@ -71,7 +74,15 @@ namespace TemuKJD.WXForms.AdminForms this.txtNickName = new System.Windows.Forms.TextBox(); this.label40 = new System.Windows.Forms.Label(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.pnlTopUp = new System.Windows.Forms.Panel(); + this.lblUserInfo = new System.Windows.Forms.Label(); + this.panel2 = new System.Windows.Forms.Panel(); + this.numAddTopUp = new System.Windows.Forms.NumericUpDown(); + this.label8 = new System.Windows.Forms.Label(); + this.btnTopUpCancel = new DevComponents.DotNetBar.PanelEx(); + this.btnTopUpOK = new DevComponents.DotNetBar.PanelEx(); this.dgvUser = new TemuKJD.UserComponent.DataGridViewEx(); + this.btnExportShopErp = new DevComponents.DotNetBar.PanelEx(); this.UserIdColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.UserNickNameColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.mobileColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -83,12 +94,11 @@ namespace TemuKJD.WXForms.AdminForms this.colSaLevel = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colSaLevelName = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colAuthority = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.colPoints = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colPoints = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPlus = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colAddShop = new System.Windows.Forms.DataGridViewLinkColumn(); this.editColumn = new System.Windows.Forms.DataGridViewLinkColumn(); this.deleteColumn = new System.Windows.Forms.DataGridViewLinkColumn(); - this.btnExportShopErp = new DevComponents.DotNetBar.PanelEx(); - this.chkEcWaybill = new TemuKJD.UserComponent.UcCheckBox(this.components); ((System.ComponentModel.ISupportInitialize)(this.splitContainer5)).BeginInit(); this.splitContainer5.Panel1.SuspendLayout(); this.splitContainer5.Panel2.SuspendLayout(); @@ -97,6 +107,9 @@ namespace TemuKJD.WXForms.AdminForms this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); this.splitContainer1.SuspendLayout(); + this.pnlTopUp.SuspendLayout(); + this.panel2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numAddTopUp)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvUser)).BeginInit(); this.SuspendLayout(); // @@ -111,6 +124,7 @@ namespace TemuKJD.WXForms.AdminForms // splitContainer5.Panel1 // this.splitContainer5.Panel1.BackColor = System.Drawing.Color.WhiteSmoke; + this.splitContainer5.Panel1.Controls.Add(this.chkCommissionUpdate); this.splitContainer5.Panel1.Controls.Add(this.chkEcWaybill); this.splitContainer5.Panel1.Controls.Add(this.chkHot); this.splitContainer5.Panel1.Controls.Add(this.chkShopOptimize); @@ -159,6 +173,24 @@ namespace TemuKJD.WXForms.AdminForms this.splitContainer5.SplitterWidth = 1; this.splitContainer5.TabIndex = 3; // + // chkCommissionUpdate + // + this.chkCommissionUpdate.Location = new System.Drawing.Point(192, 415); + this.chkCommissionUpdate.Name = "chkCommissionUpdate"; + this.chkCommissionUpdate.Size = new System.Drawing.Size(68, 21); + this.chkCommissionUpdate.TabIndex = 816; + this.chkCommissionUpdate.Text = "佣金上货"; + this.chkCommissionUpdate.UseVisualStyleBackColor = true; + // + // chkEcWaybill + // + this.chkEcWaybill.Location = new System.Drawing.Point(112, 415); + this.chkEcWaybill.Name = "chkEcWaybill"; + this.chkEcWaybill.Size = new System.Drawing.Size(68, 21); + this.chkEcWaybill.TabIndex = 815; + this.chkEcWaybill.Text = "在线寄件"; + this.chkEcWaybill.UseVisualStyleBackColor = true; + // // chkHot // this.chkHot.Location = new System.Drawing.Point(192, 394); @@ -179,7 +211,7 @@ namespace TemuKJD.WXForms.AdminForms // // chkChanceProdCollect // - this.chkChanceProdCollect.Location = new System.Drawing.Point(192, 415); + this.chkChanceProdCollect.Location = new System.Drawing.Point(192, 436); this.chkChanceProdCollect.Name = "chkChanceProdCollect"; this.chkChanceProdCollect.Size = new System.Drawing.Size(96, 21); this.chkChanceProdCollect.TabIndex = 812; @@ -188,13 +220,12 @@ namespace TemuKJD.WXForms.AdminForms // // chkShopPoints // - this.chkShopPoints.Location = new System.Drawing.Point(59, 524); + this.chkShopPoints.Location = new System.Drawing.Point(112, 436); this.chkShopPoints.Name = "chkShopPoints"; this.chkShopPoints.Size = new System.Drawing.Size(68, 21); this.chkShopPoints.TabIndex = 811; - this.chkShopPoints.Text = "积分用户"; + this.chkShopPoints.Text = "充值用户"; this.chkShopPoints.UseVisualStyleBackColor = true; - this.chkShopPoints.Visible = false; // // chkWXShowProdGetFromType // @@ -551,6 +582,7 @@ namespace TemuKJD.WXForms.AdminForms // // splitContainer1.Panel1 // + this.splitContainer1.Panel1.Controls.Add(this.pnlTopUp); this.splitContainer1.Panel1.Controls.Add(this.dgvUser); // // splitContainer1.Panel2 @@ -560,6 +592,113 @@ namespace TemuKJD.WXForms.AdminForms this.splitContainer1.SplitterDistance = 522; this.splitContainer1.TabIndex = 2; // + // pnlTopUp + // + this.pnlTopUp.Anchor = System.Windows.Forms.AnchorStyles.None; + this.pnlTopUp.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.pnlTopUp.Controls.Add(this.lblUserInfo); + this.pnlTopUp.Controls.Add(this.panel2); + this.pnlTopUp.Location = new System.Drawing.Point(269, 188); + this.pnlTopUp.Name = "pnlTopUp"; + this.pnlTopUp.Size = new System.Drawing.Size(474, 146); + this.pnlTopUp.TabIndex = 8; + this.pnlTopUp.Visible = false; + // + // lblUserInfo + // + this.lblUserInfo.AutoSize = true; + this.lblUserInfo.Location = new System.Drawing.Point(20, 19); + this.lblUserInfo.Name = "lblUserInfo"; + this.lblUserInfo.Size = new System.Drawing.Size(58, 17); + this.lblUserInfo.TabIndex = 455; + this.lblUserInfo.Text = "UserInfo"; + // + // panel2 + // + this.panel2.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.panel2.Controls.Add(this.numAddTopUp); + this.panel2.Controls.Add(this.label8); + this.panel2.Controls.Add(this.btnTopUpCancel); + this.panel2.Controls.Add(this.btnTopUpOK); + this.panel2.Location = new System.Drawing.Point(23, 52); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(424, 57); + this.panel2.TabIndex = 454; + // + // numAddTopUp + // + this.numAddTopUp.Location = new System.Drawing.Point(159, 16); + this.numAddTopUp.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.numAddTopUp.Minimum = new decimal(new int[] { + 10000, + 0, + 0, + -2147483648}); + this.numAddTopUp.Name = "numAddTopUp"; + this.numAddTopUp.Size = new System.Drawing.Size(56, 23); + this.numAddTopUp.TabIndex = 1; + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(95, 19); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(68, 17); + this.label8.TabIndex = 456; + this.label8.Text = "充值金额:"; + // + // btnTopUpCancel + // + this.btnTopUpCancel.CanvasColor = System.Drawing.SystemColors.Control; + this.btnTopUpCancel.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnTopUpCancel.DisabledBackColor = System.Drawing.Color.Empty; + this.btnTopUpCancel.Location = new System.Drawing.Point(278, 16); + this.btnTopUpCancel.Name = "btnTopUpCancel"; + this.btnTopUpCancel.Size = new System.Drawing.Size(56, 23); + this.btnTopUpCancel.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpCancel.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.btnTopUpCancel.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.btnTopUpCancel.Style.GradientAngle = 90; + this.btnTopUpCancel.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpCancel.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpCancel.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnTopUpCancel.TabIndex = 458; + this.btnTopUpCancel.Text = "取消"; + this.btnTopUpCancel.Click += new System.EventHandler(this.pnlCancel_Click); + // + // btnTopUpOK + // + this.btnTopUpOK.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnTopUpOK.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnTopUpOK.DisabledBackColor = System.Drawing.Color.Empty; + this.btnTopUpOK.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnTopUpOK.Location = new System.Drawing.Point(219, 16); + this.btnTopUpOK.Name = "btnTopUpOK"; + this.btnTopUpOK.Size = new System.Drawing.Size(56, 23); + this.btnTopUpOK.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpOK.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpOK.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpOK.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnTopUpOK.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnTopUpOK.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnTopUpOK.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnTopUpOK.Style.GradientAngle = 90; + this.btnTopUpOK.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpOK.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnTopUpOK.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnTopUpOK.TabIndex = 453; + this.btnTopUpOK.Text = "确定"; + this.btnTopUpOK.Click += new System.EventHandler(this.btnTopUpOK_Click); + // // dgvUser // this.dgvUser.AllowUserToAddRows = false; @@ -592,6 +731,7 @@ namespace TemuKJD.WXForms.AdminForms this.colSaLevelName, this.colAuthority, this.colPoints, + this.colPlus, this.colAddShop, this.editColumn, this.deleteColumn}); @@ -606,6 +746,31 @@ namespace TemuKJD.WXForms.AdminForms this.dgvUser.TabIndex = 1; this.dgvUser.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvUser_CellContentClick); // + // btnExportShopErp + // + this.btnExportShopErp.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnExportShopErp.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnExportShopErp.DisabledBackColor = System.Drawing.Color.Empty; + this.btnExportShopErp.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnExportShopErp.Location = new System.Drawing.Point(0, 1); + this.btnExportShopErp.Name = "btnExportShopErp"; + this.btnExportShopErp.Size = new System.Drawing.Size(140, 25); + this.btnExportShopErp.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnExportShopErp.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnExportShopErp.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnExportShopErp.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnExportShopErp.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnExportShopErp.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnExportShopErp.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnExportShopErp.Style.GradientAngle = 90; + this.btnExportShopErp.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnExportShopErp.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnExportShopErp.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnExportShopErp.TabIndex = 439; + this.btnExportShopErp.Text = "导出用户到后台系统"; + this.btnExportShopErp.Visible = false; + this.btnExportShopErp.Click += new System.EventHandler(this.btnExportShopErp_Click); + // // UserIdColumn // this.UserIdColumn.HeaderText = "id"; @@ -683,7 +848,15 @@ namespace TemuKJD.WXForms.AdminForms this.colPoints.Name = "colPoints"; this.colPoints.ReadOnly = true; this.colPoints.Resizable = System.Windows.Forms.DataGridViewTriState.True; - this.colPoints.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // colPlus + // + dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; + this.colPlus.DefaultCellStyle = dataGridViewCellStyle3; + this.colPlus.FillWeight = 18F; + this.colPlus.HeaderText = "+"; + this.colPlus.Name = "colPlus"; + this.colPlus.ReadOnly = true; // // colAddShop // @@ -710,40 +883,6 @@ namespace TemuKJD.WXForms.AdminForms this.deleteColumn.Name = "deleteColumn"; this.deleteColumn.ReadOnly = true; // - // btnExportShopErp - // - this.btnExportShopErp.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnExportShopErp.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnExportShopErp.DisabledBackColor = System.Drawing.Color.Empty; - this.btnExportShopErp.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnExportShopErp.Location = new System.Drawing.Point(0, 1); - this.btnExportShopErp.Name = "btnExportShopErp"; - this.btnExportShopErp.Size = new System.Drawing.Size(140, 25); - this.btnExportShopErp.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnExportShopErp.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnExportShopErp.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnExportShopErp.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnExportShopErp.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnExportShopErp.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnExportShopErp.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnExportShopErp.Style.GradientAngle = 90; - this.btnExportShopErp.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnExportShopErp.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnExportShopErp.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnExportShopErp.TabIndex = 439; - this.btnExportShopErp.Text = "导出用户到后台系统"; - this.btnExportShopErp.Visible = false; - this.btnExportShopErp.Click += new System.EventHandler(this.btnExportShopErp_Click); - // - // chkEcWaybill - // - this.chkEcWaybill.Location = new System.Drawing.Point(112, 415); - this.chkEcWaybill.Name = "chkEcWaybill"; - this.chkEcWaybill.Size = new System.Drawing.Size(68, 21); - this.chkEcWaybill.TabIndex = 815; - this.chkEcWaybill.Text = "在线寄件"; - this.chkEcWaybill.UseVisualStyleBackColor = true; - // // WXAdminAccountForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -764,6 +903,11 @@ namespace TemuKJD.WXForms.AdminForms this.splitContainer1.Panel2.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); this.splitContainer1.ResumeLayout(false); + this.pnlTopUp.ResumeLayout(false); + this.pnlTopUp.PerformLayout(); + this.panel2.ResumeLayout(false); + this.panel2.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numAddTopUp)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvUser)).EndInit(); this.ResumeLayout(false); @@ -808,6 +952,19 @@ namespace TemuKJD.WXForms.AdminForms private UserComponent.UcCheckBox chkWXComplateProd; private DevComponents.DotNetBar.PanelEx btnExportShopErp; private UserComponent.UcCheckBox chkWXShowProdGetFromType; + private UserComponent.UcCheckBox chkShopPoints; + private UserComponent.UcCheckBox chkChanceProdCollect; + private UserComponent.UcCheckBox chkShopOptimize; + private UserComponent.UcCheckBox chkHot; + private UserComponent.UcCheckBox chkEcWaybill; + private UserComponent.UcCheckBox chkCommissionUpdate; + private System.Windows.Forms.Panel pnlTopUp; + private System.Windows.Forms.Label lblUserInfo; + private System.Windows.Forms.Panel panel2; + private System.Windows.Forms.NumericUpDown numAddTopUp; + private System.Windows.Forms.Label label8; + private DevComponents.DotNetBar.PanelEx btnTopUpCancel; + private DevComponents.DotNetBar.PanelEx btnTopUpOK; private System.Windows.Forms.DataGridViewTextBoxColumn UserIdColumn; private System.Windows.Forms.DataGridViewTextBoxColumn UserNickNameColumn; private System.Windows.Forms.DataGridViewTextBoxColumn mobileColumn; @@ -819,14 +976,10 @@ namespace TemuKJD.WXForms.AdminForms private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevel; private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevelName; private System.Windows.Forms.DataGridViewTextBoxColumn colAuthority; - private System.Windows.Forms.DataGridViewLinkColumn colPoints; + private System.Windows.Forms.DataGridViewTextBoxColumn colPoints; + private System.Windows.Forms.DataGridViewTextBoxColumn colPlus; private System.Windows.Forms.DataGridViewLinkColumn colAddShop; private System.Windows.Forms.DataGridViewLinkColumn editColumn; private System.Windows.Forms.DataGridViewLinkColumn deleteColumn; - private UserComponent.UcCheckBox chkShopPoints; - private UserComponent.UcCheckBox chkChanceProdCollect; - private UserComponent.UcCheckBox chkShopOptimize; - private UserComponent.UcCheckBox chkHot; - private UserComponent.UcCheckBox chkEcWaybill; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs index f0a9715..63fcd86 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs @@ -89,8 +89,10 @@ namespace TemuKJD.WXForms.AdminForms authority += "评分考核,"; if (chkEcWaybill.Checked) authority += chkEcWaybill.Text + ","; + if (chkCommissionUpdate.Checked) + authority += chkCommissionUpdate.Text + ","; if (chkShopPoints.Checked) - authority += "积分用户,"; + authority += "充值用户,"; data.Append("&authority=" + authority.Trim(',')); string url = BaseClass.BuildObjString("user/add_user"); @@ -157,6 +159,7 @@ namespace TemuKJD.WXForms.AdminForms user.sa_level = BaseRegex.GetIntJson(ref oStr, "sa_level"); user.authority = BaseRegex.GetStringJson(ref oStr, "authority"); user.group_id = BaseRegex.GetStringJson(ref oStr, "group_id"); + user.points = BaseRegex.GetIntJson(ref oStr, "points"); var parent_user_name = BaseRegex.GetStringJson(ref oStr, "parent_user_name"); AllUsers.Add(user); @@ -173,6 +176,7 @@ namespace TemuKJD.WXForms.AdminForms user.sa_level_name, user.authority, user.group_id == "3" ? user.points.ToString() : "", + "+", user.group_id == "3" ? "添加店铺" : "", "编辑", "删除"); @@ -202,6 +206,7 @@ namespace TemuKJD.WXForms.AdminForms chkChanceProdCollect.Checked = false; chkShopOptimize.Checked = false; chkEcWaybill.Checked = false; + chkCommissionUpdate.Checked = false; chkHot.Checked = false; chkShopPoints.Checked = false; } @@ -223,6 +228,7 @@ namespace TemuKJD.WXForms.AdminForms string company = dgvUser.Rows[e.RowIndex].Cells["colCompany"].Value.ToString(); string saLevelName = dgvUser.Rows[e.RowIndex].Cells["colSaLevelName"].Value.ToString(); string authority = dgvUser.Rows[e.RowIndex].Cells["colAuthority"].Value.ParseToString(); + var row = dgvUser.Rows[e.RowIndex]; if (columname == "编辑") { Uid = uid; @@ -240,6 +246,7 @@ namespace TemuKJD.WXForms.AdminForms chkChanceProdCollect.Checked = authority.Contains(chkChanceProdCollect.Text); chkShopOptimize.Checked = authority.Contains(chkShopOptimize.Text); chkEcWaybill.Checked = authority.Contains(chkEcWaybill.Text); + chkCommissionUpdate.Checked = authority.Contains(chkCommissionUpdate.Text); chkHot.Checked = authority.Contains(chkHot.Text); chkWXShowProdGetFromType.Checked = authority.Contains(chkWXShowProdGetFromType.Text); } @@ -258,6 +265,13 @@ namespace TemuKJD.WXForms.AdminForms shopListForm.btnAddToAccount.Visible = true; shopListForm.ShowDialog(); } + if (columname == "+") + { + this.lblUserInfo.Text = mobile + " - " + nickName; + this.numAddTopUp.Value = 0; + this.pnlTopUp.Tag = row; + this.pnlTopUp.Visible = true; + } } public void Delete(string uid) @@ -344,5 +358,37 @@ namespace TemuKJD.WXForms.AdminForms //} } } + + private void pnlCancel_Click(object sender, EventArgs e) + { + pnlTopUp.Visible = false; + } + + private void btnTopUpOK_Click(object sender, EventArgs e) + { + string url = BaseClass.BuildObjString("user/update_user_points"); + string data = UserLogin.GetSignaturex(); + data += "&update_user_name=" + lblUserInfo.Text.Split('-')[0].Trim(); + data += "&update_user_nick=" + lblUserInfo.Text.Split('-')[1].Trim(); + data += "&option_type=" + "充值"; + data += "&operator_type=" + "管理员"; + data += "&operator_name=" + BaseClass.UserName; + data += "&delta_points=" + numAddTopUp.Value; + + string html = GetHtml.PostUtf8(url, data.ToString()).Trim(); + if (!html.Contains("\"code\":200")) + { + var msg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg"); + BaseMsgForm.ShowError(msg); + return; + } + var row = pnlTopUp.Tag as DataGridViewRow; + if (row != null) + { + row.Cells["colPoints"].Value = row.Cells["colPoints"].Value.ParseToInt() + numAddTopUp.Value; + } + pnlTopUp.Visible = false; + BaseMsgForm.ShowInfo("充值成功"); + } } } diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx index 9ea553f..54ec911 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx +++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.resx @@ -153,6 +153,9 @@ True + + True + True diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs index b24a974..bdf3bd1 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs @@ -107,6 +107,7 @@ namespace TemuKJD.WXForms.AdminForms SetForm(getAddressForm.Value); break; case "带货助手": + saleAssistantForm.Value.panel1.Visible = true; SetForm(saleAssistantForm.Value); break; case "图片工具": diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs index d3fea7a..da2a1cb 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs @@ -869,7 +869,6 @@ function fireKeyEvent(el, evtType, keyCode) { if (shop != null) { shop.DictMultiCookies.Remove(cmbMultiCookieName.Text); - StartUp.SaveLocalShopLoginInfo(); InitMultiLoginCookies(); } diff --git a/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.Designer.cs index 25cfd18..479f81a 100644 --- a/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.Designer.cs +++ b/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.Designer.cs @@ -36,6 +36,7 @@ namespace TemuKJD.ToolForms System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WXSaleAssistantForm)); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.ucTabControlMetro1 = new TemuKJD.UserControls.UcTabControlMetro(); this.tabPage1 = new System.Windows.Forms.TabPage(); @@ -63,35 +64,36 @@ namespace TemuKJD.ToolForms this.cmbMultiCookieName = new DevComponents.DotNetBar.Controls.ComboBoxEx(); this.btnMultiLogin = new DevComponents.DotNetBar.PanelEx(); this.btnDel = new DevComponents.DotNetBar.PanelEx(); - this.label6 = new System.Windows.Forms.Label(); + this.panel1 = new System.Windows.Forms.Panel(); + this.btnReload = new DevComponents.DotNetBar.PanelEx(); + this.txtCookie = new System.Windows.Forms.TextBox(); + this.line1 = new DevComponents.DotNetBar.Controls.Line(); + this.btnImportCookie = new DevComponents.DotNetBar.PanelEx(); this.txtRetryTimes = new System.Windows.Forms.TextBox(); + this.label6 = new System.Windows.Forms.Label(); this.label5 = new System.Windows.Forms.Label(); - this.chkKeepOldData = new TemuKJD.UserComponent.UcCheckBox(this.components); this.btnClear = new DevComponents.DotNetBar.PanelEx(); - this.label2 = new System.Windows.Forms.Label(); + this.chkKeepOldData = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.btnSaveCookie = new DevComponents.DotNetBar.PanelEx(); this.txtFilterTotalSaleCount = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.btnRefreshCookie = new DevComponents.DotNetBar.PanelEx(); this.btnGetWxProd = new DevComponents.DotNetBar.PanelEx(); + this.txtFilterMonthSaleCount = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.txtPageStart = new System.Windows.Forms.TextBox(); + this.txtPageEnd = new System.Windows.Forms.TextBox(); this.chkSkipIsAddWindow = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.label4 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label(); + this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); this.btnExportCookie = new DevComponents.DotNetBar.PanelEx(); + this.btnStopStop = new DevComponents.DotNetBar.PanelEx(); this.label7 = new System.Windows.Forms.Label(); + this.txtTitle = new System.Windows.Forms.TextBox(); this.txtWaitSeconds = new System.Windows.Forms.TextBox(); this.label8 = new System.Windows.Forms.Label(); - this.txtTitle = new System.Windows.Forms.TextBox(); this.btnSearchTitle = new DevComponents.DotNetBar.PanelEx(); - this.btnStopStop = new DevComponents.DotNetBar.PanelEx(); - this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); - this.label4 = new System.Windows.Forms.Label(); - this.txtPageEnd = new System.Windows.Forms.TextBox(); - this.txtPageStart = new System.Windows.Forms.TextBox(); - this.label3 = new System.Windows.Forms.Label(); - this.txtFilterMonthSaleCount = new System.Windows.Forms.TextBox(); - this.btnRefreshCookie = new DevComponents.DotNetBar.PanelEx(); - this.txtCookie = new System.Windows.Forms.TextBox(); - this.btnSaveCookie = new DevComponents.DotNetBar.PanelEx(); - this.btnImportCookie = new DevComponents.DotNetBar.PanelEx(); - this.line1 = new DevComponents.DotNetBar.Controls.Line(); - this.btnReload = new DevComponents.DotNetBar.PanelEx(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -105,6 +107,7 @@ namespace TemuKJD.ToolForms ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).BeginInit(); this.pnlMultiLogin.SuspendLayout(); + this.panel1.SuspendLayout(); this.SuspendLayout(); // // splitContainer1 @@ -112,7 +115,7 @@ namespace TemuKJD.ToolForms this.splitContainer1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; - this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Location = new System.Drawing.Point(1, 1); this.splitContainer1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); this.splitContainer1.Name = "splitContainer1"; this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal; @@ -125,37 +128,9 @@ namespace TemuKJD.ToolForms // splitContainer1.Panel2 // this.splitContainer1.Panel2.BackColor = System.Drawing.Color.White; - this.splitContainer1.Panel2.Controls.Add(this.btnReload); - this.splitContainer1.Panel2.Controls.Add(this.label6); - this.splitContainer1.Panel2.Controls.Add(this.txtRetryTimes); - this.splitContainer1.Panel2.Controls.Add(this.label5); - this.splitContainer1.Panel2.Controls.Add(this.chkKeepOldData); - this.splitContainer1.Panel2.Controls.Add(this.btnClear); - this.splitContainer1.Panel2.Controls.Add(this.label2); - this.splitContainer1.Panel2.Controls.Add(this.txtFilterTotalSaleCount); - this.splitContainer1.Panel2.Controls.Add(this.btnGetWxProd); - this.splitContainer1.Panel2.Controls.Add(this.chkSkipIsAddWindow); - this.splitContainer1.Panel2.Controls.Add(this.label1); - this.splitContainer1.Panel2.Controls.Add(this.btnExportCookie); - this.splitContainer1.Panel2.Controls.Add(this.label7); - this.splitContainer1.Panel2.Controls.Add(this.txtWaitSeconds); - this.splitContainer1.Panel2.Controls.Add(this.label8); - this.splitContainer1.Panel2.Controls.Add(this.txtTitle); - this.splitContainer1.Panel2.Controls.Add(this.btnSearchTitle); - this.splitContainer1.Panel2.Controls.Add(this.btnStopStop); - this.splitContainer1.Panel2.Controls.Add(this.statusBar); - this.splitContainer1.Panel2.Controls.Add(this.label4); - this.splitContainer1.Panel2.Controls.Add(this.txtPageEnd); - this.splitContainer1.Panel2.Controls.Add(this.txtPageStart); - this.splitContainer1.Panel2.Controls.Add(this.label3); - this.splitContainer1.Panel2.Controls.Add(this.txtFilterMonthSaleCount); - this.splitContainer1.Panel2.Controls.Add(this.btnRefreshCookie); - this.splitContainer1.Panel2.Controls.Add(this.txtCookie); - this.splitContainer1.Panel2.Controls.Add(this.btnSaveCookie); - this.splitContainer1.Panel2.Controls.Add(this.btnImportCookie); - this.splitContainer1.Panel2.Controls.Add(this.line1); - this.splitContainer1.Size = new System.Drawing.Size(1404, 478); - this.splitContainer1.SplitterDistance = 389; + this.splitContainer1.Panel2.Controls.Add(this.panel1); + this.splitContainer1.Size = new System.Drawing.Size(1402, 476); + this.splitContainer1.SplitterDistance = 387; this.splitContainer1.TabIndex = 4; // // ucTabControlMetro1 @@ -170,7 +145,7 @@ namespace TemuKJD.ToolForms this.ucTabControlMetro1.Name = "ucTabControlMetro1"; this.ucTabControlMetro1.SelectedIndex = 0; this.ucTabControlMetro1.ShowCloseButton = false; - this.ucTabControlMetro1.Size = new System.Drawing.Size(1404, 389); + this.ucTabControlMetro1.Size = new System.Drawing.Size(1402, 387); this.ucTabControlMetro1.TabIndex = 462; this.ucTabControlMetro1.TabSelectColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucTabControlMetro1.TabSelectTextColor = System.Drawing.Color.Gray; @@ -182,9 +157,9 @@ namespace TemuKJD.ToolForms this.tabPage1.Location = new System.Drawing.Point(4, 28); this.tabPage1.Name = "tabPage1"; this.tabPage1.Padding = new System.Windows.Forms.Padding(3); - this.tabPage1.Size = new System.Drawing.Size(1396, 357); + this.tabPage1.Size = new System.Drawing.Size(1394, 355); this.tabPage1.TabIndex = 0; - this.tabPage1.Text = "商品页面"; + this.tabPage1.Text = "带货主页"; this.tabPage1.UseVisualStyleBackColor = true; // // splitContainer2 @@ -201,7 +176,7 @@ namespace TemuKJD.ToolForms this.splitContainer2.Panel1.Controls.Add(this.btnNext); this.splitContainer2.Panel1.Controls.Add(this.btnPrev); this.splitContainer2.Panel1.Controls.Add(this.txtAddress); - this.splitContainer2.Size = new System.Drawing.Size(1390, 351); + this.splitContainer2.Size = new System.Drawing.Size(1388, 349); this.splitContainer2.SplitterDistance = 26; this.splitContainer2.TabIndex = 6; // @@ -232,7 +207,7 @@ namespace TemuKJD.ToolForms this.txtAddress.Location = new System.Drawing.Point(64, 3); this.txtAddress.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); this.txtAddress.Name = "txtAddress"; - this.txtAddress.Size = new System.Drawing.Size(1326, 23); + this.txtAddress.Size = new System.Drawing.Size(1324, 23); this.txtAddress.TabIndex = 7; this.txtAddress.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtAddress_KeyDown); // @@ -480,419 +455,43 @@ namespace TemuKJD.ToolForms this.btnDel.TabIndex = 409; this.btnDel.Text = "删"; // - // label6 + // panel1 // - this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(1377, 8); - this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(20, 17); - this.label6.TabIndex = 1223; - this.label6.Text = "次"; - // - // txtRetryTimes - // - this.txtRetryTimes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtRetryTimes.Location = new System.Drawing.Point(1345, 5); - this.txtRetryTimes.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtRetryTimes.Name = "txtRetryTimes"; - this.txtRetryTimes.Size = new System.Drawing.Size(32, 23); - this.txtRetryTimes.TabIndex = 1222; - this.txtRetryTimes.Text = "50"; - this.txtRetryTimes.TextChanged += new System.EventHandler(this.txtRetryTimes_TextChanged); - // - // label5 - // - this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(1193, 8); - this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(152, 17); - this.label5.TabIndex = 1221; - this.label5.Text = "下一页查询失败后重试次数"; - // - // chkKeepOldData - // - this.chkKeepOldData.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.chkKeepOldData.AutoSize = true; - this.chkKeepOldData.Checked = true; - this.chkKeepOldData.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkKeepOldData.Location = new System.Drawing.Point(1163, 31); - this.chkKeepOldData.Name = "chkKeepOldData"; - this.chkKeepOldData.Size = new System.Drawing.Size(123, 21); - this.chkKeepOldData.TabIndex = 1196; - this.chkKeepOldData.Text = "保留上次查询数据"; - this.chkKeepOldData.UseVisualStyleBackColor = true; - // - // btnClear - // - this.btnClear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnClear.CanvasColor = System.Drawing.SystemColors.Control; - this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnClear.DisabledBackColor = System.Drawing.Color.Empty; - this.btnClear.Location = new System.Drawing.Point(1163, 57); - this.btnClear.Name = "btnClear"; - this.btnClear.Size = new System.Drawing.Size(76, 23); - this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnClear.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; - this.btnClear.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnClear.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; - this.btnClear.Style.GradientAngle = 90; - this.btnClear.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; - this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; - this.btnClear.TabIndex = 1171; - this.btnClear.Text = "清除选中"; - this.btnClear.Click += new System.EventHandler(this.btnClear_Click); - // - // label2 - // - this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(643, 8); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(53, 17); - this.label2.TabIndex = 1146; - this.label2.Text = "总销量≥"; - // - // txtFilterTotalSaleCount - // - this.txtFilterTotalSaleCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtFilterTotalSaleCount.Location = new System.Drawing.Point(702, 5); - this.txtFilterTotalSaleCount.Name = "txtFilterTotalSaleCount"; - this.txtFilterTotalSaleCount.Size = new System.Drawing.Size(59, 23); - this.txtFilterTotalSaleCount.TabIndex = 1145; - this.txtFilterTotalSaleCount.Text = "500"; - this.txtFilterTotalSaleCount.TextChanged += new System.EventHandler(this.txtFilterTotalSaleCount_TextChanged); - // - // btnGetWxProd - // - this.btnGetWxProd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnGetWxProd.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnGetWxProd.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnGetWxProd.DisabledBackColor = System.Drawing.Color.Empty; - this.btnGetWxProd.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnGetWxProd.Location = new System.Drawing.Point(1321, 57); - this.btnGetWxProd.Name = "btnGetWxProd"; - this.btnGetWxProd.Size = new System.Drawing.Size(76, 23); - this.btnGetWxProd.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnGetWxProd.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnGetWxProd.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnGetWxProd.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnGetWxProd.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnGetWxProd.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnGetWxProd.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnGetWxProd.Style.GradientAngle = 90; - this.btnGetWxProd.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnGetWxProd.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnGetWxProd.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnGetWxProd.TabIndex = 1123; - this.btnGetWxProd.Text = "翻页采集"; - this.btnGetWxProd.Click += new System.EventHandler(this.btnGetWxProd_Click); - // - // chkSkipIsAddWindow - // - this.chkSkipIsAddWindow.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.chkSkipIsAddWindow.AutoSize = true; - this.chkSkipIsAddWindow.Checked = true; - this.chkSkipIsAddWindow.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkSkipIsAddWindow.Location = new System.Drawing.Point(775, 6); - this.chkSkipIsAddWindow.Name = "chkSkipIsAddWindow"; - this.chkSkipIsAddWindow.Size = new System.Drawing.Size(99, 21); - this.chkSkipIsAddWindow.TabIndex = 1098; - this.chkSkipIsAddWindow.Text = "跳过已加橱窗"; - this.chkSkipIsAddWindow.UseVisualStyleBackColor = true; - // - // label1 - // - this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(519, 8); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(53, 17); - this.label1.TabIndex = 1097; - this.label1.Text = "月销量≥"; - // - // btnExportCookie - // - this.btnExportCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnExportCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnExportCookie.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnExportCookie.DisabledBackColor = System.Drawing.Color.Empty; - this.btnExportCookie.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnExportCookie.Location = new System.Drawing.Point(227, 57); - this.btnExportCookie.Name = "btnExportCookie"; - this.btnExportCookie.Size = new System.Drawing.Size(72, 25); - this.btnExportCookie.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnExportCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnExportCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnExportCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnExportCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnExportCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnExportCookie.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnExportCookie.Style.GradientAngle = 90; - this.btnExportCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnExportCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnExportCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnExportCookie.TabIndex = 1063; - this.btnExportCookie.Text = "导出cookie"; - this.btnExportCookie.Click += new System.EventHandler(this.btnExportCookie_Click); - // - // label7 - // - this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(1289, 33); - this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(56, 17); - this.label7.TabIndex = 1027; - this.label7.Text = "翻页间隔"; - // - // txtWaitSeconds - // - this.txtWaitSeconds.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtWaitSeconds.Location = new System.Drawing.Point(1345, 30); - this.txtWaitSeconds.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtWaitSeconds.Name = "txtWaitSeconds"; - this.txtWaitSeconds.Size = new System.Drawing.Size(32, 23); - this.txtWaitSeconds.TabIndex = 1028; - this.txtWaitSeconds.Text = "0.3"; - this.txtWaitSeconds.TextChanged += new System.EventHandler(this.txtWaitSeconds_TextChanged); - // - // label8 - // - this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(1377, 33); - this.label8.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(20, 17); - this.label8.TabIndex = 1029; - this.label8.Text = "秒"; - // - // txtTitle - // - this.txtTitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtTitle.Location = new System.Drawing.Point(319, 33); - this.txtTitle.Name = "txtTitle"; - this.txtTitle.Size = new System.Drawing.Size(202, 23); - this.txtTitle.TabIndex = 968; - // - // btnSearchTitle - // - this.btnSearchTitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnSearchTitle.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnSearchTitle.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnSearchTitle.DisabledBackColor = System.Drawing.Color.Empty; - this.btnSearchTitle.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnSearchTitle.Location = new System.Drawing.Point(523, 33); - this.btnSearchTitle.Name = "btnSearchTitle"; - this.btnSearchTitle.Size = new System.Drawing.Size(56, 23); - this.btnSearchTitle.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnSearchTitle.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnSearchTitle.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnSearchTitle.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnSearchTitle.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnSearchTitle.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnSearchTitle.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnSearchTitle.Style.GradientAngle = 90; - this.btnSearchTitle.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnSearchTitle.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnSearchTitle.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnSearchTitle.TabIndex = 967; - this.btnSearchTitle.Text = "搜索标题"; - this.btnSearchTitle.Click += new System.EventHandler(this.btnSearchTitle_Click); - // - // btnStopStop - // - this.btnStopStop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnStopStop.CanvasColor = System.Drawing.SystemColors.Control; - this.btnStopStop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnStopStop.DisabledBackColor = System.Drawing.Color.Empty; - this.btnStopStop.Location = new System.Drawing.Point(1242, 57); - this.btnStopStop.Name = "btnStopStop"; - this.btnStopStop.Size = new System.Drawing.Size(76, 23); - this.btnStopStop.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnStopStop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnStopStop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnStopStop.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; - this.btnStopStop.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnStopStop.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; - this.btnStopStop.Style.GradientAngle = 90; - this.btnStopStop.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; - this.btnStopStop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnStopStop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnStopStop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnStopStop.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; - this.btnStopStop.TabIndex = 853; - this.btnStopStop.Text = "停止查询"; - this.btnStopStop.Click += new System.EventHandler(this.btnStopStop_Click); - // - // statusBar - // - this.statusBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.statusBar.BackColor = System.Drawing.Color.White; - 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(315, 60); - this.statusBar.Margin = new System.Windows.Forms.Padding(0); - this.statusBar.Name = "statusBar"; - this.statusBar.Size = new System.Drawing.Size(689, 25); - this.statusBar.TabIndex = 823; - // - // label4 - // - this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(410, 8); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(44, 17); - this.label4.TabIndex = 810; - this.label4.Text = "结束页"; - // - // txtPageEnd - // - this.txtPageEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtPageEnd.Location = new System.Drawing.Point(454, 5); - this.txtPageEnd.Name = "txtPageEnd"; - this.txtPageEnd.Size = new System.Drawing.Size(43, 23); - this.txtPageEnd.TabIndex = 809; - this.txtPageEnd.Text = "99999"; - this.txtPageEnd.TextChanged += new System.EventHandler(this.txtPageEnd_TextChanged); - // - // txtPageStart - // - this.txtPageStart.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtPageStart.Location = new System.Drawing.Point(361, 5); - this.txtPageStart.Name = "txtPageStart"; - this.txtPageStart.Size = new System.Drawing.Size(43, 23); - this.txtPageStart.TabIndex = 808; - this.txtPageStart.Text = "1"; - this.txtPageStart.TextChanged += new System.EventHandler(this.txtPageStart_TextChanged); - // - // label3 - // - this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(317, 8); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(44, 17); - this.label3.TabIndex = 807; - this.label3.Text = "起始页"; - // - // txtFilterMonthSaleCount - // - this.txtFilterMonthSaleCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtFilterMonthSaleCount.Location = new System.Drawing.Point(578, 5); - this.txtFilterMonthSaleCount.Name = "txtFilterMonthSaleCount"; - this.txtFilterMonthSaleCount.Size = new System.Drawing.Size(59, 23); - this.txtFilterMonthSaleCount.TabIndex = 787; - this.txtFilterMonthSaleCount.Text = "100"; - this.txtFilterMonthSaleCount.TextChanged += new System.EventHandler(this.txtFilterSaleCount_TextChanged); - // - // btnRefreshCookie - // - this.btnRefreshCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnRefreshCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnRefreshCookie.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnRefreshCookie.DisabledBackColor = System.Drawing.Color.Empty; - this.btnRefreshCookie.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnRefreshCookie.Location = new System.Drawing.Point(153, 57); - this.btnRefreshCookie.Name = "btnRefreshCookie"; - this.btnRefreshCookie.Size = new System.Drawing.Size(72, 25); - this.btnRefreshCookie.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnRefreshCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnRefreshCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnRefreshCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnRefreshCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnRefreshCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnRefreshCookie.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnRefreshCookie.Style.GradientAngle = 90; - this.btnRefreshCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnRefreshCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnRefreshCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnRefreshCookie.TabIndex = 776; - this.btnRefreshCookie.Text = "刷新cookie"; - this.btnRefreshCookie.Click += new System.EventHandler(this.btnRefreshCookie_Click); - // - // txtCookie - // - this.txtCookie.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.txtCookie.Location = new System.Drawing.Point(4, 4); - this.txtCookie.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); - this.txtCookie.Multiline = true; - this.txtCookie.Name = "txtCookie"; - this.txtCookie.Size = new System.Drawing.Size(145, 51); - this.txtCookie.TabIndex = 766; - this.txtCookie.Text = "填写cookie后点击导入cookie并刷新"; - // - // btnSaveCookie - // - this.btnSaveCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnSaveCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnSaveCookie.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnSaveCookie.DisabledBackColor = System.Drawing.Color.Empty; - this.btnSaveCookie.Font = new System.Drawing.Font("微软雅黑", 8F); - this.btnSaveCookie.Location = new System.Drawing.Point(153, 30); - this.btnSaveCookie.Name = "btnSaveCookie"; - this.btnSaveCookie.Size = new System.Drawing.Size(146, 25); - this.btnSaveCookie.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnSaveCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnSaveCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnSaveCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnSaveCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnSaveCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnSaveCookie.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnSaveCookie.Style.GradientAngle = 90; - this.btnSaveCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnSaveCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnSaveCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnSaveCookie.TabIndex = 765; - this.btnSaveCookie.Text = "保存网页cookie到服务"; - this.btnSaveCookie.Click += new System.EventHandler(this.btnSaveCookie_Click); - // - // btnImportCookie - // - this.btnImportCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnImportCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnImportCookie.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnImportCookie.DisabledBackColor = System.Drawing.Color.Empty; - this.btnImportCookie.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnImportCookie.Location = new System.Drawing.Point(153, 3); - this.btnImportCookie.Name = "btnImportCookie"; - this.btnImportCookie.Size = new System.Drawing.Size(146, 25); - this.btnImportCookie.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnImportCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnImportCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnImportCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnImportCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnImportCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnImportCookie.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnImportCookie.Style.GradientAngle = 90; - this.btnImportCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnImportCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnImportCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnImportCookie.TabIndex = 761; - this.btnImportCookie.Text = "导入cookie并刷新"; - this.btnImportCookie.Click += new System.EventHandler(this.btnImportCookie_Click); - // - // line1 - // - this.line1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.line1.ForeColor = System.Drawing.SystemColors.AppWorkspace; - this.line1.Location = new System.Drawing.Point(298, 7); - this.line1.Name = "line1"; - this.line1.Size = new System.Drawing.Size(20, 74); - this.line1.TabIndex = 790; - this.line1.Text = "line1"; - this.line1.VerticalLine = true; + this.panel1.Controls.Add(this.btnReload); + this.panel1.Controls.Add(this.txtCookie); + this.panel1.Controls.Add(this.line1); + this.panel1.Controls.Add(this.btnImportCookie); + this.panel1.Controls.Add(this.txtRetryTimes); + this.panel1.Controls.Add(this.label6); + this.panel1.Controls.Add(this.label5); + this.panel1.Controls.Add(this.btnClear); + this.panel1.Controls.Add(this.chkKeepOldData); + this.panel1.Controls.Add(this.btnSaveCookie); + this.panel1.Controls.Add(this.txtFilterTotalSaleCount); + this.panel1.Controls.Add(this.label2); + this.panel1.Controls.Add(this.btnRefreshCookie); + this.panel1.Controls.Add(this.btnGetWxProd); + this.panel1.Controls.Add(this.txtFilterMonthSaleCount); + this.panel1.Controls.Add(this.label3); + this.panel1.Controls.Add(this.txtPageStart); + this.panel1.Controls.Add(this.txtPageEnd); + this.panel1.Controls.Add(this.chkSkipIsAddWindow); + this.panel1.Controls.Add(this.label4); + this.panel1.Controls.Add(this.label1); + this.panel1.Controls.Add(this.statusBar); + this.panel1.Controls.Add(this.btnExportCookie); + this.panel1.Controls.Add(this.btnStopStop); + this.panel1.Controls.Add(this.label7); + this.panel1.Controls.Add(this.txtTitle); + this.panel1.Controls.Add(this.txtWaitSeconds); + this.panel1.Controls.Add(this.label8); + this.panel1.Controls.Add(this.btnSearchTitle); + this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(1402, 85); + this.panel1.TabIndex = 0; + this.panel1.Visible = false; // // btnReload // @@ -901,7 +500,7 @@ namespace TemuKJD.ToolForms this.btnReload.Cursor = System.Windows.Forms.Cursors.Hand; this.btnReload.DisabledBackColor = System.Drawing.Color.Empty; this.btnReload.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnReload.Location = new System.Drawing.Point(77, 57); + this.btnReload.Location = new System.Drawing.Point(82, 56); this.btnReload.Name = "btnReload"; this.btnReload.Size = new System.Drawing.Size(72, 25); this.btnReload.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -919,19 +518,435 @@ namespace TemuKJD.ToolForms this.btnReload.Text = "重新登录"; this.btnReload.Click += new System.EventHandler(this.btnReload_Click); // + // txtCookie + // + this.txtCookie.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtCookie.Location = new System.Drawing.Point(4, 3); + this.txtCookie.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.txtCookie.Multiline = true; + this.txtCookie.Name = "txtCookie"; + this.txtCookie.Size = new System.Drawing.Size(150, 51); + this.txtCookie.TabIndex = 766; + this.txtCookie.Text = "填写cookie后点击导入cookie并刷新"; + // + // line1 + // + this.line1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.line1.ForeColor = System.Drawing.SystemColors.AppWorkspace; + this.line1.Location = new System.Drawing.Point(307, 6); + this.line1.Name = "line1"; + this.line1.Size = new System.Drawing.Size(10, 74); + this.line1.TabIndex = 790; + this.line1.Text = "line1"; + this.line1.VerticalLine = true; + // + // btnImportCookie + // + this.btnImportCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnImportCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnImportCookie.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnImportCookie.DisabledBackColor = System.Drawing.Color.Empty; + this.btnImportCookie.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnImportCookie.Location = new System.Drawing.Point(157, 1); + this.btnImportCookie.Name = "btnImportCookie"; + this.btnImportCookie.Size = new System.Drawing.Size(146, 25); + this.btnImportCookie.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnImportCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnImportCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnImportCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnImportCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnImportCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnImportCookie.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnImportCookie.Style.GradientAngle = 90; + this.btnImportCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnImportCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnImportCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnImportCookie.TabIndex = 761; + this.btnImportCookie.Text = "导入cookie并刷新"; + this.btnImportCookie.Click += new System.EventHandler(this.btnImportCookie_Click); + // + // txtRetryTimes + // + this.txtRetryTimes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtRetryTimes.Location = new System.Drawing.Point(1347, 4); + this.txtRetryTimes.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtRetryTimes.Name = "txtRetryTimes"; + this.txtRetryTimes.Size = new System.Drawing.Size(32, 23); + this.txtRetryTimes.TabIndex = 1222; + this.txtRetryTimes.Text = "50"; + this.txtRetryTimes.TextChanged += new System.EventHandler(this.txtRetryTimes_TextChanged); + // + // label6 + // + this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(1379, 7); + this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(20, 17); + this.label6.TabIndex = 1223; + this.label6.Text = "次"; + // + // label5 + // + this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(1195, 7); + this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(152, 17); + this.label5.TabIndex = 1221; + this.label5.Text = "下一页查询失败后重试次数"; + // + // btnClear + // + this.btnClear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnClear.CanvasColor = System.Drawing.SystemColors.Control; + this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnClear.DisabledBackColor = System.Drawing.Color.Empty; + this.btnClear.Location = new System.Drawing.Point(1165, 56); + this.btnClear.Name = "btnClear"; + this.btnClear.Size = new System.Drawing.Size(75, 23); + this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnClear.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.btnClear.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.btnClear.Style.GradientAngle = 90; + this.btnClear.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnClear.TabIndex = 1171; + this.btnClear.Text = "清除选中"; + this.btnClear.Click += new System.EventHandler(this.btnClear_Click); + // + // chkKeepOldData + // + this.chkKeepOldData.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.chkKeepOldData.AutoSize = true; + this.chkKeepOldData.Checked = true; + this.chkKeepOldData.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkKeepOldData.Location = new System.Drawing.Point(1165, 30); + this.chkKeepOldData.Name = "chkKeepOldData"; + this.chkKeepOldData.Size = new System.Drawing.Size(123, 21); + this.chkKeepOldData.TabIndex = 1196; + this.chkKeepOldData.Text = "保留上次查询数据"; + this.chkKeepOldData.UseVisualStyleBackColor = true; + // + // btnSaveCookie + // + this.btnSaveCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnSaveCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnSaveCookie.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnSaveCookie.DisabledBackColor = System.Drawing.Color.Empty; + this.btnSaveCookie.Font = new System.Drawing.Font("微软雅黑", 8F); + this.btnSaveCookie.Location = new System.Drawing.Point(157, 29); + this.btnSaveCookie.Name = "btnSaveCookie"; + this.btnSaveCookie.Size = new System.Drawing.Size(146, 25); + this.btnSaveCookie.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnSaveCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSaveCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSaveCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnSaveCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnSaveCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnSaveCookie.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnSaveCookie.Style.GradientAngle = 90; + this.btnSaveCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnSaveCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSaveCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSaveCookie.TabIndex = 765; + this.btnSaveCookie.Text = "保存网页cookie到服务"; + this.btnSaveCookie.Click += new System.EventHandler(this.btnSaveCookie_Click); + // + // txtFilterTotalSaleCount + // + this.txtFilterTotalSaleCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtFilterTotalSaleCount.Location = new System.Drawing.Point(706, 4); + this.txtFilterTotalSaleCount.Name = "txtFilterTotalSaleCount"; + this.txtFilterTotalSaleCount.Size = new System.Drawing.Size(59, 23); + this.txtFilterTotalSaleCount.TabIndex = 1145; + this.txtFilterTotalSaleCount.Text = "500"; + this.txtFilterTotalSaleCount.TextChanged += new System.EventHandler(this.txtFilterTotalSaleCount_TextChanged); + // + // label2 + // + this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(647, 7); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(53, 17); + this.label2.TabIndex = 1146; + this.label2.Text = "总销量≥"; + // + // btnRefreshCookie + // + this.btnRefreshCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnRefreshCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnRefreshCookie.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnRefreshCookie.DisabledBackColor = System.Drawing.Color.Empty; + this.btnRefreshCookie.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnRefreshCookie.Location = new System.Drawing.Point(157, 56); + this.btnRefreshCookie.Name = "btnRefreshCookie"; + this.btnRefreshCookie.Size = new System.Drawing.Size(72, 25); + this.btnRefreshCookie.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnRefreshCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnRefreshCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnRefreshCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnRefreshCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnRefreshCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnRefreshCookie.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnRefreshCookie.Style.GradientAngle = 90; + this.btnRefreshCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnRefreshCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnRefreshCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnRefreshCookie.TabIndex = 776; + this.btnRefreshCookie.Text = "刷新cookie"; + this.btnRefreshCookie.Click += new System.EventHandler(this.btnRefreshCookie_Click); + // + // btnGetWxProd + // + this.btnGetWxProd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnGetWxProd.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnGetWxProd.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnGetWxProd.DisabledBackColor = System.Drawing.Color.Empty; + this.btnGetWxProd.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnGetWxProd.Location = new System.Drawing.Point(1321, 56); + this.btnGetWxProd.Name = "btnGetWxProd"; + this.btnGetWxProd.Size = new System.Drawing.Size(75, 23); + this.btnGetWxProd.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnGetWxProd.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnGetWxProd.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnGetWxProd.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnGetWxProd.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnGetWxProd.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnGetWxProd.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnGetWxProd.Style.GradientAngle = 90; + this.btnGetWxProd.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnGetWxProd.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnGetWxProd.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnGetWxProd.TabIndex = 1123; + this.btnGetWxProd.Text = "翻页采集"; + this.btnGetWxProd.Click += new System.EventHandler(this.btnGetWxProd_Click); + // + // txtFilterMonthSaleCount + // + this.txtFilterMonthSaleCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtFilterMonthSaleCount.Location = new System.Drawing.Point(582, 4); + this.txtFilterMonthSaleCount.Name = "txtFilterMonthSaleCount"; + this.txtFilterMonthSaleCount.Size = new System.Drawing.Size(59, 23); + this.txtFilterMonthSaleCount.TabIndex = 787; + this.txtFilterMonthSaleCount.Text = "100"; + this.txtFilterMonthSaleCount.TextChanged += new System.EventHandler(this.txtFilterSaleCount_TextChanged); + // + // label3 + // + this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(321, 7); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(44, 17); + this.label3.TabIndex = 807; + this.label3.Text = "起始页"; + // + // txtPageStart + // + this.txtPageStart.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtPageStart.Location = new System.Drawing.Point(365, 4); + this.txtPageStart.Name = "txtPageStart"; + this.txtPageStart.Size = new System.Drawing.Size(43, 23); + this.txtPageStart.TabIndex = 808; + this.txtPageStart.Text = "1"; + this.txtPageStart.TextChanged += new System.EventHandler(this.txtPageStart_TextChanged); + // + // txtPageEnd + // + this.txtPageEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtPageEnd.Location = new System.Drawing.Point(458, 4); + this.txtPageEnd.Name = "txtPageEnd"; + this.txtPageEnd.Size = new System.Drawing.Size(43, 23); + this.txtPageEnd.TabIndex = 809; + this.txtPageEnd.Text = "99999"; + this.txtPageEnd.TextChanged += new System.EventHandler(this.txtPageEnd_TextChanged); + // + // chkSkipIsAddWindow + // + this.chkSkipIsAddWindow.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.chkSkipIsAddWindow.AutoSize = true; + this.chkSkipIsAddWindow.Checked = true; + this.chkSkipIsAddWindow.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkSkipIsAddWindow.Location = new System.Drawing.Point(779, 5); + this.chkSkipIsAddWindow.Name = "chkSkipIsAddWindow"; + this.chkSkipIsAddWindow.Size = new System.Drawing.Size(99, 21); + this.chkSkipIsAddWindow.TabIndex = 1098; + this.chkSkipIsAddWindow.Text = "跳过已加橱窗"; + this.chkSkipIsAddWindow.UseVisualStyleBackColor = true; + // + // label4 + // + this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(414, 7); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(44, 17); + this.label4.TabIndex = 810; + this.label4.Text = "结束页"; + // + // label1 + // + this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(523, 7); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(53, 17); + this.label1.TabIndex = 1097; + this.label1.Text = "月销量≥"; + // + // statusBar + // + this.statusBar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.statusBar.BackColor = System.Drawing.Color.White; + 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(319, 59); + this.statusBar.Margin = new System.Windows.Forms.Padding(0); + this.statusBar.Name = "statusBar"; + this.statusBar.Size = new System.Drawing.Size(689, 25); + this.statusBar.TabIndex = 823; + // + // btnExportCookie + // + this.btnExportCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnExportCookie.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnExportCookie.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnExportCookie.DisabledBackColor = System.Drawing.Color.Empty; + this.btnExportCookie.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnExportCookie.Location = new System.Drawing.Point(231, 56); + this.btnExportCookie.Name = "btnExportCookie"; + this.btnExportCookie.Size = new System.Drawing.Size(72, 25); + this.btnExportCookie.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnExportCookie.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnExportCookie.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnExportCookie.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnExportCookie.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnExportCookie.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnExportCookie.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnExportCookie.Style.GradientAngle = 90; + this.btnExportCookie.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnExportCookie.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnExportCookie.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnExportCookie.TabIndex = 1063; + this.btnExportCookie.Text = "导出cookie"; + this.btnExportCookie.Click += new System.EventHandler(this.btnExportCookie_Click); + // + // btnStopStop + // + this.btnStopStop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnStopStop.CanvasColor = System.Drawing.SystemColors.Control; + this.btnStopStop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnStopStop.DisabledBackColor = System.Drawing.Color.Empty; + this.btnStopStop.Location = new System.Drawing.Point(1243, 56); + this.btnStopStop.Name = "btnStopStop"; + this.btnStopStop.Size = new System.Drawing.Size(75, 23); + this.btnStopStop.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnStopStop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnStopStop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnStopStop.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.btnStopStop.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnStopStop.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.btnStopStop.Style.GradientAngle = 90; + this.btnStopStop.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.btnStopStop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnStopStop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnStopStop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnStopStop.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnStopStop.TabIndex = 853; + this.btnStopStop.Text = "停止查询"; + this.btnStopStop.Click += new System.EventHandler(this.btnStopStop_Click); + // + // label7 + // + this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(1291, 32); + this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(56, 17); + this.label7.TabIndex = 1027; + this.label7.Text = "翻页间隔"; + // + // txtTitle + // + this.txtTitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtTitle.Location = new System.Drawing.Point(323, 32); + this.txtTitle.Name = "txtTitle"; + this.txtTitle.Size = new System.Drawing.Size(202, 23); + this.txtTitle.TabIndex = 968; + // + // txtWaitSeconds + // + this.txtWaitSeconds.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtWaitSeconds.Location = new System.Drawing.Point(1347, 29); + this.txtWaitSeconds.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtWaitSeconds.Name = "txtWaitSeconds"; + this.txtWaitSeconds.Size = new System.Drawing.Size(32, 23); + this.txtWaitSeconds.TabIndex = 1028; + this.txtWaitSeconds.Text = "0.3"; + this.txtWaitSeconds.TextChanged += new System.EventHandler(this.txtWaitSeconds_TextChanged); + // + // label8 + // + this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(1379, 32); + this.label8.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(20, 17); + this.label8.TabIndex = 1029; + this.label8.Text = "秒"; + // + // btnSearchTitle + // + this.btnSearchTitle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnSearchTitle.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnSearchTitle.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnSearchTitle.DisabledBackColor = System.Drawing.Color.Empty; + this.btnSearchTitle.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnSearchTitle.Location = new System.Drawing.Point(527, 32); + this.btnSearchTitle.Name = "btnSearchTitle"; + this.btnSearchTitle.Size = new System.Drawing.Size(56, 23); + this.btnSearchTitle.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearchTitle.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearchTitle.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearchTitle.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnSearchTitle.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnSearchTitle.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnSearchTitle.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnSearchTitle.Style.GradientAngle = 90; + this.btnSearchTitle.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearchTitle.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearchTitle.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearchTitle.TabIndex = 967; + this.btnSearchTitle.Text = "搜索标题"; + this.btnSearchTitle.Click += new System.EventHandler(this.btnSearchTitle_Click); + // // WXSaleAssistantForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; this.ClientSize = new System.Drawing.Size(1404, 478); this.Controls.Add(this.splitContainer1); this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.KeyPreview = true; this.Name = "WXSaleAssistantForm"; this.Text = "微信带货助手"; - this.Load += new System.EventHandler(this.GetJuShuitanProdForm_Load); + this.TitleText = "微信带货助手"; + this.Load += new System.EventHandler(this.WXSaleAssistantForm_Load); + this.Controls.SetChildIndex(this.splitContainer1, 0); this.splitContainer1.Panel1.ResumeLayout(false); this.splitContainer1.Panel2.ResumeLayout(false); - this.splitContainer1.Panel2.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); this.splitContainer1.ResumeLayout(false); this.ucTabControlMetro1.ResumeLayout(false); @@ -944,6 +959,8 @@ namespace TemuKJD.ToolForms ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).EndInit(); this.pnlMultiLogin.ResumeLayout(false); + this.panel1.ResumeLayout(false); + this.panel1.PerformLayout(); this.ResumeLayout(false); } @@ -970,7 +987,6 @@ namespace TemuKJD.ToolForms private System.Windows.Forms.TextBox txtWaitSeconds; private System.Windows.Forms.Label label8; private DevComponents.DotNetBar.PanelEx btnExportCookie; - private UserControls.UcTabControlMetro ucTabControlMetro1; private System.Windows.Forms.TabPage tabPage1; private System.Windows.Forms.SplitContainer splitContainer2; private System.Windows.Forms.Button btnNext; @@ -1005,5 +1021,7 @@ namespace TemuKJD.ToolForms private System.Windows.Forms.TextBox txtRetryTimes; private System.Windows.Forms.Label label5; private DevComponents.DotNetBar.PanelEx btnReload; + public System.Windows.Forms.Panel panel1; + public UserControls.UcTabControlMetro ucTabControlMetro1; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.cs b/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.cs index 29cee14..caebfe6 100644 --- a/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.cs @@ -29,12 +29,13 @@ using Work; namespace TemuKJD.ToolForms { - public partial class WXSaleAssistantForm : BaseForms.BaseForm + public partial class WXSaleAssistantForm : BaseGeneralForm { + public string OpenType { get; set; } = "collect"; + public string InitUrl { get; set; } = "https://store.weixin.qq.com/talent/pool/home"; // https://store.weixin.qq.com/talent/home public bool isGetingProdWithCef = false; public CancellationTokenSource cancellationTokenSource { get; set; } = null; ConcurrentList lstWxSaleAssistantSpuItemInfo = new ConcurrentList(); - string InitUrl = "https://store.weixin.qq.com/talent/pool/home"; public ChromiumWebBrowser cefWebBrowser = null; private string currentUrl = ""; int pageStart = 1; @@ -50,53 +51,65 @@ namespace TemuKJD.ToolForms InitializeComponent(); } - private void GetJuShuitanProdForm_Load(object sender, EventArgs e) + private void WXSaleAssistantForm_Load(object sender, EventArgs e) { //this.ucTabControlMetro1.TabPages.Remove(tabPage3); + if (OpenType == "login") + { + this.ucTabControlMetro1.TabPages.Remove(tabPage2); + this.Height = 900; + this.Width = 1360; + this.splitContainer1.SplitterDistance = splitContainer1.Height - 10; + this.CenterToScreen(); + } + //this.splitContainer1.SplitterDistance = 472; this.dgvProduct.AddSelectorColumn("colCheck"); this.dgvProduct.AddImgColumn("colImg", "colImgUrl"); - lstWxSaleAssistantSpuItemInfo = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_sale_assistant_list_" + MainForm.ProcessCount); if (lstWxSaleAssistantSpuItemInfo == null) lstWxSaleAssistantSpuItemInfo = new ConcurrentList(); - pbLoading.Visible = true; - Task.Run(() => + if (OpenType == "collect") { - int id = 0; - foreach (var prod in lstWxSaleAssistantSpuItemInfo) + + pbLoading.Visible = true; + Task.Run(() => { - id++; - if (id % 50 == 0) - Thread.Sleep(1); + int id = 0; + foreach (var prod in lstWxSaleAssistantSpuItemInfo) + { + id++; + if (id % 50 == 0) + Thread.Sleep(1); + Invoke(new Action(() => + { + var rowId = this.dgvProduct.Rows.Add( + true, + prod.shop.appId, + prod.shop.name, + prod.spu.id, + prod.spu.headImage, //.Replace("https://", "http://"), + DataGridViewExtension.defaultBitmap, + prod.spu.name, + prod.spu.sales.monthlySales, + prod.spu.sales.cumulativeSales, + "", // 没有类目信息,不填 + prod.spu.price.sellingPrice * 0.01m, + "删除", + prod.operateMsg + ); + dgvProduct.Rows[rowId].Height = 60; + })); + } Invoke(new Action(() => { - var rowId = this.dgvProduct.Rows.Add( - true, - prod.shop.appId, - prod.shop.name, - prod.spu.id, - prod.spu.headImage, //.Replace("https://", "http://"), - DataGridViewExtension.defaultBitmap, - prod.spu.name, - prod.spu.sales.monthlySales, - prod.spu.sales.cumulativeSales, - "", // 没有类目信息,不填 - prod.spu.price.sellingPrice * 0.01m, - "删除", - prod.operateMsg - ); - dgvProduct.Rows[rowId].Height = 60; + pbLoading.Visible = false; })); - } - Invoke(new Action(() => - { - pbLoading.Visible = false; - })); - }); + }); + } InitCef(); } @@ -128,24 +141,33 @@ namespace TemuKJD.ToolForms Task.Run(() => { - string serverCookie = ""; - var url = BaseClass.BuildWXObjString("user/get_wx_sale_assistant_cookie"); - var data = UserLogin.GetSignaturex(); - var result = GetHtml.PostUtf8(url, data); - if (!result.Contains("\"code\":200")) - result = GetHtml.PostUtf8(url, data); - List cookieLst = new List(); - try + + if (OpenType == "collect") { - serverCookie = JsonHelper.SerializeObject(JsonHelper.JObjectParse(result)["cookie"]); - cookieLst = JsonHelper.DeserializeJsonToList(serverCookie); + string serverCookie = ""; + var url = BaseClass.BuildWXObjString("user/get_wx_sale_assistant_cookie"); + var data = UserLogin.GetSignaturex(); + var result = GetHtml.PostUtf8(url, data); + if (!result.Contains("\"code\":200")) + result = GetHtml.PostUtf8(url, data); + try + { + serverCookie = JsonHelper.SerializeObject(JsonHelper.JObjectParse(result)["cookie"]); + cookieLst = JsonHelper.DeserializeJsonToList(serverCookie); + if (cookieLst == null) + cookieLst = new List(); + } + catch + { + } + } + if (OpenType == "login") + { + cookieLst = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_sale_assistant_cookies"); if (cookieLst == null) cookieLst = new List(); } - catch - { - } // cef138必须init后方可设置或删除cookie @@ -169,7 +191,40 @@ namespace TemuKJD.ToolForms private void CefWebBrowser_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e) { + Task.Run(() => + { + var jsStr = @"(function() { return document.body.innerHTML.indexOf('登录超时,请重新'); })();"; + var client = cefWebBrowser.GetDevToolsClient(); + if (client != null) + { + var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true); + result.Wait(5000); + string resultStr = result.Result.Result.Value.ParseToString(); + if (resultStr.ParseToInt() > 0) + { + CEFBrowser.DeleteCookie(cefWebBrowser.GetCookieManager(null)); + cefWebBrowser.Load("https://store.weixin.qq.com/talent/?redirect_url=%2Fpool%2Fhome"); + return; + } + } + + if (OpenType == "login" && !isLogin && (cefWebBrowser.Address.StartsWith("https://store.weixin.qq.com/talent/home") || + cefWebBrowser.Address.StartsWith("https://store.weixin.qq.com/talent/pool/home"))) + { + isLogin = true; + Thread.Sleep(500); + List cookieList = CEFBrowser.GetCookieList("store.weixin.qq.com", cefWebBrowser.GetCookieManager(null)); + NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_sale_assistant_cookies", cookieList); + if (this.Created) + Invoke(new Action(() => + { + BaseMsgForm.ShowInfo("登录成功"); + this.Close(); + })); + } + }); } + bool isLogin = false; private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData, IRequest request) { @@ -276,11 +331,12 @@ namespace TemuKJD.ToolForms { Task.Run(() => { - Invoke(new Action(() => - { - currentUrl = e.Address; - txtAddress.Text = e.Address; - })); + if (this.Created) + Invoke(new Action(() => + { + currentUrl = e.Address; + txtAddress.Text = e.Address; + })); }); } } @@ -573,7 +629,7 @@ namespace TemuKJD.ToolForms //{"code":0,"pageContextResp":{"hasNext":false},"requestId":"1778688044492"} int errorCnt = 0; int nomoreCnt = 0; - var spuItemsData = GetAssistant.wxGetAssistant(cookieShop, getSpuItemsParams); + var spuItemsData = WxGetAssistant.wxGetAssistant(cookieShop, getSpuItemsParams); for (int i = 1; i <= noNextPageRetryTimes; i++) // 重试50次 { if (!spuItemsData.Contains("\"code\":0") || spuItemsData.Contains("\"hasNext\":false")) @@ -608,7 +664,7 @@ namespace TemuKJD.ToolForms sleepTime = (int)(getDetailWaitSeconds * 1000) - 100 + Randomx.GetId(101, 501); Thread.Sleep(Math.Max(100, sleepTime)); - spuItemsData = GetAssistant.wxGetAssistant(cookieShop, getSpuItemsParams); + spuItemsData = WxGetAssistant.wxGetAssistant(cookieShop, getSpuItemsParams); } if (i % 10 == 0 && spuItemsData.Contains("\"hasNext\":false")) { @@ -814,7 +870,7 @@ namespace TemuKJD.ToolForms public int? cumulativeSales { get; set; } // 71960 } - public class GetAssistant + public class WxGetAssistant { public static string wxGetAssistant(ShopLoginInfo shop, JObject wxCateAuthParam) { @@ -824,5 +880,21 @@ namespace TemuKJD.ToolForms var result = WXHttpResponseBLL.WeiXinAssistantPostResponse(shop, url, data, referer); return result; } + + // {"filter":{"spuFilter":{"monthlySalesRange":null,"goodEvaluationRatioRange":null,"shopScoreRange":null},"spuSort":{"sortOrder":0,"sortType":0},"category":null},"pageContext":{"pageContext":null,"limit":15},"requestContext":{"sessionId":"1779790694673","requestId":"1779790757479","parentSearchId":"53","displayedSpus":null},"keyword":"10000708952443"} + public static string wxGetAssistant(ShopLoginInfo shop, string prodId) + { + string url = "https://store.weixin.qq.com/shop-faas/mmeckolpoolnode/ecSearchSelectionSpuItems?token=&lang=zh_CN"; + string referer = "https://store.weixin.qq.com/talent/pool/home?keyword=" + prodId; + string body = @"{""filter"":{""spuFilter"":{""monthlySalesRange"":null,""goodEvaluationRatioRange"":null,""shopScoreRange"":null}, +""spuSort"":{""sortOrder"":0,""sortType"":0},""category"":null},""pageContext"":{""pageContext"":null,""limit"":15}, +""requestContext"":{""sessionId"":""" + BaseClass.DateTimeToTimestampMilliseconds(DateTime.Now.AddSeconds(-Randomx.GetId(10, 100))) + @""", +""requestId"":""" + BaseClass.DateTimeToTimestampMilliseconds(DateTime.Now) + @""",""parentSearchId"":""53"",""displayedSpus"":null}, +""keyword"":""" + prodId + @"""}"; + + var result = WXHttpResponseBLL.WeiXinAssistantPostResponse(shop, url, body, referer); + return result; + } + } } diff --git a/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.resx b/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.resx index 7e0b1a6..82e12d8 100644 --- a/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.resx +++ b/TEMUKJD/WXForms/AdminForms/WXSaleAssistantForm.resx @@ -156,4 +156,182 @@ True + + + + AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ + AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA + OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT + AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj/////// + ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP// + //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4 + mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ + mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ + mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ + mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ + mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ + mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY + //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ + mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf + //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/ + //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv/// + //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP// + if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ + mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz + MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn/// + iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4 + kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP// + /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ + mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ + mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ + mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ + mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ + //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ + mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ + mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ + mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT + mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj/////// + ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn/// + //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ + mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ + mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ + mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ + mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj/////////// + ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY////// + ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP + //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4 + /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ + mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ + mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7 + mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4 + eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb//// + ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ + mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj///// + /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/ + ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ + mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ + mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ + mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ + mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA + AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA + AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz + MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA + AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w + AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA + Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA + AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA + AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA + AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA + AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA + AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA + AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA + AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD///// + wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w== + + \ No newline at end of file diff --git a/TEMUKJD/WXForms/OrderForms/WXOrderListForm.Designer.cs b/TEMUKJD/WXForms/OrderForms/WXOrderListForm.Designer.cs index cc11a00..b385306 100644 --- a/TEMUKJD/WXForms/OrderForms/WXOrderListForm.Designer.cs +++ b/TEMUKJD/WXForms/OrderForms/WXOrderListForm.Designer.cs @@ -32,35 +32,37 @@ namespace TemuKJD.WXForms.OrderForms private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle23 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle24 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle25 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle26 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle27 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle28 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle29 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle30 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle31 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle32 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle33 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle34 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle35 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle36 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle37 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle38 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle39 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle40 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle41 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle42 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle43 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle44 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle45 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle46 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle47 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle48 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle49 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle50 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle51 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle52 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle53 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle54 = new System.Windows.Forms.DataGridViewCellStyle(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.ucGroupBoxEx3 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.chkSkipHasNotesOrder = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.lblOrderCount = new System.Windows.Forms.Label(); this.btnBatchNotes = new DevComponents.DotNetBar.PanelEx(); this.txtFilterPriceNotContainWords = new System.Windows.Forms.TextBox(); this.label21 = new System.Windows.Forms.Label(); @@ -91,6 +93,10 @@ namespace TemuKJD.WXForms.OrderForms this.chkFilterBeginTime = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkFilterEndTime = new TemuKJD.UserComponent.UcCheckBox(this.components); this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.label22 = new System.Windows.Forms.Label(); + this.dtpEndTime = new System.Windows.Forms.DateTimePicker(); + this.dtpStartTime = new System.Windows.Forms.DateTimePicker(); + this.chkTimeDuration = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkHasSend = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkWaitSend = new TemuKJD.UserComponent.UcCheckBox(this.components); this.label1 = new System.Windows.Forms.Label(); @@ -273,6 +279,8 @@ namespace TemuKJD.WXForms.OrderForms this.ucGroupBoxEx3.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.ucGroupBoxEx3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucGroupBoxEx3.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx3.Controls.Add(this.chkSkipHasNotesOrder); + this.ucGroupBoxEx3.Controls.Add(this.lblOrderCount); this.ucGroupBoxEx3.Controls.Add(this.btnBatchNotes); this.ucGroupBoxEx3.Controls.Add(this.txtFilterPriceNotContainWords); this.ucGroupBoxEx3.Controls.Add(this.label21); @@ -309,13 +317,35 @@ namespace TemuKJD.WXForms.OrderForms this.ucGroupBoxEx3.TabStop = false; this.ucGroupBoxEx3.Text = "订单操作"; // + // chkSkipHasNotesOrder + // + this.chkSkipHasNotesOrder.AutoSize = true; + this.chkSkipHasNotesOrder.Checked = true; + this.chkSkipHasNotesOrder.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkSkipHasNotesOrder.Location = new System.Drawing.Point(287, 129); + this.chkSkipHasNotesOrder.Name = "chkSkipHasNotesOrder"; + this.chkSkipHasNotesOrder.Size = new System.Drawing.Size(111, 21); + this.chkSkipHasNotesOrder.TabIndex = 1172; + this.chkSkipHasNotesOrder.Text = "跳过已备注订单"; + this.chkSkipHasNotesOrder.UseVisualStyleBackColor = true; + // + // lblOrderCount + // + this.lblOrderCount.AutoSize = true; + this.lblOrderCount.Location = new System.Drawing.Point(31, 130); + this.lblOrderCount.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.lblOrderCount.Name = "lblOrderCount"; + this.lblOrderCount.Size = new System.Drawing.Size(115, 17); + this.lblOrderCount.TabIndex = 1146; + this.lblOrderCount.Text = "当前展示订单:0 条"; + // // btnBatchNotes // this.btnBatchNotes.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnBatchNotes.Cursor = System.Windows.Forms.Cursors.Hand; this.btnBatchNotes.DisabledBackColor = System.Drawing.Color.Empty; this.btnBatchNotes.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnBatchNotes.Location = new System.Drawing.Point(420, 129); + this.btnBatchNotes.Location = new System.Drawing.Point(195, 127); this.btnBatchNotes.Name = "btnBatchNotes"; this.btnBatchNotes.Size = new System.Drawing.Size(84, 23); this.btnBatchNotes.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -357,7 +387,7 @@ namespace TemuKJD.WXForms.OrderForms this.btnStopBatchOnlieWaybill.CanvasColor = System.Drawing.SystemColors.Control; this.btnStopBatchOnlieWaybill.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnStopBatchOnlieWaybill.DisabledBackColor = System.Drawing.Color.Empty; - this.btnStopBatchOnlieWaybill.Location = new System.Drawing.Point(213, 129); + this.btnStopBatchOnlieWaybill.Location = new System.Drawing.Point(621, 127); this.btnStopBatchOnlieWaybill.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); this.btnStopBatchOnlieWaybill.Name = "btnStopBatchOnlieWaybill"; this.btnStopBatchOnlieWaybill.Size = new System.Drawing.Size(85, 23); @@ -384,7 +414,7 @@ namespace TemuKJD.WXForms.OrderForms this.btnBatchOnlieWaybill.Cursor = System.Windows.Forms.Cursors.Hand; this.btnBatchOnlieWaybill.DisabledBackColor = System.Drawing.Color.Empty; this.btnBatchOnlieWaybill.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnBatchOnlieWaybill.Location = new System.Drawing.Point(124, 129); + this.btnBatchOnlieWaybill.Location = new System.Drawing.Point(532, 127); this.btnBatchOnlieWaybill.Name = "btnBatchOnlieWaybill"; this.btnBatchOnlieWaybill.Size = new System.Drawing.Size(84, 23); this.btnBatchOnlieWaybill.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -409,7 +439,7 @@ namespace TemuKJD.WXForms.OrderForms this.btnRefreshPrintId.Cursor = System.Windows.Forms.Cursors.Hand; this.btnRefreshPrintId.DisabledBackColor = System.Drawing.Color.Empty; this.btnRefreshPrintId.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnRefreshPrintId.Location = new System.Drawing.Point(34, 129); + this.btnRefreshPrintId.Location = new System.Drawing.Point(442, 127); this.btnRefreshPrintId.Name = "btnRefreshPrintId"; this.btnRefreshPrintId.Size = new System.Drawing.Size(84, 23); this.btnRefreshPrintId.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -725,6 +755,10 @@ namespace TemuKJD.WXForms.OrderForms | 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.label22); + this.ucGroupBoxEx4.Controls.Add(this.dtpEndTime); + this.ucGroupBoxEx4.Controls.Add(this.dtpStartTime); + this.ucGroupBoxEx4.Controls.Add(this.chkTimeDuration); this.ucGroupBoxEx4.Controls.Add(this.chkHasSend); this.ucGroupBoxEx4.Controls.Add(this.chkWaitSend); this.ucGroupBoxEx4.Controls.Add(this.label1); @@ -738,6 +772,46 @@ namespace TemuKJD.WXForms.OrderForms this.ucGroupBoxEx4.TabStop = false; this.ucGroupBoxEx4.Text = "商品流量查询"; // + // label22 + // + this.label22.AutoSize = true; + this.label22.Location = new System.Drawing.Point(30, 95); + this.label22.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.label22.Name = "label22"; + this.label22.Size = new System.Drawing.Size(56, 17); + this.label22.TabIndex = 985; + this.label22.Text = "结束时间"; + // + // dtpEndTime + // + this.dtpEndTime.CustomFormat = "yyyy-MM-dd HH:mm"; + this.dtpEndTime.Format = System.Windows.Forms.DateTimePickerFormat.Custom; + this.dtpEndTime.Location = new System.Drawing.Point(86, 92); + this.dtpEndTime.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.dtpEndTime.Name = "dtpEndTime"; + this.dtpEndTime.Size = new System.Drawing.Size(178, 23); + this.dtpEndTime.TabIndex = 984; + // + // dtpStartTime + // + this.dtpStartTime.CustomFormat = "yyyy-MM-dd HH:mm"; + this.dtpStartTime.Format = System.Windows.Forms.DateTimePickerFormat.Custom; + this.dtpStartTime.Location = new System.Drawing.Point(86, 63); + this.dtpStartTime.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.dtpStartTime.Name = "dtpStartTime"; + this.dtpStartTime.Size = new System.Drawing.Size(178, 23); + this.dtpStartTime.TabIndex = 982; + // + // chkTimeDuration + // + this.chkTimeDuration.AutoSize = true; + this.chkTimeDuration.Location = new System.Drawing.Point(16, 64); + this.chkTimeDuration.Name = "chkTimeDuration"; + this.chkTimeDuration.Size = new System.Drawing.Size(75, 21); + this.chkTimeDuration.TabIndex = 983; + this.chkTimeDuration.Text = "开始时间"; + this.chkTimeDuration.UseVisualStyleBackColor = true; + // // chkHasSend // this.chkHasSend.AutoSize = true; @@ -1194,19 +1268,19 @@ namespace TemuKJD.WXForms.OrderForms // this.dgvShop.AllowUserToAddRows = false; this.dgvShop.AllowUserToDeleteRows = false; - dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + dataGridViewCellStyle28.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle28; this.dgvShop.AutoRowNumber = true; this.dgvShop.BackgroundColor = System.Drawing.Color.White; this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + dataGridViewCellStyle29.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle29.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle29.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle29.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle29.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle29.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle29.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle29; this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colSelect, @@ -1838,19 +1912,19 @@ namespace TemuKJD.WXForms.OrderForms // this.dgvOrder.AllowUserToAddRows = false; this.dgvOrder.AllowUserToDeleteRows = false; - dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvOrder.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3; + dataGridViewCellStyle30.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvOrder.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle30; this.dgvOrder.AutoRowNumber = true; this.dgvOrder.BackgroundColor = System.Drawing.Color.White; this.dgvOrder.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvOrder.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4; + dataGridViewCellStyle31.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle31.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle31.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle31.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle31.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle31.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle31.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvOrder.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle31; this.dgvOrder.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvOrder.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colCheck, @@ -1906,6 +1980,9 @@ namespace TemuKJD.WXForms.OrderForms this.dgvOrder.Size = new System.Drawing.Size(1326, 442); this.dgvOrder.TabIndex = 187; this.dgvOrder.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvSelectProduct_CellContentClick); + this.dgvOrder.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvOrder_CellDoubleClick); + this.dgvOrder.RowsAdded += new System.Windows.Forms.DataGridViewRowsAddedEventHandler(this.dgvOrder_RowsAdded); + this.dgvOrder.RowsRemoved += new System.Windows.Forms.DataGridViewRowsRemovedEventHandler(this.dgvOrder_RowsRemoved); // // colCheck // @@ -1927,8 +2004,8 @@ namespace TemuKJD.WXForms.OrderForms // // colSupplierName // - dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5; + dataGridViewCellStyle32.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle32; this.colSupplierName.Frozen = true; this.colSupplierName.HeaderText = "店铺名称"; this.colSupplierName.Name = "colSupplierName"; @@ -1989,8 +2066,8 @@ namespace TemuKJD.WXForms.OrderForms // // colOrderTime // - dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colOrderTime.DefaultCellStyle = dataGridViewCellStyle6; + dataGridViewCellStyle33.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOrderTime.DefaultCellStyle = dataGridViewCellStyle33; this.colOrderTime.HeaderText = "时间"; this.colOrderTime.Name = "colOrderTime"; this.colOrderTime.ReadOnly = true; @@ -2013,8 +2090,8 @@ namespace TemuKJD.WXForms.OrderForms // // colProdInfo // - dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProdInfo.DefaultCellStyle = dataGridViewCellStyle7; + dataGridViewCellStyle34.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProdInfo.DefaultCellStyle = dataGridViewCellStyle34; this.colProdInfo.HeaderText = "商品信息"; this.colProdInfo.Name = "colProdInfo"; this.colProdInfo.ReadOnly = true; @@ -2032,8 +2109,8 @@ namespace TemuKJD.WXForms.OrderForms // // colProductName // - dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProductName.DefaultCellStyle = dataGridViewCellStyle8; + dataGridViewCellStyle35.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductName.DefaultCellStyle = dataGridViewCellStyle35; this.colProductName.HeaderText = "商品名称"; this.colProductName.Name = "colProductName"; this.colProductName.ReadOnly = true; @@ -2057,8 +2134,8 @@ namespace TemuKJD.WXForms.OrderForms // // colSkuSpec // - dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colSkuSpec.DefaultCellStyle = dataGridViewCellStyle9; + dataGridViewCellStyle36.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSkuSpec.DefaultCellStyle = dataGridViewCellStyle36; this.colSkuSpec.HeaderText = "Sku规格"; this.colSkuSpec.Name = "colSkuSpec"; this.colSkuSpec.ReadOnly = true; @@ -2066,8 +2143,8 @@ namespace TemuKJD.WXForms.OrderForms // // colSkuCode // - dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colSkuCode.DefaultCellStyle = dataGridViewCellStyle10; + dataGridViewCellStyle37.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSkuCode.DefaultCellStyle = dataGridViewCellStyle37; this.colSkuCode.HeaderText = "Sku货号"; this.colSkuCode.Name = "colSkuCode"; this.colSkuCode.ReadOnly = true; @@ -2076,8 +2153,8 @@ namespace TemuKJD.WXForms.OrderForms // // colCode // - dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colCode.DefaultCellStyle = dataGridViewCellStyle11; + dataGridViewCellStyle38.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colCode.DefaultCellStyle = dataGridViewCellStyle38; this.colCode.HeaderText = "货号信息"; this.colCode.Name = "colCode"; this.colCode.ReadOnly = true; @@ -2100,9 +2177,9 @@ namespace TemuKJD.WXForms.OrderForms // // colPriceCnt // - dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; - dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colPriceCnt.DefaultCellStyle = dataGridViewCellStyle12; + dataGridViewCellStyle39.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + dataGridViewCellStyle39.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colPriceCnt.DefaultCellStyle = dataGridViewCellStyle39; this.colPriceCnt.HeaderText = "价/量"; this.colPriceCnt.Name = "colPriceCnt"; this.colPriceCnt.ReadOnly = true; @@ -2110,9 +2187,9 @@ namespace TemuKJD.WXForms.OrderForms // // colTotalPrice // - dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; - dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colTotalPrice.DefaultCellStyle = dataGridViewCellStyle13; + dataGridViewCellStyle40.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + dataGridViewCellStyle40.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colTotalPrice.DefaultCellStyle = dataGridViewCellStyle40; this.colTotalPrice.HeaderText = "合计"; this.colTotalPrice.Name = "colTotalPrice"; this.colTotalPrice.ReadOnly = true; @@ -2120,8 +2197,8 @@ namespace TemuKJD.WXForms.OrderForms // // colDiscount // - dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; - this.colDiscount.DefaultCellStyle = dataGridViewCellStyle14; + dataGridViewCellStyle41.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + this.colDiscount.DefaultCellStyle = dataGridViewCellStyle41; this.colDiscount.HeaderText = "优惠"; this.colDiscount.Name = "colDiscount"; this.colDiscount.ReadOnly = true; @@ -2130,9 +2207,9 @@ namespace TemuKJD.WXForms.OrderForms // // colCurrentPrice // - dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; - dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colCurrentPrice.DefaultCellStyle = dataGridViewCellStyle15; + dataGridViewCellStyle42.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + dataGridViewCellStyle42.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colCurrentPrice.DefaultCellStyle = dataGridViewCellStyle42; this.colCurrentPrice.HeaderText = "当前价"; this.colCurrentPrice.Name = "colCurrentPrice"; this.colCurrentPrice.ReadOnly = true; @@ -2140,8 +2217,8 @@ namespace TemuKJD.WXForms.OrderForms // // colCurrentStock // - dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; - this.colCurrentStock.DefaultCellStyle = dataGridViewCellStyle16; + dataGridViewCellStyle43.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + this.colCurrentStock.DefaultCellStyle = dataGridViewCellStyle43; this.colCurrentStock.HeaderText = "现库存"; this.colCurrentStock.Name = "colCurrentStock"; this.colCurrentStock.ReadOnly = true; @@ -2149,8 +2226,8 @@ namespace TemuKJD.WXForms.OrderForms // // colSendGift // - dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; - this.colSendGift.DefaultCellStyle = dataGridViewCellStyle17; + dataGridViewCellStyle44.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; + this.colSendGift.DefaultCellStyle = dataGridViewCellStyle44; this.colSendGift.HeaderText = "礼"; this.colSendGift.Name = "colSendGift"; this.colSendGift.ReadOnly = true; @@ -2173,8 +2250,8 @@ namespace TemuKJD.WXForms.OrderForms // // colOrderStatus // - dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colOrderStatus.DefaultCellStyle = dataGridViewCellStyle18; + dataGridViewCellStyle45.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOrderStatus.DefaultCellStyle = dataGridViewCellStyle45; this.colOrderStatus.HeaderText = "状态"; this.colOrderStatus.Name = "colOrderStatus"; this.colOrderStatus.ReadOnly = true; @@ -2182,8 +2259,8 @@ namespace TemuKJD.WXForms.OrderForms // // colUpdateStatus // - dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colUpdateStatus.DefaultCellStyle = dataGridViewCellStyle19; + dataGridViewCellStyle46.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colUpdateStatus.DefaultCellStyle = dataGridViewCellStyle46; this.colUpdateStatus.HeaderText = "刷新"; this.colUpdateStatus.Name = "colUpdateStatus"; this.colUpdateStatus.ReadOnly = true; @@ -2193,8 +2270,8 @@ namespace TemuKJD.WXForms.OrderForms // // colBuyUrl // - dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colBuyUrl.DefaultCellStyle = dataGridViewCellStyle20; + dataGridViewCellStyle47.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colBuyUrl.DefaultCellStyle = dataGridViewCellStyle47; this.colBuyUrl.HeaderText = "采购地址"; this.colBuyUrl.Name = "colBuyUrl"; this.colBuyUrl.ReadOnly = true; @@ -2210,8 +2287,8 @@ namespace TemuKJD.WXForms.OrderForms // // colReceiveInfo // - dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colReceiveInfo.DefaultCellStyle = dataGridViewCellStyle21; + dataGridViewCellStyle48.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colReceiveInfo.DefaultCellStyle = dataGridViewCellStyle48; this.colReceiveInfo.HeaderText = "收货信息"; this.colReceiveInfo.Name = "colReceiveInfo"; this.colReceiveInfo.ReadOnly = true; @@ -2219,8 +2296,8 @@ namespace TemuKJD.WXForms.OrderForms // // colDecrypt // - dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; - this.colDecrypt.DefaultCellStyle = dataGridViewCellStyle22; + dataGridViewCellStyle49.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; + this.colDecrypt.DefaultCellStyle = dataGridViewCellStyle49; this.colDecrypt.HeaderText = "👁"; this.colDecrypt.Name = "colDecrypt"; this.colDecrypt.ReadOnly = true; @@ -2230,8 +2307,8 @@ namespace TemuKJD.WXForms.OrderForms // // colAddReceiveInfo // - dataGridViewCellStyle23.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; - this.colAddReceiveInfo.DefaultCellStyle = dataGridViewCellStyle23; + dataGridViewCellStyle50.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; + this.colAddReceiveInfo.DefaultCellStyle = dataGridViewCellStyle50; this.colAddReceiveInfo.HeaderText = "填"; this.colAddReceiveInfo.Name = "colAddReceiveInfo"; this.colAddReceiveInfo.ReadOnly = true; @@ -2252,8 +2329,8 @@ namespace TemuKJD.WXForms.OrderForms // // colOnlineWaybill // - dataGridViewCellStyle24.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colOnlineWaybill.DefaultCellStyle = dataGridViewCellStyle24; + dataGridViewCellStyle51.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOnlineWaybill.DefaultCellStyle = dataGridViewCellStyle51; this.colOnlineWaybill.HeaderText = "打印"; this.colOnlineWaybill.Name = "colOnlineWaybill"; this.colOnlineWaybill.ReadOnly = true; @@ -2263,8 +2340,8 @@ namespace TemuKJD.WXForms.OrderForms // // colNotes // - dataGridViewCellStyle25.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colNotes.DefaultCellStyle = dataGridViewCellStyle25; + dataGridViewCellStyle52.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colNotes.DefaultCellStyle = dataGridViewCellStyle52; this.colNotes.HeaderText = "备注"; this.colNotes.Name = "colNotes"; this.colNotes.ReadOnly = true; @@ -2279,8 +2356,8 @@ namespace TemuKJD.WXForms.OrderForms // // colEditNotes // - dataGridViewCellStyle26.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colEditNotes.DefaultCellStyle = dataGridViewCellStyle26; + dataGridViewCellStyle53.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colEditNotes.DefaultCellStyle = dataGridViewCellStyle53; this.colEditNotes.HeaderText = "修改"; this.colEditNotes.Name = "colEditNotes"; this.colEditNotes.ReadOnly = true; @@ -2288,8 +2365,8 @@ namespace TemuKJD.WXForms.OrderForms // // colOpResult // - dataGridViewCellStyle27.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colOpResult.DefaultCellStyle = dataGridViewCellStyle27; + dataGridViewCellStyle54.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colOpResult.DefaultCellStyle = dataGridViewCellStyle54; this.colOpResult.HeaderText = "操作结果"; this.colOpResult.Name = "colOpResult"; this.colOpResult.ReadOnly = true; @@ -2582,5 +2659,11 @@ namespace TemuKJD.WXForms.OrderForms private System.Windows.Forms.DataGridViewLinkColumn colEditNotes; private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult; private DevComponents.DotNetBar.PanelEx btnBatchNotes; + private System.Windows.Forms.Label lblOrderCount; + private UserComponent.UcCheckBox chkSkipHasNotesOrder; + private System.Windows.Forms.Label label22; + private System.Windows.Forms.DateTimePicker dtpEndTime; + private System.Windows.Forms.DateTimePicker dtpStartTime; + private UserComponent.UcCheckBox chkTimeDuration; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/OrderForms/WXOrderListForm.cs b/TEMUKJD/WXForms/OrderForms/WXOrderListForm.cs index 6c35247..b8df775 100644 --- a/TEMUKJD/WXForms/OrderForms/WXOrderListForm.cs +++ b/TEMUKJD/WXForms/OrderForms/WXOrderListForm.cs @@ -36,6 +36,7 @@ using TemuKJD.Helper; using NaiBa.CefHelper.Handler; using CefSharp; using TemuKJD.WXForms.ProductForms; +using CefSharp.WinForms; namespace TemuKJD.WXForms.OrderForms { @@ -61,6 +62,8 @@ namespace TemuKJD.WXForms.OrderForms private void UserSelectDbProductForm_Load(object sender, EventArgs e) { + btnClearFilter_Click(null, null); + dgvOrder.AddMergeColumn(new List() { "colOrderStatus" , "colUpdateStatus" }); dgvOrder.AddMergeColumnHeader(new List() { "colOrderStatus" , "colUpdateStatus" }, "订单状态"); @@ -203,7 +206,7 @@ namespace TemuKJD.WXForms.OrderForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); @@ -347,6 +350,38 @@ namespace TemuKJD.WXForms.OrderForms } } + private void dgvOrder_CellDoubleClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + string headerText = dgvOrder.Columns[e.ColumnIndex].HeaderText; + var shopId = dgvOrder.Rows[e.RowIndex].Cells["colSupplierId"].Value.ParseToString(); + var spuId = dgvOrder.Rows[e.RowIndex].Cells["colSpuId"].Value.ParseToString(); + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + var row = dgvOrder.Rows[e.RowIndex]; + var cell = row.Cells[e.ColumnIndex]; + var orderId = row.Cells["colOrderId"].Value.ParseToString(); + switch (headerText) + { + case "采购地址": + string buyUrl = row.Cells["colBuyUrl"].Value.ParseToString(); + if (!string.IsNullOrEmpty(buyUrl)) + { + Clipboard.SetText(buyUrl); + statusBar.lblTaskStatus.Text = "店铺 " + shop.ShopAccount + " 订单 " + orderId + " 采购地址复制成功"; + } + break; + case "收货信息": + string receiveInfo = row.Cells["colReceiveInfo"].Value.ParseToString(); + if (!string.IsNullOrEmpty(receiveInfo)) + { + Clipboard.SetText(row.Cells["colReceiveInfo"].Value.ParseToString()); + statusBar.lblTaskStatus.Text = "店铺 " + shop.ShopAccount + " 订单 " + orderId + " 收货信息复制成功"; + } + break; + } + } + private void dgvSelectProduct_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex < 0 || e.RowIndex < 0) @@ -602,55 +637,7 @@ namespace TemuKJD.WXForms.OrderForms return; } - var deRst = "测试地址写入{\"code\"0}"; - deRst = WXOrderList.decryptOrder(shop, orderId); - if (deRst.Contains("\"code\":0")) - { - var url = BaseClass.BuildObjString("shop/wx_add_mdy_order_address"); - var data = UserLogin.GetSignaturex(); - data += "&shop_id=" + shop.ShopId; - data += "&order_id=" + orderId; - data += "&order_address=" + GetHtml.UrlEncodeUtf8(deRst); - var html = GetHtml.PostUtf8(url, data); - if (!html.Contains("\"code\":200")) - html = GetHtml.PostUtf8(url, data); - if (!html.Contains("\"code\":200")) - { - var errMsg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg"); - Invoke(new Action(() => - { - foreach (var rw in rows) - { - rw.Cells["colOpResult"].Value = errMsg; - rw.Cells["colReceiveInfo"].Value = GetDecryptOrder(deRst); - rw.Cells["colReceiveInfo"].Style.ForeColor = DefaultForeColor; - } - BaseMsgForm.ShowError("查看地址成功但保存到服务端失败:" + errMsg); - })); - } - else - { - Invoke(new Action(() => - { - foreach(var rw in rows) - { - rw.Cells["colReceiveInfo"].Value = GetDecryptOrder(deRst); - rw.Cells["colReceiveInfo"].Style.ForeColor = DefaultForeColor; - rw.Cells["colOpResult"].Value = "查看地址成功"; - } - })); - } - } - else - { - var error = BaseRegex.GetStringJsonByRegs(ref deRst, deRst, "err_msg", "error_msg", "errMsg", "errorMsg", "msg"); - Invoke(new Action(() => - { - row.Cells["colOpResult"].Value = "查看地址失败:" + error; - BaseMsgForm.ShowError("查看地址失败:" + error); - })); - } - //Invoke(new Action(() => { cell.Value = "👁"; })); + ShowOrderAddress(shop, orderId, row); Invoke(new Action(() => { pbLoading.Visible = false; })); }); } @@ -686,6 +673,18 @@ namespace TemuKJD.WXForms.OrderForms Task.Run(() => { var rows = dgvOrder.Rows.Cast().Where(r => r.Cells["colOrderId"].Value.ParseToString() == orderId); + if (!row.Cells["colReceiveInfo"].Value.ParseToString().Contains("未查看地址")) + { + Invoke(new Action(() => + { + foreach (var rw in rows) + { + rw.Cells["colOpResult"].Value = "已获取地址,请勿重复打印"; + } + })); + return; + } + var currentStatus = UpdateOrderStatus(shop, orderId); Invoke(new Action(() => { @@ -699,7 +698,26 @@ namespace TemuKJD.WXForms.OrderForms BaseMsgForm.ShowError("订单状态已变化,请勿拍单"); return; } + + if (row.Cells["colDecrypt"].Value.ParseToString() != "❌") + { + ShowOrderAddress(shop, orderId, row, false); + } + + if (!row.Cells["colReceiveInfo"].Value.ParseToString().Contains("未查看地址")) + { + Invoke(new Action(() => + { + foreach (var rw in rows) + { + rw.Cells["colOpResult"].Value = "已获取地址,请勿重复打印"; + } + })); + return; + } + GetOnlineWayBill(shop, row); + }); } break; @@ -735,14 +753,90 @@ namespace TemuKJD.WXForms.OrderForms } } + void ShowOrderAddress(ShopLoginInfo shop, string orderId, DataGridViewRow row, bool ShowErrorDialog = true) + { + var rows = dgvOrder.Rows.Cast().Where(r => r.Cells["colOrderId"].Value.ParseToString() == orderId); + var deRst = "测试地址写入{\"code\"0}"; + deRst = WXOrderList.decryptOrder(shop, orderId); + if (deRst.Contains("\"code\":0")) + { + var url = BaseClass.BuildObjString("shop/wx_add_mdy_order_address"); + var data = UserLogin.GetSignaturex(); + data += "&shop_id=" + shop.ShopId; + data += "&order_id=" + orderId; + data += "&order_address=" + GetHtml.UrlEncodeUtf8(deRst); + var html = GetHtml.PostUtf8(url, data); + if (!html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(url, data); + if (!html.Contains("\"code\":200")) + { + var errMsg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg"); + Invoke(new Action(() => + { + foreach (var rw in rows) + { + rw.Cells["colOpResult"].Value = errMsg; + rw.Cells["colReceiveInfo"].Value = GetDecryptOrder(deRst); + rw.Cells["colReceiveInfo"].Style.ForeColor = DefaultForeColor; + } + if (ShowErrorDialog) + BaseMsgForm.ShowError("查看地址成功但保存到服务端失败:" + errMsg); + })); + } + else + { + Invoke(new Action(() => + { + foreach (var rw in rows) + { + rw.Cells["colReceiveInfo"].Value = GetDecryptOrder(deRst); + rw.Cells["colReceiveInfo"].Style.ForeColor = DefaultForeColor; + rw.Cells["colOpResult"].Value = "查看地址成功"; + } + })); + } + } + else + { + var error = BaseRegex.GetStringJsonByRegs(ref deRst, deRst, "err_msg", "error_msg", "errMsg", "errorMsg", "msg"); + if (error.Contains("\"code\":17899002") || error.Contains("\"code\":10020123")) + { + if (error.Contains("\"code\":17899002")) + error = "基于用户隐私保护,无法查看收货信息"; + if (error.Contains("\"code\":10020123")) + error = "今日查看次数已用完"; + Invoke(new Action(() => + { + foreach (var rw in dgvOrder.Rows.Cast().Where(r => r.Cells["colSupplierId"].Value.ParseToString() == shop.ShopId).ToList()) + { + rw.Cells["colDecrypt"].Value = "❌"; + if (rw.Cells["colReceiveInfo"].Value.ParseToString().Contains("未查看地址")) + rw.Cells["colOpResult"].Value = "查看地址失败:" + error; + } + row.Cells["colOpResult"].Value = "查看地址失败:" + error; + if (ShowErrorDialog) + BaseMsgForm.ShowError("查看地址失败:" + error); + })); + } + else + { + Invoke(new Action(() => + { + row.Cells["colOpResult"].Value = "查看地址失败:" + error; + if (ShowErrorDialog) + BaseMsgForm.ShowError("查看地址失败:" + error); + })); + } + } + //Invoke(new Action(() => { cell.Value = "👁"; })); + } + void GetOnlineWayBill(ShopLoginInfo shop, DataGridViewRow row) { var orderId = row.Cells["colOrderId"].Value.ParseToString(); - //Task.Run(() => - //{ - while (isOnlineWayBill) - Thread.Sleep(150); + for (int i = 0; i < 50 && isOnlineWayBill; i++) + Thread.Sleep(200); Invoke(new Action(() => { pbLoading.Visible = true; })); isOnlineWayBill = true; @@ -900,36 +994,44 @@ namespace TemuKJD.WXForms.OrderForms } } + WXShopLoginForm form = null; Invoke(new Action(() => { - if (shop.Chat == null) - { - shop.Chat = CEFBrowser.CreateChromiumWebBrowser("https://store.weixin.qq.com/shop/waybill/allToAll", false); - CustomResourceRequestHandlerLocal resourceRequestHandler = new CustomResourceRequestHandlerLocal(); - resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete; - resourceRequestHandler.BeforeResourceLoadEvent += RequestHandler_BeforeResourceLoad; - shop.Chat.RequestHandler = new CustomRequestHandler(resourceRequestHandler); - var lifeSapnHandler = new LifeSpanHandlerLocal(PopWindowType.SelfWindow); - shop.Chat.LifeSpanHandler = lifeSapnHandler; - shop.Chat.KeyboardHandler = new KeyboardHandler(); - shop.Chat.FrameLoadEnd += CefWebBrowser_FrameLoadEnd; - shop.Chat.AddressChanged += CefWebBrowser_AddressChanged; - shop.Chat.LoadError += CefWebBrowser_LoadError; - shop.Chat.Dock = DockStyle.Fill; - MainForm.instance.cefPanel.Controls.Add(shop.Chat); - } + //if (shop.Chat == null) + //{ + // shop.Chat = CEFBrowser.CreateChromiumWebBrowser("https://store.weixin.qq.com/shop/waybill/allToAll", false); + // CustomResourceRequestHandlerLocal resourceRequestHandler = new CustomResourceRequestHandlerLocal(); + // resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete; + // resourceRequestHandler.BeforeResourceLoadEvent += RequestHandler_BeforeResourceLoad; + // shop.Chat.RequestHandler = new CustomRequestHandler(resourceRequestHandler); + // var lifeSapnHandler = new LifeSpanHandlerLocal(PopWindowType.SelfWindow); + // shop.Chat.LifeSpanHandler = lifeSapnHandler; + // shop.Chat.KeyboardHandler = new KeyboardHandler(); + // shop.Chat.FrameLoadEnd += CefWebBrowser_FrameLoadEnd; + // shop.Chat.AddressChanged += CefWebBrowser_AddressChanged; + // shop.Chat.LoadError += CefWebBrowser_LoadError; + // shop.Chat.Dock = DockStyle.Fill; + // MainForm.instance.cefPanel.Controls.Add(shop.Chat); + //} + //shop.Chat.SendToBack(); + + form = new WXShopLoginForm(shop); + form.openType = EnumOpenType.manage; + form.InitUrl = "https://store.weixin.qq.com/shop/waybill/allToAll"; + form.TopLevel = false; + MainForm.instance.cefPanel.Controls.Add(form); + form.Show(); - shop.Chat.SendToBack(); //MainForm.instance.cefPanel.BringToFront(); MainForm.instance.cefPanel.SendToBack(); MainForm.instance.cefPanel.Visible = true; })); - while (!shop.Chat.IsBrowserInitialized) + while (form.cefWebBrowser == null || !form.cefWebBrowser.IsBrowserInitialized) Thread.Sleep(100); - CEFBrowser.DeleteCookie(shop.Chat.GetCookieManager(null)); + CEFBrowser.DeleteCookie(form.cefWebBrowser.GetCookieManager(null)); var cookieLst = JsonHelper.DeserializeJsonToList(shop.Cookies); - var t = CEFBrowser.SetCookieAsync(JsonHelper.SerializeObject(cookieLst), shop.Chat.GetCookieManager(null)); - shop.Chat.Load("https://store.weixin.qq.com/shop/waybill/allToAll"); + var t = CEFBrowser.SetCookieAsync(JsonHelper.SerializeObject(cookieLst), form.cefWebBrowser.GetCookieManager(null)); + form.cefWebBrowser.Load("https://store.weixin.qq.com/shop/waybill/allToAll"); var jsStr = @"(function() { const element = document.getElementsByName('waybill')[0]; @@ -951,7 +1053,7 @@ namespace TemuKJD.WXForms.OrderForms for (int i = 0; i < 10; i++) { Thread.Sleep(250); - var client = shop.Chat.GetDevToolsClient(); + var client = form.cefWebBrowser.GetDevToolsClient(); if (client != null) { var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true); @@ -985,7 +1087,7 @@ namespace TemuKJD.WXForms.OrderForms for (int i = 0; i < 10; i++) { Thread.Sleep(250); - var client = shop.Chat.GetDevToolsClient(); + var client = form.cefWebBrowser.GetDevToolsClient(); if (client != null) { var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true); @@ -1020,7 +1122,7 @@ namespace TemuKJD.WXForms.OrderForms for (int i = 0; i < 5; i++) { Thread.Sleep(500); - var client = shop.Chat.GetDevToolsClient(); + var client = form.cefWebBrowser.GetDevToolsClient(); if (client != null) { var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true); @@ -1057,7 +1159,7 @@ namespace TemuKJD.WXForms.OrderForms for (int i = 0; i < 5; i++) { Thread.Sleep(500); - var client = shop.Chat.GetDevToolsClient(); + var client = form.cefWebBrowser.GetDevToolsClient(); if (client != null) { var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true); @@ -1075,9 +1177,11 @@ namespace TemuKJD.WXForms.OrderForms isOnlineWayBill = false; - //#endif - Invoke(new Action(() => { pbLoading.Visible = false; })); - //}); + Invoke(new Action(() => + { + form.Close(); + pbLoading.Visible = false; + })); } private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData, IRequest request) @@ -1204,7 +1308,15 @@ namespace TemuKJD.WXForms.OrderForms // 查找订单 pageSize = 30; - var result = WXOrderList.orderListSearch(shop, orderStatus, page, pageSize); + long? startTime = null; + long? endTime = null; + if (chkTimeDuration.Checked) + Invoke(new Action(() => + { + startTime = BaseClass.DateTimeToTimestampMilliseconds(dtpStartTime.Value); + endTime = BaseClass.DateTimeToTimestampMilliseconds(dtpEndTime.Value); + })); + var result = WXOrderList.orderListSearch(shop, orderStatus, page, pageSize, startTime, endTime); if (!result.Contains("\"code\":0")) { ShowShopError(shop, result); @@ -1389,7 +1501,7 @@ namespace TemuKJD.WXForms.OrderForms "", // 在线寄件打印单号 order.expressData?.type == 3 && order.expressData?.status != 1 ? order.expressData?.jumpPath?.Substring((order.expressData?.jumpPath).ParseToString().IndexOf("ewaybillOrderId=")).Replace("ewaybillOrderId=", "") : "", - order.expressData?.type == 3 && order.expressData?.status != 1 ? "再次\r\n打印" : "打印", + order.expressData?.type == 3 && order.expressData?.status != 1 ? "再次\r\n打印" : "打印", order.flagInfo.flagNotes, // 卖家备注 order.flagInfo.flagColor, // 卖家备注颜色 @@ -1468,6 +1580,9 @@ namespace TemuKJD.WXForms.OrderForms { chkHasSend.Checked = true; chkWaitSend.Checked = true; + chkTimeDuration.Checked = false; + dtpStartTime.Value = DateTime.Now.Date; + dtpEndTime.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1); } private void btnFilterShop_Click(object sender, EventArgs e) @@ -1688,20 +1803,49 @@ namespace TemuKJD.WXForms.OrderForms private void btnNotesOK_Click(object sender, EventArgs e) { var orderIds = lblOrderId.Text.Split(';'); + var orderIdStr = lblOrderId.Text; + + if (cancellationTokenSource != null) + cancellationTokenSource.Cancel(); + cancellationTokenSource = new CancellationTokenSource(); Task.Run(() => { + int index = 0; foreach (var orderId in orderIds) { + index++; + if (orderIdStr.Contains(";")) + Invoke(new Action(() => + { + this.statusBar.lblTaskStatus.Text = "正在修改备注 " + index + "/" + orderIds.Length; + })); + if (cancellationTokenSource.IsCancellationRequested) + break; + var notes = txtNotes.Text.Trim(); var tagColor = lblColorTag.Text.ParseToInt(); var rows = dgvOrder.Rows.Cast().Where(r => r.Cells["colOrderId"].Value.ParseToString() == orderId).ToList(); if (rows.Count == 0) continue; + // 批量备注跳过已备注内容 + if (chkSkipHasNotesOrder.Checked && orderIdStr.Contains(";") && !rows[0].Cells["colNotes"].Value.ParseToString().IsNullOrEmpty()) + { + continue; + } + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == rows[0].Cells["colSupplierId"].Value.ParseToString()); if (shop != null) { var notesRst = WXOrderList.addNotes(shop, orderId, notes, tagColor); + { + if (notesRst.Contains("请求超过频率限制")) + { + Thread.Sleep(8000); + notesRst = WXOrderList.addNotes(shop, orderId, notes, tagColor); + } + } + Thread.Sleep(Randomx.GetId(300, 500)); if (notesRst.Contains("\"code\":0")) { Invoke(new Action(() => @@ -1727,15 +1871,21 @@ namespace TemuKJD.WXForms.OrderForms } else { - ShowShopError(shop, notesRst, true); + foreach (var row in rows) + { + var err = BaseRegex.GetStringJsonByRegs(ref notesRst, notesRst, "msg", "errMsg", "err_msg", "errorMsg", "error_msg"); + row.Cells["colOpResult"].Value = "修改备注失败 " + err; + } } } } Invoke(new Action(() => { pnlUpdateNotes.Visible = false; + if (orderIdStr.Contains(";")) + this.statusBar.lblTaskStatus.Text = "备注已修改" + index + "/" + orderIds.Length; })); - }); + }, cancellationTokenSource.Token); } private void btnEditReceiveInfoCancel_Click(object sender, EventArgs e) @@ -1955,6 +2105,7 @@ namespace TemuKJD.WXForms.OrderForms row.Visible = true; } + this.lblOrderCount.Text = "当前展示订单:" + this.dgvOrder.Rows.Cast().Where(r => r.Visible == true).Count().ToString() + " 条"; } private void btnRestore_Click(object sender, EventArgs e) @@ -1981,6 +2132,7 @@ namespace TemuKJD.WXForms.OrderForms { ShowRefreshPrintId(row); } + BaseMsgForm.ShowInfo("已刷新"); } void GetRefreshPrintId() @@ -2056,6 +2208,7 @@ namespace TemuKJD.WXForms.OrderForms continue; } + Thread.Sleep(6000); GetOnlineWayBill(shop, row); } } @@ -2108,6 +2261,25 @@ namespace TemuKJD.WXForms.OrderForms ShowShopError(shop, rst); return "获取\r\n失败"; } + + try + { + // 更新备注信息 + var jArr = JsonHelper.JObjectParse(rst)["orderList"]; + var orderLst = JsonHelper.DeserializeJsonToList(JsonHelper.SerializeObject(jArr)); + var row = dgvOrder.Rows.Cast().ToList().FirstOrDefault(r => r.Cells["colOrderId"].Value.ParseToString() == orderId); + if (row != null) + { + row.Cells["colNotes"].Value = BaseRegex.GetStringJson(ref rst, "flagNotes").ParseToString(); + row.Cells["colNotesColor"].Value = BaseRegex.GetStringJson(ref rst, "flagColor").ParseToInt(); + ShowDgvRow(row, orderLst.FirstOrDefault()); + } + } + catch (Exception ex) + { + ShowShopError(shop, ex.Message); + } + var statusStr = BaseRegex.GetStringJson(ref rst, "statusStr"); if (string.IsNullOrEmpty(statusStr)) statusStr = "不存在"; @@ -2145,6 +2317,16 @@ namespace TemuKJD.WXForms.OrderForms ucCheckBox4.Checked = lblColorTag.Text == "3"; ucCheckBox5.Checked = lblColorTag.Text == "4"; } + + private void dgvOrder_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) + { + this.lblOrderCount.Text = "当前展示订单:" + this.dgvOrder.Rows.Cast().Where(r => r.Visible == true).Count().ToString() + " 条"; + } + + private void dgvOrder_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e) + { + this.lblOrderCount.Text = "当前展示订单:" + this.dgvOrder.Rows.Cast().Where(r => r.Visible == true).Count().ToString() + " 条"; + } } public class WXOrderList @@ -2155,16 +2337,27 @@ namespace TemuKJD.WXForms.OrderForms /// /// 订单状态 20待发货 30已发货 /// - public static string orderListSearch(ShopLoginInfo shop, int orderStatus = 20, int pageNum = 1, int pageSize = 30) + public static string orderListSearch(ShopLoginInfo shop, int orderStatus = 20, int pageNum = 1, int pageSize = 30, long? timeStart = null, long? timeEnd = null) { string url = "https://store.weixin.qq.com/shop-faas/mmchannelstradeorder/list/cgi/orderSearch?token=&lang=zh_CN"; string body = @"{""isSearch"":false,""pageSize"":" + pageSize + - @",""overTime"":0,""pengingShipOneDay"":0,""pengingShipSixHour"":0,""expediteDelivery"":0,""stockoutPunishAlert"":0,""waybillStatus"":0,""pageNum"":" + 1 + + @",""overTime"":0,""pengingShipOneDay"":0,""pengingShipSixHour"":0,""expediteDelivery"":0,""stockoutPunishAlert"":0,""waybillStatus"":0,""pageNum"":1" + @",""onAftersaleOrderExist"":0,""orderStatus"":" + orderStatus + @"}"; if (pageNum > 1) body = @"{""isSearch"":false,""pageSize"":" + pageSize + - @",""overTime"":0,""pengingShipOneDay"":0,""pengingShipSixHour"":0,""expediteDelivery"":0,""stockoutPunishAlert"":0,""waybillStatus"":0,""pageNum"":" + 1 + + @",""overTime"":0,""pengingShipOneDay"":0,""pengingShipSixHour"":0,""expediteDelivery"":0,""stockoutPunishAlert"":0,""waybillStatus"":0,""pageNum"":1" + @",""onAftersaleOrderExist"":0,""orderStatus"":" + orderStatus + @",""page"":" + pageNum + @"}"; + + //@"{""isSearch"":true,""pageSize"":30,""orderId"":"""",""orderTime"":{""type"":0,""time"":[1777564800000,1779379200000]},""telNumber"":"""",""title"":"""",""receiverName"":"""",""finderNickName"":"""",""merchantNotes"":"""",""merchantNotesTagColor"":0,""waybillId"":"""",""productCode"":"""",""inspectStatus"":"""",""finderWay"":0,""searchOrderType"":0,""payMethod"":0,""orderChannel"":0,""bulkbuyActivityId"":"""",""deliveryNegotiationFlag"":0,""transactionId"":"""",""page"":1,""overTime"":0,""pengingShipOneDay"":0,""pengingShipSixHour"":0,""expediteDelivery"":0,""stockoutPunishAlert"":0,""waybillStatus"":0,""pageNum"":1,""onAftersaleOrderExist"":0,""orderStatus"":30,""startCreateTime"":1777564800000,""endCreateTime"":1779379200000}"; + + if (timeStart != null && timeEnd != null) + body = @"{""isSearch"":true,""pageSize"":30,""orderId"":"""",""orderTime"":{""type"":0,""time"":[" + timeStart + @"," + timeEnd + @"]}, +""telNumber"":"""",""title"":"""",""receiverName"":"""",""finderNickName"":"""",""merchantNotes"":"""",""merchantNotesTagColor"":0, +""waybillId"":"""",""productCode"":"""",""inspectStatus"":"""",""finderWay"":0,""searchOrderType"":0,""payMethod"":0,""orderChannel"":0, +""bulkbuyActivityId"":"""",""deliveryNegotiationFlag"":0,""transactionId"":"""",""page"":" + pageNum + @",""overTime"":0,""pengingShipOneDay"":0, +""pengingShipSixHour"":0,""expediteDelivery"":0,""stockoutPunishAlert"":0,""waybillStatus"":0,""pageNum"":1,""onAftersaleOrderExist"":0, +""orderStatus"":" + orderStatus + @",""startCreateTime"":" + timeStart + @",""endCreateTime"":" + timeEnd + @"}"; + string refere = "https://store.weixin.qq.com/shop/order/list"; var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, refere); return result; diff --git a/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs b/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs index a946a17..a700357 100644 --- a/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs +++ b/TEMUKJD/WXForms/ProductForms/ActivityForms/WXActivity618Form.cs @@ -155,7 +155,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs index 585a086..7d8db44 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs @@ -32,46 +32,21 @@ namespace TemuKJD.WXForms.ProductForms private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle 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(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); - this.chkRandomCompanyProd = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.chkUseWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.chkSaveBound = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.chkAiShortTitle = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.label6 = new System.Windows.Forms.Label(); - this.txtWaitSeconds = new System.Windows.Forms.TextBox(); - this.chkHighestPriceSku = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.txtFilterBoundMax = new System.Windows.Forms.TextBox(); - this.label23 = new System.Windows.Forms.Label(); - this.txtFilterBoundMin = new System.Windows.Forms.TextBox(); - this.txtTitleHeadWord = new System.Windows.Forms.TextBox(); - this.btnFilterBound = new DevComponents.DotNetBar.PanelEx(); - this.chkSameSpecPrice = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.label22 = new System.Windows.Forms.Label(); this.txtShippingPriceTimes = new System.Windows.Forms.TextBox(); - this.label12 = new System.Windows.Forms.Label(); this.label13 = new System.Windows.Forms.Label(); - this.label1 = new System.Windows.Forms.Label(); - this.label18 = new System.Windows.Forms.Label(); - this.txtPreDays = new System.Windows.Forms.TextBox(); - this.chkPreSale = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.chkSkipUploaded = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.label5 = new System.Windows.Forms.Label(); - this.txtMinPrice = new System.Windows.Forms.TextBox(); - this.label8 = new System.Windows.Forms.Label(); - this.txtReplaceText = new System.Windows.Forms.TextBox(); - this.label3 = new System.Windows.Forms.Label(); - this.chkUpDraft = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.label7 = new System.Windows.Forms.Label(); this.btnStop = new DevComponents.DotNetBar.PanelEx(); + this.label7 = new System.Windows.Forms.Label(); + this.chkRandomCompanyProd = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkAddMorePriceFirst = new TemuKJD.UserComponent.UcCheckBox(this.components); this.btnClearDgv = new DevComponents.DotNetBar.PanelEx(); this.label14 = new System.Windows.Forms.Label(); @@ -81,7 +56,9 @@ namespace TemuKJD.WXForms.ProductForms this.fPnlPriceRule = new System.Windows.Forms.FlowLayoutPanel(); this.ucAddPrice1 = new TemuKJD.PDDForms.ProductSelectForms.UcAddPrice(); this.ucAddPrice2 = new TemuKJD.PDDForms.ProductSelectForms.UcAddPrice(); + this.label6 = new System.Windows.Forms.Label(); this.lblNewAddPrice = new System.Windows.Forms.Label(); + this.txtWaitSeconds = new System.Windows.Forms.TextBox(); this.txtAddMorePrice = new System.Windows.Forms.TextBox(); this.txtAddTimes = new System.Windows.Forms.TextBox(); this.label10 = new System.Windows.Forms.Label(); @@ -90,6 +67,46 @@ namespace TemuKJD.WXForms.ProductForms this.label4 = new System.Windows.Forms.Label(); this.label9 = new System.Windows.Forms.Label(); this.chkStepAddPrice = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.ucTabControlMetro1 = new TemuKJD.UserControls.UcTabControlMetro(); + this.上传参数 = new System.Windows.Forms.TabPage(); + this.txtDefaultBestBefore = new System.Windows.Forms.TextBox(); + this.chkDefaultBestBefore = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.txtMinPrice = new System.Windows.Forms.TextBox(); + this.btnFilterBound = new DevComponents.DotNetBar.PanelEx(); + this.txtFilterBoundMin = new System.Windows.Forms.TextBox(); + this.chkUseWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.chkUpDraft = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.label25 = new System.Windows.Forms.Label(); + this.chkSkipUploaded = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.chkSameSpecPrice = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.txtPreDays = new System.Windows.Forms.TextBox(); + this.txtReplaceText = new System.Windows.Forms.TextBox(); + this.label8 = new System.Windows.Forms.Label(); + this.chkSaveBound = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.chkAiShortTitle = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.label5 = new System.Windows.Forms.Label(); + this.chkPreSale = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.chkHighestPriceSku = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.txtFilterBoundMax = new System.Windows.Forms.TextBox(); + this.label18 = new System.Windows.Forms.Label(); + this.label23 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.label12 = new System.Windows.Forms.Label(); + this.txtTitleHeadWord = new System.Windows.Forms.TextBox(); + this.label22 = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.佣金上货 = new System.Windows.Forms.TabPage(); + this.txtCommissionChangeValue = new System.Windows.Forms.TextBox(); + this.label30 = new System.Windows.Forms.Label(); + this.cmbCommissionAddOrReduce = new System.Windows.Forms.ComboBox(); + this.label29 = new System.Windows.Forms.Label(); + this.label28 = new System.Windows.Forms.Label(); + this.txtMinUpCommission = new System.Windows.Forms.TextBox(); + this.txtMaxUpCommission = new System.Windows.Forms.TextBox(); + this.label26 = new System.Windows.Forms.Label(); + this.label27 = new System.Windows.Forms.Label(); + this.chkCommission = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.btnLoginAssistant = new DevComponents.DotNetBar.PanelEx(); this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); this.cmbHot = new System.Windows.Forms.ComboBox(); this.btnProdDb = new DevComponents.DotNetBar.PanelEx(); @@ -192,9 +209,7 @@ namespace TemuKJD.WXForms.ProductForms this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); this.btnClear = new DevComponents.DotNetBar.PanelEx(); this.panelEx1 = new DevComponents.DotNetBar.PanelEx(); - this.chkDefaultBestBefore = new TemuKJD.UserComponent.UcCheckBox(this.components); - this.txtDefaultBestBefore = new System.Windows.Forms.TextBox(); - this.label25 = new System.Windows.Forms.Label(); + this.label31 = new System.Windows.Forms.Label(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -203,6 +218,9 @@ namespace TemuKJD.WXForms.ProductForms this.pnlStep.SuspendLayout(); this.panel3.SuspendLayout(); this.fPnlPriceRule.SuspendLayout(); + this.ucTabControlMetro1.SuspendLayout(); + this.上传参数.SuspendLayout(); + this.佣金上货.SuspendLayout(); this.ucGroupBoxEx4.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbSelectProd)).BeginInit(); this.ucGroupBoxEx1.SuspendLayout(); @@ -241,7 +259,7 @@ namespace TemuKJD.WXForms.ProductForms // splitContainer1.Panel2 // this.splitContainer1.Panel2.Controls.Add(this.splitContainer3); - this.splitContainer1.Size = new System.Drawing.Size(1605, 641); + this.splitContainer1.Size = new System.Drawing.Size(1644, 641); this.splitContainer1.SplitterDistance = 165; this.splitContainer1.TabIndex = 11; // @@ -253,45 +271,19 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; - this.ucGroupBoxEx2.Controls.Add(this.label25); - this.ucGroupBoxEx2.Controls.Add(this.txtDefaultBestBefore); - this.ucGroupBoxEx2.Controls.Add(this.chkDefaultBestBefore); - this.ucGroupBoxEx2.Controls.Add(this.chkRandomCompanyProd); - this.ucGroupBoxEx2.Controls.Add(this.chkUseWXComplateProd); - this.ucGroupBoxEx2.Controls.Add(this.chkSaveBound); - this.ucGroupBoxEx2.Controls.Add(this.chkAiShortTitle); - this.ucGroupBoxEx2.Controls.Add(this.label6); - this.ucGroupBoxEx2.Controls.Add(this.txtWaitSeconds); - this.ucGroupBoxEx2.Controls.Add(this.chkHighestPriceSku); - this.ucGroupBoxEx2.Controls.Add(this.txtFilterBoundMax); - this.ucGroupBoxEx2.Controls.Add(this.label23); - this.ucGroupBoxEx2.Controls.Add(this.txtFilterBoundMin); - this.ucGroupBoxEx2.Controls.Add(this.txtTitleHeadWord); - this.ucGroupBoxEx2.Controls.Add(this.btnFilterBound); - this.ucGroupBoxEx2.Controls.Add(this.chkSameSpecPrice); - this.ucGroupBoxEx2.Controls.Add(this.label22); this.ucGroupBoxEx2.Controls.Add(this.txtShippingPriceTimes); - this.ucGroupBoxEx2.Controls.Add(this.label12); this.ucGroupBoxEx2.Controls.Add(this.label13); - this.ucGroupBoxEx2.Controls.Add(this.label1); - this.ucGroupBoxEx2.Controls.Add(this.label18); - this.ucGroupBoxEx2.Controls.Add(this.txtPreDays); - this.ucGroupBoxEx2.Controls.Add(this.chkPreSale); - this.ucGroupBoxEx2.Controls.Add(this.chkSkipUploaded); - this.ucGroupBoxEx2.Controls.Add(this.label5); - this.ucGroupBoxEx2.Controls.Add(this.txtMinPrice); - this.ucGroupBoxEx2.Controls.Add(this.label8); - this.ucGroupBoxEx2.Controls.Add(this.txtReplaceText); - this.ucGroupBoxEx2.Controls.Add(this.label3); - this.ucGroupBoxEx2.Controls.Add(this.chkUpDraft); - this.ucGroupBoxEx2.Controls.Add(this.label7); this.ucGroupBoxEx2.Controls.Add(this.btnStop); + this.ucGroupBoxEx2.Controls.Add(this.label7); + this.ucGroupBoxEx2.Controls.Add(this.chkRandomCompanyProd); this.ucGroupBoxEx2.Controls.Add(this.chkAddMorePriceFirst); this.ucGroupBoxEx2.Controls.Add(this.btnClearDgv); this.ucGroupBoxEx2.Controls.Add(this.label14); this.ucGroupBoxEx2.Controls.Add(this.label15); this.ucGroupBoxEx2.Controls.Add(this.pnlStep); + this.ucGroupBoxEx2.Controls.Add(this.label6); this.ucGroupBoxEx2.Controls.Add(this.lblNewAddPrice); + this.ucGroupBoxEx2.Controls.Add(this.txtWaitSeconds); this.ucGroupBoxEx2.Controls.Add(this.txtAddMorePrice); this.ucGroupBoxEx2.Controls.Add(this.txtAddTimes); this.ucGroupBoxEx2.Controls.Add(this.label10); @@ -300,355 +292,42 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.Controls.Add(this.label4); this.ucGroupBoxEx2.Controls.Add(this.label9); this.ucGroupBoxEx2.Controls.Add(this.chkStepAddPrice); + this.ucGroupBoxEx2.Controls.Add(this.ucTabControlMetro1); this.ucGroupBoxEx2.Location = new System.Drawing.Point(595, 2); this.ucGroupBoxEx2.Name = "ucGroupBoxEx2"; - this.ucGroupBoxEx2.Size = new System.Drawing.Size(1008, 165); + this.ucGroupBoxEx2.Size = new System.Drawing.Size(1047, 165); this.ucGroupBoxEx2.TabIndex = 667; this.ucGroupBoxEx2.TabStop = false; this.ucGroupBoxEx2.Text = "商品上传"; // - // chkRandomCompanyProd - // - this.chkRandomCompanyProd.Checked = true; - this.chkRandomCompanyProd.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkRandomCompanyProd.Location = new System.Drawing.Point(902, 136); - this.chkRandomCompanyProd.Name = "chkRandomCompanyProd"; - this.chkRandomCompanyProd.Size = new System.Drawing.Size(87, 21); - this.chkRandomCompanyProd.TabIndex = 889; - this.chkRandomCompanyProd.Text = "随机工厂商品"; - this.chkRandomCompanyProd.UseVisualStyleBackColor = true; - this.chkRandomCompanyProd.Visible = false; - // - // chkUseWXComplateProd - // - this.chkUseWXComplateProd.Location = new System.Drawing.Point(727, 42); - this.chkUseWXComplateProd.Name = "chkUseWXComplateProd"; - this.chkUseWXComplateProd.Size = new System.Drawing.Size(87, 21); - this.chkUseWXComplateProd.TabIndex = 876; - this.chkUseWXComplateProd.Text = "使用回采数据"; - this.chkUseWXComplateProd.UseVisualStyleBackColor = true; - this.chkUseWXComplateProd.Visible = false; - this.chkUseWXComplateProd.CheckedChanged += new System.EventHandler(this.chkUseWXComplateProd_CheckedChanged); - // - // chkSaveBound - // - this.chkSaveBound.AutoSize = true; - this.chkSaveBound.Location = new System.Drawing.Point(791, 136); - this.chkSaveBound.Name = "chkSaveBound"; - this.chkSaveBound.Size = new System.Drawing.Size(111, 21); - this.chkSaveBound.TabIndex = 863; - this.chkSaveBound.Text = "记住保证金范围"; - this.chkSaveBound.UseVisualStyleBackColor = true; - this.chkSaveBound.CheckedChanged += new System.EventHandler(this.chkSaveBound_CheckedChanged); - // - // chkAiShortTitle - // - this.chkAiShortTitle.AccessibleRole = System.Windows.Forms.AccessibleRole.Cursor; - this.chkAiShortTitle.AutoSize = true; - this.chkAiShortTitle.Checked = true; - this.chkAiShortTitle.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkAiShortTitle.Location = new System.Drawing.Point(638, 42); - this.chkAiShortTitle.Name = "chkAiShortTitle"; - this.chkAiShortTitle.Size = new System.Drawing.Size(87, 21); - this.chkAiShortTitle.TabIndex = 862; - this.chkAiShortTitle.Text = "AI优化标题"; - this.chkAiShortTitle.UseVisualStyleBackColor = true; - this.chkAiShortTitle.CheckedChanged += new System.EventHandler(this.chkAiShotTitle_CheckedChanged); - // - // label6 - // - this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(819, 18); - this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(56, 17); - this.label6.TabIndex = 727; - this.label6.Text = "额外等待"; - // - // txtWaitSeconds - // - this.txtWaitSeconds.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtWaitSeconds.Location = new System.Drawing.Point(875, 15); - this.txtWaitSeconds.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtWaitSeconds.Name = "txtWaitSeconds"; - this.txtWaitSeconds.Size = new System.Drawing.Size(24, 23); - this.txtWaitSeconds.TabIndex = 728; - this.txtWaitSeconds.Text = "10"; - this.txtWaitSeconds.TextChanged += new System.EventHandler(this.txtWaitSeconds_TextChanged); - // - // chkHighestPriceSku - // - this.chkHighestPriceSku.AutoSize = true; - this.chkHighestPriceSku.Checked = true; - this.chkHighestPriceSku.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkHighestPriceSku.Location = new System.Drawing.Point(567, 16); - this.chkHighestPriceSku.Name = "chkHighestPriceSku"; - this.chkHighestPriceSku.Size = new System.Drawing.Size(119, 21); - this.chkHighestPriceSku.TabIndex = 739; - this.chkHighestPriceSku.Text = "只保留最高价sku"; - this.chkHighestPriceSku.UseVisualStyleBackColor = true; - this.chkHighestPriceSku.CheckedChanged += new System.EventHandler(this.chkHighestPriceSku_CheckedChanged); - // - // txtFilterBoundMax - // - this.txtFilterBoundMax.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtFilterBoundMax.Location = new System.Drawing.Point(633, 134); - this.txtFilterBoundMax.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtFilterBoundMax.Name = "txtFilterBoundMax"; - this.txtFilterBoundMax.Size = new System.Drawing.Size(49, 25); - this.txtFilterBoundMax.TabIndex = 721; - this.txtFilterBoundMax.Text = "1000"; - this.txtFilterBoundMax.TextChanged += new System.EventHandler(this.txtFilterBoundMax_TextChanged); - // - // label23 - // - this.label23.AutoSize = true; - this.label23.Location = new System.Drawing.Point(606, 138); - this.label23.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label23.Name = "label23"; - this.label23.Size = new System.Drawing.Size(32, 17); - this.label23.TabIndex = 849; - this.label23.Text = "或>"; - // - // txtFilterBoundMin - // - this.txtFilterBoundMin.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtFilterBoundMin.Location = new System.Drawing.Point(556, 134); - this.txtFilterBoundMin.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtFilterBoundMin.Name = "txtFilterBoundMin"; - this.txtFilterBoundMin.Size = new System.Drawing.Size(49, 25); - this.txtFilterBoundMin.TabIndex = 848; - this.txtFilterBoundMin.Text = "1000"; - this.txtFilterBoundMin.TextChanged += new System.EventHandler(this.txtFilterBoundMin_TextChanged); - // - // txtTitleHeadWord - // - this.txtTitleHeadWord.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtTitleHeadWord.Location = new System.Drawing.Point(499, 40); - this.txtTitleHeadWord.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtTitleHeadWord.MaxLength = 15; - this.txtTitleHeadWord.Name = "txtTitleHeadWord"; - this.txtTitleHeadWord.Size = new System.Drawing.Size(130, 25); - this.txtTitleHeadWord.TabIndex = 835; - this.txtTitleHeadWord.TextChanged += new System.EventHandler(this.txtTitleHeadWord_TextChanged); - // - // btnFilterBound - // - this.btnFilterBound.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnFilterBound.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnFilterBound.DisabledBackColor = System.Drawing.Color.Empty; - this.btnFilterBound.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnFilterBound.Location = new System.Drawing.Point(727, 135); - this.btnFilterBound.Name = "btnFilterBound"; - this.btnFilterBound.Size = new System.Drawing.Size(58, 23); - this.btnFilterBound.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnFilterBound.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnFilterBound.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnFilterBound.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnFilterBound.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnFilterBound.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnFilterBound.Style.CornerDiameter = 3; - this.btnFilterBound.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; - this.btnFilterBound.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnFilterBound.Style.GradientAngle = 90; - this.btnFilterBound.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnFilterBound.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnFilterBound.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnFilterBound.TabIndex = 726; - this.btnFilterBound.Text = "立即过滤"; - this.btnFilterBound.Click += new System.EventHandler(this.btnFilterBound_Click); - // - // chkSameSpecPrice - // - this.chkSameSpecPrice.AutoSize = true; - this.chkSameSpecPrice.Checked = true; - this.chkSameSpecPrice.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkSameSpecPrice.Location = new System.Drawing.Point(686, 16); - this.chkSameSpecPrice.Name = "chkSameSpecPrice"; - this.chkSameSpecPrice.Size = new System.Drawing.Size(99, 21); - this.chkSameSpecPrice.TabIndex = 745; - this.chkSameSpecPrice.Text = "颜色规格同价"; - this.chkSameSpecPrice.UseVisualStyleBackColor = true; - this.chkSameSpecPrice.CheckedChanged += new System.EventHandler(this.chkSameSpecPrice_CheckedChanged); - // - // label22 - // - this.label22.AutoSize = true; - this.label22.Location = new System.Drawing.Point(433, 45); - this.label22.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label22.Name = "label22"; - this.label22.Size = new System.Drawing.Size(68, 17); - this.label22.TabIndex = 834; - this.label22.Text = "标题前缀词"; - // // txtShippingPriceTimes // this.txtShippingPriceTimes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.txtShippingPriceTimes.Location = new System.Drawing.Point(329, 135); + this.txtShippingPriceTimes.Location = new System.Drawing.Point(327, 135); this.txtShippingPriceTimes.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtShippingPriceTimes.Name = "txtShippingPriceTimes"; - this.txtShippingPriceTimes.Size = new System.Drawing.Size(32, 23); + this.txtShippingPriceTimes.Size = new System.Drawing.Size(30, 23); this.txtShippingPriceTimes.TabIndex = 810; this.txtShippingPriceTimes.Text = "1.5"; // - // label12 - // - this.label12.AutoSize = true; - this.label12.Location = new System.Drawing.Point(682, 138); - this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label12.Name = "label12"; - this.label12.Size = new System.Drawing.Size(44, 17); - this.label12.TabIndex = 722; - this.label12.Text = "元商品"; - // // label13 // this.label13.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.label13.AutoSize = true; - this.label13.Location = new System.Drawing.Point(292, 138); + this.label13.Location = new System.Drawing.Point(290, 138); this.label13.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label13.Name = "label13"; this.label13.Size = new System.Drawing.Size(41, 17); this.label13.TabIndex = 811; this.label13.Text = "运费×"; // - // label1 - // - this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(433, 138); - this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(128, 17); - this.label1.TabIndex = 720; - this.label1.Text = "过滤待传类目保证金<"; - // - // label18 - // - this.label18.AutoSize = true; - this.label18.Location = new System.Drawing.Point(791, 112); - this.label18.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this.label18.Name = "label18"; - this.label18.Size = new System.Drawing.Size(54, 17); - this.label18.TabIndex = 800; - this.label18.Text = "(3-45天)"; - // - // txtPreDays - // - this.txtPreDays.Location = new System.Drawing.Point(763, 109); - this.txtPreDays.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); - this.txtPreDays.Name = "txtPreDays"; - this.txtPreDays.Size = new System.Drawing.Size(28, 23); - this.txtPreDays.TabIndex = 790; - this.txtPreDays.Text = "5"; - this.txtPreDays.TextChanged += new System.EventHandler(this.txtPreDays_TextChanged); - // - // chkPreSale - // - this.chkPreSale.AutoSize = true; - this.chkPreSale.Location = new System.Drawing.Point(671, 110); - this.chkPreSale.Name = "chkPreSale"; - this.chkPreSale.Size = new System.Drawing.Size(99, 21); - this.chkPreSale.TabIndex = 789; - this.chkPreSale.Text = "设置预售天数"; - this.chkPreSale.UseVisualStyleBackColor = true; - this.chkPreSale.CheckedChanged += new System.EventHandler(this.chkPreSale_CheckedChanged); - // - // chkSkipUploaded - // - this.chkSkipUploaded.AutoSize = true; - this.chkSkipUploaded.Checked = true; - this.chkSkipUploaded.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkSkipUploaded.Location = new System.Drawing.Point(436, 110); - this.chkSkipUploaded.Name = "chkSkipUploaded"; - this.chkSkipUploaded.Size = new System.Drawing.Size(135, 21); - this.chkSkipUploaded.TabIndex = 755; - this.chkSkipUploaded.Text = "跳过店铺已上货商品"; - this.chkSkipUploaded.UseVisualStyleBackColor = true; - this.chkSkipUploaded.CheckedChanged += new System.EventHandler(this.chkSkipUploaded_CheckedChanged); - // - // label5 - // - this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(524, 18); - this.label5.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(40, 17); - this.label5.TabIndex = 744; - this.label5.Text = "元sku"; - // - // txtMinPrice - // - this.txtMinPrice.Location = new System.Drawing.Point(499, 15); - this.txtMinPrice.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); - this.txtMinPrice.Name = "txtMinPrice"; - this.txtMinPrice.Size = new System.Drawing.Size(25, 23); - this.txtMinPrice.TabIndex = 743; - this.txtMinPrice.Text = "10"; - this.txtMinPrice.TextChanged += new System.EventHandler(this.txtMinPrice_TextChanged); - // - // label8 - // - this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(433, 18); - this.label8.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(68, 17); - this.label8.TabIndex = 742; - this.label8.Text = "跳过价格<"; - // - // txtReplaceText - // - this.txtReplaceText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.txtReplaceText.Location = new System.Drawing.Point(499, 67); - this.txtReplaceText.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); - this.txtReplaceText.Multiline = true; - this.txtReplaceText.Name = "txtReplaceText"; - this.txtReplaceText.Size = new System.Drawing.Size(368, 40); - this.txtReplaceText.TabIndex = 740; - this.txtReplaceText.Text = "真丝,蚕丝,香云纱,羊绒,羊毛,羊羔绒,羊羔毛,羽绒,皮草"; - this.txtReplaceText.TextChanged += new System.EventHandler(this.txtReplaceText_TextChanged); - // - // label3 - // - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(433, 72); - this.label3.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(68, 17); - this.label3.TabIndex = 741; - this.label3.Text = "移除敏感词"; - // - // chkUpDraft - // - this.chkUpDraft.AutoSize = true; - this.chkUpDraft.Location = new System.Drawing.Point(571, 110); - this.chkUpDraft.Name = "chkUpDraft"; - this.chkUpDraft.Size = new System.Drawing.Size(99, 21); - this.chkUpDraft.TabIndex = 769; - this.chkUpDraft.Text = "上传到草稿箱"; - this.chkUpDraft.UseVisualStyleBackColor = true; - this.chkUpDraft.CheckedChanged += new System.EventHandler(this.chkUpDraft_CheckedChanged); - // - // label7 - // - this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(899, 18); - this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(20, 17); - this.label7.TabIndex = 729; - this.label7.Text = "秒"; - // // btnStop // this.btnStop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.btnStop.CanvasColor = System.Drawing.SystemColors.Control; this.btnStop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnStop.DisabledBackColor = System.Drawing.Color.Empty; - this.btnStop.Location = new System.Drawing.Point(924, 47); + this.btnStop.Location = new System.Drawing.Point(963, 47); this.btnStop.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); this.btnStop.Name = "btnStop"; this.btnStop.Size = new System.Drawing.Size(71, 23); @@ -668,11 +347,35 @@ namespace TemuKJD.WXForms.ProductForms this.btnStop.Text = "停止上传"; this.btnStop.Click += new System.EventHandler(this.btnStop_Click); // + // label7 + // + this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(939, 15); + this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(20, 17); + this.label7.TabIndex = 729; + this.label7.Text = "秒"; + // + // chkRandomCompanyProd + // + this.chkRandomCompanyProd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.chkRandomCompanyProd.Checked = true; + this.chkRandomCompanyProd.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkRandomCompanyProd.Location = new System.Drawing.Point(765, 13); + this.chkRandomCompanyProd.Name = "chkRandomCompanyProd"; + this.chkRandomCompanyProd.Size = new System.Drawing.Size(87, 21); + this.chkRandomCompanyProd.TabIndex = 889; + this.chkRandomCompanyProd.Text = "随机工厂商品"; + this.chkRandomCompanyProd.UseVisualStyleBackColor = true; + this.chkRandomCompanyProd.Visible = false; + // // chkAddMorePriceFirst // this.chkAddMorePriceFirst.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.chkAddMorePriceFirst.AutoSize = true; - this.chkAddMorePriceFirst.Location = new System.Drawing.Point(199, 136); + this.chkAddMorePriceFirst.Location = new System.Drawing.Point(197, 136); this.chkAddMorePriceFirst.Name = "chkAddMorePriceFirst"; this.chkAddMorePriceFirst.Size = new System.Drawing.Size(99, 21); this.chkAddMorePriceFirst.TabIndex = 625; @@ -686,7 +389,7 @@ namespace TemuKJD.WXForms.ProductForms this.btnClearDgv.CanvasColor = System.Drawing.SystemColors.Control; this.btnClearDgv.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnClearDgv.DisabledBackColor = System.Drawing.Color.Empty; - this.btnClearDgv.Location = new System.Drawing.Point(924, 75); + this.btnClearDgv.Location = new System.Drawing.Point(963, 75); this.btnClearDgv.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); this.btnClearDgv.Name = "btnClearDgv"; this.btnClearDgv.Size = new System.Drawing.Size(71, 23); @@ -722,7 +425,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label15.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.label15.AutoSize = true; - this.label15.Location = new System.Drawing.Point(180, 138); + this.label15.Location = new System.Drawing.Point(178, 138); this.label15.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label15.Name = "label15"; this.label15.Size = new System.Drawing.Size(20, 17); @@ -737,7 +440,7 @@ namespace TemuKJD.WXForms.ProductForms this.pnlStep.Controls.Add(this.panel3); this.pnlStep.Location = new System.Drawing.Point(76, 17); this.pnlStep.Name = "pnlStep"; - this.pnlStep.Size = new System.Drawing.Size(350, 114); + this.pnlStep.Size = new System.Drawing.Size(342, 114); this.pnlStep.TabIndex = 577; // // panel3 @@ -750,7 +453,7 @@ namespace TemuKJD.WXForms.ProductForms this.panel3.Controls.Add(this.fPnlPriceRule); this.panel3.Location = new System.Drawing.Point(1, 1); this.panel3.Name = "panel3"; - this.panel3.Size = new System.Drawing.Size(348, 112); + this.panel3.Size = new System.Drawing.Size(340, 112); this.panel3.TabIndex = 541; // // fPnlPriceRule @@ -839,6 +542,17 @@ namespace TemuKJD.WXForms.ProductForms this.ucAddPrice2.Size = new System.Drawing.Size(420, 23); this.ucAddPrice2.TabIndex = 13; // + // label6 + // + this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(859, 15); + this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(56, 17); + this.label6.TabIndex = 727; + this.label6.Text = "额外等待"; + // // lblNewAddPrice // this.lblNewAddPrice.AutoSize = true; @@ -852,13 +566,24 @@ namespace TemuKJD.WXForms.ProductForms this.lblNewAddPrice.Text = "增加阶梯"; this.lblNewAddPrice.Click += new System.EventHandler(this.lblNewAddPrice_Click); // + // txtWaitSeconds + // + this.txtWaitSeconds.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtWaitSeconds.Location = new System.Drawing.Point(915, 12); + this.txtWaitSeconds.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtWaitSeconds.Name = "txtWaitSeconds"; + this.txtWaitSeconds.Size = new System.Drawing.Size(24, 23); + this.txtWaitSeconds.TabIndex = 728; + this.txtWaitSeconds.Text = "10"; + this.txtWaitSeconds.TextChanged += new System.EventHandler(this.txtWaitSeconds_TextChanged); + // // txtAddMorePrice // this.txtAddMorePrice.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.txtAddMorePrice.Location = new System.Drawing.Point(149, 135); + this.txtAddMorePrice.Location = new System.Drawing.Point(148, 135); this.txtAddMorePrice.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtAddMorePrice.Name = "txtAddMorePrice"; - this.txtAddMorePrice.Size = new System.Drawing.Size(31, 23); + this.txtAddMorePrice.Size = new System.Drawing.Size(30, 23); this.txtAddMorePrice.TabIndex = 535; this.txtAddMorePrice.Text = "1.0"; this.txtAddMorePrice.TextChanged += new System.EventHandler(this.txtAddPrice_TextChanged); @@ -869,7 +594,7 @@ namespace TemuKJD.WXForms.ProductForms this.txtAddTimes.Location = new System.Drawing.Point(76, 135); this.txtAddTimes.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtAddTimes.Name = "txtAddTimes"; - this.txtAddTimes.Size = new System.Drawing.Size(31, 23); + this.txtAddTimes.Size = new System.Drawing.Size(30, 23); this.txtAddTimes.TabIndex = 532; this.txtAddTimes.Text = "1.3"; this.txtAddTimes.TextChanged += new System.EventHandler(this.txtAddPrice_TextChanged); @@ -878,7 +603,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label10.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.label10.AutoSize = true; - this.label10.Location = new System.Drawing.Point(107, 138); + this.label10.Location = new System.Drawing.Point(106, 138); this.label10.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label10.Name = "label10"; this.label10.Size = new System.Drawing.Size(44, 17); @@ -892,7 +617,7 @@ namespace TemuKJD.WXForms.ProductForms this.btnUpload.Cursor = System.Windows.Forms.Cursors.Hand; this.btnUpload.DisabledBackColor = System.Drawing.Color.Empty; this.btnUpload.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnUpload.Location = new System.Drawing.Point(924, 19); + this.btnUpload.Location = new System.Drawing.Point(963, 19); this.btnUpload.Name = "btnUpload"; this.btnUpload.Size = new System.Drawing.Size(71, 23); this.btnUpload.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -913,10 +638,10 @@ namespace TemuKJD.WXForms.ProductForms // txtStockNum // this.txtStockNum.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.txtStockNum.Location = new System.Drawing.Point(395, 135); + this.txtStockNum.Location = new System.Drawing.Point(388, 135); this.txtStockNum.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtStockNum.Name = "txtStockNum"; - this.txtStockNum.Size = new System.Drawing.Size(32, 23); + this.txtStockNum.Size = new System.Drawing.Size(30, 23); this.txtStockNum.TabIndex = 530; this.txtStockNum.Text = "99"; this.txtStockNum.TextChanged += new System.EventHandler(this.txtAddPrice_TextChanged); @@ -925,7 +650,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(364, 138); + this.label4.Location = new System.Drawing.Point(357, 138); this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(32, 17); @@ -954,6 +679,506 @@ namespace TemuKJD.WXForms.ProductForms this.chkStepAddPrice.UseVisualStyleBackColor = true; this.chkStepAddPrice.CheckedChanged += new System.EventHandler(this.chkStepAddPrice_CheckedChanged); // + // ucTabControlMetro1 + // + this.ucTabControlMetro1.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.ucTabControlMetro1.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(251)))), ((int)(((byte)(251)))), ((int)(((byte)(251))))); + this.ucTabControlMetro1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(174)))), ((int)(((byte)(157))))); + this.ucTabControlMetro1.Controls.Add(this.上传参数); + this.ucTabControlMetro1.Controls.Add(this.佣金上货); + this.ucTabControlMetro1.ItemSize = new System.Drawing.Size(72, 24); + this.ucTabControlMetro1.Location = new System.Drawing.Point(421, 11); + this.ucTabControlMetro1.Name = "ucTabControlMetro1"; + this.ucTabControlMetro1.SelectedIndex = 0; + this.ucTabControlMetro1.ShowCloseButton = false; + this.ucTabControlMetro1.Size = new System.Drawing.Size(539, 150); + this.ucTabControlMetro1.TabIndex = 822; + this.ucTabControlMetro1.TabSelectColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucTabControlMetro1.TabSelectTextColor = System.Drawing.Color.Gray; + this.ucTabControlMetro1.TabUnSelectTextColor = System.Drawing.Color.White; + // + // 上传参数 + // + this.上传参数.Controls.Add(this.txtDefaultBestBefore); + this.上传参数.Controls.Add(this.chkDefaultBestBefore); + this.上传参数.Controls.Add(this.txtMinPrice); + this.上传参数.Controls.Add(this.btnFilterBound); + this.上传参数.Controls.Add(this.txtFilterBoundMin); + this.上传参数.Controls.Add(this.chkUseWXComplateProd); + this.上传参数.Controls.Add(this.chkUpDraft); + this.上传参数.Controls.Add(this.label25); + this.上传参数.Controls.Add(this.chkSkipUploaded); + this.上传参数.Controls.Add(this.chkSameSpecPrice); + this.上传参数.Controls.Add(this.txtPreDays); + this.上传参数.Controls.Add(this.txtReplaceText); + this.上传参数.Controls.Add(this.label8); + this.上传参数.Controls.Add(this.chkSaveBound); + this.上传参数.Controls.Add(this.chkAiShortTitle); + this.上传参数.Controls.Add(this.label5); + this.上传参数.Controls.Add(this.chkPreSale); + this.上传参数.Controls.Add(this.chkHighestPriceSku); + this.上传参数.Controls.Add(this.txtFilterBoundMax); + this.上传参数.Controls.Add(this.label18); + this.上传参数.Controls.Add(this.label23); + this.上传参数.Controls.Add(this.label1); + this.上传参数.Controls.Add(this.label12); + this.上传参数.Controls.Add(this.txtTitleHeadWord); + this.上传参数.Controls.Add(this.label22); + this.上传参数.Controls.Add(this.label3); + this.上传参数.Location = new System.Drawing.Point(4, 28); + this.上传参数.Name = "上传参数"; + this.上传参数.Padding = new System.Windows.Forms.Padding(3); + this.上传参数.Size = new System.Drawing.Size(531, 118); + this.上传参数.TabIndex = 1; + this.上传参数.Text = "上传参数"; + this.上传参数.UseVisualStyleBackColor = true; + // + // txtDefaultBestBefore + // + this.txtDefaultBestBefore.Location = new System.Drawing.Point(529, 93); + this.txtDefaultBestBefore.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.txtDefaultBestBefore.Name = "txtDefaultBestBefore"; + this.txtDefaultBestBefore.Size = new System.Drawing.Size(31, 23); + this.txtDefaultBestBefore.TabIndex = 903; + this.txtDefaultBestBefore.Text = "90"; + // + // chkDefaultBestBefore + // + this.chkDefaultBestBefore.AutoSize = true; + this.chkDefaultBestBefore.Location = new System.Drawing.Point(426, 94); + this.chkDefaultBestBefore.Name = "chkDefaultBestBefore"; + this.chkDefaultBestBefore.Size = new System.Drawing.Size(111, 21); + this.chkDefaultBestBefore.TabIndex = 902; + this.chkDefaultBestBefore.Text = "食品默认保质期"; + this.chkDefaultBestBefore.UseVisualStyleBackColor = true; + // + // txtMinPrice + // + this.txtMinPrice.Location = new System.Drawing.Point(67, 2); + this.txtMinPrice.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.txtMinPrice.Name = "txtMinPrice"; + this.txtMinPrice.Size = new System.Drawing.Size(25, 23); + this.txtMinPrice.TabIndex = 743; + this.txtMinPrice.Text = "10"; + this.txtMinPrice.TextChanged += new System.EventHandler(this.txtMinPrice_TextChanged); + // + // btnFilterBound + // + this.btnFilterBound.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnFilterBound.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnFilterBound.DisabledBackColor = System.Drawing.Color.Empty; + this.btnFilterBound.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnFilterBound.Location = new System.Drawing.Point(293, 94); + this.btnFilterBound.Name = "btnFilterBound"; + this.btnFilterBound.Size = new System.Drawing.Size(56, 22); + this.btnFilterBound.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnFilterBound.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnFilterBound.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnFilterBound.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnFilterBound.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnFilterBound.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnFilterBound.Style.CornerDiameter = 3; + this.btnFilterBound.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.btnFilterBound.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnFilterBound.Style.GradientAngle = 90; + this.btnFilterBound.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnFilterBound.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnFilterBound.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnFilterBound.TabIndex = 726; + this.btnFilterBound.Text = "立即过滤"; + this.btnFilterBound.Click += new System.EventHandler(this.btnFilterBound_Click); + // + // txtFilterBoundMin + // + this.txtFilterBoundMin.Font = new System.Drawing.Font("微软雅黑", 9F); + this.txtFilterBoundMin.Location = new System.Drawing.Point(125, 93); + this.txtFilterBoundMin.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtFilterBoundMin.Name = "txtFilterBoundMin"; + this.txtFilterBoundMin.Size = new System.Drawing.Size(49, 23); + this.txtFilterBoundMin.TabIndex = 848; + this.txtFilterBoundMin.Text = "1000"; + this.txtFilterBoundMin.TextChanged += new System.EventHandler(this.txtFilterBoundMin_TextChanged); + // + // chkUseWXComplateProd + // + this.chkUseWXComplateProd.Location = new System.Drawing.Point(291, 28); + this.chkUseWXComplateProd.Name = "chkUseWXComplateProd"; + this.chkUseWXComplateProd.Size = new System.Drawing.Size(87, 21); + this.chkUseWXComplateProd.TabIndex = 876; + this.chkUseWXComplateProd.Text = "使用回采数据"; + this.chkUseWXComplateProd.UseVisualStyleBackColor = true; + this.chkUseWXComplateProd.Visible = false; + this.chkUseWXComplateProd.CheckedChanged += new System.EventHandler(this.chkUseWXComplateProd_CheckedChanged); + // + // chkUpDraft + // + this.chkUpDraft.AutoSize = true; + this.chkUpDraft.Location = new System.Drawing.Point(461, 3); + this.chkUpDraft.Name = "chkUpDraft"; + this.chkUpDraft.Size = new System.Drawing.Size(87, 21); + this.chkUpDraft.TabIndex = 769; + this.chkUpDraft.Text = "仅上传草稿"; + this.chkUpDraft.UseVisualStyleBackColor = true; + this.chkUpDraft.CheckedChanged += new System.EventHandler(this.chkUpDraft_CheckedChanged); + // + // label25 + // + this.label25.AutoSize = true; + this.label25.Location = new System.Drawing.Point(560, 96); + this.label25.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.label25.Name = "label25"; + this.label25.Size = new System.Drawing.Size(20, 17); + this.label25.TabIndex = 904; + this.label25.Text = "天"; + // + // chkSkipUploaded + // + this.chkSkipUploaded.AutoSize = true; + this.chkSkipUploaded.Checked = true; + this.chkSkipUploaded.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkSkipUploaded.Location = new System.Drawing.Point(351, 3); + this.chkSkipUploaded.Name = "chkSkipUploaded"; + this.chkSkipUploaded.Size = new System.Drawing.Size(111, 21); + this.chkSkipUploaded.TabIndex = 755; + this.chkSkipUploaded.Text = "跳过店铺已铺货"; + this.chkSkipUploaded.UseVisualStyleBackColor = true; + this.chkSkipUploaded.CheckedChanged += new System.EventHandler(this.chkSkipUploaded_CheckedChanged); + // + // chkSameSpecPrice + // + this.chkSameSpecPrice.AutoSize = true; + this.chkSameSpecPrice.Checked = true; + this.chkSameSpecPrice.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkSameSpecPrice.Location = new System.Drawing.Point(253, 3); + this.chkSameSpecPrice.Name = "chkSameSpecPrice"; + this.chkSameSpecPrice.Size = new System.Drawing.Size(99, 21); + this.chkSameSpecPrice.TabIndex = 745; + this.chkSameSpecPrice.Text = "颜色规格同价"; + this.chkSameSpecPrice.UseVisualStyleBackColor = true; + this.chkSameSpecPrice.CheckedChanged += new System.EventHandler(this.chkSameSpecPrice_CheckedChanged); + // + // txtPreDays + // + this.txtPreDays.Location = new System.Drawing.Point(453, 27); + this.txtPreDays.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.txtPreDays.Name = "txtPreDays"; + this.txtPreDays.Size = new System.Drawing.Size(28, 23); + this.txtPreDays.TabIndex = 790; + this.txtPreDays.Text = "5"; + this.txtPreDays.TextChanged += new System.EventHandler(this.txtPreDays_TextChanged); + // + // txtReplaceText + // + this.txtReplaceText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtReplaceText.Location = new System.Drawing.Point(67, 52); + this.txtReplaceText.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.txtReplaceText.Multiline = true; + this.txtReplaceText.Name = "txtReplaceText"; + this.txtReplaceText.Size = new System.Drawing.Size(458, 40); + this.txtReplaceText.TabIndex = 740; + this.txtReplaceText.Text = "真丝,蚕丝,香云纱,羊绒,羊毛,羊羔绒,羊羔毛,羽绒,皮草"; + this.txtReplaceText.TextChanged += new System.EventHandler(this.txtReplaceText_TextChanged); + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(1, 5); + this.label8.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(68, 17); + this.label8.TabIndex = 742; + this.label8.Text = "跳过价格<"; + // + // chkSaveBound + // + this.chkSaveBound.AutoSize = true; + this.chkSaveBound.Location = new System.Drawing.Point(352, 94); + this.chkSaveBound.Name = "chkSaveBound"; + this.chkSaveBound.Size = new System.Drawing.Size(75, 21); + this.chkSaveBound.TabIndex = 863; + this.chkSaveBound.Text = "记住范围"; + this.chkSaveBound.UseVisualStyleBackColor = true; + this.chkSaveBound.CheckedChanged += new System.EventHandler(this.chkSaveBound_CheckedChanged); + // + // chkAiShortTitle + // + this.chkAiShortTitle.AccessibleRole = System.Windows.Forms.AccessibleRole.Cursor; + this.chkAiShortTitle.AutoSize = true; + this.chkAiShortTitle.Checked = true; + this.chkAiShortTitle.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkAiShortTitle.Location = new System.Drawing.Point(205, 28); + this.chkAiShortTitle.Name = "chkAiShortTitle"; + this.chkAiShortTitle.Size = new System.Drawing.Size(87, 21); + this.chkAiShortTitle.TabIndex = 862; + this.chkAiShortTitle.Text = "AI优化标题"; + this.chkAiShortTitle.UseVisualStyleBackColor = true; + this.chkAiShortTitle.CheckedChanged += new System.EventHandler(this.chkAiShotTitle_CheckedChanged); + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(92, 5); + this.label5.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(40, 17); + this.label5.TabIndex = 744; + this.label5.Text = "元sku"; + // + // chkPreSale + // + this.chkPreSale.Location = new System.Drawing.Point(386, 28); + this.chkPreSale.Name = "chkPreSale"; + this.chkPreSale.Size = new System.Drawing.Size(65, 21); + this.chkPreSale.TabIndex = 789; + this.chkPreSale.Text = "预售天数"; + this.chkPreSale.UseVisualStyleBackColor = true; + this.chkPreSale.CheckedChanged += new System.EventHandler(this.chkPreSale_CheckedChanged); + // + // chkHighestPriceSku + // + this.chkHighestPriceSku.AutoSize = true; + this.chkHighestPriceSku.Checked = true; + this.chkHighestPriceSku.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkHighestPriceSku.Location = new System.Drawing.Point(135, 3); + this.chkHighestPriceSku.Name = "chkHighestPriceSku"; + this.chkHighestPriceSku.Size = new System.Drawing.Size(119, 21); + this.chkHighestPriceSku.TabIndex = 739; + this.chkHighestPriceSku.Text = "只保留最高价sku"; + this.chkHighestPriceSku.UseVisualStyleBackColor = true; + this.chkHighestPriceSku.CheckedChanged += new System.EventHandler(this.chkHighestPriceSku_CheckedChanged); + // + // txtFilterBoundMax + // + this.txtFilterBoundMax.Font = new System.Drawing.Font("微软雅黑", 9F); + this.txtFilterBoundMax.Location = new System.Drawing.Point(201, 93); + this.txtFilterBoundMax.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtFilterBoundMax.Name = "txtFilterBoundMax"; + this.txtFilterBoundMax.Size = new System.Drawing.Size(49, 23); + this.txtFilterBoundMax.TabIndex = 721; + this.txtFilterBoundMax.Text = "1000"; + this.txtFilterBoundMax.TextChanged += new System.EventHandler(this.txtFilterBoundMax_TextChanged); + // + // label18 + // + this.label18.AutoSize = true; + this.label18.Location = new System.Drawing.Point(479, 30); + this.label18.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.label18.Name = "label18"; + this.label18.Size = new System.Drawing.Size(54, 17); + this.label18.TabIndex = 800; + this.label18.Text = "(3-45天)"; + // + // label23 + // + this.label23.AutoSize = true; + this.label23.Location = new System.Drawing.Point(174, 96); + this.label23.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label23.Name = "label23"; + this.label23.Size = new System.Drawing.Size(32, 17); + this.label23.TabIndex = 849; + this.label23.Text = "或>"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(1, 96); + this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(128, 17); + this.label1.TabIndex = 720; + this.label1.Text = "过滤待传类目保证金<"; + // + // label12 + // + this.label12.AutoSize = true; + this.label12.Location = new System.Drawing.Point(250, 96); + this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label12.Name = "label12"; + this.label12.Size = new System.Drawing.Size(44, 17); + this.label12.TabIndex = 722; + this.label12.Text = "元商品"; + // + // txtTitleHeadWord + // + this.txtTitleHeadWord.Font = new System.Drawing.Font("微软雅黑", 10F); + this.txtTitleHeadWord.Location = new System.Drawing.Point(67, 26); + this.txtTitleHeadWord.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtTitleHeadWord.MaxLength = 15; + this.txtTitleHeadWord.Name = "txtTitleHeadWord"; + this.txtTitleHeadWord.Size = new System.Drawing.Size(130, 25); + this.txtTitleHeadWord.TabIndex = 835; + this.txtTitleHeadWord.TextChanged += new System.EventHandler(this.txtTitleHeadWord_TextChanged); + // + // label22 + // + this.label22.AutoSize = true; + this.label22.Location = new System.Drawing.Point(1, 31); + this.label22.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label22.Name = "label22"; + this.label22.Size = new System.Drawing.Size(68, 17); + this.label22.TabIndex = 834; + this.label22.Text = "标题前缀词"; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(1, 57); + this.label3.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(68, 17); + this.label3.TabIndex = 741; + this.label3.Text = "移除敏感词"; + // + // 佣金上货 + // + this.佣金上货.Controls.Add(this.label31); + this.佣金上货.Controls.Add(this.txtCommissionChangeValue); + this.佣金上货.Controls.Add(this.label30); + this.佣金上货.Controls.Add(this.cmbCommissionAddOrReduce); + this.佣金上货.Controls.Add(this.label29); + this.佣金上货.Controls.Add(this.label28); + this.佣金上货.Controls.Add(this.txtMinUpCommission); + this.佣金上货.Controls.Add(this.txtMaxUpCommission); + this.佣金上货.Controls.Add(this.label26); + this.佣金上货.Controls.Add(this.label27); + this.佣金上货.Controls.Add(this.chkCommission); + this.佣金上货.Controls.Add(this.btnLoginAssistant); + this.佣金上货.Location = new System.Drawing.Point(4, 28); + this.佣金上货.Name = "佣金上货"; + this.佣金上货.Padding = new System.Windows.Forms.Padding(3); + this.佣金上货.Size = new System.Drawing.Size(531, 118); + this.佣金上货.TabIndex = 2; + this.佣金上货.Text = "佣金上货"; + this.佣金上货.UseVisualStyleBackColor = true; + // + // txtCommissionChangeValue + // + this.txtCommissionChangeValue.Font = new System.Drawing.Font("微软雅黑", 9F); + this.txtCommissionChangeValue.Location = new System.Drawing.Point(177, 84); + this.txtCommissionChangeValue.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtCommissionChangeValue.Name = "txtCommissionChangeValue"; + this.txtCommissionChangeValue.Size = new System.Drawing.Size(30, 23); + this.txtCommissionChangeValue.TabIndex = 857; + this.txtCommissionChangeValue.Text = "0"; + // + // label30 + // + this.label30.AutoSize = true; + this.label30.Location = new System.Drawing.Point(206, 87); + this.label30.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label30.Name = "label30"; + this.label30.Size = new System.Drawing.Size(19, 17); + this.label30.TabIndex = 858; + this.label30.Text = "%"; + // + // cmbCommissionAddOrReduce + // + this.cmbCommissionAddOrReduce.FormattingEnabled = true; + this.cmbCommissionAddOrReduce.Items.AddRange(new object[] { + "增加", + "减少"}); + this.cmbCommissionAddOrReduce.Location = new System.Drawing.Point(108, 83); + this.cmbCommissionAddOrReduce.Name = "cmbCommissionAddOrReduce"; + this.cmbCommissionAddOrReduce.Size = new System.Drawing.Size(67, 25); + this.cmbCommissionAddOrReduce.TabIndex = 856; + this.cmbCommissionAddOrReduce.Text = "增加"; + // + // label29 + // + this.label29.AutoSize = true; + this.label29.Location = new System.Drawing.Point(16, 87); + this.label29.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label29.Name = "label29"; + this.label29.Size = new System.Drawing.Size(92, 17); + this.label29.TabIndex = 855; + this.label29.Text = "佣金在原基础上"; + // + // label28 + // + this.label28.AutoSize = true; + this.label28.Location = new System.Drawing.Point(175, 53); + this.label28.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label28.Name = "label28"; + this.label28.Size = new System.Drawing.Size(43, 17); + this.label28.TabIndex = 854; + this.label28.Text = "%商品"; + // + // txtMinUpCommission + // + this.txtMinUpCommission.Font = new System.Drawing.Font("微软雅黑", 9F); + this.txtMinUpCommission.Location = new System.Drawing.Point(79, 50); + this.txtMinUpCommission.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtMinUpCommission.Name = "txtMinUpCommission"; + this.txtMinUpCommission.Size = new System.Drawing.Size(30, 23); + this.txtMinUpCommission.TabIndex = 852; + this.txtMinUpCommission.Text = "10"; + // + // txtMaxUpCommission + // + this.txtMaxUpCommission.Font = new System.Drawing.Font("微软雅黑", 9F); + this.txtMaxUpCommission.Location = new System.Drawing.Point(145, 50); + this.txtMaxUpCommission.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); + this.txtMaxUpCommission.Name = "txtMaxUpCommission"; + this.txtMaxUpCommission.Size = new System.Drawing.Size(30, 23); + this.txtMaxUpCommission.TabIndex = 851; + this.txtMaxUpCommission.Text = "30"; + // + // label26 + // + this.label26.AutoSize = true; + this.label26.Location = new System.Drawing.Point(108, 53); + this.label26.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label26.Name = "label26"; + this.label26.Size = new System.Drawing.Size(43, 17); + this.label26.TabIndex = 853; + this.label26.Text = "%或>"; + // + // label27 + // + this.label27.AutoSize = true; + this.label27.Location = new System.Drawing.Point(16, 53); + this.label27.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label27.Name = "label27"; + this.label27.Size = new System.Drawing.Size(68, 17); + this.label27.TabIndex = 850; + this.label27.Text = "过滤佣金<"; + // + // chkCommission + // + this.chkCommission.Location = new System.Drawing.Point(16, 19); + this.chkCommission.Name = "chkCommission"; + this.chkCommission.Size = new System.Drawing.Size(66, 17); + this.chkCommission.TabIndex = 806; + this.chkCommission.Text = "佣金上货"; + this.chkCommission.UseVisualStyleBackColor = true; + // + // btnLoginAssistant + // + this.btnLoginAssistant.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnLoginAssistant.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnLoginAssistant.DisabledBackColor = System.Drawing.Color.Empty; + this.btnLoginAssistant.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnLoginAssistant.Location = new System.Drawing.Point(101, 16); + this.btnLoginAssistant.Name = "btnLoginAssistant"; + this.btnLoginAssistant.Size = new System.Drawing.Size(76, 23); + this.btnLoginAssistant.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnLoginAssistant.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnLoginAssistant.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnLoginAssistant.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnLoginAssistant.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnLoginAssistant.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnLoginAssistant.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnLoginAssistant.Style.GradientAngle = 90; + this.btnLoginAssistant.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnLoginAssistant.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnLoginAssistant.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnLoginAssistant.TabIndex = 435; + this.btnLoginAssistant.Text = "佣金登录"; + this.btnLoginAssistant.Click += new System.EventHandler(this.btnLoginAssistant_Click); + // // ucGroupBoxEx4 // this.ucGroupBoxEx4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) @@ -1110,6 +1335,7 @@ namespace TemuKJD.WXForms.ProductForms "", "厂商直采", "1688厂家", + "1688外部数据", "微信小店", "微信店采", "母店采集", @@ -1740,7 +1966,7 @@ namespace TemuKJD.WXForms.ProductForms // splitContainer3.Panel2 // this.splitContainer3.Panel2.Controls.Add(this.splitContainer4); - this.splitContainer3.Size = new System.Drawing.Size(1605, 472); + this.splitContainer3.Size = new System.Drawing.Size(1644, 472); this.splitContainer3.SplitterDistance = 442; this.splitContainer3.TabIndex = 1; // @@ -1770,7 +1996,7 @@ namespace TemuKJD.WXForms.ProductForms this.splitContainer2.Panel2.Controls.Add(this.chkTestNoAuditUpload); this.splitContainer2.Panel2.Controls.Add(this.dgvSelectProduct); this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); - this.splitContainer2.Size = new System.Drawing.Size(1605, 442); + this.splitContainer2.Size = new System.Drawing.Size(1644, 442); this.splitContainer2.SplitterDistance = 410; this.splitContainer2.TabIndex = 0; // @@ -1837,19 +2063,19 @@ namespace TemuKJD.WXForms.ProductForms // this.dgvShop.AllowUserToAddRows = false; this.dgvShop.AllowUserToDeleteRows = false; - dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + dataGridViewCellStyle9.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle9; this.dgvShop.AutoRowNumber = true; this.dgvShop.BackgroundColor = System.Drawing.Color.White; this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle10.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle10; this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colSelect, @@ -1997,7 +2223,7 @@ namespace TemuKJD.WXForms.ProductForms // this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbLoading.Location = new System.Drawing.Point(570, 196); + this.pbLoading.Location = new System.Drawing.Point(590, 196); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -2012,7 +2238,7 @@ namespace TemuKJD.WXForms.ProductForms this.并发上传.Cursor = System.Windows.Forms.Cursors.Hand; this.并发上传.DisabledBackColor = System.Drawing.Color.Empty; this.并发上传.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.并发上传.Location = new System.Drawing.Point(1065, 30); + this.并发上传.Location = new System.Drawing.Point(1104, 30); this.并发上传.Name = "并发上传"; this.并发上传.Size = new System.Drawing.Size(118, 23); this.并发上传.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -2046,7 +2272,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label11.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.label11.AutoSize = true; - this.label11.Location = new System.Drawing.Point(8, 129); + this.label11.Location = new System.Drawing.Point(8, 87); this.label11.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label11.Name = "label11"; this.label11.Size = new System.Drawing.Size(68, 17); @@ -2057,7 +2283,7 @@ namespace TemuKJD.WXForms.ProductForms // txtSinglePriceAdd // this.txtSinglePriceAdd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.txtSinglePriceAdd.Location = new System.Drawing.Point(76, 126); + this.txtSinglePriceAdd.Location = new System.Drawing.Point(76, 84); this.txtSinglePriceAdd.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtSinglePriceAdd.Name = "txtSinglePriceAdd"; this.txtSinglePriceAdd.Size = new System.Drawing.Size(31, 23); @@ -2081,19 +2307,19 @@ namespace TemuKJD.WXForms.ProductForms // this.dgvSelectProduct.AllowUserToAddRows = false; this.dgvSelectProduct.AllowUserToDeleteRows = false; - dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3; + dataGridViewCellStyle11.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle11; this.dgvSelectProduct.AutoRowNumber = true; this.dgvSelectProduct.BackgroundColor = System.Drawing.Color.White; this.dgvSelectProduct.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4; + dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle12.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle12; this.dgvSelectProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvSelectProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colCheck, @@ -2124,7 +2350,7 @@ namespace TemuKJD.WXForms.ProductForms this.dgvSelectProduct.Name = "dgvSelectProduct"; this.dgvSelectProduct.ReadOnly = true; this.dgvSelectProduct.RowTemplate.Height = 23; - this.dgvSelectProduct.Size = new System.Drawing.Size(1187, 442); + this.dgvSelectProduct.Size = new System.Drawing.Size(1226, 442); this.dgvSelectProduct.TabIndex = 187; this.dgvSelectProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvSelectProduct_CellContentClick); // @@ -2155,8 +2381,8 @@ namespace TemuKJD.WXForms.ProductForms // // colSupplierName // - dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5; + dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle13; this.colSupplierName.Frozen = true; this.colSupplierName.HeaderText = "店铺名称"; this.colSupplierName.Name = "colSupplierName"; @@ -2236,8 +2462,8 @@ namespace TemuKJD.WXForms.ProductForms // // colProductName // - dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProductName.DefaultCellStyle = dataGridViewCellStyle6; + dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductName.DefaultCellStyle = dataGridViewCellStyle14; this.colProductName.HeaderText = "商品标题"; this.colProductName.Name = "colProductName"; this.colProductName.ReadOnly = true; @@ -2245,8 +2471,8 @@ namespace TemuKJD.WXForms.ProductForms // // colProductCat // - dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProductCat.DefaultCellStyle = dataGridViewCellStyle7; + dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductCat.DefaultCellStyle = dataGridViewCellStyle15; this.colProductCat.HeaderText = "商品类目"; this.colProductCat.Name = "colProductCat"; this.colProductCat.ReadOnly = true; @@ -2301,8 +2527,8 @@ namespace TemuKJD.WXForms.ProductForms // // colAddTime // - dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colAddTime.DefaultCellStyle = dataGridViewCellStyle8; + dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colAddTime.DefaultCellStyle = dataGridViewCellStyle16; this.colAddTime.HeaderText = "上传时间"; this.colAddTime.Name = "colAddTime"; this.colAddTime.ReadOnly = true; @@ -2330,8 +2556,8 @@ namespace TemuKJD.WXForms.ProductForms // this.splitContainer4.Panel2.Controls.Add(this.btnClear); this.splitContainer4.Panel2.Controls.Add(this.panelEx1); - this.splitContainer4.Size = new System.Drawing.Size(1605, 26); - this.splitContainer4.SplitterDistance = 914; + this.splitContainer4.Size = new System.Drawing.Size(1644, 26); + this.splitContainer4.SplitterDistance = 953; this.splitContainer4.TabIndex = 3; // // statusBar @@ -2342,7 +2568,7 @@ namespace TemuKJD.WXForms.ProductForms this.statusBar.Location = new System.Drawing.Point(0, 0); this.statusBar.Margin = new System.Windows.Forms.Padding(0); this.statusBar.Name = "statusBar"; - this.statusBar.Size = new System.Drawing.Size(914, 26); + this.statusBar.Size = new System.Drawing.Size(953, 26); this.statusBar.TabIndex = 2; // // btnClear @@ -2395,40 +2621,23 @@ namespace TemuKJD.WXForms.ProductForms this.panelEx1.Text = "停止当前操作"; this.panelEx1.Visible = false; // - // chkDefaultBestBefore + // label31 // - this.chkDefaultBestBefore.AutoSize = true; - this.chkDefaultBestBefore.Location = new System.Drawing.Point(850, 110); - this.chkDefaultBestBefore.Name = "chkDefaultBestBefore"; - this.chkDefaultBestBefore.Size = new System.Drawing.Size(111, 21); - this.chkDefaultBestBefore.TabIndex = 902; - this.chkDefaultBestBefore.Text = "食品默认保质期"; - this.chkDefaultBestBefore.UseVisualStyleBackColor = true; - // - // txtDefaultBestBefore - // - this.txtDefaultBestBefore.Location = new System.Drawing.Point(953, 109); - this.txtDefaultBestBefore.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); - this.txtDefaultBestBefore.Name = "txtDefaultBestBefore"; - this.txtDefaultBestBefore.Size = new System.Drawing.Size(32, 23); - this.txtDefaultBestBefore.TabIndex = 903; - this.txtDefaultBestBefore.Text = "90"; - // - // label25 - // - this.label25.AutoSize = true; - this.label25.Location = new System.Drawing.Point(985, 112); - this.label25.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); - this.label25.Name = "label25"; - this.label25.Size = new System.Drawing.Size(20, 17); - this.label25.TabIndex = 904; - this.label25.Text = "天"; + this.label31.AutoSize = true; + this.label31.Cursor = System.Windows.Forms.Cursors.Hand; + this.label31.ForeColor = System.Drawing.SystemColors.HotTrack; + this.label31.Location = new System.Drawing.Point(180, 19); + this.label31.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label31.Name = "label31"; + this.label31.Size = new System.Drawing.Size(212, 17); + this.label31.TabIndex = 862; + this.label31.Text = "注:佣金上货前请先登录微信上货助手"; // // WXDBProdUploadForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; this.BackColor = System.Drawing.Color.White; - this.ClientSize = new System.Drawing.Size(1605, 641); + this.ClientSize = new System.Drawing.Size(1644, 641); this.Controls.Add(this.splitContainer1); this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.KeyPreview = true; @@ -2447,6 +2656,11 @@ namespace TemuKJD.WXForms.ProductForms this.panel3.PerformLayout(); this.fPnlPriceRule.ResumeLayout(false); this.fPnlPriceRule.PerformLayout(); + this.ucTabControlMetro1.ResumeLayout(false); + this.上传参数.ResumeLayout(false); + this.上传参数.PerformLayout(); + this.佣金上货.ResumeLayout(false); + this.佣金上货.PerformLayout(); this.ucGroupBoxEx4.ResumeLayout(false); this.ucGroupBoxEx4.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pbSelectProd)).EndInit(); @@ -2631,5 +2845,20 @@ namespace TemuKJD.WXForms.ProductForms private System.Windows.Forms.Label label25; private System.Windows.Forms.TextBox txtDefaultBestBefore; private UserComponent.UcCheckBox chkDefaultBestBefore; + public UserControls.UcTabControlMetro ucTabControlMetro1; + private System.Windows.Forms.TabPage 上传参数; + private System.Windows.Forms.TabPage 佣金上货; + private UserComponent.UcCheckBox chkCommission; + private DevComponents.DotNetBar.PanelEx btnLoginAssistant; + private System.Windows.Forms.TextBox txtMinUpCommission; + private System.Windows.Forms.TextBox txtMaxUpCommission; + private System.Windows.Forms.Label label26; + private System.Windows.Forms.Label label27; + private System.Windows.Forms.Label label28; + private System.Windows.Forms.TextBox txtCommissionChangeValue; + private System.Windows.Forms.Label label30; + private System.Windows.Forms.ComboBox cmbCommissionAddOrReduce; + private System.Windows.Forms.Label label29; + private System.Windows.Forms.Label label31; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs index d0199ec..3f07bf4 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs @@ -29,6 +29,8 @@ using AllBase.Model.Result.WXResult; using Newtonsoft.Json; using NaiBa.Util; using AllBase.Model.Config; +using CefSharp; +using AllBase.Extension; namespace TemuKJD.WXForms.ProductForms { @@ -53,6 +55,8 @@ namespace TemuKJD.WXForms.ProductForms "真丝", "蚕丝", "香云纱", "羊绒", "羊毛", "羊羔绒", "羊羔毛", "羽绒", "皮草" }; string DefaultAdultBrandId = ""; + // 微信带货助手cookie + List lstWxSaleAssistantCookie = new List(); public WXDBProdUploadForm() { @@ -61,6 +65,15 @@ namespace TemuKJD.WXForms.ProductForms private void UserSelectDbProductForm_Load(object sender, EventArgs e) { + if (!BaseClass.UserAuthority.Contains("佣金上货")) + this.ucTabControlMetro1.TabPages.Remove(佣金上货); + else + { + lstWxSaleAssistantCookie = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_sale_assistant_cookies"); + if (lstWxSaleAssistantCookie == null) + lstWxSaleAssistantCookie = new List(); + } + GlobalConfig.lstWxShopAuthInfo = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_shop_auth_list"); if (GlobalConfig.lstWxShopAuthInfo == null) GlobalConfig.lstWxShopAuthInfo = new ConcurrentList(); @@ -589,7 +602,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); @@ -819,7 +832,7 @@ namespace TemuKJD.WXForms.ProductForms if (GlobalConfig.GlobalSettings.IsWxUseSoftwareDefaultAddress == true && !IsWxNotUseSoftwareDefaultAddressOnce && lstTemuDBProductSelect.Any(p => p.product_get_type_text != "厂商直采" && p.product_get_type_text != "1688厂家")) { - if (GlobalConfig.WXShopDefaultAddressList.Any(a => !shopIdLst.Contains(a.shop_id))) + if (shopIdLst.Any(a => !GlobalConfig.WXShopDefaultAddressList.Any(aa => aa.shop_id == a))) WXShopDefaultAddressListForm.GetShopDefaultAddress(); var addressLst = GlobalConfig.WXShopDefaultAddressList.Where(s => shopIdLst.Contains(s.shop_id)).ToList(); foreach (var add in addressLst) @@ -1118,7 +1131,8 @@ namespace TemuKJD.WXForms.ProductForms } result = UploadProduct(shop, kjdDbProdTmp, selectProd, row.Cells["colOpResult"], startTime); - if (result.Contains("今日提审次数已用尽,请明日再试") || result.Contains("如需上架请先缴纳足额保证金") || result.Contains("在架商品数已达到上限")) + if (result.Contains("今日提审次数已用尽,请明日再试") || result.Contains("如需上架请先缴纳足额保证金") || result.Contains("在架商品数已达到上限") || + result.Contains("拥金上货失败:需要开通优选联盟")) { var shopRow = dgvShop.Rows.Cast().FirstOrDefault(r => r.Cells["colShopId"].Value.ParseToString() == shop.ShopId); if (shopRow != null) @@ -1363,6 +1377,85 @@ namespace TemuKJD.WXForms.ProductForms })); } + #region 处理佣金上传 + int commissionRate = 0; + int minCommissionRate = 0; + int maxCommissionRate = 0; + int commissionRateChange = 0; + int? fromCommissionRate = 0; + if (BaseClass.UserAuthority.Contains("佣金上货") && chkCommission.Checked) + { + if (dbProd.special_prod_type != "爆款数据" && dbProd.product_get_type_text != "微信小店") + return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"拥金上货失败:仅爆款微信小店数据支持佣金上传!\"}"; + + var rst = WXUpload.GetAndUpdateWebStatus(shop); + if (!rst.Contains("\"isOpenLeague\":true")) + { + return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"拥金上货失败:需要开通优选联盟!\"}"; + } + + var url = BaseClass.BuildObjString("product/wx_get_commission_rate"); + var date = UserLogin.GetSignaturex(); + date += "&spu_ids=" + dbProd.spu_id; + + var prodCommissionRst = GetHtml.PostUtf8(url, date); + if (!prodCommissionRst.Contains("\"code\":200")) + { + var errMsg = BaseRegex.GetStringJsonByRegs(ref prodCommissionRst, prodCommissionRst, "msg"); + return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"拥金上货失败:" + errMsg + "\"}"; + } + fromCommissionRate = BaseRegex.GetStringJson(ref prodCommissionRst, "commission_rate").ParseToNullableInt(); + if (fromCommissionRate == null) + fromCommissionRate = -1; + if (prodCommissionRst.Contains("\"data\":[]")) + { + var assistantShop = new ShopLoginInfo(); + assistantShop.Cookies = JsonHelper.SerializeObject(lstWxSaleAssistantCookie); + var result = WxGetAssistant.wxGetAssistant(assistantShop, dbProd.spu_id); + if (result.Contains("mcn magic invalid")) + { + Invoke(new Action(() => + { + BaseMsgForm.ShowError("拥金上货失败:请先登录上货助手"); + btnLoginAssistant_Click(null, null); + })); + assistantShop.Cookies = JsonHelper.SerializeObject(lstWxSaleAssistantCookie); + result = WxGetAssistant.wxGetAssistant(assistantShop, dbProd.spu_id); + if (result.Contains("mcn magic invalid")) + return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"拥金上货失败:请先登录上货助手\"}"; + } + fromCommissionRate = BaseRegex.GetStringJson(ref result, "commissionRate").ParseToNullableInt(); + var prodName = BaseRegex.GetStringJson(ref result, "name"); + if (fromCommissionRate == null) + fromCommissionRate = -1; + if (prodName.IsNullOrEmpty()) + prodName = dbProd.product_name; + //if (fromCommissionRate != null && !string.IsNullOrEmpty(prodName)) + { + url = BaseClass.BuildObjString("product/wx_add_mdy_commission_rate"); + date = UserLogin.GetSignaturex(); + date += "&spu_id=" + dbProd.spu_id; + date += "&commission_rate=" + fromCommissionRate; + date += "&product_name=" + prodName; + var addCommissionRateRst = GetHtml.PostUtf8(url, date); + } + } + Invoke(new Action(() => + { + minCommissionRate = this.txtMinUpCommission.Text.Trim().ParseToInt() * 10000; + maxCommissionRate = this.txtMaxUpCommission.Text.Trim().ParseToInt() * 10000; + commissionRateChange = this.txtCommissionChangeValue.Text.Trim().ParseToInt() * 10000; + if (cmbCommissionAddOrReduce.Text != "增加") + commissionRateChange = -commissionRateChange; + commissionRate = fromCommissionRate.ParseToInt() + commissionRateChange; + })); + if (fromCommissionRate < minCommissionRate || fromCommissionRate > maxCommissionRate) + { + return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"拥金上货失败:原商品佣金比例 " + fromCommissionRate * 0.0001 + "% 超过设置的佣金范围!\"}"; + } + } + #endregion + #region 跳过已上传商品 if (chkSkipUploaded.Checked) { @@ -1438,6 +1531,13 @@ namespace TemuKJD.WXForms.ProductForms if (!string.IsNullOrEmpty(convertRst)) return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"商品查询错误 " + convertRst + "\"}"; } + if (dbProd.product_get_type_text == "1688外部数据") + { + string convertRst = ""; + var pInfo = new PDDProdFormConverter()._1688OutToPddConvert(out convertRst, dbProd); + if (!string.IsNullOrEmpty(convertRst)) + return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"商品查询错误 " + convertRst + "\"}"; + } #endregion #region 微信小店app @@ -2904,7 +3004,7 @@ namespace TemuKJD.WXForms.ProductForms { if (propInfo.name == "出版社名称") attr = productAttr.attr.FirstOrDefault(r => r.name == "出版社名称"); - else if (propInfo.name == "ISBN编号" && !prodInfo.property.goods_properties.Any(p => p.name == "ISBN版号/CN刊号")) + else if ((propInfo.name == "ISBN编号" || propInfo.name == "书号") && !prodInfo.property.goods_properties.Any(p => p.name == "ISBN版号/CN刊号")) attr = productAttr.attr.FirstOrDefault(r => r.name == "ISBN版号/CN刊号"); else if (propInfo.name == "书名") attr = productAttr.attr.FirstOrDefault(r => r.name == "书名"); @@ -3680,7 +3780,18 @@ namespace TemuKJD.WXForms.ProductForms } #endregion - // 资质信息 + #region 佣金信息,需要权限 + if (BaseClass.UserAuthority.Contains("佣金上货") && chkCommission.Checked) + { + upProdParam.product.info.leagueItemInfo = new leagueItemInfoParam(); + upProdParam.product.info.leagueItemInfo.itemSwitch = 1; + upProdParam.product.info.leagueItemInfo.itemRatio = commissionRate; + upProdParam.product.info.leagueItemInfo.headSupplierPublicItemSwitch = 1; + upProdParam.product.info.leagueItemInfo.headSupplierPublicItemServiceRatio = commissionRate; + } + #endregion + + #region 资质信息 // 微信回采直接复制 if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && chkUseWXComplateProd.Checked && dbProd.has_wx_format == "1" && wxEditProdInfo != null) { @@ -3987,6 +4098,7 @@ namespace TemuKJD.WXForms.ProductForms } #endregion } + #endregion // 直接使用微信回采情趣商品品牌 if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && chkUseWXComplateProd.Checked && @@ -4059,6 +4171,18 @@ namespace TemuKJD.WXForms.ProductForms #endregion upProdParam.product.productKey.productId = BaseRegex.GetLongJson(ref uploadDraftRst, "productId").ParseToString(); + + var commissionRstStr = ""; + if (chkUpDraft.Checked && BaseClass.UserAuthority.Contains("佣金上货") && chkCommission.Checked) + { + var rst = WXUpload.addLeagueItemForUpdatingProduct(shop, 1, commissionRate, 1, commissionRate, upProdParam.product.productKey.productId.ParseToLong()); + if (!rst.Contains("\"code\":0")) + { + var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "msg", "errMsg", "errorMsg", "err_msg", "error_msg"); + commissionRstStr = "设置佣金比例失败 " + rst; + } + } + if (chkUpDraft.Checked) { selectProd.wxDraftProduct = upProdParam; @@ -4068,7 +4192,7 @@ namespace TemuKJD.WXForms.ProductForms upload_draft_product_lst.Add(selectProd); NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_select_upload_draft_products", upload_draft_product_lst); - return "{\"success\":true,\"draftId\":" + upProdParam.product.productKey.productId + ",\"status\":\"草稿箱\",\"errMsg\":\"指定上传到草稿箱\"}"; + return "{\"success\":true,\"draftId\":" + upProdParam.product.productKey.productId + ",\"status\":\"草稿箱\",\"errMsg\":\"指定上传到草稿箱" + commissionRstStr + "\"}"; } // 提交商品上架 @@ -4088,6 +4212,16 @@ namespace TemuKJD.WXForms.ProductForms } if (upProdParam.product.productKey.productId.IsNullOrEmpty()) upProdParam.product.productKey.productId = BaseRegex.GetLongJson(ref uploadProdRst, "productId").ParseToString(); + + if (BaseClass.UserAuthority.Contains("佣金上货") && chkCommission.Checked) + { + var rst = WXUpload.addLeagueItemForUpdatingProduct(shop, 1, commissionRate, 1, commissionRate, upProdParam.product.productKey.productId.ParseToLong(), 1); + if (!rst.Contains("\"code\":0")) + { + var error = BaseRegex.GetStringJsonByRegs(ref rst, rst, "msg", "errMsg", "errorMsg", "err_msg", "error_msg"); + commissionRstStr = "设置佣金比例失败 " + rst; + } + } } else { @@ -4259,7 +4393,7 @@ namespace TemuKJD.WXForms.ProductForms })); } - return "{\"success\":true,\"draftId\":" + upProdParam.product.productKey.productId + ",\"status\":\"已上传\",\"msg\":\"上传成功\"}"; + return "{\"success\":true,\"draftId\":" + upProdParam.product.productKey.productId + ",\"status\":\"已上传\",\"msg\":\"上传成功" + commissionRstStr + "\"}"; } @@ -5357,6 +5491,17 @@ namespace TemuKJD.WXForms.ProductForms cmbJstInitSet.Text = "已设置"; } } + + private void btnLoginAssistant_Click(object sender, EventArgs e) + { + WXSaleAssistantForm assistantForm = new WXSaleAssistantForm(); + assistantForm.OpenType = "login"; + assistantForm.InitUrl = "https://store.weixin.qq.com/talent/home"; + assistantForm.ShowDialog(); + lstWxSaleAssistantCookie = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_sale_assistant_cookies"); + if (lstWxSaleAssistantCookie == null) + lstWxSaleAssistantCookie = new List(); + } } public class WXUpload @@ -5535,6 +5680,7 @@ Content-Type: image/jpeg string url = "https://store.weixin.qq.com/shop-faas/mmecnodeproductupload/common/cgi/goods/uploadProductDraft?token=&lang=zh_CN"; string referer = "https://store.weixin.qq.com/shop/goods/entry"; JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }; + prodParam.type = 1; var prodStr = JsonConvert.SerializeObject(prodParam, jsonSetting); JObject jObj = new JObject(); jObj.Add("data", prodStr); @@ -5715,6 +5861,31 @@ Content-Type: application/octet-stream var result = WXHttpResponseBLL.WeiXinGetResponse(shop, url, referer); return result; } + + /// + /// 店铺首页获取参数,包括是否开通优选联盟 + /// + /// + /// + public static string GetAndUpdateWebStatus(ShopLoginInfo shop) + { + string url = "https://store.weixin.qq.com/shop-faas/mmchannelstradehome/home/getAndUpdateWebStatus?token=&lang=zh_CN"; + string referer = "https://store.weixin.qq.com/shop/home"; + string body = @"{""timeQuery"":{""startMs"":" + BaseClass.DateTimeToTimestampMilliseconds(DateTime.Now.Date.AddDays(-1)) + + @",""endMs"":" + BaseClass.DateTimeToTimestampMilliseconds(DateTime.Now.Date.AddSeconds(-1)) + @"}}"; + var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, referer); + return result; + } + + public static string addLeagueItemForUpdatingProduct(ShopLoginInfo shop, int itemSwitch, int itemRatio, int headSupplierItemSwitch, int HeadSupplierItemRatio, long prodId, int updType = 2) + { + string url = "https://store.weixin.qq.com/shop-faas/mmecnodeproductupload/common/cgi/goods/addLeagueItemForUpdatingProduct?token=&lang=zh_CN"; + string referer = "https://store.weixin.qq.com/shop/home"; + string body = @"{""itemSwitch"":" + itemSwitch + @",""itemRatio"":" + itemRatio + @",""headSupplierPublicItemSwitch"":" + headSupplierItemSwitch + + @",""headSupplierPublicItemServiceRatio"":" + HeadSupplierItemRatio + @",""productId"":" + prodId + @",""scene"":2,""updType"":" + updType + @"}"; + var result = WXHttpResponseBLL.WeiXinPostResponse(shop, url, body, referer); + return result; + } } public class AddPriceRule diff --git a/TEMUKJD/WXForms/ProductForms/WXFinderSquareForm.cs b/TEMUKJD/WXForms/ProductForms/WXFinderSquareForm.cs index 8859e18..f44ab38 100644 --- a/TEMUKJD/WXForms/ProductForms/WXFinderSquareForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXFinderSquareForm.cs @@ -103,10 +103,11 @@ namespace TemuKJD.WXForms.ProductForms currentShop = GlobalConfig.ShopLoginList.FirstOrDefault(); Invoke(new Action(() => { - this.textBox1.Text = currentShop.ShopAccount; - this.textBox1.Tag = currentShop.ShopId; + this.textBox1.Text = currentShop?.ShopAccount; + this.textBox1.Tag = currentShop?.ShopId; })); - SetMainBrowserUrl(currentShop); + if (currentShop != null) + SetMainBrowserUrl(currentShop); }); IsLoadComplate = true; @@ -250,7 +251,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXOrderConsignmentForm.cs b/TEMUKJD/WXForms/ProductForms/WXOrderConsignmentForm.cs index 9ea33d2..d03832a 100644 --- a/TEMUKJD/WXForms/ProductForms/WXOrderConsignmentForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXOrderConsignmentForm.cs @@ -154,7 +154,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXProdClearNoVisitForm.cs b/TEMUKJD/WXForms/ProductForms/WXProdClearNoVisitForm.cs index 1e7a076..377f36b 100644 --- a/TEMUKJD/WXForms/ProductForms/WXProdClearNoVisitForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXProdClearNoVisitForm.cs @@ -162,7 +162,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXProdCouponOrderBoomForm.cs b/TEMUKJD/WXForms/ProductForms/WXProdCouponOrderBoomForm.cs index 59c9399..08aa0dd 100644 --- a/TEMUKJD/WXForms/ProductForms/WXProdCouponOrderBoomForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXProdCouponOrderBoomForm.cs @@ -181,7 +181,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXProdPreSaleForm.cs b/TEMUKJD/WXForms/ProductForms/WXProdPreSaleForm.cs index 0fe4ec3..06fbf2a 100644 --- a/TEMUKJD/WXForms/ProductForms/WXProdPreSaleForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXProdPreSaleForm.cs @@ -268,7 +268,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs b/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs index 0123b17..c6a7167 100644 --- a/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXProdSyncForm.cs @@ -180,7 +180,7 @@ namespace TemuKJD.WXForms.ProductForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs index aa6a67e..d3d8569 100644 --- a/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs +++ b/TEMUKJD/WXForms/ProductForms/WXUserProdListForm.Designer.cs @@ -330,16 +330,16 @@ namespace TemuKJD.WXForms.ProductForms // txtViewUvMin // this.txtViewUvMin.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtViewUvMin.Location = new System.Drawing.Point(1113, 41); + this.txtViewUvMin.Location = new System.Drawing.Point(1107, 41); this.txtViewUvMin.Name = "txtViewUvMin"; - this.txtViewUvMin.Size = new System.Drawing.Size(77, 23); + this.txtViewUvMin.Size = new System.Drawing.Size(83, 23); this.txtViewUvMin.TabIndex = 882; this.txtViewUvMin.Visible = false; // // chkViewUvMin // this.chkViewUvMin.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.chkViewUvMin.Location = new System.Drawing.Point(1059, 42); + this.chkViewUvMin.Location = new System.Drawing.Point(1053, 42); this.chkViewUvMin.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3); this.chkViewUvMin.Name = "chkViewUvMin"; this.chkViewUvMin.Size = new System.Drawing.Size(48, 21); @@ -356,10 +356,10 @@ namespace TemuKJD.WXForms.ProductForms "", "爆款数据", "普通商品"}); - this.cmbHot.Location = new System.Drawing.Point(906, 7); + this.cmbHot.Location = new System.Drawing.Point(901, 7); this.cmbHot.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbHot.Name = "cmbHot"; - this.cmbHot.Size = new System.Drawing.Size(144, 25); + this.cmbHot.Size = new System.Drawing.Size(143, 25); this.cmbHot.TabIndex = 882; this.cmbHot.Text = "普通商品"; this.cmbHot.Visible = false; @@ -369,7 +369,7 @@ namespace TemuKJD.WXForms.ProductForms // this.lblHot.Anchor = System.Windows.Forms.AnchorStyles.Right; this.lblHot.AutoSize = true; - this.lblHot.Location = new System.Drawing.Point(862, 9); + this.lblHot.Location = new System.Drawing.Point(857, 9); this.lblHot.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.lblHot.Name = "lblHot"; this.lblHot.Size = new System.Drawing.Size(44, 17); @@ -384,7 +384,7 @@ namespace TemuKJD.WXForms.ProductForms this.btnSearch.Cursor = System.Windows.Forms.Cursors.Hand; this.btnSearch.DisabledBackColor = System.Drawing.Color.Empty; this.btnSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnSearch.Location = new System.Drawing.Point(1056, 5); + this.btnSearch.Location = new System.Drawing.Point(1050, 5); this.btnSearch.Name = "btnSearch"; this.btnSearch.Size = new System.Drawing.Size(51, 25); this.btnSearch.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -408,9 +408,9 @@ namespace TemuKJD.WXForms.ProductForms this.btnEmpty.CanvasColor = System.Drawing.SystemColors.Control; this.btnEmpty.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnEmpty.DisabledBackColor = System.Drawing.Color.Empty; - this.btnEmpty.Location = new System.Drawing.Point(1113, 5); + this.btnEmpty.Location = new System.Drawing.Point(1107, 5); this.btnEmpty.Name = "btnEmpty"; - this.btnEmpty.Size = new System.Drawing.Size(77, 25); + this.btnEmpty.Size = new System.Drawing.Size(83, 25); this.btnEmpty.Style.Alignment = System.Drawing.StringAlignment.Center; this.btnEmpty.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); this.btnEmpty.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); @@ -435,10 +435,10 @@ namespace TemuKJD.WXForms.ProductForms this.cmbCat3.DropDownWidth = 1; this.cmbCat3.FormattingEnabled = true; this.cmbCat3.IntegralHeight = false; - this.cmbCat3.Location = new System.Drawing.Point(712, 7); + this.cmbCat3.Location = new System.Drawing.Point(708, 7); this.cmbCat3.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbCat3.Name = "cmbCat3"; - this.cmbCat3.Size = new System.Drawing.Size(144, 25); + this.cmbCat3.Size = new System.Drawing.Size(143, 25); this.cmbCat3.TabIndex = 811; this.cmbCat3.Text = "全部"; this.cmbCat3.SelectedIndexChanged += new System.EventHandler(this.cmbCat3_SelectedIndexChanged); @@ -448,7 +448,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label17.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label17.AutoSize = true; - this.label17.Location = new System.Drawing.Point(661, 9); + this.label17.Location = new System.Drawing.Point(657, 9); this.label17.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label17.Name = "label17"; this.label17.Size = new System.Drawing.Size(51, 17); @@ -463,10 +463,10 @@ namespace TemuKJD.WXForms.ProductForms this.cmbCat2.DropDownWidth = 1; this.cmbCat2.FormattingEnabled = true; this.cmbCat2.IntegralHeight = false; - this.cmbCat2.Location = new System.Drawing.Point(511, 7); + this.cmbCat2.Location = new System.Drawing.Point(509, 7); this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbCat2.Name = "cmbCat2"; - this.cmbCat2.Size = new System.Drawing.Size(144, 25); + this.cmbCat2.Size = new System.Drawing.Size(142, 25); this.cmbCat2.TabIndex = 804; this.cmbCat2.Text = "全部"; this.cmbCat2.SelectedIndexChanged += new System.EventHandler(this.cmbCat2_SelectedIndexChanged); @@ -476,7 +476,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label14.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label14.AutoSize = true; - this.label14.Location = new System.Drawing.Point(460, 9); + this.label14.Location = new System.Drawing.Point(458, 9); this.label14.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label14.Name = "label14"; this.label14.Size = new System.Drawing.Size(51, 17); @@ -491,10 +491,10 @@ namespace TemuKJD.WXForms.ProductForms this.cmbCat1.DropDownWidth = 1; this.cmbCat1.FormattingEnabled = true; this.cmbCat1.IntegralHeight = false; - this.cmbCat1.Location = new System.Drawing.Point(291, 7); + this.cmbCat1.Location = new System.Drawing.Point(290, 5); this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbCat1.Name = "cmbCat1"; - this.cmbCat1.Size = new System.Drawing.Size(144, 25); + this.cmbCat1.Size = new System.Drawing.Size(143, 25); this.cmbCat1.TabIndex = 805; this.cmbCat1.Text = "全部"; this.cmbCat1.SelectedIndexChanged += new System.EventHandler(this.cmbCat1_SelectedIndexChanged); @@ -504,7 +504,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label2.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(240, 9); + this.label2.Location = new System.Drawing.Point(239, 9); this.label2.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(51, 17); @@ -517,7 +517,7 @@ namespace TemuKJD.WXForms.ProductForms this.txtProdName.Location = new System.Drawing.Point(71, 6); this.txtProdName.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtProdName.Name = "txtProdName"; - this.txtProdName.Size = new System.Drawing.Size(144, 23); + this.txtProdName.Size = new System.Drawing.Size(143, 23); this.txtProdName.TabIndex = 427; // // label3 @@ -551,17 +551,17 @@ namespace TemuKJD.WXForms.ProductForms "安全+未校验", "安全商品", "未校验"}); - this.cmbWxSafe.Location = new System.Drawing.Point(71, 42); + this.cmbWxSafe.Location = new System.Drawing.Point(71, 40); this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbWxSafe.Name = "cmbWxSafe"; - this.cmbWxSafe.Size = new System.Drawing.Size(144, 25); + this.cmbWxSafe.Size = new System.Drawing.Size(143, 25); this.cmbWxSafe.TabIndex = 676; this.cmbWxSafe.Text = "安全+未校验"; // // chkCatBoundMoreThan // this.chkCatBoundMoreThan.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.chkCatBoundMoreThan.Location = new System.Drawing.Point(224, 42); + this.chkCatBoundMoreThan.Location = new System.Drawing.Point(223, 42); this.chkCatBoundMoreThan.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3); this.chkCatBoundMoreThan.Name = "chkCatBoundMoreThan"; this.chkCatBoundMoreThan.Size = new System.Drawing.Size(64, 21); @@ -573,10 +573,10 @@ namespace TemuKJD.WXForms.ProductForms // txtCatBoundMoreThan // this.txtCatBoundMoreThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtCatBoundMoreThan.Location = new System.Drawing.Point(291, 41); + this.txtCatBoundMoreThan.Location = new System.Drawing.Point(290, 41); this.txtCatBoundMoreThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtCatBoundMoreThan.Name = "txtCatBoundMoreThan"; - this.txtCatBoundMoreThan.Size = new System.Drawing.Size(144, 23); + this.txtCatBoundMoreThan.Size = new System.Drawing.Size(143, 23); this.txtCatBoundMoreThan.TabIndex = 882; this.txtCatBoundMoreThan.Text = "1000"; this.txtCatBoundMoreThan.Visible = false; @@ -584,7 +584,7 @@ namespace TemuKJD.WXForms.ProductForms // chkCatBoundLessThan // this.chkCatBoundLessThan.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.chkCatBoundLessThan.Location = new System.Drawing.Point(444, 42); + this.chkCatBoundLessThan.Location = new System.Drawing.Point(442, 42); this.chkCatBoundLessThan.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3); this.chkCatBoundLessThan.Name = "chkCatBoundLessThan"; this.chkCatBoundLessThan.Size = new System.Drawing.Size(64, 21); @@ -596,10 +596,10 @@ namespace TemuKJD.WXForms.ProductForms // txtCatBoundLessThan // this.txtCatBoundLessThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtCatBoundLessThan.Location = new System.Drawing.Point(511, 41); + this.txtCatBoundLessThan.Location = new System.Drawing.Point(509, 41); this.txtCatBoundLessThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtCatBoundLessThan.Name = "txtCatBoundLessThan"; - this.txtCatBoundLessThan.Size = new System.Drawing.Size(144, 23); + this.txtCatBoundLessThan.Size = new System.Drawing.Size(142, 23); this.txtCatBoundLessThan.TabIndex = 883; this.txtCatBoundLessThan.Text = "100000"; this.txtCatBoundLessThan.Visible = false; @@ -608,10 +608,10 @@ namespace TemuKJD.WXForms.ProductForms // this.cmbGroupFilter.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); this.cmbGroupFilter.FormattingEnabled = true; - this.cmbGroupFilter.Location = new System.Drawing.Point(906, 42); + this.cmbGroupFilter.Location = new System.Drawing.Point(901, 42); this.cmbGroupFilter.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbGroupFilter.Name = "cmbGroupFilter"; - this.cmbGroupFilter.Size = new System.Drawing.Size(144, 25); + this.cmbGroupFilter.Size = new System.Drawing.Size(143, 25); this.cmbGroupFilter.TabIndex = 653; this.cmbGroupFilter.Visible = false; // @@ -619,7 +619,7 @@ namespace TemuKJD.WXForms.ProductForms // this.lblSourceType.Anchor = System.Windows.Forms.AnchorStyles.Right; this.lblSourceType.AutoSize = true; - this.lblSourceType.Location = new System.Drawing.Point(668, 44); + this.lblSourceType.Location = new System.Drawing.Point(664, 44); this.lblSourceType.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.lblSourceType.Name = "lblSourceType"; this.lblSourceType.Size = new System.Drawing.Size(44, 17); @@ -631,7 +631,7 @@ namespace TemuKJD.WXForms.ProductForms // this.lblGroup.Anchor = System.Windows.Forms.AnchorStyles.Right; this.lblGroup.AutoSize = true; - this.lblGroup.Location = new System.Drawing.Point(862, 44); + this.lblGroup.Location = new System.Drawing.Point(857, 44); this.lblGroup.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.lblGroup.Name = "lblGroup"; this.lblGroup.Size = new System.Drawing.Size(44, 17); @@ -647,16 +647,17 @@ namespace TemuKJD.WXForms.ProductForms "", "厂商直采", "1688厂家", + "1688外部数据", "微信小店", "微信店采", "母店采集", "机会商品", "以图搜品", "外部数据"}); - this.cmbSourceType.Location = new System.Drawing.Point(712, 42); + this.cmbSourceType.Location = new System.Drawing.Point(708, 42); this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbSourceType.Name = "cmbSourceType"; - this.cmbSourceType.Size = new System.Drawing.Size(144, 25); + this.cmbSourceType.Size = new System.Drawing.Size(143, 25); this.cmbSourceType.TabIndex = 654; this.cmbSourceType.Text = "厂商直采"; this.cmbSourceType.Visible = false; diff --git a/TEMUKJD/WXForms/ShopForms/WXShopDefaultAddressListForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopDefaultAddressListForm.cs index 1770f7e..dff335e 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopDefaultAddressListForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopDefaultAddressListForm.cs @@ -227,7 +227,7 @@ namespace TemuKJD.WXForms.ShopForms //this.dgvShop.Columns["colSubUser"].Visible = false; //this.dgvShop.Columns["colSubUserAccount"].Visible = false; } - //if (BaseClass.UserAuthority.Contains("积分用户")) + //if (BaseClass.UserAuthority.Contains("充值用户")) // this.dgvShop.Columns["colExpireTime"].Visible = true; this.dgvShop.AddSelectorColumn("colSelect"); diff --git a/TEMUKJD/WXForms/ShopForms/WXShopListForm.Designer.cs b/TEMUKJD/WXForms/ShopForms/WXShopListForm.Designer.cs index 70b482d..4b7382f 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopListForm.Designer.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopListForm.Designer.cs @@ -38,6 +38,8 @@ this.btnEdit = new DevComponents.DotNetBar.PanelEx(); this.btnLoginSelect = new TemuKJD.UserControls.ButtonEx(); this.panel4 = new System.Windows.Forms.Panel(); + this.btnBatchRenewal = new DevComponents.DotNetBar.PanelEx(); + this.btnOpenOrderPage = new DevComponents.DotNetBar.PanelEx(); this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); this.cmbGroup = new TemuKJD.UserComponent.UcComboBoxMutiSelect(); this.label2 = new System.Windows.Forms.Label(); @@ -52,9 +54,18 @@ this.cmbSubAccount = new TemuKJD.UserComponent.UcComboBoxMutiSelect(); this.label5 = new System.Windows.Forms.Label(); this.label6 = new System.Windows.Forms.Label(); - this.btnOpenOrder = new TemuKJD.UserControls.ButtonEx(); this.btnAddShop = new TemuKJD.UserControls.ButtonEx(); this.splitContainer2 = new System.Windows.Forms.SplitContainer(); + this.pnlTopUp = new System.Windows.Forms.Panel(); + this.txtPrice = new System.Windows.Forms.Label(); + this.lblShopId = new System.Windows.Forms.Label(); + this.lblShopInfo = new System.Windows.Forms.Label(); + this.panel2 = new System.Windows.Forms.Panel(); + this.label7 = new System.Windows.Forms.Label(); + this.numAddTopUp = new System.Windows.Forms.NumericUpDown(); + this.label8 = new System.Windows.Forms.Label(); + this.btnTopUpCancel = new DevComponents.DotNetBar.PanelEx(); + this.btnTopUpOK = new DevComponents.DotNetBar.PanelEx(); this.btnRefreshAuth = new TemuKJD.UserControls.ButtonEx(); this.pbLoading = new System.Windows.Forms.PictureBox(); this.btnImport = new TemuKJD.UserControls.ButtonEx(); @@ -65,6 +76,7 @@ this.colShopAccount = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colAddTime = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colExpireTime = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colRenewal = new System.Windows.Forms.DataGridViewLinkColumn(); this.colNotes = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colGroupName = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colCookie = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -101,6 +113,9 @@ this.splitContainer2.Panel1.SuspendLayout(); this.splitContainer2.Panel2.SuspendLayout(); this.splitContainer2.SuspendLayout(); + this.pnlTopUp.SuspendLayout(); + this.panel2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numAddTopUp)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).BeginInit(); this.SuspendLayout(); @@ -230,8 +245,9 @@ // // panel4 // + this.panel4.Controls.Add(this.btnBatchRenewal); + this.panel4.Controls.Add(this.btnOpenOrderPage); this.panel4.Controls.Add(this.tableLayoutPanel1); - this.panel4.Controls.Add(this.btnOpenOrder); this.panel4.Controls.Add(this.btnAddShop); this.panel4.Dock = System.Windows.Forms.DockStyle.Fill; this.panel4.Location = new System.Drawing.Point(3, 3); @@ -239,6 +255,59 @@ this.panel4.Size = new System.Drawing.Size(1133, 40); this.panel4.TabIndex = 0; // + // btnBatchRenewal + // + this.btnBatchRenewal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnBatchRenewal.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnBatchRenewal.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnBatchRenewal.DisabledBackColor = System.Drawing.Color.Empty; + this.btnBatchRenewal.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnBatchRenewal.Location = new System.Drawing.Point(935, 9); + this.btnBatchRenewal.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); + this.btnBatchRenewal.Name = "btnBatchRenewal"; + this.btnBatchRenewal.Size = new System.Drawing.Size(79, 23); + this.btnBatchRenewal.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnBatchRenewal.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnBatchRenewal.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnBatchRenewal.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnBatchRenewal.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnBatchRenewal.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnBatchRenewal.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnBatchRenewal.Style.GradientAngle = 90; + this.btnBatchRenewal.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnBatchRenewal.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnBatchRenewal.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnBatchRenewal.TabIndex = 806; + this.btnBatchRenewal.Text = "批量续期"; + this.btnBatchRenewal.Visible = false; + this.btnBatchRenewal.Click += new System.EventHandler(this.btnBatchRenewal_Click); + // + // btnOpenOrderPage + // + this.btnOpenOrderPage.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnOpenOrderPage.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnOpenOrderPage.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnOpenOrderPage.DisabledBackColor = System.Drawing.Color.Empty; + this.btnOpenOrderPage.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnOpenOrderPage.Location = new System.Drawing.Point(1018, 9); + this.btnOpenOrderPage.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); + this.btnOpenOrderPage.Name = "btnOpenOrderPage"; + this.btnOpenOrderPage.Size = new System.Drawing.Size(106, 23); + this.btnOpenOrderPage.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnOpenOrderPage.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnOpenOrderPage.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnOpenOrderPage.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnOpenOrderPage.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnOpenOrderPage.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnOpenOrderPage.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnOpenOrderPage.Style.GradientAngle = 90; + this.btnOpenOrderPage.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnOpenOrderPage.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnOpenOrderPage.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnOpenOrderPage.TabIndex = 802; + this.btnOpenOrderPage.Text = "登录订单系统"; + this.btnOpenOrderPage.Click += new System.EventHandler(this.btnOpenOrder_Click); + // // tableLayoutPanel1 // this.tableLayoutPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) @@ -289,7 +358,7 @@ this.cmbGroup.DropDownWidth = 1; this.cmbGroup.FormattingEnabled = true; this.cmbGroup.IntegralHeight = false; - this.cmbGroup.Location = new System.Drawing.Point(385, 8); + this.cmbGroup.Location = new System.Drawing.Point(385, 5); this.cmbGroup.Margin = new System.Windows.Forms.Padding(0, 0, 0, 4); this.cmbGroup.Name = "cmbGroup"; this.cmbGroup.Size = new System.Drawing.Size(74, 25); @@ -315,7 +384,7 @@ this.cmbNotes.DropDownWidth = 1; this.cmbNotes.FormattingEnabled = true; this.cmbNotes.IntegralHeight = false; - this.cmbNotes.Location = new System.Drawing.Point(276, 8); + this.cmbNotes.Location = new System.Drawing.Point(276, 5); this.cmbNotes.Margin = new System.Windows.Forms.Padding(0, 0, 0, 4); this.cmbNotes.Name = "cmbNotes"; this.cmbNotes.Size = new System.Drawing.Size(74, 25); @@ -448,7 +517,7 @@ this.cmbSubAccount.DropDownWidth = 1; this.cmbSubAccount.FormattingEnabled = true; this.cmbSubAccount.IntegralHeight = false; - this.cmbSubAccount.Location = new System.Drawing.Point(506, 8); + this.cmbSubAccount.Location = new System.Drawing.Point(506, 5); this.cmbSubAccount.Margin = new System.Windows.Forms.Padding(0, 0, 0, 4); this.cmbSubAccount.Name = "cmbSubAccount"; this.cmbSubAccount.Size = new System.Drawing.Size(74, 25); @@ -477,24 +546,6 @@ this.label6.TabIndex = 415; this.label6.Text = "分组"; // - // btnOpenOrder - // - this.btnOpenOrder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnOpenOrder.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnOpenOrder.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnOpenOrder.FlatStyle = System.Windows.Forms.FlatStyle.Flat; - this.btnOpenOrder.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnOpenOrder.ForeColor = System.Drawing.Color.White; - this.btnOpenOrder.Location = new System.Drawing.Point(1012, 9); - this.btnOpenOrder.Margin = new System.Windows.Forms.Padding(2); - this.btnOpenOrder.Name = "btnOpenOrder"; - this.btnOpenOrder.Size = new System.Drawing.Size(119, 25); - this.btnOpenOrder.TabIndex = 465; - this.btnOpenOrder.Text = "登录订单系统"; - this.btnOpenOrder.UseVisualStyleBackColor = false; - this.btnOpenOrder.Visible = false; - this.btnOpenOrder.Click += new System.EventHandler(this.btnOpenOrder_Click); - // // btnAddShop // this.btnAddShop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -522,6 +573,7 @@ // splitContainer2.Panel1 // this.splitContainer2.Panel1.BackColor = System.Drawing.Color.White; + this.splitContainer2.Panel1.Controls.Add(this.pnlTopUp); this.splitContainer2.Panel1.Controls.Add(this.btnRefreshAuth); this.splitContainer2.Panel1.Controls.Add(this.pbLoading); this.splitContainer2.Panel1.Controls.Add(this.btnImport); @@ -536,6 +588,140 @@ this.splitContainer2.SplitterDistance = 540; this.splitContainer2.TabIndex = 0; // + // pnlTopUp + // + this.pnlTopUp.Anchor = System.Windows.Forms.AnchorStyles.None; + this.pnlTopUp.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.pnlTopUp.Controls.Add(this.txtPrice); + this.pnlTopUp.Controls.Add(this.lblShopId); + this.pnlTopUp.Controls.Add(this.lblShopInfo); + this.pnlTopUp.Controls.Add(this.panel2); + this.pnlTopUp.Location = new System.Drawing.Point(460, 197); + this.pnlTopUp.Name = "pnlTopUp"; + this.pnlTopUp.Size = new System.Drawing.Size(474, 146); + this.pnlTopUp.TabIndex = 375; + this.pnlTopUp.Visible = false; + // + // txtPrice + // + this.txtPrice.Location = new System.Drawing.Point(125, 115); + this.txtPrice.Name = "txtPrice"; + this.txtPrice.Size = new System.Drawing.Size(322, 17); + this.txtPrice.TabIndex = 457; + this.txtPrice.Text = "预计续费点数:0"; + this.txtPrice.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + // + // lblShopId + // + this.lblShopId.AutoSize = true; + this.lblShopId.Location = new System.Drawing.Point(20, 115); + this.lblShopId.Name = "lblShopId"; + this.lblShopId.Size = new System.Drawing.Size(50, 17); + this.lblShopId.TabIndex = 456; + this.lblShopId.Text = "ShopId"; + this.lblShopId.Visible = false; + // + // lblShopInfo + // + this.lblShopInfo.AutoSize = true; + this.lblShopInfo.Location = new System.Drawing.Point(20, 19); + this.lblShopInfo.Name = "lblShopInfo"; + this.lblShopInfo.Size = new System.Drawing.Size(61, 17); + this.lblShopInfo.TabIndex = 455; + this.lblShopInfo.Text = "ShopInfo"; + // + // panel2 + // + this.panel2.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.panel2.Controls.Add(this.label7); + this.panel2.Controls.Add(this.numAddTopUp); + this.panel2.Controls.Add(this.label8); + this.panel2.Controls.Add(this.btnTopUpCancel); + this.panel2.Controls.Add(this.btnTopUpOK); + this.panel2.Location = new System.Drawing.Point(23, 52); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(424, 57); + this.panel2.TabIndex = 454; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(191, 19); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(32, 17); + this.label7.TabIndex = 465; + this.label7.Text = "个月"; + // + // numAddTopUp + // + this.numAddTopUp.Location = new System.Drawing.Point(151, 16); + this.numAddTopUp.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.numAddTopUp.Name = "numAddTopUp"; + this.numAddTopUp.Size = new System.Drawing.Size(36, 23); + this.numAddTopUp.TabIndex = 1; + this.numAddTopUp.ValueChanged += new System.EventHandler(this.numAddTopUp_ValueChanged); + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(87, 19); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(68, 17); + this.label8.TabIndex = 456; + this.label8.Text = "店铺续费:"; + // + // btnTopUpCancel + // + this.btnTopUpCancel.CanvasColor = System.Drawing.SystemColors.Control; + this.btnTopUpCancel.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnTopUpCancel.DisabledBackColor = System.Drawing.Color.Empty; + this.btnTopUpCancel.Location = new System.Drawing.Point(284, 16); + this.btnTopUpCancel.Name = "btnTopUpCancel"; + this.btnTopUpCancel.Size = new System.Drawing.Size(56, 23); + this.btnTopUpCancel.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpCancel.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.btnTopUpCancel.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.btnTopUpCancel.Style.GradientAngle = 90; + this.btnTopUpCancel.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpCancel.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpCancel.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpCancel.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnTopUpCancel.TabIndex = 458; + this.btnTopUpCancel.Text = "取消"; + this.btnTopUpCancel.Click += new System.EventHandler(this.btnTopUpCancel_Click); + // + // btnTopUpOK + // + this.btnTopUpOK.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnTopUpOK.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnTopUpOK.DisabledBackColor = System.Drawing.Color.Empty; + this.btnTopUpOK.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnTopUpOK.Location = new System.Drawing.Point(225, 16); + this.btnTopUpOK.Name = "btnTopUpOK"; + this.btnTopUpOK.Size = new System.Drawing.Size(56, 23); + this.btnTopUpOK.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpOK.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpOK.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnTopUpOK.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnTopUpOK.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnTopUpOK.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnTopUpOK.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnTopUpOK.Style.GradientAngle = 90; + this.btnTopUpOK.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnTopUpOK.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnTopUpOK.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnTopUpOK.TabIndex = 453; + this.btnTopUpOK.Text = "确定"; + this.btnTopUpOK.Click += new System.EventHandler(this.btnTopUpOK_Click); + // // btnRefreshAuth // this.btnRefreshAuth.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -607,6 +793,7 @@ this.colShopAccount, this.colAddTime, this.colExpireTime, + this.colRenewal, this.colNotes, this.colGroupName, this.colCookie, @@ -672,19 +859,27 @@ // // colAddTime // - this.colAddTime.FillWeight = 70F; + this.colAddTime.FillWeight = 65F; this.colAddTime.HeaderText = "添加时间"; this.colAddTime.Name = "colAddTime"; this.colAddTime.ReadOnly = true; // // colExpireTime // - this.colExpireTime.FillWeight = 70F; + this.colExpireTime.FillWeight = 65F; this.colExpireTime.HeaderText = "到期时间"; this.colExpireTime.Name = "colExpireTime"; this.colExpireTime.ReadOnly = true; this.colExpireTime.Visible = false; // + // colRenewal + // + this.colRenewal.FillWeight = 35F; + this.colRenewal.HeaderText = "续期"; + this.colRenewal.Name = "colRenewal"; + this.colRenewal.ReadOnly = true; + this.colRenewal.Visible = false; + // // colNotes // this.colNotes.FillWeight = 90F; @@ -762,7 +957,7 @@ // // colShopOperate // - this.colShopOperate.FillWeight = 46F; + this.colShopOperate.FillWeight = 50F; this.colShopOperate.HeaderText = "检测"; this.colShopOperate.Name = "colShopOperate"; this.colShopOperate.ReadOnly = true; @@ -772,7 +967,7 @@ // // colRelogin // - this.colRelogin.FillWeight = 40F; + this.colRelogin.FillWeight = 50F; this.colRelogin.HeaderText = "登录"; this.colRelogin.Name = "colRelogin"; this.colRelogin.ReadOnly = true; @@ -781,7 +976,7 @@ // // colSwitchLogin // - this.colSwitchLogin.FillWeight = 60F; + this.colSwitchLogin.FillWeight = 50F; this.colSwitchLogin.HeaderText = "批量登录"; this.colSwitchLogin.Name = "colSwitchLogin"; this.colSwitchLogin.ReadOnly = true; @@ -790,7 +985,7 @@ // // colReLogin2 // - this.colReLogin2.FillWeight = 55F; + this.colReLogin2.FillWeight = 50F; this.colReLogin2.HeaderText = "国际版状态"; this.colReLogin2.Name = "colReLogin2"; this.colReLogin2.ReadOnly = true; @@ -798,16 +993,17 @@ // // colBuyApi // - this.colBuyApi.FillWeight = 46F; + this.colBuyApi.FillWeight = 50F; this.colBuyApi.HeaderText = "API购买"; this.colBuyApi.Name = "colBuyApi"; this.colBuyApi.ReadOnly = true; this.colBuyApi.Resizable = System.Windows.Forms.DataGridViewTriState.True; this.colBuyApi.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colBuyApi.Visible = false; // // colMultiLogin // - this.colMultiLogin.FillWeight = 52F; + this.colMultiLogin.FillWeight = 50F; this.colMultiLogin.HeaderText = "多重登录"; this.colMultiLogin.Name = "colMultiLogin"; this.colMultiLogin.ReadOnly = true; @@ -817,7 +1013,7 @@ // // colApiAuth // - this.colApiAuth.FillWeight = 70F; + this.colApiAuth.FillWeight = 50F; this.colApiAuth.HeaderText = "上货授权"; this.colApiAuth.Name = "colApiAuth"; this.colApiAuth.ReadOnly = true; @@ -827,7 +1023,7 @@ // // colBuyApiAuth // - this.colBuyApiAuth.FillWeight = 70F; + this.colBuyApiAuth.FillWeight = 50F; this.colBuyApiAuth.HeaderText = "拍单授权"; this.colBuyApiAuth.Name = "colBuyApiAuth"; this.colBuyApiAuth.ReadOnly = true; @@ -837,7 +1033,7 @@ // // colUpdateCookies // - this.colUpdateCookies.FillWeight = 67F; + this.colUpdateCookies.FillWeight = 55F; this.colUpdateCookies.HeaderText = "导入Cookie"; this.colUpdateCookies.Name = "colUpdateCookies"; this.colUpdateCookies.ReadOnly = true; @@ -846,7 +1042,7 @@ // // colCopyCookies // - this.colCopyCookies.FillWeight = 70F; + this.colCopyCookies.FillWeight = 55F; this.colCopyCookies.HeaderText = "复制Cookie"; this.colCopyCookies.Name = "colCopyCookies"; this.colCopyCookies.ReadOnly = true; @@ -855,7 +1051,7 @@ // // colEdit // - this.colEdit.FillWeight = 40F; + this.colEdit.FillWeight = 35F; this.colEdit.HeaderText = "编辑"; this.colEdit.Name = "colEdit"; this.colEdit.ReadOnly = true; @@ -864,7 +1060,7 @@ // // colDelete // - this.colDelete.FillWeight = 40F; + this.colDelete.FillWeight = 35F; this.colDelete.HeaderText = "删除"; this.colDelete.Name = "colDelete"; this.colDelete.ReadOnly = true; @@ -922,6 +1118,11 @@ this.splitContainer2.Panel2.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit(); this.splitContainer2.ResumeLayout(false); + this.pnlTopUp.ResumeLayout(false); + this.pnlTopUp.PerformLayout(); + this.panel2.ResumeLayout(false); + this.panel2.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numAddTopUp)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).EndInit(); this.ResumeLayout(false); @@ -952,7 +1153,6 @@ private System.Windows.Forms.Label label4; private DevComponents.DotNetBar.PanelEx btnEmpty; private UserComponent.UcComboBoxMutiSelect cmbNotes; - public UserControls.ButtonEx btnOpenOrder; private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; private System.Windows.Forms.Label label5; private UserComponent.UcComboBoxMutiSelect cmbSubAccount; @@ -962,12 +1162,23 @@ private System.Windows.Forms.Label label6; private DevComponents.DotNetBar.PanelEx btnCheck; private DevComponents.DotNetBar.PanelEx btnEdit; + private System.Windows.Forms.Panel pnlTopUp; + private System.Windows.Forms.Label lblShopInfo; + private System.Windows.Forms.Panel panel2; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.NumericUpDown numAddTopUp; + private System.Windows.Forms.Label label8; + private DevComponents.DotNetBar.PanelEx btnTopUpCancel; + private DevComponents.DotNetBar.PanelEx btnTopUpOK; + private System.Windows.Forms.Label lblShopId; + private System.Windows.Forms.Label txtPrice; private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect; private System.Windows.Forms.DataGridViewTextBoxColumn colLoginName; private System.Windows.Forms.DataGridViewTextBoxColumn colShopId; private System.Windows.Forms.DataGridViewTextBoxColumn colShopAccount; private System.Windows.Forms.DataGridViewTextBoxColumn colAddTime; private System.Windows.Forms.DataGridViewTextBoxColumn colExpireTime; + private System.Windows.Forms.DataGridViewLinkColumn colRenewal; private System.Windows.Forms.DataGridViewTextBoxColumn colNotes; private System.Windows.Forms.DataGridViewTextBoxColumn colGroupName; private System.Windows.Forms.DataGridViewTextBoxColumn colCookie; @@ -990,5 +1201,7 @@ private System.Windows.Forms.DataGridViewLinkColumn colCopyCookies; private System.Windows.Forms.DataGridViewLinkColumn colEdit; private System.Windows.Forms.DataGridViewLinkColumn colDelete; + private DevComponents.DotNetBar.PanelEx btnBatchRenewal; + private DevComponents.DotNetBar.PanelEx btnOpenOrderPage; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs index e87f8dc..66a616a 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopListForm.cs @@ -38,6 +38,12 @@ namespace TemuKJD.WXForms.ShopForms GlobalConfig.ShopLoginList.RemoveAll(s => !serverShopList.Any(ss => ss.LoginName == s.LoginName && ss.ShopId == s.ShopId)); foreach (var serverShop in serverShopList) { + + if (serverShop.ShopId == "wx2543ce37a0009883") + { + + } + var localShop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.LoginName == serverShop.LoginName && s.ShopId == serverShop.ShopId); if (localShop != null) { @@ -64,6 +70,8 @@ namespace TemuKJD.WXForms.ShopForms localShop.AddProductRemaining = serverShop.AddProductRemaining; localShop.OperateSubSaName = serverShop.OperateSubSaName; localShop.TrialUploadCount = Math.Max(0, serverShop.TrialUploadCount); + localShop.is_point_shop_expire = serverShop.is_point_shop_expire; + localShop.expire_time = serverShop.expire_time; } else { @@ -77,12 +85,13 @@ namespace TemuKJD.WXForms.ShopForms List list = new List(); int page = 0; + int pageSize = 100; while (true) { page++; var url = BaseClass.BuildObjString("shop/get_shop_list"); - var data = UserLogin.GetSignaturex() + "&page=" + page; + var data = UserLogin.GetSignaturex() + "&page=" + page + "&page_size=" + pageSize; var html = GetHtml.PostUtf8(url, data); if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) html = GetHtml.PostUtf8(url, data); @@ -95,11 +104,19 @@ namespace TemuKJD.WXForms.ShopForms break; } - var jArr = JObject.Parse(html)["data"]; - if (jArr.Count() == 0) - break; + var count = BaseRegex.GetIntJson(ref html, "count"); + var totalPage = Math.Ceiling(1.0m * count / pageSize).ParseToInt(); - list.AddRange(ShopBLL.DeserializationShop(html)); + try + { + list.AddRange(ShopBLL.DeserializationShop(html)); + } + catch + { + } + + if (page >= totalPage) + break; } return list; } @@ -388,7 +405,6 @@ namespace TemuKJD.WXForms.ShopForms } else GlobalConfig.ShopLoginList.Add(shop); - StartUp.SaveLocalShopLoginInfo(); ShopBLL.AddServerShop(shop); } } @@ -408,7 +424,9 @@ namespace TemuKJD.WXForms.ShopForms if (isLoading) { //BaseMsgForm.ShowError("当前正在加载,请稍等"); - return; + Thread.Sleep(100); + if (isLoading) + return; } Task.Run(() => @@ -542,7 +560,8 @@ namespace TemuKJD.WXForms.ShopForms param.ShopId, param.ShopAccount, param.AddTime.ToString("yy-MM-dd HH:mm"), - param.is_shop_expire ? "已过期" : BaseClass.StampToDateTime(param.expire_time.ParseToInt()).ToString("yy-MM-dd HH:mm"), + param.is_point_shop_expire ? "已过期" : BaseClass.StampToDateTime(param.expire_time.ParseToInt()).ToString("yy-MM-dd HH:mm"), + "续期", param.Notes, param.GroupName, param.Cookies, @@ -597,7 +616,8 @@ namespace TemuKJD.WXForms.ShopForms dgvr.Cells["colBuyAccount"].Value = param.BuyAccount; dgvr.Cells["colChatAccount"].Value = param.ChatAccount; dgvr.Cells["colRelogin"].Value = string.IsNullOrWhiteSpace(param.LoginStatus) ? "未登录" : param.LoginStatus.Trim(); - dgvr.Cells["colExpireTime"].Value = param.is_shop_expire ? "已过期" : BaseClass.StampToDateTime(param.expire_time.ParseToInt()).ToString("yy-MM-dd HH:mm"); + dgvr.Cells["colExpireTime"].Value = param.is_point_shop_expire ? "已过期" : BaseClass.StampToDateTime(param.expire_time.ParseToInt()).ToString("yy-MM-dd HH:mm"); + dgvr.Cells["colExpireTime"].Style.ForeColor = dgvr.Cells["colExpireTime"].Value.ParseToString() == "已过期" ? Color.Red : Color.Blue; } /// @@ -681,7 +701,6 @@ namespace TemuKJD.WXForms.ShopForms } } UpdateServerShopCookies(shop, null, isShowProgress); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie - StartUp.SaveLocalShopLoginInfo(); } if (this.Created && isShowProgress) @@ -723,6 +742,10 @@ namespace TemuKJD.WXForms.ShopForms private void ShopListForm_Load(object sender, EventArgs e) { + this.dgvShop.Columns["colExpireTime"].Visible = false; + this.dgvShop.Columns["colRenewal"].Visible = false; + this.btnBatchRenewal.Visible = false; + if (BaseClass.GroupId != 3) { //this.dgvShop.Columns["ColEdit"].Visible = false; @@ -733,8 +756,15 @@ namespace TemuKJD.WXForms.ShopForms this.btnAddShop.Visible = false; //this.btnEdit.Visible = false; } - if (BaseClass.UserAuthority.Contains("积分用户")) + if (BaseClass.UserAuthority.Contains("充值用户") || BaseClass.ParentAuthority.Contains("充值用户")) + { this.dgvShop.Columns["colExpireTime"].Visible = true; + if (BaseClass.GroupId == 3) + { + this.dgvShop.Columns["colRenewal"].Visible = true; + btnBatchRenewal.Visible = true; + } + } this.dgvShop.AddSelectorColumn("colSelect"); this.chkAutoDrag.Checked = GlobalConfig.TemuShopSettingParam.IsAutoDragLogin; @@ -774,6 +804,7 @@ namespace TemuKJD.WXForms.ShopForms string loginName = dgvShop.Rows[e.RowIndex].Cells["colLoginName"].Value.ParseToString(); string accountId = dgvShop.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString(); var shop = GlobalConfig.ShopLoginList.FirstOrDefault(v => v.LoginName == loginName && v.ShopId == accountId); + var row = dgvShop.Rows[e.RowIndex]; switch (headerText) { @@ -842,7 +873,6 @@ namespace TemuKJD.WXForms.ShopForms return; DeleteShop(e.RowIndex); DelServerDouShop(shop.LoginName); - StartUp.SaveLocalShopLoginInfo(); break; case "编辑": WXShopAddEditForm editForm = new WXShopAddEditForm(new List { shop }); @@ -878,6 +908,12 @@ namespace TemuKJD.WXForms.ShopForms } } break; + case "续期": + lblShopId.Text = shop.ShopId; + lblShopInfo.Text = shop.ShopAccount; + numAddTopUp.Value = 0; + pnlTopUp.Visible = true; + break; //case "多重登录": // IsOperate = true; // ShopLoginForm shopMultiLoginForm = new ShopLoginForm(shop); @@ -1164,5 +1200,94 @@ namespace TemuKJD.WXForms.ShopForms editForm.SaveCompleteWithDescribe += Sae_SaveComplete; editForm.ShowDialog(); } + + private void btnTopUpCancel_Click(object sender, EventArgs e) + { + pnlTopUp.Visible = false; + } + + private void btnTopUpOK_Click(object sender, EventArgs e) + { + //var row = pnlTopUp.Tag as DataGridViewRow; + //if (row == null) + // return; + //var shopId = row.Cells["colShopId"].Value.ParseToString(); + //if (shopId == null) + // return; + //var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + //if (shop == null) + // return; + var shopIds = lblShopId.Text.Split(';'); + pbLoading.Visible = true; + pbLoading.BringToFront(); + string errMsg = ""; + Task.Run(() => + { + foreach (var shopId in shopIds) + { + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + if (shop == null) + continue; + + string url = BaseClass.BuildObjString("user/update_user_points"); + string data = UserLogin.GetSignaturex(); + data += "&update_user_name=" + BaseClass.UserName; + data += "&update_user_nick=" + BaseClass.NickName; + data += "&option_type=" + "续费"; + data += "&operator_type=" + "用户"; + data += "&operator_name=" + BaseClass.UserName; + data += "&delta_points=" + (numAddTopUp.Value * 30).ParseToInt(); + data += "&shop_id=" + shopId; + data += "&shop_account=" + shop.ShopAccount; + + string html = GetHtml.PostUtf8(url, data.ToString()).Trim(); + Thread.Sleep(100); + if (!html.Contains("\"code\":200")) + { + var msg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg"); + errMsg += shop.ShopAccount + ":" + msg + " "; + continue; + } + + shop.expire_time = BaseRegex.GetIntJson(ref html, "newExpireTime"); + shop.is_point_shop_expire = false; + BaseClass.Points = BaseRegex.GetIntJson(ref html, "newUserPoints"); + Invoke(new Action(() => + { + MainForm.instance.lblPoints.Text = "账户积分:" + BaseClass.Points; + })); + RefreshDataGridView(true, new List() { shop }); + } + Invoke(new Action(() => + { + pnlTopUp.Visible = false; + pbLoading.Visible = false; + if (string.IsNullOrEmpty(errMsg)) + { + BaseMsgForm.ShowInfo("充值完成"); + } + else + { + BaseMsgForm.ShowInfo("充值完成 发生以下错误:\r\n" + errMsg); + } + })); + }); + } + + private void numAddTopUp_ValueChanged(object sender, EventArgs e) + { + this.txtPrice.Text = "预计续费点数:" + (numAddTopUp.Value * lblShopId.Text.Split(';').Length * 30).ParseToString(); + } + + private void btnBatchRenewal_Click(object sender, EventArgs e) + { + List shopNameList = GetCheckedList(); + List shops = GlobalConfig.ShopLoginList.Where(s => shopNameList.Contains(s.ShopId)).ToList(); + + lblShopId.Text = string.Join(";", shops.Select(s => s.ShopId)); + lblShopInfo.Text = string.Join(" ", shops.Select(s => s.ShopAccount)); + numAddTopUp.Value = 0; + pnlTopUp.Visible = true; + } } } diff --git a/TEMUKJD/WXForms/ShopForms/WXShopListForm.resx b/TEMUKJD/WXForms/ShopForms/WXShopListForm.resx index 7e4ccef..83458c7 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopListForm.resx +++ b/TEMUKJD/WXForms/ShopForms/WXShopListForm.resx @@ -135,6 +135,9 @@ True + + True + True diff --git a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs index 07663ec..f987e8d 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs @@ -49,7 +49,7 @@ namespace TemuKJD.WXForms.ShopForms private string shopCookieHead = "qq.com"; private string shopLoginUrl = "https://store.weixin.qq.com/shop?redirect_url=%2Fhome"; private string shopMainUrl = "https://store.weixin.qq.com/shop/home"; - public ChromiumWebBrowser cefWebBrowser = null; + public ChromiumWebBrowser cefWebBrowser { get; set; } = null; private ShopLoginInfo shop = null; private ConcurrentList lstShopCompany = new ConcurrentList(); private string currentUrl = ""; @@ -784,7 +784,6 @@ namespace TemuKJD.WXForms.ShopForms if (shop != null) { shop.DictMultiCookies.Remove(cmbMultiCookieName.Text); - StartUp.SaveLocalShopLoginInfo(); InitMultiLoginCookies(); } diff --git a/TEMUKJD/WXForms/ShopForms/WXShopOptimizeForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopOptimizeForm.cs index 6a28f34..f91cff3 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopOptimizeForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopOptimizeForm.cs @@ -169,7 +169,7 @@ namespace TemuKJD.WXForms.ShopForms { if (shopEntity == null) return; - if (shopEntity.is_shop_expire) + if (shopEntity.is_point_shop_expire) return; if (selectShopId == null) selectShopId = new List(); diff --git a/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs b/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs index 84c33c4..b4e1d93 100644 --- a/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs +++ b/TEMUKJD/WXForms/TalkForms/PDDBuyerOrderListForm.cs @@ -39,6 +39,8 @@ namespace TemuKJD.WXForms.TalkForms public partial class PDDBuyerOrderListForm : BaseGeneralForm { private static PDDBuyerOrderListForm instance = null; + + public DateTime lastCefReadOrderTime = DateTime.Now; public static PDDBuyerOrderListForm Instance { get { if (instance == null || instance.IsDisposed || instance.Disposing) instance = new PDDBuyerOrderListForm(); return instance; } } ShopLoginInfo currentShop { get { return this.lblCurrentShop.Tag as ShopLoginInfo; } } //ConcurrentList lstWxOrderInfoLite { get; set; } = new ConcurrentList(); @@ -532,6 +534,8 @@ namespace TemuKJD.WXForms.TalkForms if (buyer == null) return; + lastCefReadOrderTime = DateTime.Now; + //{"server_time":1775789489,"orders":[],"extra_info":{}} if (data.Contains("\"orders\":[]")) { @@ -622,6 +626,8 @@ namespace TemuKJD.WXForms.TalkForms } + lastCefReadOrderTime = DateTime.Now; + if (data.Contains("\"listItemVOList\":[]") || data.Contains("\"hasNextQuery\":false")) { Invoke(new Action(() => @@ -825,40 +831,43 @@ namespace TemuKJD.WXForms.TalkForms if (buyer == null) return; - if (selectIds == null) - selectIds = dgvBuyer.Rows.Cast().Where(r => r.Cells["colSelect"].Value.ParseToBool() == true).Select(s => s.Cells["colBuyerId"].Value.ParseToString()).ToList(); - - bool canUse = buyer.status == "在线"; - var row = dgvBuyer.Rows.Cast().FirstOrDefault(p => p.Cells.GetCellValueFromColumnName("colBuyerId").ParseToString() == buyer.buyer_id); - if (row == null) + Invoke(new Action(() => { - var rowIndex = this.dgvBuyer.Rows.Add( - true, - buyer.buyer_id, - buyer.buyer_name, - buyer.buyer_nick, - buyer.notes, - "访问", - buyer.status - ); - row = dgvBuyer.Rows[rowIndex]; - } - else - { - row.Cells["colSelect"].Value = selectIds.Contains(buyer.buyer_id); - row.Cells["colBuyerId"].Value = buyer.buyer_id; - row.Cells["colBuyerName"].Value = buyer.buyer_name; - row.Cells["colBuyerNick"].Value = buyer.buyer_nick; - row.Cells["colShopNotes"].Value = buyer.notes; - row.Cells["colBuyerId"].Value = buyer.buyer_id; - row.Cells["colLoginStatus"].Value = buyer.status; - row.Cells["colMessage"].Value = msg; - } + if (selectIds == null) + selectIds = dgvBuyer.Rows.Cast().Where(r => r.Cells["colSelect"].Value.ParseToBool() == true).Select(s => s.Cells["colBuyerId"].Value.ParseToString()).ToList(); - (row.Cells["colLoginStatus"] as DataGridViewLinkCell).Style.ForeColor = canUse ? Color.Blue : Color.Red; - (row.Cells["colLoginStatus"] as DataGridViewLinkCell).LinkColor = canUse ? Color.Blue : Color.Red; - (row.Cells["colLoginStatus"] as DataGridViewLinkCell).ActiveLinkColor = canUse ? Color.LightBlue : Color.OrangeRed; - (row.Cells["colLoginStatus"] as DataGridViewLinkCell).VisitedLinkColor = canUse ? Color.DarkBlue : Color.DarkRed; + bool canUse = buyer.status == "在线"; + var row = dgvBuyer.Rows.Cast().FirstOrDefault(p => p.Cells.GetCellValueFromColumnName("colBuyerId").ParseToString() == buyer.buyer_id); + if (row == null) + { + var rowIndex = this.dgvBuyer.Rows.Add( + true, + buyer.buyer_id, + buyer.buyer_name, + buyer.buyer_nick, + buyer.notes, + "访问", + buyer.status + ); + row = dgvBuyer.Rows[rowIndex]; + } + else + { + row.Cells["colSelect"].Value = selectIds.Contains(buyer.buyer_id); + row.Cells["colBuyerId"].Value = buyer.buyer_id; + row.Cells["colBuyerName"].Value = buyer.buyer_name; + row.Cells["colBuyerNick"].Value = buyer.buyer_nick; + row.Cells["colShopNotes"].Value = buyer.notes; + row.Cells["colBuyerId"].Value = buyer.buyer_id; + row.Cells["colLoginStatus"].Value = buyer.status; + row.Cells["colMessage"].Value = msg; + } + + (row.Cells["colLoginStatus"] as DataGridViewLinkCell).Style.ForeColor = canUse ? Color.Blue : Color.Red; + (row.Cells["colLoginStatus"] as DataGridViewLinkCell).LinkColor = canUse ? Color.Blue : Color.Red; + (row.Cells["colLoginStatus"] as DataGridViewLinkCell).ActiveLinkColor = canUse ? Color.LightBlue : Color.OrangeRed; + (row.Cells["colLoginStatus"] as DataGridViewLinkCell).VisitedLinkColor = canUse ? Color.DarkBlue : Color.DarkRed; + })); } @@ -926,10 +935,13 @@ namespace TemuKJD.WXForms.TalkForms continue; var row = dgvBuyer.Rows.Cast().FirstOrDefault(r => r.Cells["colBuyerNick"].Value.ParseToString() == buyer.buyer_nick); - if (row == null || row.Cells["colSelect"].Value.ParseToBool() != true) + if (row == null) { - if (row != null) - Invoke(new Action(() => { row.Cells["colMessage"].Value = "未勾选买手号,跳过"; })); + continue; + } + if (row.Cells["colSelect"].Value.ParseToBool() != true) + { + Invoke(new Action(() => { row.Cells["colMessage"].Value = "未勾选买手号,跳过"; })); continue; } @@ -954,20 +966,30 @@ namespace TemuKJD.WXForms.TalkForms buyer.browser.Load("https://mobile.yangkeduo.com/complaint_list.html?refer_page_name=personal&refer_page_sn=10001&tab=all"); Thread.Sleep(Randomx.GetId(2000, 3000)); + BindBuyer(buyer, "正在读取售后"); + int top = 0; int times = 0; + lastCefReadOrderTime = DateTime.Now; while (currentReadBuyer == readBuyer) { if (cancellationTokenSource.IsCancellationRequested) + { + BindBuyer(buyer, "已取消读取"); break; + } - if (times % 100 == 0) + if (lastCefReadOrderTime < DateTime.Now.AddSeconds(-30)) { CheckBuyerLogin(new List() { buyer }); - } - if (buyer.status != "在线") + if (buyer.status != "在线") + { + BindBuyer(buyer, "店铺掉线"); + break; + } + BindBuyer(buyer, "停滞时间超过30秒,跳过"); break; - times++; + } Invoke(new Action(() => { buyer.browser.BringToFront(); })); @@ -994,9 +1016,14 @@ namespace TemuKJD.WXForms.TalkForms } } if (cancellationTokenSource.IsCancellationRequested) + { + BindBuyer(buyer, "已取消读取"); break; + } Thread.Sleep(Randomx.GetId(2000, 3000)); + BindBuyer(buyer, "正在读取待发货"); + // 待发货 readBuyer = buyer.buyer_id; currentReadBuyer = buyer.buyer_id; @@ -1004,10 +1031,26 @@ namespace TemuKJD.WXForms.TalkForms Thread.Sleep(Randomx.GetId(2000, 3000)); top = 0; + lastCefReadOrderTime = DateTime.Now; while (currentReadBuyer == readBuyer) { if (cancellationTokenSource.IsCancellationRequested) + { + BindBuyer(buyer, "已取消读取"); break; + } + + if (lastCefReadOrderTime < DateTime.Now.AddSeconds(-30)) + { + CheckBuyerLogin(new List() { buyer }); + if (buyer.status != "在线") + { + BindBuyer(buyer, "店铺掉线"); + break; + } + BindBuyer(buyer, "停滞时间超过30秒,跳过"); + break; + } if (times % 100 == 0) { @@ -1042,9 +1085,14 @@ namespace TemuKJD.WXForms.TalkForms } } if (cancellationTokenSource.IsCancellationRequested) + { + BindBuyer(buyer, "已取消读取"); break; + } Thread.Sleep(Randomx.GetId(2000, 3000)); + BindBuyer(buyer, "正在读取已发货"); + // 已发货 readBuyer = buyer.buyer_id; currentReadBuyer = buyer.buyer_id; @@ -1052,18 +1100,26 @@ namespace TemuKJD.WXForms.TalkForms Thread.Sleep(Randomx.GetId(2000, 3000)); top = 0; + lastCefReadOrderTime = DateTime.Now; while (currentReadBuyer == readBuyer) { if (cancellationTokenSource.IsCancellationRequested) + { + BindBuyer(buyer, "已取消读取"); break; + } - if (times % 100 == 0) + if (lastCefReadOrderTime < DateTime.Now.AddSeconds(-30)) { CheckBuyerLogin(new List() { buyer }); - } - if (buyer.status != "在线") + if (buyer.status != "在线") + { + BindBuyer(buyer, "店铺掉线"); + break; + } + BindBuyer(buyer, "停滞时间超过30秒,跳过"); break; - times++; + } Invoke(new Action(() => { buyer.browser.BringToFront(); })); @@ -1089,6 +1145,11 @@ namespace TemuKJD.WXForms.TalkForms result.Wait(5000); } } + Invoke(new Action(() => + { + if (row.Cells["colMessage"].Value.ParseToString().StartsWith("正在读取")) + BindBuyer(buyer, " "); + })); } catch { diff --git a/Work/UserLogin.cs b/Work/UserLogin.cs index fe93744..e098391 100644 --- a/Work/UserLogin.cs +++ b/Work/UserLogin.cs @@ -88,6 +88,7 @@ namespace Work BaseClass.CompanyId = BaseRegex.GetStringJson(ref html, "company_Id").ParseToInt(); BaseClass.GroupId = BaseRegex.GetStringJson(ref html, "group_id").ParseToInt(); BaseClass.AuthorizedAmount = BaseRegex.GetNullableDecimalJson(ref html, "authorized_amount"); + BaseClass.Points = BaseRegex.GetStringJson(ref html, "points").ParseToInt(); if (BaseClass.GroupId != 3 && BaseClass.GroupId != 4 && BaseClass.GroupId != 9 && BaseClass.GroupId != 10 && BaseClass.GroupId != 11) { @@ -95,6 +96,7 @@ namespace Work BaseClass.UserKey = 0; return false; } + BaseClass.EndDate = BaseRegex.GetStringJson(ref html, "end"); BaseClass.CompanyName = BaseRegex.GetStringJson(ref html, "company_name"); if (BaseClass.UserVersion == 3)