微信商品回采功能

This commit is contained in:
wule committed 2026-03-06 09:54:48 +08:00
1 parent 3db584fe1e
commit d9900452f2
35 files changed
+4850 -696

No files matched your search

+1
View File
@@ -197,6 +197,7 @@
<Compile Include="Model\Param\OutServerGoodsParam.cs" />
<Compile Include="Model\Param\WXParam\WXCateAuthParam.cs" />
<Compile Include="Model\Param\WXParam\WXCoupon.cs" />
<Compile Include="Model\Result\WXResult\WXGetEditProductInfoLite.cs" />
<Compile Include="Model\Param\WXParam\WXGetShortTitleParam.cs" />
<Compile Include="Model\Param\WXParam\WXUploadProductInitParam.cs" />
<Compile Include="Model\Param\WXParam\WXUploadProductParam.cs" />
+2 -1
View File
@@ -27,7 +27,7 @@ namespace AllBase
/// <summary>
/// 版本ID
/// </summary>
public static int VersionCount = 880;
public static int VersionCount = 883;
//public static int VersionCount = 613;
/// <summary>
@@ -304,6 +304,7 @@ namespace AllBase
public static string UserName = "";
//public static bool IsSa;
public static int SaLevel = 0;
public static string UserAuthority = "";
public static decimal? AuthorizedAmount = null;
/// <summary>
/// 注册昵称
@@ -274,7 +274,7 @@ namespace AllBase.Model.Param.WXParam
{
public List<string> headImg { get; set; } = new List<string>(); // [ "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/695c7f5f000d23e709f79176079a1715000000a000004f50" ...],
public List<categoryParam> category { get; set; } = new List<categoryParam>();
public List<propParam> param { get; set; } = new List<propParam>();
public List<wxPropParam> param { get; set; } = new List<wxPropParam>();
public List<productSaleAttrParam> productSaleAttrs { get; set; } = new List<productSaleAttrParam>();
public List<object> shopcatId { get; set; } = new List<object>();
public List<object> qualificationUrl { get; set; } = new List<object>();
@@ -668,7 +668,7 @@ namespace AllBase.Model.Param.WXParam
}
public class propParam
public class wxPropParam
{
public List<categoryPropParam> categorys { get; set; } = new List<categoryPropParam>();
}
+5
View File
@@ -93,5 +93,10 @@ namespace AllBase.Model.Result
public string special_prod_type { get; set; }
public int? distribution_set { get; set; }
public int? send_to_out_server { get; set; }
/// <summary>
/// 是否有完善后的微信回采商品数据(详情存在微信回采数据表内)
/// </summary>
public string has_wx_format { get; set; }
}
}
+4
View File
@@ -248,6 +248,10 @@ namespace AllBase.Model.Result
}
}
/// <summary>
/// 用户的功能操作权限
/// </summary>
public string authority { get; set; }
/// <summary>
/// 用户(JIT推单)授权金额
/// </summary>
public decimal? authorized_amount { get; set; }
@@ -0,0 +1,126 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AllBase.Model.Result.WXResult
{
public class WXGetEditProductInfoLite
{
public WXProductInfo product { get; set; }
}
public class WXProductInfo
{
public WXProductKeyInfo productKey { get; set; }
public WXProductInfoInfo info { get; set; }
public int? status { get; set; } // 5
public string createTime { get; set; } // "1772529740",
public string updateTime { get; set; } // "1772533190",
public int? version { get; set; } // 8,
public int? editStatus { get; set; } // 4,
public string editTime { get; set; } // "1772533189",
public int source { get; set; } // 1
}
public class WXProductKeyInfo
{
public string productId { get; set; } // "10000538778988"
}
public class WXProductInfoInfo
{
// 主图
public List<string> headImg { get; set; } = new List<string>();
public List<WXProductCategoryInfo> category { get; set; } = new List<WXProductCategoryInfo>();
public List<WXProductParamInfo> param { get; set; } = new List<WXProductParamInfo>();
public List<WXQualificationInfo> qualificationList { get; set; }
public List<WXProductHeadimgInfo> productHeadimgInfo { get; set; }
public List<WXHeadImgInfo> headImgInfos { get; set; }
public string title { get; set; } // "歪歪马震动棒 成人情趣用品"
public string subTitle { get; set; } // "",
public string brand { get; set; } // "",
public string model { get; set; } // "",
public WXProductDetailInfo detail { get; set; }
public string brandId { get; set; } // "10655917"
public string listingTime { get; set; } // "1772533190"
public string spuCode { get; set; } // "2028756820870602753"
public string lastEditDraftTime { get; set; } // "1772532559"
public string shortTitle { get; set; } // "歪歪马脉冲震动成人情趣棒"
public string aiGenShortTitle { get; set; } // "歪歪马脉冲震动成人情趣棒"
public string uniqueId { get; set; } // "4411405439658180613"
}
public class WXProductDetailInfo
{
public List<string> detailImg { get; set; } = new List<string>(); // [ "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/69a6a8460000683300254e4c8c4fab15000000a100004f50", ... ],
public List<object> detailVideos { get; set; } = new List<object>();
public List<object> detailVideoInfo { get; set; } = new List<object>();
public List<object> carouselImg { get; set; } = new List<object>();
public string desc { get; set; } = "";
}
public class WXHeadImgInfo
{
public string imgUrl { get; set; } // "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/69a6a8420006d56e0003583092a31715000000a100004f50",
public int? imgWidth { get; set; } // 800,
public int? imgHeight { get; set; } // 800
}
public class WXProductHeadimgInfo
{
public List<object> colors { get; set; } = new List<object>(); // []
public string imgUrl { get; set; } // "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/69a6a8420006d56e0003583092a31715000000a100004f50"
public WXMainColors mainColors { get; set; }
}
public class WXMainColors
{
public int? red { get; set; } // 255,
public int? green { get; set; } // 255,
public int? blue { get; set; } // 255
}
public class WXQualificationInfo
{
public List<string> qualificationUrl { get; set; } // ["https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/69a6a84a0008442e2a4a8f7179bc1715000000a000004f50"]
public string qualificationId { get; set; } // "50000115"
public int? showCertType { get; set; } // 0
}
public class WXProductParamInfo
{
public List<WXProductParamCategoryInfo> categorys { get; set; } = new List<WXProductParamCategoryInfo>();
}
public class WXProductParamCategoryInfo
{
public string name { get; set; } // [0] "name": "长度" [1] "name": "20 cm",
public int? catType { get; set; } = 0;
public WXProductParamCategoryCatInfo catInfo { get; set; }
}
public class WXProductParamCategoryCatInfo
{
public int? isRequired { get; set; } // 1,
public int? isCustomize { get; set; } // 0,
public int? inputType { get; set; } // 1-单选 2-文本
public long? catGroup { get; set; } // 4294967295,
}
public class WXProductCategoryInfo
{
public string catId { get; set; } // "10000577"
public string name { get; set; } // "情趣用品" // 可能为空或没有此字段
public string fCatId { get; set; } // "10000575"
public WXProductInfoInfo catInfo { get; set; }
public bool? leaf { get; set; } // false
}
public class WXProductCategoryInfoInfo
{
public int? catLevel { get; set; } // 2
public long? catGroup { get; set; } // 4294967295
}
}
@@ -265,6 +265,7 @@ namespace KJD_Web.BLL.BXX
var password = RegexUtils.GetStringQuery(ref inputData, "password")?.Replace("'", "\\'");
var search_secret_spu_ids = RegexUtils.GetStringQuery(ref inputData, "search_secret_spu_ids")?.Replace("'", "\\'");
var search_spu_ids = RegexUtils.GetStringQuery(ref inputData, "search_spu_ids")?.Replace("'", "\\'");
var wx_safe_status = RegexUtils.GetStringQuery(ref inputData, "wx_safe_status")?.Replace("'", "\\'");
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(500);
@@ -281,6 +282,10 @@ namespace KJD_Web.BLL.BXX
{
sql += " and p.spu_id in ('" + string.Join("','", search_spu_ids.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + "')";
}
if (wx_safe_status != null)
{
sql += " and p.wx_safe_status in ('" + string.Join("','", wx_safe_status.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + "')";
}
var dt = mySql.ExecuteDataTable(sql);
mySql.Close();
@@ -549,11 +554,12 @@ namespace KJD_Web.BLL.BXX
prod.size_json = row["size_json"].ToString();
prod.sku_edit_json = row["sku_edit_json"].ToString();
prod.sku_secret_json = row["sku_secret_json"].ToString();
prod.has_wx_format = row["has_wx_format"].ParseToNullableString();
prod.sku_img_replace_base64 = row["img_base64"].ToString();
//prod.sku_img_replace_url = row["img_url"].ToString();
prod.wx_img_map_json = row["wx_img_map_json"].ToString();
if(!prod.sku_secret_json.IsNullOrEmpty() && prod.secret_spu_id.IsNullOrEmpty())
if (!prod.sku_secret_json.IsNullOrEmpty() && prod.secret_spu_id.IsNullOrEmpty())
{
var secret_json = prod.sku_secret_json;
var goodsId = RegexUtils.GetStringJson(ref secret_json, "goodsId");
@@ -595,6 +601,153 @@ namespace KJD_Web.BLL.BXX
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
/// <summary>
/// 回采微信小店属性等商品数据入库
/// </summary>
/// <param name="inputData"></param>
/// <returns></returns>
public string AddProdWXComplate(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
var timeCalc = DateTime.Now;
var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt();
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
if (time1 != EncrypUtil.Encryption(time))
return "{\"code\":50000,\"msg\":\"校验失败\"}";
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
var password = RegexUtils.GetStringQuery(ref inputData, "password")?.Replace("'", "\\'");
if (user_name.IsNullOrEmpty())
{
return "{\"code\":500,\"msg\":\"用户信息不能为空\"}";
}
var spu_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_id")).ParseToString().Replace("'", "\\'");
var coid = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "coid")).ParseToString().Replace("'", "\\'");
var secret_spu_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "secret_spu_id")).ParseToString().Replace("'", "\\'");
var wx_edit_prod_json = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "wx_edit_prod_json")).ParseToString().Replace("'", "\\'");
if (secret_spu_id.IsNullOrEmpty() || wx_edit_prod_json.IsNullOrEmpty())
{
return "{\"code\":500,\"msg\":\"商品回采数据不能为空\"}";
}
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "";
sql = "INSERT INTO bxx.product_wx_complate (spu_id,coid,secret_spu_id,wx_edit_prod_json) VALUES " +
" ('" + spu_id + "','" + coid + "','" + secret_spu_id + "','" + wx_edit_prod_json + "')" +
" ON DUPLICATE KEY UPDATE spu_id=VALUES(spu_id),coid=VALUES(coid),wx_edit_prod_json=VALUES(wx_edit_prod_json);";
var rst = mySql.ExecuteNonQuery(sql);
if (!rst || !string.IsNullOrEmpty(mySql.Message))
{
mySql.Close();
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
}
sql = "UPDATE bxx.product set has_wx_format='1' where secret_spu_id='" + secret_spu_id + "'";
rst = mySql.ExecuteNonQuery(sql);
mySql.Close();
if (!rst || !string.IsNullOrEmpty(mySql.Message))
{
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
}
else
{
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
return "{\"code\":200,\"msg\":\"success\",\"seconds\":" + seconds + "}";
}
}
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
/// <summary>
/// 查询回采微信小店属性等商品数据
/// </summary>
/// <param name="inputData"></param>
/// <returns></returns>
public string GetProdWXComplateList(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
var timeCalc = DateTime.Now;
var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt();
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
if (time1 != EncrypUtil.Encryption(time))
return "{\"code\":50000,\"msg\":\"校验失败\"}";
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
var password = RegexUtils.GetStringQuery(ref inputData, "password")?.Replace("'", "\\'");
if (user_name.IsNullOrEmpty())
{
return "{\"code\":500,\"msg\":\"用户信息不能为空\"}";
}
var spu_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_id")).ParseToString().Replace("'", "\\'");
var coid = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "coid")).ParseToString().Replace("'", "\\'");
var search_secret_spu_ids = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "search_secret_spu_ids")).ParseToString().Replace("'", "\\'");
if (search_secret_spu_ids.IsNullOrEmpty())
{
return "{\"code\":500,\"msg\":\"商品回采数据编号不能为空\"}";
}
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(1000);
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "select id,spu_id,coid,secret_spu_id,wx_edit_prod_json,add_time" +
" from bxx.product_wx_complate p where 1=1";
if (search_secret_spu_ids != null)
{
sql += " and p.secret_spu_id in ('" + string.Join("','", search_secret_spu_ids.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries)) + "')";
}
sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size;
var dt = mySql.ExecuteDataTable(sql);
mySql.Close();
if (dt != null)
{
try
{
JArray wxProdComplateArr = new JArray();
foreach (DataRow row in dt.Rows)
{
JObject wxProdComplateObj = new JObject();
wxProdComplateObj["id"] = Convert.ToInt32(row["id"]);
wxProdComplateObj["spu_id"] = row["spu_id"].ToString();
wxProdComplateObj["coid"] = row["coid"].ToString();
wxProdComplateObj["secret_spu_id"] = row["secret_spu_id"].ToString();
wxProdComplateObj["wx_edit_prod_json"] = row["wx_edit_prod_json"].ToString();
wxProdComplateObj["add_time"] = Convert.ToDateTime(row["add_time"]);
wxProdComplateArr.Add(wxProdComplateObj);
}
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
var data = JsonUtils.SerializerObjectToString(wxProdComplateArr, jsonSetting);
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + wxProdComplateArr.Count + ",\"seconds\":" + seconds + "}";
}
catch (Exception ex)
{
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
}
}
else
{
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
}
}
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
/// <summary>
/// 新增下架sku
/// </summary>
/// <param name="inputData"></param>
/// <returns></returns>
public string AddProdDownSku(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
@@ -669,6 +822,11 @@ namespace KJD_Web.BLL.BXX
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
/// <summary>
/// 查询下架sku
/// </summary>
/// <param name="inputData"></param>
/// <returns></returns>
public string GetProdDownSkuLstBySkuCodes(string inputData)
{
var timeCalc = DateTime.Now;
@@ -989,6 +1147,7 @@ namespace KJD_Web.BLL.BXX
var is_not_count = (RegexUtils.GetStringQuery(ref inputData, "is_not_count")?.Replace("'", "\\'")).ParseToBool();
var prod_count = (RegexUtils.GetStringQuery(ref inputData, "prod_count")?.Replace("'", "\\'")).ParseToInt();
var add_days_less = RegexUtils.GetStringQuery(ref inputData, "add_days_less")?.Replace("'", "\\'").ParseToNullableInt();
var has_wx_format = RegexUtils.GetStringQuery(ref inputData, "has_wx_format")?.Replace("'", "\\'").ParseToString();
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50);
@@ -1058,9 +1217,15 @@ namespace KJD_Web.BLL.BXX
{
where += " and add_time > '" + DateTime.Now.AddDays(-add_days_less.ParseToInt()).ToString("yyyy-MM-dd") + "'";
}
if (!has_wx_format.IsNullOrEmpty())
{
where += " and has_wx_format = '" + has_wx_format + "'";
}
sql += where;
int count = prod_count;
int count = prod_count;
if (product_get_type == "厂商直采" && count > 1500)
count /= 3;
if (!is_not_count)
{
count = mySql.ExecuteRowCount(sql);
@@ -47,6 +47,7 @@ namespace KJD_Web.BLL
is_sa = row.Table.Columns.Contains("is_sa") ? row["is_sa"].ParseToInt() : 0,
sa_level = row.Table.Columns.Contains("sa_level") ? row["sa_level"].ParseToInt() : 0,
authorized_amount = row.Table.Columns.Contains("authorized_amount") ? row["authorized_amount"].ParseToInt() : 0,
authority = row.Table.Columns.Contains("authority") ? row["authority"].ParseToString() : "",
};
if (string.IsNullOrEmpty(user.company_name))
@@ -75,6 +76,7 @@ namespace KJD_Web.BLL
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var company_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "company"))?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -89,9 +91,9 @@ namespace KJD_Web.BLL
return "{\"code\":500,\"msg\":\"用户名已存在\"}";
}
sql = "insert into kjd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,parent_user_name,add_time,mdy_time) " +
sql = "insert into kjd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,parent_user_name,authority,add_time,mdy_time) " +
"values ('" + nick_name + "','" + user_name + "','" + mobile + "','" + password + "','" + card_id + "','" +
group_id + "','" + company_name + "','" + notes + "','" + parent_user_name + "','" +
group_id + "','" + company_name + "','" + notes + "','" + parent_user_name + "','" + authority + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "');";
var rst = mySql.ExecuteNonQuery(sql);
@@ -139,6 +141,7 @@ namespace KJD_Web.BLL
parent_user_name = row["parent_user_name"].ToString(),
company_name = row["company_name"].ToString(),
notes = row["notes"].ToString(),
authority = row.Table.Columns.Contains("authority") ? row["authority"].ParseToString() : "",
};
if (string.IsNullOrEmpty(user.mobile))
{
@@ -166,6 +169,7 @@ namespace KJD_Web.BLL
var group_id = RegexUtils.GetStringQuery(ref inputData, "group_id")?.Replace("'", "\\'");
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -189,6 +193,8 @@ namespace KJD_Web.BLL
sql += " card_id='" + card_id + "',";
if (!string.IsNullOrEmpty(notes))
sql += " notes='" + notes + "',";
if (!string.IsNullOrEmpty(authority))
sql += " authority='" + authority + "',";
sql = sql.TrimEnd(',');
sql += " where id=" + id + "";
@@ -281,6 +287,7 @@ namespace KJD_Web.BLL
is_sa = row.Table.Columns.Contains("is_sa") ? row["is_sa"].ParseToInt() : 0,
sa_level = row.Table.Columns.Contains("sa_level") ? row["sa_level"].ParseToInt() : 0,
authorized_amount = row.Table.Columns.Contains("authorized_amount") ? row["authorized_amount"].ParseToInt() : 0,
authority = row.Table.Columns.Contains("authority") ? row["authority"].ParseToString() : "",
};
if (string.IsNullOrEmpty(user.mobile))
{
@@ -308,7 +315,8 @@ namespace KJD_Web.BLL
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var sa_level = RegexUtils.GetStringQuery(ref inputData, "sa_level")?.Replace("'", "\\'");
var authorized_amount = RegexUtils.GetStringQuery(ref inputData, "sa_level")?.Replace("'", "\\'");
var authorized_amount = RegexUtils.GetStringQuery(ref inputData, "authorized_amount")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -324,9 +332,9 @@ namespace KJD_Web.BLL
}
sql = "insert into kjd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,sa_level," +
"authorized_amount,add_time,mdy_time) " +
"authorized_amount,authority,add_time,mdy_time) " +
"values ('" + nick_name + "','" + user_name + "','" + mobile + "','" + password + "','" + card_id + "','" +
group_id + "','" + company_name + "','" + notes + "'," + sa_level + "," + authorized_amount + ",'" +
group_id + "','" + company_name + "','" + notes + "'," + sa_level + "," + authorized_amount + ",'" + authority + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "');";
var rst = mySql.ExecuteNonQuery(sql);
@@ -354,6 +362,7 @@ namespace KJD_Web.BLL
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var sa_level = RegexUtils.GetStringQuery(ref inputData, "sa_level")?.Replace("'", "\\'");
var authorized_amount = RegexUtils.GetStringQuery(ref inputData, "authorized_amount")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -383,6 +392,8 @@ namespace KJD_Web.BLL
sql += " sa_level=" + sa_level + ",";
if (!string.IsNullOrEmpty(authorized_amount))
sql += " authorized_amount=" + authorized_amount + ",";
if (authority != null)
sql += " authority='" + authority + "',";
sql = sql.TrimEnd(',');
sql += " where id=" + id + "";
@@ -20,6 +20,7 @@ namespace KJD_Web.BLL.WXXD
{
if (!string.IsNullOrEmpty(inputData))
{
var timeCalc = DateTime.Now;
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name");
var password = RegexUtils.GetStringQuery(ref inputData, "password");
var search_id = RegexUtils.GetStringQuery(ref inputData, "search_id");
@@ -188,10 +189,10 @@ namespace KJD_Web.BLL.WXXD
// }
//}
var data = JsonUtils.SerializerObjectToString(shopList);
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 + "}";
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
}
}
return "{\"code\":19999,\"msg\":\"未知错误\"}";
@@ -51,6 +51,7 @@ namespace KJD_Web.BLL.WXXD
company_name = row["company_name"].ToString(),
is_sa = row.Table.Columns.Contains("is_sa") ? row["is_sa"].ParseToInt() : 0,
sa_level = row.Table.Columns.Contains("sa_level") ? row["sa_level"].ParseToInt() : 0,
authority = row.Table.Columns.Contains("authority") ? row["authority"].ParseToString() : "",
};
if (string.IsNullOrEmpty(user.company_name))
@@ -79,6 +80,7 @@ namespace KJD_Web.BLL.WXXD
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var company_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "company"))?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -93,9 +95,9 @@ namespace KJD_Web.BLL.WXXD
return "{\"code\":500,\"msg\":\"用户名已存在\"}";
}
sql = "insert into wxxd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,parent_user_name,add_time,mdy_time) " +
sql = "insert into wxxd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,parent_user_name,authority,add_time,mdy_time) " +
"values ('" + nick_name + "','" + user_name + "','" + mobile + "','" + password + "','" + card_id + "','" +
group_id + "','" + company_name + "','" + notes + "','" + parent_user_name + "','" +
group_id + "','" + company_name + "','" + notes + "','" + parent_user_name + "','" + authority + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "');";
var rst = mySql.ExecuteNonQuery(sql);
@@ -143,6 +145,7 @@ namespace KJD_Web.BLL.WXXD
parent_user_name = row["parent_user_name"].ToString(),
company_name = row["company_name"].ToString(),
notes = row["notes"].ToString(),
authority = row.Table.Columns.Contains("authority") ? row["authority"].ParseToString() : "",
};
if (string.IsNullOrEmpty(user.mobile))
{
@@ -170,6 +173,7 @@ namespace KJD_Web.BLL.WXXD
var group_id = RegexUtils.GetStringQuery(ref inputData, "group_id")?.Replace("'", "\\'");
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -193,6 +197,8 @@ namespace KJD_Web.BLL.WXXD
sql += " card_id='" + card_id + "',";
if (!string.IsNullOrEmpty(notes))
sql += " notes='" + notes + "',";
if (authority != null)
sql += " authority='" + authority + "',";
sql = sql.TrimEnd(',');
sql += " where id=" + id + "";
@@ -281,6 +287,7 @@ namespace KJD_Web.BLL.WXXD
notes = row["notes"].ToString(),
is_sa = row.Table.Columns.Contains("is_sa") ? row["is_sa"].ParseToInt() : 0,
sa_level = row.Table.Columns.Contains("sa_level") ? row["sa_level"].ParseToInt() : 0,
authority = row.Table.Columns.Contains("authority") ? row["authority"].ParseToString() : "",
};
if (string.IsNullOrEmpty(user.mobile))
{
@@ -308,6 +315,7 @@ namespace KJD_Web.BLL.WXXD
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var sa_level = RegexUtils.GetStringQuery(ref inputData, "sa_level")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -322,9 +330,9 @@ namespace KJD_Web.BLL.WXXD
return "{\"code\":500,\"msg\":\"用户名已存在\"}";
}
sql = "insert into wxxd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,sa_level,add_time,mdy_time) " +
sql = "insert into wxxd.user (nick_name,user_name,mobile,password,card_id,group_id,company_name,notes,sa_level,authority,add_time,mdy_time) " +
"values ('" + nick_name + "','" + user_name + "','" + mobile + "','" + password + "','" + card_id + "','" +
group_id + "','" + company_name + "','" + notes + "'," + sa_level + ",'" +
group_id + "','" + company_name + "','" + notes + "'," + sa_level + ",'" + authority + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" +
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "');";
var rst = mySql.ExecuteNonQuery(sql);
@@ -351,6 +359,7 @@ namespace KJD_Web.BLL.WXXD
var card_id = RegexUtils.GetStringQuery(ref inputData, "card_id")?.Replace("'", "\\'");
var notes = RegexUtils.GetStringQuery(ref inputData, "notes")?.Replace("'", "\\'");
var sa_level = RegexUtils.GetStringQuery(ref inputData, "sa_level")?.Replace("'", "\\'");
var authority = RegexUtils.GetStringQuery(ref inputData, "authority")?.Replace("'", "\\'");
int r2 = 0;
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2);
@@ -378,6 +387,8 @@ namespace KJD_Web.BLL.WXXD
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 + "";
@@ -122,6 +122,30 @@ namespace KJD_Web
Context.Response.End();
}
[WebMethod]
public void add_prod_wx_complate()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new BXXProductManage().AddProdWXComplate(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void get_prod_wx_complate_list()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new BXXProductManage().GetProdWXComplateList(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void get_sku_replace_img_list_random()
{
@@ -100,5 +100,6 @@ namespace KJD_Web.Model
public int send_to_out_server { get; set; }
public string real_coid { get; set; }
public string real_spu_id { get; set; }
public string has_wx_format { get; set; }
}
}
@@ -57,5 +57,10 @@ namespace KJD_Web.Model
/// 备注
/// </summary>
public string notes { get; set; }
/// <summary>
/// 用户的功能操作权限
/// </summary>
public string authority { get; set; }
}
}
@@ -494,6 +494,25 @@ namespace NaiBa.Util.Extension
}
}
public static string ParseToNullableString(this object obj)
{
try
{
if (obj == null)
{
return null;
}
else
{
return obj.ToString();
}
}
catch
{
return null;
}
}
public static string ParseToStrings<T>(this object obj, string split = ",")
{
try
@@ -83,9 +83,21 @@ namespace KJD_Web
Context.Response.Write(result);
Context.Response.End();
}
}
[WebMethod]
public void get_pdd_prod_wx_complate_list()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new BXXProductManage().GetProdWXComplateList(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void get_pdd_product_groups()
{
+13 -1
View File
@@ -161,6 +161,7 @@
<Compile Include="ToolForms\ImgToolForm.Designer.cs">
<DependentUpon>ImgToolForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopBrowserObject.cs" />
<Compile Include="WXForms\AdminForms\WXAdminShopListForm.cs">
<SubType>Form</SubType>
</Compile>
@@ -191,6 +192,12 @@
<Compile Include="WXForms\AdminForms\WXAdminShopLoginForm.Designer.cs">
<DependentUpon>WXAdminShopLoginForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\AdminForms\WXProdComplateForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="WXForms\AdminForms\WXProdComplateForm.Designer.cs">
<DependentUpon>WXProdComplateForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ProductForms\WXDBProdUploadCacheForm.cs">
<SubType>Form</SubType>
</Compile>
@@ -275,7 +282,6 @@
<Compile Include="WXForms\ShopForms\WXSubAccountShopEditForm.Designer.cs">
<DependentUpon>WXSubAccountShopEditForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopBrowserObject.cs" />
<Compile Include="WXForms\ShopForms\UcSubAccount.cs">
<SubType>UserControl</SubType>
</Compile>
@@ -1096,6 +1102,9 @@
<EmbeddedResource Include="ToolForms\ImgToolForm.resx">
<DependentUpon>ImgToolForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="UserComponent\DataGridViewEx.resx">
<DependentUpon>DataGridViewEx.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\AdminForms\WXAdminShopListForm.resx">
<DependentUpon>WXAdminShopListForm.cs</DependentUpon>
</EmbeddedResource>
@@ -1111,6 +1120,9 @@
<EmbeddedResource Include="WXForms\AdminForms\WXAdminShopLoginForm.resx">
<DependentUpon>WXAdminShopLoginForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\AdminForms\WXProdComplateForm.resx">
<DependentUpon>WXProdComplateForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\ProductForms\WXDBProdUploadCacheForm.resx">
<DependentUpon>WXDBProdUploadCacheForm.cs</DependentUpon>
</EmbeddedResource>
+139 -133
View File
@@ -63,24 +63,22 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.label8 = new System.Windows.Forms.Label();
this.txtReplaceText = new System.Windows.Forms.TextBox();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.label16 = new System.Windows.Forms.Label();
this.txtSecretStyleCode = new System.Windows.Forms.TextBox();
this.label15 = new System.Windows.Forms.Label();
this.cmbCat1 = new System.Windows.Forms.ComboBox();
this.label13 = new System.Windows.Forms.Label();
this.cmbSourceType = new System.Windows.Forms.ComboBox();
this.label10 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.txtSPU = new System.Windows.Forms.TextBox();
this.cmbWxCat = new System.Windows.Forms.ComboBox();
this.label2 = new System.Windows.Forms.Label();
this.txtSKC = new System.Windows.Forms.TextBox();
this.cmbSort = new System.Windows.Forms.ComboBox();
this.label6 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label12 = new System.Windows.Forms.Label();
this.txtExtCode = new System.Windows.Forms.TextBox();
this.btnSearch = new DevComponents.DotNetBar.PanelEx();
this.lblNotes = new System.Windows.Forms.Label();
this.txtNotes = new System.Windows.Forms.TextBox();
this.lblGroup = new System.Windows.Forms.Label();
this.cmbGroupFilter = new System.Windows.Forms.ComboBox();
this.pnlEmpty = new DevComponents.DotNetBar.PanelEx();
@@ -89,6 +87,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.txtProdName = new System.Windows.Forms.TextBox();
this.cmbWxSafe = new System.Windows.Forms.ComboBox();
this.lblWxSafe = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.cmbCat1 = new System.Windows.Forms.ComboBox();
this.lblNotes = new System.Windows.Forms.Label();
this.txtNotes = new System.Windows.Forms.TextBox();
this.btnExportTxt = new DevComponents.DotNetBar.PanelEx();
this.btnDelSelect = new DevComponents.DotNetBar.PanelEx();
this.cmbGroup = new System.Windows.Forms.ComboBox();
@@ -108,8 +110,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnEditExtCodePriceOK = new DevComponents.DotNetBar.PanelEx();
this.lblExtCodePrice = new System.Windows.Forms.Label();
this.pbLoading = new System.Windows.Forms.PictureBox();
this.txtSKC = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.btnSelect = new DevComponents.DotNetBar.PanelEx();
this.label11 = new System.Windows.Forms.Label();
this.dgvDbProduct = new TemuKJD.UserComponent.DataGridViewEx();
@@ -199,7 +199,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.splitContainer1.Panel2.Controls.Add(this.splitContainer2);
this.splitContainer1.Size = new System.Drawing.Size(1438, 686);
this.splitContainer1.SplitterDistance = 76;
this.splitContainer1.SplitterDistance = 110;
this.splitContainer1.TabIndex = 1;
//
// btnStopStop
@@ -208,7 +208,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
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(668, 9);
this.btnStopStop.Location = new System.Drawing.Point(672, 23);
this.btnStopStop.Name = "btnStopStop";
this.btnStopStop.Size = new System.Drawing.Size(76, 25);
this.btnStopStop.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -234,7 +234,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnPull.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnPull.DisabledBackColor = System.Drawing.Color.Empty;
this.btnPull.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnPull.Location = new System.Drawing.Point(806, 43);
this.btnPull.Location = new System.Drawing.Point(810, 57);
this.btnPull.Name = "btnPull";
this.btnPull.Size = new System.Drawing.Size(34, 25);
this.btnPull.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -259,7 +259,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnPushToOutServer.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnPushToOutServer.DisabledBackColor = System.Drawing.Color.Empty;
this.btnPushToOutServer.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnPushToOutServer.Location = new System.Drawing.Point(746, 43);
this.btnPushToOutServer.Location = new System.Drawing.Point(750, 57);
this.btnPushToOutServer.Name = "btnPushToOutServer";
this.btnPushToOutServer.Size = new System.Drawing.Size(58, 25);
this.btnPushToOutServer.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -284,7 +284,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnGetProdWxCate.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnGetProdWxCate.DisabledBackColor = System.Drawing.Color.Empty;
this.btnGetProdWxCate.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnGetProdWxCate.Location = new System.Drawing.Point(746, 9);
this.btnGetProdWxCate.Location = new System.Drawing.Point(750, 23);
this.btnGetProdWxCate.Name = "btnGetProdWxCate";
this.btnGetProdWxCate.Size = new System.Drawing.Size(94, 25);
this.btnGetProdWxCate.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -311,7 +311,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"安全商品",
"违规商品",
"未校验"});
this.cmbSetWxSafe.Location = new System.Drawing.Point(861, 43);
this.cmbSetWxSafe.Location = new System.Drawing.Point(865, 57);
this.cmbSetWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSetWxSafe.Name = "cmbSetWxSafe";
this.cmbSetWxSafe.Size = new System.Drawing.Size(85, 25);
@@ -324,7 +324,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSetWxSafe.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSetWxSafe.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSetWxSafe.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSetWxSafe.Location = new System.Drawing.Point(948, 43);
this.btnSetWxSafe.Location = new System.Drawing.Point(952, 57);
this.btnSetWxSafe.Name = "btnSetWxSafe";
this.btnSetWxSafe.Size = new System.Drawing.Size(84, 25);
this.btnSetWxSafe.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -349,7 +349,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnImport.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnImport.DisabledBackColor = System.Drawing.Color.Empty;
this.btnImport.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnImport.Location = new System.Drawing.Point(1048, 43);
this.btnImport.Location = new System.Drawing.Point(1058, 57);
this.btnImport.Name = "btnImport";
this.btnImport.Size = new System.Drawing.Size(84, 25);
this.btnImport.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -373,7 +373,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.chkHighestPriceSku.AutoSize = true;
this.chkHighestPriceSku.Checked = true;
this.chkHighestPriceSku.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkHighestPriceSku.Location = new System.Drawing.Point(1235, 53);
this.chkHighestPriceSku.Location = new System.Drawing.Point(1258, 73);
this.chkHighestPriceSku.Name = "chkHighestPriceSku";
this.chkHighestPriceSku.Size = new System.Drawing.Size(119, 21);
this.chkHighestPriceSku.TabIndex = 728;
@@ -386,7 +386,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.chkSameSpecPrice.AutoSize = true;
this.chkSameSpecPrice.Checked = true;
this.chkSameSpecPrice.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkSameSpecPrice.Location = new System.Drawing.Point(1141, 53);
this.chkSameSpecPrice.Location = new System.Drawing.Point(1163, 73);
this.chkSameSpecPrice.Name = "chkSameSpecPrice";
this.chkSameSpecPrice.Size = new System.Drawing.Size(99, 21);
this.chkSameSpecPrice.TabIndex = 718;
@@ -397,7 +397,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label9.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label9.AutoSize = true;
this.label9.Location = new System.Drawing.Point(1268, 32);
this.label9.Location = new System.Drawing.Point(1290, 48);
this.label9.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(76, 17);
@@ -407,7 +407,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtMinPrice
//
this.txtMinPrice.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.txtMinPrice.Location = new System.Drawing.Point(1235, 29);
this.txtMinPrice.Location = new System.Drawing.Point(1257, 45);
this.txtMinPrice.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtMinPrice.Name = "txtMinPrice";
this.txtMinPrice.Size = new System.Drawing.Size(33, 23);
@@ -418,7 +418,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label8.AutoSize = true;
this.label8.Location = new System.Drawing.Point(1138, 32);
this.label8.Location = new System.Drawing.Point(1160, 48);
this.label8.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(104, 17);
@@ -428,7 +428,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtReplaceText
//
this.txtReplaceText.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.txtReplaceText.Location = new System.Drawing.Point(1235, 5);
this.txtReplaceText.Location = new System.Drawing.Point(1257, 16);
this.txtReplaceText.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtReplaceText.Name = "txtReplaceText";
this.txtReplaceText.Size = new System.Drawing.Size(104, 23);
@@ -454,24 +454,22 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 16.66666F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
this.tableLayoutPanel1.Controls.Add(this.label16, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.txtSecretStyleCode, 5, 0);
this.tableLayoutPanel1.Controls.Add(this.label15, 4, 0);
this.tableLayoutPanel1.Controls.Add(this.cmbCat1, 3, 0);
this.tableLayoutPanel1.Controls.Add(this.label13, 10, 1);
this.tableLayoutPanel1.Controls.Add(this.cmbSourceType, 5, 1);
this.tableLayoutPanel1.Controls.Add(this.label10, 4, 1);
this.tableLayoutPanel1.Controls.Add(this.label5, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.txtSPU, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.cmbWxCat, 11, 0);
this.tableLayoutPanel1.Controls.Add(this.label2, 2, 0);
this.tableLayoutPanel1.Controls.Add(this.txtSKC, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.cmbSort, 7, 1);
this.tableLayoutPanel1.Controls.Add(this.label6, 6, 1);
this.tableLayoutPanel1.Controls.Add(this.label4, 6, 0);
this.tableLayoutPanel1.Controls.Add(this.label12, 10, 0);
this.tableLayoutPanel1.Controls.Add(this.txtExtCode, 7, 0);
this.tableLayoutPanel1.Controls.Add(this.btnSearch, 12, 0);
this.tableLayoutPanel1.Controls.Add(this.lblNotes, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.txtNotes, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.lblGroup, 2, 1);
this.tableLayoutPanel1.Controls.Add(this.cmbGroupFilter, 3, 1);
this.tableLayoutPanel1.Controls.Add(this.pnlEmpty, 12, 1);
@@ -480,44 +478,50 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.tableLayoutPanel1.Controls.Add(this.txtProdName, 9, 0);
this.tableLayoutPanel1.Controls.Add(this.cmbWxSafe, 9, 1);
this.tableLayoutPanel1.Controls.Add(this.lblWxSafe, 8, 1);
this.tableLayoutPanel1.Controls.Add(this.label2, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.cmbCat1, 1, 2);
this.tableLayoutPanel1.Controls.Add(this.lblNotes, 2, 0);
this.tableLayoutPanel1.Controls.Add(this.txtNotes, 3, 0);
this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 4);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(650, 71);
this.tableLayoutPanel1.RowCount = 3;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33444F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33445F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33112F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(650, 105);
this.tableLayoutPanel1.TabIndex = 679;
//
// label16
//
this.label16.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label16.AutoSize = true;
this.label16.Location = new System.Drawing.Point(3, 44);
this.label16.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label16.Name = "label16";
this.label16.Size = new System.Drawing.Size(69, 17);
this.label16.TabIndex = 812;
this.label16.Text = "coid/skc:";
//
// txtSecretStyleCode
//
this.txtSecretStyleCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtSecretStyleCode.Location = new System.Drawing.Point(243, 6);
this.txtSecretStyleCode.Location = new System.Drawing.Point(246, 6);
this.txtSecretStyleCode.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtSecretStyleCode.Name = "txtSecretStyleCode";
this.txtSecretStyleCode.Size = new System.Drawing.Size(38, 23);
this.txtSecretStyleCode.Size = new System.Drawing.Size(37, 23);
this.txtSecretStyleCode.TabIndex = 812;
//
// label15
//
this.label15.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label15.AutoSize = true;
this.label15.Location = new System.Drawing.Point(199, 9);
this.label15.Location = new System.Drawing.Point(202, 9);
this.label15.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(44, 17);
this.label15.TabIndex = 811;
this.label15.Text = "编码:";
//
// cmbCat1
//
this.cmbCat1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat1.FormattingEnabled = true;
this.cmbCat1.Location = new System.Drawing.Point(155, 7);
this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat1.Name = "cmbCat1";
this.cmbCat1.Size = new System.Drawing.Size(38, 25);
this.cmbCat1.TabIndex = 805;
//
// label13
//
this.label13.Anchor = System.Windows.Forms.AnchorStyles.Right;
@@ -540,17 +544,17 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"机会商品",
"以图搜品",
"外部数据"});
this.cmbSourceType.Location = new System.Drawing.Point(243, 43);
this.cmbSourceType.Location = new System.Drawing.Point(246, 42);
this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSourceType.Name = "cmbSourceType";
this.cmbSourceType.Size = new System.Drawing.Size(38, 25);
this.cmbSourceType.Size = new System.Drawing.Size(37, 25);
this.cmbSourceType.TabIndex = 654;
//
// label10
//
this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label10.AutoSize = true;
this.label10.Location = new System.Drawing.Point(199, 44);
this.label10.Location = new System.Drawing.Point(202, 44);
this.label10.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(44, 17);
@@ -571,10 +575,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtSPU
//
this.txtSPU.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtSPU.Location = new System.Drawing.Point(60, 6);
this.txtSPU.Location = new System.Drawing.Point(72, 6);
this.txtSPU.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtSPU.Name = "txtSPU";
this.txtSPU.Size = new System.Drawing.Size(38, 23);
this.txtSPU.Size = new System.Drawing.Size(37, 23);
this.txtSPU.TabIndex = 434;
//
// cmbWxCat
@@ -588,19 +592,17 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.cmbWxCat.Location = new System.Drawing.Point(555, 7);
this.cmbWxCat.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxCat.Name = "cmbWxCat";
this.cmbWxCat.Size = new System.Drawing.Size(38, 25);
this.cmbWxCat.Size = new System.Drawing.Size(37, 25);
this.cmbWxCat.TabIndex = 802;
//
// label2
// txtSKC
//
this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(104, 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);
this.label2.TabIndex = 426;
this.label2.Text = "类目1:";
this.txtSKC.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtSKC.Location = new System.Drawing.Point(72, 41);
this.txtSKC.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtSKC.Name = "txtSKC";
this.txtSKC.Size = new System.Drawing.Size(37, 23);
this.txtSKC.TabIndex = 432;
//
// cmbSort
//
@@ -609,10 +611,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.cmbSort.Items.AddRange(new object[] {
"入库时间",
"认领总数"});
this.cmbSort.Location = new System.Drawing.Point(331, 43);
this.cmbSort.Location = new System.Drawing.Point(333, 42);
this.cmbSort.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSort.Name = "cmbSort";
this.cmbSort.Size = new System.Drawing.Size(38, 25);
this.cmbSort.Size = new System.Drawing.Size(37, 25);
this.cmbSort.TabIndex = 448;
this.cmbSort.Text = "入库时间";
//
@@ -620,7 +622,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label6.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(287, 44);
this.label6.Location = new System.Drawing.Point(289, 44);
this.label6.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(44, 17);
@@ -631,7 +633,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label4.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(287, 9);
this.label4.Location = new System.Drawing.Point(289, 9);
this.label4.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(44, 17);
@@ -652,10 +654,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtExtCode
//
this.txtExtCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtExtCode.Location = new System.Drawing.Point(331, 6);
this.txtExtCode.Location = new System.Drawing.Point(333, 6);
this.txtExtCode.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtExtCode.Name = "txtExtCode";
this.txtExtCode.Size = new System.Drawing.Size(38, 23);
this.txtExtCode.Size = new System.Drawing.Size(37, 23);
this.txtExtCode.TabIndex = 429;
//
// btnSearch
@@ -665,7 +667,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
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(599, 5);
this.btnSearch.Location = new System.Drawing.Point(598, 5);
this.btnSearch.Name = "btnSearch";
this.btnSearch.Size = new System.Drawing.Size(46, 25);
this.btnSearch.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -683,31 +685,11 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSearch.Text = "搜索";
this.btnSearch.Click += new System.EventHandler(this.btnSearch_Click);
//
// lblNotes
//
this.lblNotes.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblNotes.AutoSize = true;
this.lblNotes.Location = new System.Drawing.Point(16, 44);
this.lblNotes.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblNotes.Name = "lblNotes";
this.lblNotes.Size = new System.Drawing.Size(44, 17);
this.lblNotes.TabIndex = 440;
this.lblNotes.Text = "备注:";
//
// txtNotes
//
this.txtNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtNotes.Location = new System.Drawing.Point(60, 41);
this.txtNotes.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtNotes.Name = "txtNotes";
this.txtNotes.Size = new System.Drawing.Size(38, 23);
this.txtNotes.TabIndex = 439;
//
// lblGroup
//
this.lblGroup.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblGroup.AutoSize = true;
this.lblGroup.Location = new System.Drawing.Point(111, 44);
this.lblGroup.Location = new System.Drawing.Point(115, 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);
@@ -718,10 +700,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
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(155, 43);
this.cmbGroupFilter.Location = new System.Drawing.Point(159, 42);
this.cmbGroupFilter.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbGroupFilter.Name = "cmbGroupFilter";
this.cmbGroupFilter.Size = new System.Drawing.Size(38, 25);
this.cmbGroupFilter.Size = new System.Drawing.Size(37, 25);
this.cmbGroupFilter.TabIndex = 653;
//
// pnlEmpty
@@ -730,7 +712,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.pnlEmpty.CanvasColor = System.Drawing.SystemColors.Control;
this.pnlEmpty.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.pnlEmpty.DisabledBackColor = System.Drawing.Color.Empty;
this.pnlEmpty.Location = new System.Drawing.Point(599, 40);
this.pnlEmpty.Location = new System.Drawing.Point(598, 40);
this.pnlEmpty.Name = "pnlEmpty";
this.pnlEmpty.Size = new System.Drawing.Size(46, 25);
this.pnlEmpty.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -758,17 +740,17 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"是",
"否",
"导出未拉回"});
this.cmbExportToOutServer.Location = new System.Drawing.Point(555, 43);
this.cmbExportToOutServer.Location = new System.Drawing.Point(555, 42);
this.cmbExportToOutServer.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbExportToOutServer.Name = "cmbExportToOutServer";
this.cmbExportToOutServer.Size = new System.Drawing.Size(38, 25);
this.cmbExportToOutServer.Size = new System.Drawing.Size(37, 25);
this.cmbExportToOutServer.TabIndex = 803;
//
// label3
//
this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(375, 9);
this.label3.Location = new System.Drawing.Point(376, 9);
this.label3.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(68, 17);
@@ -778,10 +760,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
// txtProdName
//
this.txtProdName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtProdName.Location = new System.Drawing.Point(443, 6);
this.txtProdName.Location = new System.Drawing.Point(444, 6);
this.txtProdName.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtProdName.Name = "txtProdName";
this.txtProdName.Size = new System.Drawing.Size(38, 23);
this.txtProdName.Size = new System.Drawing.Size(37, 23);
this.txtProdName.TabIndex = 427;
//
// cmbWxSafe
@@ -794,10 +776,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"安全商品",
"违规商品",
"未校验"});
this.cmbWxSafe.Location = new System.Drawing.Point(443, 43);
this.cmbWxSafe.Location = new System.Drawing.Point(444, 42);
this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxSafe.Name = "cmbWxSafe";
this.cmbWxSafe.Size = new System.Drawing.Size(38, 25);
this.cmbWxSafe.Size = new System.Drawing.Size(37, 25);
this.cmbWxSafe.TabIndex = 676;
this.cmbWxSafe.Text = "安全+未校验";
//
@@ -805,13 +787,54 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.lblWxSafe.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.lblWxSafe.AutoSize = true;
this.lblWxSafe.Location = new System.Drawing.Point(375, 44);
this.lblWxSafe.Location = new System.Drawing.Point(376, 44);
this.lblWxSafe.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblWxSafe.Name = "lblWxSafe";
this.lblWxSafe.Size = new System.Drawing.Size(68, 17);
this.lblWxSafe.TabIndex = 651;
this.lblWxSafe.Text = "微信安检:";
//
// label2
//
this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(3, 79);
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);
this.label2.TabIndex = 426;
this.label2.Text = "类目1:";
//
// cmbCat1
//
this.cmbCat1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat1.FormattingEnabled = true;
this.cmbCat1.Location = new System.Drawing.Point(72, 77);
this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat1.Name = "cmbCat1";
this.cmbCat1.Size = new System.Drawing.Size(37, 25);
this.cmbCat1.TabIndex = 805;
//
// lblNotes
//
this.lblNotes.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.lblNotes.AutoSize = true;
this.lblNotes.Location = new System.Drawing.Point(115, 9);
this.lblNotes.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.lblNotes.Name = "lblNotes";
this.lblNotes.Size = new System.Drawing.Size(44, 17);
this.lblNotes.TabIndex = 440;
this.lblNotes.Text = "备注:";
//
// txtNotes
//
this.txtNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.txtNotes.Location = new System.Drawing.Point(159, 6);
this.txtNotes.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtNotes.Name = "txtNotes";
this.txtNotes.Size = new System.Drawing.Size(37, 23);
this.txtNotes.TabIndex = 439;
//
// btnExportTxt
//
this.btnExportTxt.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
@@ -819,9 +842,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnExportTxt.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnExportTxt.DisabledBackColor = System.Drawing.Color.Empty;
this.btnExportTxt.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnExportTxt.Location = new System.Drawing.Point(1344, 26);
this.btnExportTxt.Location = new System.Drawing.Point(1366, 43);
this.btnExportTxt.Name = "btnExportTxt";
this.btnExportTxt.Size = new System.Drawing.Size(89, 25);
this.btnExportTxt.Size = new System.Drawing.Size(67, 25);
this.btnExportTxt.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnExportTxt.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnExportTxt.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
@@ -844,7 +867,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnDelSelect.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnDelSelect.DisabledBackColor = System.Drawing.Color.Empty;
this.btnDelSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnDelSelect.Location = new System.Drawing.Point(1048, 9);
this.btnDelSelect.Location = new System.Drawing.Point(1058, 23);
this.btnDelSelect.Name = "btnDelSelect";
this.btnDelSelect.Size = new System.Drawing.Size(84, 25);
this.btnDelSelect.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -866,7 +889,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbGroup.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.cmbGroup.FormattingEnabled = true;
this.cmbGroup.Location = new System.Drawing.Point(861, 9);
this.cmbGroup.Location = new System.Drawing.Point(865, 23);
this.cmbGroup.Name = "cmbGroup";
this.cmbGroup.Size = new System.Drawing.Size(85, 25);
this.cmbGroup.TabIndex = 640;
@@ -878,7 +901,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSetGroup.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSetGroup.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSetGroup.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSetGroup.Location = new System.Drawing.Point(948, 9);
this.btnSetGroup.Location = new System.Drawing.Point(952, 23);
this.btnSetGroup.Name = "btnSetGroup";
this.btnSetGroup.Size = new System.Drawing.Size(84, 25);
this.btnSetGroup.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -900,7 +923,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(1138, 8);
this.label7.Location = new System.Drawing.Point(1160, 19);
this.label7.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(104, 17);
@@ -913,7 +936,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.chkPullAfterPush.AutoSize = true;
this.chkPullAfterPush.Checked = true;
this.chkPullAfterPush.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkPullAfterPush.Location = new System.Drawing.Point(668, 45);
this.chkPullAfterPush.Location = new System.Drawing.Point(672, 59);
this.chkPullAfterPush.Name = "chkPullAfterPush";
this.chkPullAfterPush.Size = new System.Drawing.Size(87, 21);
this.chkPullAfterPush.TabIndex = 874;
@@ -936,8 +959,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.splitContainer2.Panel1.Controls.Add(this.label14);
this.splitContainer2.Panel1.Controls.Add(this.pnlEditExtCodePrice);
this.splitContainer2.Panel1.Controls.Add(this.pbLoading);
this.splitContainer2.Panel1.Controls.Add(this.txtSKC);
this.splitContainer2.Panel1.Controls.Add(this.label1);
this.splitContainer2.Panel1.Controls.Add(this.btnSelect);
this.splitContainer2.Panel1.Controls.Add(this.label11);
this.splitContainer2.Panel1.Controls.Add(this.dgvDbProduct);
@@ -947,8 +968,8 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.splitContainer2.Panel2.Controls.Add(this.ucSplitPage1);
this.splitContainer2.Panel2.Controls.Add(this.statusBar);
this.splitContainer2.Size = new System.Drawing.Size(1438, 606);
this.splitContainer2.SplitterDistance = 577;
this.splitContainer2.Size = new System.Drawing.Size(1438, 572);
this.splitContainer2.SplitterDistance = 543;
this.splitContainer2.TabIndex = 0;
//
// cmbSpProdType
@@ -959,10 +980,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"",
"普通商品",
"书籍"});
this.cmbSpProdType.Location = new System.Drawing.Point(87, 134);
this.cmbSpProdType.Location = new System.Drawing.Point(82, 75);
this.cmbSpProdType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSpProdType.Name = "cmbSpProdType";
this.cmbSpProdType.Size = new System.Drawing.Size(27, 25);
this.cmbSpProdType.Size = new System.Drawing.Size(37, 25);
this.cmbSpProdType.TabIndex = 677;
this.cmbSpProdType.Visible = false;
//
@@ -970,7 +991,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbCat2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat2.FormattingEnabled = true;
this.cmbCat2.Location = new System.Drawing.Point(82, 173);
this.cmbCat2.Location = new System.Drawing.Point(82, 114);
this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat2.Name = "cmbCat2";
this.cmbCat2.Size = new System.Drawing.Size(37, 25);
@@ -1006,7 +1027,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label14.Anchor = System.Windows.Forms.AnchorStyles.Left;
this.label14.AutoSize = true;
this.label14.Location = new System.Drawing.Point(31, 177);
this.label14.Location = new System.Drawing.Point(31, 118);
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);
@@ -1021,7 +1042,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.pnlEditExtCodePrice.Controls.Add(this.lblExtCode);
this.pnlEditExtCodePrice.Controls.Add(this.panel2);
this.pnlEditExtCodePrice.Controls.Add(this.lblExtCodePrice);
this.pnlEditExtCodePrice.Location = new System.Drawing.Point(482, 84);
this.pnlEditExtCodePrice.Location = new System.Drawing.Point(482, 73);
this.pnlEditExtCodePrice.Name = "pnlEditExtCodePrice";
this.pnlEditExtCodePrice.Size = new System.Drawing.Size(474, 146);
this.pnlEditExtCodePrice.TabIndex = 434;
@@ -1116,31 +1137,13 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None;
this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue;
this.pbLoading.Location = new System.Drawing.Point(694, 263);
this.pbLoading.Location = new System.Drawing.Point(694, 246);
this.pbLoading.Name = "pbLoading";
this.pbLoading.Size = new System.Drawing.Size(50, 50);
this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pbLoading.TabIndex = 7;
this.pbLoading.TabStop = false;
//
// txtSKC
//
this.txtSKC.Location = new System.Drawing.Point(48, 64);
this.txtSKC.Name = "txtSKC";
this.txtSKC.Size = new System.Drawing.Size(90, 23);
this.txtSKC.TabIndex = 432;
this.txtSKC.Visible = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(15, 67);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(43, 17);
this.label1.TabIndex = 433;
this.label1.Text = "SKC:";
this.label1.Visible = false;
//
// btnSelect
//
this.btnSelect.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
@@ -1169,7 +1172,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.label11.Anchor = System.Windows.Forms.AnchorStyles.Right;
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(26, 138);
this.label11.Location = new System.Drawing.Point(14, 79);
this.label11.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(68, 17);
@@ -1235,7 +1238,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.dgvDbProduct.Name = "dgvDbProduct";
this.dgvDbProduct.ReadOnly = true;
this.dgvDbProduct.RowTemplate.Height = 23;
this.dgvDbProduct.Size = new System.Drawing.Size(1430, 577);
this.dgvDbProduct.Size = new System.Drawing.Size(1430, 543);
this.dgvDbProduct.TabIndex = 6;
this.dgvDbProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellContentClick);
this.dgvDbProduct.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvDbProduct_Scroll);
@@ -1548,11 +1551,14 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.Controls.Add(this.splitContainer1);
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.KeyPreview = true;
this.Name = "PDDDBProdListForm";
this.Text = "产品数据库";
this.TitleText = "产品数据库";
this.Load += new System.EventHandler(this.ProductListForm_Load);
this.VisibleChanged += new System.EventHandler(this.ProductListForm_VisibleChanged);
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.PDDDBProdListForm_KeyDown);
this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.PDDDBProdListForm_KeyUp);
this.Controls.SetChildIndex(this.splitContainer1, 0);
this.splitContainer1.Panel1.ResumeLayout(false);
this.splitContainer1.Panel1.PerformLayout();
@@ -1585,7 +1591,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
private System.Windows.Forms.TextBox txtSPU;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox txtSKC;
private System.Windows.Forms.Label label1;
private DevComponents.DotNetBar.PanelEx pnlEmpty;
private System.Windows.Forms.TextBox txtExtCode;
private System.Windows.Forms.Label label4;
@@ -1678,5 +1683,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
private System.Windows.Forms.DataGridViewLinkColumn col_edit;
private System.Windows.Forms.DataGridViewLinkColumn col_delete;
private System.Windows.Forms.DataGridViewLinkColumn col_select_product;
private System.Windows.Forms.Label label16;
}
}
@@ -491,6 +491,36 @@ namespace TemuKJD.PDDForms.ProductSelectForms
break;
case "":
dgvDbProduct.Rows[e.RowIndex].Cells["colSelect"].Value = !(bool)dgvDbProduct.Rows[e.RowIndex].Cells["colSelect"].Value;
rowIndex1 = rowIndex2;
rowIndex2 = e.RowIndex;
if (IsShiftDown)
{
if (rowIndex1 > -1 && rowIndex2 > -1)
{
try
{
if (rowIndex1 > rowIndex2)
{
for (int i = rowIndex2; i <= rowIndex1; i++)
{
dgvDbProduct.Rows[i].Cells["colSelect"].Value = dgvDbProduct.Rows[rowIndex1].Cells["colSelect"].Value;
}
}
else
{
for (int i = rowIndex1; i <= rowIndex2; i++)
{
dgvDbProduct.Rows[i].Cells["colSelect"].Value = dgvDbProduct.Rows[rowIndex1].Cells["colSelect"].Value;
}
}
}
catch
{
}
//rowIndex1 = -1;
//rowIndex2 = -1;
}
}
break;
default:
break;
@@ -1642,5 +1672,36 @@ namespace TemuKJD.PDDForms.ProductSelectForms
}));
});
}
int rowIndex1 = -1;
int rowIndex2 = -1;
bool IsShiftDown = false;
private void PDDDBProdListForm_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Shift:
case Keys.ShiftKey:
case Keys.LShiftKey:
case Keys.RShiftKey:
IsShiftDown = true;
break;
}
}
private void PDDDBProdListForm_KeyUp(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Shift:
case Keys.ShiftKey:
case Keys.LShiftKey:
case Keys.RShiftKey:
IsShiftDown = false;
rowIndex1 = -1;
rowIndex2 = -1;
break;
}
}
}
}
+123
View File
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>
+88 -49
View File
@@ -29,10 +29,13 @@ namespace TemuKJD.WXForms.AdminForms
/// </summary>
private void InitializeComponent()
{
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.components = new System.ComponentModel.Container();
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();
this.splitContainer5 = new System.Windows.Forms.SplitContainer();
this.label7 = new System.Windows.Forms.Label();
this.chkWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.cmbSaLevel = new System.Windows.Forms.ComboBox();
this.label6 = new System.Windows.Forms.Label();
this.lblWatermark = new System.Windows.Forms.Label();
@@ -74,6 +77,7 @@ namespace TemuKJD.WXForms.AdminForms
this.shopCountColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSaLevel = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSaLevelName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colAuthority = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.editColumn = new System.Windows.Forms.DataGridViewLinkColumn();
this.deleteColumn = new System.Windows.Forms.DataGridViewLinkColumn();
((System.ComponentModel.ISupportInitialize)(this.splitContainer5)).BeginInit();
@@ -96,6 +100,9 @@ namespace TemuKJD.WXForms.AdminForms
//
// splitContainer5.Panel1
//
this.splitContainer5.Panel1.BackColor = System.Drawing.Color.WhiteSmoke;
this.splitContainer5.Panel1.Controls.Add(this.label7);
this.splitContainer5.Panel1.Controls.Add(this.chkWXComplateProd);
this.splitContainer5.Panel1.Controls.Add(this.cmbSaLevel);
this.splitContainer5.Panel1.Controls.Add(this.label6);
this.splitContainer5.Panel1.Controls.Add(this.lblWatermark);
@@ -131,11 +138,30 @@ namespace TemuKJD.WXForms.AdminForms
//
this.splitContainer5.Panel2.Controls.Add(this.splitContainer1);
this.splitContainer5.Panel2.Padding = new System.Windows.Forms.Padding(0, 5, 5, 5);
this.splitContainer5.Size = new System.Drawing.Size(800, 527);
this.splitContainer5.Size = new System.Drawing.Size(1376, 527);
this.splitContainer5.SplitterDistance = 357;
this.splitContainer5.SplitterWidth = 1;
this.splitContainer5.TabIndex = 3;
//
// label7
//
this.label7.AutoSize = true;
this.label7.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label7.Location = new System.Drawing.Point(55, 395);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(51, 20);
this.label7.TabIndex = 809;
this.label7.Text = "权限:";
//
// chkWXComplateProd
//
this.chkWXComplateProd.Location = new System.Drawing.Point(112, 395);
this.chkWXComplateProd.Name = "chkWXComplateProd";
this.chkWXComplateProd.Size = new System.Drawing.Size(87, 21);
this.chkWXComplateProd.TabIndex = 808;
this.chkWXComplateProd.Text = "微信回采";
this.chkWXComplateProd.UseVisualStyleBackColor = true;
//
// cmbSaLevel
//
this.cmbSaLevel.FormattingEnabled = true;
@@ -143,7 +169,7 @@ namespace TemuKJD.WXForms.AdminForms
"普通用户",
"一级超管",
"二级超管"});
this.cmbSaLevel.Location = new System.Drawing.Point(112, 388);
this.cmbSaLevel.Location = new System.Drawing.Point(112, 356);
this.cmbSaLevel.Name = "cmbSaLevel";
this.cmbSaLevel.Size = new System.Drawing.Size(148, 25);
this.cmbSaLevel.TabIndex = 48;
@@ -153,7 +179,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label6.AutoSize = true;
this.label6.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label6.Location = new System.Drawing.Point(27, 390);
this.label6.Location = new System.Drawing.Point(27, 358);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(79, 20);
this.label6.TabIndex = 47;
@@ -217,7 +243,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label3.Location = new System.Drawing.Point(55, 348);
this.label3.Location = new System.Drawing.Point(55, 320);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(51, 20);
this.label3.TabIndex = 40;
@@ -225,7 +251,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtCompany
//
this.txtCompany.Location = new System.Drawing.Point(112, 347);
this.txtCompany.Location = new System.Drawing.Point(112, 319);
this.txtCompany.Name = "txtCompany";
this.txtCompany.Size = new System.Drawing.Size(148, 23);
this.txtCompany.TabIndex = 39;
@@ -274,7 +300,7 @@ namespace TemuKJD.WXForms.AdminForms
this.btnCancel.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnCancel.ForeColor = System.Drawing.Color.White;
this.btnCancel.Location = new System.Drawing.Point(59, 431);
this.btnCancel.Location = new System.Drawing.Point(59, 430);
this.btnCancel.Name = "btnCancel";
this.btnCancel.Size = new System.Drawing.Size(86, 25);
this.btnCancel.TabIndex = 35;
@@ -290,7 +316,7 @@ namespace TemuKJD.WXForms.AdminForms
this.btnOpUser.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnOpUser.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnOpUser.ForeColor = System.Drawing.Color.White;
this.btnOpUser.Location = new System.Drawing.Point(174, 431);
this.btnOpUser.Location = new System.Drawing.Point(174, 430);
this.btnOpUser.Name = "btnOpUser";
this.btnOpUser.Size = new System.Drawing.Size(86, 25);
this.btnOpUser.TabIndex = 34;
@@ -302,7 +328,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label30.AutoSize = true;
this.label30.ForeColor = System.Drawing.SystemColors.ButtonShadow;
this.label30.Location = new System.Drawing.Point(282, 180);
this.label30.Location = new System.Drawing.Point(282, 172);
this.label30.Name = "label30";
this.label30.Size = new System.Drawing.Size(56, 17);
this.label30.TabIndex = 33;
@@ -312,7 +338,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label31.AutoSize = true;
this.label31.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label31.Location = new System.Drawing.Point(266, 264);
this.label31.Location = new System.Drawing.Point(266, 246);
this.label31.Name = "label31";
this.label31.Size = new System.Drawing.Size(13, 17);
this.label31.TabIndex = 32;
@@ -320,7 +346,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtRePass
//
this.txtRePass.Location = new System.Drawing.Point(112, 261);
this.txtRePass.Location = new System.Drawing.Point(112, 243);
this.txtRePass.Name = "txtRePass";
this.txtRePass.PasswordChar = '*';
this.txtRePass.Size = new System.Drawing.Size(148, 23);
@@ -330,7 +356,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label32.AutoSize = true;
this.label32.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label32.Location = new System.Drawing.Point(27, 262);
this.label32.Location = new System.Drawing.Point(27, 244);
this.label32.Name = "label32";
this.label32.Size = new System.Drawing.Size(79, 20);
this.label32.TabIndex = 31;
@@ -340,7 +366,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label33.AutoSize = true;
this.label33.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label33.Location = new System.Drawing.Point(266, 306);
this.label33.Location = new System.Drawing.Point(266, 284);
this.label33.Name = "label33";
this.label33.Size = new System.Drawing.Size(13, 17);
this.label33.TabIndex = 30;
@@ -350,7 +376,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label34.AutoSize = true;
this.label34.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label34.Location = new System.Drawing.Point(266, 222);
this.label34.Location = new System.Drawing.Point(266, 209);
this.label34.Name = "label34";
this.label34.Size = new System.Drawing.Size(13, 17);
this.label34.TabIndex = 29;
@@ -360,7 +386,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label35.AutoSize = true;
this.label35.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label35.Location = new System.Drawing.Point(266, 180);
this.label35.Location = new System.Drawing.Point(266, 172);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(13, 17);
this.label35.TabIndex = 28;
@@ -370,7 +396,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label36.AutoSize = true;
this.label36.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label36.Location = new System.Drawing.Point(266, 138);
this.label36.Location = new System.Drawing.Point(266, 135);
this.label36.Name = "label36";
this.label36.Size = new System.Drawing.Size(13, 17);
this.label36.TabIndex = 27;
@@ -385,7 +411,7 @@ namespace TemuKJD.WXForms.AdminForms
"上货",
"数据",
"登录"});
this.cmbGroup.Location = new System.Drawing.Point(112, 303);
this.cmbGroup.Location = new System.Drawing.Point(112, 280);
this.cmbGroup.Name = "cmbGroup";
this.cmbGroup.Size = new System.Drawing.Size(148, 25);
this.cmbGroup.TabIndex = 26;
@@ -395,7 +421,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label37.AutoSize = true;
this.label37.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label37.Location = new System.Drawing.Point(55, 304);
this.label37.Location = new System.Drawing.Point(55, 282);
this.label37.Name = "label37";
this.label37.Size = new System.Drawing.Size(51, 20);
this.label37.TabIndex = 25;
@@ -403,7 +429,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtPassword
//
this.txtPassword.Location = new System.Drawing.Point(112, 219);
this.txtPassword.Location = new System.Drawing.Point(112, 206);
this.txtPassword.Name = "txtPassword";
this.txtPassword.PasswordChar = '*';
this.txtPassword.Size = new System.Drawing.Size(148, 23);
@@ -413,7 +439,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label38.AutoSize = true;
this.label38.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label38.Location = new System.Drawing.Point(55, 220);
this.label38.Location = new System.Drawing.Point(55, 207);
this.label38.Name = "label38";
this.label38.Size = new System.Drawing.Size(51, 20);
this.label38.TabIndex = 22;
@@ -421,7 +447,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtMobile
//
this.txtMobile.Location = new System.Drawing.Point(112, 177);
this.txtMobile.Location = new System.Drawing.Point(112, 169);
this.txtMobile.Name = "txtMobile";
this.txtMobile.Size = new System.Drawing.Size(148, 23);
this.txtMobile.TabIndex = 21;
@@ -430,7 +456,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label39.AutoSize = true;
this.label39.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label39.Location = new System.Drawing.Point(41, 178);
this.label39.Location = new System.Drawing.Point(41, 170);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(65, 20);
this.label39.TabIndex = 20;
@@ -438,7 +464,7 @@ namespace TemuKJD.WXForms.AdminForms
//
// txtNickName
//
this.txtNickName.Location = new System.Drawing.Point(112, 135);
this.txtNickName.Location = new System.Drawing.Point(112, 132);
this.txtNickName.Name = "txtNickName";
this.txtNickName.Size = new System.Drawing.Size(148, 23);
this.txtNickName.TabIndex = 19;
@@ -447,7 +473,7 @@ namespace TemuKJD.WXForms.AdminForms
//
this.label40.AutoSize = true;
this.label40.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label40.Location = new System.Drawing.Point(55, 136);
this.label40.Location = new System.Drawing.Point(55, 133);
this.label40.Name = "label40";
this.label40.Size = new System.Drawing.Size(51, 20);
this.label40.TabIndex = 18;
@@ -464,7 +490,7 @@ namespace TemuKJD.WXForms.AdminForms
// splitContainer1.Panel1
//
this.splitContainer1.Panel1.Controls.Add(this.dgvUser);
this.splitContainer1.Size = new System.Drawing.Size(437, 517);
this.splitContainer1.Size = new System.Drawing.Size(1013, 517);
this.splitContainer1.SplitterDistance = 486;
this.splitContainer1.TabIndex = 2;
//
@@ -472,19 +498,20 @@ namespace TemuKJD.WXForms.AdminForms
//
this.dgvUser.AllowUserToAddRows = false;
this.dgvUser.AllowUserToDeleteRows = false;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));
this.dgvUser.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));
this.dgvUser.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle4;
this.dgvUser.AutoRowNumber = true;
this.dgvUser.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
this.dgvUser.BackgroundColor = System.Drawing.Color.White;
this.dgvUser.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.dgvUser.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle5.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvUser.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
this.dgvUser.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvUser.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.UserIdColumn,
@@ -496,23 +523,24 @@ namespace TemuKJD.WXForms.AdminForms
this.shopCountColumn,
this.colSaLevel,
this.colSaLevelName,
this.colAuthority,
this.editColumn,
this.deleteColumn});
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Window;
dataGridViewCellStyle3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvUser.DefaultCellStyle = dataGridViewCellStyle3;
dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window;
dataGridViewCellStyle6.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvUser.DefaultCellStyle = dataGridViewCellStyle6;
this.dgvUser.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvUser.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(208)))), ((int)(((byte)(215)))), ((int)(((byte)(229)))));
this.dgvUser.Location = new System.Drawing.Point(0, 0);
this.dgvUser.Name = "dgvUser";
this.dgvUser.ReadOnly = true;
this.dgvUser.RowTemplate.Height = 23;
this.dgvUser.Size = new System.Drawing.Size(437, 486);
this.dgvUser.Size = new System.Drawing.Size(1013, 486);
this.dgvUser.TabIndex = 1;
this.dgvUser.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvUser_CellContentClick);
//
@@ -574,8 +602,15 @@ namespace TemuKJD.WXForms.AdminForms
this.colSaLevelName.Name = "colSaLevelName";
this.colSaLevelName.ReadOnly = true;
//
// colAuthority
//
this.colAuthority.HeaderText = "功能权限";
this.colAuthority.Name = "colAuthority";
this.colAuthority.ReadOnly = true;
//
// editColumn
//
this.editColumn.FillWeight = 50F;
this.editColumn.HeaderText = "编辑";
this.editColumn.Name = "editColumn";
this.editColumn.ReadOnly = true;
@@ -584,17 +619,18 @@ namespace TemuKJD.WXForms.AdminForms
//
// deleteColumn
//
this.deleteColumn.FillWeight = 50F;
this.deleteColumn.HeaderText = "删除";
this.deleteColumn.Name = "deleteColumn";
this.deleteColumn.ReadOnly = true;
//
// AdminAccountForm
// WXAdminAccountForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(800, 527);
this.ClientSize = new System.Drawing.Size(1376, 527);
this.Controls.Add(this.splitContainer5);
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Name = "AdminAccountForm";
this.Name = "WXAdminAccountForm";
this.Text = "AccountForm";
this.Load += new System.EventHandler(this.MainAccountForm_Load);
this.VisibleChanged += new System.EventHandler(this.MainAccountForm_VisibleChanged);
@@ -646,6 +682,8 @@ namespace TemuKJD.WXForms.AdminForms
private System.Windows.Forms.Label lblWatermark;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.ComboBox cmbSaLevel;
private System.Windows.Forms.Label label7;
private UserComponent.UcCheckBox chkWXComplateProd;
private System.Windows.Forms.DataGridViewTextBoxColumn UserIdColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn UserNickNameColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn mobileColumn;
@@ -655,6 +693,7 @@ namespace TemuKJD.WXForms.AdminForms
private System.Windows.Forms.DataGridViewTextBoxColumn shopCountColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevel;
private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevelName;
private System.Windows.Forms.DataGridViewTextBoxColumn colAuthority;
private System.Windows.Forms.DataGridViewLinkColumn editColumn;
private System.Windows.Forms.DataGridViewLinkColumn deleteColumn;
}
@@ -1,5 +1,6 @@
using AllBase;
using AllBase.Model.Result;
using NaiBa.Util.Extension;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -73,6 +74,12 @@ namespace TemuKJD.WXForms.AdminForms
data.Append("&sa_level=2");
else
data.Append("&sa_level=0");
string authority = "";
if (chkWXComplateProd.Checked)
authority += "微信回采";
//if (!string.IsNullOrEmpty(authority))
data.Append("&authority=" + authority);
string url = BaseClass.BuildObjString("user/add_user");
if (btnOpUser.Text != "添加用户" && !string.IsNullOrEmpty(Uid))
{
@@ -135,6 +142,7 @@ namespace TemuKJD.WXForms.AdminForms
user.shop_count = BaseRegex.GetIntJson(ref oStr, "shop_count");
user.company_name = BaseRegex.GetStringJson(ref oStr, "company_name");
user.sa_level = BaseRegex.GetIntJson(ref oStr, "sa_level");
user.authority = BaseRegex.GetStringJson(ref oStr, "authority");
AllUsers.Add(user);
dgvUser.Rows.Add(
@@ -147,6 +155,7 @@ namespace TemuKJD.WXForms.AdminForms
user.shop_count,
user.sa_level,
user.sa_level_name,
user.authority,
"编辑",
"删除");
}
@@ -170,6 +179,7 @@ namespace TemuKJD.WXForms.AdminForms
txtCompany.Clear();
cmbGroup.Text = "主账户";
cmbSaLevel.Text = "普通用户";
chkWXComplateProd.Checked = false;
}
private void btnRefresh_Click(object sender, EventArgs e)
@@ -188,6 +198,7 @@ namespace TemuKJD.WXForms.AdminForms
string groupName = dgvUser.Rows[e.RowIndex].Cells["groupNameColumn"].Value.ToString();
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();
if (columname == "编辑")
{
Uid = uid;
@@ -200,6 +211,7 @@ namespace TemuKJD.WXForms.AdminForms
btnOpUser.Text = "保存用户";
btnCancel.Visible = true;
cmbSaLevel.Text = saLevelName;
chkWXComplateProd.Checked = authority.Contains(chkWXComplateProd.Text);
}
if (columname == "删除")
{
@@ -144,6 +144,9 @@
<metadata name="colSaLevelName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colAuthority.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="editColumn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
@@ -100,7 +100,8 @@ namespace TemuKJD.WXForms.AdminForms
Task.Run(() =>
{
int pageCount;
var list = AdminGetServerShopLst(out pageCount, page);
decimal seconds = 0;
var list = AdminGetServerShopLst(out pageCount, out seconds, page);
lstAdminShopInfo.AddRange(list);
this.ucSplitPage1.TotalPage = pageCount;
@@ -146,6 +147,10 @@ namespace TemuKJD.WXForms.AdminForms
Invoke(new Action(() =>
{
this.pbLoading.Visible = false;
this.statusBar.lblTaskStatus.Text = "店铺查询完毕";
#if DEBUG
this.statusBar.lblTaskStatus.Text += ",耗时:" + seconds;
#endif
}));
});
}
@@ -386,10 +391,11 @@ namespace TemuKJD.WXForms.AdminForms
return shopNameList;
}
public List<ShopLoginInfo> AdminGetServerShopLst(out int pageCount, int page = 1, int pageSize = 50)
public List<ShopLoginInfo> AdminGetServerShopLst(out int pageCount, out decimal seconds, int page = 1, int pageSize = 50)
{
List<ShopLoginInfo> list = new List<ShopLoginInfo>();
pageCount = 1;
seconds = 0;
var url = BaseClass.BuildObjString("shop/admin_get_shop_list");
var data = UserLogin.GetSignaturex() +
@@ -416,6 +422,7 @@ namespace TemuKJD.WXForms.AdminForms
int count = BaseRegex.GetIntJson(ref html, "count");
pageCount = Math.Ceiling(1.0 * count / pageSize).ParseToInt();
pageCount = Math.Max(pageCount, 1);
seconds = BaseRegex.GetDecimalJson(ref html, "seconds");
return ShopBLL.DeserializationShop(html);
}
@@ -379,8 +379,8 @@ namespace TemuKJD.WXForms.AdminForms
private void ShopObj_OnInfoReceived(string information)
{
//BaseMsgForm.ShowInfo(information);
if (!string.IsNullOrEmpty(information))
cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync("alert('" + information + "');");
//if (!string.IsNullOrEmpty(information))
// cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync("alert('" + information + "');");
}
private void CefWebBrowser_LoadError(object sender, CefSharp.LoadErrorEventArgs e)
@@ -399,12 +399,13 @@ namespace TemuKJD.WXForms.AdminForms
private void CefWebBrowser_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e)
{
//js绑定C#对象 html页面内声明绑定的C#对象
// js绑定C#对象 html页面内声明绑定的C#对象
// 新版cef需要在页面加载后动态绑定
StringBuilder sb = new StringBuilder();
sb.Append("(function(){");
sb.Append("CefSharp.BindObjectAsync('shopObj');");
sb.Append("})();");
//cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
}
//public Func<object, string, string, request, bool> BeforeResourceLoadEvent; // sender, requestUrl, postData, request, true(表示取消执行)
@@ -456,6 +457,58 @@ namespace TemuKJD.WXForms.AdminForms
this.lstShopCompany.Add(sc);
});
}
if (currentUrl.StartsWith("https://store.weixin.qq.com/shop/goods/list"))
{
//Task.Run(() => {
string sAddInputJs = @"
document.addEventListener('wheel', function(event) {
// 检查滚动方向
//if (event.deltaY < 0) {
// console.log('向上滚动');
//} else {
// console.log('向下滚动');
//}
// 或者使用 event.deltaX 来检查水平滚动
//if (event.deltaX < 0) {
// console.log('向左滚动');
//} else if (event.deltaX > 0) {
// console.log('向右滚动');
//}
// 阻止默认的滚动行为(如果有需要)
//event.preventDefault();
addGetProdButton();
});
addGetProdButton();
function addGetProdButton() {
const element = document.getElementsByName('goods')[0];
const shadowRoot = element.shadowRoot;
var productLst = shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
for ( i= 0; i < productLst.length; i++) {
var addBtnItem = productLst[i]; //.parentElement.parentElement.parentElement;
var pos = addBtnItem.innerHTML.indexOf('ID:')
if (addBtnItem.innerHTML.indexOf('回采') < 0 && pos >= 0) {
var sSpuId = addBtnItem.innerHTML.substring(pos + 3);
sSpuId = sSpuId.substring(0, sSpuId.indexOf('<span')).trim();
//addBtnItem.innerHTML += ""<input type=\""button\"" style=\""display:inline; width:60px; margin-left:10px; margin-top:0px; cursor:pointer; border:1px solid\"" value =\""回采商品\"" onclick=\""shopObj.getProduct('"" + sSpuId + ""','" + this.shop.ShopId + @"')\"">""
//addBtnItem.innerHTML += ""<input type=\""button\"" style=\""display:inline; width:60px; margin-left:10px; margin-top:0px; cursor:pointer; border:1px solid\"" value =\""回采商品\"" onclick=\""alert('"" + sSpuId + ""')\"">""
//addBtnItem.innerHTML = addBtnItem.innerHTML.replace(""分享 </a></div>"", ""分享 </a></div><input type=\""button\"" style=\""display:inline; width:60px; margin-left:10px; margin-top:0px; cursor:pointer; border:1px solid\"" value =\""回采商品\"" onclick=\""shopObj.getProduct('"" + sSpuId + ""','" + this.shop.ShopId + @"')\"">"");
var newDiv = document.createElement(""div"");
newDiv.innerHTML = ""<a style=\""display:inline; padding:2px 5px; cursor:pointer; border:1px solid\"" onclick=\""shopObj.getProduct('"" + sSpuId + ""','" + this.shop.ShopId + @"')\"">回采<\a>"";
addBtnItem.lastChild.appendChild(newDiv);
}
}
}";
cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sAddInputJs);
//});
//const element = document.getElementsByName('goods')[0]
//const shadowRoot = element.shadowRoot;
//shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
}
}
/// <summary>
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,228 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="colSelect.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colShopLoginName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colShopId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colShopNotes.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSelectProduct.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colLoginStatus.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colApi.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colCanUse.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colUploadCount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOnSaleNum.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colRemaining.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colMessage.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colCheck.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSelectId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSupplierId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSupplierName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colLogin.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colInShop.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSpuId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colDraftId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colImgUrl.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colProductSkcPic.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSkuFakeImgUrl.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSkuFakeImg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colProductName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colProductCat.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colExtCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colPrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSoldNum.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colMsg.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>
<metadata name="colUserNotes.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="ColDelete.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colAddTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colCouponNum.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colOpResult.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+89 -62
View File
@@ -41,6 +41,7 @@ namespace TemuKJD.WXForms.ProductForms
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
this.chkUseWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkSaveBound = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkAiShortTitle = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.label6 = new System.Windows.Forms.Label();
@@ -88,17 +89,16 @@ namespace TemuKJD.WXForms.ProductForms
this.label9 = new System.Windows.Forms.Label();
this.chkStepAddPrice = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
this.chkWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.txtAddCount = new System.Windows.Forms.TextBox();
this.txtSearchGoodsName = new System.Windows.Forms.TextBox();
this.label20 = new System.Windows.Forms.Label();
this.pbSelectProd = new System.Windows.Forms.PictureBox();
this.txtExtCodeFilter = new System.Windows.Forms.TextBox();
this.cmbCateFilter3 = new System.Windows.Forms.ComboBox();
this.label21 = new System.Windows.Forms.Label();
this.cmbGroupFilter = new System.Windows.Forms.ComboBox();
this.txtIdFilter = new System.Windows.Forms.TextBox();
this.cmbJstInitSet = new System.Windows.Forms.ComboBox();
this.lblExtCodeFilter = new System.Windows.Forms.Label();
this.lblGroupFilter = new System.Windows.Forms.Label();
this.lblIdFilter = new System.Windows.Forms.Label();
this.cmbCateFilter2 = new System.Windows.Forms.ComboBox();
@@ -134,7 +134,9 @@ namespace TemuKJD.WXForms.ProductForms
this.splitContainer3 = new System.Windows.Forms.SplitContainer();
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
this.btnRefreshNum = new DevComponents.DotNetBar.PanelEx();
this.txtExtCodeFilter = new System.Windows.Forms.TextBox();
this.pbLoadingShop = new System.Windows.Forms.PictureBox();
this.lblExtCodeFilter = new System.Windows.Forms.Label();
this.dgvShop = new TemuKJD.UserComponent.DataGridViewEx();
this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.colShopLoginName = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -240,6 +242,7 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
this.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
this.ucGroupBoxEx2.Controls.Add(this.chkUseWXComplateProd);
this.ucGroupBoxEx2.Controls.Add(this.chkSaveBound);
this.ucGroupBoxEx2.Controls.Add(this.chkAiShortTitle);
this.ucGroupBoxEx2.Controls.Add(this.label6);
@@ -289,10 +292,21 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx2.TabStop = false;
this.ucGroupBoxEx2.Text = "商品上传";
//
// chkUseWXComplateProd
//
this.chkUseWXComplateProd.Location = new System.Drawing.Point(727, 42);
this.chkUseWXComplateProd.Name = "chkUseWXComplateProd";
this.chkUseWXComplateProd.Size = new System.Drawing.Size(87, 21);
this.chkUseWXComplateProd.TabIndex = 876;
this.chkUseWXComplateProd.Text = "使用回采数据";
this.chkUseWXComplateProd.UseVisualStyleBackColor = true;
this.chkUseWXComplateProd.Visible = false;
this.chkUseWXComplateProd.CheckedChanged += new System.EventHandler(this.chkUseWXComplateProd_CheckedChanged);
//
// chkSaveBound
//
this.chkSaveBound.AutoSize = true;
this.chkSaveBound.Location = new System.Drawing.Point(806, 136);
this.chkSaveBound.Location = new System.Drawing.Point(791, 136);
this.chkSaveBound.Name = "chkSaveBound";
this.chkSaveBound.Size = new System.Drawing.Size(111, 21);
this.chkSaveBound.TabIndex = 863;
@@ -306,11 +320,11 @@ namespace TemuKJD.WXForms.ProductForms
this.chkAiShortTitle.AutoSize = true;
this.chkAiShortTitle.Checked = true;
this.chkAiShortTitle.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkAiShortTitle.Location = new System.Drawing.Point(653, 42);
this.chkAiShortTitle.Location = new System.Drawing.Point(638, 42);
this.chkAiShortTitle.Name = "chkAiShortTitle";
this.chkAiShortTitle.Size = new System.Drawing.Size(147, 21);
this.chkAiShortTitle.Size = new System.Drawing.Size(87, 21);
this.chkAiShortTitle.TabIndex = 862;
this.chkAiShortTitle.Text = "AI短标题加入商品标题";
this.chkAiShortTitle.Text = "AI优化标题";
this.chkAiShortTitle.UseVisualStyleBackColor = true;
this.chkAiShortTitle.CheckedChanged += new System.EventHandler(this.chkAiShotTitle_CheckedChanged);
//
@@ -341,7 +355,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkHighestPriceSku.AutoSize = true;
this.chkHighestPriceSku.Checked = true;
this.chkHighestPriceSku.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkHighestPriceSku.Location = new System.Drawing.Point(582, 16);
this.chkHighestPriceSku.Location = new System.Drawing.Point(567, 16);
this.chkHighestPriceSku.Name = "chkHighestPriceSku";
this.chkHighestPriceSku.Size = new System.Drawing.Size(119, 21);
this.chkHighestPriceSku.TabIndex = 739;
@@ -352,7 +366,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtFilterBoundMax
//
this.txtFilterBoundMax.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtFilterBoundMax.Location = new System.Drawing.Point(648, 134);
this.txtFilterBoundMax.Location = new System.Drawing.Point(633, 134);
this.txtFilterBoundMax.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtFilterBoundMax.Name = "txtFilterBoundMax";
this.txtFilterBoundMax.Size = new System.Drawing.Size(49, 25);
@@ -363,7 +377,7 @@ namespace TemuKJD.WXForms.ProductForms
// label23
//
this.label23.AutoSize = true;
this.label23.Location = new System.Drawing.Point(621, 138);
this.label23.Location = new System.Drawing.Point(606, 138);
this.label23.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label23.Name = "label23";
this.label23.Size = new System.Drawing.Size(32, 17);
@@ -373,7 +387,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtFilterBoundMin
//
this.txtFilterBoundMin.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtFilterBoundMin.Location = new System.Drawing.Point(571, 134);
this.txtFilterBoundMin.Location = new System.Drawing.Point(556, 134);
this.txtFilterBoundMin.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtFilterBoundMin.Name = "txtFilterBoundMin";
this.txtFilterBoundMin.Size = new System.Drawing.Size(49, 25);
@@ -384,7 +398,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtTitleHeadWord
//
this.txtTitleHeadWord.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtTitleHeadWord.Location = new System.Drawing.Point(514, 40);
this.txtTitleHeadWord.Location = new System.Drawing.Point(499, 40);
this.txtTitleHeadWord.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtTitleHeadWord.MaxLength = 15;
this.txtTitleHeadWord.Name = "txtTitleHeadWord";
@@ -398,7 +412,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnFilterBound.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnFilterBound.DisabledBackColor = System.Drawing.Color.Empty;
this.btnFilterBound.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnFilterBound.Location = new System.Drawing.Point(742, 135);
this.btnFilterBound.Location = new System.Drawing.Point(727, 135);
this.btnFilterBound.Name = "btnFilterBound";
this.btnFilterBound.Size = new System.Drawing.Size(58, 23);
this.btnFilterBound.Style.Alignment = System.Drawing.StringAlignment.Center;
@@ -423,7 +437,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkSameSpecPrice.AutoSize = true;
this.chkSameSpecPrice.Checked = true;
this.chkSameSpecPrice.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkSameSpecPrice.Location = new System.Drawing.Point(701, 16);
this.chkSameSpecPrice.Location = new System.Drawing.Point(686, 16);
this.chkSameSpecPrice.Name = "chkSameSpecPrice";
this.chkSameSpecPrice.Size = new System.Drawing.Size(99, 21);
this.chkSameSpecPrice.TabIndex = 745;
@@ -434,7 +448,7 @@ namespace TemuKJD.WXForms.ProductForms
// label22
//
this.label22.AutoSize = true;
this.label22.Location = new System.Drawing.Point(448, 45);
this.label22.Location = new System.Drawing.Point(433, 45);
this.label22.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label22.Name = "label22";
this.label22.Size = new System.Drawing.Size(68, 17);
@@ -444,7 +458,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtShippingPriceTimes
//
this.txtShippingPriceTimes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.txtShippingPriceTimes.Location = new System.Drawing.Point(344, 135);
this.txtShippingPriceTimes.Location = new System.Drawing.Point(329, 135);
this.txtShippingPriceTimes.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtShippingPriceTimes.Name = "txtShippingPriceTimes";
this.txtShippingPriceTimes.Size = new System.Drawing.Size(32, 23);
@@ -454,7 +468,7 @@ namespace TemuKJD.WXForms.ProductForms
// label12
//
this.label12.AutoSize = true;
this.label12.Location = new System.Drawing.Point(697, 138);
this.label12.Location = new System.Drawing.Point(682, 138);
this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(44, 17);
@@ -465,7 +479,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label13.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label13.AutoSize = true;
this.label13.Location = new System.Drawing.Point(307, 138);
this.label13.Location = new System.Drawing.Point(292, 138);
this.label13.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(41, 17);
@@ -475,7 +489,7 @@ namespace TemuKJD.WXForms.ProductForms
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(448, 138);
this.label1.Location = new System.Drawing.Point(433, 138);
this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(128, 17);
@@ -485,7 +499,7 @@ namespace TemuKJD.WXForms.ProductForms
// label18
//
this.label18.AutoSize = true;
this.label18.Location = new System.Drawing.Point(811, 112);
this.label18.Location = new System.Drawing.Point(796, 112);
this.label18.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label18.Name = "label18";
this.label18.Size = new System.Drawing.Size(54, 17);
@@ -494,7 +508,7 @@ namespace TemuKJD.WXForms.ProductForms
//
// txtPreDays
//
this.txtPreDays.Location = new System.Drawing.Point(778, 109);
this.txtPreDays.Location = new System.Drawing.Point(763, 109);
this.txtPreDays.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtPreDays.Name = "txtPreDays";
this.txtPreDays.Size = new System.Drawing.Size(33, 23);
@@ -505,7 +519,7 @@ namespace TemuKJD.WXForms.ProductForms
// chkPreSale
//
this.chkPreSale.AutoSize = true;
this.chkPreSale.Location = new System.Drawing.Point(686, 110);
this.chkPreSale.Location = new System.Drawing.Point(671, 110);
this.chkPreSale.Name = "chkPreSale";
this.chkPreSale.Size = new System.Drawing.Size(99, 21);
this.chkPreSale.TabIndex = 789;
@@ -518,7 +532,7 @@ namespace TemuKJD.WXForms.ProductForms
this.chkSkipUploaded.AutoSize = true;
this.chkSkipUploaded.Checked = true;
this.chkSkipUploaded.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkSkipUploaded.Location = new System.Drawing.Point(451, 110);
this.chkSkipUploaded.Location = new System.Drawing.Point(436, 110);
this.chkSkipUploaded.Name = "chkSkipUploaded";
this.chkSkipUploaded.Size = new System.Drawing.Size(135, 21);
this.chkSkipUploaded.TabIndex = 755;
@@ -529,7 +543,7 @@ namespace TemuKJD.WXForms.ProductForms
// label5
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(539, 18);
this.label5.Location = new System.Drawing.Point(524, 18);
this.label5.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(40, 17);
@@ -538,7 +552,7 @@ namespace TemuKJD.WXForms.ProductForms
//
// txtMinPrice
//
this.txtMinPrice.Location = new System.Drawing.Point(514, 15);
this.txtMinPrice.Location = new System.Drawing.Point(499, 15);
this.txtMinPrice.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtMinPrice.Name = "txtMinPrice";
this.txtMinPrice.Size = new System.Drawing.Size(25, 23);
@@ -549,7 +563,7 @@ namespace TemuKJD.WXForms.ProductForms
// label8
//
this.label8.AutoSize = true;
this.label8.Location = new System.Drawing.Point(448, 18);
this.label8.Location = new System.Drawing.Point(433, 18);
this.label8.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(68, 17);
@@ -560,7 +574,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.txtReplaceText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtReplaceText.Location = new System.Drawing.Point(514, 67);
this.txtReplaceText.Location = new System.Drawing.Point(499, 67);
this.txtReplaceText.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.txtReplaceText.Multiline = true;
this.txtReplaceText.Name = "txtReplaceText";
@@ -572,7 +586,7 @@ namespace TemuKJD.WXForms.ProductForms
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(448, 72);
this.label3.Location = new System.Drawing.Point(433, 72);
this.label3.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(68, 17);
@@ -582,7 +596,7 @@ namespace TemuKJD.WXForms.ProductForms
// chkUpDraft
//
this.chkUpDraft.AutoSize = true;
this.chkUpDraft.Location = new System.Drawing.Point(586, 110);
this.chkUpDraft.Location = new System.Drawing.Point(571, 110);
this.chkUpDraft.Name = "chkUpDraft";
this.chkUpDraft.Size = new System.Drawing.Size(99, 21);
this.chkUpDraft.TabIndex = 769;
@@ -631,11 +645,11 @@ namespace TemuKJD.WXForms.ProductForms
//
this.chkAddMorePriceFirst.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.chkAddMorePriceFirst.AutoSize = true;
this.chkAddMorePriceFirst.Location = new System.Drawing.Point(201, 136);
this.chkAddMorePriceFirst.Location = new System.Drawing.Point(199, 136);
this.chkAddMorePriceFirst.Name = "chkAddMorePriceFirst";
this.chkAddMorePriceFirst.Size = new System.Drawing.Size(111, 21);
this.chkAddMorePriceFirst.Size = new System.Drawing.Size(99, 21);
this.chkAddMorePriceFirst.TabIndex = 625;
this.chkAddMorePriceFirst.Text = "加价时先加再乘";
this.chkAddMorePriceFirst.Text = "加价先加再乘";
this.chkAddMorePriceFirst.UseVisualStyleBackColor = true;
this.chkAddMorePriceFirst.CheckedChanged += new System.EventHandler(this.chkAddMorePriceFirst_CheckedChanged);
//
@@ -696,7 +710,7 @@ namespace TemuKJD.WXForms.ProductForms
this.panel4.Controls.Add(this.panel3);
this.panel4.Location = new System.Drawing.Point(76, 17);
this.panel4.Name = "panel4";
this.panel4.Size = new System.Drawing.Size(366, 114);
this.panel4.Size = new System.Drawing.Size(350, 114);
this.panel4.TabIndex = 577;
//
// panel3
@@ -709,7 +723,7 @@ namespace TemuKJD.WXForms.ProductForms
this.panel3.Controls.Add(this.fPnlPriceRule);
this.panel3.Location = new System.Drawing.Point(1, 1);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(364, 112);
this.panel3.Size = new System.Drawing.Size(348, 112);
this.panel3.TabIndex = 541;
//
// fPnlPriceRule
@@ -872,7 +886,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtStockNum
//
this.txtStockNum.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.txtStockNum.Location = new System.Drawing.Point(410, 135);
this.txtStockNum.Location = new System.Drawing.Point(395, 135);
this.txtStockNum.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtStockNum.Name = "txtStockNum";
this.txtStockNum.Size = new System.Drawing.Size(32, 23);
@@ -884,7 +898,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(379, 138);
this.label4.Location = new System.Drawing.Point(364, 138);
this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(32, 17);
@@ -919,17 +933,16 @@ namespace TemuKJD.WXForms.ProductForms
| System.Windows.Forms.AnchorStyles.Left)));
this.ucGroupBoxEx4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucGroupBoxEx4.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
this.ucGroupBoxEx4.Controls.Add(this.chkWXComplateProd);
this.ucGroupBoxEx4.Controls.Add(this.txtAddCount);
this.ucGroupBoxEx4.Controls.Add(this.txtSearchGoodsName);
this.ucGroupBoxEx4.Controls.Add(this.label20);
this.ucGroupBoxEx4.Controls.Add(this.pbSelectProd);
this.ucGroupBoxEx4.Controls.Add(this.txtExtCodeFilter);
this.ucGroupBoxEx4.Controls.Add(this.cmbCateFilter3);
this.ucGroupBoxEx4.Controls.Add(this.label21);
this.ucGroupBoxEx4.Controls.Add(this.cmbGroupFilter);
this.ucGroupBoxEx4.Controls.Add(this.txtIdFilter);
this.ucGroupBoxEx4.Controls.Add(this.cmbJstInitSet);
this.ucGroupBoxEx4.Controls.Add(this.lblExtCodeFilter);
this.ucGroupBoxEx4.Controls.Add(this.lblGroupFilter);
this.ucGroupBoxEx4.Controls.Add(this.lblIdFilter);
this.ucGroupBoxEx4.Controls.Add(this.cmbCateFilter2);
@@ -955,6 +968,16 @@ namespace TemuKJD.WXForms.ProductForms
this.ucGroupBoxEx4.TabStop = false;
this.ucGroupBoxEx4.Text = "待传商品";
//
// chkWXComplateProd
//
this.chkWXComplateProd.Location = new System.Drawing.Point(180, 103);
this.chkWXComplateProd.Name = "chkWXComplateProd";
this.chkWXComplateProd.Size = new System.Drawing.Size(87, 21);
this.chkWXComplateProd.TabIndex = 807;
this.chkWXComplateProd.Text = "微信回采商品";
this.chkWXComplateProd.UseVisualStyleBackColor = true;
this.chkWXComplateProd.Visible = false;
//
// txtAddCount
//
this.txtAddCount.Font = new System.Drawing.Font("微软雅黑", 10F);
@@ -996,16 +1019,6 @@ namespace TemuKJD.WXForms.ProductForms
this.pbSelectProd.Visible = false;
this.pbSelectProd.Click += new System.EventHandler(this.pbSelectProd_Click);
//
// txtExtCodeFilter
//
this.txtExtCodeFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtExtCodeFilter.Location = new System.Drawing.Point(178, 101);
this.txtExtCodeFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtExtCodeFilter.Name = "txtExtCodeFilter";
this.txtExtCodeFilter.Size = new System.Drawing.Size(92, 25);
this.txtExtCodeFilter.TabIndex = 555;
this.txtExtCodeFilter.Visible = false;
//
// cmbCateFilter3
//
this.cmbCateFilter3.FormattingEnabled = true;
@@ -1037,7 +1050,7 @@ namespace TemuKJD.WXForms.ProductForms
// txtIdFilter
//
this.txtIdFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtIdFilter.Location = new System.Drawing.Point(47, 101);
this.txtIdFilter.Location = new System.Drawing.Point(47, 100);
this.txtIdFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtIdFilter.Name = "txtIdFilter";
this.txtIdFilter.Size = new System.Drawing.Size(92, 25);
@@ -1057,17 +1070,6 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbJstInitSet.TabIndex = 697;
this.cmbJstInitSet.Text = "已设置";
//
// lblExtCodeFilter
//
this.lblExtCodeFilter.AutoSize = true;
this.lblExtCodeFilter.Location = new System.Drawing.Point(147, 105);
this.lblExtCodeFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblExtCodeFilter.Name = "lblExtCodeFilter";
this.lblExtCodeFilter.Size = new System.Drawing.Size(32, 17);
this.lblExtCodeFilter.TabIndex = 560;
this.lblExtCodeFilter.Text = "货号";
this.lblExtCodeFilter.Visible = false;
//
// lblGroupFilter
//
this.lblGroupFilter.AutoSize = true;
@@ -1082,7 +1084,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblIdFilter
//
this.lblIdFilter.AutoSize = true;
this.lblIdFilter.Location = new System.Drawing.Point(27, 105);
this.lblIdFilter.Location = new System.Drawing.Point(27, 104);
this.lblIdFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblIdFilter.Name = "lblIdFilter";
this.lblIdFilter.Size = new System.Drawing.Size(21, 17);
@@ -1304,10 +1306,9 @@ namespace TemuKJD.WXForms.ProductForms
//
// chkSkipQualification
//
this.chkSkipQualification.AutoSize = true;
this.chkSkipQualification.Location = new System.Drawing.Point(14, 133);
this.chkSkipQualification.Name = "chkSkipQualification";
this.chkSkipQualification.Size = new System.Drawing.Size(99, 21);
this.chkSkipQualification.Size = new System.Drawing.Size(87, 21);
this.chkSkipQualification.TabIndex = 806;
this.chkSkipQualification.Text = "跳过资质商品";
this.chkSkipQualification.UseVisualStyleBackColor = true;
@@ -1626,7 +1627,9 @@ namespace TemuKJD.WXForms.ProductForms
// splitContainer2.Panel1
//
this.splitContainer2.Panel1.Controls.Add(this.btnRefreshNum);
this.splitContainer2.Panel1.Controls.Add(this.txtExtCodeFilter);
this.splitContainer2.Panel1.Controls.Add(this.pbLoadingShop);
this.splitContainer2.Panel1.Controls.Add(this.lblExtCodeFilter);
this.splitContainer2.Panel1.Controls.Add(this.dgvShop);
this.splitContainer2.Panel1.Padding = new System.Windows.Forms.Padding(4, 0, 0, 0);
//
@@ -1670,6 +1673,16 @@ namespace TemuKJD.WXForms.ProductForms
this.btnRefreshNum.Visible = false;
this.btnRefreshNum.Click += new System.EventHandler(this.btnRefreshNum_Click);
//
// txtExtCodeFilter
//
this.txtExtCodeFilter.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtExtCodeFilter.Location = new System.Drawing.Point(249, 34);
this.txtExtCodeFilter.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtExtCodeFilter.Name = "txtExtCodeFilter";
this.txtExtCodeFilter.Size = new System.Drawing.Size(92, 25);
this.txtExtCodeFilter.TabIndex = 555;
this.txtExtCodeFilter.Visible = false;
//
// pbLoadingShop
//
this.pbLoadingShop.Anchor = System.Windows.Forms.AnchorStyles.None;
@@ -1682,6 +1695,17 @@ namespace TemuKJD.WXForms.ProductForms
this.pbLoadingShop.TabStop = false;
this.pbLoadingShop.Visible = false;
//
// lblExtCodeFilter
//
this.lblExtCodeFilter.AutoSize = true;
this.lblExtCodeFilter.Location = new System.Drawing.Point(218, 38);
this.lblExtCodeFilter.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblExtCodeFilter.Name = "lblExtCodeFilter";
this.lblExtCodeFilter.Size = new System.Drawing.Size(32, 17);
this.lblExtCodeFilter.TabIndex = 560;
this.lblExtCodeFilter.Text = "货号";
this.lblExtCodeFilter.Visible = false;
//
// dgvShop
//
this.dgvShop.AllowUserToAddRows = false;
@@ -2266,6 +2290,7 @@ namespace TemuKJD.WXForms.ProductForms
((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit();
this.splitContainer3.ResumeLayout(false);
this.splitContainer2.Panel1.ResumeLayout(false);
this.splitContainer2.Panel1.PerformLayout();
this.splitContainer2.Panel2.ResumeLayout(false);
this.splitContainer2.Panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit();
@@ -2428,5 +2453,7 @@ namespace TemuKJD.WXForms.ProductForms
private UserComponent.UcCheckBox chkSaveBound;
private UserComponent.UcCheckBox chkAiShortTitle;
private UserComponent.UcCheckBox chkSkipQualification;
private UserComponent.UcCheckBox chkWXComplateProd;
private UserComponent.UcCheckBox chkUseWXComplateProd;
}
}
File diff suppressed because it is too large. Load diff
+35 -3
View File
@@ -1129,11 +1129,39 @@ namespace TemuKJD.WXForms.ProductForms
}
List<JSTDownProdSkuInfo> downSkuExistLst = JsonHelper.DeserializeJsonToList<JSTDownProdSkuInfo>(JsonHelper.JObjectParse(result)["data"].ParseToString());
// 查询作废库有没有
url = BaseClass.BuildPDDObjString("product/get_product_spu_id_list");
Thread.Sleep(500);
data = UserLogin.GetSignaturex();
data += "&search_secret_spu_ids=" + string.Join(",", extCodeLst.Distinct());
data += "&wx_safe_status=" + "违规商品";
result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200"))
result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200"))
{
var errMsg = BaseRegex.GetStringJson(ref result, "msg");
if (string.IsNullOrEmpty(errMsg))
errMsg = result;
Invoke(new Action(() =>
{
foreach (var row in rowLstTmp)
{
row.Cells["colOpResult"].Value = "查询商品违规错误:" + errMsg;
}
}));
continue;
}
List<KJDDBProduct> downDbProdExistLst = JsonHelper.DeserializeJsonToList<KJDDBProduct>(JsonHelper.JObjectParse(result)["data"].ParseToString());
foreach (var row in rowLstTmp)
{
var extCode = row.Cells["colExtCode"].Value.ParseToString();
var neewDownSkuLst = downSkuExistLst.Where(se => se.secret_spu_id == extCode).ToList();
if (neewDownSkuLst.Count == 0)
// 下架sku
var needDownSkuLst = downSkuExistLst.Where(se => se.secret_spu_id == extCode).ToList();
// 违规商品
var needDownProdLst = downDbProdExistLst.Where(pe => pe.secret_spu_id == extCode).ToList();
if (needDownSkuLst.Count == 0 && needDownProdLst.Count == 0)
{
Invoke(new Action(() =>
{
@@ -1143,6 +1171,10 @@ namespace TemuKJD.WXForms.ProductForms
}
else
{
if (needDownProdLst.Count > 0)
{
}
Invoke(new Action(() =>
{
row.Cells["colOpResult"].Value = "正在检测同步";
@@ -1187,7 +1219,7 @@ namespace TemuKJD.WXForms.ProductForms
var jSkuStr = jSku.ParseToString();
var itemCode = jSku["productSkuInfo"]?["skuCode"].ParseToString();
var needDownSku = downSkuExistLst.FirstOrDefault(se =>se.secret_spu_id == extCode && se.secret_sku_id == itemCode);
if (needDownSku != null)
if (needDownSku != null || needDownProdLst.Count > 0)
{
if (//jSku["productSkuInfo"]["stockInfo"]["stockNum"].ParseToString() != "0" ||
jSku["productSkuInfo"]["stockInfo"]["totalNum"].ParseToString() != "0" ||
@@ -3,7 +3,9 @@ using AllBase.Helper;
using AllBase.Model.Param.PDDProdParam;
using AllBase.Model.Result;
using AllBase.Model.Result.PDDResult;
using AllBase.Model.Result.WXResult;
using NaiBa.Util.Extension;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
@@ -14,8 +16,9 @@ using System.Threading.Tasks;
using System.Windows.Forms;
using TemuKJD.BaseForms;
using TemuKJD.BLL;
using TemuKJD.PDDForms.AdminForms;
using TemuKJD.PDDForms.ProductThirdSelectForms;
using TemuKJD.WXForms.AdminForms;
using TemuKJD.WXForms.ProductForms;
using Work;
namespace TemuKJD.WXForms.ShopForms
@@ -25,5 +28,153 @@ namespace TemuKJD.WXForms.ShopForms
public delegate void InfoReceivedHandler(string information);
public event InfoReceivedHandler OnInfoReceived;
public string getProduct(string sProdId, string supplierId, bool notSaveDb = false)
{
var prodId = sProdId.ParseToLong();
if (prodId <= 0)
{
MainForm.instance.Invoke(new Action(() =>
{
BaseMsgForm.ShowError("商品Id不存在!");
}));
return "failed";
}
//var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
var shop = WXAdminShopListForm.lstAdminShopInfo.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
if (shop == null)
shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
if (string.IsNullOrEmpty(supplierId) || shop == null)
{
MainForm.instance.Invoke(new Action(() =>
{
BaseMsgForm.ShowError("店铺不存在!");
}));
return "failed";
}
Task.Run(() =>
{
var msg = getPDDProductWidthEdit(shop, sProdId);
if (!string.IsNullOrEmpty(msg))
{
if (!msg.StartsWith("success") && !msg.StartsWith("商品回采保存成功"))
{
MainForm.instance.Invoke(new Action(() =>
{
BaseMsgForm.ShowError(msg);
}));
}
else
{
MainForm.instance.Invoke(new Action(() =>
{
BaseMsgForm.ShowInfo(msg);
}));
}
}
});
return "success";
}
public string getPDDProductWidthEdit(ShopLoginInfo shop, string prodId)
{
try
{
Thread.Sleep(Randomx.GetId(10, 50));
string getEditProdRst = "";
try
{
getEditProdRst = WXUpload.getEditProductV2(shop, prodId);
Thread.Sleep(Randomx.GetId(50, 100));
if (getEditProdRst.Contains("biz magic invalid"))
{
WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
}
if (!getEditProdRst.Contains("\"success\":true"))
{
var errmsg = BaseRegex.GetStringJson(ref getEditProdRst, "msg");
if (string.IsNullOrWhiteSpace(errmsg))
errmsg = getEditProdRst;
if (shop.LoginStatus != "登录成功")
errmsg = "店铺掉线";
return "商品回采失败!" + errmsg;
}
}
catch (Exception ex)
{
//OnInfoReceived("商品获取失败!商品数据格式获取失败!" + ex.Message);
return "商品回采失败!商品数据格式获取失败!" + ex.Message;
}
WXGetEditProductInfoLite wxProdInfoLite = null;
try
{
wxProdInfoLite = JsonHelper.DeserializeJsonToObject<WXGetEditProductInfoLite>(getEditProdRst);
var wxProdInfoLiteStr = JsonHelper.SerializeObject(wxProdInfoLite);
if (string.IsNullOrWhiteSpace(wxProdInfoLite.product.info.spuCode))
{
return "商品回采失败:外部编码采集失败,跳过";
}
}
catch (Exception ex)
{
return "商品回采失败:格式转换失败 " + ex.Message;
}
// 查询商品库有没有
var url = BaseClass.BuildPDDObjString("product/get_product_spu_id_list");
Thread.Sleep(200);
var data = UserLogin.GetSignaturex();
data += "&search_secret_spu_ids=" + wxProdInfoLite.product.info.spuCode;
data += "&wx_safe_status=" + "安全商品,未校验";
var result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200"))
result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200"))
{
var errMsg = BaseRegex.GetStringJson(ref result, "msg");
if (string.IsNullOrEmpty(errMsg))
errMsg = result;
return "查询回采商品错误:" + errMsg;
}
List<KJDDBProduct> complateDbProdExistLst = JsonHelper.DeserializeJsonToList<KJDDBProduct>(JsonHelper.JObjectParse(result)["data"].ParseToString());
if (complateDbProdExistLst.Count == 0)
{
return "回采商品不存在";
}
url = BaseClass.BuildPDDObjString("product/add_prod_wx_complate");
Thread.Sleep(200);
data = UserLogin.GetSignaturex();
data += "&secret_spu_id=" + wxProdInfoLite.product.info.spuCode;
data += "&spu_id=" + complateDbProdExistLst[0].spu_id;
data += "&coid=" + complateDbProdExistLst[0].skc_id;
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
data += "&wx_edit_prod_json=" + GetHtml.UrlEncodeUtf8(JsonConvert.SerializeObject(wxProdInfoLite, jsonSetting));
result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200"))
result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200"))
{
var errMsg = BaseRegex.GetStringJson(ref result, "msg");
if (string.IsNullOrEmpty(errMsg))
errMsg = result;
return "查询回采商品错误:" + errMsg;
}
else
{
return "商品回采保存成功!";
}
}
catch (Exception ex)
{
return "商品采集失败!" + ex.Message;
}
return "商品采集失败!";
}
}
}
+2 -1
View File
@@ -445,7 +445,8 @@ namespace TemuKJD.WXForms.ShopForms
List<string> shopIdList = GetCheckedShopIdList();
this.Invoke(new Action(() =>
{
foreach(DataGridViewRow row in dgvShop.Rows.Cast<DataGridViewRow>())
var rows = dgvShop.Rows.Cast<DataGridViewRow>().ToList();
foreach (DataGridViewRow row in rows)
{
if (!shopList.Any(s => s.ShopId == row.Cells["colShopId"].Value.ParseToString()))
this.dgvShop.Rows.Remove(row);
+53 -1
View File
@@ -446,7 +446,7 @@ namespace TemuKJD.WXForms.ShopForms
sb.Append("(function(){");
sb.Append("CefSharp.BindObjectAsync('shopObj');");
sb.Append("})();");
//cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString());
}
//public Func<object, string, string, request, bool> BeforeResourceLoadEvent; // sender, requestUrl, postData, request, true(表示取消执行)
@@ -538,6 +538,58 @@ namespace TemuKJD.WXForms.ShopForms
this.lstShopCompany.Add(sc);
});
}
if (BaseClass.UserAuthority.ParseToString().Contains("微信回采") && currentUrl.StartsWith("https://store.weixin.qq.com/shop/goods/list"))
{
//Task.Run(() => {
string sAddInputJs = @"
document.addEventListener('wheel', function(event) {
// 检查滚动方向
//if (event.deltaY < 0) {
// console.log('向上滚动');
//} else {
// console.log('向下滚动');
//}
// 或者使用 event.deltaX 来检查水平滚动
//if (event.deltaX < 0) {
// console.log('向左滚动');
//} else if (event.deltaX > 0) {
// console.log('向右滚动');
//}
// 阻止默认的滚动行为(如果有需要)
//event.preventDefault();
addGetProdButton();
});
addGetProdButton();
function addGetProdButton() {
const element = document.getElementsByName('goods')[0];
const shadowRoot = element.shadowRoot;
var productLst = shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
for ( i= 0; i < productLst.length; i++) {
var addBtnItem = productLst[i]; //.parentElement.parentElement.parentElement;
var pos = addBtnItem.innerHTML.indexOf('ID:')
if (addBtnItem.innerHTML.indexOf('回采') < 0 && pos >= 0) {
var sSpuId = addBtnItem.innerHTML.substring(pos + 3);
sSpuId = sSpuId.substring(0, sSpuId.indexOf('<span')).trim();
//addBtnItem.innerHTML += ""<input type=\""button\"" style=\""display:inline; width:60px; margin-left:10px; margin-top:0px; cursor:pointer; border:1px solid\"" value =\""回采商品\"" onclick=\""shopObj.getProduct('"" + sSpuId + ""','" + this.shop.ShopId + @"')\"">""
//addBtnItem.innerHTML += ""<input type=\""button\"" style=\""display:inline; width:60px; margin-left:10px; margin-top:0px; cursor:pointer; border:1px solid\"" value =\""回采商品\"" onclick=\""alert('"" + sSpuId + ""')\"">""
//addBtnItem.innerHTML = addBtnItem.innerHTML.replace(""分享 </a></div>"", ""分享 </a></div><input type=\""button\"" style=\""display:inline; width:60px; margin-left:10px; margin-top:0px; cursor:pointer; border:1px solid\"" value =\""回采商品\"" onclick=\""shopObj.getProduct('"" + sSpuId + ""','" + this.shop.ShopId + @"')\"">"");
var newDiv = document.createElement(""div"");
newDiv.innerHTML = ""<a style=\""display:inline; padding:2px 5px; cursor:pointer; border:1px solid\"" onclick=\""shopObj.getProduct('"" + sSpuId + ""','" + this.shop.ShopId + @"')\"">回采<\a>"";
addBtnItem.lastChild.appendChild(newDiv);
}
}
}";
cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sAddInputJs);
//});
//const element = document.getElementsByName('goods')[0]
//const shadowRoot = element.shadowRoot;
//shadowRoot.querySelector('micro-app-body').getElementsByClassName('goods_info')
}
}
/// <summary>
+15 -9
View File
@@ -411,6 +411,7 @@ namespace TemuKJD.WXForms.TalkForms
if (shop == null)
return;
string resData = responseData;
Task.Run(() =>
{
var row = dgvShop.Rows.Cast<DataGridViewRow>().FirstOrDefault(r => r.Cells["colShopId"].Value.ParseToString() == shop.ShopId);
@@ -421,7 +422,7 @@ namespace TemuKJD.WXForms.TalkForms
{
//{"base_resp":{"err_msg":"ok","ret":0},"list":[{"session_status":1,"summary":{"accept_by_robot":2,"accept_by_robot_time":"0","complaint_info":{"complaint_expire_time":0,"complaint_id":"0"},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"1","is_delete":0,"lastest_msg_content":"","lastest_msg_id":"4348928114244206592","lastest_msg_kf_content":"{\"content\":\"你好\"}","lastest_user_msg_time":"1768807915","msg_type":1,"recv_open_account":"wxf4460bce24e5d58d","recv_openid":"","room_id":"4348927951587721218","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"unread_msg_num":"1","unreplied_msg_time":"1768807915","update_time":"1768807915"}}],"num":1}
//{"base_resp":{"err_msg":"ok","ret":0},"list":[],"num":0}
var jObj = JsonHelper.JObjectParse(responseData);
var jObj = JsonHelper.JObjectParse(resData);
//{"base_resp":{"err_msg":"ok","ret":0},"list":[{"session_status":1,"summary":{"accept_by_robot":2,"accept_by_robot_time":"0","complaint_info":{"complaint_expire_time":0,"complaint_id":"0"},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"160","is_delete":0,"lastest_msg_content":"","lastest_msg_id":"4349035115016224786","lastest_msg_kf_content":"{\"type\":13,\"content\":\"{\\\"finder_live_id\\\":\\\"\\\",\\\"finder_username\\\":\\\"\\\",\\\"finder_object_id\\\":\\\"\\\",\\\"finder_nonce_id\\\":\\\"\\\",\\\"app_id\\\":\\\"wxca8d4b8e8feedc2a\\\",\\\"page_path\\\":\\\"main/pages/productDetail/productDetail.html?productId=10000405003763&realappid=wx2664a142d76831dd&cacheKey=3d585c9672aa92a088812cf9f8b30e0a&cacheType=backup&businessId=1&requestId=4349035091393462273&subScene=1208\\\",\\\"product_id\\\":\\\"10000405003763\\\",\\\"cover_url\\\":\\\"https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/695a36c7000ab9b70c029451f0d71715000000a100004f50?imageView2/1/w/400/h/400/q/50\\\",\\\"product_title\\\":\\\"运动套装女春秋2024新款时尚小熊卫衣连帽宽松跑步服休闲两件套潮\\\",\\\"market_price\\\":\\\"39530\\\",\\\"selling_price\\\":\\\"38730\\\",\\\"platform_head_img\\\":\\\"http://mmbiz.qpic.cn/mmbiz_jpg/cpXibyAIsexe8vObd8jWMktZk6sg1kKJgicdnzFiaxR1XvU0Kchlfdewsu7JETDF3lLp5cyULNNee94UPGeU1r9Rw/0?wx_fmt=jpeg/0\\\",\\\"platform_name\\\":\\\"夜笙供应链\\\",\\\"shop_window_id\\\":\\\"\\\",\\\"live_status\\\":\\\"\\\",\\\"flash_sale_price\\\":0,\\\"flash_sale_end_time\\\":0,\\\"ec_source\\\":\\\"\\\",\\\"selling_price_wording\\\":\\\"\\\",\\\"ext_conv\\\":{\\\"ext_conv_type\\\":1,\\\"ec_product_url\\\":\\\"https://channels.weixin.qq.com/shop?login_appid=wx2664a142d76831dd&redirect_url=%2Fgoods%2Fentry%3FproductId%3D10000405003763\\\",\\\"context\\\":\\\"\\\"}}\"}","lastest_user_msg_time":"1768814292","msg_type":11,"recv_open_account":"wx2664a142d76831dd","recv_openid":"","room_id":"4349034984388345858","scene":6,"send_open_account":"","send_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac","send_scene":6,"unread_msg_num":"1","unreplied_msg_time":"1768814293","update_time":"1768814292"}}],"num":1}
//if (jObj["num"].ParseToInt() <= 0)
// return;
@@ -431,13 +432,13 @@ namespace TemuKJD.WXForms.TalkForms
{
//{"base_resp":{"err_msg":"ok","ret":0},"pin_summary_list":[],"summary_cursor":"4349020771451830279","summary_list":[{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"5","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":0,"lastest_msg_content":"","lastest_msg_id":"4349029975415865363","lastest_msg_kf_content":"{\"content\":\"你好\"}","lastest_user_msg_time":"1768813986","msg_type":1,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348999364009132044","room_session_status":0,"scene":6,"send_open_account":"","send_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"78","unread_msg_num":"1","unreplied_msg_time":"1768813988","update_time":"1768813986","user_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac"}]}
//{"base_resp":{"err_msg":"ok","ret":0},"pin_summary_list":[],"summary_cursor":"4349035365970083850","summary_list":[{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"160","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4349035365970083850","lastest_msg_kf_content":"{\"content\":\"在的亲\"}","lastest_user_msg_time":"1768814292","msg_type":1,"recv_open_account":"wx2664a142d76831dd","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4349034984388345858","room_session_status":0,"scene":6,"send_open_account":"wx2664a142d76831dd","send_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"3186","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768814308","user_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/sstLNDibp2U6zXibjfoE1tUiaHCOKX1olnJNZnFGehlibg4liacAAWmj2VQ\\/64\",\"nickname\":\"我是上帝的女儿李善容\",\"list\":[],\"qa_info_list\":[]}","id":"154","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":0,"lastest_msg_content":"","lastest_msg_id":"4347360170765271042","lastest_msg_kf_content":"{\"type\":\"SessionTimeoutRedDot\",\"content\":\"你已超过10分钟未回复该会话,请及时处理。\",\"room_id\":\"4339855644638920709\",\"msg_id\":\"4347350053416747021\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768713854","msg_type":24,"recv_open_account":"wx2664a142d76831dd","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4339855644638920709","room_session_status":0,"scene":6,"send_open_account":"","send_openid":"o9cq802n8yQWq6bwbx2w8rp_aygk","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"3042","unread_msg_num":"0","unreplied_msg_time":"1768713857","update_time":"1768714458","user_openid":"o9cq802n8yQWq6bwbx2w8rp_aygk"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/IbQhd2Y9oKdcIf3tbP1pciaic0icL271V7iaqWQqGvrrrMbq26tSHnFf9Q\\/64\",\"nickname\":\"素色🍃᭄年华\",\"list\":[],\"qa_info_list\":[]}","id":"155","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4347305586245287937","lastest_msg_kf_content":"{\"type\":\"SessionTimeoutRedDot\",\"content\":\"你已超过10分钟未回复该会话,请及时处理。\",\"room_id\":\"4340576309047115777\",\"msg_id\":\"4347295489464516617\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768710602","msg_type":24,"recv_open_account":"wx2664a142d76831dd","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4340576309047115777","room_session_status":0,"scene":6,"send_open_account":"","send_openid":"o9cq80-t4oDOfQD6J6oJ8pp4yA7M","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"3035","unread_msg_num":"0","unreplied_msg_time":"1768710604","update_time":"1768711205","user_openid":"o9cq80-t4oDOfQD6J6oJ8pp4yA7M"}]}
var jObj = JsonHelper.JObjectParse(responseData);
var jObj = JsonHelper.JObjectParse(resData);
return;
}
else if (url.Contains("action=get_session_summary"))
{
//{"base_resp":{"err_msg":"ok","ret":0},"pin_summary_list":[],"summary_cursor":"4349042918267191303","summary_list":[{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEIuS5Aa65qsCwzKFpmSiciazvMbicxfEyHvTmD8MpQibR85wg\\/64\",\"nickname\":\"jtt\",\"list\":[],\"qa_info_list\":[]}","id":"5","is_delete":0,"is_expired":0,"is_pin":0,"is_pin_update_time":"0","kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4349042918267191303","lastest_msg_kf_content":"{\"content\":\"您好亲,有什么需要帮助的吗\"}","lastest_user_msg_time":"1768814710","msg_type":1,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348999364009132044","room_session_status":0,"scene":6,"send_open_account":"wxad4163db54e87b44","send_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","send_scene":6,"session_close_source":0,"star_label":0,"star_label_update_time":"0","sync_id":"87","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768814758","user_openid":"o9cq800-I4XeS-NiBgsIae1y38Ac"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"2","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348993861855264779","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348684483414425612\",\"msg_id\":\"4348993861855264779\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768811222","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348684483414425612","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"59","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768811834","user_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM61GOTjShX4GX3aSpuNiavic5xxAickB0fxH1Bic8Az5d0LCA\\/64\",\"nickname\":\"春暖花开\",\"list\":[],\"qa_info_list\":[]}","id":"4","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348932333527973902","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348906544732405760\",\"msg_id\":\"4348932333527973902\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768807466","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348906544732405760","scene":6,"send_open_account":"","send_openid":"o9cq807-mRKhlh-MPBpeYyar46HA","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"44","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768808166","user_openid":"o9cq807-mRKhlh-MPBpeYyar46HA"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PdibpV1sFDHeGJDbIwia4cv3UUPxnHqjFQ4piaSFEeJlViaeDPicHuQITkw\\/64\",\"nickname\":\"春雨\",\"list\":[],\"qa_info_list\":[]}","id":"3","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","kf_reply_status":1,"lastest_msg_content":"","lastest_msg_id":"4348888492147638275","lastest_msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348715191491690506\",\"msg_id\":\"4348888492147638275\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","lastest_user_msg_time":"1768795504","msg_type":5,"recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","room_id":"4348715191491690506","scene":6,"send_open_account":"","send_openid":"o9cq805nSmIjHqNthn9QbNimVAsE","send_scene":6,"star_label":0,"star_label_update_time":"0","sync_id":"29","unread_msg_num":"0","unreplied_msg_time":"0","update_time":"1768805553","user_openid":"o9cq805nSmIjHqNthn9QbNimVAsE"},{"complaint_info":{"complaint_expire_time":0,"complaint_id":"","complaint_status":0},"ext_info":{},"extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/PiajxSqBRaEJLajvZG4pYqhDrljibs7sNChSx6Cib2mN6KicJgbRESR8Rg\\/64\",\"nickname\":\"喂累了额\",\"list\":[],\"qa_info_list\":[]}","id":"1","is_delete":0,"is_expired":1,"is_pin":0,"is_pin_update_time":"0","Line truncated
var jObj = JsonHelper.JObjectParse(responseData);
var jObj = JsonHelper.JObjectParse(resData);
if (jObj.IsNullOrEmpty() || jObj["summary_list"].IsNullOrEmpty())
{
return;
@@ -457,6 +458,8 @@ namespace TemuKJD.WXForms.TalkForms
continue;
if (summary.Contains("用户超时未回"))
continue;
if (summary.Contains("该对话已投诉成功, 投诉有效期内不计入考核。"))
continue;
// 最后一条是自己回复的,返回
var send_open_account = summaryObj["send_open_account"].ParseToString();
if (send_open_account == shop.ShopId)
@@ -488,12 +491,12 @@ namespace TemuKJD.WXForms.TalkForms
//{"finder_live_id":"","finder_username":"","finder_object_id":"","finder_nonce_id":"","app_id":"wxca8d4b8e8feedc2a","page_path":"main/pages/productDetail/productDetail.html?productId=10000444468035&realappid=wx2664a142d76831dd&cacheKey=4f69a37c98838eb27e484b6def86d0ca&cacheType=backup&businessId=1&requestId=4348991209208823817&subScene=1208","product_id":"10000444468035","cover_url":"https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SH/reserved/69677007000d0f3329fc594d77ef1b15000000a000004f50?imageView2/1/w/400/h/400/q/50","product_title":"保暖加绒中老年妈妈装棉服","market_price":"6980","selling_price":"6180","platform_head_img":"http://mmbiz.qpic.cn/mmbiz_jpg/cpXibyAIsexe8vObd8jWMktZk6sg1kKJgicdnzFiaxR1XvU0Kchlfdewsu7JETDF3lLp5cyULNNee94UPGeU1r9Rw/0?wx_fmt=jpeg/0","platform_name":"夜笙供应链","shop_window_id":"","live_status":"","flash_sale_price":0,"flash_sale_end_time":0,"ec_source":"","selling_price_wording":"","ext_conv":{"ext_conv_type":1,"ec_product_url":"https://channels.weixin.qq.com/shop?login_appid=wx2664a142d76831dd&redirect_url=%2Fgoods%2Fentry%3FproductId%3D10000444468035","context":""}}
try
{
if (responseData.Contains("\"total_num\":0"))
if (resData.Contains("\"total_num\":0"))
return;
// 只有一条消息且是更新房间游标的直接退出
if (responseData.Contains("\"total_num\":1") && responseData.Contains("更新房间游标"))
if (resData.Contains("\"total_num\":1") && resData.Contains("更新房间游标"))
return;
if (responseData.Contains("鉴权失败"))
if (resData.Contains("鉴权失败"))
{
return;
//WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
@@ -501,7 +504,7 @@ namespace TemuKJD.WXForms.TalkForms
}
//{"base_resp":{"ret":30000,"err_msg":"鉴权失败"}}
var jObj = JsonHelper.JObjectParse(responseData);
var jObj = JsonHelper.JObjectParse(resData);
if (jObj["total_num"].ParseToInt() <= 0)
return;
// 自己发的消息或者客服自动回复消息不闪烁提示且将表格颜色还原 -----------------------------------------------------------------------------------------------
@@ -529,11 +532,14 @@ namespace TemuKJD.WXForms.TalkForms
// {"base_resp":{"err_msg":"ok","ret":0},"kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","list":[{"accept_by_robot":0,"async_check_spam_stage":0,"client_ms":"1768806150100","create_time":"1768806150","create_time_ms":"1768806150100","encrypt_msg_kf_content":"","extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"31","imunion_msg_id":"mmec-commkf-v2-4348898496719831040","insert_create_time_ms":"1768806150148","is_anonymous_msg":0,"is_delete":0,"is_expired":0,"is_fail":0,"is_hit_spam":0,"is_revoked":0,"is_sys_msg":1,"msg_direction":3,"msg_id":"4348898496719831040","msg_kf_content":"{\"type\":\"EndRoom\",\"content\":\"用户超时未回,会话已结束,两天内仍可再次联系\",\"room_id\":\"4348684483414425612\",\"msg_id\":\"4348898496719831040\",\"is_anonymous_msg\":0,\"need_update_summary\":1}","msg_type":5,"properties":"0","recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","reply_type":0,"room_id":"4348684483414425612","room_useruin":"0","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"session_id":"0","update_time":"1768806150"}],"total_num":1}
if (content.Contains("用户超时未回,会话已结束,两天内仍可再次联系"))
return;
if (content.Contains("会话已结束"))
return;
if (content.Contains("用户已结束会话") || content.Contains("客服已结束会话"))
return;
if (content.Contains("用户超时未回"))
return;
if (content.Contains("该对话已投诉成功, 投诉有效期内不计入考核。"))
return;
// {"base_resp":{"err_msg":"ok","ret":0},"kf_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","list":[{"accept_by_robot":0,"async_check_spam_stage":0,"client_ms":"1768808777632","create_time":"1768808777","create_time_ms":"1768808777632","encrypt_msg_kf_content":"","extra_info":"{\"head_img\":\"http:\\/\\/wx.qlogo.cn\\/mmhead\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\/64\",\"nickname\":\"Vader\",\"list\":[],\"qa_info_list\":[]}","id":"46","imunion_msg_id":"mmec-commkf-v2-4348942579357122569","insert_create_time_ms":"1768808777711","is_anonymous_msg":1,"is_delete":0,"is_expired":0,"is_fail":0,"is_hit_spam":0,"is_revoked":0,"is_sys_msg":1,"msg_direction":3,"msg_id":"4348942579357122569","msg_kf_content":"{\"type\":\"AcceptRoom\",\"content\":\"用户已接入\",\"room_id\":\"4348684483414425612\",\"msg_id\":\"4348942569912549377\",\"is_anonymous_msg\":1,\"need_update_summary\":0,\"summary_content\":\"{\\\"id\\\":\\\"2\\\",\\\"room_id\\\":\\\"4348684483414425612\\\",\\\"scene\\\":6,\\\"account\\\":\\\"3641079964\\\",\\\"send_scene\\\":6,\\\"send_account\\\":\\\"user_acct_2044334303_6\\\",\\\"send_uin\\\":2044334303,\\\"lastest_msg_id\\\":\\\"4348942543756476432\\\",\\\"lastest_msg_content\\\":\\\"\\\",\\\"unread_msg_num\\\":\\\"1\\\",\\\"update_time\\\":\\\"1768808774\\\",\\\"kf_uin\\\":1525084715,\\\"extra_info\\\":\\\"{\\\\\\\"head_img\\\\\\\":\\\\\\\"http:\\\\\\\\\\\\\\/\\\\\\\\\\\\\\/wx.qlogo.cn\\\\\\\\\\\\\\/mmhead\\\\\\\\\\\\\\/Q3auHgzwzM6vehibAAib9ia4ejxH7ibula7RuH4rTO7H7equgOZPVZl5Ew\\\\\\\\\\\\\\/64\\\\\\\",\\\\\\\"nickname\\\\\\\":\\\\\\\"Vader\\\\\\\",\\\\\\\"list\\\\\\\":[],\\\\\\\"qa_info_list\\\\\\\":[]}\\\",\\\"lastest_msg_kf_content\\\":\\\"{\\\\\\\"content\\\\\\\":\\\\\\\"测试\\\\\\\"}\\\",\\\"lastest_user_msg_time\\\":\\\"1768808774\\\",\\\"msg_type\\\":1,\\\"send_open_account\\\":\\\"\\\",\\\"recv_open_account\\\":\\\"wxad4163db54e87b44\\\",\\\"send_openid\\\":\\\"o9cq802Ue5pCVRmzuzkFUcnoHjcM\\\",\\\"recv_openid\\\":\\\"o9cq801T0m1dIivQzMyUwBvW5Znk\\\",\\\"is_delete\\\":0,\\\"star_label\\\":0,\\\"star_label_update_time\\\":\\\"0\\\",\\\"unreplied_msg_time\\\":\\\"1768808777\\\",\\\"kf_reply_status\\\":0,\\\"sync_id\\\":\\\"45\\\",\\\"is_pin\\\":0,\\\"is_pin_update_time\\\":\\\"0\\\",\\\"ext_info\\\":{},\\\"complaint_info\\\":{\\\"complaint_expire_time\\\":0,\\\"complaint_id\\\":\\\"\\\",\\\"complaint_status\\\":0},\\\"user_uin\\\":2044334303,\\\"is_expired\\\":0}\"}","msg_type":5,"properties":"0","recv_open_account":"wxad4163db54e87b44","recv_openid":"o9cq801T0m1dIivQzMyUwBvW5Znk","reply_type":0,"room_id":"4348684483414425612","room_useruin":"0","scene":6,"send_open_account":"","send_openid":"o9cq802Ue5pCVRmzuzkFUcnoHjcM","send_scene":6,"session_id":"0","update_time":"1768808777"}],"total_num":1}
//if (content.Contains("用户已接入"))
@@ -1043,7 +1049,7 @@ namespace TemuKJD.WXForms.TalkForms
Invoke(new Action(() =>
{
if (r != null)
r.Cells["colMessage"].Value = "正在刷新";
r.Cells["colMessage"].Value = "正在刷新店铺";
}));
WXShopListForm.Instance.CheckShopLogin(new ShopLoginInfo[] { shop }, false);
Invoke(new Action(() =>
+1
View File
@@ -85,6 +85,7 @@ namespace Work
BaseClass.NickName = BaseRegex.GetStringJson(ref html, "nick_name");
BaseClass.UserName = BaseRegex.GetStringJson(ref html, "user_name");
BaseClass.SaLevel = BaseRegex.GetIntJson(ref html, "sa_level").ParseToInt();
BaseClass.UserAuthority = BaseRegex.GetStringJson(ref html, "authority");
BaseClass.Mobile = BaseRegex.GetStringJson(ref html, "mobile");
BaseClass.UserVersion = BaseRegex.GetStringJson(ref html, "version").ParseToInt();
BaseClass.UserVersionString = BaseRegex.GetStringJson(ref html, "version_s");