微信小店地址管理

This commit is contained in:
wule committed 2026-05-02 10:15:04 +08:00
1 parent 0c5ebf421e
commit 5ac8eb2571
29 files changed
+1489 -378

No files matched your search

+1 -1
View File
@@ -27,7 +27,7 @@ namespace AllBase
/// <summary>
/// 版本ID
/// </summary>
public static int VersionCount = 1022;
public static int VersionCount = 1027;
//public static int VersionCount = 613;
/// <summary>
+14
View File
@@ -18,11 +18,17 @@ namespace AllBase.Helper
{
public class GlobalConfig
{
public static GlobalSettings GlobalSettings { get; set; } = new GlobalSettings();
/// <summary>
/// 店铺列表
/// </summary>
public static ConcurrentList<ShopLoginInfo> ShopLoginList { get; set; } = new ConcurrentList<ShopLoginInfo>();
/// <summary>
/// 店铺默认地址
/// </summary>
public static ConcurrentList<WXShopDefaultAddressInfo> WXShopDefaultAddressList = new ConcurrentList<WXShopDefaultAddressInfo>();
/// <summary>
/// 拼多多买手列表
/// </summary>
public static ConcurrentList<BuyerLoginInfo> BuyerLoginList { get; set; } = new ConcurrentList<BuyerLoginInfo>();
@@ -81,4 +87,12 @@ namespace AllBase.Helper
[Description("阿里巴巴")]
Alibaba = 6,
}
public class GlobalSettings
{
/// <summary>
/// 微信使用软件设置的默认上货地址
/// </summary>
public bool IsWxUseSoftwareDefaultAddress { get; set; } = true;
}
}
@@ -51,6 +51,7 @@ namespace AllBase.Model.Result
public int product_get_type { get; set; }
public KJDDBProduct kjdDbProduct { get; set; } = null;
public WXUploadProductParam wxDraftProduct { get; set; } = null;
public string product_get_type_text { get; set; }
#endregion
}
}
@@ -19,5 +19,14 @@ namespace AllBase.Model.Result.WXResult
public string user_name { get; set; }
public DateTime add_time { get; set; }
public DateTime mdy_time { get; set; }
public bool isFullAddress
{
get
{
return !string.IsNullOrEmpty(user_id) && !string.IsNullOrEmpty(shop_id) && !string.IsNullOrEmpty(province_name) && !string.IsNullOrEmpty(city_name) &&
!string.IsNullOrEmpty(county_name) && !string.IsNullOrEmpty(detail_info) && !string.IsNullOrEmpty(tel_number) && !string.IsNullOrEmpty(user_name);
}
}
}
}
@@ -683,180 +683,6 @@ namespace KJD_Web.BLL.WXXD
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
public string WXAddMdyShopDefaultAfterSale(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
if (!WXUserManage.GetSign(inputData))
return "{\"code\":999,\"msg\":\"校验失败\"}";
// 软件用户名
string user_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "user_name"))?.Replace("'", "\\'");
string shop_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "shop_id"))?.Replace("'", "\\'");
string province_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "province_name"))?.Replace("'", "\\'");
string city_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "city_name"))?.Replace("'", "\\'");
string county_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "county_name"))?.Replace("'", "\\'");
string detail_info = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "detail_info"))?.Replace("'", "\\'");
string tel_number = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "tel_number"))?.Replace("'", "\\'");
// 收件人
string user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "receiver"))?.Replace("'", "\\'");
if (string.IsNullOrEmpty("user_id"))
return "{\"code\":500,\"msg\":\"缺少用户编号\"}";
if (string.IsNullOrEmpty("after_sale_json"))
return "{\"code\":500,\"msg\":\"缺少店铺编号\"}";
if (string.IsNullOrEmpty("province_name") || string.IsNullOrEmpty("city_name") || string.IsNullOrEmpty("county_name") || string.IsNullOrEmpty("detail_info"))
return "{\"code\":500,\"msg\":\"省市区或详细地址不完整\"}";
if (string.IsNullOrEmpty("user_name"))
return "{\"code\":500,\"msg\":\"缺少收件人\"}";
if (string.IsNullOrEmpty("tel_number"))
return "{\"code\":500,\"msg\":\"缺少收件人电话\"}";
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "SELECT 1 FROM `wxxd`.`wx_shop_default_address` where user_id='" + user_id + "' AND shop_id='" + shop_id + "'";
string where = "";
sql += where;
var exist = mySql.ExecuteFirstInt(sql);
if (!mySql.Message.IsNullOrEmpty())
{
mySql.Close();
return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}";
}
if (exist == 0)
{
sql = " INSERT INTO `wxxd`.`wx_shop_default_address` (user_id,shop_id,province_name,city_name,county_name,detail_info,tel_number,user_name)" +
" VALUES (@user_id,@shop_id,@province_name,@city_name,@county_name,@detail_info,@tel_number,@user_name);";
}
else
{
sql = "UPDATE `wxxd`.`wx_shop_default_address` SET ";
if (province_name != null)
sql += " province_name=@province_name,";
if (city_name != null)
sql += " city_name=@city_name,";
if (county_name != null)
sql += " county_name=@county_name,";
if (detail_info != null)
sql += " detail_info=@detail_info,";
if (tel_number != null)
sql += " tel_number=@tel_number,";
if (user_name != null)
sql += " user_name=@user_name,";
sql = sql.TrimEnd(',');
sql += " WHERE user_id=@user_id and shop_id=@shop_id;";
}
List<MySqlParameter> paramLst = new List<MySqlParameter>();
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "province_name", Value = province_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "city_name", Value = city_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "county_name", Value = county_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "detail_info", Value = detail_info, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "tel_number", Value = tel_number, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_id", Value = user_id, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_id", Value = shop_id, });
mySql.ExecuteNonQuery(sql, paramLst.ToArray());
mySql.Close();
if (string.IsNullOrEmpty(mySql.Message))
{
return "{\"code\":200,\"msg\":\"success\",\"data\":\"\"}";
}
else
{
return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":\"\"}";
}
}
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
public string WXGetShopDefaultAfterSaleList(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
var timeCalc = DateTime.Now;
if (!WXUserManage.GetSign(inputData))
return "{\"code\":999,\"msg\":\"校验失败\"}";
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
string user_id = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
string shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "\\'");
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "";
var count = 0;
sql = "SELECT count(*) FROM `wxxd`.`wx_shop_default_address` where 1=1";
string where = "";
if (user_id != null)
where += " and user_id='" + user_id + "'";
if (shop_ids != null)
where += " and shop_ids IN ('" + shop_ids.Replace(",", "','") + "')";
sql += where;
sql += ";";
if (not_count != "true")
count = mySql.ExecuteRowCount(sql);
DataTable dt;
if (count == 0 && not_count != "true")
{
dt = new DataTable();
}
else
{
sql = "SELECT * FROM `wxxd`.`wx_shop_default_address` 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<WXShopDefaultAddressInfo> WXShopDefaultAddressInfoLst = new List<WXShopDefaultAddressInfo>();
foreach (DataRow row in dt.Rows)
{
WXShopDefaultAddressInfoLst.Add(new WXShopDefaultAddressInfo()
{
id = row["id"].ParseToInt(),
city_name = row["city_name"].ParseToString(),
county_name = row["county_name"].ParseToString(),
detail_info = row["detail_info"].ParseToString(),
province_name = row["province_name"].ParseToString(),
shop_id = row["shop_id"].ParseToString(),
tel_number = row["tel_number"].ParseToString(),
user_id = row["user_id"].ParseToString(),
user_name = row["user_name"].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.SerializeObjectToString(WXShopDefaultAddressInfoLst, 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 WXAddMdyAfterSale(string inputData)
{
@@ -1,14 +1,17 @@
using KJD_Web.Model;
using KJD_Web.Model.ShopModel;
using KJD_Web.Utils;
using MySql.Data.MySqlClient;
using MySqlX.XDevAPI;
using NaiBa.Util.Extension;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Security.Cryptography;
using System.Web;
using System.Web.Security;
@@ -784,6 +787,219 @@ namespace KJD_Web.BLL.WXXD
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
public string WXAddMdyShopDefaultAddress(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
if (!WXUserManage.GetSign(inputData))
return "{\"code\":999,\"msg\":\"校验失败\"}";
// 软件用户名
string user_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "user_name"))?.Replace("'", "\\'");
string shop_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "shop_id"))?.Replace("'", "\\'");
string province_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "province_name"))?.Replace("'", "\\'");
string city_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "city_name"))?.Replace("'", "\\'");
string county_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "county_name"))?.Replace("'", "\\'");
string detail_info = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "detail_info"))?.Replace("'", "\\'");
string tel_number = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "tel_number"))?.Replace("'", "\\'");
// 收件人
string user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "receiver"))?.Replace("'", "\\'");
if (string.IsNullOrEmpty("user_id"))
return "{\"code\":500,\"msg\":\"缺少用户编号\"}";
if (string.IsNullOrEmpty("after_sale_json"))
return "{\"code\":500,\"msg\":\"缺少店铺编号\"}";
if (string.IsNullOrEmpty("province_name") || string.IsNullOrEmpty("city_name") || string.IsNullOrEmpty("county_name") || string.IsNullOrEmpty("detail_info"))
return "{\"code\":500,\"msg\":\"省市区或详细地址不完整\"}";
if (string.IsNullOrEmpty("user_name"))
return "{\"code\":500,\"msg\":\"缺少收件人\"}";
if (string.IsNullOrEmpty("tel_number"))
return "{\"code\":500,\"msg\":\"缺少收件人电话\"}";
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "SELECT 1 FROM `wxxd`.`wx_shop_default_address` where user_id='" + user_id + "' AND shop_id='" + shop_id + "'";
string where = "";
sql += where;
var exist = mySql.ExecuteFirstInt(sql);
if (!mySql.Message.IsNullOrEmpty())
{
mySql.Close();
return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}";
}
if (exist == 0)
{
sql = " INSERT INTO `wxxd`.`wx_shop_default_address` (user_id,shop_id,province_name,city_name,county_name,detail_info,tel_number,user_name)" +
" VALUES (@user_id,@shop_id,@province_name,@city_name,@county_name,@detail_info,@tel_number,@user_name);";
}
else
{
sql = "UPDATE `wxxd`.`wx_shop_default_address` SET ";
if (province_name != null)
sql += " province_name=@province_name,";
if (city_name != null)
sql += " city_name=@city_name,";
if (county_name != null)
sql += " county_name=@county_name,";
if (detail_info != null)
sql += " detail_info=@detail_info,";
if (tel_number != null)
sql += " tel_number=@tel_number,";
if (user_name != null)
sql += " user_name=@user_name,";
sql = sql.TrimEnd(',');
sql += " WHERE user_id=@user_id and shop_id=@shop_id;";
}
List<MySqlParameter> paramLst = new List<MySqlParameter>();
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "province_name", Value = province_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "city_name", Value = city_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "county_name", Value = county_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "detail_info", Value = detail_info, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "tel_number", Value = tel_number, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_id", Value = user_id, });
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_id", Value = shop_id, });
mySql.ExecuteNonQuery(sql, paramLst.ToArray());
mySql.Close();
if (string.IsNullOrEmpty(mySql.Message))
{
return "{\"code\":200,\"msg\":\"success\",\"data\":\"\"}";
}
else
{
return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":\"\"}";
}
}
return "{\"code\":19999,\"msg\":\"输入为空\"}";
}
public string WXGetShopDefaultAddressList(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
var timeCalc = DateTime.Now;
if (!WXUserManage.GetSign(inputData))
return "{\"code\":999,\"msg\":\"校验失败\"}";
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
string user_id = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
string shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "\\'");
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "";
var count = -1;
sql = "SELECT count(*) FROM `wxxd`.`wx_shop_default_address` where 1=1";
string where = "";
if (user_id != null)
where += " and user_id='" + user_id + "'";
if (shop_ids != null)
where += " and shop_id IN ('" + shop_ids.Replace(",", "','") + "')";
sql += where;
sql += ";";
if (not_count != "true")
count = mySql.ExecuteRowCount(sql);
DataTable dt;
if (count == 0)
{
dt = new DataTable();
}
else
{
sql = "SELECT * FROM `wxxd`.`wx_shop_default_address` 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<WXShopDefaultAddressInfo> WXShopDefaultAddressInfoLst = new List<WXShopDefaultAddressInfo>();
foreach (DataRow row in dt.Rows)
{
WXShopDefaultAddressInfoLst.Add(new WXShopDefaultAddressInfo()
{
id = row["id"].ParseToInt(),
city_name = row["city_name"].ParseToString(),
county_name = row["county_name"].ParseToString(),
detail_info = row["detail_info"].ParseToString(),
province_name = row["province_name"].ParseToString(),
shop_id = row["shop_id"].ParseToString(),
tel_number = row["tel_number"].ParseToString(),
user_id = row["user_id"].ParseToString(),
user_name = row["user_name"].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.SerializeObjectToString(WXShopDefaultAddressInfoLst, 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 WXDelShopDefaultAddress(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
{
var timeCalc = DateTime.Now;
if (!WXUserManage.GetSign(inputData))
return "{\"code\":999,\"msg\":\"校验失败\"}";
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
string user_id = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
string shop_ids = RegexUtils.GetStringQuery(ref inputData, "shop_ids")?.Replace("'", "\\'");
if (shop_ids.IsNullOrEmpty() || user_id.IsNullOrEmpty())
{
return "{\"code\":500,\"msg\":\"店铺编号不能为空\"}";
}
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
MysqlUtils mySql = new MysqlUtils(conn);
string sql = "";
sql = "Delete FROM `wxxd`.`wx_shop_default_address` where user_id = '" + user_id + "' AND shop_id in ('" + shop_ids.Replace(",", "','") + "')";
sql += ";";
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 E57GetWxTokens(string inputData)
{
if (!string.IsNullOrEmpty(inputData))
@@ -8,7 +8,7 @@
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
<UseGlobalApplicationHostFile />
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<ProjectView>ShowAllFiles</ProjectView>
</PropertyGroup>
<ProjectExtensions>
@@ -197,29 +197,6 @@ namespace KJD_Web
Context.Response.End();
}
[WebMethod]
public void wx_add_mdy_shop_default_after_sale()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXProductManage().WXAddMdyShopDefaultAfterSale(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void wx_get_shop_default_after_sale_list()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXProductManage().WXGetShopDefaultAfterSaleList(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void wx_add_mdy_after_sale()
{
@@ -311,6 +311,47 @@ namespace KJD_Web
Context.Response.End();
}
/// <summary>
/// 修改店铺默认(售后)地址
/// </summary>
[WebMethod]
public void wx_add_mdy_shop_default_address()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXShopManage().WXAddMdyShopDefaultAddress(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
/// <summary>
/// 查询店铺默认(售后)地址
/// </summary>
[WebMethod]
public void wx_get_shop_default_address_list()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXShopManage().WXGetShopDefaultAddressList(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void wx_del_shop_default_address()
{
string jsontext = GetRequestJsonString();
var result = jsontext;
result = new WXShopManage().WXDelShopDefaultAddress(jsontext);
Context.Response.Write(result);
Context.Response.End();
}
[WebMethod]
public void e57_get_wx_tokens()
{
+1
View File
@@ -80,6 +80,7 @@ namespace TemuKJD.BaseForms
if (fl.Equals(FormLevel.LARGE))
{
msgBox.Width = (int)FormLevel.LARGE;
msgBox.Height = 280;
}
if (MainForm.instance != null && MainForm.instance.InvokeRequired)
MainForm.instance.Invoke(new Action(() =>
+14 -5
View File
@@ -286,11 +286,17 @@
<Compile Include="WXForms\ProductForms\WXFinderSquareForm.Designer.cs">
<DependentUpon>WXFinderSquareForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopAfterSaleAddressListForm.cs">
<Compile Include="WXForms\ShopForms\WXShopDefaultAddressEditForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopAfterSaleAddressListForm.Designer.cs">
<DependentUpon>WXShopAfterSaleAddressListForm.cs</DependentUpon>
<Compile Include="WXForms\ShopForms\WXShopDefaultAddressEditForm.Designer.cs">
<DependentUpon>WXShopDefaultAddressEditForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopDefaultAddressListForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopDefaultAddressListForm.Designer.cs">
<DependentUpon>WXShopDefaultAddressListForm.cs</DependentUpon>
</Compile>
<Compile Include="WXForms\ShopForms\WXShopOptimizeForm.cs">
<SubType>Form</SubType>
@@ -1346,8 +1352,11 @@
<EmbeddedResource Include="WXForms\ProductForms\WXProductForm.resx">
<DependentUpon>WXProductForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\ShopForms\WXShopAfterSaleAddressListForm.resx">
<DependentUpon>WXShopAfterSaleAddressListForm.cs</DependentUpon>
<EmbeddedResource Include="WXForms\ShopForms\WXShopDefaultAddressEditForm.resx">
<DependentUpon>WXShopDefaultAddressEditForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\ShopForms\WXShopDefaultAddressListForm.resx">
<DependentUpon>WXShopDefaultAddressListForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="WXForms\ShopForms\WXShopOptimizeForm.resx">
<DependentUpon>WXShopOptimizeForm.cs</DependentUpon>
@@ -28,6 +28,7 @@
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.label6 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label5 = new System.Windows.Forms.Label();
@@ -46,6 +47,7 @@
this.pbLoginPdd = new System.Windows.Forms.PictureBox();
this.pbAdsl = new System.Windows.Forms.PictureBox();
this.pbLoginTaobao = new System.Windows.Forms.PictureBox();
this.ucCheckBox1 = new TemuKJD.UserComponent.UcCheckBox(this.components);
((System.ComponentModel.ISupportInitialize)(this.pbAgentIp)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pbManageToken)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pbLogin1688)).BeginInit();
@@ -298,12 +300,23 @@
this.pbLoginTaobao.Visible = false;
this.pbLoginTaobao.Click += new System.EventHandler(this.pbLoginTaobao_Click);
//
// ucCheckBox1
//
this.ucCheckBox1.AutoSize = true;
this.ucCheckBox1.Location = new System.Drawing.Point(41, 36);
this.ucCheckBox1.Name = "ucCheckBox1";
this.ucCheckBox1.Size = new System.Drawing.Size(195, 21);
this.ucCheckBox1.TabIndex = 127;
this.ucCheckBox1.Text = "使用本软件设置的店铺地址上货";
this.ucCheckBox1.UseVisualStyleBackColor = true;
this.ucCheckBox1.CheckedChanged += new System.EventHandler(this.ucCheckBox1_CheckedChanged);
//
// SystemRemoveRestrictionsForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.BackColor = System.Drawing.Color.White;
this.ClientSize = new System.Drawing.Size(800, 450);
this.Controls.Add(this.ucCheckBox1);
this.Controls.Add(this.label6);
this.Controls.Add(this.label7);
this.Controls.Add(this.pbAgentIp);
@@ -325,6 +338,8 @@
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.Name = "SystemRemoveRestrictionsForm";
this.Text = "解除限制";
this.Load += new System.EventHandler(this.SystemRemoveRestrictionsForm_Load);
this.VisibleChanged += new System.EventHandler(this.SystemRemoveRestrictionsForm_VisibleChanged);
((System.ComponentModel.ISupportInitialize)(this.pbAgentIp)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pbManageToken)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pbLogin1688)).EndInit();
@@ -356,5 +371,6 @@
private System.Windows.Forms.PictureBox pbAdsl;
private System.Windows.Forms.Label lbLoginTaobao;
private System.Windows.Forms.PictureBox pbLoginTaobao;
private UserComponent.UcCheckBox ucCheckBox1;
}
}
@@ -9,6 +9,7 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using TemuKJD.BaseForms;
using AllBase.Helper;
namespace TemuKJD.KJDForms.SystemForms
{
@@ -59,5 +60,21 @@ namespace TemuKJD.KJDForms.SystemForms
{
}
private void SystemRemoveRestrictionsForm_Load(object sender, EventArgs e)
{
}
private void SystemRemoveRestrictionsForm_VisibleChanged(object sender, EventArgs e)
{
this.ucCheckBox1.Checked = GlobalConfig.GlobalSettings.IsWxUseSoftwareDefaultAddress;
}
private void ucCheckBox1_CheckedChanged(object sender, EventArgs e)
{
GlobalConfig.GlobalSettings.IsWxUseSoftwareDefaultAddress = this.ucCheckBox1.Checked;
StartUp.SaveGlobalSettings();
}
}
}
+2 -2
View File
@@ -813,8 +813,8 @@ namespace TemuKJD
}
//internal GoodsCollectForm gcf;
private object shopForm;
private void pnlShop_Click(object sender, EventArgs e)
public object shopForm;
public void pnlShop_Click(object sender, EventArgs e)
{
if (BaseClass.MainPath == "kuajingda")
{
@@ -772,7 +772,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"",
"是",
"否"});
this.cmbPddRelation.Location = new System.Drawing.Point(743, 5);
this.cmbPddRelation.Location = new System.Drawing.Point(743, 7);
this.cmbPddRelation.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbPddRelation.Name = "cmbPddRelation";
this.cmbPddRelation.Size = new System.Drawing.Size(47, 25);
@@ -827,7 +827,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbCat2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat2.FormattingEnabled = true;
this.cmbCat2.Location = new System.Drawing.Point(278, 77);
this.cmbCat2.Location = new System.Drawing.Point(278, 75);
this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat2.Name = "cmbCat2";
this.cmbCat2.Size = new System.Drawing.Size(46, 25);
@@ -912,7 +912,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"机会商品",
"以图搜品",
"外部数据"});
this.cmbSourceType.Location = new System.Drawing.Point(278, 42);
this.cmbSourceType.Location = new System.Drawing.Point(278, 40);
this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSourceType.Name = "cmbSourceType";
this.cmbSourceType.Size = new System.Drawing.Size(46, 25);
@@ -958,7 +958,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"",
"是",
"否"});
this.cmbWxCat.Location = new System.Drawing.Point(622, 7);
this.cmbWxCat.Location = new System.Drawing.Point(622, 5);
this.cmbWxCat.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxCat.Name = "cmbWxCat";
this.cmbWxCat.Size = new System.Drawing.Size(47, 25);
@@ -980,7 +980,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
this.cmbSort.Items.AddRange(new object[] {
"入库时间",
"认领总数"});
this.cmbSort.Location = new System.Drawing.Point(381, 42);
this.cmbSort.Location = new System.Drawing.Point(381, 40);
this.cmbSort.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSort.Name = "cmbSort";
this.cmbSort.Size = new System.Drawing.Size(46, 25);
@@ -1056,7 +1056,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbGroupFilter.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbGroupFilter.FormattingEnabled = true;
this.cmbGroupFilter.Location = new System.Drawing.Point(175, 42);
this.cmbGroupFilter.Location = new System.Drawing.Point(175, 40);
this.cmbGroupFilter.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbGroupFilter.Name = "cmbGroupFilter";
this.cmbGroupFilter.Size = new System.Drawing.Size(46, 25);
@@ -1071,7 +1071,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"是",
"否",
"导出未拉回"});
this.cmbExportToOutServer.Location = new System.Drawing.Point(622, 42);
this.cmbExportToOutServer.Location = new System.Drawing.Point(622, 40);
this.cmbExportToOutServer.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbExportToOutServer.Name = "cmbExportToOutServer";
this.cmbExportToOutServer.Size = new System.Drawing.Size(47, 25);
@@ -1107,7 +1107,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"安全商品",
"违规商品",
"未校验"});
this.cmbWxSafe.Location = new System.Drawing.Point(501, 42);
this.cmbWxSafe.Location = new System.Drawing.Point(501, 40);
this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxSafe.Name = "cmbWxSafe";
this.cmbWxSafe.Size = new System.Drawing.Size(47, 25);
@@ -1149,7 +1149,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbCat1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat1.FormattingEnabled = true;
this.cmbCat1.Location = new System.Drawing.Point(175, 77);
this.cmbCat1.Location = new System.Drawing.Point(175, 75);
this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat1.Name = "cmbCat1";
this.cmbCat1.Size = new System.Drawing.Size(46, 25);
@@ -1171,7 +1171,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
//
this.cmbCat3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbCat3.FormattingEnabled = true;
this.cmbCat3.Location = new System.Drawing.Point(381, 77);
this.cmbCat3.Location = new System.Drawing.Point(381, 75);
this.cmbCat3.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat3.Name = "cmbCat3";
this.cmbCat3.Size = new System.Drawing.Size(46, 25);
@@ -1268,7 +1268,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms
"是",
"否",
"修复回传未拉回"});
this.cmbHasReturn.Location = new System.Drawing.Point(743, 42);
this.cmbHasReturn.Location = new System.Drawing.Point(743, 40);
this.cmbHasReturn.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbHasReturn.Name = "cmbHasReturn";
this.cmbHasReturn.Size = new System.Drawing.Size(47, 25);
+13
View File
@@ -24,6 +24,7 @@ using TemuKJD.KJDForms.ShopForms;
using TemuKJD.KJDForms.AdminForms;
using TemuKJD.BLL.PddApi;
using TemuKJD.PDDForms.ProductForms;
using TemuKJD.WXForms.ShopForms;
namespace TemuKJD
{
@@ -80,6 +81,12 @@ namespace TemuKJD
#endregion
#endregion
GlobalConfig.GlobalSettings = NaiBa.Util.Helper.ConfigHelper.LoadConfig<GlobalSettings>("global_settings");
if (GlobalConfig.GlobalSettings == null)
{
GlobalConfig.GlobalSettings = new GlobalSettings();
}
#region 店铺登录信息
Task.Run((Action)(() =>
{
@@ -89,6 +96,7 @@ namespace TemuKJD
ShopListForm.UpdateShop();
PddApiHelper.GetPddClientInfo();
PddApiHelper.GetShopClientInfo();
WXShopDefaultAddressListForm.GetShopDefaultAddress();
IsShopInit = true;
}));
@@ -407,6 +415,11 @@ namespace TemuKJD
//NaiBa.Util.Helper.ConfigHelper.SaveConfig("dou_shop_login", shopLoginListCopy);
}
public static void SaveGlobalSettings()
{
NaiBa.Util.Helper.ConfigHelper.SaveConfig("global_settings", GlobalConfig.GlobalSettings);
}
public static void SaveTemuShopSettingParam()
{
NaiBa.Util.Helper.ConfigHelper.SaveConfig("temu_shop_setting_param", GlobalConfig.TemuShopSettingParam);
@@ -35,6 +35,7 @@ namespace TemuKJD.WXForms.ProductForms
public partial class WXDBProdUploadForm : BaseForm
{
public CancellationTokenSource cancellationTokenSource { get; set; } = null;
public bool IsWxNotUseSoftwareDefaultAddressOnce { get; set; } = false;
public bool IsLoadComplate { get; set; } = false;
bool isInit = false;
@@ -799,6 +800,45 @@ namespace TemuKJD.WXForms.ProductForms
cancellationTokenSource = new CancellationTokenSource();
Task.Run(() =>
{
if (GlobalConfig.GlobalSettings.IsWxUseSoftwareDefaultAddress == true && !IsWxNotUseSoftwareDefaultAddressOnce &&
lstTemuDBProductSelect.Any(p => p.product_get_type_text != "厂商直采" && p.product_get_type_text != "1688厂家"))
{
if (GlobalConfig.WXShopDefaultAddressList.Any(a => !shopIdLst.Contains(a.shop_id)))
WXShopDefaultAddressListForm.GetShopDefaultAddress();
var addressLst = GlobalConfig.WXShopDefaultAddressList.Where(s => shopIdLst.Contains(s.shop_id)).ToList();
foreach (var add in addressLst)
{
if (!add.isFullAddress)
{
string msg = "未设置店铺售后地址!\r\n" +
"\r\n部分商品无默认售后地址信息,需要设置店铺售后地址,";
if (BaseClass.GroupId == 3)
msg += "\r\n将自动跳转 店铺管理-店铺地址管理 界面设置,";
else
msg += "\r\n请使用主账号进行设置,";
msg += "\r\n或者点击 取消 按钮,本次使用店铺后台默认地址。\r\n" +
"\r\n可在系统设置选项卡更改配置永久使用店铺后台地址。\r\n\r\n";
var rst = BaseMsgForm.ShowConfirm(msg, "注意", FormLevel.LARGE, true);
if (rst.DialogResult == DialogResult.OK)
{
if (BaseClass.GroupId == 3)
Invoke(new Action(() =>
{
btnUpload.Enabled = true;
MainForm.instance.pnlShop_Click(MainForm.instance.pnlShop, null);
WXShopForm.instance.ClickShopAddress();
}));
return;
}
else
{
IsWxNotUseSoftwareDefaultAddressOnce = true;
break;
}
}
}
}
AddProductArr(shopIdLst);
Invoke(new Action(() =>
{
@@ -2362,9 +2402,14 @@ namespace TemuKJD.WXForms.ProductForms
}
}
else
else if(GlobalConfig.GlobalSettings.IsWxUseSoftwareDefaultAddress == true && !IsWxNotUseSoftwareDefaultAddressOnce)
{
if (GlobalConfig.WXShopDefaultAddressList.Any(a => a.shop_id == shop.ShopId))
WXShopDefaultAddressListForm.GetShopDefaultAddress(new List<ShopLoginInfo>() { shop });
var address = GlobalConfig.WXShopDefaultAddressList.First(a => a.shop_id == shop.ShopId);
if (!address.isFullAddress)
return "{\"success\":false,\"draftId\":0,\"status\":\"未上传\",\"errMsg\":\"店铺地址信息获取失败\"}";
afterSaleAddress = JsonHelper.SerializeObject(address);
}
if (!string.IsNullOrEmpty(afterSaleAddress))
+7 -7
View File
@@ -420,7 +420,7 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCat3.DropDownWidth = 1;
this.cmbCat3.FormattingEnabled = true;
this.cmbCat3.IntegralHeight = false;
this.cmbCat3.Location = new System.Drawing.Point(718, 7);
this.cmbCat3.Location = new System.Drawing.Point(718, 5);
this.cmbCat3.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat3.Name = "cmbCat3";
this.cmbCat3.Size = new System.Drawing.Size(146, 25);
@@ -448,7 +448,7 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCat2.DropDownWidth = 1;
this.cmbCat2.FormattingEnabled = true;
this.cmbCat2.IntegralHeight = false;
this.cmbCat2.Location = new System.Drawing.Point(515, 7);
this.cmbCat2.Location = new System.Drawing.Point(515, 5);
this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat2.Name = "cmbCat2";
this.cmbCat2.Size = new System.Drawing.Size(146, 25);
@@ -476,7 +476,7 @@ namespace TemuKJD.WXForms.ProductForms
this.cmbCat1.DropDownWidth = 1;
this.cmbCat1.FormattingEnabled = true;
this.cmbCat1.IntegralHeight = false;
this.cmbCat1.Location = new System.Drawing.Point(293, 5);
this.cmbCat1.Location = new System.Drawing.Point(293, 7);
this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbCat1.Name = "cmbCat1";
this.cmbCat1.Size = new System.Drawing.Size(146, 25);
@@ -536,7 +536,7 @@ namespace TemuKJD.WXForms.ProductForms
"安全+未校验",
"安全商品",
"未校验"});
this.cmbWxSafe.Location = new System.Drawing.Point(71, 40);
this.cmbWxSafe.Location = new System.Drawing.Point(71, 42);
this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbWxSafe.Name = "cmbWxSafe";
this.cmbWxSafe.Size = new System.Drawing.Size(146, 25);
@@ -559,7 +559,7 @@ namespace TemuKJD.WXForms.ProductForms
//
this.cmbGroupFilter.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
this.cmbGroupFilter.FormattingEnabled = true;
this.cmbGroupFilter.Location = new System.Drawing.Point(938, 7);
this.cmbGroupFilter.Location = new System.Drawing.Point(938, 5);
this.cmbGroupFilter.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbGroupFilter.Name = "cmbGroupFilter";
this.cmbGroupFilter.Size = new System.Drawing.Size(146, 25);
@@ -580,7 +580,7 @@ namespace TemuKJD.WXForms.ProductForms
"机会商品",
"以图搜品",
"外部数据"});
this.cmbSourceType.Location = new System.Drawing.Point(718, 42);
this.cmbSourceType.Location = new System.Drawing.Point(718, 40);
this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbSourceType.Name = "cmbSourceType";
this.cmbSourceType.Size = new System.Drawing.Size(146, 25);
@@ -610,7 +610,7 @@ namespace TemuKJD.WXForms.ProductForms
"",
"是",
"否"});
this.cmbRelation.Location = new System.Drawing.Point(938, 42);
this.cmbRelation.Location = new System.Drawing.Point(938, 40);
this.cmbRelation.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
this.cmbRelation.Name = "cmbRelation";
this.cmbRelation.Size = new System.Drawing.Size(146, 25);
@@ -0,0 +1,424 @@
namespace TemuKJD.WXForms.ShopForms
{
partial class WXShopDefaultAddressEditForm
{
/// <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.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WXShopDefaultAddressEditForm));
this.panel2 = new System.Windows.Forms.Panel();
this.lblStatus = new System.Windows.Forms.Label();
this.btnSave = new DevComponents.DotNetBar.PanelEx();
this.pnlCancel = new DevComponents.DotNetBar.PanelEx();
this.label13 = 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.label8 = new System.Windows.Forms.Label();
this.txtCountyName = new System.Windows.Forms.TextBox();
this.label6 = new System.Windows.Forms.Label();
this.txtCityName = new System.Windows.Forms.TextBox();
this.label5 = new System.Windows.Forms.Label();
this.txtProvinceName = new System.Windows.Forms.TextBox();
this.txtUserName = new System.Windows.Forms.TextBox();
this.label34 = new System.Windows.Forms.Label();
this.txtShopName = new System.Windows.Forms.TextBox();
this.txtShopId = new System.Windows.Forms.TextBox();
this.label12 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.label9 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label39 = new System.Windows.Forms.Label();
this.label40 = new System.Windows.Forms.Label();
this.panel2.SuspendLayout();
this.SuspendLayout();
//
// panel2
//
this.panel2.BackColor = System.Drawing.Color.White;
this.panel2.Controls.Add(this.lblStatus);
this.panel2.Controls.Add(this.btnSave);
this.panel2.Controls.Add(this.pnlCancel);
this.panel2.Controls.Add(this.label13);
this.panel2.Controls.Add(this.label10);
this.panel2.Controls.Add(this.txtDetailInfo);
this.panel2.Controls.Add(this.txtTelNumber);
this.panel2.Controls.Add(this.label8);
this.panel2.Controls.Add(this.txtCountyName);
this.panel2.Controls.Add(this.label6);
this.panel2.Controls.Add(this.txtCityName);
this.panel2.Controls.Add(this.label5);
this.panel2.Controls.Add(this.txtProvinceName);
this.panel2.Controls.Add(this.txtUserName);
this.panel2.Controls.Add(this.label34);
this.panel2.Controls.Add(this.txtShopName);
this.panel2.Controls.Add(this.txtShopId);
this.panel2.Controls.Add(this.label12);
this.panel2.Controls.Add(this.label1);
this.panel2.Controls.Add(this.label9);
this.panel2.Controls.Add(this.label7);
this.panel2.Controls.Add(this.label4);
this.panel2.Controls.Add(this.label2);
this.panel2.Controls.Add(this.label39);
this.panel2.Controls.Add(this.label40);
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(1, 33);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(416, 503);
this.panel2.TabIndex = 1;
//
// lblStatus
//
this.lblStatus.AutoSize = true;
this.lblStatus.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblStatus.Location = new System.Drawing.Point(30, 455);
this.lblStatus.Name = "lblStatus";
this.lblStatus.Size = new System.Drawing.Size(79, 20);
this.lblStatus.TabIndex = 817;
this.lblStatus.Text = "店铺编号:";
//
// btnSave
//
this.btnSave.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.btnSave.Cursor = System.Windows.Forms.Cursors.Hand;
this.btnSave.DisabledBackColor = System.Drawing.Color.Empty;
this.btnSave.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnSave.Location = new System.Drawing.Point(299, 393);
this.btnSave.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);
this.btnSave.Name = "btnSave";
this.btnSave.Size = new System.Drawing.Size(52, 25);
this.btnSave.Style.Alignment = System.Drawing.StringAlignment.Center;
this.btnSave.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnSave.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.btnSave.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
this.btnSave.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
this.btnSave.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
this.btnSave.Style.ForeColor.Color = System.Drawing.Color.White;
this.btnSave.Style.GradientAngle = 90;
this.btnSave.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
this.btnSave.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnSave.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
this.btnSave.TabIndex = 810;
this.btnSave.Text = "保存";
this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
//
// pnlCancel
//
this.pnlCancel.CanvasColor = System.Drawing.SystemColors.Control;
this.pnlCancel.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.pnlCancel.DisabledBackColor = System.Drawing.Color.Empty;
this.pnlCancel.Location = new System.Drawing.Point(122, 393);
this.pnlCancel.Name = "pnlCancel";
this.pnlCancel.Size = new System.Drawing.Size(52, 25);
this.pnlCancel.Style.Alignment = System.Drawing.StringAlignment.Center;
this.pnlCancel.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
this.pnlCancel.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
this.pnlCancel.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
this.pnlCancel.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.pnlCancel.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
this.pnlCancel.Style.GradientAngle = 90;
this.pnlCancel.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
this.pnlCancel.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
this.pnlCancel.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.pnlCancel.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
this.pnlCancel.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
this.pnlCancel.TabIndex = 809;
this.pnlCancel.Text = "取消";
this.pnlCancel.Click += new System.EventHandler(this.pnlCancel_Click);
//
// 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(358, 164);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(13, 17);
this.label13.TabIndex = 85;
this.label13.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(358, 305);
this.label10.Name = "label10";
this.label10.Size = new System.Drawing.Size(13, 17);
this.label10.TabIndex = 82;
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(122, 299);
this.txtDetailInfo.Multiline = true;
this.txtDetailInfo.Name = "txtDetailInfo";
this.txtDetailInfo.Size = new System.Drawing.Size(229, 81);
this.txtDetailInfo.TabIndex = 81;
//
// 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(122, 159);
this.txtTelNumber.Name = "txtTelNumber";
this.txtTelNumber.Size = new System.Drawing.Size(229, 23);
this.txtTelNumber.TabIndex = 83;
//
// 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(358, 234);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(13, 17);
this.label8.TabIndex = 79;
this.label8.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(122, 264);
this.txtCountyName.Name = "txtCountyName";
this.txtCountyName.Size = new System.Drawing.Size(229, 23);
this.txtCountyName.TabIndex = 77;
//
// 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(358, 199);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(13, 17);
this.label6.TabIndex = 76;
this.label6.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(122, 229);
this.txtCityName.Name = "txtCityName";
this.txtCityName.Size = new System.Drawing.Size(229, 23);
this.txtCityName.TabIndex = 74;
//
// 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(358, 269);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(13, 17);
this.label5.TabIndex = 73;
this.label5.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(122, 194);
this.txtProvinceName.Name = "txtProvinceName";
this.txtProvinceName.Size = new System.Drawing.Size(229, 23);
this.txtProvinceName.TabIndex = 71;
//
// 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(122, 124);
this.txtUserName.Name = "txtUserName";
this.txtUserName.Size = new System.Drawing.Size(229, 23);
this.txtUserName.TabIndex = 68;
//
// 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(358, 129);
this.label34.Name = "label34";
this.label34.Size = new System.Drawing.Size(13, 17);
this.label34.TabIndex = 66;
this.label34.Text = "*";
//
// txtShopName
//
this.txtShopName.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtShopName.Location = new System.Drawing.Point(122, 89);
this.txtShopName.Name = "txtShopName";
this.txtShopName.ReadOnly = true;
this.txtShopName.Size = new System.Drawing.Size(229, 23);
this.txtShopName.TabIndex = 63;
//
// txtShopId
//
this.txtShopId.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.txtShopId.Location = new System.Drawing.Point(122, 54);
this.txtShopId.Name = "txtShopId";
this.txtShopId.ReadOnly = true;
this.txtShopId.Size = new System.Drawing.Size(229, 23);
this.txtShopId.TabIndex = 61;
//
// 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(63, 160);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(65, 20);
this.label12.TabIndex = 84;
this.label12.Text = "手机号:";
//
// 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(49, 300);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(79, 20);
this.label1.TabIndex = 80;
this.label1.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(71, 265);
this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(57, 20);
this.label9.TabIndex = 78;
this.label9.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(91, 230);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(37, 20);
this.label7.TabIndex = 75;
this.label7.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(91, 195);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(37, 20);
this.label4.TabIndex = 72;
this.label4.Text = "省:";
//
// 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(63, 125);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(65, 20);
this.label2.TabIndex = 67;
this.label2.Text = "收件人:";
//
// 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(49, 90);
this.label39.Name = "label39";
this.label39.Size = new System.Drawing.Size(79, 20);
this.label39.TabIndex = 62;
this.label39.Text = "店铺名称:";
//
// 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(49, 55);
this.label40.Name = "label40";
this.label40.Size = new System.Drawing.Size(79, 20);
this.label40.TabIndex = 60;
this.label40.Text = "店铺编号:";
//
// WXShopDefaultAddressEditForm
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(418, 537);
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.Name = "WXShopDefaultAddressEditForm";
this.Text = "编辑默认地址";
this.TitleText = "编辑默认地址";
this.Load += new System.EventHandler(this.WXShopDefaultAddressEditForm_Load);
this.Controls.SetChildIndex(this.panel2, 0);
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.TextBox txtDetailInfo;
private System.Windows.Forms.TextBox txtTelNumber;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.TextBox txtCountyName;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.TextBox txtCityName;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.TextBox txtProvinceName;
private System.Windows.Forms.TextBox txtUserName;
private System.Windows.Forms.Label label34;
private System.Windows.Forms.TextBox txtShopName;
private System.Windows.Forms.TextBox txtShopId;
private System.Windows.Forms.Label label12;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label9;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label39;
private System.Windows.Forms.Label label40;
private DevComponents.DotNetBar.PanelEx btnSave;
private DevComponents.DotNetBar.PanelEx pnlCancel;
private System.Windows.Forms.Label lblStatus;
}
}
@@ -0,0 +1,144 @@
using AllBase;
using AllBase.Model.Result;
using AllBase.Model.Result.WXResult;
using NaiBa.Util.Extension;
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 TemuKJD.BaseForms;
namespace TemuKJD.WXForms.ShopForms
{
public partial class WXShopDefaultAddressEditForm : BaseForms.BaseGeneralForm
{
List<ShopLoginInfo> lstShop = new List<ShopLoginInfo>();
ShopLoginInfo shop = null;
WXShopDefaultAddressInfo address = null;
public WXShopDefaultAddressEditForm(List<ShopLoginInfo> shopLst)
{
InitializeComponent();
if (shopLst != null)
lstShop.AddRange(shopLst);
}
private void WXShopDefaultAddressEditForm_Load(object sender, EventArgs e)
{
lblStatus.Text = "";
if (lstShop.Count > 0)
{
ShowShopDefaultAddress();
}
}
void ShowShopDefaultAddress()
{
Task.Run(() =>
{
shop = this.lstShop.FirstOrDefault();
if (shop == null)
return;
address = WXShopDefaultAddressListForm.GetShopDefaultAddressLst(new List<ShopLoginInfo> { shop }, false).FirstOrDefault();
if (address == null)
address = new WXShopDefaultAddressInfo();
Invoke(new Action(() =>
{
this.txtShopId.Text = shop.ShopId;
this.txtShopName.Text = shop.ShopAccount;
if (lstShop.Count > 1)
{
txtShopId.Text += " 等 " + lstShop.Count + " 家店铺";
txtShopName.Text += " 等 " + lstShop.Count + " 家店铺";
}
this.txtProvinceName.Text = address.province_name;
this.txtCityName.Text = address.city_name;
this.txtCountyName.Text = address.county_name;
this.txtTelNumber.Text = address.tel_number;
this.txtDetailInfo.Text = address.detail_info;
this.txtUserName.Text = address.user_name;
}));
});
}
private void btnSave_Click(object sender, EventArgs e)
{
if (txtCityName.Text.Trim().IsNullOrEmpty() || txtCountyName.Text.Trim().IsNullOrEmpty() || txtDetailInfo.Text.Trim().IsNullOrEmpty() ||
txtProvinceName.Text.Trim().IsNullOrEmpty() || txtShopId.Text.Trim().IsNullOrEmpty() || txtShopName.Text.Trim().IsNullOrEmpty() ||
txtTelNumber.Text.Trim().IsNullOrEmpty() || txtUserName.Text.Trim().IsNullOrEmpty())
{
BaseMsgForm.ShowError("请填写所有字段");
return;
}
if (lstShop == null || lstShop.Count==0)
{
BaseMsgForm.ShowError("店铺信息不能为空");
return;
}
Task.Run(() =>
{
int index = 0;
int successCount = 0;
int failCount = 0;
string updateMsg = "";
foreach (var shop in lstShop)
{
index++;
Invoke(new Action(() =>
{
lblStatus.Text = "正在更新店铺默认地址 " + index + "/" + lstShop.Count;
}));
var url = BaseClass.BuildObjString("shop/wx_add_mdy_shop_default_address");
var data = Work.UserLogin.GetSignaturex();
data += "&shop_id=" + shop.ShopId;
data += "&province_name=" + GetHtml.UrlEncodeUtf8(txtProvinceName.Text.Trim());
data += "&city_name=" + GetHtml.UrlEncodeUtf8(txtCityName.Text.Trim());
data += "&county_name=" + GetHtml.UrlEncodeUtf8(txtCountyName.Text.Trim());
data += "&detail_info=" + GetHtml.UrlEncodeUtf8(txtDetailInfo.Text.Trim());
data += "&tel_number=" + GetHtml.UrlEncodeUtf8(txtTelNumber.Text.Trim());
data += "&receiver=" + GetHtml.UrlEncodeUtf8(txtUserName.Text.Trim()); // 收件人
var html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
{
var errMsg = BaseRegex.GetStringJson(ref html, "msg");
if (errMsg.IsNullOrEmpty())
errMsg = html;
updateMsg += "店铺 " + shop.ShopAccount + " 操作失败:" + errMsg + ",";
failCount++;
}
else
{
successCount++;
}
}
this.OnSaveComplete(updateMsg, true, this);
if (!string.IsNullOrEmpty(updateMsg))
BaseMsgForm.ShowError(updateMsg);
else
{
Invoke(new Action(() => { this.Close(); }));
}
});
}
private void pnlCancel_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
@@ -0,0 +1,298 @@
<?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>
<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>
@@ -1,6 +1,6 @@
namespace TemuKJD.WXForms.ShopForms
{
partial class WXShopAfterSaleAddressListForm
partial class WXShopDefaultAddressListForm
{
/// <summary>
/// Required designer variable.
@@ -23,72 +23,19 @@ using Work;
namespace TemuKJD.WXForms.ShopForms
{
public partial class WXShopAfterSaleAddressListForm : BaseForm
public partial class WXShopDefaultAddressListForm : BaseForm
{
public static bool IsOperate { get; set; } = false;
private bool isLoading { get; set; } = false;
public ConcurrentList<WXShopDefaultAddressInfo> lstWXShopDefaultAddressInfo = new ConcurrentList<WXShopDefaultAddressInfo>();
public WXShopAfterSaleAddressListForm()
public WXShopDefaultAddressListForm()
{
InitializeComponent();
}
private void Sae_SaveComplete(object obj, object isAdd, object sender)
{
WXShopAddEditForm saeForm = sender as WXShopAddEditForm;
var shopInfoLst = obj as List<ShopLoginInfo>;
if (shopInfoLst != null)
{
this.pbLoading.Visible = true;
Task.Run(() =>
{
if ((isAdd as bool?) == true)
{
int i = 1;
foreach (var shopInfo in shopInfoLst)
{
Invoke(new Action(() => {
this.statusBar.pgbTaskProgress.Value = i;
this.statusBar.pgbTaskProgress.Text = i + "/" + shopInfoLst.Count;
i++;
}));
var shop = GlobalConfig.ShopLoginList.FirstOrDefault(v => v.LoginName == shopInfo.LoginName);
if (shop != null)
{
BaseMsgForm.ShowError("店铺" + shopInfo.LoginName + "已存在!");
}
else
{
ShopBLL.AddServerShop(shopInfo);
}
}
btnRefreshCookie_Click(null, null);
}
else
{
int i = 1;
foreach (var shopInfo in shopInfoLst)
{
Invoke(new Action(() => {
this.statusBar.pgbTaskProgress.Value = i;
this.statusBar.pgbTaskProgress.Text = i + "/" + shopInfoLst.Count;
this.statusBar.pgbTaskProgress.Maximum = shopInfoLst.Count;
i++;
}));
ShopBLL.MdyPDDWXServerShopSubInfo(shopInfo, saeForm.chkNotes.Checked, saeForm.chkShopGroup.Checked, saeForm.chkSubAccount.Checked);
}
RefreshDataGridView(false);
//btnRefreshCookie_Click(null, null);
}
Invoke(new Action(() =>
{
this.pbLoading.Visible = false;
this.statusBar.pgbTaskProgress.Text = "准备就绪";
}));
});
}
Invoke(new Action(() => { btnRefreshCookie_Click(null, null); }));
}
private void RefreshDataGridView(bool updateStatus=true, List<ShopLoginInfo> shopUpdateLst = null)
@@ -201,7 +148,7 @@ namespace TemuKJD.WXForms.ShopForms
p.Cells.GetCellValueFromColumnName("colLoginName").ParseToString() == param.LoginName &&
p.Cells.GetCellValueFromColumnName("colShopId").ParseToString() == param.ShopId).FirstOrDefault();
var addressInfo = lstWXShopDefaultAddressInfo.FirstOrDefault(a => a.shop_id == param.ShopId);
var addressInfo = GlobalConfig.WXShopDefaultAddressList.FirstOrDefault(a => a.shop_id == param.ShopId);
if (addressInfo == null)
addressInfo = new WXShopDefaultAddressInfo();
@@ -336,10 +283,16 @@ namespace TemuKJD.WXForms.ShopForms
IsOperate = false;
break;
case "编辑":
WXShopAddEditForm editForm = new WXShopAddEditForm(new List<ShopLoginInfo> { shop });
WXShopDefaultAddressEditForm editForm = new WXShopDefaultAddressEditForm(new List<ShopLoginInfo> { shop });
editForm.SaveCompleteWithDescribe += Sae_SaveComplete;
editForm.ShowDialog();
break;
case "删除":
var url = BaseClass.BuildObjString("shop/wx_del_shop_default_address");
var data = UserLogin.GetSignaturex() + "&shop_ids=" + shop.ShopId;
var result = GetHtml.PostUtf8(url, data);
btnRefreshCookie_Click(null, null);
break;
default:
dgvShop.Rows[e.RowIndex].Cells["colSelect"].Value = !(bool)dgvShop.Rows[e.RowIndex].Cells["colSelect"].Value;
break;
@@ -390,49 +343,78 @@ namespace TemuKJD.WXForms.ShopForms
});
}
void GetShopDefaultAddress()
public static void GetShopDefaultAddress(List<ShopLoginInfo> shopGetAddressList = null)
{
lstWXShopDefaultAddressInfo.Clear();
var tmpShopLst = new List<ShopLoginInfo>();
tmpShopLst.AddRange(GlobalConfig.ShopLoginList);
while (tmpShopLst.Count > 0)
{
var tmpLst = tmpShopLst.Take(50).ToList();
tmpShopLst.RemoveAll(s => tmpLst.Any(ss => ss.ShopId == s.ShopId));
var url = BaseClass.BuildObjString("product/wx_get_shop_default_after_sale_list");
var data = Work.UserLogin.GetSignaturex() + "&shop_ids=" + string.Join(",", tmpLst.Select(t => t.ShopId));
var html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
if (BaseClass.MainPath == "weixin")
{
if (shopGetAddressList == null)
{
var errMsg = BaseRegex.GetStringJson(ref html, "msg");
if (errMsg.IsNullOrEmpty())
errMsg = html;
foreach (var shop in tmpLst)
{
//var rows = dgvShop.Rows.Cast<DataGridViewRow>().Where(r => r.Cells["colShopId"].Value.ParseToString() == shop.ShopId).ToList();
//Invoke(new Action(() =>
//{
// foreach (var row in rows)
// {
// row.Cells["colDetailInfo"].Value = "地址信息查询失败:" + html;
// }
//}));
lstWXShopDefaultAddressInfo.Add(new WXShopDefaultAddressInfo() { user_id = shop.UserName, shop_id = shop.ShopId, detail_info = "地址信息查询失败:" + html });
}
continue;
shopGetAddressList = new List<ShopLoginInfo>();
shopGetAddressList.AddRange(GlobalConfig.ShopLoginList);
}
var jsonObj = JsonHelper.JObjectParse(html)["data"];
var lst = JsonHelper.DeserializeJsonToList<WXShopDefaultAddressInfo>(JsonHelper.SerializeObject(jsonObj));
lstWXShopDefaultAddressInfo.AddRange(lst);
while (shopGetAddressList.Count > 0)
{
var tmpLst = shopGetAddressList.Take(50).ToList();
shopGetAddressList.RemoveAll(s => tmpLst.Any(ss => ss.ShopId == s.ShopId));
var lst = GetShopDefaultAddressLst(tmpLst);
foreach (var address in lst)
{
var addExist = GlobalConfig.WXShopDefaultAddressList.FirstOrDefault(a => a.shop_id == address.shop_id);
if (addExist == null)
GlobalConfig.WXShopDefaultAddressList.Add(address);
else
{
addExist.add_time = address.add_time;
addExist.city_name = address.city_name;
addExist.county_name = address.county_name;
addExist.detail_info = address.detail_info;
addExist.mdy_time = address.mdy_time;
addExist.province_name = address.province_name;
addExist.tel_number = address.tel_number;
addExist.user_name = address.user_name;
}
}
}
}
}
public static List<WXShopDefaultAddressInfo> GetShopDefaultAddressLst(List<ShopLoginInfo> shopLst, bool isCount = true)
{
var lst = new List<WXShopDefaultAddressInfo>();
var shop_ids = string.Join(",", shopLst.Select(t => t.ShopId));
var url = BaseClass.BuildObjString("shop/wx_get_shop_default_address_list");
var data = Work.UserLogin.GetSignaturex() + "&shop_ids=" + shop_ids;
if (!isCount)
data += "&not_count=true";
var html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
html = GetHtml.PostUtf8(url, data);
if (!html.Contains("\"code\":200"))
{
var errMsg = BaseRegex.GetStringJson(ref html, "msg");
if (errMsg.IsNullOrEmpty())
errMsg = html;
foreach (var shop in shopLst)
{
lst.Add(new WXShopDefaultAddressInfo() { user_id = shop.UserName, shop_id = shop.ShopId, detail_info = ("地址信息查询失败:" + errMsg).Trim(':') });
}
return lst;
}
var jsonObj = JsonHelper.JObjectParse(html)["data"];
lst = JsonHelper.DeserializeJsonToList<WXShopDefaultAddressInfo>(JsonHelper.SerializeObject(jsonObj));
foreach (var shop in shopLst)
{
if (!lst.Any(l => l.shop_id == shop.ShopId))
lst.Add(new WXShopDefaultAddressInfo() { user_id = shop.UserName, shop_id = shop.ShopId, detail_info = "" /*地址信息不存在*/ });
}
return lst;
}
private List<string> GetCheckedList()
{
List<string> shopNameList = new List<string>();
@@ -497,8 +479,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;
WXShopDefaultAddressEditForm editForm = new WXShopDefaultAddressEditForm(shops);
editForm.SaveCompleteWithDescribe += Sae_SaveComplete;
editForm.ShowDialog();
}
+3 -3
View File
@@ -30,7 +30,7 @@
{
System.Windows.Forms.TreeNode treeNode1 = new System.Windows.Forms.TreeNode("店铺列表");
System.Windows.Forms.TreeNode treeNode2 = new System.Windows.Forms.TreeNode("子账号管理");
System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("默认地址管理");
System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("店铺地址管理");
System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("店铺经营统计");
System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("评分考核");
System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("店铺管理", new System.Windows.Forms.TreeNode[] {
@@ -133,8 +133,8 @@
treeNode1.Text = "店铺列表";
treeNode2.Name = "子账号管理";
treeNode2.Text = "子账号管理";
treeNode3.Name = "默认地址管理";
treeNode3.Text = "默认地址管理";
treeNode3.Name = "店铺地址管理";
treeNode3.Text = "店铺地址管理";
treeNode4.Name = "店铺经营统计";
treeNode4.Text = "店铺经营统计";
treeNode5.Name = "评分考核";
+16 -4
View File
@@ -19,32 +19,37 @@ namespace TemuKJD.WXForms.ShopForms
{
public partial class WXShopForm : BaseForm
{
public static WXShopForm instance { get; set; }
public Lazy<WXShopListForm> shopListForm = new Lazy<WXShopListForm>();
public Lazy<WXSubAccountListForm> sbuAccountForm = new Lazy<WXSubAccountListForm>();
public Lazy<WxShopStatisticsForm> shopStatisticsForm = new Lazy<WxShopStatisticsForm>();
public Lazy<WXShopOptimizeForm> shopOptimizeForm = new Lazy<WXShopOptimizeForm>();
public Lazy<WXShopAfterSaleAddressListForm> shopAfterSaleAddressListForm = new Lazy<WXShopAfterSaleAddressListForm>();
public Lazy<WXShopDefaultAddressListForm> shopAfterSaleAddressListForm = new Lazy<WXShopDefaultAddressListForm>();
public WXShopForm()
{
InitializeComponent();
instance = this;
try
{
tv.SelectedNode = tv.Nodes[0].Nodes[0];
tv.ExpandGroup(tv.Nodes[0].Name);
List<string> hideName = new List<string>() { "默认地址管理", "评分考核", "子账号管理", "高级运费模板", "运费模板", "素材库管理", "订单金额统计", "工作明细统计", "店铺经营统计1" };
List<string> hideName = new List<string>() { "店铺地址管理", "评分考核", "子账号管理", "高级运费模板", "运费模板", "素材库管理", "订单金额统计", "工作明细统计", "店铺经营统计1" };
if (BaseClass.GroupId == 3)
{
hideName.Remove("店铺地址管理");
hideName.Remove("子账号管理");
hideName.Remove("评分考核");
}
if (BaseClass.SaLevel ==1)
{
//hideName.Remove("默认地址管理");
//hideName.Remove("店铺地址管理");
}
foreach (var item in hideName)
@@ -57,6 +62,13 @@ namespace TemuKJD.WXForms.ShopForms
catch { }
}
public void ClickShopAddress()
{
var node = tv.Nodes[0].Nodes.Find("店铺地址管理", true).FirstOrDefault();
if (node != null)
tv.SelectedNode = node;
}
private void tv_AfterSelect(object sender, TreeViewEventArgs e)
{
MainForm.sCurrentModule = e.Node.Name;
@@ -79,7 +91,7 @@ namespace TemuKJD.WXForms.ShopForms
case "店铺经营统计":
SetForm(shopStatisticsForm.Value);
break;
case "默认地址管理":
case "店铺地址管理":
SetForm(shopAfterSaleAddressListForm.Value);
break;
case "评分考核":
+10
View File
@@ -125,6 +125,7 @@ namespace TemuKJD.WXForms.TalkForms
this.dataGridViewCheckBoxColumn2 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
this.colRBuyerId = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colRBuyerName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colRAfterSaleId = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colRPddOrderSn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.colROrderDate = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -765,6 +766,7 @@ namespace TemuKJD.WXForms.TalkForms
this.dataGridViewCheckBoxColumn2,
this.colRBuyerId,
this.colRBuyerName,
this.colRAfterSaleId,
this.colRPddOrderSn,
this.colROrderDate,
this.dataGridViewTextBoxColumn5,
@@ -1281,6 +1283,13 @@ namespace TemuKJD.WXForms.TalkForms
this.colRBuyerName.Name = "colRBuyerName";
this.colRBuyerName.ReadOnly = true;
//
// colRAfterSaleId
//
this.colRAfterSaleId.FillWeight = 80F;
this.colRAfterSaleId.HeaderText = "售后单号";
this.colRAfterSaleId.Name = "colRAfterSaleId";
this.colRAfterSaleId.ReadOnly = true;
//
// colRPddOrderSn
//
this.colRPddOrderSn.HeaderText = "拍单订单号";
@@ -1483,6 +1492,7 @@ namespace TemuKJD.WXForms.TalkForms
private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn2;
private System.Windows.Forms.DataGridViewTextBoxColumn colRBuyerId;
private System.Windows.Forms.DataGridViewTextBoxColumn colRBuyerName;
private System.Windows.Forms.DataGridViewTextBoxColumn colRAfterSaleId;
private System.Windows.Forms.DataGridViewTextBoxColumn colRPddOrderSn;
private System.Windows.Forms.DataGridViewTextBoxColumn colROrderDate;
private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn5;
+101 -47
View File
@@ -229,8 +229,24 @@ namespace TemuKJD.WXForms.TalkForms
}
else if (order.after_sales != null)
{
row.Cells["colOMsg"].Value = "[退货中]" + row.Cells["colOMsg"].Value.ParseToString();
row.Cells["colOMsg"].Style.ForeColor = Color.DeepSkyBlue;
if (order.order_sn == "260417-009038743070257")
{
//after_sales_id 20093344800098 after_sales_status 12 after_sales_type 2
}
if (order.order_sn == "260427-536315174430257")
{
}
if(order.after_sales.after_sales_status == 12 && order.after_sales.after_sales_type == 2)
{
row.Cells["colOMsg"].Value = "[退货失败]" + row.Cells["colOMsg"].Value.ParseToString();
row.Cells["colOMsg"].Style.ForeColor = Color.SlateBlue;
}
else
{
row.Cells["colOMsg"].Value = "[退货中]" + row.Cells["colOMsg"].Value.ParseToString();
row.Cells["colOMsg"].Style.ForeColor = Color.DeepSkyBlue;
}
}
else if (!string.IsNullOrEmpty(order.wxRefundStatus))
{
@@ -255,6 +271,7 @@ namespace TemuKJD.WXForms.TalkForms
false,
afterSale.buyerId,
afterSale.buyerName,
afterSale.afterSalesId,
afterSale.orderSn,
afterSale.orderDate,
"", // 图片路径,
@@ -276,6 +293,7 @@ namespace TemuKJD.WXForms.TalkForms
//row.Cells["colOSelect"].Value = selectIds.Contains(buyer.buyer_id);
row.Cells["colRBuyerId"].Value = afterSale.buyerId;
row.Cells["colRBuyerName"].Value = afterSale.buyerName;
row.Cells["colRAfterSaleId"].Value = afterSale.afterSalesId;
row.Cells["colRPddOrderSn"].Value = afterSale.orderSn;
row.Cells["colROrderDate"].Value = afterSale.orderDate;
//row.Cells["colOImgUrl"].Value = "";
@@ -894,8 +912,14 @@ namespace TemuKJD.WXForms.TalkForms
left: 0,
behavior: 'smooth' // 可选,使滚动平滑
});";
var t1 = cefWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr);
t1.Wait(1000);
//var t1 = cefWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr);
//t1.Wait(1000);
var client = cefWebBrowser.GetDevToolsClient();
if (client != null)
{
var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
result.Wait(5000);
}
}
Thread.Sleep(Randomx.GetId(2000, 3000));
@@ -924,8 +948,14 @@ namespace TemuKJD.WXForms.TalkForms
left: 0,
behavior: 'smooth' // 可选,使滚动平滑
});";
var t1 = cefWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr);
t1.Wait(1000);
//var t1 = cefWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr);
//t1.Wait(1000);
var client = cefWebBrowser.GetDevToolsClient();
if (client != null)
{
var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
result.Wait(5000);
}
}
Thread.Sleep(Randomx.GetId(2000, 3000));
@@ -954,8 +984,14 @@ namespace TemuKJD.WXForms.TalkForms
left: 0,
behavior: 'smooth' // 可选,使滚动平滑
});";
var t1 = cefWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr);
t1.Wait(1000);
//var t1 = cefWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr);
//t1.Wait(1000);
var client = cefWebBrowser.GetDevToolsClient();
if (client != null)
{
var result = client.Runtime.EvaluateAsync(jsStr, null, true, null, null, true, null, true);
result.Wait(5000);
}
}
}
catch
@@ -1312,7 +1348,11 @@ namespace TemuKJD.WXForms.TalkForms
}
ConcurrentList<PddBuyerOrderInfoLite> tempWaitOrderLst = new ConcurrentList<PddBuyerOrderInfoLite>();
//bool isSendOrderE57 = false;
/// <summary>
/// 调用e57接口更新web端订单数据信息
/// </summary>
/// <param name="order"></param>
/// <param name="resetSendStatus">手动强制重置状态,一定重新发送</param>
public void SendOrderE57(PddBuyerOrderInfoLite order, bool resetSendStatus = false)
{
//if (resetSendStatus == true)
@@ -1347,27 +1387,27 @@ namespace TemuKJD.WXForms.TalkForms
Thread.Sleep(100);
// 已发货且没有运单号的属于已退货,不再发送
if (order.order_status_prompt != "拼单成功,待发货" && order.order_status_prompt != "免拼成功,待发货" && (
order.order_status_prompt.Contains("交易成功") ||
//order.order_status_prompt.Contains("退款成功") ||
//order.after_sales != null ||
order.order_status_prompt.Contains("交易已取消") ||
string.IsNullOrEmpty(order.tracking_number) ||
string.IsNullOrEmpty(order.outExpressCompanyCode)))
{
Invoke(new Action(() =>
{
ShowOrder(order);
}));
NaiBa.Util.Helper.ConfigHelper.SaveConfig("pdd_buyer_order_list", lstPddBuyerOrderInfoLite);
return;
}
// 外采订单已发货的订单不再尝试发货
//if (order.sendStatus == "已发送")
//if (order.order_status_prompt != "拼单成功,待发货" && order.order_status_prompt != "免拼成功,待发货" && (
// order.order_status_prompt.Contains("交易成功") ||
// order.order_status_prompt.Contains("退款成功") ||
// order.after_sales != null ||
// order.order_status_prompt.Contains("交易已取消") ||
// string.IsNullOrEmpty(order.tracking_number) ||
// string.IsNullOrEmpty(order.outExpressCompanyCode)))
//{
// Invoke(new Action(() =>
// {
// ShowOrder(order);
// }));
// NaiBa.Util.Helper.ConfigHelper.SaveConfig("pdd_buyer_order_list", lstPddBuyerOrderInfoLite);
// return;
// 微信发货成功,外采订单已发货, orderNo:260429-064214802032823
// 外采订单已发货, orderNo:260429-438189442672823
if (order.sendStatus.Contains("外采订单已发货") || order.sendStatus.Contains("更新外采订单微信发货成功"))
//}
// 外采订单已发货的订单不再尝试发货
// 已存在 同运单号拦截 订单已绑定外采订单 -- 原提示词
// 微信发货成功,外采订单已发货, orderNo:260429-064214802032823 | 外采订单已发货, orderNo:260429-438189442672823 -- 新提示词
if (order.sendStatus.Contains("外采订单已发货") || order.sendStatus.Contains("微信发货成功") ||
order.sendStatus.Contains("已发送待发货订单") || order.sendStatus.Contains("接收成功") ||
order.sendStatus.Contains("已发送售后订单"))
{
Invoke(new Action(() =>
{
@@ -1389,12 +1429,15 @@ namespace TemuKJD.WXForms.TalkForms
var dataStr = JsonHelper.SerializeObject(obj);
string url = "https://po.e57.cn/prod-api/api/oms-api/external_procurement/bind";
//成功 "<ResultVo><code>0</code><msg>SUCCESS</msg><data/><totalRecords/></ResultVo>"
//失败 已存在
//<ResultVo><code>1505</code><msg>调用微信接口更新物流信息失败: 非法参数, 同运单号拦截 rid: 69d8ab9c-22baa3b1-67de0d95</msg><data/><totalRecords/></ResultVo>
//失败 已存在 <ResultVo><code>1505</code><msg>调用微信接口更新物流信息失败: 非法参数, 同运单号拦截 rid: 69d8ab9c-22baa3b1-67de0d95</msg><data/><totalRecords/></ResultVo>
var exportRst = WXHttpResponseBLL.e57PostResponse(url, dataStr, "");
for (int i = 0; i < 5 && exportRst.Contains("操作超时"); i++)
if (exportRst == null)
{
Thread.Sleep(10000);
}
for (int i = 0; i < 3 && exportRst.Contains("操作超时") && resetSendStatus == false; i++)
{
Thread.Sleep(210000);
WXHttpResponseBLL.e57PostResponse(url, dataStr, "");
}
if (exportRst.Contains("操作超时"))
@@ -1407,7 +1450,6 @@ namespace TemuKJD.WXForms.TalkForms
}));
return;
}
// exportRst.Contains("已存在") || exportRst.Contains("同运单号拦截") || exportRst.Contains("订单已绑定外采订单")
System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
string msg = "";
string data = "";
@@ -1415,21 +1457,33 @@ namespace TemuKJD.WXForms.TalkForms
try
{
xmlDoc.LoadXml(exportRst); //<ResultVo><code>1505</code><msg>不支持的平台类型: WEISHOP</msg><data/><totalRecords/></ResultVo>
msg = xmlDoc["ResultVo"]["msg"].InnerText;
data = xmlDoc["ResultVo"]["data"].InnerText;
code = xmlDoc["ResultVo"]["code"].InnerText;
code = xmlDoc["AjaxResult"]["code"].InnerText;
msg = xmlDoc["AjaxResult"]["msg"].InnerText;
//data = xmlDoc["AjaxResult"]["data"].InnerText;
// <AjaxResult><msg>更新微信外采订单信息成功, orderNo:260430-306551232030257</msg><code>1</code></AjaxResult>
}
catch
{
msg = exportRst.ParseToString();
}
if (code == "0" || msg == "SUCCESS") //if (msg == "SUCCESS")
if (code == "0" || code == "1") //if (msg == "SUCCESS") // || msg == "SUCCESS"
{
order.sendStatus = string.IsNullOrEmpty(data) ? msg : data;
if (order.sendStatus == "更新微信外采订单状态成功")
order.sendStatus = "已发送";
if (order.sendStatus == "处理完成" || order.sendStatus == "快递公司和快递单号必须同时提供或同时为空")
order.sendStatus = "已发送完成";
var sendStatusTmp = string.IsNullOrEmpty(data) ? msg : data;
order.sendStatus = sendStatusTmp;
if (code == "0" && !order.sendStatus.Contains("微信发货成功"))
order.sendStatus = ("微信发货成功 " + sendStatusTmp).Trim();
if (code == "1" && !order.sendStatus.Contains("接收成功"))
order.sendStatus = ("接收成功 " + sendStatusTmp).Trim();
// 处理特殊情况 如未发货或退货订单
//if (order.sendStatus == "处理完成" || order.sendStatus == "快递公司和快递单号必须同时提供或同时为空")
// order.sendStatus = "已发送完成";
if (order.order_status_prompt.Contains("待发货")) // 更新微信外采订单状态成功
order.sendStatus = "已发送待发货订单";
if (order.after_sales != null)
order.sendStatus = "已发送售后订单 " + sendStatusTmp;
NaiBa.Util.Helper.ConfigHelper.SaveConfig("pdd_buyer_order_list", lstPddBuyerOrderInfoLite);
}
else
@@ -1599,9 +1653,9 @@ namespace TemuKJD.WXForms.TalkForms
//失败 已存在
//<ResultVo><code>1505</code><msg>调用微信接口更新物流信息失败: 非法参数, 同运单号拦截 rid: 69d8ab9c-22baa3b1-67de0d95</msg><data/><totalRecords/></ResultVo>
var exportRst = WXHttpResponseBLL.e57PostResponse(url, dataStr, "");
for (int i = 0; i < 5 && exportRst.Contains("操作超时"); i++)
for (int i = 0; i < 3 && exportRst.Contains("操作超时"); i++)
{
Thread.Sleep(5000);
Thread.Sleep(210000);
WXHttpResponseBLL.e57PostResponse(url, dataStr, "");
}
@@ -1679,8 +1733,8 @@ namespace TemuKJD.WXForms.TalkForms
{
if (row.Cells["colRPddOrderSn"].Value.ParseToString().Contains(txtOrderSnFilter.Text.Trim()))
row.Visible = true;
//else if (row.Cells["colOBuyerName"].Value.ParseToString().Contains(txtOrderSnFilter.Text.Trim()))
// row.Visible = true;
else if (row.Cells["colRAfterSaleId"].Value.ParseToString().Contains(txtOrderSnFilter.Text.Trim()))
row.Visible = true;
else
row.Visible = false;
}
@@ -183,6 +183,9 @@
<metadata name="colRBuyerName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colRAfterSaleId.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="colRPddOrderSn.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>