商品选品 更新类目 子账户单独批量修改 及其他功能

This commit is contained in:
wule committed 2026-03-23 20:34:05 +08:00
1 parent 8e919b0bd7
commit 52220daa8b
46 files changed
+4960 -211

No files matched your search

+1
View File
@@ -201,6 +201,7 @@
<Compile Include="Model\Result\1688\_1688OneProductListInfo.cs" />
<Compile Include="Model\Result\JST\JSTOrderInfo.cs" />
<Compile Include="Model\Result\JST\JSTListProductSkuInfo.cs" />
<Compile Include="Model\Result\WXResult\WXAddressInfo.cs" />
<Compile Include="Model\Result\WXResult\WXClientProductInfoLite.cs" />
<Compile Include="Model\Result\WXResult\WXFinderTalentInfo.cs" />
<Compile Include="Model\Result\WXResult\WXGetEditProductInfoLite.cs" />
+1 -1
View File
@@ -27,7 +27,7 @@ namespace AllBase
/// <summary>
/// 版本ID
/// </summary>
public static int VersionCount = 927;
public static int VersionCount = 929;
//public static int VersionCount = 613;
/// <summary>
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AllBase.Model.Result.WXResult
{
public class WX1688AddressInfo
{
public int id { get; set; }
public string supplier_name { get; set; }
public string coid { get; set; }
public string after_sale_json { get; set; }
public DateTime add_time { get; set; }
public DateTime mdy_time { get; set; }
public string type { get; set; }
}
}
@@ -4,6 +4,7 @@ using KJD_Web.Utils;
using MySql.Data.MySqlClient;
using Mysqlx.Crud;
using NaiBa.Util.Extension;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
@@ -11,6 +12,7 @@ using System.Linq;
using System.Threading;
using System.Web;
using System.Web.Security;
using System.Web.UI.HtmlControls;
namespace KJD_Web.BLL.WXXD
{
@@ -598,13 +600,13 @@ namespace KJD_Web.BLL.WXXD
//int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
//int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50);
string coid = RegexUtils.GetStringQuery(ref inputData, "coid")?.Replace("'", "\\'");
string after_sale_json = RegexUtils.GetStringQuery(ref inputData, "after_sale_json")?.Replace("'", "\\'");
string after_sale_json = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "after_sale_json"))?.Replace("'", "\\'");
if (string.IsNullOrEmpty("coid"))
return "{\"code\":50001,\"msg\":\"没有售后编号\"}";
if (string.IsNullOrEmpty("after_sale_json"))
return "{\"code\":50001,\"msg\":\"没有售后信息\"}";
string supplier_name = RegexUtils.GetStringQuery(ref inputData, "supplier_name")?.Replace("'", "\\'");
string type = RegexUtils.GetStringQuery(ref inputData, "type")?.Replace("'", "\\'");
string supplier_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "supplier_name"))?.Replace("'", "\\'");
string type = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "type"))?.Replace("'", "\\'");
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
@@ -717,6 +719,136 @@ namespace KJD_Web.BLL.WXXD
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
public string WXGetAfterSaleList(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("'", "\\'");
if (string.IsNullOrEmpty(user_name))
{
return "{\"code\":50001,\"msg\":\"没有用户名\"}";
}
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50);
string coid = RegexUtils.GetStringQuery(ref inputData, "coid")?.Replace("'", "\\'");
string type = RegexUtils.GetStringQuery(ref inputData, "type")?.Replace("'", "\\'");
string supplier_name = RegexUtils.GetStringQuery(ref inputData, "supplier_name")?.Replace("'", "\\'");
string detail = RegexUtils.GetStringQuery(ref inputData, "detail")?.Replace("'", "\\'");
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "SELECT count(*) FROM `wxxd`.`after_sale` where 1=1";
string where = "";
if (coid != null)
where += " and coid='" + coid + "'";
if (type != null)
where += " and type='" + type + "'";
if (supplier_name != null)
where += " and supplier_name='" + supplier_name + "'";
if (detail != null)
where += " and after_sale_json like '%" + detail + "%'";
sql += where;
sql += ";";
var count = 0;
count = mySql.ExecuteRowCount(sql);
DataTable dt;
if (count == 0)
{
dt = new DataTable();
}
else
{
sql = "SELECT * FROM `wxxd`.`after_sale` where 1=1";
sql += where;
sql += " order by id desc limit " + Math.Max(0, page - 1) * page_size + "," + page_size + ";";
dt = mySql.ExecuteDataTable(sql);
mySql.Close();
}
if (dt != null)
{
try
{
List<WXAddressInfo> WXAddressInfoLst = new List<WXAddressInfo>();
foreach (DataRow row in dt.Rows)
{
WXAddressInfoLst.Add(new WXAddressInfo()
{
id = row["id"].ParseToInt(),
after_sale_json = row["after_sale_json"].ParseToString(),
coid = row["coid"].ParseToString(),
supplier_name = row["supplier_name"].ParseToString(),
type = row["type"].ParseToString(),
add_time = Convert.ToDateTime(row["add_time"]),
mdy_time = Convert.ToDateTime(row["mdy_time"]),
});
}
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
var data = JsonUtils.SerializerObjectToString(WXAddressInfoLst, jsonSetting);
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + 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\":\"输入为空\"}";
}
public string WXDelAddress(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("'", "\\'");
if (string.IsNullOrEmpty(user_name))
{
return "{\"code\":50001,\"msg\":\"没有用户名\"}";
}
var coid = RegexUtils.GetStringQuery(ref inputData, "coid");
if (string.IsNullOrEmpty(coid))
{
return "{\"code\":50002,\"msg\":\"没有售后地址编号\"}";
}
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "delete from wxxd.after_sale where coid='" + coid + "'";
var rst = mySql.ExecuteNonQuery(sql);
mySql.Close();
if (rst)
{
return "{\"code\":200,\"msg\":\"success\"}";
}
else
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}";
}
return "{\"code\":19999,\"msg\":\"未知错误\"}";
}
public string WXAddMdyShippingTemplate(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
@@ -117,6 +117,7 @@
<Compile Include="BLL\WXXD\WXUserManage.cs" />
<Compile Include="Model\JSTDownProdSkuInfo.cs" />
<Compile Include="Model\ShopModel\JSTListProductSkuInfo.cs" />
<Compile Include="Model\WXAddressInfo.cs" />
<Compile Include="Model\WxProdSecretSpuIdShopIdMapParam.cs" />
<Compile Include="Utils\HttpUtils.cs" />
<Compile Include="Utils\RandomUtils.cs" />
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<UseIISExpress>true</UseIISExpress>
@@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace KJD_Web.Model
{
public class WXAddressInfo
{
public int id { get; set; }
public string supplier_name { get; set; }
public string coid { get; set; }
public string after_sale_json { get; set; }
public DateTime add_time { get; set; }
public DateTime mdy_time { get; set; }
public string type { get; set; }
}
}
@@ -183,6 +183,28 @@ namespace KJD_Web
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void wx_get_after_sale_list()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXProductManage().WXGetAfterSaleList(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void wx_del_address()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXProductManage().WXDelAddress(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
//WXAddMdyAfterSale
[WebMethod]
+6 -7
View File
@@ -84,19 +84,18 @@ namespace TemuKJD.BLL
}
public static string MdyPDDServerShopSubInfo(ShopLoginInfo _shop)
public static string MdyPDDWXServerShopSubInfo(ShopLoginInfo _shop, bool updateNotes = true, bool updateGroup = true, bool updateSubUser = true)
{
var url = BaseClass.BuildObjString("shop/mdy_shop");
var data = UserLogin.GetSignaturex();
data += "&login_name=" + _shop.LoginName;
data += "&login_pass=" + GetHtml.UrlEncodeUtf8(_shop.Password);
data += "&notes=" + GetHtml.UrlEncodeUtf8(_shop.Notes);
data += "&group_name=" + GetHtml.UrlEncodeUtf8(_shop.GroupName);
if (BaseClass.GroupId == 3) // 子账户子账户编辑权限
{
if (updateNotes)
data += "&notes=" + GetHtml.UrlEncodeUtf8(_shop.Notes);
if (updateGroup)
data += "&group_name=" + GetHtml.UrlEncodeUtf8(_shop.GroupName);
if (BaseClass.GroupId == 3 && updateSubUser) // 子账户用户无子账户编辑权限
data += "&sub_user_name=" + GetHtml.UrlEncodeUtf8(_shop.SubUserName);
}
var result = GetHtml.PostUtf8(url, data);
if (!result.Contains("\"code\":200") && !result.Contains("已达上限") && !result.Contains("已存在"))
+3 -3
View File
@@ -287,10 +287,10 @@ namespace TemuKJD.BaseForms
{
this.SaveComplete?.Invoke(param);
}
public event Action<object, object> SaveCompleteWithDescribe;
protected virtual void OnSaveComplete(object param, object describe)
public event Action<object, object, object> SaveCompleteWithDescribe;
protected virtual void OnSaveComplete(object param, object describe, object sender)
{
this.SaveCompleteWithDescribe?.Invoke(param, describe);
this.SaveCompleteWithDescribe?.Invoke(param, describe, sender);
}
#endregion
+21
View File
@@ -22,6 +22,18 @@ namespace TemuKJD.Extension
}
return location;
}
public static Point GetRelativePosition(this Control control, Control parentControl)
{
Point location = control.Location;
Control parent = control.Parent;
while (parent != null && parent != parentControl)
{
location.X += parent.Location.X;
location.Y += parent.Location.Y;
parent = parent.Parent;
}
return location;
}
public static Point GetRelativePosition(this Control control)
{
Point location = control.Location;
@@ -34,5 +46,14 @@ namespace TemuKJD.Extension
}
return location;
}
public static Control GetParentNotTable(this Control contorl)
{
Control parent = contorl.Parent;
while (parent != null && (parent is TableLayoutPanel || parent is FlowLayoutPanel))
{
parent = parent.Parent;
}
return parent;
}
}
}
+18
View File
@@ -181,6 +181,18 @@
<DependentUpon>WebForm.cs</DependentUpon>
</Compile>
<Compile Include="ToolForms\WebFormObj.cs" />
<Compile Include="ToolForms\Get1688AddressForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="ToolForms\Get1688AddressForm.Designer.cs">
<DependentUpon>Get1688AddressForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ProductForms\WXUserProdListForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="WXForms\ProductForms\WXUserProdListForm.Designer.cs">
<DependentUpon>WXUserProdListForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ProductForms\WXFinderSquareForm.cs">
<SubType>Form</SubType>
</Compile>
@@ -1150,6 +1162,9 @@
<EmbeddedResource Include="ToolForms\WebForm.resx">
<DependentUpon>WebForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="ToolForms\Get1688AddressForm.resx">
<DependentUpon>Get1688AddressForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="UserComponent\DataGridViewEx.resx">
<DependentUpon>DataGridViewEx.cs</DependentUpon>
</EmbeddedResource>
@@ -1171,6 +1186,9 @@
<EmbeddedResource Include="WXForms\AdminForms\WXProdComplateForm.resx">
<DependentUpon>WXProdComplateForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\ProductForms\WXUserProdListForm.resx">
<DependentUpon>WXUserProdListForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\ProductForms\WXDBProdUploadCacheForm.resx">
<DependentUpon>WXDBProdUploadCacheForm.cs</DependentUpon>
</EmbeddedResource>
@@ -374,7 +374,7 @@ namespace TemuKJD.KJDForms.AdminForms
});
}
private void EditForm_SaveCompleteWithDescribe(object obj, object isAdd)
private void EditForm_SaveCompleteWithDescribe(object obj, object isAdd, object sender)
{
var shopInfo = obj as ShopLoginInfo;
if (shopInfo != null)
@@ -3294,7 +3294,7 @@ Content-Disposition: form-data; name=""sign""
subSaForm.ShowDialog();
}
private void SubSaForm_SaveComplete(object isUpdateSameShop, object subSaName)
private void SubSaForm_SaveComplete(object isUpdateSameShop, object subSaName, object sender)
{
if (isUpdateSameShop as bool? == false)
{
@@ -114,7 +114,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
{
if (html.Contains("\"code\":200"))
{
OnSaveComplete(isShopAllSameSaCheck, sub_sa + "&&&&&" + sub_sa_nick);
OnSaveComplete(isShopAllSameSaCheck, sub_sa + "&&&&&" + sub_sa_nick, this);
return "";
}
else
@@ -68,7 +68,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
priceInfo.original_price = (this.numOriginalPrice.Value * 100).ParseToInt();
priceInfo.markup_times = (this.numMarkupTimes.Value).ParseToInt();
priceInfo.extra_price = (this.numExtraPrice.Value * 100).ParseToInt();
this.OnSaveComplete(priceInfo, priceInfo);
this.OnSaveComplete(priceInfo, priceInfo, this);
this.Close();
}
}
@@ -349,7 +349,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
}
}
private void EditForm_SaveCompleteWithDescribe(object arg1, object arg2)
private void EditForm_SaveCompleteWithDescribe(object arg1, object arg2, object sender)
{
var price = arg1 as TemuDBExtCodePriceInfo;
if (price != null)
@@ -1952,7 +1952,7 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
subSaForm.ShowDialog();
}
private void SubSaForm_SaveComplete(object isUpdateSameShop, object subSaName)
private void SubSaForm_SaveComplete(object isUpdateSameShop, object subSaName, object sender)
{
if (isUpdateSameShop as bool? == false)
{
@@ -59,7 +59,7 @@ namespace TemuKJD.KJDForms.ShopForms
}
HasChange = true;
this.OnSaveComplete(shopLoginInfo, isAdd);
this.OnSaveComplete(shopLoginInfo, isAdd, this);
this.Close();
}
+1 -1
View File
@@ -298,7 +298,7 @@ namespace TemuKJD.KJDForms.ShopForms
sae.Show();
}
private void Sae_SaveComplete(object obj, object isAdd)
private void Sae_SaveComplete(object obj, object isAdd, object sender)
{
var shopInfo = obj as ShopLoginInfo;
if (shopInfo != null)
+73 -2
View File
@@ -308,13 +308,14 @@ namespace TemuKJD
Task.Run(()=>
{
ReadWxCate();
ReadWxCateBound();
//ReadWxCateBound();
ReadWxCateBound60323();
});
}
void ReadWxCate()
{
string filePath = Path.Combine(Environment.CurrentDirectory, "temp\\wxCat");
string filePath = Path.Combine(Environment.CurrentDirectory, "temp\\wxCat60323");
if (!File.Exists(filePath))
return;
using (StreamReader sr = new StreamReader(filePath, System.Text.Encoding.UTF8))
@@ -363,6 +364,76 @@ namespace TemuKJD
GlobalConfig.WxCatBoundList = new ConcurrentList<WxCatBoundInfo>();
}
void ReadWxCateBound60323()
{
string filePath = Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound60323");
if (!File.Exists(filePath))
return;
try
{
var catTxts = FileBase.ReadAllLines(filePath);
foreach (var catTxt in catTxts)
{
if (catTxt.StartsWith("一级类目"))
continue;
var catTxtArr = catTxt.Replace("阴臀倒膜", "阴臀倒模").Replace("会员卡劵", "会员卡券").Replace("车载扩展坞", "车载拓展坞").Replace(",桔/橘,", ",柑/桔/橘,")
.Replace(",水果,李,", ",水果,李子,").Replace("方便粉/螺狮粉","方便粉/螺蛳粉").Replace(",政治/军事,", ",军事/政治,").Replace(",计算机与互联网,", ",计算机/互联网,")
.Replace(",人偶/BJD/兵人,", ",手办/人偶/BJD/兵人,").Split(',');
var catName1 = catTxtArr[0].Trim();
var catName2 = catTxtArr[1].Trim();
var catName3 = catTxtArr[2].Trim();
var catName4 = catTxtArr[3].Trim();
var fullCatName = catName1 + "/" + catName2 + "/" + catName3 + "/" + catName4;
fullCatName = fullCatName.Trim('/', ' ');
WxCatInfo wxCat1 = GlobalConfig.WxCatList.FirstOrDefault(c => c.name == catName1);
WxCatInfo wxCat2 = null;
WxCatInfo wxCat3 = null;
WxCatInfo wxCat4 = null;
if (wxCat1 != null && !string.IsNullOrWhiteSpace(catName2))
{
wxCat2 = GlobalConfig.WxCatList.FirstOrDefault(c => c.name == catName2 && c.f_cat_id == wxCat1.cat_id);
}
if (wxCat2 != null && !string.IsNullOrWhiteSpace(catName3))
{
wxCat3 = GlobalConfig.WxCatList.FirstOrDefault(c => c.name == catName3 && c.f_cat_id == wxCat2.cat_id);
}
if (wxCat3 != null && !string.IsNullOrWhiteSpace(catName4))
{
wxCat4 = GlobalConfig.WxCatList.FirstOrDefault(c => c.name == catName4 && c.f_cat_id == wxCat3.cat_id);
}
List<WxCatInfo> catLst = new List<WxCatInfo> { wxCat1, wxCat2, wxCat3, wxCat4 };
var leafCat = catLst.LastOrDefault(c => c != null && c.leaf);
try
{
if (leafCat != null)
{
var catTmp = catLst.LastOrDefault(c => c != null);
var x = GlobalConfig.WxCatList.Where(c => c.f_cat_id == catTmp.cat_id);
var xx = string.Join(",", x.Select(s => s.name));
GlobalConfig.WxCatBoundList.Add(new WxCatBoundInfo()
{
cat_bound = catTxtArr[5].ParseToInt(),
full_cat_name = fullCatName,
leaf_id = leafCat.cat_id.ParseToLong(),
leaf_name = catTxtArr[1],
});
}
}
catch (Exception ex)
{
}
}
}
catch (Exception ex)
{
BaseMsgForm.ShowError("类目价格获取失败:" + ex.Message);
}
if (GlobalConfig.WxCatBoundList == null)
GlobalConfig.WxCatBoundList = new ConcurrentList<WxCatBoundInfo>();
}
public void SetTitle()
{
lblVersionInfo.Text = BaseClass.ToolName + " V" + BaseClass.Varsion + " - " + BaseClass.NickName;
@@ -341,7 +341,7 @@ namespace TemuKJD.PDDForms.AdminForms
});
}
private void EditForm_SaveCompleteWithDescribe(object obj, object isAdd)
private void EditForm_SaveCompleteWithDescribe(object obj, object isAdd, object sender)
{
var shopInfo = obj as ShopLoginInfo;
if (shopInfo != null)
@@ -76,6 +76,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnRestoreAll = new DevComponents.DotNetBar.PanelEx();
this.btnCancel = new DevComponents.DotNetBar.PanelEx();
this.btnSaveSkuLst = new DevComponents.DotNetBar.PanelEx();
this.panel6 = new System.Windows.Forms.Panel();
this.panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
@@ -91,6 +92,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.flowLayoutPanel4.SuspendLayout();
this.panel3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvDbProduct)).BeginInit();
this.panel6.SuspendLayout();
this.SuspendLayout();
//
// panel2
@@ -153,7 +155,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.flowLayoutPanel3.Controls.Add(this.pnlSpec2);
this.flowLayoutPanel3.Controls.Add(this.flowLayoutPanel2);
this.flowLayoutPanel3.Controls.Add(this.panel4);
this.flowLayoutPanel3.Controls.Add(this.flowLayoutPanel4);
this.flowLayoutPanel3.Controls.Add(this.panel6);
this.flowLayoutPanel3.Controls.Add(this.dgvDbProduct);
this.flowLayoutPanel3.Controls.Add(this.panel5);
this.flowLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
@@ -327,11 +329,12 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.flowLayoutPanel4.Controls.Add(this.cmbSpec1);
this.flowLayoutPanel4.Controls.Add(this.cmbSpec2);
this.flowLayoutPanel4.Controls.Add(this.panel3);
this.flowLayoutPanel4.Location = new System.Drawing.Point(3, 203);
this.flowLayoutPanel4.Dock = System.Windows.Forms.DockStyle.Fill;
this.flowLayoutPanel4.Location = new System.Drawing.Point(0, 0);
this.flowLayoutPanel4.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
this.flowLayoutPanel4.MinimumSize = new System.Drawing.Size(1250, 10);
this.flowLayoutPanel4.Name = "flowLayoutPanel4";
this.flowLayoutPanel4.Size = new System.Drawing.Size(1250, 31);
this.flowLayoutPanel4.Size = new System.Drawing.Size(1250, 30);
this.flowLayoutPanel4.TabIndex = 13;
//
// cmbSpec1
@@ -485,8 +488,9 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.colEditSkuImg,
this.colSkuSn});
this.dgvDbProduct.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
this.dgvDbProduct.Location = new System.Drawing.Point(5, 237);
this.dgvDbProduct.Location = new System.Drawing.Point(5, 236);
this.dgvDbProduct.Margin = new System.Windows.Forms.Padding(5, 0, 3, 3);
this.dgvDbProduct.MultiSelectCheckBox = true;
this.dgvDbProduct.Name = "dgvDbProduct";
this.dgvDbProduct.RowTemplate.Height = 23;
this.dgvDbProduct.Size = new System.Drawing.Size(1230, 600);
@@ -568,7 +572,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
// panel5
//
this.panel5.Location = new System.Drawing.Point(3, 843);
this.panel5.Location = new System.Drawing.Point(3, 842);
this.panel5.MinimumSize = new System.Drawing.Size(1250, 10);
this.panel5.Name = "panel5";
this.panel5.Size = new System.Drawing.Size(1250, 10);
@@ -648,6 +652,16 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnSaveSkuLst.Text = "保存";
this.btnSaveSkuLst.Click += new System.EventHandler(this.btnSaveSkuLst_Click);
//
// panel6
//
this.panel6.Controls.Add(this.flowLayoutPanel4);
this.panel6.Location = new System.Drawing.Point(3, 203);
this.panel6.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
this.panel6.MinimumSize = new System.Drawing.Size(1250, 10);
this.panel6.Name = "panel6";
this.panel6.Size = new System.Drawing.Size(1250, 30);
this.panel6.TabIndex = 15;
//
// PDDDBProdEditDetailForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
@@ -655,6 +669,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.Controls.Add(this.panel2);
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 = "PDDDBProdEditDetailForm";
this.Text = "编辑商品SKU详情";
this.TitleText = "编辑商品SKU详情";
@@ -682,6 +697,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.panel3.ResumeLayout(false);
this.panel3.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvDbProduct)).EndInit();
this.panel6.ResumeLayout(false);
this.ResumeLayout(false);
}
@@ -731,5 +747,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
private System.Windows.Forms.Panel panel5;
public DevComponents.DotNetBar.PanelEx btnSaveSkuLst;
public DevComponents.DotNetBar.PanelEx btnRestoreAll;
private System.Windows.Forms.Panel panel6;
}
}
@@ -112,6 +112,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.label7 = new System.Windows.Forms.Label();
this.chkPullAfterPush = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
this.cmbSpProdType = new System.Windows.Forms.ComboBox();
this.btnGetAllCate = new DevComponents.DotNetBar.PanelEx();
this.pnlEditExtCodePrice = new System.Windows.Forms.Panel();
@@ -1165,6 +1166,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
// splitContainer2.Panel1
//
this.splitContainer2.Panel1.Controls.Add(this.panelEx1);
this.splitContainer2.Panel1.Controls.Add(this.cmbSpProdType);
this.splitContainer2.Panel1.Controls.Add(this.btnGetAllCate);
this.splitContainer2.Panel1.Controls.Add(this.pnlEditExtCodePrice);
@@ -1182,6 +1184,31 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.splitContainer2.SplitterDistance = 543;
this.splitContainer2.TabIndex = 0;
//
// panelEx1
//
this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.panelEx1.Cursor = System.Windows.Forms.Cursors.Hand;
this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty;
this.panelEx1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.panelEx1.Location = new System.Drawing.Point(119, 33);
this.panelEx1.Name = "panelEx1";
this.panelEx1.Size = new System.Drawing.Size(121, 25);
this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center;
this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.panelEx1.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
this.panelEx1.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
this.panelEx1.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
this.panelEx1.Style.ForeColor.Color = System.Drawing.Color.White;
this.panelEx1.Style.GradientAngle = 90;
this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.panelEx1.TabIndex = 787;
this.panelEx1.Text = "类目保证金转换";
this.panelEx1.Visible = false;
this.panelEx1.Click += new System.EventHandler(this.btnCatBound_Click);
//
// cmbSpProdType
//
this.cmbSpProdType.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
@@ -1219,7 +1246,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.btnGetAllCate.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnGetAllCate.TabIndex = 777;
this.btnGetAllCate.Text = "取微信全类目";
this.btnGetAllCate.Visible = false;
this.btnGetAllCate.Click += new System.EventHandler(this.btnGetAllCate_Click);
//
// pnlEditExtCodePrice
@@ -1423,6 +1449,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.col_select_product});
this.dgvDbProduct.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvDbProduct.Location = new System.Drawing.Point(4, 0);
this.dgvDbProduct.MultiSelectCheckBox = true;
this.dgvDbProduct.Name = "dgvDbProduct";
this.dgvDbProduct.ReadOnly = true;
this.dgvDbProduct.RowTemplate.Height = 23;
@@ -1891,5 +1918,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms
private UserComponent.UcCheckBox ucCheckBox1;
private System.Windows.Forms.DateTimePicker dtpEnd;
private System.Windows.Forms.DateTimePicker dtpStart;
private DevComponents.DotNetBar.PanelEx panelEx1;
}
}
@@ -2163,5 +2163,10 @@ namespace TemuKJD.PDDForms.ProductSelectForms
Thread.Sleep(100);
}
}
private void btnCatBound_Click(object sender, EventArgs e)
{
}
}
}
@@ -57,7 +57,7 @@ namespace TemuKJD.PDDForms.ShopForms
shop.Notes = shopLoginInfo.Notes;
}
this.OnSaveComplete(shopLoginInfo, isAdd);
this.OnSaveComplete(shopLoginInfo, isAdd, this);
this.Close();
}
@@ -249,7 +249,7 @@ namespace TemuKJD.PDDForms.ShopForms
sae.Show();
}
private void Sae_SaveComplete(object obj, object isAdd)
private void Sae_SaveComplete(object obj, object isAdd, object sender)
{
var shopInfo = obj as ShopLoginInfo;
if (shopInfo != null)
@@ -269,7 +269,7 @@ namespace TemuKJD.PDDForms.ShopForms
}
else
{
ShopBLL.MdyPDDServerShopSubInfo(shopInfo);
ShopBLL.MdyPDDWXServerShopSubInfo(shopInfo);
btnRefreshCookie_Click(null, null);
}
}
+793
View File
@@ -0,0 +1,793 @@
namespace TemuKJD.ToolForms
{
partial class Get1688AddressForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </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.splitContainer5 = new System.Windows.Forms.SplitContainer();
this.pnlEmpty = new DevComponents.DotNetBar.PanelEx();
this.txtSearch = new System.Windows.Forms.TextBox();
this.label14 = new System.Windows.Forms.Label();
this.label13 = new System.Windows.Forms.Label();
this.label12 = new System.Windows.Forms.Label();
this.label10 = new System.Windows.Forms.Label();
this.txtDetailInfo = new System.Windows.Forms.TextBox();
this.txtTelNumber = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.label9 = new System.Windows.Forms.Label();
this.txtCountyName = new System.Windows.Forms.TextBox();
this.label6 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.txtCityName = new System.Windows.Forms.TextBox();
this.label5 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.txtProvinceName = new System.Windows.Forms.TextBox();
this.txtPostalCode = new System.Windows.Forms.TextBox();
this.label3 = new System.Windows.Forms.Label();
this.txtUserName = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.btnRefresh = new TemuKJD.UserControls.ButtonEx();
this.btnCancel = new TemuKJD.UserControls.ButtonEx();
this.btnAddAddress = new TemuKJD.UserControls.ButtonEx();
this.label34 = new System.Windows.Forms.Label();
this.label35 = new System.Windows.Forms.Label();
this.label36 = new System.Windows.Forms.Label();
this.txtSupplierName = new System.Windows.Forms.TextBox();
this.label39 = new System.Windows.Forms.Label();
this.txtCoid = new System.Windows.Forms.TextBox();
this.label40 = new System.Windows.Forms.Label();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.pbLoading = new System.Windows.Forms.PictureBox();
this.txtStreetName = new System.Windows.Forms.TextBox();
this.label11 = new System.Windows.Forms.Label();
this.dgvUser = new TemuKJD.UserComponent.DataGridViewEx();
this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage();
this.colId = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colCoid = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colSupplierName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colUserName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colTelNumber = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colPostalCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colProvinceName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colCityName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colCountyName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colStreetName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colDetailInfo = 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();
this.splitContainer5.Panel1.SuspendLayout();
this.splitContainer5.Panel2.SuspendLayout();
this.splitContainer5.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
this.splitContainer1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dgvUser)).BeginInit();
this.SuspendLayout();
//
// splitContainer5
//
this.splitContainer5.BackColor = System.Drawing.Color.Transparent;
this.splitContainer5.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer5.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
this.splitContainer5.Location = new System.Drawing.Point(0, 0);
this.splitContainer5.Name = "splitContainer5";
//
// splitContainer5.Panel1
//
this.splitContainer5.Panel1.Controls.Add(this.pnlEmpty);
this.splitContainer5.Panel1.Controls.Add(this.txtSearch);
this.splitContainer5.Panel1.Controls.Add(this.label14);
this.splitContainer5.Panel1.Controls.Add(this.label13);
this.splitContainer5.Panel1.Controls.Add(this.label12);
this.splitContainer5.Panel1.Controls.Add(this.label10);
this.splitContainer5.Panel1.Controls.Add(this.txtDetailInfo);
this.splitContainer5.Panel1.Controls.Add(this.txtTelNumber);
this.splitContainer5.Panel1.Controls.Add(this.label1);
this.splitContainer5.Panel1.Controls.Add(this.label8);
this.splitContainer5.Panel1.Controls.Add(this.label9);
this.splitContainer5.Panel1.Controls.Add(this.txtCountyName);
this.splitContainer5.Panel1.Controls.Add(this.label6);
this.splitContainer5.Panel1.Controls.Add(this.label7);
this.splitContainer5.Panel1.Controls.Add(this.txtCityName);
this.splitContainer5.Panel1.Controls.Add(this.label5);
this.splitContainer5.Panel1.Controls.Add(this.label4);
this.splitContainer5.Panel1.Controls.Add(this.txtProvinceName);
this.splitContainer5.Panel1.Controls.Add(this.txtPostalCode);
this.splitContainer5.Panel1.Controls.Add(this.label3);
this.splitContainer5.Panel1.Controls.Add(this.txtUserName);
this.splitContainer5.Panel1.Controls.Add(this.label2);
this.splitContainer5.Panel1.Controls.Add(this.btnRefresh);
this.splitContainer5.Panel1.Controls.Add(this.btnCancel);
this.splitContainer5.Panel1.Controls.Add(this.btnAddAddress);
this.splitContainer5.Panel1.Controls.Add(this.label34);
this.splitContainer5.Panel1.Controls.Add(this.label35);
this.splitContainer5.Panel1.Controls.Add(this.label36);
this.splitContainer5.Panel1.Controls.Add(this.txtSupplierName);
this.splitContainer5.Panel1.Controls.Add(this.label39);
this.splitContainer5.Panel1.Controls.Add(this.txtCoid);
this.splitContainer5.Panel1.Controls.Add(this.label40);
//
// splitContainer5.Panel2
//
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(1283, 475);
this.splitContainer5.SplitterDistance = 357;
this.splitContainer5.SplitterWidth = 1;
this.splitContainer5.TabIndex = 2;
//
// pnlEmpty
//
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(310, 5);
this.pnlEmpty.Name = "pnlEmpty";
this.pnlEmpty.Size = new System.Drawing.Size(43, 25);
this.pnlEmpty.Style.Alignment = System.Drawing.StringAlignment.Center;
this.pnlEmpty.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
this.pnlEmpty.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
this.pnlEmpty.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
this.pnlEmpty.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.pnlEmpty.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
this.pnlEmpty.Style.GradientAngle = 90;
this.pnlEmpty.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
this.pnlEmpty.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
this.pnlEmpty.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.pnlEmpty.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.pnlEmpty.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
this.pnlEmpty.TabIndex = 417;
this.pnlEmpty.Text = "清空";
this.pnlEmpty.Click += new System.EventHandler(this.pnlEmpty_Click);
//
// txtSearch
//
this.txtSearch.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtSearch.Location = new System.Drawing.Point(73, 6);
this.txtSearch.Name = "txtSearch";
this.txtSearch.Size = new System.Drawing.Size(188, 23);
this.txtSearch.TabIndex = 60;
//
// label14
//
this.label14.AutoSize = true;
this.label14.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label14.Location = new System.Drawing.Point(3, 7);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(79, 20);
this.label14.TabIndex = 61;
this.label14.Text = "模糊查询:";
//
// label13
//
this.label13.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label13.AutoSize = true;
this.label13.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label13.Location = new System.Drawing.Point(292, 157);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(13, 17);
this.label13.TabIndex = 59;
this.label13.Text = "*";
//
// label12
//
this.label12.AutoSize = true;
this.label12.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label12.Location = new System.Drawing.Point(40, 155);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(65, 20);
this.label12.TabIndex = 58;
this.label12.Text = "手机号:";
//
// label10
//
this.label10.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label10.AutoSize = true;
this.label10.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label10.Location = new System.Drawing.Point(292, 316);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(13, 17);
this.label10.TabIndex = 56;
this.label10.Text = "*";
//
// txtDetailInfo
//
this.txtDetailInfo.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtDetailInfo.Location = new System.Drawing.Point(112, 312);
this.txtDetailInfo.Multiline = true;
this.txtDetailInfo.Name = "txtDetailInfo";
this.txtDetailInfo.Size = new System.Drawing.Size(173, 81);
this.txtDetailInfo.TabIndex = 55;
//
// txtTelNumber
//
this.txtTelNumber.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtTelNumber.Location = new System.Drawing.Point(111, 154);
this.txtTelNumber.Name = "txtTelNumber";
this.txtTelNumber.Size = new System.Drawing.Size(173, 23);
this.txtTelNumber.TabIndex = 57;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.Location = new System.Drawing.Point(27, 314);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(79, 20);
this.label1.TabIndex = 54;
this.label1.Text = "详细地址:";
//
// label8
//
this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label8.AutoSize = true;
this.label8.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label8.Location = new System.Drawing.Point(292, 250);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(13, 17);
this.label8.TabIndex = 51;
this.label8.Text = "*";
//
// label9
//
this.label9.AutoSize = true;
this.label9.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label9.Location = new System.Drawing.Point(49, 279);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(57, 20);
this.label9.TabIndex = 50;
this.label9.Text = "区/县:";
//
// txtCountyName
//
this.txtCountyName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtCountyName.Location = new System.Drawing.Point(112, 278);
this.txtCountyName.Name = "txtCountyName";
this.txtCountyName.Size = new System.Drawing.Size(173, 23);
this.txtCountyName.TabIndex = 49;
//
// label6
//
this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label6.AutoSize = true;
this.label6.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label6.Location = new System.Drawing.Point(292, 219);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(13, 17);
this.label6.TabIndex = 48;
this.label6.Text = "*";
//
// 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(69, 248);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(37, 20);
this.label7.TabIndex = 47;
this.label7.Text = "市:";
//
// txtCityName
//
this.txtCityName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtCityName.Location = new System.Drawing.Point(112, 247);
this.txtCityName.Name = "txtCityName";
this.txtCityName.Size = new System.Drawing.Size(173, 23);
this.txtCityName.TabIndex = 46;
//
// label5
//
this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label5.AutoSize = true;
this.label5.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(128)))));
this.label5.Location = new System.Drawing.Point(292, 281);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(13, 17);
this.label5.TabIndex = 45;
this.label5.Text = "*";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label4.Location = new System.Drawing.Point(69, 217);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(37, 20);
this.label4.TabIndex = 44;
this.label4.Text = "省:";
//
// txtProvinceName
//
this.txtProvinceName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtProvinceName.Location = new System.Drawing.Point(112, 216);
this.txtProvinceName.Name = "txtProvinceName";
this.txtProvinceName.Size = new System.Drawing.Size(173, 23);
this.txtProvinceName.TabIndex = 43;
//
// txtPostalCode
//
this.txtPostalCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtPostalCode.Location = new System.Drawing.Point(112, 185);
this.txtPostalCode.Name = "txtPostalCode";
this.txtPostalCode.Size = new System.Drawing.Size(173, 23);
this.txtPostalCode.TabIndex = 41;
//
// label3
//
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, 186);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(51, 20);
this.label3.TabIndex = 40;
this.label3.Text = "邮编:";
//
// txtUserName
//
this.txtUserName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtUserName.Location = new System.Drawing.Point(112, 123);
this.txtUserName.Name = "txtUserName";
this.txtUserName.Size = new System.Drawing.Size(173, 23);
this.txtUserName.TabIndex = 39;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label2.Location = new System.Drawing.Point(41, 124);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(65, 20);
this.label2.TabIndex = 38;
this.label2.Text = "收件人:";
//
// btnRefresh
//
this.btnRefresh.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
this.btnRefresh.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.btnRefresh.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnRefresh.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnRefresh.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnRefresh.ForeColor = System.Drawing.Color.White;
this.btnRefresh.Location = new System.Drawing.Point(264, 5);
this.btnRefresh.Name = "btnRefresh";
this.btnRefresh.Size = new System.Drawing.Size(43, 25);
this.btnRefresh.TabIndex = 36;
this.btnRefresh.Text = "查询";
this.btnRefresh.UseVisualStyleBackColor = false;
this.btnRefresh.Click += new System.EventHandler(this.btnRefresh_Click);
//
// btnCancel
//
this.btnCancel.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
this.btnCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnCancel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
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(111, 411);
this.btnCancel.Name = "btnCancel";
this.btnCancel.Size = new System.Drawing.Size(82, 25);
this.btnCancel.TabIndex = 35;
this.btnCancel.Text = "取消编辑";
this.btnCancel.UseVisualStyleBackColor = false;
this.btnCancel.Visible = false;
this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
//
// btnAddAddress
//
this.btnAddAddress.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton;
this.btnAddAddress.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btnAddAddress.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnAddAddress.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnAddAddress.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnAddAddress.ForeColor = System.Drawing.Color.White;
this.btnAddAddress.Location = new System.Drawing.Point(203, 411);
this.btnAddAddress.Name = "btnAddAddress";
this.btnAddAddress.Size = new System.Drawing.Size(82, 25);
this.btnAddAddress.TabIndex = 34;
this.btnAddAddress.Text = "添加地址";
this.btnAddAddress.UseVisualStyleBackColor = false;
this.btnAddAddress.Click += new System.EventHandler(this.btnAddress_Click);
//
// label34
//
this.label34.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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(292, 126);
this.label34.Name = "label34";
this.label34.Size = new System.Drawing.Size(13, 17);
this.label34.TabIndex = 29;
this.label34.Text = "*";
//
// label35
//
this.label35.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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(292, 95);
this.label35.Name = "label35";
this.label35.Size = new System.Drawing.Size(13, 17);
this.label35.TabIndex = 28;
this.label35.Text = "*";
//
// label36
//
this.label36.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
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(292, 64);
this.label36.Name = "label36";
this.label36.Size = new System.Drawing.Size(13, 17);
this.label36.TabIndex = 27;
this.label36.Text = "*";
//
// txtSupplierName
//
this.txtSupplierName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtSupplierName.Location = new System.Drawing.Point(112, 92);
this.txtSupplierName.Name = "txtSupplierName";
this.txtSupplierName.Size = new System.Drawing.Size(173, 23);
this.txtSupplierName.TabIndex = 21;
//
// label39
//
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(12, 93);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(93, 20);
this.label39.TabIndex = 20;
this.label39.Text = "供应商名称:";
//
// txtCoid
//
this.txtCoid.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtCoid.Location = new System.Drawing.Point(112, 61);
this.txtCoid.Name = "txtCoid";
this.txtCoid.Size = new System.Drawing.Size(173, 23);
this.txtCoid.TabIndex = 19;
//
// label40
//
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(25, 62);
this.label40.Name = "label40";
this.label40.Size = new System.Drawing.Size(80, 20);
this.label40.TabIndex = 18;
this.label40.Text = "供应商ID:";
//
// splitContainer1
//
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
this.splitContainer1.Location = new System.Drawing.Point(0, 5);
this.splitContainer1.Name = "splitContainer1";
this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
//
// splitContainer1.Panel1
//
this.splitContainer1.Panel1.Controls.Add(this.pbLoading);
this.splitContainer1.Panel1.Controls.Add(this.txtStreetName);
this.splitContainer1.Panel1.Controls.Add(this.label11);
this.splitContainer1.Panel1.Controls.Add(this.dgvUser);
this.splitContainer1.Panel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 0);
//
// splitContainer1.Panel2
//
this.splitContainer1.Panel2.Controls.Add(this.ucSplitPage1);
this.splitContainer1.Panel2MinSize = 20;
this.splitContainer1.Size = new System.Drawing.Size(920, 465);
this.splitContainer1.SplitterDistance = 436;
this.splitContainer1.TabIndex = 2;
//
// pbLoading
//
this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None;
this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue;
this.pbLoading.Location = new System.Drawing.Point(435, 193);
this.pbLoading.Name = "pbLoading";
this.pbLoading.Size = new System.Drawing.Size(50, 50);
this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.pbLoading.TabIndex = 54;
this.pbLoading.TabStop = false;
//
// txtStreetName
//
this.txtStreetName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtStreetName.Location = new System.Drawing.Point(86, 43);
this.txtStreetName.Name = "txtStreetName";
this.txtStreetName.Size = new System.Drawing.Size(173, 23);
this.txtStreetName.TabIndex = 52;
this.txtStreetName.Visible = false;
//
// label11
//
this.label11.AutoSize = true;
this.label11.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label11.Location = new System.Drawing.Point(29, 44);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(51, 20);
this.label11.TabIndex = 53;
this.label11.Text = "街道:";
this.label11.Visible = false;
//
// dgvUser
//
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;
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;
this.dgvUser.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvUser.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colId,
this.colCoid,
this.colSupplierName,
this.colUserName,
this.colTelNumber,
this.colPostalCode,
this.colProvinceName,
this.colCityName,
this.colCountyName,
this.colStreetName,
this.colDetailInfo,
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;
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(3, 0);
this.dgvUser.MultiSelectCheckBox = true;
this.dgvUser.Name = "dgvUser";
this.dgvUser.ReadOnly = true;
this.dgvUser.RowTemplate.Height = 23;
this.dgvUser.Size = new System.Drawing.Size(914, 436);
this.dgvUser.TabIndex = 1;
this.dgvUser.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvUser_CellContentClick);
//
// ucSplitPage1
//
this.ucSplitPage1.CurrentPage = 1;
this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right;
this.ucSplitPage1.IsShowPageSize = true;
this.ucSplitPage1.Location = new System.Drawing.Point(431, 0);
this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0);
this.ucSplitPage1.Name = "ucSplitPage1";
this.ucSplitPage1.PageSize = 50;
this.ucSplitPage1.Size = new System.Drawing.Size(489, 25);
this.ucSplitPage1.TabIndex = 5;
this.ucSplitPage1.TotalPage = 1;
this.ucSplitPage1.PageChange += new System.Action<object>(this.ucSplitPage1_PageChange);
//
// colId
//
this.colId.HeaderText = "id";
this.colId.Name = "colId";
this.colId.ReadOnly = true;
this.colId.Visible = false;
//
// colCoid
//
this.colCoid.FillWeight = 130F;
this.colCoid.HeaderText = "供应商ID";
this.colCoid.Name = "colCoid";
this.colCoid.ReadOnly = true;
//
// colSupplierName
//
this.colSupplierName.FillWeight = 150F;
this.colSupplierName.HeaderText = "供应商名称";
this.colSupplierName.Name = "colSupplierName";
this.colSupplierName.ReadOnly = true;
//
// colUserName
//
this.colUserName.HeaderText = "收件人";
this.colUserName.Name = "colUserName";
this.colUserName.ReadOnly = true;
//
// colTelNumber
//
this.colTelNumber.HeaderText = "手机号";
this.colTelNumber.Name = "colTelNumber";
this.colTelNumber.ReadOnly = true;
//
// colPostalCode
//
this.colPostalCode.HeaderText = "邮编";
this.colPostalCode.Name = "colPostalCode";
this.colPostalCode.ReadOnly = true;
//
// colProvinceName
//
this.colProvinceName.HeaderText = "省";
this.colProvinceName.Name = "colProvinceName";
this.colProvinceName.ReadOnly = true;
//
// colCityName
//
this.colCityName.HeaderText = "市";
this.colCityName.Name = "colCityName";
this.colCityName.ReadOnly = true;
//
// colCountyName
//
this.colCountyName.HeaderText = "区/县";
this.colCountyName.Name = "colCountyName";
this.colCountyName.ReadOnly = true;
//
// colStreetName
//
this.colStreetName.HeaderText = "街道";
this.colStreetName.Name = "colStreetName";
this.colStreetName.ReadOnly = true;
this.colStreetName.Visible = false;
//
// colDetailInfo
//
this.colDetailInfo.FillWeight = 300F;
this.colDetailInfo.HeaderText = "详细地址";
this.colDetailInfo.Name = "colDetailInfo";
this.colDetailInfo.ReadOnly = true;
//
// editColumn
//
this.editColumn.HeaderText = "编辑";
this.editColumn.Name = "editColumn";
this.editColumn.ReadOnly = true;
this.editColumn.Resizable = System.Windows.Forms.DataGridViewTriState.True;
this.editColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
//
// deleteColumn
//
this.deleteColumn.HeaderText = "删除";
this.deleteColumn.Name = "deleteColumn";
this.deleteColumn.ReadOnly = true;
//
// Get1688AddressForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.BackColor = System.Drawing.Color.White;
this.ClientSize = new System.Drawing.Size(1283, 475);
this.Controls.Add(this.splitContainer5);
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.KeyPreview = true;
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
this.Name = "Get1688AddressForm";
this.Text = "1688地址管理";
this.Load += new System.EventHandler(this.SubAccountForm_Load);
this.splitContainer5.Panel1.ResumeLayout(false);
this.splitContainer5.Panel1.PerformLayout();
this.splitContainer5.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer5)).EndInit();
this.splitContainer5.ResumeLayout(false);
this.splitContainer1.Panel1.ResumeLayout(false);
this.splitContainer1.Panel1.PerformLayout();
this.splitContainer1.Panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
this.splitContainer1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dgvUser)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.SplitContainer splitContainer5;
private UserControls.ButtonEx btnCancel;
private UserControls.ButtonEx btnAddAddress;
private System.Windows.Forms.Label label34;
private System.Windows.Forms.Label label35;
private System.Windows.Forms.Label label36;
private System.Windows.Forms.TextBox txtSupplierName;
private System.Windows.Forms.Label label39;
private System.Windows.Forms.TextBox txtCoid;
private System.Windows.Forms.Label label40;
private UserComponent.DataGridViewEx dgvUser;
private UserControls.ButtonEx btnRefresh;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.TextBox txtStreetName;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.Label label9;
private System.Windows.Forms.TextBox txtCountyName;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.TextBox txtCityName;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.TextBox txtProvinceName;
private System.Windows.Forms.TextBox txtPostalCode;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.TextBox txtUserName;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.TextBox txtDetailInfo;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.SplitContainer splitContainer1;
private UserControls.UcSplitPage ucSplitPage1;
private System.Windows.Forms.Label label12;
private System.Windows.Forms.TextBox txtTelNumber;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.PictureBox pbLoading;
private System.Windows.Forms.Label label14;
private System.Windows.Forms.TextBox txtSearch;
private DevComponents.DotNetBar.PanelEx pnlEmpty;
private System.Windows.Forms.DataGridViewTextBoxColumn colId;
private System.Windows.Forms.DataGridViewTextBoxColumn colCoid;
private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierName;
private System.Windows.Forms.DataGridViewTextBoxColumn colUserName;
private System.Windows.Forms.DataGridViewTextBoxColumn colTelNumber;
private System.Windows.Forms.DataGridViewTextBoxColumn colPostalCode;
private System.Windows.Forms.DataGridViewTextBoxColumn colProvinceName;
private System.Windows.Forms.DataGridViewTextBoxColumn colCityName;
private System.Windows.Forms.DataGridViewTextBoxColumn colCountyName;
private System.Windows.Forms.DataGridViewTextBoxColumn colStreetName;
private System.Windows.Forms.DataGridViewTextBoxColumn colDetailInfo;
private System.Windows.Forms.DataGridViewLinkColumn editColumn;
private System.Windows.Forms.DataGridViewLinkColumn deleteColumn;
}
}
+281
View File
@@ -0,0 +1,281 @@
using AllBase;
using AllBase.Model.Result;
using TemuKJD.BaseForms;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Work;
using NaiBa.Util.Extension;
using Newtonsoft.Json.Linq;
using AllBase.Model.Result.WXResult;
using System.Threading;
namespace TemuKJD.ToolForms
{
public partial class Get1688AddressForm : BaseForm
{
public CancellationTokenSource cancellationTokenSource { get; set; } = new CancellationTokenSource();
public static List<WX1688AddressInfo> lstAddressInfo { get; set; } = new List<WX1688AddressInfo>();
public Get1688AddressForm()
{
InitializeComponent();
}
private void SubAccountForm_Load(object sender, EventArgs e)
{
this.dgvUser.BackgroundColor = Color.White;
Get1688Address();
}
private void btnAddress_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(txtCoid.Text))
{
BaseMsgForm.ShowError("供应商ID不能为空");
return;
}
if (string.IsNullOrWhiteSpace(txtSupplierName.Text))
{
BaseMsgForm.ShowError("供应商名称不能为空");
return;
}
if (string.IsNullOrWhiteSpace(txtUserName.Text))
{
BaseMsgForm.ShowError("收件人不能为空");
return;
}
if (string.IsNullOrWhiteSpace(txtProvinceName.Text))
{
BaseMsgForm.ShowError("省不能为空");
return;
}
if (string.IsNullOrWhiteSpace(txtCityName.Text))
{
BaseMsgForm.ShowError("市不能为空");
return;
}
if (string.IsNullOrWhiteSpace(txtCountyName.Text))
{
BaseMsgForm.ShowError("区不能为空");
return;
}
if (txtTelNumber.Text.Trim().Length != 11)
{
BaseMsgForm.ShowError("手机号格式不正确");
return;
}
if (string.IsNullOrWhiteSpace(txtDetailInfo.Text))
{
BaseMsgForm.ShowError("详细地址不能为空");
return;
}
var jAfterSale = new JObject();
jAfterSale["address_id"] = null;
jAfterSale["user_name"] = txtUserName.Text.Trim();
jAfterSale["tel_number"] = txtTelNumber.Text.Trim();
jAfterSale["postal_code"] = txtPostalCode.Text.Trim();
jAfterSale["province_name"] = txtProvinceName.Text.Trim();
jAfterSale["city_name"] = txtCityName.Text.Trim();
jAfterSale["county_name"] = txtCountyName.Text.Trim();
jAfterSale["street_name"] = "";
jAfterSale["detail_info"] = txtDetailInfo.Text.Trim();
jAfterSale["number"] = txtCoid.Text.Trim();
jAfterSale["name"] = txtSupplierName.Text.Trim();
StringBuilder data = new StringBuilder();
data.Append(UserLogin.GetSignaturex());
data.Append("&coid=" + GetHtml.UrlEncodeUtf8(txtCoid.Text.Trim()));
data.Append("&after_sale_json=" + GetHtml.UrlEncodeUtf8(JsonHelper.SerializeObject(jAfterSale)));
data.Append("&supplier_name=" + GetHtml.UrlEncodeUtf8(txtSupplierName.Text.Trim()));
data.Append("&type=1688");
string url = BaseClass.BuildObjString("product/wx_add_mdy_after_sale");
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
if (!html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data.ToString()).Trim();
if (html.Contains("\"code\":200"))
{
btnAddAddress.Text = "添加地址";
EmptyInput();
btnCancel.Visible = false;
Get1688Address();
}
else
{
var msg = BaseRegex.GetStringJson(ref html, "msg");
if (string.IsNullOrEmpty(msg))
msg = html;
BaseMsgForm.ShowError("出现异常,添加失败" + msg, "错误");
return;
}
}
private void EmptyInput()
{
txtCityName.Clear();
txtCoid.Clear();
txtCountyName.Clear();
txtDetailInfo.Clear();
txtPostalCode.Clear();
txtProvinceName.Clear();
txtStreetName.Clear();
txtSupplierName.Clear();
txtTelNumber.Clear();
txtUserName.Clear();
}
private void Get1688Address(int page = 1)
{
dgvUser.Rows.Clear();
lstAddressInfo.Clear();
pbLoading.Visible = true;
if (cancellationTokenSource != null)
cancellationTokenSource.Cancel();
cancellationTokenSource = new CancellationTokenSource();
Task.Run(() =>
{
string url = BaseClass.BuildObjString("product/wx_get_after_sale_list");
string data = UserLogin.GetSignaturex();
data += "&type=1688";
if (!string.IsNullOrEmpty(txtSearch.Text.Trim()))
data += "&detail=" + txtSearch.Text.Trim();
data += "&page=" + page;
data += "&page_size=" + ucSplitPage1.PageSize;
string html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data.ToString()).Trim();
if (html.Contains("\"code\":200"))
{
int count = BaseRegex.GetIntJson(ref html, "count");
int pageCount = Math.Ceiling(1.0 * count / ucSplitPage1.PageSize).ParseToInt();
pageCount = Math.Max(pageCount, 1);
ucSplitPage1.TotalPage = pageCount;
var userObj = JObject.Parse(html);
foreach (JObject addressObj in userObj["data"])
{
string addressStr = JsonHelper.SerializeObject(addressObj);
WX1688AddressInfo addressInfo = JsonHelper.DeserializeJsonToObject<WX1688AddressInfo>(addressStr);
lstAddressInfo.Add(addressInfo);
string addressDetailStr = addressInfo.after_sale_json;
string user_name = BaseRegex.GetStringJson(ref addressDetailStr, "user_name");
string tel_number = BaseRegex.GetStringJson(ref addressDetailStr, "tel_number");
string postal_code = BaseRegex.GetStringJson(ref addressDetailStr, "postal_code");
string province_name = BaseRegex.GetStringJson(ref addressDetailStr, "province_name");
string city_name = BaseRegex.GetStringJson(ref addressDetailStr, "city_name");
string county_name = BaseRegex.GetStringJson(ref addressDetailStr, "county_name");
string street_name = BaseRegex.GetStringJson(ref addressDetailStr, "street_name");
string detail_info = BaseRegex.GetStringJson(ref addressDetailStr, "detail_info");
Invoke(new Action(() =>
{
dgvUser.Rows.Add(
addressInfo.id,
addressInfo.coid,
addressInfo.supplier_name,
user_name,
tel_number,
postal_code,
province_name,
city_name,
county_name,
street_name,
detail_info,
"编辑",
"删除");
}));
}
}
Invoke(new Action(() =>
{
pbLoading.Visible = false;
}));
}, cancellationTokenSource.Token);
}
private void btnCancel_Click(object sender, EventArgs e)
{
btnAddAddress.Text = "添加地址";
EmptyInput();
btnCancel.Visible = false;
}
private void dgvUser_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex < 0 || e.RowIndex < 0)
return;
string columname = dgvUser.Columns[e.ColumnIndex].HeaderText;
string coId = dgvUser.Rows[e.RowIndex].Cells["colCoid"].Value.ToString();
if (columname == "编辑")
{
btnAddAddress.Text = "保存地址";
btnCancel.Visible = true;
btnCancel.Text = "取消編輯";
txtCoid.Text = dgvUser.Rows[e.RowIndex].Cells["colCoid"].Value.ToString();
txtSupplierName.Text = dgvUser.Rows[e.RowIndex].Cells["colSupplierName"].Value.ToString();
txtUserName.Text = dgvUser.Rows[e.RowIndex].Cells["colUserName"].Value.ToString();
txtPostalCode.Text = dgvUser.Rows[e.RowIndex].Cells["colPostalCode"].Value.ToString();
txtTelNumber.Text = dgvUser.Rows[e.RowIndex].Cells["colTelNumber"].Value.ToString();
txtProvinceName.Text = dgvUser.Rows[e.RowIndex].Cells["colProvinceName"].Value.ToString();
txtCityName.Text = dgvUser.Rows[e.RowIndex].Cells["colCityName"].Value.ToString();
txtCountyName.Text = dgvUser.Rows[e.RowIndex].Cells["colCountyName"].Value.ToString();
txtStreetName.Text = dgvUser.Rows[e.RowIndex].Cells["colStreetName"].Value.ToString();
txtDetailInfo.Text = dgvUser.Rows[e.RowIndex].Cells["colDetailInfo"].Value.ToString();
}
if (columname == "删除")
{
if (BaseMsgForm.ShowConfirm("是否删除,删除后无法再次添加", "提示").DialogResult == DialogResult.OK)
{
Delete(coId);
}
}
}
public void Delete(string coid)
{
StringBuilder data = new StringBuilder();
data.Append(UserLogin.GetSignaturex());
data.Append("&coid=" + coid);
string url = BaseClass.BuildObjString("product/wx_del_address");
string html = GetHtml.PostUtf8(url, data.ToString());
if (!string.IsNullOrEmpty(html))
{
if (html.Contains("\"code\":200"))
{
BaseMsgForm.ShowInfo("删除成功", "提示");
Get1688Address(ucSplitPage1.CurrentPage);
return;
}
var msg = BaseRegex.GetStringJson(ref html, "msg");
if (string.IsNullOrEmpty(msg))
msg = html;
BaseMsgForm.ShowError(msg, "错误");
return;
}
BaseMsgForm.ShowError("返回异常", "错误");
}
private void btnRefresh_Click(object sender, EventArgs e)
{
Get1688Address();
}
private void pnlEmpty_Click(object sender, EventArgs e)
{
txtSearch.Clear();
}
private void ucSplitPage1_PageChange(object obj)
{
Get1688Address(ucSplitPage1.CurrentPage);
}
}
}
+159
View File
@@ -0,0 +1,159 @@
<?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="colId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colCoid.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="colUserName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colTelNumber.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colPostalCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colProvinceName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colCityName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colCountyName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colStreetName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colDetailInfo.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>
<metadata name="deleteColumn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root>
+54 -28
View File
@@ -30,11 +30,11 @@ namespace TemuKJD.ToolForms
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
this.line1 = new DevComponents.DotNetBar.Controls.Line();
this.label2 = new System.Windows.Forms.Label();
this.btnImportCookie = new DevComponents.DotNetBar.PanelEx();
@@ -90,6 +90,8 @@ namespace TemuKJD.ToolForms
this.colMsg = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.chkSkip = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.btnGetDetail = new DevComponents.DotNetBar.PanelEx();
this.tabPage3 = new System.Windows.Forms.TabPage();
this.panel1 = new System.Windows.Forms.Panel();
this.pnlMultiLogin.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
@@ -103,6 +105,7 @@ namespace TemuKJD.ToolForms
this.tabPage2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).BeginInit();
this.tabPage3.SuspendLayout();
this.SuspendLayout();
//
// line1
@@ -564,7 +567,7 @@ namespace TemuKJD.ToolForms
this.splitContainer1.Panel2.Controls.Add(this.label2);
this.splitContainer1.Panel2.Controls.Add(this.line1);
this.splitContainer1.Size = new System.Drawing.Size(1404, 561);
this.splitContainer1.SplitterDistance = 461;
this.splitContainer1.SplitterDistance = 463;
this.splitContainer1.SplitterWidth = 3;
this.splitContainer1.TabIndex = 4;
//
@@ -574,13 +577,14 @@ namespace TemuKJD.ToolForms
this.ucTabControlMetro1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(174)))), ((int)(((byte)(157)))));
this.ucTabControlMetro1.Controls.Add(this.tabPage1);
this.ucTabControlMetro1.Controls.Add(this.tabPage2);
this.ucTabControlMetro1.Controls.Add(this.tabPage3);
this.ucTabControlMetro1.Dock = System.Windows.Forms.DockStyle.Fill;
this.ucTabControlMetro1.ItemSize = new System.Drawing.Size(72, 24);
this.ucTabControlMetro1.Location = new System.Drawing.Point(0, 0);
this.ucTabControlMetro1.Name = "ucTabControlMetro1";
this.ucTabControlMetro1.SelectedIndex = 0;
this.ucTabControlMetro1.ShowCloseButton = false;
this.ucTabControlMetro1.Size = new System.Drawing.Size(1404, 461);
this.ucTabControlMetro1.Size = new System.Drawing.Size(1404, 463);
this.ucTabControlMetro1.TabIndex = 462;
this.ucTabControlMetro1.TabSelectColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucTabControlMetro1.TabSelectTextColor = System.Drawing.Color.Gray;
@@ -593,7 +597,7 @@ namespace TemuKJD.ToolForms
this.tabPage1.Margin = new System.Windows.Forms.Padding(5);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage1.Size = new System.Drawing.Size(1396, 442);
this.tabPage1.Size = new System.Drawing.Size(1396, 431);
this.tabPage1.TabIndex = 0;
this.tabPage1.Text = "商品页面";
this.tabPage1.UseVisualStyleBackColor = true;
@@ -612,7 +616,7 @@ namespace TemuKJD.ToolForms
this.splitContainer2.Panel1.Controls.Add(this.btnNext);
this.splitContainer2.Panel1.Controls.Add(this.btnPrev);
this.splitContainer2.Panel1.Controls.Add(this.txtAddress);
this.splitContainer2.Size = new System.Drawing.Size(1390, 436);
this.splitContainer2.Size = new System.Drawing.Size(1390, 425);
this.splitContainer2.SplitterDistance = 26;
this.splitContainer2.TabIndex = 6;
//
@@ -654,7 +658,7 @@ namespace TemuKJD.ToolForms
this.tabPage2.Location = new System.Drawing.Point(4, 28);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(1396, 429);
this.tabPage2.Size = new System.Drawing.Size(1396, 431);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = "采集商品列表";
this.tabPage2.UseVisualStyleBackColor = true;
@@ -663,7 +667,7 @@ namespace TemuKJD.ToolForms
//
this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None;
this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue;
this.pbLoading.Location = new System.Drawing.Point(673, 187);
this.pbLoading.Location = new System.Drawing.Point(673, 188);
this.pbLoading.Name = "pbLoading";
this.pbLoading.Size = new System.Drawing.Size(50, 50);
this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
@@ -675,20 +679,20 @@ namespace TemuKJD.ToolForms
//
this.dgvProduct.AllowUserToAddRows = false;
this.dgvProduct.AllowUserToDeleteRows = false;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke;
this.dgvProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
dataGridViewCellStyle11.BackColor = System.Drawing.Color.WhiteSmoke;
this.dgvProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle11;
this.dgvProduct.AutoRowNumber = true;
this.dgvProduct.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
this.dgvProduct.BackgroundColor = System.Drawing.Color.White;
this.dgvProduct.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.dgvProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle12.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle12;
this.dgvProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colCheck,
@@ -714,7 +718,7 @@ namespace TemuKJD.ToolForms
this.dgvProduct.Name = "dgvProduct";
this.dgvProduct.ReadOnly = true;
this.dgvProduct.RowTemplate.Height = 23;
this.dgvProduct.Size = new System.Drawing.Size(1390, 423);
this.dgvProduct.Size = new System.Drawing.Size(1390, 425);
this.dgvProduct.TabIndex = 7;
this.dgvProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvProduct_CellContentClick);
//
@@ -750,8 +754,8 @@ namespace TemuKJD.ToolForms
//
// colGoodsName
//
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colGoodsName.DefaultCellStyle = dataGridViewCellStyle3;
dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colGoodsName.DefaultCellStyle = dataGridViewCellStyle13;
this.colGoodsName.HeaderText = "商品名称";
this.colGoodsName.Name = "colGoodsName";
this.colGoodsName.ReadOnly = true;
@@ -783,8 +787,8 @@ namespace TemuKJD.ToolForms
//
// colPrice
//
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colPrice.DefaultCellStyle = dataGridViewCellStyle4;
dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colPrice.DefaultCellStyle = dataGridViewCellStyle14;
this.colPrice.FillWeight = 40F;
this.colPrice.HeaderText = "供货价";
this.colPrice.Name = "colPrice";
@@ -843,8 +847,8 @@ namespace TemuKJD.ToolForms
//
// colMsg
//
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colMsg.DefaultCellStyle = dataGridViewCellStyle5;
dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colMsg.DefaultCellStyle = dataGridViewCellStyle15;
this.colMsg.FillWeight = 160F;
this.colMsg.HeaderText = "操作结果";
this.colMsg.Name = "colMsg";
@@ -888,6 +892,25 @@ namespace TemuKJD.ToolForms
this.btnGetDetail.Text = "采集商品详情";
this.btnGetDetail.Click += new System.EventHandler(this.btnGetDetail_Click);
//
// tabPage3
//
this.tabPage3.Controls.Add(this.panel1);
this.tabPage3.Location = new System.Drawing.Point(4, 28);
this.tabPage3.Name = "tabPage3";
this.tabPage3.Padding = new System.Windows.Forms.Padding(3);
this.tabPage3.Size = new System.Drawing.Size(1396, 431);
this.tabPage3.TabIndex = 2;
this.tabPage3.Text = "1688地址管理";
this.tabPage3.UseVisualStyleBackColor = true;
//
// panel1
//
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(3, 3);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(1390, 425);
this.panel1.TabIndex = 0;
//
// Get1688ProductForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
@@ -913,6 +936,7 @@ namespace TemuKJD.ToolForms
this.tabPage2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dgvProduct)).EndInit();
this.tabPage3.ResumeLayout(false);
this.ResumeLayout(false);
}
@@ -974,5 +998,7 @@ namespace TemuKJD.ToolForms
private System.Windows.Forms.DataGridViewImageColumn colWangwang;
private System.Windows.Forms.DataGridViewLinkColumn colDel;
private System.Windows.Forms.DataGridViewTextBoxColumn colMsg;
private System.Windows.Forms.TabPage tabPage3;
private System.Windows.Forms.Panel panel1;
}
}
+9 -1
View File
@@ -71,7 +71,15 @@ namespace TemuKJD.ToolForms
lst1688OneProductListInfo = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<_1688OneProductListInfo>>("1688_product_list_" + MainForm.ProcessCount);
if (lst1688OneProductListInfo == null)
lst1688OneProductListInfo = new ConcurrentList<_1688OneProductListInfo>();
var _1688AddressForm = new Get1688AddressForm();
_1688AddressForm.TopLevel = false;
_1688AddressForm.FormBorderStyle = FormBorderStyle.None;
_1688AddressForm.Dock = DockStyle.Fill;
this.panel1.Controls.Add(_1688AddressForm);
_1688AddressForm.Show();
pbLoading.Visible = true;
Task.Run(() =>
{
+36 -7
View File
@@ -72,7 +72,36 @@ namespace TemuKJD.UserComponent
this.Move += UcComboBoxMutiSelect_Move;
this.Resize += UcComboBoxMutiSelect_Resize;
this.SizeChanged += UcComboBoxMutiSelect_SizeChanged;
this.VisibleChanged += UcComboBoxMutiSelect_VisibleChanged;
this.ParentChanged += UcComboBoxMutiSelect_ParentChanged;
this.Disposed += UcComboBoxMutiSelect_Disposed;
});
}
private void UcComboBoxMutiSelect_Disposed(object sender, EventArgs e)
{
if (lblX != null)
lblX.Dispose();
}
private void UcComboBoxMutiSelect_ParentChanged(object sender, EventArgs e)
{
//lblX.Parent.Controls.Remove(lblX);
//lblX.Dispose();
//lblX = null;
if (this != null && !this.IsDisposed && this.Parent != null)
{
this.GetParentNotTable().Controls.Add(lblX);
UpdateClearLabel();
}
}
private void UcComboBoxMutiSelect_VisibleChanged(object sender, EventArgs e)
{
if (lblX != null && lblX.Visible != this.Visible)
lblX.Visible = this.Visible;
}
private void UcComboBoxMutiSelect_SizeChanged(object sender, EventArgs e)
@@ -92,7 +121,7 @@ namespace TemuKJD.UserComponent
private void UpdateClearLabel()
{
if (lblX == null)
if (lblX == null || lblX.Disposing || lblX.IsDisposed)
{
lblX = new Label();
lblX.Click += LblX_Click;
@@ -106,11 +135,11 @@ namespace TemuKJD.UserComponent
lblX.Width = 15;
lblX.Height = 19;
lblX.SendToBack();
Form form = this.FindForm();
form.Controls.Add(lblX);
//Form form = this.FindForm();
//form.Controls.Add(lblX);
this.GetParentNotTable().Controls.Add(lblX);
}
Point relativeLocation = this.GetRelativePosition();
//lblX.Location = new Point(relativeLocation.X + this.Width - 19 - lblX.Width, relativeLocation.Y + (this.Height - lblX.Height) / 2);
Point relativeLocation = this.GetRelativePosition(this.GetParentNotTable());
lblX.Location = new Point(relativeLocation.X + this.Width - 19 - lblX.Width, relativeLocation.Y + (this.Height - lblX.Height) / 2);
lblX.BringToFront();
}
@@ -125,7 +154,7 @@ namespace TemuKJD.UserComponent
else
{
this.lblX.Text = "×";
this.Text = "全部";
this.Text = DefaultText;
}
}
@@ -176,7 +205,7 @@ namespace TemuKJD.UserComponent
for (int index = 0; index < checkedListBox.Items.Count; index++)
{
var item = checkedListBox.Items[index];
if (this.Text == "全部" || this.Text.Split(new string[] { ";", ";", ",", "," }, StringSplitOptions.RemoveEmptyEntries).Contains(item.ParseToString()))
if (this.Text == DefaultText || this.Text.Split(new string[] { ";", ";", ",", "," }, StringSplitOptions.RemoveEmptyEntries).Contains(item.ParseToString()))
checkedListBox.SetItemChecked(index, true);
else
checkedListBox.SetItemChecked(index, false);
+1 -1
View File
@@ -284,8 +284,8 @@ namespace TemuKJD.UserControls
private DevComponents.DotNetBar.PanelEx pnlJump;
private System.Windows.Forms.Label label1;
private DevComponents.DotNetBar.Controls.TextBoxX txtJumpPage;
private System.Windows.Forms.Label lblTotal;
private System.Windows.Forms.Label lblPageSize;
public System.Windows.Forms.ComboBox cmbPageSize;
public System.Windows.Forms.Label lblTotal;
}
}
+2 -2
View File
@@ -88,11 +88,11 @@ namespace TemuKJD.UserControls
{
Invoke(new Action(() =>
{
pageSize = Math.Max(this.cmbPageSize.Text.ParseToInt(), 50);
pageSize = Math.Max(this.cmbPageSize.Text.ParseToInt(), 1);
}));
}
else
pageSize = Math.Max(this.cmbPageSize.Text.ParseToInt(), 50);
pageSize = Math.Max(this.cmbPageSize.Text.ParseToInt(), 1);
return pageSize;
}
set
@@ -342,7 +342,7 @@ namespace TemuKJD.WXForms.AdminForms
});
}
private void EditForm_SaveCompleteWithDescribe(object obj, object isAdd)
private void EditForm_SaveCompleteWithDescribe(object obj, object isAdd, object sender)
{
var shopInfoLst = obj as List<ShopLoginInfo>;
if (shopInfoLst != null)
+73 -44
View File
@@ -32,13 +32,13 @@ namespace TemuKJD.WXForms.ProductForms
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
this.chkUseWXComplateProd = new TemuKJD.UserComponent.UcCheckBox(this.components);
@@ -185,6 +185,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnClear = new DevComponents.DotNetBar.PanelEx();
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
this.panel1 = new System.Windows.Forms.Panel();
this.btnProdDb = new DevComponents.DotNetBar.PanelEx();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout();
@@ -933,6 +934,7 @@ namespace TemuKJD.WXForms.ProductForms
| System.Windows.Forms.AnchorStyles.Left)));
this.ucGroupBoxEx4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.ucGroupBoxEx4.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
this.ucGroupBoxEx4.Controls.Add(this.btnProdDb);
this.ucGroupBoxEx4.Controls.Add(this.chkWXComplateProd);
this.ucGroupBoxEx4.Controls.Add(this.txtAddCount);
this.ucGroupBoxEx4.Controls.Add(this.txtSearchGoodsName);
@@ -981,10 +983,10 @@ namespace TemuKJD.WXForms.ProductForms
// txtAddCount
//
this.txtAddCount.Font = new System.Drawing.Font("微软雅黑", 10F);
this.txtAddCount.Location = new System.Drawing.Point(245, 131);
this.txtAddCount.Location = new System.Drawing.Point(273, 131);
this.txtAddCount.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2);
this.txtAddCount.Name = "txtAddCount";
this.txtAddCount.Size = new System.Drawing.Size(36, 25);
this.txtAddCount.Size = new System.Drawing.Size(35, 25);
this.txtAddCount.TabIndex = 536;
this.txtAddCount.Text = "500";
//
@@ -1010,7 +1012,7 @@ namespace TemuKJD.WXForms.ProductForms
// pbSelectProd
//
this.pbSelectProd.Image = global::TemuKJD.Properties.Resources.loading_blue;
this.pbSelectProd.Location = new System.Drawing.Point(111, 131);
this.pbSelectProd.Location = new System.Drawing.Point(98, 131);
this.pbSelectProd.Name = "pbSelectProd";
this.pbSelectProd.Size = new System.Drawing.Size(25, 25);
this.pbSelectProd.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
@@ -1182,7 +1184,7 @@ namespace TemuKJD.WXForms.ProductForms
// lblGoodsCount
//
this.lblGoodsCount.AutoSize = true;
this.lblGoodsCount.Location = new System.Drawing.Point(136, 127);
this.lblGoodsCount.Location = new System.Drawing.Point(123, 127);
this.lblGoodsCount.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblGoodsCount.Name = "lblGoodsCount";
this.lblGoodsCount.Size = new System.Drawing.Size(71, 17);
@@ -1219,10 +1221,10 @@ namespace TemuKJD.WXForms.ProductForms
this.btnClearUpload.CanvasColor = System.Drawing.SystemColors.Control;
this.btnClearUpload.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnClearUpload.DisabledBackColor = System.Drawing.Color.Empty;
this.btnClearUpload.Location = new System.Drawing.Point(343, 131);
this.btnClearUpload.Location = new System.Drawing.Point(238, 131);
this.btnClearUpload.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2);
this.btnClearUpload.Name = "btnClearUpload";
this.btnClearUpload.Size = new System.Drawing.Size(58, 25);
this.btnClearUpload.Size = new System.Drawing.Size(33, 25);
this.btnClearUpload.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnClearUpload.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
this.btnClearUpload.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
@@ -1236,7 +1238,7 @@ namespace TemuKJD.WXForms.ProductForms
this.btnClearUpload.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnClearUpload.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
this.btnClearUpload.TabIndex = 548;
this.btnClearUpload.Text = "清空待传";
this.btnClearUpload.Text = "清空";
this.btnClearUpload.Click += new System.EventHandler(this.btnClearUpload_Click);
//
// cmbCateFilter1
@@ -1264,7 +1266,7 @@ namespace TemuKJD.WXForms.ProductForms
this.lblWaitToUp.Cursor = System.Windows.Forms.Cursors.Hand;
this.lblWaitToUp.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Underline, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblWaitToUp.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.lblWaitToUp.Location = new System.Drawing.Point(136, 144);
this.lblWaitToUp.Location = new System.Drawing.Point(123, 144);
this.lblWaitToUp.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0);
this.lblWaitToUp.Name = "lblWaitToUp";
this.lblWaitToUp.Size = new System.Drawing.Size(71, 17);
@@ -1278,9 +1280,9 @@ namespace TemuKJD.WXForms.ProductForms
this.btnRandomAdd.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnRandomAdd.DisabledBackColor = System.Drawing.Color.Empty;
this.btnRandomAdd.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnRandomAdd.Location = new System.Drawing.Point(283, 131);
this.btnRandomAdd.Location = new System.Drawing.Point(310, 131);
this.btnRandomAdd.Name = "btnRandomAdd";
this.btnRandomAdd.Size = new System.Drawing.Size(58, 25);
this.btnRandomAdd.Size = new System.Drawing.Size(56, 25);
this.btnRandomAdd.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnRandomAdd.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnRandomAdd.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
@@ -1308,7 +1310,7 @@ namespace TemuKJD.WXForms.ProductForms
//
// chkSkipQualification
//
this.chkSkipQualification.Location = new System.Drawing.Point(14, 133);
this.chkSkipQualification.Location = new System.Drawing.Point(7, 133);
this.chkSkipQualification.Name = "chkSkipQualification";
this.chkSkipQualification.Size = new System.Drawing.Size(87, 21);
this.chkSkipQualification.TabIndex = 806;
@@ -1712,19 +1714,19 @@ namespace TemuKJD.WXForms.ProductForms
//
this.dgvShop.AllowUserToAddRows = false;
this.dgvShop.AllowUserToDeleteRows = false;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke;
this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
dataGridViewCellStyle8.BackColor = System.Drawing.Color.WhiteSmoke;
this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle8;
this.dgvShop.AutoRowNumber = true;
this.dgvShop.BackgroundColor = System.Drawing.Color.White;
this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle9.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle9;
this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colSelect,
@@ -1742,6 +1744,7 @@ namespace TemuKJD.WXForms.ProductForms
this.colMessage});
this.dgvShop.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvShop.Location = new System.Drawing.Point(4, 0);
this.dgvShop.MultiSelectCheckBox = true;
this.dgvShop.Name = "dgvShop";
this.dgvShop.ReadOnly = true;
this.dgvShop.RowHeadersWidth = 25;
@@ -1943,19 +1946,19 @@ namespace TemuKJD.WXForms.ProductForms
//
this.dgvSelectProduct.AllowUserToAddRows = false;
this.dgvSelectProduct.AllowUserToDeleteRows = false;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke;
this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3;
dataGridViewCellStyle10.BackColor = System.Drawing.Color.WhiteSmoke;
this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle10;
this.dgvSelectProduct.AutoRowNumber = true;
this.dgvSelectProduct.BackgroundColor = System.Drawing.Color.White;
this.dgvSelectProduct.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle11.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle11;
this.dgvSelectProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvSelectProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.colCheck,
@@ -1982,6 +1985,7 @@ namespace TemuKJD.WXForms.ProductForms
this.colOpResult});
this.dgvSelectProduct.Dock = System.Windows.Forms.DockStyle.Fill;
this.dgvSelectProduct.Location = new System.Drawing.Point(0, 0);
this.dgvSelectProduct.MultiSelectCheckBox = true;
this.dgvSelectProduct.Name = "dgvSelectProduct";
this.dgvSelectProduct.ReadOnly = true;
this.dgvSelectProduct.RowTemplate.Height = 23;
@@ -2015,8 +2019,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colSupplierName
//
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5;
dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle12;
this.colSupplierName.Frozen = true;
this.colSupplierName.HeaderText = "店铺名称";
this.colSupplierName.Name = "colSupplierName";
@@ -2094,8 +2098,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colProductName
//
dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colProductName.DefaultCellStyle = dataGridViewCellStyle6;
dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colProductName.DefaultCellStyle = dataGridViewCellStyle13;
this.colProductName.HeaderText = "商品标题";
this.colProductName.Name = "colProductName";
this.colProductName.ReadOnly = true;
@@ -2155,8 +2159,8 @@ namespace TemuKJD.WXForms.ProductForms
//
// colAddTime
//
dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colAddTime.DefaultCellStyle = dataGridViewCellStyle7;
dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.colAddTime.DefaultCellStyle = dataGridViewCellStyle14;
this.colAddTime.HeaderText = "上传时间";
this.colAddTime.Name = "colAddTime";
this.colAddTime.ReadOnly = true;
@@ -2259,6 +2263,30 @@ namespace TemuKJD.WXForms.ProductForms
this.panel1.Size = new System.Drawing.Size(873, 86);
this.panel1.TabIndex = 189;
//
// btnProdDb
//
this.btnProdDb.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnProdDb.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnProdDb.DisabledBackColor = System.Drawing.Color.Empty;
this.btnProdDb.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnProdDb.Location = new System.Drawing.Point(368, 131);
this.btnProdDb.Name = "btnProdDb";
this.btnProdDb.Size = new System.Drawing.Size(33, 25);
this.btnProdDb.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnProdDb.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnProdDb.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnProdDb.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
this.btnProdDb.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
this.btnProdDb.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
this.btnProdDb.Style.ForeColor.Color = System.Drawing.Color.White;
this.btnProdDb.Style.GradientAngle = 90;
this.btnProdDb.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
this.btnProdDb.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnProdDb.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnProdDb.TabIndex = 820;
this.btnProdDb.Text = "选品";
this.btnProdDb.Click += new System.EventHandler(this.btnProdDb_Click);
//
// WXDBProdUploadForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
@@ -2458,5 +2486,6 @@ namespace TemuKJD.WXForms.ProductForms
private UserComponent.UcCheckBox chkSkipQualification;
private UserComponent.UcCheckBox chkWXComplateProd;
private UserComponent.UcCheckBox chkUseWXComplateProd;
private DevComponents.DotNetBar.PanelEx btnProdDb;
}
}
@@ -2302,11 +2302,56 @@ namespace TemuKJD.WXForms.ProductForms
{
}
}
if (string.IsNullOrEmpty(afterSaleAddress))
{
return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"售后地址信息获取失败\"}";
}
}
if (dbProd.product_get_type_text == "1688厂家")
{
var urlAfterSale = BaseClass.BuildObjString("product/wx_get_after_sale");
var dataAfterSale = Work.UserLogin.GetSignaturex();
dataAfterSale += "&coid=" + dbProd.from_shop_id;
var htmlAfterSale = GetHtml.PostUtf8(urlAfterSale, dataAfterSale);
if (string.IsNullOrEmpty(htmlAfterSale) || !htmlAfterSale.Contains("\"code\":200"))
htmlAfterSale = GetHtml.PostUtf8(urlAfterSale, dataAfterSale);
if (string.IsNullOrEmpty(htmlAfterSale) || !htmlAfterSale.Contains("\"code\":200"))
{
}
else
{
if (htmlAfterSale.Contains("\"data\":\"\""))
{
}
else
{
try
{
afterSaleAddress = JsonHelper.SerializeObject(JsonHelper.JObjectParse(htmlAfterSale)["data"]);
}
catch
{
}
}
}
if (string.IsNullOrEmpty(afterSaleAddress))
{
return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"售后地址信息获取失败\"}";
}
}
if (!string.IsNullOrEmpty(afterSaleAddress))
{
afterSaleDetail = BaseRegex.GetStringJson(ref afterSaleAddress, "detail_info");
if (string.IsNullOrEmpty(afterSaleDetail))
{
return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"售后地址详细信息获取失败\"}";
}
}
var addressRst = WXUpload.getAddress(shop, afterSaleDetail);
@@ -4366,6 +4411,7 @@ namespace TemuKJD.WXForms.ProductForms
PDDDBProdUserSelectCacheForm selectCacheForm = new PDDDBProdUserSelectCacheForm(lstTemuDBProductSelect);
selectCacheForm.ShowDialog();
NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_db_prod_upload_list", this.lstTemuDBProductSelect);
lblWaitToUp.Text = "待上传 " + lstTemuDBProductSelect.Count + " 件";
}
@@ -4779,6 +4825,24 @@ namespace TemuKJD.WXForms.ProductForms
wxUploadRule.IsUseWXComplateProd = chkUseWXComplateProd.Checked;
NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_upload_rule", wxUploadRule);
}
private void btnProdDb_Click(object sender, EventArgs e)
{
WXUserProdListForm.Instance.lstTemuDBProductSelect = this.lstTemuDBProductSelect;
WXUserProdListForm.Instance.SaveComplete -= dbProdList_SaveComplete;
WXUserProdListForm.Instance.SaveComplete += dbProdList_SaveComplete;
WXUserProdListForm.Instance.Show();
WXUserProdListForm.Instance.BringToFront();
}
private void dbProdList_SaveComplete(object obj)
{
NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_db_prod_upload_list", this.lstTemuDBProductSelect);
Invoke(new Action(() =>
{
lblWaitToUp.Text = "待上传 " + lstTemuDBProductSelect.Count + " 件";
}));
}
}
public class WXUpload
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,932 @@
using AllBase;
using AllBase.Helper;
using AllBase.Model.Param;
using AllBase.Model.Result;
using AllBase.Model.Result.PDDResult;
using AllBase.Model.Result.WXResult;
using NaiBa.Util;
using NaiBa.Util.Extension;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using TemuKJD.BaseForms;
using TemuKJD.BLL;
using TemuKJD.Extension;
using TemuKJD.PDDForms.ProductSelectForms;
using TemuKJD.ToolForms;
using Work;
namespace TemuKJD.WXForms.ProductForms
{
public partial class WXUserProdListForm : BaseGeneralForm
{
private static WXUserProdListForm instance = null;
public static WXUserProdListForm Instance { get { if (instance == null || instance.IsDisposed || instance.Disposing) instance = new WXUserProdListForm(); return instance; } }
ShopLoginInfo shop = null;
public CancellationTokenSource cancellationTokenSource { get; set; } = new CancellationTokenSource();
ConcurrentList<KJDDBProduct> lstTemuDbProduct = new ConcurrentList<KJDDBProduct>();
public ConcurrentList<TemuDBProductSelect> lstTemuDBProductSelect { get; set; } = new ConcurrentList<TemuDBProductSelect>();
public WXUserProdListForm()
{
InitializeComponent();
}
public WXUserProdListForm(ShopLoginInfo _shop)
{
InitializeComponent();
shop = _shop;
instance = this;
}
private void ProductListForm_Load(object sender, EventArgs e)
{
if (BaseClass.SaLevel == 1 && shop == null) // 一级管理员且不是选品状态
{
this.dgvDbProduct.Columns["colPriceText"].Visible = true;
Task.Run(() =>
{
PDDDBProdListForm.GetPDDProductGroup(new List<ComboBox> { cmbGroupFilter, });
GetPddProductCate();
});
}
else
{
this.dgvDbProduct.Columns["colPriceText"].Visible = true;
lblGroup.Visible = false;
}
if (BaseClass.MainPath != "binxixi")
{
this.dgvDbProduct.Columns["colExtCodePrice"].Visible = false;
this.dgvDbProduct.Columns["colEdit"].Visible = false;
}
btnSelect.Visible = true;
this.dgvDbProduct.Columns["col_select_product"].Visible = false;
this.dgvDbProduct.Columns["colAddTimes"].Visible = false;
this.ucSplitPage1.PageChange += UcSplitPage1_PageChange;
this.dgvDbProduct.AddSelectorColumn("colSelect");
this.dgvDbProduct.AddImgColumn("colSkuReplaceImg", "colSkuReplaceImgUrl");
this.dgvDbProduct.AddMergeColumnHeader(new List<string>() { "colExtCodePrice", "colEdit" }, "货号价格");
this.dgvDbProduct.AddMergeColumn(new List<string>() { "colExtCodePrice", "colEdit" });
//this.dtpStart.Value = new DateTime(2026, 3, 12, 0, 0, 0);
//this.dtpEnd.Value = new DateTime(2026, 3, 13, 13, 0, 0);
lblSetShop.Text = "";
lblSetShop.Tag = "";
ucSplitPage1.lblTotal.Visible = false;
ucSplitPage1.cmbPageSize.Items.Clear();
ucSplitPage1.cmbPageSize.Items.Add(50);
ucSplitPage1.cmbPageSize.Items.Add(100);
ucSplitPage1.cmbPageSize.Items.Add(200);
ucSplitPage1.cmbPageSize.Items.Add(500);
ucSplitPage1.cmbPageSize.Items.Add(1000);
ucSplitPage1.cmbPageSize.DropDownStyle = ComboBoxStyle.DropDownList;
ucSplitPage1.cmbPageSize.SelectedIndex = 0;
}
private void btnSearch_Click(object sender, EventArgs e)
{
if (this.ucSplitPage1.CurrentPage != 1)
this.ucSplitPage1.CurrentPage = 1;
else
SearchDbProd(1);
}
public void SearchDbProd(int page)
{
if (InvokeRequired)
{
Invoke(new Action(() =>
{
this.pbLoading.Visible = true;
this.dgvDbProduct.Rows.Clear();
lstTemuDbProduct.Clear();
}));
}
else
{
this.pbLoading.Visible = true;
this.dgvDbProduct.Rows.Clear();
lstTemuDbProduct.Clear();
}
Task.Run(() =>
{
int pageCount;
int pageSize = 100;
decimal seconds;
Invoke(new Action(() => { pageSize = this.ucSplitPage1.PageSize; }));
var list = GetProductList(out pageCount, out seconds, page, pageSize);
lstTemuDbProduct.AddRange(list);
this.ucSplitPage1.TotalPage = pageCount;
if (defaultBitmap == null)
defaultBitmap = new Bitmap(80, 80);
// 获取Bitmap的Graphics对象
using (Graphics g = Graphics.FromImage(defaultBitmap))
{
// 清除整个Bitmap为白色
g.Clear(Color.White);
}
foreach (var prod in lstTemuDbProduct)
{
string catName = prod.cat_name ?? prod.cat_id;
if (prod.wx_cat_leaf != null)
{
var catN = GlobalConfig.WxCatList.FirstOrDefault(c => c.cat_id == prod.wx_cat_leaf.ParseToString())?.name;
if (!string.IsNullOrEmpty(catN))
{
catName = catN;
}
}
if (prod.wx_cat_3 != null)
{
var catN = GlobalConfig.WxCatList.FirstOrDefault(c => c.cat_id == prod.wx_cat_3.ParseToString())?.name;
if (!string.IsNullOrEmpty(catN))
{
catName = catN + " >> " + catName;
}
}
if (prod.wx_cat_2 != null)
{
var catN = GlobalConfig.WxCatList.FirstOrDefault(c => c.cat_id == prod.wx_cat_2.ParseToString())?.name;
if (!string.IsNullOrEmpty(catN))
{
catName = catN + " >> " + catName;
}
}
if (prod.wx_cat_1 != null)
{
var catN = GlobalConfig.WxCatList.FirstOrDefault(c => c.cat_id == prod.wx_cat_1.ParseToString())?.name;
if (!string.IsNullOrEmpty(catN))
{
catName = catN + " >> " + catName;
}
}
Invoke(new Action(() =>
{
// 显示的价格需要加价10%最低1元
decimal price1 = (prod.price_text.Split('-').FirstOrDefault().Trim()).ParseToDecimal() * 100;
decimal price2 = (prod.price_text.Split('-').LastOrDefault().Trim()).ParseToDecimal() * 100;
price1 += Math.Max(100, price1 * 0.1m).ParseToInt();
price2 += Math.Max(100, price2 * 0.1m).ParseToInt();
price1 = price1 * 0.01m;
price2 = price2 * 0.01m;
int rowIndex = this.dgvDbProduct.Rows.Add(
false,
prod.id,
prod.from_shop_id,
prod.from_shop_name,
prod.product_name,
prod?.main_img?.Replace("https", "http") + "?imageView2/2/w/90/h/90",
defaultBitmap, // prod.main_img,
prod.sku_img_replace_url,
DataGridViewExtension.defaultBitmap,
(prod.spu_id).Trim(),
prod.skc_id,
prod.main_cat_name ?? prod.main_cat_id,
catName.Split('>').LastOrDefault()?.Trim(),
prod.ext_code,
(prod.secret_spu_id + " " + prod.real_spu_id + " " + prod.real_coid).Trim(),
prod.group,
price1.ToString("f2") + " - " + price2.ToString("f2"), //prod.price_text.Replace("-", " - "), // 母店价格
prod.ext_code_price * 0.01m, // 货号价格
"编辑",
prod.select_count,
prod.select_total_count,
prod.sale_count_text, // 销售数量
prod.notes,
prod.head_words,
prod.end_words,
prod.fission_words,
prod.product_get_type_text == "厂商直采" ? (prod.product_get_type_text + " " + prod.skc_id).Trim() : prod.product_get_type_text,
prod.special_prod_type,
prod.wx_safe_status,
prod.add_time.ToString("yy-MM-dd HH:mm"),
prod.mdy_time.ToString("yy-MM-dd HH:mm"),
"编辑",
"删除",
"认领");
dgvDbProduct.Rows[rowIndex].Height = dgvDbProduct.Columns["colMainImg"].Width;
}));
}
Invoke(new Action(() =>
{
ShowDgvImg();
this.pbLoading.Visible = false;
this.statusBar.lblTaskStatus.Text = "商品查询完毕";
#if DEBUG
this.statusBar.lblTaskStatus.Text += ",耗时:" + seconds;
#endif
}));
});
}
Bitmap defaultBitmap = null;
void ShowDgvImg()
{
Task.Run(() =>
{
foreach (DataGridViewRow row in this.dgvDbProduct.Rows)
{
if (row.Index > 0 && row.Cells["colMainImg"].Displayed == false)
{
Invoke(new Action(() =>
{
try
{
row.Cells["colMainImg"].Value = defaultBitmap;
}
catch
{
}
}));
continue;
}
if (row.Cells["colMainImg"].Value != null && row.Cells["colMainImg"].Value != defaultBitmap)
continue;
Image image = null;
string imgUrl = row.Cells["colImgUrl"]?.Value.ParseToString();
string getImgError = "";
if (!string.IsNullOrWhiteSpace(imgUrl))
image = GetHtml.GetUrlImg(imgUrl, out getImgError);
if (!string.IsNullOrEmpty(getImgError))
//BaseMsgForm.ShowError("图片加载失败 " + getImgError);
image = TemuKJD.Properties.Resources.errpic;
Invoke(new Action(() =>
{
try
{
row.Cells["colMainImg"].Value = image;
}
catch
{
}
}));
}
});
}
public List<KJDDBProduct> GetProductList(out int pageCount, out decimal seconds, int page = 1, int pageSize = 200)
{
List<KJDDBProduct> list = new List<KJDDBProduct>();
pageCount = 1;
seconds = 0;
var url = BaseClass.BuildPDDObjString("product/get_product_list");
if (shop != null && shop.DbId.ParseToInt() != 0)
url = BaseClass.BuildPDDObjString("product/get_product_list");
var data = "";
Invoke(new Action(() =>
{
data = UserLogin.GetSignaturex() +
"&page=" + page +
"&page_size=" + pageSize +
"&search_spu=" + txtSPU.Text.Trim() +
"&search_skc=" + txtSKC.Text.Trim() +
"&search_notes=" + txtNotes.Text.Trim() +
"&search_ext_code=" + txtExtCode.Text.Trim() +
"&search_group=" + cmbGroupFilter.Text.Trim() +
"&search_prod_name=" + txtProdName.Text.Trim() +
"&wx_safe_status=" + cmbWxSafe.Text.Trim().Replace("安全+未校验", "安全商品,未校验").Replace("违规商品", "");
//if (chkEditTime.Checked)
//{
// data += "&start_time=" + dtpStart.Value.ToString("yyyy-MM-dd HH:mm:ss");
// data += "&end_time=" + dtpEnd.Value.ToString("yyyy-MM-dd HH:mm:ss");
//}
if (cmbSourceType.Text != "厂商直采")
{
data += "&search_cat1=" + cmbCat1.Text.Trim();
data += "&search_cat=" + cmbCat2.Text.Trim();
}
else
{
var cate1 = GlobalConfig.WxCatList.FirstOrDefault(c => c.level == 1 && c.name == cmbCat1.Text.Trim());
var cates2 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate1?.cat_id).ToList();
var cate2 = cates2.FirstOrDefault(c => c.level == 2 && c.name == cmbCat2.Text.Trim());
var cates3 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate2?.cat_id).ToList();
var cate3 = cates3.FirstOrDefault(c => c.level == 3 && c.name == cmbCat3.Text.Trim());
if (!string.IsNullOrEmpty(cmbCat1.Text) && cate1 != null)
data += "&wx_cat_1=" + cate1.cat_id;
//else if (chkSkipQualification.Checked)
//{
// // 厂商直采普通店铺不要随特殊商品
// data += "&wx_cat_1=" + string.Join(",", GlobalConfig.WxCatList.Where(c => c.level == 1 && !(c.name == "图书" || c.name == "食品饮料" || c.name == "成人用品"))
// .Select(c => c.cat_id));
//}
if (!string.IsNullOrEmpty(cmbCat2.Text) && cate2 != null)
data += "&wx_cat_2=" + cate2.cat_id;
if (!string.IsNullOrEmpty(cmbCat3.Text) && cate3 != null)
data += "&wx_cat_3=" + cate3.cat_id;
}
if (!string.IsNullOrEmpty(txtSecretStyleCode.Text.Trim()))
{
data += "&search_secret_spu_ids=" + string.Join(",", txtSecretStyleCode.Text.Trim().Split(new string[] { " ", ",", "," }, StringSplitOptions.RemoveEmptyEntries));
}
if (!string.IsNullOrEmpty(cmbWxCat.Text))
{
data += "&has_wx_cat=" + (cmbWxCat.Text.Trim() == "是").ParseToString().ToLower();
}
if (!string.IsNullOrEmpty(cmbExportToOutServer.Text))
{
//data += "&has_send_to_out_server=" + (cmbExportToOutServer.Text.Trim() == "是").ParseToString().ToLower();
if (cmbExportToOutServer.Text.Trim() == "是")
data += "&send_to_out_server=1";
else if (cmbExportToOutServer.Text.Trim() == "否")
data += "&send_to_out_server=0";
else if (cmbExportToOutServer.Text.Trim() == "导出未拉回")
data += "&send_to_out_server=2";
}
if (cmbSourceType.Text.Trim() != "全部")
{
data += "&product_get_type=" + cmbSourceType.Text.Trim();
}
if (shop != null && !string.IsNullOrEmpty(shop.ShopId))
{
data += "&get_select_count=true";
data += "&select_shop_id=" + shop.ShopId;
}
if (this.cmbSort.Text == "认领总数")
{
data += "&sort_field=select_total_count";
}
if (!this.txtRealCoid.Text.Trim().IsNullOrEmpty())
{
data += "&real_coid=" + this.txtRealCoid.Text.Trim();
}
if (chkWXComplateProd.Checked)
data += "&has_wx_format=1";
}));
var html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
{
Invoke(new Action(() =>
{
BaseMsgForm.ShowError("获取商品列表失败,请重试!" + BaseRegex.GetStringJson(ref html, "msg"));
}));
return list;
}
seconds = BaseRegex.GetDecimalJson(ref html, "seconds");
int count = BaseRegex.GetIntJson(ref html, "count");
pageCount = Math.Ceiling(1.0 * count / pageSize).ParseToInt();
pageCount = Math.Max(pageCount, 1);
var jArr = JObject.Parse(html)["data"];
if (jArr.Count() == 0)
return list;
var sProd = JsonHelper.SerializeObject(jArr);
try
{
list = JsonHelper.DeserializeJsonToList<KJDDBProduct>(sProd);
return list;
}
catch (Exception ex)
{
return new List<KJDDBProduct>();
}
}
bool first = true;
private void ProductListForm_VisibleChanged(object sender, EventArgs e)
{
if (this.Visible == true && first)
{
first = false;
this.pbLoading.Visible = true;
SearchDbProd(this.ucSplitPage1.CurrentPage);
}
}
private void UcSplitPage1_PageChange(object obj)
{
SearchDbProd(this.ucSplitPage1.CurrentPage);
}
private void pnlEmpty_Click(object sender, EventArgs e)
{
this.cmbCat1.Text = "";
this.cmbCat2.Text = "";
this.txtExtCode.Text = "";
this.txtProdName.Text = "";
this.txtSKC.Text = "";
this.txtSPU.Text = "";
this.txtNotes.Text = "";
this.cmbGroupFilter.Text = "";
this.cmbSort.Text = "入库时间";
this.cmbSourceType.Text = "厂商直采";
this.cmbWxSafe.Text = "安全+未校验";
this.cmbWxCat.Text = "是";
this.cmbExportToOutServer.Text = "是";
this.txtSecretStyleCode.Text = "";
}
private void cmbCateFilter1_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbSourceType.Text != "厂商直采")
return;
cmbCat2.Text = "";
cmbCat2.Items.Clear();
var cate1 = GlobalConfig.WxCatList.FirstOrDefault(c => c.level == 1 && c.name == cmbCat1.Text.Trim());
var cates2 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate1?.cat_id).ToList();
foreach (var cate2 in cates2)
{
cmbCat2.Items.Add(cate2.name);
}
}
private void cmbCateFilter2_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbSourceType.Text != "厂商直采")
return;
cmbCat3.Text = "";
cmbCat3.Items.Clear();
var cate1 = GlobalConfig.WxCatList.FirstOrDefault(c => c.level == 1 && c.name == cmbCat1.Text.Trim());
var cates2 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate1?.cat_id).ToList();
var cate2 = cates2.FirstOrDefault(c => c.level == 2 && c.name == cmbCat2.Text.Trim());
var cates3 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate2?.cat_id).ToList();
foreach (var cate3 in cates3)
{
cmbCat3.Items.Add(cate3.name);
}
}
private void cmbCateFilter3_SelectedIndexChanged(object sender, EventArgs e)
{
var cate1 = GlobalConfig.WxCatList.FirstOrDefault(c => c.level == 1 && c.name == cmbCat1.Text.Trim());
var cates2 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate1?.cat_id).ToList();
var cate2 = cates2.FirstOrDefault(c => c.level == 2 && c.name == cmbCat1.Text.Trim());
var cates3 = GlobalConfig.WxCatList.Where(c => c.f_cat_id == cate2?.cat_id).ToList();
var cate3 = cates3.FirstOrDefault(c => c.level == 3 && c.name == cmbCat1.Text.Trim());
}
private void dgvDbProduct_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex < 0 || e.RowIndex < 0)
return;
string headerText = dgvDbProduct.Columns[e.ColumnIndex].HeaderText;
var dbId = dgvDbProduct.Rows[e.RowIndex].Cells["col_db_id"].Value.ParseToString();
var dbProduct = lstTemuDbProduct.FirstOrDefault(p => p.id.ToString() == dbId);
switch (headerText)
{
case "删除":
if (BaseMsgForm.ShowConfirm("确定删除商品吗?删除后不可恢复!").DialogResult == DialogResult.Cancel)
return;
DeleteProduct(dbId);
break;
case "详情":
case "编辑/详情":
//PDDDBProdEditForm editForm = new PDDDBProdEditForm(dbProduct);
//if (BaseClass.MainPath != "binxixi")
//{
// editForm.pnlSkuOption.Visible = false;
// editForm.txtProductName.ReadOnly = true;
// editForm.txtExtCode.ReadOnly = true;
// editForm.lblSkcId.Text = "仓库编码";
//}
//editForm.ShowDialog();
//dgvDbProduct.Rows[e.RowIndex].Cells["col_notes"].Value = dbProduct.notes;
//dgvDbProduct.Rows[e.RowIndex].Cells["col_ext_code"].Value = dbProduct.ext_code;
//dgvDbProduct.Rows[e.RowIndex].Cells["colHeadWords"].Value = dbProduct.head_words;
//dgvDbProduct.Rows[e.RowIndex].Cells["colEndWords"].Value = dbProduct.end_words;
//dgvDbProduct.Rows[e.RowIndex].Cells["colFissionWords"].Value = dbProduct.fission_words;
//dgvDbProduct.Rows[e.RowIndex].Cells["col_product_name"].Value = dbProduct.product_name;
//dgvDbProduct.Rows[e.RowIndex].Cells["colSkuReplaceImgUrl"].Value = dbProduct.sku_img_replace_url;
break;
case "主图":
ShowImgForm imgFrom = new ShowImgForm(dgvDbProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString().Replace("?imageView2/2/w/90/h/90", ""));
imgFrom.ShowDialog();
break;
case "认领":
//Task.Run(() => { SelectProduct(new KJDDBProduct[] { dbProduct }); });
break;
case "资料编码/真实上家":
try
{
string url = "";
if (string.IsNullOrEmpty(dbProduct.real_spu_id) || string.IsNullOrEmpty(dbProduct.real_coid))
url = "https://sc.scm121.com/manage/goods/qualitySupplier/goodsDetail/" + dbProduct.spu_id + "?itemCoId=" + dbProduct.skc_id + "&noBack=true";
else
url = "https://sc.scm121.com/manage/goods/qualitySupplier/goodsDetail/" + dbProduct.real_spu_id + "?itemCoId=" + dbProduct.real_coid + "&noBack=true";
Process.Start(new ProcessStartInfo(url)
{
UseShellExecute = true
});
}
catch
{
// 可能需要手动指定浏览器路径
Process.Start(new ProcessStartInfo("https://www.baidu.com") { UseShellExecute = true });
}
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;
}
}
private void DeleteProduct(string dbId, bool isUpdate = true)
{
var url = BaseClass.BuildPDDObjString("product/del_db_product");
var data = UserLogin.GetSignaturex() +
"&db_id=" + dbId;
var html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
{
BaseMsgForm.ShowError("删除商品失败,请重试!" + BaseRegex.GetStringJson(ref html, "msg"));
return;
}
else
{
if (isUpdate)
SearchDbProd(this.ucSplitPage1.CurrentPage);
}
}
private void btnSelect_Click(object sender, EventArgs e)
{
var lstProdId = dgvDbProduct.Rows.Cast<DataGridViewRow>().Where(row
=> row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["col_spu_id"]?.Value.ToString()).ToList();
var prodList = this.lstTemuDbProduct.Where(p => lstProdId.Contains(p.spu_id)).ToArray();
if (prodList.Count() > 0)
{
this.btnSelect.Enabled = false;
Task.Run(() =>
{
SelectProduct(prodList);
Invoke(new Action(() =>
{
this.btnSelect.Enabled = true;
BaseMsgForm.ShowInfo("添加成功");
}));
});
}
else
{
BaseMsgForm.ShowError("请选择商品!");
}
}
void SelectProduct(KJDDBProduct[] prodList)
{
foreach (var prod in prodList)
{
var selectProd = JsonHelper.DeserializeJsonToObject<TemuDBProductSelect>(JsonHelper.SerializeObject(prod));
selectProd.out_product_Id = prod.id.ToString();
selectProd.id = 1;
if (lstTemuDBProductSelect.Count > 0)
selectProd.id = lstTemuDBProductSelect.Max(p => p.id) + 1;
if (!string.IsNullOrEmpty(lblSetShop.Tag.ParseToString()))
selectProd.shop_id = lblSetShop.Tag.ParseToString();
this.lstTemuDBProductSelect.Add(selectProd);
}
this.OnSaveComplete(lstTemuDBProductSelect);
}
private void dgvDbProduct_Scroll(object sender, ScrollEventArgs e)
{
ShowDgvImg();
}
private void btnDelSelect_Click(object sender, EventArgs e)
{
var lstProdId = dgvDbProduct.Rows.Cast<DataGridViewRow>().Where(row
=> row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["col_spu_id"]?.Value.ToString()).ToList();
var prodList = this.lstTemuDbProduct.Where(p => lstProdId.Contains(p.spu_id)).ToArray();
if (BaseMsgForm.ShowConfirm("确定删除商品吗?删除后不可恢复!").DialogResult == DialogResult.Cancel)
return;
this.pbLoading.Visible = true;
this.statusBar.pgbTaskProgress.Maximum = lstProdId.Count;
this.statusBar.UpdateProgressBar(0);
Task.Run(() =>
{
foreach (var prod in prodList)
{
DeleteProduct(prod.id.ToString(), false);
Invoke(new Action(() =>
{
this.statusBar.UpdateProgressBar(this.statusBar.pgbTaskProgress.Value + 1);
this.statusBar.lblTaskStatus.Text = "正在删除 " + this.statusBar.pgbTaskProgress.Value + "/" + lstProdId.Count;
}));
}
SearchDbProd(this.ucSplitPage1.CurrentPage);
Invoke(new Action(() =>
{
pbLoading.Visible = false;
BaseMsgForm.ShowInfo("删除完成!");
}));
});
}
private void btnStopStop_Click(object sender, EventArgs e)
{
if (cancellationTokenSource != null)
cancellationTokenSource.Cancel();
Task.Run(() =>
{
Thread.Sleep(3000);
Invoke(new Action(() =>
{
if (cancellationTokenSource == null || cancellationTokenSource.IsCancellationRequested)
pbLoading.Visible = 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)
{
}
private void cmbSourceType_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbSourceType.Text != "厂商直采")
fillPddCate();
else
fillWxCate();
}
/// <summary>
/// 获取商品所有类目
/// </summary>
void GetPddProductCate()
{
var url = BaseClass.BuildObjString("product/get_pdd_product_cates");
var data = UserLogin.GetSignaturex();
var html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
{
BaseMsgForm.ShowError("商品类目获取失败,请重试!" + BaseRegex.GetStringJson(ref html, "msg"));
}
else
{
pdd_product_cates = BaseRegex.GetStringJson(ref html, "data");
}
Invoke(new Action(() =>
{
if (cmbSourceType.Text != "厂商直采")
{
fillPddCate();
}
else
{
fillWxCate();
}
}));
}
public string pdd_product_cates = "";
void fillPddCate()
{
cmbCat1.Items.Clear();
cmbCat2.Items.Clear();
cmbCat3.Items.Clear();
cmbCat1.Text = "";
cmbCat2.Text = "";
cmbCat3.Text = "";
foreach (var item in pdd_product_cates.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries))
{
cmbCat1.Items.Add(item);
}
cmbCat1.Items.Add("");
}
void fillWxCate()
{
cmbCat1.Items.Clear();
cmbCat2.Items.Clear();
cmbCat3.Items.Clear();
cmbCat1.Text = "";
cmbCat2.Text = "";
cmbCat3.Text = "";
foreach (var cate in GlobalConfig.WxCatList.Where(c => c.level == 1).ToList())
{
cmbCat1.Items.Add(cate.name);
}
}
private void btnGetShop_Click(object sender, EventArgs e)
{
GetShop();
}
void GetShop()
{
this.dgvSelectShop.Rows.Clear();
var list = GlobalConfig.ShopLoginList.ToList();
DataGridViewRow selectRow = null;
foreach (var shop in list)
{
Invoke(new Action(() =>
{
int rowIndex = this.dgvSelectShop.Rows.Add(
false,
shop.UserName,
shop.SubUserName,
shop.ShopId,
shop.ShopAccount,
shop.Notes
);
if (shop.ShopId == lblSetShop.Tag.ParseToString())
{
this.dgvSelectShop.Rows[rowIndex].Cells["colCheck"].Value = true;
selectRow = this.dgvSelectShop.Rows[rowIndex];
}
}));
}
foreach (DataGridViewRow row in dgvSelectShop.Rows)
{
string notes = cmbFilterShopNotes.Text.Trim().Trim(';');
if (notes == "全部")
notes = "";
List<string> notesLst = notes.Split(new string[] { ";", ";", ",", "," }, StringSplitOptions.RemoveEmptyEntries).ToList();
string groups = cmbFilterShopGroups.Text.Trim().Trim(';');
if (groups == "全部")
groups = "";
List<string> groupLst = groups.Split(new string[] { ";", ";", ",", "," }, StringSplitOptions.RemoveEmptyEntries).ToList();
if (!row.Cells["colShopName"].Value.ParseToString().Contains(txtFilterShopName.Text.Trim()))
{
row.Visible = false;
row.Cells["colCheck"].Value = false;
continue;
}
if (!string.IsNullOrWhiteSpace(notes) && !notesLst.Contains(row.Cells["colShopNotes"].Value.ParseToString()))
{
row.Visible = false;
row.Cells["colCheck"].Value = false;
continue;
}
if (!string.IsNullOrWhiteSpace(groups) && !groupLst.Contains(row.Cells["colShopGroup"].Value.ParseToString()))
{
row.Visible = false;
row.Cells["colCheck"].Value = false;
continue;
}
row.Visible = true;
}
if (selectRow == null || selectRow.Visible == false)
{
lblSetShop.Text = "";
lblSetShop.Tag = "";
}
}
private void dgvSelectShop_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex < 0 || e.RowIndex < 0)
return;
string headerText = dgvSelectShop.Columns[e.ColumnIndex].HeaderText;
string shopId = dgvSelectShop.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString();
string shopName = dgvSelectShop.Rows[e.RowIndex].Cells["colShopName"].Value.ParseToString();
if (headerText == "选择")
{
lblSetShop.Tag = "";
lblSetShop.Text = "";
foreach (DataGridViewRow row in dgvSelectShop.Rows)
{
if (row.Index == e.RowIndex)
continue;
row.Cells["colCheck"].Value = false;
}
dgvSelectShop.Rows[e.RowIndex].Cells["colCheck"].Value = !dgvSelectShop.Rows[e.RowIndex].Cells["colCheck"].Value.ParseToBool();
if (dgvSelectShop.Rows[e.RowIndex].Cells["colCheck"].Value.ParseToBool() == true)
{
lblSetShop.Tag = shopId;
lblSetShop.Text = "当前店铺:" + shopName;
}
}
}
private void btnSetShop_Click(object sender, EventArgs e)
{
cmbFilterShopNotes.Items.Clear();
foreach (var note in GlobalConfig.ShopLoginList.Select(s => s.Notes).Where(s => !s.IsNullOrEmpty()).Distinct())
{
cmbFilterShopNotes.Items.Add(note);
}
cmbFilterShopGroups.Items.Clear();
foreach (var group in GlobalConfig.ShopLoginList.Select(s => s.GroupName).Where(s => !s.IsNullOrEmpty()).Distinct())
{
cmbFilterShopGroups.Items.Add(group);
}
pnlSetShop.Visible = true;
GetShop();
}
private void btnCancel_Click(object sender, EventArgs e)
{
pnlSetShop.Visible = false;
foreach(DataGridViewRow row in dgvSelectShop.Rows)
{
row.Cells["colCheck"].Value = true;
}
}
private void btnRestore_Click(object sender, EventArgs e)
{
txtFilterShopName.Text = "";
cmbFilterShopNotes.Text = cmbFilterShopNotes.DefaultText;
cmbFilterShopGroups.Text = cmbFilterShopGroups.DefaultText;
}
}
}
@@ -0,0 +1,421 @@
<?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="colCheck.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colUserName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSubUserName.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="colShopName.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="colShopGroup.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSelect.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_db_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colFromShopId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colFromShopName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_product_name.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="colMainImg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSkuReplaceImgUrl.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSkuReplaceImg.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_spu_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_skc_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colMainCate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_cat_name.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_ext_code.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colStyleCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colGroup.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colPriceText.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colExtCodePrice.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colEdit.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colAddTimes.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSelectTotalCount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSaleCount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_notes.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colHeadWords.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colEndWords.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colFissionWords.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colGetType.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colSpProdType.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colWxSafe.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="colMdyTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_edit.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_delete.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="col_select_product.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ
AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA
OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT
AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj///////
///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP//
//////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ
mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4
mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ
mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ
mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ
mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ
mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ
mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY
//+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ
mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf
//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/
//uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv///
//+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP//
if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ
mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz
MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///
iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ
mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4
kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP//
/////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ
mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ
mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ
mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ
mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ
//85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ
mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ
mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ
mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT
mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj///////
///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn///
//////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ
mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ
mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ
mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ
mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj///////////
///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY//////
////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP
//////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4
/4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ
mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ
mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7
mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4
eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb////
///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ
mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj/////
/4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/
///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ
mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ
mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ
mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ
mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ
mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA
AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA
AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz
MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA
AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w
AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA
Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA
AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA
AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA
AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA
AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA
AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA
AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA
AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA
AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA
AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA
AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD/////
wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w==
</value>
</data>
</root>
+72 -62
View File
@@ -28,26 +28,27 @@
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WXShopAddEditForm));
this.panel2 = new System.Windows.Forms.Panel();
this.txtChatNick = new DevComponents.DotNetBar.Controls.TextBoxX();
this.label7 = new System.Windows.Forms.Label();
this.btnOk = new TemuKJD.UserControls.ButtonEx();
this.label8 = new System.Windows.Forms.Label();
this.txtNotes = new DevComponents.DotNetBar.Controls.TextBoxX();
this.lblAttention = new System.Windows.Forms.Label();
this.cmbGroup = new System.Windows.Forms.ComboBox();
this.txtBuyAccount = new DevComponents.DotNetBar.Controls.TextBoxX();
this.label6 = new System.Windows.Forms.Label();
this.txtChatAccount = new DevComponents.DotNetBar.Controls.TextBoxX();
this.label4 = new System.Windows.Forms.Label();
this.txtUploadAccount = new DevComponents.DotNetBar.Controls.TextBoxX();
this.label3 = new System.Windows.Forms.Label();
this.txtShopPassword = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.txtLoginName = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
this.txtChatNick = new DevComponents.DotNetBar.Controls.TextBoxX();
this.label7 = new System.Windows.Forms.Label();
this.chkSubAccount = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkNotes = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.chkShopGroup = new TemuKJD.UserComponent.UcCheckBox(this.components);
this.panel2.SuspendLayout();
this.SuspendLayout();
//
@@ -57,21 +58,21 @@
this.panel2.Controls.Add(this.txtChatNick);
this.panel2.Controls.Add(this.label7);
this.panel2.Controls.Add(this.btnOk);
this.panel2.Controls.Add(this.label8);
this.panel2.Controls.Add(this.txtNotes);
this.panel2.Controls.Add(this.lblAttention);
this.panel2.Controls.Add(this.cmbGroup);
this.panel2.Controls.Add(this.txtBuyAccount);
this.panel2.Controls.Add(this.label6);
this.panel2.Controls.Add(this.txtChatAccount);
this.panel2.Controls.Add(this.label4);
this.panel2.Controls.Add(this.txtUploadAccount);
this.panel2.Controls.Add(this.label3);
this.panel2.Controls.Add(this.txtShopPassword);
this.panel2.Controls.Add(this.label2);
this.panel2.Controls.Add(this.txtLoginName);
this.panel2.Controls.Add(this.label1);
this.panel2.Controls.Add(this.label5);
this.panel2.Controls.Add(this.chkSubAccount);
this.panel2.Controls.Add(this.chkNotes);
this.panel2.Controls.Add(this.chkShopGroup);
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(1, 33);
this.panel2.Name = "panel2";
@@ -79,6 +80,36 @@
this.panel2.TabIndex = 1;
this.panel2.Paint += new System.Windows.Forms.PaintEventHandler(this.panel2_Paint);
//
// txtChatNick
//
//
//
//
this.txtChatNick.Border.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.Class = "CrumbBarBackgroundKey";
this.txtChatNick.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.txtChatNick.Border.PaddingBottom = 2;
this.txtChatNick.Border.PaddingLeft = 2;
this.txtChatNick.Border.PaddingRight = 2;
this.txtChatNick.Border.PaddingTop = 2;
this.txtChatNick.Location = new System.Drawing.Point(91, 95);
this.txtChatNick.Name = "txtChatNick";
this.txtChatNick.ReadOnly = true;
this.txtChatNick.Size = new System.Drawing.Size(172, 23);
this.txtChatNick.TabIndex = 388;
//
// label7
//
this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(17, 98);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(68, 17);
this.label7.TabIndex = 387;
this.label7.Text = "子账户昵称";
//
// btnOk
//
this.btnOk.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
@@ -95,15 +126,6 @@
this.btnOk.UseVisualStyleBackColor = false;
this.btnOk.Click += new System.EventHandler(this.btnOk_Click);
//
// label8
//
this.label8.AutoSize = true;
this.label8.Location = new System.Drawing.Point(29, 131);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(56, 17);
this.label8.TabIndex = 386;
this.label8.Text = " 备注";
//
// txtNotes
//
//
@@ -202,15 +224,6 @@
this.txtChatAccount.Click += new System.EventHandler(this.txt_Click);
this.txtChatAccount.TextChanged += new System.EventHandler(this.txtChat_TextChanged);
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(29, 65);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(56, 17);
this.label4.TabIndex = 379;
this.label4.Text = " 子账户";
//
// txtUploadAccount
//
//
@@ -275,44 +288,41 @@
this.label1.TabIndex = 0;
this.label1.Text = "登录账号";
//
// label5
// chkSubAccount
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(29, 167);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(56, 17);
this.label5.TabIndex = 377;
this.label5.Text = "店铺分组";
this.chkSubAccount.AutoSize = true;
this.chkSubAccount.Checked = true;
this.chkSubAccount.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkSubAccount.Location = new System.Drawing.Point(30, 63);
this.chkSubAccount.Name = "chkSubAccount";
this.chkSubAccount.Size = new System.Drawing.Size(63, 21);
this.chkSubAccount.TabIndex = 389;
this.chkSubAccount.Text = "子账户";
this.chkSubAccount.UseVisualStyleBackColor = true;
//
// txtChatNick
// chkNotes
//
this.chkNotes.AutoSize = true;
this.chkNotes.Checked = true;
this.chkNotes.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkNotes.Location = new System.Drawing.Point(42, 129);
this.chkNotes.Name = "chkNotes";
this.chkNotes.Size = new System.Drawing.Size(51, 21);
this.chkNotes.TabIndex = 390;
this.chkNotes.Text = "备注";
this.chkNotes.UseVisualStyleBackColor = true;
//
// chkShopGroup
//
//
this.txtChatNick.Border.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid;
this.txtChatNick.Border.Class = "CrumbBarBackgroundKey";
this.txtChatNick.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.txtChatNick.Border.PaddingBottom = 2;
this.txtChatNick.Border.PaddingLeft = 2;
this.txtChatNick.Border.PaddingRight = 2;
this.txtChatNick.Border.PaddingTop = 2;
this.txtChatNick.Location = new System.Drawing.Point(91, 95);
this.txtChatNick.Name = "txtChatNick";
this.txtChatNick.ReadOnly = true;
this.txtChatNick.Size = new System.Drawing.Size(172, 23);
this.txtChatNick.TabIndex = 388;
//
// label7
//
this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(17, 98);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(68, 17);
this.label7.TabIndex = 387;
this.label7.Text = "子账户昵称";
this.chkShopGroup.AutoSize = true;
this.chkShopGroup.Checked = true;
this.chkShopGroup.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkShopGroup.Location = new System.Drawing.Point(18, 163);
this.chkShopGroup.Name = "chkShopGroup";
this.chkShopGroup.Size = new System.Drawing.Size(75, 21);
this.chkShopGroup.TabIndex = 391;
this.chkShopGroup.Text = "店铺分组";
this.chkShopGroup.UseVisualStyleBackColor = true;
//
// WXShopAddEditForm
//
@@ -340,18 +350,18 @@
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox txtLoginName;
private UserControls.ButtonEx btnOk;
private System.Windows.Forms.Label label5;
private DevComponents.DotNetBar.Controls.TextBoxX txtUploadAccount;
private System.Windows.Forms.Label label3;
private DevComponents.DotNetBar.Controls.TextBoxX txtBuyAccount;
private System.Windows.Forms.Label label6;
private DevComponents.DotNetBar.Controls.TextBoxX txtChatAccount;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.ComboBox cmbGroup;
private System.Windows.Forms.Label lblAttention;
private System.Windows.Forms.Label label8;
private DevComponents.DotNetBar.Controls.TextBoxX txtNotes;
private DevComponents.DotNetBar.Controls.TextBoxX txtChatNick;
private System.Windows.Forms.Label label7;
public UserComponent.UcCheckBox chkSubAccount;
public UserComponent.UcCheckBox chkNotes;
public UserComponent.UcCheckBox chkShopGroup;
}
}
+27 -15
View File
@@ -10,6 +10,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using AllBase;
namespace TemuKJD.WXForms.ShopForms
{
@@ -52,19 +53,28 @@ namespace TemuKJD.WXForms.ShopForms
shop.LoginName = this.txtLoginName.Text.Trim();
if (!string.IsNullOrEmpty(this.txtShopPassword.Text.Trim()))
shop.Password = DataOpenSSL.EncryptString(this.txtShopPassword.Text.Trim());
shop.GroupName = this.cmbGroup.Text;
shop.Notes = this.txtNotes.Text;
if (chkNotes.Checked)
shop.Notes = this.txtNotes.Text;
if (chkShopGroup.Checked)
shop.GroupName = this.cmbGroup.Text;
if (chkSubAccount.Checked)
shop.SubUserName = shopSubAccountTmp.SubUserName;
shop.CompanyName = AllBase.BaseClass.CompanyName;
foreach (var sp in lstShopLoginInfo)
{
sp.GroupName = this.cmbGroup.Text;
sp.Notes = this.txtNotes.Text;
sp.CompanyName = AllBase.BaseClass.CompanyName;
sp.SubUserName = shop.SubUserName;
if (chkNotes.Checked)
sp.Notes = this.txtNotes.Text;
if (chkShopGroup.Checked)
sp.GroupName = this.cmbGroup.Text;
if (chkSubAccount.Checked)
sp.SubUserName = shop.SubUserName;
}
this.OnSaveComplete(lstShopLoginInfo, isAdd);
this.OnSaveComplete(lstShopLoginInfo, isAdd, this);
this.Close();
}
@@ -131,26 +141,28 @@ namespace TemuKJD.WXForms.ShopForms
}
ShopLoginInfo shopSubAccountTmp;
private void txt_Click(object sender, EventArgs e)
{
WXSubAccountShopEditForm f = new WXSubAccountShopEditForm(shop);
shopSubAccountTmp = JsonHelper.DeserializeJsonToObject<ShopLoginInfo>(JsonHelper.SerializeObject(shop));
WXSubAccountShopEditForm f = new WXSubAccountShopEditForm(shopSubAccountTmp);
f.SaveComplete += F_SaveComplete;
f.ShowDialog();
}
private void F_SaveComplete(object obj)
{
var shop = obj as ShopLoginInfo;
if (shop != null)
var shopSubAccountTmp = obj as ShopLoginInfo;
if (shopSubAccountTmp != null)
{
this.txtBuyAccount.Text = shop.BuyAccount;
this.txtChatAccount.Text = shop.ChatAccount;
this.txtUploadAccount.Text = shop.UploadAccount;
this.txtBuyAccount.Text = shopSubAccountTmp.BuyAccount;
this.txtChatAccount.Text = shopSubAccountTmp.ChatAccount;
this.txtUploadAccount.Text = shopSubAccountTmp.UploadAccount;
this.txtChatAccount.Text = shop.SubUserName;
if (!string.IsNullOrEmpty(shop.SubUserName))
this.txtChatAccount.Text = shopSubAccountTmp.SubUserName;
if (!string.IsNullOrEmpty(shopSubAccountTmp.SubUserName))
{
var subUserNames = shop.SubUserName.Split(',').Where(su => !string.IsNullOrEmpty(su));
var subUserNames = shopSubAccountTmp.SubUserName.Split(',').Where(su => !string.IsNullOrEmpty(su));
var subUsers = WXSubAccountShopEditForm.lstAllSubAccount.Where(su => subUserNames.Contains(su.user_name));
this.txtChatNick.Text = string.Join(",", subUsers.Select(s => s.nick_name));
}
+3 -3
View File
@@ -288,7 +288,7 @@
this.cmbGroup.DropDownWidth = 1;
this.cmbGroup.FormattingEnabled = true;
this.cmbGroup.IntegralHeight = false;
this.cmbGroup.Location = new System.Drawing.Point(307, 5);
this.cmbGroup.Location = new System.Drawing.Point(307, 8);
this.cmbGroup.Margin = new System.Windows.Forms.Padding(0, 0, 0, 4);
this.cmbGroup.Name = "cmbGroup";
this.cmbGroup.Size = new System.Drawing.Size(48, 25);
@@ -314,7 +314,7 @@
this.cmbNotes.DropDownWidth = 1;
this.cmbNotes.FormattingEnabled = true;
this.cmbNotes.IntegralHeight = false;
this.cmbNotes.Location = new System.Drawing.Point(224, 5);
this.cmbNotes.Location = new System.Drawing.Point(224, 8);
this.cmbNotes.Margin = new System.Windows.Forms.Padding(0, 0, 0, 4);
this.cmbNotes.Name = "cmbNotes";
this.cmbNotes.Size = new System.Drawing.Size(48, 25);
@@ -447,7 +447,7 @@
this.cmbSubAccount.DropDownWidth = 1;
this.cmbSubAccount.FormattingEnabled = true;
this.cmbSubAccount.IntegralHeight = false;
this.cmbSubAccount.Location = new System.Drawing.Point(402, 5);
this.cmbSubAccount.Location = new System.Drawing.Point(402, 8);
this.cmbSubAccount.Margin = new System.Windows.Forms.Padding(0, 0, 0, 4);
this.cmbSubAccount.Name = "cmbSubAccount";
this.cmbSubAccount.Size = new System.Drawing.Size(48, 25);
+4 -2
View File
@@ -255,8 +255,9 @@ namespace TemuKJD.WXForms.ShopForms
btnRefreshCookie_Click(null, null);
}
private void Sae_SaveComplete(object obj, object isAdd)
private void Sae_SaveComplete(object obj, object isAdd, object sender)
{
WXShopAddEditForm saeForm = sender as WXShopAddEditForm;
var shopInfoLst = obj as List<ShopLoginInfo>;
if (shopInfoLst != null)
{
@@ -296,7 +297,7 @@ namespace TemuKJD.WXForms.ShopForms
this.statusBar.pgbTaskProgress.Maximum = shopInfoLst.Count;
i++;
}));
ShopBLL.MdyPDDServerShopSubInfo(shopInfo);
ShopBLL.MdyPDDWXServerShopSubInfo(shopInfo, saeForm.chkNotes.Checked, saeForm.chkShopGroup.Checked, saeForm.chkSubAccount.Checked);
}
RefreshDataGridView(false);
//btnRefreshCookie_Click(null, null);
@@ -1156,6 +1157,7 @@ namespace TemuKJD.WXForms.ShopForms
List<string> shopNameList = GetCheckedList();
List<ShopLoginInfo> shops = GlobalConfig.ShopLoginList.Where(s => shopNameList.Contains(s.ShopId)).ToList();
WXShopAddEditForm editForm = new WXShopAddEditForm(shops);
editForm.chkSubAccount.Checked = editForm.chkShopGroup.Checked = editForm.chkNotes.Checked = false;
editForm.SaveCompleteWithDescribe += Sae_SaveComplete;
editForm.ShowDialog();
}
+28 -10
View File
@@ -707,22 +707,40 @@ offCountPara,false;offProductPara,100;IrregularitiesPara,true;noNeerPara,true;no
}
//ZipFile.ExtractToDirectory(tempFile, upTempPath);
//File.Delete(tempFile);
if (!FileBase.Exists("temp\\wxCat"))
//if (!FileBase.Exists("temp\\wxCat"))
//{
// if(GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "wxCat.zip", "temp\\wxCat.dll" + ".bak"))
// {
// FileBase.Move("temp\\wxCat.dll" + ".bak", "temp\\wxCat.zip");
// ZipFile.ExtractToDirectory(Path.Combine(Environment.CurrentDirectory, "temp\\wxCat.zip"), Path.Combine(Environment.CurrentDirectory, "temp"));
// File.Delete(Path.Combine(Environment.CurrentDirectory, "temp\\wxCat.zip"));
// }
//}
if (!FileBase.Exists("temp\\wxCat60323"))
{
if(GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "wxCat.zip", "temp\\wxCat.dll" + ".bak"))
if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "wxCat60323.zip", "temp\\wxCat60323.dll" + ".bak"))
{
FileBase.Move("temp\\wxCat.dll" + ".bak", "temp\\wxCat.zip");
ZipFile.ExtractToDirectory(Path.Combine(Environment.CurrentDirectory, "temp\\wxCat.zip"), Path.Combine(Environment.CurrentDirectory, "temp"));
File.Delete(Path.Combine(Environment.CurrentDirectory, "temp\\wxCat.zip"));
FileBase.Move("temp\\wxCat60323.dll" + ".bak", "temp\\wxCat60323.zip");
ZipFile.ExtractToDirectory(Path.Combine(Environment.CurrentDirectory, "temp\\wxCat60323.zip"), Path.Combine(Environment.CurrentDirectory, "temp"));
File.Delete(Path.Combine(Environment.CurrentDirectory, "temp\\wxCat60323.zip"));
}
}
if (!FileBase.Exists("temp\\wxCatBound"))
//if (!FileBase.Exists("temp\\wxCatBound"))
//{
// if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "wxCatBound.zip", "temp\\wxCatBound.dll" + ".bak"))
// {
// FileBase.Move("temp\\wxCatBound.dll" + ".bak", "temp\\wxCatBound.zip");
// ZipFile.ExtractToDirectory(Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound.zip"), Path.Combine(Environment.CurrentDirectory, "temp"));
// File.Delete(Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound.zip"));
// }
//}
if (!FileBase.Exists("temp\\wxCatBound60323"))
{
if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "wxCatBound.zip", "temp\\wxCatBound.dll" + ".bak"))
if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "wxCatBound60323.zip", "temp\\wxCatBound60323.dll" + ".bak"))
{
FileBase.Move("temp\\wxCatBound.dll" + ".bak", "temp\\wxCatBound.zip");
ZipFile.ExtractToDirectory(Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound.zip"), Path.Combine(Environment.CurrentDirectory, "temp"));
File.Delete(Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound.zip"));
FileBase.Move("temp\\wxCatBound60323.dll" + ".bak", "temp\\wxCatBound60323.zip");
ZipFile.ExtractToDirectory(Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound60323.zip"), Path.Combine(Environment.CurrentDirectory, "temp"));
File.Delete(Path.Combine(Environment.CurrentDirectory, "temp\\wxCatBound60323.zip"));
}
}