1688上传类目转换等优化 充值用户服务充值和用户续费店铺功能

This commit is contained in:
wule committed 2026-05-27 22:01:04 +08:00
1 parent ecb291e3d7
commit aab73b978f
56 files changed
+4532 -1748

No files matched your search

+1
View File
@@ -210,6 +210,7 @@
<Compile Include="Model\Param\WXParam\WXPreCreateOrderWaybillOnlineParam.cs" />
<Compile Include="Model\Result\1688\_1688ClientProductInfo.cs" />
<Compile Include="Model\Result\1688\_1688OneProductListInfo.cs" />
<Compile Include="Model\Result\1688\_1688OutProductInfo.cs" />
<Compile Include="Model\Result\BuyerLoginInfo.cs" />
<Compile Include="Model\Result\JST\JSTOrderInfo.cs" />
<Compile Include="Model\Result\JST\JSTListProductSkuInfo.cs" />
+2 -1
View File
@@ -27,7 +27,7 @@ namespace AllBase
/// <summary>
/// 版本ID
/// </summary>
public static int VersionCount = 1103;
public static int VersionCount = 1113;
//public static int VersionCount = 613;
/// <summary>
@@ -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;
/// <summary>
/// 注册昵称
@@ -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; } // "<div id=\"offer-template-0\"></div><div style=\"width: 790.0px;\"><img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01l2lVfh2EsSShNqqF9_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_0\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01CnqMwg2EsSSbssPG9_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_1\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01vMG0Zh2EsSShaQoZd_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_2\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01c1AA5A2EsSShNqAf5_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_3\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01M1aZdA2EsSShaQoa8_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_4\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01MBxVQo2EsSShaQ8zT_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_5\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01CEPM9x2EsSSiQJws9_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_6\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01KGAtqd2EsSShJqvP3_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_7\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01xgovhL2EsSSbsrGbF_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_8\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01dRu2uz2EsSSbsu5Eb_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_9\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01BMOh4S2EsSShgAoym_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_10\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN014wvt7a2EsSSgiw5fg_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_11\"/> <img style=\"display: block;width: 100.0%;height: auto;\" src=\"https://cbu01.alicdn.com/img/ibank/O1CN01Hxn9Vd2EsSSgiu96Q_!!2212923598800-0-cib.jpg\" usemap=\"#_sdmap_12\"/></div>",
public string freeShipping { get; set; } // ""
public List<string> 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<string, Dictionary<string, List<string>>> 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以内数的加减法..."
}
}
+7 -6
View File
@@ -205,12 +205,13 @@ namespace AllBase.Model.Result
/// </summary>
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
/// </summary>
public decimal? authorized_amount { get; set; }
/// <summary>
/// 店铺积分
/// 用户积分
/// </summary>
public int points { get; set; }
}
@@ -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,
@@ -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<MySqlParameter> paramLst = new List<MySqlParameter>();
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)
{
@@ -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<string> 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<ShopParam> shopList=new List<ShopParam>();
List<ShopParam> shopList = new List<ShopParam>();
List<ShopParam> allShopList = new List<ShopParam>();
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\":\"未知错误\"}";
@@ -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<MySqlParameter> paramLst = new List<MySqlParameter>();
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\":\"输入为空\"}";
}
@@ -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
@@ -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()
@@ -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()
{
+368 -19
View File
@@ -1014,15 +1014,15 @@ namespace TemuKJD.BLL
prodInfo.detail.list_desc = new List<object>();
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<spec_item>(),
// 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
}
}
/// <summary>
/// 1688外部数据转拼多多
/// </summary>
/// <param name="convertRst"></param>
/// <param name="dbProd"></param>
/// <returns></returns>
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<PDDProdfloorItem>() };
// 商品详情
prodInfo.detail = new PDDProductDetailInfo();
prodInfo.detail.allergy_refund = 0;
prodInfo.detail.allowed_region = new List<object>();
//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<string>();
prodInfo.detail.cat_id = dbProd.cat_id.ParseToInt();
prodInfo.detail.cat_ids = new List<int?>();
//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<gallery_item>();
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<object>();
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<object>();
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<object>();
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<object>();
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<sku_item>();
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<spec_item>(),
// 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<goods_propertie_item>();
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<value_item>();
List<string> values = new List<string> { _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<object>();
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,
+5 -3
View File
@@ -252,13 +252,13 @@ namespace TemuKJD.BLL
return true;
}
public static List<ShopLoginInfo> DeserializationShop(string shopJson)
public static List<ShopLoginInfo> DeserializationShop(string shopJson, string shopDataName = "data")
{
List<ShopLoginInfo> list = new List<ShopLoginInfo>();
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")
{
@@ -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();
}
}
@@ -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 "编辑":
{
@@ -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();
}
+13
View File
@@ -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;
}));
}
});
}
+28 -11
View File
@@ -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;
}
}
@@ -836,7 +836,6 @@ namespace TemuKJD.PDDForms.AdminForms
if (shop != null)
{
shop.DictMultiCookies.Remove(cmbMultiCookieName.Text);
StartUp.SaveLocalShopLoginInfo();
InitMultiLoginCookies();
}
@@ -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 == "微信小店")
{
@@ -961,6 +961,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"",
"厂商直采",
"1688厂家",
"1688外部数据",
"微信小店",
"微信店采",
"母店采集",
@@ -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<DataGridViewRow>().FirstOrDefault(r => r.Cells["col_spu_id"].Value.ParseToString() == dbProd.spu_id);
@@ -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);
@@ -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();
}
-14
View File
@@ -436,20 +436,6 @@ namespace TemuKJD
#endregion
}
public static void SaveLocalShopLoginInfo()
{
//ConcurrentList<ShopLoginInfo> shopLoginListCopy =
// JsonHelper.DeserializeJsonToObject<ConcurrentList<ShopLoginInfo>>(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);
+231 -19
View File
@@ -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;
}
}
+408 -147
View File
@@ -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<List<Cookie>>("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<Cookie> cookieList = CEFBrowser.GetCookieList(".scm121.com", cefWebBrowser.GetCookieManager(null));
var shop = new ShopLoginInfo();
shop.Cookies = JsonHelper.SerializeObject(cookieList);
List<DataGridViewRow> rowLst = new List<DataGridViewRow>();
rowLst.AddRange(dgvProduct.Rows.Cast<DataGridViewRow>().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<Cookie> cookieList = CEFBrowser.GetCookieList(".scm121.com", cefWebBrowser.GetCookieManager(null));
var shop = new ShopLoginInfo();
shop.Cookies = JsonHelper.SerializeObject(cookieList);
List<DataGridViewRow> rowLst = new List<DataGridViewRow>();
rowLst.AddRange(dgvProduct.Rows.Cast<DataGridViewRow>().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 "";
}
}
}
+39
View File
@@ -168,4 +168,43 @@
<metadata name="colMsg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewCheckBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colFileName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutSupplierId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutSupplierName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutGoodsId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutGoodsName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutCat.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutImgUrl.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutImg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutStock.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewLinkColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOutMsg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+201 -48
View File
@@ -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;
}
}
@@ -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("充值成功");
}
}
}
@@ -153,6 +153,9 @@
<metadata name="colPoints.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colPlus.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colAddShop.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
@@ -107,6 +107,7 @@ namespace TemuKJD.WXForms.AdminForms
SetForm(getAddressForm.Value);
break;
case "带货助手":
saleAssistantForm.Value.panel1.Visible = true;
SetForm(saleAssistantForm.Value);
break;
case "图片工具":
@@ -869,7 +869,6 @@ function fireKeyEvent(el, evtType, keyCode) {
if (shop != null)
{
shop.DictMultiCookies.Remove(cmbMultiCookieName.Text);
StartUp.SaveLocalShopLoginInfo();
InitMultiLoginCookies();
}
File diff suppressed because it is too large. Load diff
+126 -54
View File
@@ -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<WXSaleAssistantSpuItemInfo> lstWxSaleAssistantSpuItemInfo = new ConcurrentList<WXSaleAssistantSpuItemInfo>();
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<ConcurrentList<WXSaleAssistantSpuItemInfo>>("wx_sale_assistant_list_" + MainForm.ProcessCount);
if (lstWxSaleAssistantSpuItemInfo == null)
lstWxSaleAssistantSpuItemInfo = new ConcurrentList<WXSaleAssistantSpuItemInfo>();
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<Cookie> cookieLst = new List<Cookie>();
try
if (OpenType == "collect")
{
serverCookie = JsonHelper.SerializeObject(JsonHelper.JObjectParse(result)["cookie"]);
cookieLst = JsonHelper.DeserializeJsonToList<CefSharp.Cookie>(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<CefSharp.Cookie>(serverCookie);
if (cookieLst == null)
cookieLst = new List<Cookie>();
}
catch
{
}
}
if (OpenType == "login")
{
cookieLst = NaiBa.Util.Helper.ConfigHelper.LoadConfig<List<Cookie>>("wx_sale_assistant_cookies");
if (cookieLst == null)
cookieLst = new List<Cookie>();
}
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<Cookie> 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;
}
}
}
@@ -156,4 +156,182 @@
<metadata name="colMsg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
</root>
+183 -100
View File
@@ -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;
}
}
+282 -89
View File
@@ -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<string>() { "colOrderStatus" , "colUpdateStatus" });
dgvOrder.AddMergeColumnHeader(new List<string>() { "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<string>();
@@ -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<DataGridViewRow>().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<DataGridViewRow>().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<DataGridViewRow>().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<CefSharp.Cookie>(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<DataGridViewRow>().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<DataGridViewRow>().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<WxOrderInfoLite>(JsonHelper.SerializeObject(jArr));
var row = dgvOrder.Rows.Cast<DataGridViewRow>().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<DataGridViewRow>().Where(r => r.Visible == true).Count().ToString() + " 条";
}
private void dgvOrder_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e)
{
this.lblOrderCount.Text = "当前展示订单:" + this.dgvOrder.Rows.Cast<DataGridViewRow>().Where(r => r.Visible == true).Count().ToString() + " 条";
}
}
public class WXOrderList
@@ -2155,16 +2337,27 @@ namespace TemuKJD.WXForms.OrderForms
/// <param name="shop"></param>
/// <param name="orderStatus">订单状态 20待发货 30已发货</param>
/// <returns></returns>
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;
@@ -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<string>();
File diff suppressed because it is too large. Load diff
@@ -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<Cookie> lstWxSaleAssistantCookie = new List<Cookie>();
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<List<Cookie>>("wx_sale_assistant_cookies");
if (lstWxSaleAssistantCookie == null)
lstWxSaleAssistantCookie = new List<Cookie>();
}
GlobalConfig.lstWxShopAuthInfo = NaiBa.Util.Helper.ConfigHelper.LoadConfig<NaiBa.Util.ConcurrentList<AuthInfo>>("wx_shop_auth_list");
if (GlobalConfig.lstWxShopAuthInfo == null)
GlobalConfig.lstWxShopAuthInfo = new ConcurrentList<AuthInfo>();
@@ -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<string>();
@@ -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<DataGridViewRow>().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<List<Cookie>>("wx_sale_assistant_cookies");
if (lstWxSaleAssistantCookie == null)
lstWxSaleAssistantCookie = new List<Cookie>();
}
}
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;
}
/// <summary>
/// 店铺首页获取参数,包括是否开通优选联盟
/// </summary>
/// <param name="shop"></param>
/// <returns></returns>
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
@@ -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<string>();
@@ -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<string>();
@@ -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<string>();
@@ -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<string>();
@@ -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<string>();
@@ -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<string>();
+34 -33
View File
@@ -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;
@@ -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");
+251 -38
View File
@@ -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;
}
}
+137 -12
View File
@@ -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<ShopLoginInfo> list = new List<ShopLoginInfo>();
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;
}
/// <summary>
@@ -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<ShopLoginInfo> { 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<ShopLoginInfo>() { 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<string> shopNameList = GetCheckedList();
List<ShopLoginInfo> 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;
}
}
}
@@ -135,6 +135,9 @@
<metadata name="colExpireTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colRenewal.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colNotes.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
+1 -2
View File
@@ -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<ShopCompany> lstShopCompany = new ConcurrentList<ShopCompany>();
private string currentUrl = "";
@@ -784,7 +784,6 @@ namespace TemuKJD.WXForms.ShopForms
if (shop != null)
{
shop.DictMultiCookies.Remove(cmbMultiCookieName.Text);
StartUp.SaveLocalShopLoginInfo();
InitMultiLoginCookies();
}
@@ -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<string>();
@@ -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<WxOrderInfoLite> lstWxOrderInfoLite { get; set; } = new ConcurrentList<WxOrderInfoLite>();
@@ -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<DataGridViewRow>().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<DataGridViewRow>().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<DataGridViewRow>().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<DataGridViewRow>().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<DataGridViewRow>().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<BuyerLoginInfo>() { 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<BuyerLoginInfo>() { 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<BuyerLoginInfo>() { 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
{
+2
View File
@@ -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)