From bd3040efa331c7b4ab636693bce095cc67163fb3 Mon Sep 17 00:00:00 2001 From: wule Date: Fri, 24 Jul 2026 11:17:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=90=86+1=20=20=E4=BB=A3=E7=90=86?= =?UTF-8?q?=E6=8F=90=E7=8E=B0=E5=88=A9=E6=B6=A6=E7=BB=9F=E8=AE=A1=20=20?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E6=8B=BF=E6=8E=89=E3=80=82=20=20=20?= =?UTF-8?q?=E4=BB=A3=E7=90=86=E7=A7=AF=E5=88=86=E6=B6=88=E8=80=97=E6=83=85?= =?UTF-8?q?=E5=86=B5=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AllBase/AllBase.csproj | 1 + AllBase/BaseClass.cs | 2 +- AllBase/BaseRegex.cs | 27 + AllBase/Model/DBModel/user_payment_record.cs | 18 +- .../Model/DBModel/user_points_record_info.cs | 24 + .../049796bca62c1f36b85a33e1a3727702.png | Bin 0 -> 12938 bytes .../6c7fe07d5f07f8af9a58e3029fa7abb2.jpg | Bin 0 -> 88479 bytes .../834b054bbdef4f08635bfe64980026fc.png | Bin 0 -> 13590 bytes Bin.Pak/History/火麒麟微店通/ico(1).ico | Bin 0 -> 16958 bytes Bin.Pak/History/火麒麟微店通/im.pak | Bin 0 -> 13590 bytes Bin.Pak/History/火麒麟微店通/io.pak | 1 + Bin.Pak/History/火麒麟微店通/lo.pak | Bin 0 -> 16958 bytes Bin.Pak/History/火麒麟微店通/na.pak | 1 + Bin.Pak/package260721火麒麟微店通 x64.nsi | 189 + .../BLL/BXX/BXXProductManage.cs | 10 + .../KJD_WebService/BLL/WXXD/WXUserManage.cs | 375 +- .../KJD_WebService/KJD_WebService.csproj | 3 +- ..._record.cs => user_payment_record_info.cs} | 5 +- .../Model/WxModel/user_points_record_info.cs | 27 + KJDService/KJD_WebService/Utils/MySqlUtils.cs | 14 + .../KJD_WebService/WXUserService.asmx.cs | 26 +- KJDService/KJD_WebService/Web.config | 2 +- TEMUKJD/BaseForms/BaseGeneralForm.designer.cs | 2 +- TEMUKJD/ChangeForm.designer.cs | 30 +- TEMUKJD/ChangeForm.resx | 6482 ++++++++---- TEMUKJD/InitForm.resx | 4778 ++++++++- TEMUKJD/KJD.csproj | 40 +- TEMUKJD/KJD.csproj.user | 2 +- TEMUKJD/MainForm.resx | 8786 ++++++++--------- .../PDDDBProdListForm.Designer.cs | 30 +- .../ProductSelectForms/PDDDBProdListForm.cs | 13 +- TEMUKJD/Properties/Resources.Designer.cs | 10 - TEMUKJD/Properties/Resources.resx | 3 - TEMUKJD/Resources/29.ico | Bin 0 -> 16958 bytes TEMUKJD/Resources/29.png | Bin 0 -> 4120 bytes TEMUKJD/Resources/29wx.ico | Bin 0 -> 229680 bytes TEMUKJD/Resources/29wx.png | Bin 0 -> 9190 bytes TEMUKJD/Resources/bag.ico | Bin 0 -> 67646 bytes TEMUKJD/Resources/common_icon.ico | Bin 16958 -> 270398 bytes TEMUKJD/Resources/common_icon.png | Bin 4120 -> 41966 bytes TEMUKJD/Resources/gear.ico | Bin 0 -> 270398 bytes TEMUKJD/Resources/icon.png | Bin 11969 -> 9190 bytes TEMUKJD/Resources/temu_icon.png | Bin 0 -> 11969 bytes .../WXAdminAccountBalanceForm.Designer.cs | 1120 +++ .../AdminForms/WXAdminAccountBalanceForm.cs | 378 + .../AdminForms/WXAdminAccountBalanceForm.resx | 394 + .../WXForms/AdminForms/WXAdminAccountForm.cs | 7 +- .../AdminForms/WXAdminForm.Designer.cs | 30 +- TEMUKJD/WXForms/AdminForms/WXAdminForm.cs | 9 +- ...er.cs => WxAdminOemManageForm.Designer.cs} | 2 +- ...mManageForm.cs => WxAdminOemManageForm.cs} | 6 +- ...ageForm.resx => WxAdminOemManageForm.resx} | 0 .../WXDBProdUploadForm.Designer.cs | 116 +- .../ProductForms/WXDBProdUploadForm.cs | 59 +- .../WXUserCollectAuthProdListForm.Designer.cs | 225 +- .../WXUserCollectAuthProdListForm.cs | 59 + .../ShopForms/WXGetTopUpQrCode.Designer.cs | 165 +- TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.cs | 65 +- .../WXOemAccountBalanceForm.Designer.cs | 1074 ++ .../ShopForms/WXOemAccountBalanceForm.cs | 411 + .../ShopForms/WXOemAccountBalanceForm.resx | 394 + .../ShopForms/WXOemAccountForm.Designer.cs | 62 +- .../WXOemPointsTopUpListForm.Designer.cs | 406 + .../ShopForms/WXOemPointsTopUpListForm.cs | 182 + .../ShopForms/WXOemPointsTopUpListForm.resx | 322 + .../WXForms/ShopForms/WXShopForm.Designer.cs | 48 +- TEMUKJD/WXForms/ShopForms/WXShopForm.cs | 15 +- TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs | 36 + TEMUKJD/bag.ico | Bin 0 -> 67646 bytes 69 files changed, 19415 insertions(+), 7071 deletions(-) create mode 100644 AllBase/Model/DBModel/user_points_record_info.cs create mode 100644 Bin.Pak/History/火麒麟微店通/049796bca62c1f36b85a33e1a3727702.png create mode 100644 Bin.Pak/History/火麒麟微店通/6c7fe07d5f07f8af9a58e3029fa7abb2.jpg create mode 100644 Bin.Pak/History/火麒麟微店通/834b054bbdef4f08635bfe64980026fc.png create mode 100644 Bin.Pak/History/火麒麟微店通/ico(1).ico create mode 100644 Bin.Pak/History/火麒麟微店通/im.pak create mode 100644 Bin.Pak/History/火麒麟微店通/io.pak create mode 100644 Bin.Pak/History/火麒麟微店通/lo.pak create mode 100644 Bin.Pak/History/火麒麟微店通/na.pak create mode 100644 Bin.Pak/package260721火麒麟微店通 x64.nsi rename KJDService/KJD_WebService/Model/WxModel/{user_payment_record.cs => user_payment_record_info.cs} (84%) create mode 100644 KJDService/KJD_WebService/Model/WxModel/user_points_record_info.cs create mode 100644 TEMUKJD/Resources/29.ico create mode 100644 TEMUKJD/Resources/29.png create mode 100644 TEMUKJD/Resources/29wx.ico create mode 100644 TEMUKJD/Resources/29wx.png create mode 100644 TEMUKJD/Resources/bag.ico create mode 100644 TEMUKJD/Resources/gear.ico create mode 100644 TEMUKJD/Resources/temu_icon.png create mode 100644 TEMUKJD/WXForms/AdminForms/WXAdminAccountBalanceForm.Designer.cs create mode 100644 TEMUKJD/WXForms/AdminForms/WXAdminAccountBalanceForm.cs create mode 100644 TEMUKJD/WXForms/AdminForms/WXAdminAccountBalanceForm.resx rename TEMUKJD/WXForms/AdminForms/{WxOemManageForm.Designer.cs => WxAdminOemManageForm.Designer.cs} (99%) rename TEMUKJD/WXForms/AdminForms/{WxOemManageForm.cs => WxAdminOemManageForm.cs} (98%) rename TEMUKJD/WXForms/AdminForms/{WxOemManageForm.resx => WxAdminOemManageForm.resx} (100%) create mode 100644 TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.Designer.cs create mode 100644 TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.cs create mode 100644 TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.resx create mode 100644 TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.Designer.cs create mode 100644 TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.cs create mode 100644 TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.resx create mode 100644 TEMUKJD/bag.ico diff --git a/AllBase/AllBase.csproj b/AllBase/AllBase.csproj index e75e28d..e5dbd25 100644 --- a/AllBase/AllBase.csproj +++ b/AllBase/AllBase.csproj @@ -191,6 +191,7 @@ + diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index bd688eb..cca726a 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -31,7 +31,7 @@ namespace AllBase /// /// 版本ID /// - public static int VersionCount = 1229; + public static int VersionCount = 1250; public static string MainPath = "29wx"; //public static string MainPath = "29wx"; //public static string MainPath = "29pdd"; diff --git a/AllBase/BaseRegex.cs b/AllBase/BaseRegex.cs index ed06a5b..d4e111e 100644 --- a/AllBase/BaseRegex.cs +++ b/AllBase/BaseRegex.cs @@ -700,6 +700,33 @@ namespace AllBase return defaultValue; } + /// + /// 获取值 + /// + /// + /// + /// + public static string GetStringXml(ref string html, string reg) + { + string temp = GetMatchRegexString(html, @"<" + reg + ">([^']+?)"); + return temp; + } + + + /// + /// 获取值 + /// + /// + /// + /// + public static string GetStringXml(ref string html, string reg, string defaultValue) + { + string temp = GetMatchRegexString(html, @"<" + reg + ">([^']+?)"); + if (string.IsNullOrEmpty(temp)) + return defaultValue; + return temp; + } + public static string GetOneJsonObjStrJson(ref string html, string reg) { return GetJsonObjStrJson(ref html, reg).FirstOrDefault(); diff --git a/AllBase/Model/DBModel/user_payment_record.cs b/AllBase/Model/DBModel/user_payment_record.cs index e75f4ed..a98a57b 100644 --- a/AllBase/Model/DBModel/user_payment_record.cs +++ b/AllBase/Model/DBModel/user_payment_record.cs @@ -10,7 +10,7 @@ namespace AllBase.Model.DBModel { public long id { get; set; } /// - /// 变动类型,1:充值,2:采购花费,3:产品退款到账,4:运费退款到账,5:采购收款,6:产品退款扣除,7:运费退款扣除, 16:礼物单话费 + /// 变动类型,1:充值,2:采购花费,3:产品退款到账,4:运费退款到账,5:采购收款,6:产品退款扣除,7:运费退款扣除,16:礼物单话费,20:中转运费,23:作废运费返还 /// public int? type { get; set; } /// @@ -66,4 +66,20 @@ namespace AllBase.Model.DBModel /// public string counterparty_account_name { get; set; } } + + public enum EnumOrderPaymentType + { + 充值 = 1, + //采购花费 = 2, + //产品退款到账 = 3, + //运费退款到账 = 4, + //采购收款 = 5, + //产品退款扣除 = 6, + //运费退款扣除 = 7, + //礼物单支出 = 16, + 中转仓扣费支出 = 20, + 中转仓作废返还收入 = 23, + 中转仓超重支出 = 24, + 支付宝在线充值 = 30, + } } diff --git a/AllBase/Model/DBModel/user_points_record_info.cs b/AllBase/Model/DBModel/user_points_record_info.cs new file mode 100644 index 0000000..8b182d3 --- /dev/null +++ b/AllBase/Model/DBModel/user_points_record_info.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace AllBase.Model.DBModel +{ + public class user_points_record_info + { + public int id { get; set; } + public string user_name { get; set; } + public string user_nick { get; set; } + public int delta_points { get; set; } + public int? new_points { get; set; } + public string option_type { get; set; } + public string operator_type { get; set; } + public string operator_name { get; set; } + public string shop_id { get; set; } + public string shop_account { get; set; } + public string remark { get; set; } + public DateTime add_time { get; set; } + } +} diff --git a/Bin.Pak/History/火麒麟微店通/049796bca62c1f36b85a33e1a3727702.png b/Bin.Pak/History/火麒麟微店通/049796bca62c1f36b85a33e1a3727702.png new file mode 100644 index 0000000000000000000000000000000000000000..7dc760d6f6265f3ee2b245977926273e89284f4b GIT binary patch literal 12938 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 AV*mgE literal 0 HcmV?d00001 diff --git a/Bin.Pak/History/火麒麟微店通/6c7fe07d5f07f8af9a58e3029fa7abb2.jpg b/Bin.Pak/History/火麒麟微店通/6c7fe07d5f07f8af9a58e3029fa7abb2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..480aae3ad09f26aa6e8a527ea9603c2954b1c4ba GIT binary patch literal 88479 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
8p9)Lh1F8tMRF=FVf<19<7PWQ{XdMcj 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 literal 0 HcmV?d00001 diff --git a/Bin.Pak/History/火麒麟微店通/834b054bbdef4f08635bfe64980026fc.png b/Bin.Pak/History/火麒麟微店通/834b054bbdef4f08635bfe64980026fc.png new file mode 100644 index 0000000000000000000000000000000000000000..bfe4b950bcdf1a492bcae1fd7f50f122e4f0c304 GIT binary patch literal 13590 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 userList = new List(); @@ -501,7 +536,7 @@ namespace KJD_Web.BLL.WXXD userList.Add(user); } var data = JsonUtils.SerializeObjectToString(userList); - return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + "}"; + return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + "}"; } } return "{\"code\":19999,\"msg\":\"输入为空\"}"; @@ -741,18 +776,26 @@ namespace KJD_Web.BLL.WXXD string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; MysqlUtils mySql = new MysqlUtils(conn, true); string sql; - int userPoints; - int newUserPoints; - int operatorPoints; - int newOperatorPoints; - int shopPointsPerMonth = 30; + decimal userPoints; + decimal userPointsNew; + decimal userTotalPoints; + decimal userTotalPointsNew; + decimal operatorPoints; + decimal operatorPointsNew; + decimal shopPointsPerMonth = 30; // 账户之间的转移单独写 if (option_type == "转移") { // 转移查找自己账户及对方账户确定余额足够 sql = "SELECT points FROM `wxxd`.`user` WHERE user_name='" + operator_name + "'"; - operatorPoints = mySql.ExecuteFirstInt(sql); + operatorPoints = mySql.ExecuteFirstDecimal(sql); + if (!mySql.Message.IsNullOrEmpty()) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"查询错误:" + mySql.Message + "\"}"; + } if (operatorPoints < delta_points) { mySql.RollBack(); @@ -760,16 +803,31 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":500,\"msg\":\"余额不足\"}"; } sql = "SELECT points FROM `wxxd`.`user` WHERE user_name='" + user_name + "'"; - userPoints = mySql.ExecuteFirstInt(sql); + userPoints = mySql.ExecuteFirstDecimal(sql); + if (!mySql.Message.IsNullOrEmpty()) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"查询错误:" + mySql.Message + "\"}"; + } if (userPoints < -delta_points) { mySql.RollBack(); mySql.Close(); return "{\"code\":500,\"msg\":\"对方账户余额不足\"}"; } + sql = "SELECT recharge_points_total FROM `wxxd`.`user` WHERE user_name='" + user_name + "'"; + userTotalPoints = mySql.ExecuteFirstDecimal(sql); + if (!mySql.Message.IsNullOrEmpty()) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"查询错误:" + mySql.Message + "\"}"; + } - newUserPoints = userPoints + delta_points.ParseToInt(); - sql = " UPDATE `wxxd`.`user` SET points=" + newUserPoints.ParseToInt(); + userPointsNew = userPoints + delta_points; + userTotalPointsNew = userTotalPoints + delta_points; + sql = " UPDATE `wxxd`.`user` SET points=" + userPointsNew + ",recharge_points_total=" + userTotalPointsNew; sql += " WHERE user_name='" + user_name + "' AND points=" + userPoints + ";"; var toPointsRst = mySql.ExecuteAffectedRows(sql); if (!string.IsNullOrEmpty(mySql.Message)) @@ -785,8 +843,8 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":500,\"msg\":\"收款账户已发生改变,请刷新账户后重新操作\"}"; } - newOperatorPoints = operatorPoints - delta_points.ParseToInt(); - sql = " UPDATE `wxxd`.`user` SET points=" + newOperatorPoints.ParseToInt(); + operatorPointsNew = operatorPoints - delta_points; + sql = " UPDATE `wxxd`.`user` SET points=" + operatorPointsNew; sql += " WHERE user_name='" + operator_name + "' AND points=" + operatorPoints + ";"; var fromPointsRst = mySql.ExecuteAffectedRows(sql); if (!string.IsNullOrEmpty(mySql.Message)) @@ -803,17 +861,21 @@ namespace KJD_Web.BLL.WXXD } // 转入 - sql = " INSERT INTO wxxd.user_points_record(user_name,user_nick,points,option_type,operator_type,operator_name,shop_id,shop_account)"; - sql += " VALUES(@user_name,@user_nick,@points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account);"; + sql = " INSERT INTO wxxd.user_points_record" + + " (user_name,user_nick,delta_points,new_points,option_type,operator_type,operator_name,shop_id,shop_account,counterparty_account_name)"; + sql += " VALUES" + + " (@user_name,@user_nick,@delta_points,@new_points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account,@counterparty_account_name);"; List paramLst = new List(); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_nick", Value = user_nick, }); - paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "points", Value = delta_points, }); - paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "option_type", Value = delta_points > 0 ? "转入" : "转出", }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Decimal, ParameterName = "delta_points", Value = delta_points, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Decimal, ParameterName = "new_points", Value = userPointsNew, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "option_type", Value = "转入" }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_type", Value = operator_type, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_name", Value = operator_name, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_id", Value = shop_id, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_account", Value = shop_account, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "counterparty_account_name", Value = operator_name, }); var addOptionRst = mySql.ExecuteAffectedRows(sql, paramLst.ToArray()); if (!string.IsNullOrEmpty(mySql.Message)) { @@ -828,17 +890,22 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":500,\"msg\":\"新增操作记录失败,请稍候重试\"}"; } - sql = " INSERT INTO wxxd.user_points_record(user_name,user_nick,points,option_type,operator_type,operator_name,shop_id,shop_account)"; - sql += " VALUES(@user_name,@user_nick,@points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account);"; + // 转出 + sql = " INSERT INTO wxxd.user_points_record" + + "(user_name,user_nick,delta_points,new_points,option_type,operator_type,operator_name,shop_id,shop_account,counterparty_account_name)"; + sql += " VALUES" + + "(@user_name,@user_nick,@delta_points,@new_points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account,@counterparty_account_name);"; paramLst = new List(); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = operator_name, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_nick", Value = operator_nick, }); - paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "points", Value = delta_points, }); - paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "option_type", Value = delta_points > 0 ? "转出" : "转入", }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Decimal, ParameterName = "delta_points", Value = delta_points, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Decimal, ParameterName = "new_points", Value = operatorPointsNew, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "option_type", Value = "转出" }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_type", Value = operator_type, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_name", Value = operator_name, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_id", Value = shop_id, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "shop_account", Value = shop_account, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "counterparty_account_name", Value = user_name, }); addOptionRst = mySql.ExecuteAffectedRows(sql, paramLst.ToArray()); if (!string.IsNullOrEmpty(mySql.Message)) { @@ -855,24 +922,32 @@ namespace KJD_Web.BLL.WXXD mySql.Commit(); mySql.Close(); - return "{\"code\":200,\"msg\":\"success\",\"newOperatorPoints\":" + newOperatorPoints + ",\"newUserPoints\":" + newUserPoints + "}"; + return "{\"code\":200,\"msg\":\"success\",\"newOperatorPoints\":" + operatorPointsNew + ",\"newUserPoints\":" + userPointsNew + "}"; } else { #region 计算是否余额不足 sql = "SELECT points FROM `wxxd`.`user` WHERE user_name='" + user_name + "'"; - userPoints = mySql.ExecuteFirstInt(sql); - + userPoints = mySql.ExecuteFirstDecimal(sql); if (!string.IsNullOrEmpty(mySql.Message)) { mySql.RollBack(); mySql.Close(); return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}"; } + sql = "SELECT recharge_points_total FROM `wxxd`.`user` WHERE user_name='" + user_name + "'"; + userTotalPoints = mySql.ExecuteFirstDecimal(sql); + if (!mySql.Message.IsNullOrEmpty()) + { + mySql.RollBack(); + mySql.Close(); + return "{\"code\":500,\"msg\":\"查询错误:" + mySql.Message + "\"}"; + } + if (option_type == "续费") { sql = "SELECT shop_points_per_month FROM `wxxd`.`user` WHERE user_name='" + user_name + "'"; - shopPointsPerMonth = mySql.ExecuteFirstInt(sql); // 店铺续费一个月的点数,默认30,可以设置为其他值 + shopPointsPerMonth = mySql.ExecuteFirstDecimal(sql); // 店铺续费一个月的点数,默认30,可以设置为其他值 if (!string.IsNullOrEmpty(mySql.Message)) { mySql.RollBack(); @@ -881,11 +956,11 @@ namespace KJD_Web.BLL.WXXD } shopPointsPerMonth = Math.Max(30, shopPointsPerMonth); - if (delta_points <= 0 || delta_points % shopPointsPerMonth > 0) + if (delta_points <= 0 || delta_points.ParseToInt().ParseToDecimal() != delta_points || delta_points.ParseToInt() % shopPointsPerMonth.ParseToInt() > 0) { mySql.RollBack(); mySql.Close(); - return "{\"code\":501,\"msg\":\"续费点数必须是" + shopPointsPerMonth + "的整倍数\"}"; + return "{\"code\":501,\"msg\":\"续费点数必须是" + shopPointsPerMonth.ParseToInt() + "的整倍数\"}"; } else if (userPoints < delta_points) { @@ -899,13 +974,15 @@ namespace KJD_Web.BLL.WXXD sql = "UPDATE `wxxd`.`user` SET"; if (option_type == "充值") { - sql += " points=points+" + delta_points.ParseToInt() + ","; - newUserPoints = userPoints + delta_points.ParseToInt(); + userPointsNew = userPoints + delta_points; + sql += " points=" + userPointsNew + ","; + userTotalPointsNew = userTotalPoints + delta_points; + sql += " recharge_points_total=" + userTotalPointsNew + ","; } else { - sql += " points=points-" + delta_points.ParseToInt() + ","; - newUserPoints = userPoints - delta_points.ParseToInt(); + userPointsNew = userPoints - delta_points; + sql += " points=" + userPointsNew + ","; } sql = sql.TrimEnd(','); sql += " WHERE user_name='" + user_name + "' AND points=" + userPoints + ";"; @@ -923,12 +1000,13 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":500,\"msg\":\"账户已发生改变,请刷新账户后重新操作\"}"; } - sql = " INSERT INTO wxxd.user_points_record(user_name,user_nick,points,option_type,operator_type,operator_name,shop_id,shop_account)"; - sql += " VALUES(@user_name,@user_nick,@points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account);"; + sql = " INSERT INTO wxxd.user_points_record(user_name,user_nick,delta_points,new_points,option_type,operator_type,operator_name,shop_id,shop_account)"; + sql += " VALUES(@user_name,@user_nick,@delta_points,@new_points,@option_type,@operator_type,@operator_name,@shop_id,@shop_account);"; List paramLst = new List(); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_nick", Value = user_nick, }); - paramLst.Add(new MySqlParameter() { DbType = DbType.Int32, ParameterName = "points", Value = delta_points, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Decimal, ParameterName = "delta_points", Value = delta_points, }); + paramLst.Add(new MySqlParameter() { DbType = DbType.Decimal, ParameterName = "new_points", Value = userPointsNew, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "option_type", Value = option_type, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_type", Value = operator_type, }); paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "operator_name", Value = operator_name, }); @@ -963,7 +1041,7 @@ namespace KJD_Web.BLL.WXXD if (expireTime == 0) { - newExpireTime = TimeUtils.DateTimeToTimestampSeconds(DateTime.Now.AddMonths(delta_points.ParseToInt() / shopPointsPerMonth)); + newExpireTime = TimeUtils.DateTimeToTimestampSeconds(DateTime.Now.AddMonths(delta_points.ParseToInt() / shopPointsPerMonth.ParseToInt())); sql = " INSERT INTO `wxxd`.`user_points_shop_expire` (shop_id,expire_time‌)" + " VALUES ('" + shop_id + "'," + newExpireTime + ");"; } @@ -971,9 +1049,9 @@ namespace KJD_Web.BLL.WXXD { DateTime expireDateTime = TimeUtils.StampToDateTime(expireTime); if (expireDateTime < DateTime.Now) - expireDateTime = DateTime.Now.AddMonths(delta_points.ParseToInt() / shopPointsPerMonth); + expireDateTime = DateTime.Now.AddMonths(delta_points.ParseToInt() / shopPointsPerMonth.ParseToInt()); else - expireDateTime = expireDateTime.AddMonths(delta_points.ParseToInt() / shopPointsPerMonth); + expireDateTime = expireDateTime.AddMonths(delta_points.ParseToInt() / shopPointsPerMonth.ParseToInt()); newExpireTime = TimeUtils.DateTimeToTimestampSeconds(expireDateTime); sql = "UPDATE `wxxd`.`user_points_shop_expire` set expire_time‌=" + newExpireTime + " WHERE shop_id='" + shop_id + "' AND expire_time‌=" + expireTime; @@ -995,7 +1073,102 @@ namespace KJD_Web.BLL.WXXD mySql.Commit(); mySql.Close(); - return "{\"code\":200,\"msg\":\"success\",\"newExpireTime\":" + newExpireTime + ",\"newUserPoints\":" + newUserPoints + "}"; + return "{\"code\":200,\"msg\":\"success\",\"newExpireTime\":" + newExpireTime + ",\"newUserPoints\":" + userPointsNew + "}"; + } + } + return "{\"code\":19999,\"msg\":\"输入为空\"}"; + } + + + public string GetUserPoints(string inputData) + { + if (!string.IsNullOrEmpty(inputData)) + { + if (!GetSign(inputData)) + return "{\"code\":999,\"msg\":\"校验失败\"}"; + + var option_type_in = RegexUtils.GetStringQuery(ref inputData, "option_type_in")?.Replace("'", "\\'"); + var user_name_in = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "user_name_in"))?.Replace("'", "\\'"); + var shop_id_in = RegexUtils.GetStringQuery(ref inputData, "shop_id_in")?.Replace("'", "\\'"); + var shop_account_in = RegexUtils.GetStringQuery(ref inputData, "shop_account_in")?.Replace("'", "\\'"); + var create_time_begin = RegexUtils.GetStringQuery(ref inputData, "create_time_begin")?.Replace("'", "\\'"); + var create_time_end = RegexUtils.GetStringQuery(ref inputData, "create_time_end")?.Replace("'", "\\'"); + var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count")?.Replace("'", "\\'"); + + int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt(); + int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200); + + string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + MysqlUtils mySql = new MysqlUtils(conn); + + string sql = "SELECT count(*) " + + " FROM wxxd.user_points_record up " + + " WHERE 1=1"; + string where = ""; + if (!string.IsNullOrEmpty(option_type_in)) + where += " AND up.option_type in ('" + option_type_in + "')"; + if (!string.IsNullOrEmpty(user_name_in)) + where += " AND up.user_name in ('" + user_name_in.Replace(",", "','") + "')"; + if (!string.IsNullOrEmpty(shop_id_in)) + where += " AND up.shop_id in ('" + shop_id_in.Replace(",", "','") + "')"; + if (!string.IsNullOrEmpty(shop_account_in)) + where += " AND up.shop_account in ('" + shop_account_in.Replace(",", "','") + "')"; + if (!string.IsNullOrEmpty(create_time_begin)) + where += " AND up.add_time >= '" + create_time_begin + "'"; + if (!string.IsNullOrEmpty(create_time_end)) + where += " AND up.add_time <= '" + create_time_end + "'"; + + sql += where; + + int count = -1; + if (is_not_count != "true") + { + count = mySql.ExecuteFirstInt(sql); + if (!mySql.Message.IsNullOrEmpty()) + { + mySql.Close(); + return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}"; + } + } + + sql = "SELECT * " + + " FROM wxxd.user_points_record up " + + " WHERE 1=1"; + sql += where; + sql += " ORDER BY up.add_time desc "; + sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + + var dt = mySql.ExecuteDataTable(sql); + mySql.Close(); + if (!string.IsNullOrEmpty(mySql.Message)) + { + return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}"; + } + if (dt != null) + { + List userPaymentList = new List(); + foreach (DataRow row in dt.Rows) + { + user_points_record_info userPayment = new user_points_record_info + { + id = Convert.ToInt32(row["id"]), + user_name = row["user_name"].ParseToString(), + delta_points = row["delta_points"].ParseToInt(), + new_points = row["new_points"].ParseToNullableInt(), + operator_name = row["operator_name"].ParseToString(), + operator_type = row["operator_type"].ParseToString(), + option_type = row["option_type"].ParseToString(), + shop_account = row["shop_account"].ParseToString(), + shop_id = row["shop_id"].ParseToString(), + user_nick = row["user_nick"].ParseToString(), + remark = row["remark"].ParseToString(), + add_time = row["add_time"].ParseToString().ParseToDateTime(), + counterparty_account_name = row["counterparty_account_name"].ParseToString(), + }; + userPaymentList.Add(userPayment); + } + var data = JsonUtils.SerializeObjectToString(userPaymentList); + return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":\"" + count + "\"}"; } } return "{\"code\":19999,\"msg\":\"输入为空\"}"; @@ -1208,6 +1381,126 @@ namespace KJD_Web.BLL.WXXD return "{\"code\":19999,\"msg\":\"输入为空\"}"; } + public string GetUserBalance(string inputData) + { + // ALTER TABLE books ALTER INDEX idx_name INVISIBLE; --隐藏 + // ALTER TABLE books ALTER INDEX idx_name VISIBLE; --恢复 + // 双字匹配的全文索引 ALTER TABLE `user_payment_record` ADD FULLTEXT INDEX `remark_fulltext` (`remark`) WITH parser ngram + if (!string.IsNullOrEmpty(inputData)) + { + if (!GetSign(inputData)) + return "{\"code\":999,\"msg\":\"校验失败\"}"; + + var timeCalc = DateTime.Now; + + var type_in = RegexUtils.GetStringQuery(ref inputData, "type_in")?.Replace("'", "\\'"); + var user_name_in = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "user_name_in"))?.Replace("'", "\\'"); + var order_id_in = RegexUtils.GetStringQuery(ref inputData, "order_id_in")?.Replace("'", "\\'"); + var after_sale_id_in = RegexUtils.GetStringQuery(ref inputData, "after_sale_id_in")?.Replace("'", "\\'"); + var create_time_begin = RegexUtils.GetStringQuery(ref inputData, "create_time_begin")?.Replace("'", "\\'"); + var create_time_end = RegexUtils.GetStringQuery(ref inputData, "create_time_end")?.Replace("'", "\\'"); + var is_not_count = RegexUtils.GetStringQuery(ref inputData, "is_not_count")?.Replace("'", "\\'"); + var remark_fulltext = RegexUtils.GetStringQuery(ref inputData, "remark_fulltext")?.Replace("'", "\\'"); + + int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt(); + int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200); + + string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; + MysqlUtils mySql = new MysqlUtils(conn); + + string sql = "SELECT count(*) " + + " FROM wxxd.user_payment_record up " + + " WHERE 1=1"; + string where = ""; + if (!string.IsNullOrEmpty(type_in)) + where += " AND up.type in (" + type_in + ")"; + if (!string.IsNullOrEmpty(user_name_in)) + where += " AND up.user_name in ('" + user_name_in.Replace(",", "','") + "')"; + if (!string.IsNullOrEmpty(order_id_in)) + where += " AND up.order_id in ('" + order_id_in.Replace(",", "','") + "')"; + if (!string.IsNullOrEmpty(after_sale_id_in)) + where += " AND up.after_sale_id in ('" + after_sale_id_in.Replace(",", "','") + "')"; + if (!string.IsNullOrEmpty(create_time_begin)) + where += " AND up.create_time >= '" + create_time_begin + "'"; + if (!string.IsNullOrEmpty(create_time_end)) + where += " AND up.create_time <= '" + create_time_end + "'"; + //if (!string.IsNullOrEmpty(remark_fulltext)) + //{ + // List fullTextSearchStr = new List(); + // var remark_fulltextLst = remark_fulltext.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); + // foreach (var t in remark_fulltextLst) + // { + // var t1 = t; + // while (t1.Length >= 12) + // { + // fullTextSearchStr.Add(t1.Substring(0, 10)); + // t1 = t1.Substring(10); + // } + // fullTextSearchStr.Add(t1); + // } + // where += " AND MATCH(remark) AGAINST('" + string.Join(" +", fullTextSearchStr) + "' IN BOOLEAN MODE) "; + // //where += " AND MATCH(remark) AGAINST('" + string.Join(" +", fullTextSearchStr) + "' IN NATURAL LANGUAGE MODE) "; + // //where += " AND MATCH(remark) AGAINST('" + remark_fulltext.Replace(",", " ") + "' IN NATURAL LANGUAGE MODE) "; + //} + if (!string.IsNullOrEmpty(remark_fulltext)) + { + where += " AND MATCH(remark) AGAINST('" + remark_fulltext + "' IN BOOLEAN MODE)"; + } + + sql += where; + + int count = -1; + if (is_not_count != "true") + { + count = mySql.ExecuteFirstInt(sql); + if (!mySql.Message.IsNullOrEmpty()) + { + mySql.Close(); + return "{\"code\":500,\"msg\":\"" + mySql.Message + "\"}"; + } + } + + sql = "SELECT * " + + " FROM wxxd.user_payment_record up " + + " WHERE 1=1"; + sql += where; + sql += " ORDER BY up.create_time desc "; + sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + + var dt = mySql.ExecuteDataTable(sql); + mySql.Close(); + if (dt != null) + { + List userPaymentList = new List(); + foreach (DataRow row in dt.Rows) + { + user_payment_record_info userPayment = new user_payment_record_info + { + id = Convert.ToInt32(row["id"]), + user_name = row["user_name"].ParseToString(), + after_sale_id = row["after_sale_id"].ParseToLong(), + amount = row["amount"].ParseToDecimal(), + counterparty_account_name = row["counterparty_account_name"].ParseToString(), + create_by = row["create_by"].ParseToString(), + balance = row["balance"].ParseToDecimal(), + create_time = row["create_time"].ParseToString().ParseToDateTime(), + is_deleted = row["is_deleted"].ParseToInt(), + order_id = row["order_id"].ParseToString(), + platform_code = row["platform_code"].ParseToString(), + remark = row["remark"].ParseToString(), + type = row["type"].ParseToInt(), + update_by = row["update_by"].ParseToString(), + update_time = row["update_time"].ParseToString().ParseToDateTime(), + }; + userPaymentList.Add(userPayment); + } + var data = JsonUtils.SerializeObjectToString(userPaymentList); + var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000"); + return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":\"" + count + "\",\"seconds\":\"" + seconds + "\"}"; + } + } + return "{\"code\":19999,\"msg\":\"输入为空\"}"; + } public string ChangePassword(string inputData) { diff --git a/KJDService/KJD_WebService/KJD_WebService.csproj b/KJDService/KJD_WebService/KJD_WebService.csproj index 15f7293..3c64a2a 100644 --- a/KJDService/KJD_WebService/KJD_WebService.csproj +++ b/KJDService/KJD_WebService/KJD_WebService.csproj @@ -139,7 +139,8 @@ - + + diff --git a/KJDService/KJD_WebService/Model/WxModel/user_payment_record.cs b/KJDService/KJD_WebService/Model/WxModel/user_payment_record_info.cs similarity index 84% rename from KJDService/KJD_WebService/Model/WxModel/user_payment_record.cs rename to KJDService/KJD_WebService/Model/WxModel/user_payment_record_info.cs index 77a55e3..e5cb362 100644 --- a/KJDService/KJD_WebService/Model/WxModel/user_payment_record.cs +++ b/KJDService/KJD_WebService/Model/WxModel/user_payment_record_info.cs @@ -5,9 +5,12 @@ using System.Web; namespace KJD_Web.Model.WxModel { - public class user_payment_record + public class user_payment_record_info { public long id { get; set; } + /// + /// 变动类型,1:充值,2:采购花费,3:产品退款到账,4:运费退款到账,5:采购收款,6:产品退款扣除,7:运费退款扣除,16:礼物单话费,20:中转运费,23:作废运费返还 + /// public int? type { get; set; } /// diff --git a/KJDService/KJD_WebService/Model/WxModel/user_points_record_info.cs b/KJDService/KJD_WebService/Model/WxModel/user_points_record_info.cs new file mode 100644 index 0000000..99393ff --- /dev/null +++ b/KJDService/KJD_WebService/Model/WxModel/user_points_record_info.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; + +namespace KJD_Web.Model.WxModel +{ + public class user_points_record_info + { + public int id { get; set; } + public string user_name { get; set; } + public string user_nick { get; set; } + public int delta_points { get; set; } + public int? new_points { get; set; } + public string option_type { get; set; } + public string operator_type { get; set; } + public string operator_name { get; set; } + public string shop_id { get; set; } + public string shop_account { get; set; } + public string remark { get; set; } + public DateTime add_time { get; set; } + /// + /// 对方账户名称 + /// + public string counterparty_account_name { get; set; } + } +} \ No newline at end of file diff --git a/KJDService/KJD_WebService/Utils/MySqlUtils.cs b/KJDService/KJD_WebService/Utils/MySqlUtils.cs index 42e4178..a21ab1a 100644 --- a/KJDService/KJD_WebService/Utils/MySqlUtils.cs +++ b/KJDService/KJD_WebService/Utils/MySqlUtils.cs @@ -351,6 +351,20 @@ namespace KJD_Web.Utils return i; } + + /// + /// 返回第一个执行结果 + /// + /// + /// + public decimal ExecuteFirstDecimal(string SqlString, MySqlParameter[] parms = null) + { + string id = ExecuteFirst(SqlString, parms); + decimal i; + decimal.TryParse(id, out i); + return i; + } + /// /// 返回第一个值 /// diff --git a/KJDService/KJD_WebService/WXUserService.asmx.cs b/KJDService/KJD_WebService/WXUserService.asmx.cs index 0d8408e..eda2e9e 100644 --- a/KJDService/KJD_WebService/WXUserService.asmx.cs +++ b/KJDService/KJD_WebService/WXUserService.asmx.cs @@ -174,7 +174,19 @@ namespace KJD_Web Context.Response.Write(result); Context.Response.End(); } - + + [WebMethod] + public void get_user_points() + { + string jsontext = GetRequestJsonString(); + + var result = jsontext; + result = new WXUserManage().GetUserPoints(jsontext); + + Context.Response.Write(result); + Context.Response.End(); + } + [WebMethod] public void update_user_balance() { @@ -187,6 +199,18 @@ namespace KJD_Web Context.Response.End(); } + [WebMethod] + public void get_user_balance() + { + string jsontext = GetRequestJsonString(); + + var result = jsontext; + result = new WXUserManage().GetUserBalance(jsontext); + + Context.Response.Write(result); + Context.Response.End(); + } + [WebMethod] public void get_wx_sale_assistant_cookie() { diff --git a/KJDService/KJD_WebService/Web.config b/KJDService/KJD_WebService/Web.config index 69750d7..b7d5eec 100644 --- a/KJDService/KJD_WebService/Web.config +++ b/KJDService/KJD_WebService/Web.config @@ -23,7 +23,7 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + + AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ + AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA + OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT + AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj/////// + ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP// + //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4 + mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ + mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ + mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ + mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ + mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ + mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY + //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ + mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf + //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/ + //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv/// + //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP// + if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ + mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz + MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn/// + iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4 + kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP// + /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ + mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ + mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ + mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ + mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ + //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ + mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ + mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ + mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT + mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj/////// + ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn/// + //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ + mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ + mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ + mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ + mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj/////////// + ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY////// + ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP + //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4 + /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ + mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ + mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7 + mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4 + eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb//// + ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ + mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj///// + /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/ + ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ + mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ + mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ + mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ + mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA + AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA + AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz + MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA + AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w + AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA + Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA + AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA + AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA + AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA + AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA + AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA + AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA + AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD///// + wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w== + + + \ No newline at end of file diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs index 126b92f..6349cba 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminAccountForm.cs @@ -54,11 +54,8 @@ namespace TemuKJD.WXForms.AdminForms data.Append("&add_nick_name=" + GetHtml.UrlEncodeUtf8(txtNickName.Text)); data.Append("&add_user_name=" + GetHtml.UrlEncodeUtf8(txtMobile.Text)); data.Append("&add_mobile=" + GetHtml.UrlEncodeUtf8(txtMobile.Text)); - data.Append("&add_company=" + GetHtml.UrlEncodeUtf8(txtCompany.Text)); - if (!string.IsNullOrEmpty(txtOemId.Text.Trim())) - { - data.Append("&oem_id=" + GetHtml.UrlEncodeUtf8(txtOemId.Text.Trim())); - } + data.Append("&add_company=" + GetHtml.UrlEncodeUtf8(txtCompany.Text)); + data.Append("&oem_id=" + GetHtml.UrlEncodeUtf8(txtOemId.Text.Trim())); data.Append("&card_id="); if (cmbGroup.Text == "主账户") { diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WXAdminForm.Designer.cs index e0492a2..10114c7 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminForm.Designer.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminForm.Designer.cs @@ -42,8 +42,9 @@ System.Windows.Forms.TreeNode treeNode12 = new System.Windows.Forms.TreeNode("图片工具"); System.Windows.Forms.TreeNode treeNode13 = new System.Windows.Forms.TreeNode("运单管理"); System.Windows.Forms.TreeNode treeNode14 = new System.Windows.Forms.TreeNode("充值二维码"); - System.Windows.Forms.TreeNode treeNode15 = new System.Windows.Forms.TreeNode("中转订单管理"); - System.Windows.Forms.TreeNode treeNode16 = new System.Windows.Forms.TreeNode("超级权限管理", new System.Windows.Forms.TreeNode[] { + System.Windows.Forms.TreeNode treeNode15 = new System.Windows.Forms.TreeNode("快递费用明细"); + System.Windows.Forms.TreeNode treeNode16 = new System.Windows.Forms.TreeNode("中转订单管理"); + System.Windows.Forms.TreeNode treeNode17 = new System.Windows.Forms.TreeNode("超级权限管理", new System.Windows.Forms.TreeNode[] { treeNode1, treeNode2, treeNode3, @@ -58,7 +59,8 @@ treeNode12, treeNode13, treeNode14, - treeNode15}); + treeNode15, + treeNode16}); this.panel1 = new System.Windows.Forms.Panel(); this.panel3 = new System.Windows.Forms.Panel(); this.panel2 = new System.Windows.Forms.Panel(); @@ -81,7 +83,7 @@ this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; this.panel1.Location = new System.Drawing.Point(0, 0); this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(792, 446); + this.panel1.Size = new System.Drawing.Size(792, 572); this.panel1.TabIndex = 2; // // panel3 @@ -89,7 +91,7 @@ this.panel3.Dock = System.Windows.Forms.DockStyle.Fill; this.panel3.Location = new System.Drawing.Point(0, 28); this.panel3.Name = "panel3"; - this.panel3.Size = new System.Drawing.Size(792, 418); + this.panel3.Size = new System.Drawing.Size(792, 544); this.panel3.TabIndex = 1; // // panel2 @@ -126,7 +128,7 @@ // splitContainer1.Panel2 // this.splitContainer1.Panel2.Controls.Add(this.panel1); - this.splitContainer1.Size = new System.Drawing.Size(933, 446); + this.splitContainer1.Size = new System.Drawing.Size(933, 572); this.splitContainer1.SplitterDistance = 140; this.splitContainer1.SplitterWidth = 1; this.splitContainer1.TabIndex = 3; @@ -177,21 +179,23 @@ treeNode13.Text = "运单管理"; treeNode14.Name = "充值二维码"; treeNode14.Text = "充值二维码"; - treeNode15.Name = "中转订单管理"; - treeNode15.Text = "中转订单管理"; - treeNode16.Name = "超级权限管理"; - treeNode16.Text = "超级权限管理"; + treeNode15.Name = "快递费用明细"; + treeNode15.Text = "快递费用明细"; + treeNode16.Name = "中转订单管理"; + treeNode16.Text = "中转订单管理"; + treeNode17.Name = "超级权限管理"; + treeNode17.Text = "超级权限管理"; this.tv.Nodes.AddRange(new System.Windows.Forms.TreeNode[] { - treeNode16}); + treeNode17}); this.tv.OverForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235))))); - this.tv.Size = new System.Drawing.Size(140, 446); + this.tv.Size = new System.Drawing.Size(140, 572); this.tv.TabIndex = 1; this.tv.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.tv_AfterSelect); // // WXAdminForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; - this.ClientSize = new System.Drawing.Size(933, 446); + this.ClientSize = new System.Drawing.Size(933, 572); this.Controls.Add(this.splitContainer1); this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs index f1e4f6f..4885c3a 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminForm.cs @@ -13,6 +13,7 @@ using TemuKJD.BaseForms; using TemuKJD.PDDForms.AdminForms; using TemuKJD.PDDForms.ProductSelectForms; using TemuKJD.ToolForms; +using Work._29Tools.Forms.UserForms; namespace TemuKJD.WXForms.AdminForms { @@ -20,7 +21,7 @@ namespace TemuKJD.WXForms.AdminForms { public Lazy adminAccountForm = new Lazy(); public Lazy adminShopForm = new Lazy(); - public Lazy oemManageForm = new Lazy(); + public Lazy oemManageForm = new Lazy(); public Lazy pddDbProdListForm = new Lazy(); public Lazy getJuShuitanProdForm = new Lazy(); public Lazy getJuShuitanProductSKUListForm = new Lazy(); @@ -33,6 +34,7 @@ namespace TemuKJD.WXForms.AdminForms public Lazy banPlatformForm = new Lazy(); public Lazy adminSetTopUpQrCodeForm = new Lazy(); public Lazy wxAdminTransitWarehouseManage = new Lazy(); + public Lazy wxAdminAccountBalanceForm = new Lazy(); public WXAdminForm() { @@ -43,7 +45,7 @@ namespace TemuKJD.WXForms.AdminForms tv.SelectedNode = tv.Nodes[0].Nodes[0]; tv.ExpandGroup(tv.Nodes[0].Name); - List hideName = new List() { "运单管理", "地址管理1", "1688厂家采集1", "图片工具", "Sku采集回传1", + List hideName = new List() { "充值二维码", "运单管理", "地址管理1", "1688厂家采集1", "图片工具", "Sku采集回传1", "超级用户管理", "超级店铺管理", "OEM贴牌管理", "产品数据库", "SKU替换图", "选品加价管理", "认领待上传", "库存上传", "商品核价" }; if (BaseClass.GroupId == 3) @@ -129,6 +131,9 @@ namespace TemuKJD.WXForms.AdminForms case "充值二维码": SetForm(adminSetTopUpQrCodeForm.Value); break; + case "快递费用明细": + SetForm(wxAdminAccountBalanceForm.Value); + break; case "中转订单管理": SetForm(wxAdminTransitWarehouseManage.Value); break; diff --git a/TEMUKJD/WXForms/AdminForms/WxOemManageForm.Designer.cs b/TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.Designer.cs similarity index 99% rename from TEMUKJD/WXForms/AdminForms/WxOemManageForm.Designer.cs rename to TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.Designer.cs index 96a12aa..b70e0e6 100644 --- a/TEMUKJD/WXForms/AdminForms/WxOemManageForm.Designer.cs +++ b/TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.Designer.cs @@ -1,6 +1,6 @@ namespace TemuKJD.WXForms.AdminForms { - partial class WxOemManageForm + partial class WxAdminOemManageForm { /// /// Required designer variable. diff --git a/TEMUKJD/WXForms/AdminForms/WxOemManageForm.cs b/TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.cs similarity index 98% rename from TEMUKJD/WXForms/AdminForms/WxOemManageForm.cs rename to TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.cs index 4cd6c7f..10adfe9 100644 --- a/TEMUKJD/WXForms/AdminForms/WxOemManageForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.cs @@ -19,10 +19,10 @@ using Work; namespace TemuKJD.WXForms.AdminForms { - public partial class WxOemManageForm : BaseForm + public partial class WxAdminOemManageForm : BaseForm { public CancellationTokenSource cancellationTokenSource { get; set; } = null; - public WxOemManageForm() + public WxAdminOemManageForm() { InitializeComponent(); } @@ -48,7 +48,7 @@ namespace TemuKJD.WXForms.AdminForms data.Append(UserLogin.GetSignaturex()); data.Append("&oem_id=" + GetHtml.UrlEncodeUtf8(txtOemId.Text.Trim())); data.Append("&oem_name=" + GetHtml.UrlEncodeUtf8(txtOemName.Text.Trim())); - data.Append("&oem_owner=" + GetHtml.UrlEncodeUtf8(txtOemOwner.Text)); + data.Append("&oem_owner=" + GetHtml.UrlEncodeUtf8(txtOemOwner.Text.Trim())); string url = BaseClass.BuildWXObjString("user/add_mdy_oem"); string html = GetHtml.PostUtf8(url, data.ToString()).Trim(); diff --git a/TEMUKJD/WXForms/AdminForms/WxOemManageForm.resx b/TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.resx similarity index 100% rename from TEMUKJD/WXForms/AdminForms/WxOemManageForm.resx rename to TEMUKJD/WXForms/AdminForms/WxAdminOemManageForm.resx diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs index 90e2e6d..bfa3ebd 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs @@ -32,16 +32,18 @@ namespace TemuKJD.WXForms.ProductForms private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.label6 = new System.Windows.Forms.Label(); + this.chkRemoveSpecialChar = new TemuKJD.UserComponent.UcCheckBox(this.components); this.txtShippingPriceTimes = new System.Windows.Forms.TextBox(); this.label13 = new System.Windows.Forms.Label(); this.btnStop = new DevComponents.DotNetBar.PanelEx(); @@ -56,7 +58,6 @@ namespace TemuKJD.WXForms.ProductForms this.fPnlPriceRule = new System.Windows.Forms.FlowLayoutPanel(); this.ucAddPrice1 = new TemuKJD.PDDForms.ProductSelectForms.UcAddPrice(); this.ucAddPrice2 = new TemuKJD.PDDForms.ProductSelectForms.UcAddPrice(); - this.label6 = new System.Windows.Forms.Label(); this.lblNewAddPrice = new System.Windows.Forms.Label(); this.txtWaitSeconds = new System.Windows.Forms.TextBox(); this.txtAddMorePrice = new System.Windows.Forms.TextBox(); @@ -302,6 +303,8 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx2.Controls.Add(this.label6); + this.ucGroupBoxEx2.Controls.Add(this.chkRemoveSpecialChar); this.ucGroupBoxEx2.Controls.Add(this.txtShippingPriceTimes); this.ucGroupBoxEx2.Controls.Add(this.label13); this.ucGroupBoxEx2.Controls.Add(this.btnStop); @@ -312,7 +315,6 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.Controls.Add(this.label14); this.ucGroupBoxEx2.Controls.Add(this.label15); this.ucGroupBoxEx2.Controls.Add(this.pnlStep); - this.ucGroupBoxEx2.Controls.Add(this.label6); this.ucGroupBoxEx2.Controls.Add(this.lblNewAddPrice); this.ucGroupBoxEx2.Controls.Add(this.txtWaitSeconds); this.ucGroupBoxEx2.Controls.Add(this.txtAddMorePrice); @@ -331,6 +333,30 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.TabStop = false; this.ucGroupBoxEx2.Text = "商品上传"; // + // label6 + // + this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(939, 15); + this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(56, 17); + this.label6.TabIndex = 727; + this.label6.Text = "额外等待"; + // + // chkRemoveSpecialChar + // + this.chkRemoveSpecialChar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.chkRemoveSpecialChar.AutoSize = true; + this.chkRemoveSpecialChar.Checked = true; + this.chkRemoveSpecialChar.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkRemoveSpecialChar.Location = new System.Drawing.Point(797, 13); + this.chkRemoveSpecialChar.Name = "chkRemoveSpecialChar"; + this.chkRemoveSpecialChar.Size = new System.Drawing.Size(147, 21); + this.chkRemoveSpecialChar.TabIndex = 896; + this.chkRemoveSpecialChar.Text = "移除标题前部特殊符号"; + this.chkRemoveSpecialChar.UseVisualStyleBackColor = true; + // // txtShippingPriceTimes // this.txtShippingPriceTimes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); @@ -394,7 +420,7 @@ namespace TemuKJD.WXForms.ProductForms this.chkRandomCompanyProd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.chkRandomCompanyProd.Checked = true; this.chkRandomCompanyProd.CheckState = System.Windows.Forms.CheckState.Checked; - this.chkRandomCompanyProd.Location = new System.Drawing.Point(845, 13); + this.chkRandomCompanyProd.Location = new System.Drawing.Point(699, 13); this.chkRandomCompanyProd.Name = "chkRandomCompanyProd"; this.chkRandomCompanyProd.Size = new System.Drawing.Size(87, 21); this.chkRandomCompanyProd.TabIndex = 889; @@ -573,17 +599,6 @@ namespace TemuKJD.WXForms.ProductForms this.ucAddPrice2.Size = new System.Drawing.Size(420, 23); this.ucAddPrice2.TabIndex = 13; // - // label6 - // - this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(939, 15); - this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); - this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(56, 17); - this.label6.TabIndex = 727; - this.label6.Text = "额外等待"; - // // lblNewAddPrice // this.lblNewAddPrice.AutoSize = true; @@ -2486,19 +2501,19 @@ namespace TemuKJD.WXForms.ProductForms // this.dgvShop.AllowUserToAddRows = false; this.dgvShop.AllowUserToDeleteRows = false; - dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + dataGridViewCellStyle9.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle9; this.dgvShop.AutoRowNumber = true; this.dgvShop.BackgroundColor = System.Drawing.Color.White; this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle10.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle10; this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colSelect, @@ -2730,19 +2745,19 @@ namespace TemuKJD.WXForms.ProductForms // this.dgvSelectProduct.AllowUserToAddRows = false; this.dgvSelectProduct.AllowUserToDeleteRows = false; - dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke; - this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3; + dataGridViewCellStyle11.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvSelectProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle11; this.dgvSelectProduct.AutoRowNumber = true; this.dgvSelectProduct.BackgroundColor = System.Drawing.Color.White; this.dgvSelectProduct.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control; - dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText; - dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText; - dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4; + dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle12.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvSelectProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle12; this.dgvSelectProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dgvSelectProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.colCheck, @@ -2804,8 +2819,8 @@ namespace TemuKJD.WXForms.ProductForms // // colSupplierName // - dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle5; + dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colSupplierName.DefaultCellStyle = dataGridViewCellStyle13; this.colSupplierName.Frozen = true; this.colSupplierName.HeaderText = "店铺名称"; this.colSupplierName.Name = "colSupplierName"; @@ -2885,8 +2900,8 @@ namespace TemuKJD.WXForms.ProductForms // // colProductName // - dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProductName.DefaultCellStyle = dataGridViewCellStyle6; + dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductName.DefaultCellStyle = dataGridViewCellStyle14; this.colProductName.HeaderText = "商品标题"; this.colProductName.Name = "colProductName"; this.colProductName.ReadOnly = true; @@ -2894,8 +2909,8 @@ namespace TemuKJD.WXForms.ProductForms // // colProductCat // - dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colProductCat.DefaultCellStyle = dataGridViewCellStyle7; + dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colProductCat.DefaultCellStyle = dataGridViewCellStyle15; this.colProductCat.HeaderText = "商品类目"; this.colProductCat.Name = "colProductCat"; this.colProductCat.ReadOnly = true; @@ -2950,8 +2965,8 @@ namespace TemuKJD.WXForms.ProductForms // // colAddTime // - dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.colAddTime.DefaultCellStyle = dataGridViewCellStyle8; + dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colAddTime.DefaultCellStyle = dataGridViewCellStyle16; this.colAddTime.HeaderText = "上传时间"; this.colAddTime.Name = "colAddTime"; this.colAddTime.ReadOnly = true; @@ -3303,5 +3318,6 @@ namespace TemuKJD.WXForms.ProductForms private System.Windows.Forms.Label label39; private UserComponent.UcCheckBox chkSameSpecPriceDown; private UserComponent.UcCheckBox chkLowestPriceSku; + private UserComponent.UcCheckBox chkRemoveSpecialChar; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs index 5c4e1df..f27c424 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs @@ -1411,7 +1411,7 @@ namespace TemuKJD.WXForms.ProductForms data += "&wx_safe_status=安全商品,未校验"; if (noBanWx) data += "&ban_wx=0"; - if (BaseClass.SaLevel > 0 || BaseClass.UserAuthority.Contains("爆款数据") || BaseClass.UserAuthority.Contains("学员数据")) + if (BaseClass.SaLevel > 0 || BaseClass.UserAuthority.Contains("爆款数据") || BaseClass.UserAuthority.Contains("学员数据") || BaseClass.ParentAuthority.Contains("学员数据")) data += "&special_prod_type=普通商品,爆款数据"; var html = GetHtml.PostUtf8(url, data); @@ -1782,7 +1782,8 @@ namespace TemuKJD.WXForms.ProductForms { foreach (var txt in lstTitleReplaceText) { - dbProd.product_name = dbProd.product_name.Replace(txt, ""); + dbProd.product_name = dbProd.product_name.Replace(txt, ""); + selectProd.product_name = selectProd.product_name.Replace(txt, ""); } var goods_name = prodJObj["detail"]["goods_name"].ParseToString(); @@ -1813,6 +1814,55 @@ namespace TemuKJD.WXForms.ProductForms } prodJObj["detail"]["share_desc"] = share_desc; } + // 过滤标题特殊字符 + if (chkRemoveSpecialChar.Checked) + { + //if (dbProd.product_name.Contains("】") && dbProd.product_name.IndexOf("】") < dbProd.product_name.Length / 2 && dbProd.product_name.Length > 10) + // dbProd.product_name = dbProd.product_name.Substring(dbProd.product_name.IndexOf("】")).Trim('】'); + + //if (selectProd.product_name.Contains("】") && selectProd.product_name.IndexOf("】") < selectProd.product_name.Length / 2 && selectProd.product_name.Length > 10) + // selectProd.product_name = selectProd.product_name.Substring(selectProd.product_name.IndexOf("】")).Trim('】'); + + //var goods_name = prodJObj["detail"]["goods_name"].ParseToString(); + //if (goods_name.Contains("】") && goods_name.IndexOf("】") < goods_name.Length / 2 && goods_name.Length > 10) + // prodJObj["detail"]["goods_name"] = goods_name.Substring(goods_name.IndexOf("】")).Trim('】'); + + //if (dbProd.product_name.Contains("]") && dbProd.product_name.IndexOf("]") < dbProd.product_name.Length / 2 && dbProd.product_name.Length > 10) + // dbProd.product_name = dbProd.product_name.Substring(dbProd.product_name.IndexOf("]")).Trim(']'); + + //if (selectProd.product_name.Contains("]") && selectProd.product_name.IndexOf("]") < selectProd.product_name.Length / 2 && selectProd.product_name.Length > 10) + // selectProd.product_name = selectProd.product_name.Substring(selectProd.product_name.IndexOf("]")).Trim(']'); + + //goods_name = prodJObj["detail"]["goods_name"].ParseToString(); + //if (goods_name.Contains("]") && goods_name.IndexOf("]") < goods_name.Length / 2 && goods_name.Length > 10) + // prodJObj["detail"]["goods_name"] = goods_name.Substring(goods_name.IndexOf("]")).Trim(']'); + + + //if (dbProd.product_name.Contains("}") && dbProd.product_name.IndexOf("}") < dbProd.product_name.Length / 2 && dbProd.product_name.Length > 10) + // dbProd.product_name = dbProd.product_name.Substring(dbProd.product_name.IndexOf("}")).Trim('}'); + + //if (selectProd.product_name.Contains("}") && selectProd.product_name.IndexOf("}") < selectProd.product_name.Length / 2 && selectProd.product_name.Length > 10) + // selectProd.product_name = selectProd.product_name.Substring(selectProd.product_name.IndexOf("}")).Trim('}'); + + //goods_name = prodJObj["detail"]["goods_name"].ParseToString(); + //if (goods_name.Contains("}") && goods_name.IndexOf("}") < goods_name.Length / 2 && goods_name.Length > 10) + // prodJObj["detail"]["goods_name"] = goods_name.Substring(goods_name.IndexOf("}")).Trim('}'); + + var chLst = new List { ']', '】', ')', ')', '}', }; + foreach (var ch in chLst) + { + if (dbProd.product_name.Contains(ch) && dbProd.product_name.IndexOf(ch) < dbProd.product_name.Length / 2 && dbProd.product_name.Length > 10) + dbProd.product_name = dbProd.product_name.Substring(dbProd.product_name.IndexOf(ch)).Trim(ch); + + if (selectProd.product_name.Contains(ch) && selectProd.product_name.IndexOf(ch) < selectProd.product_name.Length / 2 && selectProd.product_name.Length > 10) + selectProd.product_name = selectProd.product_name.Substring(selectProd.product_name.IndexOf(ch)).Trim(ch); + + var goods_name = prodJObj["detail"]["goods_name"].ParseToString(); + if (goods_name.Contains(ch) && goods_name.IndexOf(ch) < goods_name.Length / 2 && goods_name.Length > 10) + prodJObj["detail"]["goods_name"] = goods_name.Substring(goods_name.IndexOf(ch)).Trim(ch); + } + + } // 替换货号 if (!string.IsNullOrEmpty(dbProd.ext_code)) prodJObj["detail"]["out_goods_sn"] = dbProd.ext_code; @@ -4342,7 +4392,10 @@ namespace TemuKJD.WXForms.ProductForms } } // 微信店采直接复制 - else if (dbProd.product_get_type_text == "微信店采" && upProdParam.product.info.category.FirstOrDefault()?.name != "图书") + //else if (dbProd.product_get_type_text == "微信店采" && upProdParam.product.info.category.FirstOrDefault()?.name != "图书" && + // upProdParam.product.info.category.FirstOrDefault()?.name != "食品饮料") + else if (dbProd.product_get_type_text == "微信店采" && + upProdParam.product.info.category.FirstOrDefault()?.name == "成人用品" && upProdParam.product.info.category[1].name != "情趣内衣") { upProdParam.product.info.qualificationList.Clear(); if (wxEditProdInfo.product?.info?.qualificationList?.Count > 0) diff --git a/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.Designer.cs index c79ec2c..037b67e 100644 --- a/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.Designer.cs +++ b/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.Designer.cs @@ -144,6 +144,12 @@ namespace TemuKJD.WXForms.ProductForms this.col_select_product = new System.Windows.Forms.DataGridViewLinkColumn(); this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); + this.txtBatchEditNotes = new System.Windows.Forms.TextBox(); + this.btnBatchEditNotes = new DevComponents.DotNetBar.PanelEx(); + this.dtpEnd = new System.Windows.Forms.DateTimePicker(); + this.dtpStart = new System.Windows.Forms.DateTimePicker(); + this.chkTime = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.label9 = new System.Windows.Forms.Label(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -168,6 +174,8 @@ namespace TemuKJD.WXForms.ProductForms // // splitContainer1.Panel1 // + this.splitContainer1.Panel1.Controls.Add(this.btnBatchEditNotes); + this.splitContainer1.Panel1.Controls.Add(this.txtBatchEditNotes); this.splitContainer1.Panel1.Controls.Add(this.btnAITitleFission); this.splitContainer1.Panel1.Controls.Add(this.txtFissionProductCount); this.splitContainer1.Panel1.Controls.Add(this.chkFissionProduct); @@ -186,7 +194,7 @@ namespace TemuKJD.WXForms.ProductForms // this.splitContainer1.Panel2.Controls.Add(this.splitContainer2); this.splitContainer1.Size = new System.Drawing.Size(1438, 686); - this.splitContainer1.SplitterDistance = 74; + this.splitContainer1.SplitterDistance = 115; this.splitContainer1.TabIndex = 1; // // btnAITitleFission @@ -217,7 +225,7 @@ namespace TemuKJD.WXForms.ProductForms // txtFissionProductCount // this.txtFissionProductCount.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtFissionProductCount.Location = new System.Drawing.Point(1160, 45); + this.txtFissionProductCount.Location = new System.Drawing.Point(1160, 44); this.txtFissionProductCount.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtFissionProductCount.Name = "txtFissionProductCount"; this.txtFissionProductCount.Size = new System.Drawing.Size(30, 23); @@ -227,7 +235,7 @@ namespace TemuKJD.WXForms.ProductForms // chkFissionProduct // this.chkFissionProduct.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.chkFissionProduct.Location = new System.Drawing.Point(1082, 46); + this.chkFissionProduct.Location = new System.Drawing.Point(1082, 45); this.chkFissionProduct.Margin = new System.Windows.Forms.Padding(10, 3, 3, 3); this.chkFissionProduct.Name = "chkFissionProduct"; this.chkFissionProduct.Size = new System.Drawing.Size(76, 21); @@ -242,7 +250,7 @@ namespace TemuKJD.WXForms.ProductForms this.btnOut1688ProdSaveDb.Cursor = System.Windows.Forms.Cursors.Hand; this.btnOut1688ProdSaveDb.DisabledBackColor = System.Drawing.Color.Empty; this.btnOut1688ProdSaveDb.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnOut1688ProdSaveDb.Location = new System.Drawing.Point(1324, 44); + this.btnOut1688ProdSaveDb.Location = new System.Drawing.Point(1324, 78); this.btnOut1688ProdSaveDb.Name = "btnOut1688ProdSaveDb"; this.btnOut1688ProdSaveDb.Size = new System.Drawing.Size(105, 25); this.btnOut1688ProdSaveDb.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -267,7 +275,7 @@ namespace TemuKJD.WXForms.ProductForms this.btnImportPddOutData.Cursor = System.Windows.Forms.Cursors.Hand; this.btnImportPddOutData.DisabledBackColor = System.Drawing.Color.Empty; this.btnImportPddOutData.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnImportPddOutData.Location = new System.Drawing.Point(1216, 44); + this.btnImportPddOutData.Location = new System.Drawing.Point(1216, 78); this.btnImportPddOutData.Name = "btnImportPddOutData"; this.btnImportPddOutData.Size = new System.Drawing.Size(105, 25); this.btnImportPddOutData.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -292,7 +300,7 @@ namespace TemuKJD.WXForms.ProductForms this.btnSelect.Cursor = System.Windows.Forms.Cursors.Hand; this.btnSelect.DisabledBackColor = System.Drawing.Color.Empty; this.btnSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnSelect.Location = new System.Drawing.Point(997, 44); + this.btnSelect.Location = new System.Drawing.Point(997, 43); this.btnSelect.Name = "btnSelect"; this.btnSelect.Size = new System.Drawing.Size(82, 25); this.btnSelect.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -454,6 +462,7 @@ namespace TemuKJD.WXForms.ProductForms this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 16.66667F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel1.Controls.Add(this.label9, 2, 2); this.tableLayoutPanel1.Controls.Add(this.cmbHasFission, 11, 1); this.tableLayoutPanel1.Controls.Add(this.label8, 10, 1); this.tableLayoutPanel1.Controls.Add(this.txtCatBoundLessThan, 9, 1); @@ -478,6 +487,9 @@ namespace TemuKJD.WXForms.ProductForms this.tableLayoutPanel1.Controls.Add(this.cmbWxCat, 9, 0); this.tableLayoutPanel1.Controls.Add(this.lblWxSafe, 10, 0); this.tableLayoutPanel1.Controls.Add(this.cmbWxSafe, 11, 0); + this.tableLayoutPanel1.Controls.Add(this.chkTime, 0, 2); + this.tableLayoutPanel1.Controls.Add(this.dtpStart, 1, 2); + this.tableLayoutPanel1.Controls.Add(this.dtpEnd, 3, 2); this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 6); this.tableLayoutPanel1.Name = "tableLayoutPanel1"; this.tableLayoutPanel1.RowCount = 3; @@ -496,17 +508,17 @@ namespace TemuKJD.WXForms.ProductForms "", "是", "否"}); - this.cmbHasFission.Location = new System.Drawing.Point(883, 38); + this.cmbHasFission.Location = new System.Drawing.Point(888, 38); this.cmbHasFission.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbHasFission.Name = "cmbHasFission"; - this.cmbHasFission.Size = new System.Drawing.Size(106, 25); + this.cmbHasFission.Size = new System.Drawing.Size(101, 25); this.cmbHasFission.TabIndex = 982; // // label8 // this.label8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(827, 42); + this.label8.Location = new System.Drawing.Point(832, 42); this.label8.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label8.Name = "label8"; this.label8.Size = new System.Drawing.Size(56, 17); @@ -519,17 +531,17 @@ namespace TemuKJD.WXForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.txtCatBoundLessThan.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.txtCatBoundLessThan.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtCatBoundLessThan.Location = new System.Drawing.Point(715, 38); + this.txtCatBoundLessThan.Location = new System.Drawing.Point(723, 38); this.txtCatBoundLessThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtCatBoundLessThan.Name = "txtCatBoundLessThan"; - this.txtCatBoundLessThan.Size = new System.Drawing.Size(102, 25); + this.txtCatBoundLessThan.Size = new System.Drawing.Size(99, 25); this.txtCatBoundLessThan.TabIndex = 883; this.txtCatBoundLessThan.Text = "100000"; // // chkCatBoundLessThan // this.chkCatBoundLessThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.chkCatBoundLessThan.Location = new System.Drawing.Point(651, 40); + this.chkCatBoundLessThan.Location = new System.Drawing.Point(659, 40); this.chkCatBoundLessThan.Margin = new System.Windows.Forms.Padding(3, 5, 0, 0); this.chkCatBoundLessThan.Name = "chkCatBoundLessThan"; this.chkCatBoundLessThan.Size = new System.Drawing.Size(64, 21); @@ -544,17 +556,17 @@ namespace TemuKJD.WXForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.txtSPU.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.txtSPU.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtSPU.Location = new System.Drawing.Point(52, 3); + this.txtSPU.Location = new System.Drawing.Point(72, 3); this.txtSPU.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtSPU.Name = "txtSPU"; - this.txtSPU.Size = new System.Drawing.Size(102, 25); + this.txtSPU.Size = new System.Drawing.Size(99, 25); this.txtSPU.TabIndex = 434; // // label5 // this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(3, 7); + this.label5.Location = new System.Drawing.Point(23, 7); this.label5.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label5.Name = "label5"; this.label5.Size = new System.Drawing.Size(49, 17); @@ -567,17 +579,17 @@ namespace TemuKJD.WXForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.txtProdName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.txtProdName.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtProdName.Location = new System.Drawing.Point(220, 3); + this.txtProdName.Location = new System.Drawing.Point(237, 3); this.txtProdName.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtProdName.Name = "txtProdName"; - this.txtProdName.Size = new System.Drawing.Size(102, 25); + this.txtProdName.Size = new System.Drawing.Size(99, 25); this.txtProdName.TabIndex = 427; // // label3 // this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(160, 7); + this.label3.Location = new System.Drawing.Point(177, 7); this.label3.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(60, 17); @@ -588,7 +600,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(9, 42); + this.label2.Location = new System.Drawing.Point(29, 42); this.label2.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(43, 17); @@ -604,10 +616,10 @@ namespace TemuKJD.WXForms.ProductForms this.cmbCat1.DropDownWidth = 1; this.cmbCat1.FormattingEnabled = true; this.cmbCat1.IntegralHeight = false; - this.cmbCat1.Location = new System.Drawing.Point(52, 38); + this.cmbCat1.Location = new System.Drawing.Point(72, 38); this.cmbCat1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbCat1.Name = "cmbCat1"; - this.cmbCat1.Size = new System.Drawing.Size(102, 25); + this.cmbCat1.Size = new System.Drawing.Size(99, 25); this.cmbCat1.TabIndex = 805; this.cmbCat1.Text = "全部"; this.cmbCat1.SelectedIndexChanged += new System.EventHandler(this.cmbCat1_SelectedIndexChanged); @@ -619,17 +631,17 @@ namespace TemuKJD.WXForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.txtCatBoundMoreThan.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.txtCatBoundMoreThan.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtCatBoundMoreThan.Location = new System.Drawing.Point(543, 38); + this.txtCatBoundMoreThan.Location = new System.Drawing.Point(554, 38); this.txtCatBoundMoreThan.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtCatBoundMoreThan.Name = "txtCatBoundMoreThan"; - this.txtCatBoundMoreThan.Size = new System.Drawing.Size(102, 25); + this.txtCatBoundMoreThan.Size = new System.Drawing.Size(99, 25); this.txtCatBoundMoreThan.TabIndex = 882; this.txtCatBoundMoreThan.Text = "1000"; // // chkCatBoundMoreThan // this.chkCatBoundMoreThan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.chkCatBoundMoreThan.Location = new System.Drawing.Point(479, 40); + this.chkCatBoundMoreThan.Location = new System.Drawing.Point(490, 40); this.chkCatBoundMoreThan.Margin = new System.Windows.Forms.Padding(3, 5, 0, 0); this.chkCatBoundMoreThan.Name = "chkCatBoundMoreThan"; this.chkCatBoundMoreThan.Size = new System.Drawing.Size(64, 21); @@ -642,7 +654,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label14.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label14.AutoSize = true; - this.label14.Location = new System.Drawing.Point(177, 42); + this.label14.Location = new System.Drawing.Point(194, 42); this.label14.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label14.Name = "label14"; this.label14.Size = new System.Drawing.Size(43, 17); @@ -658,10 +670,10 @@ namespace TemuKJD.WXForms.ProductForms this.cmbCat2.DropDownWidth = 1; this.cmbCat2.FormattingEnabled = true; this.cmbCat2.IntegralHeight = false; - this.cmbCat2.Location = new System.Drawing.Point(220, 38); + this.cmbCat2.Location = new System.Drawing.Point(237, 38); this.cmbCat2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbCat2.Name = "cmbCat2"; - this.cmbCat2.Size = new System.Drawing.Size(102, 25); + this.cmbCat2.Size = new System.Drawing.Size(99, 25); this.cmbCat2.TabIndex = 804; this.cmbCat2.Text = "全部"; this.cmbCat2.SelectedIndexChanged += new System.EventHandler(this.cmbCat2_SelectedIndexChanged); @@ -671,7 +683,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label17.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label17.AutoSize = true; - this.label17.Location = new System.Drawing.Point(328, 42); + this.label17.Location = new System.Drawing.Point(342, 42); this.label17.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label17.Name = "label17"; this.label17.Size = new System.Drawing.Size(43, 17); @@ -687,10 +699,10 @@ namespace TemuKJD.WXForms.ProductForms this.cmbCat3.DropDownWidth = 1; this.cmbCat3.FormattingEnabled = true; this.cmbCat3.IntegralHeight = false; - this.cmbCat3.Location = new System.Drawing.Point(371, 38); + this.cmbCat3.Location = new System.Drawing.Point(385, 38); this.cmbCat3.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbCat3.Name = "cmbCat3"; - this.cmbCat3.Size = new System.Drawing.Size(102, 25); + this.cmbCat3.Size = new System.Drawing.Size(99, 25); this.cmbCat3.TabIndex = 811; this.cmbCat3.Text = "全部"; this.cmbCat3.SelectedIndexChanged += new System.EventHandler(this.cmbCat3_SelectedIndexChanged); @@ -700,7 +712,7 @@ namespace TemuKJD.WXForms.ProductForms // this.lblSourceType.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.lblSourceType.AutoSize = true; - this.lblSourceType.Location = new System.Drawing.Point(339, 7); + this.lblSourceType.Location = new System.Drawing.Point(353, 7); this.lblSourceType.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.lblSourceType.Name = "lblSourceType"; this.lblSourceType.Size = new System.Drawing.Size(32, 17); @@ -717,10 +729,10 @@ namespace TemuKJD.WXForms.ProductForms "多多商品", "1688商品", "微信商品"}); - this.cmbSourceType.Location = new System.Drawing.Point(371, 3); + this.cmbSourceType.Location = new System.Drawing.Point(385, 3); this.cmbSourceType.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbSourceType.Name = "cmbSourceType"; - this.cmbSourceType.Size = new System.Drawing.Size(102, 25); + this.cmbSourceType.Size = new System.Drawing.Size(99, 25); this.cmbSourceType.TabIndex = 654; this.cmbSourceType.SelectedIndexChanged += new System.EventHandler(this.cmbSourceType_SelectedIndexChanged); this.cmbSourceType.TextChanged += new System.EventHandler(this.cmbSourceType_SelectedIndexChanged); @@ -729,7 +741,7 @@ namespace TemuKJD.WXForms.ProductForms // this.lblNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.lblNotes.AutoSize = true; - this.lblNotes.Location = new System.Drawing.Point(507, 7); + this.lblNotes.Location = new System.Drawing.Point(518, 7); this.lblNotes.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.lblNotes.Name = "lblNotes"; this.lblNotes.Size = new System.Drawing.Size(36, 17); @@ -742,17 +754,17 @@ namespace TemuKJD.WXForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.txtNotes.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.txtNotes.Font = new System.Drawing.Font("微软雅黑", 10F); - this.txtNotes.Location = new System.Drawing.Point(543, 3); + this.txtNotes.Location = new System.Drawing.Point(554, 3); this.txtNotes.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtNotes.Name = "txtNotes"; - this.txtNotes.Size = new System.Drawing.Size(102, 25); + this.txtNotes.Size = new System.Drawing.Size(99, 25); this.txtNotes.TabIndex = 439; // // label12 // this.label12.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label12.AutoSize = true; - this.label12.Location = new System.Drawing.Point(655, 7); + this.label12.Location = new System.Drawing.Point(663, 7); this.label12.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.label12.Name = "label12"; this.label12.Size = new System.Drawing.Size(60, 17); @@ -768,17 +780,17 @@ namespace TemuKJD.WXForms.ProductForms "", "是", "否"}); - this.cmbWxCat.Location = new System.Drawing.Point(715, 3); + this.cmbWxCat.Location = new System.Drawing.Point(723, 3); this.cmbWxCat.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbWxCat.Name = "cmbWxCat"; - this.cmbWxCat.Size = new System.Drawing.Size(102, 25); + this.cmbWxCat.Size = new System.Drawing.Size(99, 25); this.cmbWxCat.TabIndex = 802; // // lblWxSafe // this.lblWxSafe.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.lblWxSafe.AutoSize = true; - this.lblWxSafe.Location = new System.Drawing.Point(823, 7); + this.lblWxSafe.Location = new System.Drawing.Point(828, 7); this.lblWxSafe.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); this.lblWxSafe.Name = "lblWxSafe"; this.lblWxSafe.Size = new System.Drawing.Size(60, 17); @@ -795,10 +807,10 @@ namespace TemuKJD.WXForms.ProductForms "安全+未校验", "安全商品", "未校验"}); - this.cmbWxSafe.Location = new System.Drawing.Point(883, 3); + this.cmbWxSafe.Location = new System.Drawing.Point(888, 3); this.cmbWxSafe.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbWxSafe.Name = "cmbWxSafe"; - this.cmbWxSafe.Size = new System.Drawing.Size(106, 25); + this.cmbWxSafe.Size = new System.Drawing.Size(101, 25); this.cmbWxSafe.TabIndex = 676; this.cmbWxSafe.Text = "安全+未校验"; // @@ -806,7 +818,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label7.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(1189, 48); + this.label7.Location = new System.Drawing.Point(1189, 47); this.label7.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label7.Name = "label7"; this.label7.Size = new System.Drawing.Size(20, 17); @@ -848,15 +860,15 @@ namespace TemuKJD.WXForms.ProductForms // this.splitContainer2.Panel2.Controls.Add(this.ucSplitPage1); this.splitContainer2.Panel2.Controls.Add(this.statusBar); - this.splitContainer2.Size = new System.Drawing.Size(1438, 608); - this.splitContainer2.SplitterDistance = 579; + this.splitContainer2.Size = new System.Drawing.Size(1438, 567); + this.splitContainer2.SplitterDistance = 538; this.splitContainer2.TabIndex = 0; // // lblRelation // this.lblRelation.Anchor = System.Windows.Forms.AnchorStyles.Right; this.lblRelation.AutoSize = true; - this.lblRelation.Location = new System.Drawing.Point(246, 89); + this.lblRelation.Location = new System.Drawing.Point(246, 69); this.lblRelation.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.lblRelation.Name = "lblRelation"; this.lblRelation.Size = new System.Drawing.Size(68, 17); @@ -868,7 +880,7 @@ namespace TemuKJD.WXForms.ProductForms // this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbLoading.Location = new System.Drawing.Point(694, 264); + this.pbLoading.Location = new System.Drawing.Point(694, 244); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -879,7 +891,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label16.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label16.AutoSize = true; - this.label16.Location = new System.Drawing.Point(22, 217); + this.label16.Location = new System.Drawing.Point(22, 197); this.label16.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label16.Name = "label16"; this.label16.Size = new System.Drawing.Size(69, 17); @@ -890,7 +902,7 @@ namespace TemuKJD.WXForms.ProductForms // txtRealCoid // this.txtRealCoid.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtRealCoid.Location = new System.Drawing.Point(91, 149); + this.txtRealCoid.Location = new System.Drawing.Point(91, 129); this.txtRealCoid.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtRealCoid.Name = "txtRealCoid"; this.txtRealCoid.Size = new System.Drawing.Size(133, 23); @@ -900,7 +912,7 @@ namespace TemuKJD.WXForms.ProductForms // txtSKC // this.txtSKC.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtSKC.Location = new System.Drawing.Point(91, 214); + this.txtSKC.Location = new System.Drawing.Point(91, 194); this.txtSKC.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtSKC.Name = "txtSKC"; this.txtSKC.Size = new System.Drawing.Size(133, 23); @@ -911,7 +923,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label13.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label13.AutoSize = true; - this.label13.Location = new System.Drawing.Point(23, 183); + this.label13.Location = new System.Drawing.Point(23, 163); this.label13.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label13.Name = "label13"; this.label13.Size = new System.Drawing.Size(68, 17); @@ -922,7 +934,7 @@ namespace TemuKJD.WXForms.ProductForms // txtSecretStyleCode // this.txtSecretStyleCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtSecretStyleCode.Location = new System.Drawing.Point(91, 57); + this.txtSecretStyleCode.Location = new System.Drawing.Point(91, 37); this.txtSecretStyleCode.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtSecretStyleCode.Name = "txtSecretStyleCode"; this.txtSecretStyleCode.Size = new System.Drawing.Size(133, 23); @@ -933,7 +945,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label1.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(22, 153); + this.label1.Location = new System.Drawing.Point(22, 133); this.label1.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(69, 17); @@ -944,7 +956,7 @@ namespace TemuKJD.WXForms.ProductForms // chkWXComplateProd // this.chkWXComplateProd.Anchor = System.Windows.Forms.AnchorStyles.Left; - this.chkWXComplateProd.Location = new System.Drawing.Point(25, 253); + this.chkWXComplateProd.Location = new System.Drawing.Point(25, 233); this.chkWXComplateProd.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3); this.chkWXComplateProd.Name = "chkWXComplateProd"; this.chkWXComplateProd.Size = new System.Drawing.Size(87, 21); @@ -957,7 +969,7 @@ namespace TemuKJD.WXForms.ProductForms // this.lblGroup.Anchor = System.Windows.Forms.AnchorStyles.Right; this.lblGroup.AutoSize = true; - this.lblGroup.Location = new System.Drawing.Point(270, 57); + this.lblGroup.Location = new System.Drawing.Point(270, 37); this.lblGroup.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.lblGroup.Name = "lblGroup"; this.lblGroup.Size = new System.Drawing.Size(44, 17); @@ -969,7 +981,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(314, 54); + this.cmbGroupFilter.Location = new System.Drawing.Point(314, 34); 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); @@ -980,7 +992,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label15.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label15.AutoSize = true; - this.label15.Location = new System.Drawing.Point(47, 60); + this.label15.Location = new System.Drawing.Point(47, 40); this.label15.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label15.Name = "label15"; this.label15.Size = new System.Drawing.Size(44, 17); @@ -991,7 +1003,7 @@ namespace TemuKJD.WXForms.ProductForms // txtExtCode // this.txtExtCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtExtCode.Location = new System.Drawing.Point(91, 87); + this.txtExtCode.Location = new System.Drawing.Point(91, 67); this.txtExtCode.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.txtExtCode.Name = "txtExtCode"; this.txtExtCode.Size = new System.Drawing.Size(133, 23); @@ -1002,7 +1014,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label4.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(47, 90); + this.label4.Location = new System.Drawing.Point(47, 70); this.label4.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(44, 17); @@ -1019,7 +1031,7 @@ namespace TemuKJD.WXForms.ProductForms "是", "否", "导出未拉回"}); - this.cmbExportToOutServer.Location = new System.Drawing.Point(91, 179); + this.cmbExportToOutServer.Location = new System.Drawing.Point(91, 159); this.cmbExportToOutServer.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbExportToOutServer.Name = "cmbExportToOutServer"; this.cmbExportToOutServer.Size = new System.Drawing.Size(133, 25); @@ -1034,7 +1046,7 @@ namespace TemuKJD.WXForms.ProductForms "", "是", "否"}); - this.cmbRelation.Location = new System.Drawing.Point(314, 89); + this.cmbRelation.Location = new System.Drawing.Point(314, 69); 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); @@ -1048,7 +1060,7 @@ namespace TemuKJD.WXForms.ProductForms this.cmbSort.Items.AddRange(new object[] { "入库时间", "认领总数"}); - this.cmbSort.Location = new System.Drawing.Point(91, 116); + this.cmbSort.Location = new System.Drawing.Point(91, 96); this.cmbSort.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); this.cmbSort.Name = "cmbSort"; this.cmbSort.Size = new System.Drawing.Size(133, 25); @@ -1060,7 +1072,7 @@ namespace TemuKJD.WXForms.ProductForms // this.label6.Anchor = System.Windows.Forms.AnchorStyles.Right; this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(47, 120); + this.label6.Location = new System.Drawing.Point(47, 100); this.label6.Margin = new System.Windows.Forms.Padding(3, 0, 0, 0); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(44, 17); @@ -1130,7 +1142,7 @@ namespace TemuKJD.WXForms.ProductForms this.dgvDbProduct.Name = "dgvDbProduct"; this.dgvDbProduct.ReadOnly = true; this.dgvDbProduct.RowTemplate.Height = 23; - this.dgvDbProduct.Size = new System.Drawing.Size(1430, 579); + this.dgvDbProduct.Size = new System.Drawing.Size(1430, 538); this.dgvDbProduct.TabIndex = 6; this.dgvDbProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellContentClick); this.dgvDbProduct.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvDbProduct_Scroll); @@ -1465,6 +1477,85 @@ namespace TemuKJD.WXForms.ProductForms this.statusBar.Size = new System.Drawing.Size(1438, 25); this.statusBar.TabIndex = 5; // + // txtBatchEditNotes + // + this.txtBatchEditNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.txtBatchEditNotes.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.txtBatchEditNotes.Font = new System.Drawing.Font("微软雅黑", 10F); + this.txtBatchEditNotes.Location = new System.Drawing.Point(1216, 43); + this.txtBatchEditNotes.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.txtBatchEditNotes.Name = "txtBatchEditNotes"; + this.txtBatchEditNotes.Size = new System.Drawing.Size(126, 25); + this.txtBatchEditNotes.TabIndex = 1226; + // + // btnBatchEditNotes + // + this.btnBatchEditNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnBatchEditNotes.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnBatchEditNotes.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnBatchEditNotes.DisabledBackColor = System.Drawing.Color.Empty; + this.btnBatchEditNotes.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnBatchEditNotes.Location = new System.Drawing.Point(1345, 43); + this.btnBatchEditNotes.Name = "btnBatchEditNotes"; + this.btnBatchEditNotes.Size = new System.Drawing.Size(84, 25); + this.btnBatchEditNotes.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnBatchEditNotes.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnBatchEditNotes.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnBatchEditNotes.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnBatchEditNotes.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnBatchEditNotes.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnBatchEditNotes.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnBatchEditNotes.Style.GradientAngle = 90; + this.btnBatchEditNotes.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnBatchEditNotes.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnBatchEditNotes.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnBatchEditNotes.TabIndex = 1230; + this.btnBatchEditNotes.Text = "批量修改备注"; + this.btnBatchEditNotes.Click += new System.EventHandler(this.btnBatchEditNotes_Click); + // + // dtpEnd + // + this.dtpEnd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.dtpEnd.CustomFormat = "yyyy-MM-dd HH:mm"; + this.dtpEnd.Format = System.Windows.Forms.DateTimePickerFormat.Custom; + this.dtpEnd.Location = new System.Drawing.Point(237, 76); + this.dtpEnd.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.dtpEnd.Name = "dtpEnd"; + this.dtpEnd.Size = new System.Drawing.Size(99, 23); + this.dtpEnd.TabIndex = 982; + // + // dtpStart + // + this.dtpStart.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.dtpStart.CustomFormat = "yyyy-MM-dd HH:mm"; + this.dtpStart.Format = System.Windows.Forms.DateTimePickerFormat.Custom; + this.dtpStart.Location = new System.Drawing.Point(72, 76); + this.dtpStart.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3); + this.dtpStart.Name = "dtpStart"; + this.dtpStart.Size = new System.Drawing.Size(99, 23); + this.dtpStart.TabIndex = 981; + // + // chkTime + // + this.chkTime.Anchor = System.Windows.Forms.AnchorStyles.Right; + this.chkTime.Location = new System.Drawing.Point(3, 77); + this.chkTime.Name = "chkTime"; + this.chkTime.Size = new System.Drawing.Size(66, 21); + this.chkTime.TabIndex = 980; + this.chkTime.Text = "开始时间"; + this.chkTime.UseVisualStyleBackColor = true; + // + // label9 + // + this.label9.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label9.AutoSize = true; + this.label9.Location = new System.Drawing.Point(181, 77); + this.label9.Margin = new System.Windows.Forms.Padding(3, 7, 0, 0); + this.label9.Name = "label9"; + this.label9.Size = new System.Drawing.Size(56, 17); + this.label9.TabIndex = 885; + this.label9.Text = "结束时间"; + // // WXUserCollectAuthProdListForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -1598,5 +1689,11 @@ namespace TemuKJD.WXForms.ProductForms private System.Windows.Forms.DataGridViewLinkColumn col_edit; private System.Windows.Forms.DataGridViewLinkColumn col_delete; private System.Windows.Forms.DataGridViewLinkColumn col_select_product; + private DevComponents.DotNetBar.PanelEx btnBatchEditNotes; + private System.Windows.Forms.TextBox txtBatchEditNotes; + private System.Windows.Forms.DateTimePicker dtpStart; + private System.Windows.Forms.DateTimePicker dtpEnd; + private UserComponent.UcCheckBox chkTime; + private System.Windows.Forms.Label label9; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.cs b/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.cs index 841b919..42e45f5 100644 --- a/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXUserCollectAuthProdListForm.cs @@ -51,6 +51,9 @@ namespace TemuKJD.WXForms.ProductForms private void ProductListForm_Load(object sender, EventArgs e) { + dtpStart.Value = DateTime.Now.Date.AddMonths(-1); + dtpEnd.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1); + //chkCatBoundLessThan.Visible = false; //chkCatBoundMoreThan.Visible = false; //tableLayoutPanel1.SetColumn(lblSourceType, 2); @@ -391,6 +394,12 @@ namespace TemuKJD.WXForms.ProductForms else if (cmbRelation.Text == "是") data += "&is_relation=1"; + if (chkTime.Checked) + { + data += "&add_time_begin=" + dtpStart.Value.ToString("yyyy-MM-dd HH:mm:ss"); + data += "&add_time_end=" + dtpEnd.Value.ToString("yyyy-MM-dd HH:mm:ss"); + } + //if (chkEditTime.Checked) //{ // data += "&start_time=" + dtpStart.Value.ToString("yyyy-MM-dd HH:mm:ss"); @@ -1192,5 +1201,55 @@ namespace TemuKJD.WXForms.ProductForms DouBaoTitleFissionCefForm fissionCefForm = new DouBaoTitleFissionCefForm(prodList); fissionCefForm.ShowDialog(); } + + private void btnBatchEditNotes_Click(object sender, EventArgs e) + { + var lstProdId = dgvDbProduct.Rows.Cast().Where(row + => row.Cells["colSelect"]?.Value.ParseToBool() == true).Select(r => r.Cells["col_spu_id"]?.Value.ToString()).ToList(); + if (BaseMsgForm.ShowConfirm("确定批量编辑备注吗?").DialogResult == DialogResult.Cancel) + return; + if (lstProdId.Count == 0) + { + BaseMsgForm.ShowError("请选择要修改备注的商品"); + return; + } + + this.pbLoading.Visible = true; + //int total = 0, successCnt = 0, failCnt = 0; + Task.Run(() => + { + var prodList = lstTemuDbProduct.Where(p => lstProdId.Contains(p.spu_id)).ToList(); + //foreach (var dbProd in prodList) + //{ + // total++; + // var url = BaseClass.BuildPDDObjString("product/mdy_db_product"); + // var data = UserLogin.GetSignaturex() + + // "&db_id=" + dbProd.id + "¬es=" + this.txtBatchEditNotes.Text.Trim(); + // var html = GetHtml.PostUtf8(url, data); + // if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + // { + // failCnt++; + // } + // else + // { + // successCnt++; + // } + // Thread.Sleep(100); + //} + var url = BaseClass.BuildPDDObjString("product/mdy_db_product"); + var data = UserLogin.GetSignaturex() + + "&in_db_ids=" + string.Join(",", prodList.Select(p => p.id).ToList()) + "¬es=" + this.txtBatchEditNotes.Text.Trim(); + var html = GetHtml.PostUtf8(url, data); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + { + BaseMsgForm.ShowError("修改失败"); + } + else + { + SearchDbProd(this.ucSplitPage1.CurrentPage); + BaseMsgForm.ShowInfo("修改完成"); + } + }); + } } } diff --git a/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.Designer.cs b/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.Designer.cs index 44a35ec..b0a2751 100644 --- a/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.Designer.cs +++ b/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.Designer.cs @@ -33,37 +33,39 @@ namespace TemuKJD.WXForms.ShopForms this.pictureBox1 = new System.Windows.Forms.PictureBox(); this.btnRefresh = new DevComponents.DotNetBar.PanelEx(); this.pbLoading = new System.Windows.Forms.PictureBox(); - this.numAddTopUp = new System.Windows.Forms.NumericUpDown(); - this.label8 = new System.Windows.Forms.Label(); this.btnAddPoints = new DevComponents.DotNetBar.PanelEx(); - this.btnAddBalance = new DevComponents.DotNetBar.PanelEx(); - this.numericUpDown1 = new System.Windows.Forms.NumericUpDown(); + this.numAddPoints = new System.Windows.Forms.NumericUpDown(); this.label2 = new System.Windows.Forms.Label(); + this.splitContainer1 = new System.Windows.Forms.SplitContainer(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.numAddTopUp)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numAddPoints)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); + this.splitContainer1.Panel1.SuspendLayout(); + this.splitContainer1.SuspendLayout(); this.SuspendLayout(); // // label1 // this.label1.Font = new System.Drawing.Font("微软雅黑", 11F); this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(64)))), ((int)(((byte)(0))))); - this.label1.Location = new System.Drawing.Point(27, 283); + this.label1.Location = new System.Drawing.Point(21, 350); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(228, 72); this.label1.TabIndex = 1; this.label1.Text = "支付宝扫码充值,备注软件登录账户。如忘记备注,请联系购买方充值。"; + this.label1.Visible = false; // // pictureBox1 // this.pictureBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.pictureBox1.Location = new System.Drawing.Point(30, 31); + this.pictureBox1.Location = new System.Drawing.Point(24, 129); this.pictureBox1.Name = "pictureBox1"; this.pictureBox1.Size = new System.Drawing.Size(212, 212); this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; this.pictureBox1.TabIndex = 3; this.pictureBox1.TabStop = false; + this.pictureBox1.Visible = false; // // btnRefresh // @@ -71,7 +73,7 @@ namespace TemuKJD.WXForms.ShopForms this.btnRefresh.Cursor = System.Windows.Forms.Cursors.Hand; this.btnRefresh.DisabledBackColor = System.Drawing.Color.Empty; this.btnRefresh.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnRefresh.Location = new System.Drawing.Point(158, 358); + this.btnRefresh.Location = new System.Drawing.Point(152, 425); this.btnRefresh.Name = "btnRefresh"; this.btnRefresh.Size = new System.Drawing.Size(84, 23); this.btnRefresh.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -87,12 +89,13 @@ namespace TemuKJD.WXForms.ShopForms this.btnRefresh.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.btnRefresh.TabIndex = 1135; this.btnRefresh.Text = "刷新"; + this.btnRefresh.Visible = false; this.btnRefresh.Click += new System.EventHandler(this.btnRefresh_Click); // // pbLoading // this.pbLoading.Image = global::TemuKJD.Properties.Resources.loading_blue; - this.pbLoading.Location = new System.Drawing.Point(111, 112); + this.pbLoading.Location = new System.Drawing.Point(105, 210); this.pbLoading.Name = "pbLoading"; this.pbLoading.Size = new System.Drawing.Size(50, 50); this.pbLoading.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; @@ -100,47 +103,13 @@ namespace TemuKJD.WXForms.ShopForms this.pbLoading.TabStop = false; this.pbLoading.Visible = false; // - // numAddTopUp - // - this.numAddTopUp.DecimalPlaces = 2; - this.numAddTopUp.Location = new System.Drawing.Point(116, 418); - this.numAddTopUp.Maximum = new decimal(new int[] { - 100000, - 0, - 0, - 0}); - this.numAddTopUp.Minimum = new decimal(new int[] { - 1, - 0, - 0, - 131072}); - this.numAddTopUp.Name = "numAddTopUp"; - this.numAddTopUp.Size = new System.Drawing.Size(66, 23); - this.numAddTopUp.TabIndex = 1140; - this.numAddTopUp.Value = new decimal(new int[] { - 1, - 0, - 0, - 131072}); - this.numAddTopUp.Visible = false; - // - // label8 - // - this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(33, 421); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(92, 17); - this.label8.TabIndex = 1141; - this.label8.Text = "积分充值金额:"; - this.label8.Visible = false; - // // btnAddPoints // this.btnAddPoints.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.btnAddPoints.Cursor = System.Windows.Forms.Cursors.Hand; this.btnAddPoints.DisabledBackColor = System.Drawing.Color.Empty; this.btnAddPoints.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnAddPoints.Location = new System.Drawing.Point(186, 418); + this.btnAddPoints.Location = new System.Drawing.Point(180, 25); this.btnAddPoints.Name = "btnAddPoints"; this.btnAddPoints.Size = new System.Drawing.Size(56, 23); this.btnAddPoints.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -156,93 +125,83 @@ namespace TemuKJD.WXForms.ShopForms this.btnAddPoints.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.btnAddPoints.TabIndex = 1145; this.btnAddPoints.Text = "充值"; - this.btnAddPoints.Visible = false; this.btnAddPoints.Click += new System.EventHandler(this.btnAddPoints_Click); // - // btnAddBalance + // numAddPoints // - this.btnAddBalance.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnAddBalance.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnAddBalance.DisabledBackColor = System.Drawing.Color.Empty; - this.btnAddBalance.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnAddBalance.Location = new System.Drawing.Point(186, 452); - this.btnAddBalance.Name = "btnAddBalance"; - this.btnAddBalance.Size = new System.Drawing.Size(56, 23); - this.btnAddBalance.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnAddBalance.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnAddBalance.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnAddBalance.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnAddBalance.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnAddBalance.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnAddBalance.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnAddBalance.Style.GradientAngle = 90; - this.btnAddBalance.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnAddBalance.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnAddBalance.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnAddBalance.TabIndex = 1151; - this.btnAddBalance.Text = "充值"; - this.btnAddBalance.Visible = false; - this.btnAddBalance.Click += new System.EventHandler(this.btnAddBalance_Click); - // - // numericUpDown1 - // - this.numericUpDown1.DecimalPlaces = 2; - this.numericUpDown1.Location = new System.Drawing.Point(116, 452); - this.numericUpDown1.Maximum = new decimal(new int[] { + this.numAddPoints.DecimalPlaces = 2; + this.numAddPoints.Location = new System.Drawing.Point(108, 25); + this.numAddPoints.Maximum = new decimal(new int[] { 100000, 0, 0, 0}); - this.numericUpDown1.Minimum = new decimal(new int[] { + this.numAddPoints.Minimum = new decimal(new int[] { 1, 0, 0, 131072}); - this.numericUpDown1.Name = "numericUpDown1"; - this.numericUpDown1.Size = new System.Drawing.Size(66, 23); - this.numericUpDown1.TabIndex = 1149; - this.numericUpDown1.Value = new decimal(new int[] { - 1, + this.numAddPoints.Name = "numAddPoints"; + this.numAddPoints.Size = new System.Drawing.Size(66, 23); + this.numAddPoints.TabIndex = 1149; + this.numAddPoints.Value = new decimal(new int[] { + 100, 0, 0, - 131072}); - this.numericUpDown1.Visible = false; + 0}); // // label2 // this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(33, 455); + this.label2.Location = new System.Drawing.Point(25, 28); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(92, 17); this.label2.TabIndex = 1150; this.label2.Text = "余额充值金额:"; - this.label2.Visible = false; + // + // splitContainer1 + // + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Name = "splitContainer1"; + // + // splitContainer1.Panel1 + // + this.splitContainer1.Panel1.Controls.Add(this.label1); + this.splitContainer1.Panel1.Controls.Add(this.pbLoading); + this.splitContainer1.Panel1.Controls.Add(this.btnAddPoints); + this.splitContainer1.Panel1.Controls.Add(this.numAddPoints); + this.splitContainer1.Panel1.Controls.Add(this.label2); + this.splitContainer1.Panel1.Controls.Add(this.pictureBox1); + this.splitContainer1.Panel1.Controls.Add(this.btnRefresh); + // + // splitContainer1.Panel2 + // + this.splitContainer1.Panel2.Padding = new System.Windows.Forms.Padding(3); + this.splitContainer1.Size = new System.Drawing.Size(1288, 522); + this.splitContainer1.SplitterDistance = 261; + this.splitContainer1.TabIndex = 1162; // // WXGetTopUpQrCode // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; this.BackColor = System.Drawing.Color.White; - this.ClientSize = new System.Drawing.Size(800, 522); - this.Controls.Add(this.btnAddBalance); - this.Controls.Add(this.numericUpDown1); - this.Controls.Add(this.label2); - this.Controls.Add(this.btnAddPoints); - this.Controls.Add(this.numAddTopUp); - this.Controls.Add(this.label8); - this.Controls.Add(this.pbLoading); - this.Controls.Add(this.btnRefresh); - this.Controls.Add(this.pictureBox1); - this.Controls.Add(this.label1); + this.ClientSize = new System.Drawing.Size(1288, 522); + this.Controls.Add(this.splitContainer1); this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.KeyPreview = true; this.Name = "WXGetTopUpQrCode"; - this.Text = "二维码充值"; + this.Text = "二维码充值用户积分"; this.Load += new System.EventHandler(this.WXGetTopUpQrCode_Load); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pbLoading)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.numAddTopUp)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numAddPoints)).EndInit(); + this.splitContainer1.Panel1.ResumeLayout(false); + this.splitContainer1.Panel1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); + this.splitContainer1.ResumeLayout(false); this.ResumeLayout(false); - this.PerformLayout(); } @@ -251,11 +210,9 @@ namespace TemuKJD.WXForms.ShopForms private System.Windows.Forms.PictureBox pictureBox1; private DevComponents.DotNetBar.PanelEx btnRefresh; private System.Windows.Forms.PictureBox pbLoading; - private System.Windows.Forms.NumericUpDown numAddTopUp; - private System.Windows.Forms.Label label8; private DevComponents.DotNetBar.PanelEx btnAddPoints; - private DevComponents.DotNetBar.PanelEx btnAddBalance; - private System.Windows.Forms.NumericUpDown numericUpDown1; + private System.Windows.Forms.NumericUpDown numAddPoints; private System.Windows.Forms.Label label2; + private System.Windows.Forms.SplitContainer splitContainer1; } } \ No newline at end of file diff --git a/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.cs b/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.cs index 0226456..79cd142 100644 --- a/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.cs +++ b/TEMUKJD/WXForms/ShopForms/WXGetTopUpQrCode.cs @@ -1,4 +1,7 @@ using AllBase; +using AllBase.Model.Result; +using NaiBa.Util.Extension; +using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.ComponentModel; @@ -11,6 +14,7 @@ using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using TemuKJD.BaseForms; +using TemuKJD.BLL; using TemuKJD.KJDForms.ShopForms; using Work; using Work.BLL.Tools; @@ -61,28 +65,57 @@ namespace TemuKJD.WXForms.ShopForms private void WXGetTopUpQrCode_Load(object sender, EventArgs e) { + //if (BaseClass.AgentCode.IsNullOrEmpty() && BaseClass.OemId.IsNullOrEmpty()) + // this.pictureBox1.Visible = false; + Task.Run(() => { refreshQrcode(); }); } private void btnAddPoints_Click(object sender, EventArgs e) { - try - { - Process.Start(new ProcessStartInfo("https://excashier.alipay.com/standard/auth.htm?payOrderId=5afc56d40af64001ad2a486cce1ca579.25") { UseShellExecute = true }); - } - catch (Exception ex) - { - // 处理可能出现的异常,例如找不到浏览器等 - MessageBox.Show("无法打开浏览器: " + ex.Message); - } - } + // 打开外部浏览器 + //try + //{ + // Process.Start(new ProcessStartInfo("https://excashier.alipay.com/standard/auth.htm?payOrderId=5afc56d40af64001ad2a486cce1ca579.25") { UseShellExecute = true }); + //} + //catch (Exception ex) + //{ + // // 处理可能出现的异常,例如找不到浏览器等 + // MessageBox.Show("无法打开浏览器: " + ex.Message); + //} - private void btnAddBalance_Click(object sender, EventArgs e) - { - ShopLoginForm loginForm = new ShopLoginForm(new AllBase.Model.Result.ShopLoginInfo()); - loginForm.InitUrl = "https://excashier.alipay.com/standard/auth.htm?payOrderId=5afc56d40af64001ad2a486cce1ca579.25"; - loginForm.openType = KJDForms.ShopForms.EnumOpenType.manage; - loginForm.ShowDialog(); + string url2 = "https://po.e57.cn/prod-api/api/oms-api/alipay/pay"; + var data = new JObject(); + data["userId"] = BaseClass.UserId; + data["userName"] = BaseClass.UserName; // 用户名 + data["nickName"] = BaseClass.NickName; // 用户名 + data["totalAmount"] = numAddPoints.Value; // 金额点数 + data["type"] = 2; // type:1:快递余额,2:账户积分 + var dataStr2 = JsonHelper.SerializeObject(data); + var html2 = WXHttpResponseBLL.e57PostResponse(url2, dataStr2, ""); + //支付订单创建成功200<form name="punchout_form" method="post" action="https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.page.pay&sign=Z7%2Bv3UQL3B9Q9nH1iNGimA9FL9XPcG9A2oyjTpLbyExJbw52tHEX1LXifNrdJLtBdSjAQaFNyc3qzKUn3J6algYUlcy9e5DMKIG1NPQGSn3FFoSiKM%2FfSKlx8Jbj3zC2JFQAvUoFVUnk89pen078rh2IL2XKNaD300VDq28WiAAE3fX%2FHdd5Tu%2F3yun4tD90KOXzVQ2PFrcQqwefo2Bm%2BQVFCGXM5zxzE%2FvfkHnCwGwlH%2FfLrdsKrQc3s%2B1Gt1NHlS3iyKEP%2F4F7dKB9Iq0GIsyPJu9RINv9XRlk404S60gDRHBHs3avWdMwjMRkoxIdoe%2BPrXX0zxYEEN9hAX5C%2Fw%3D%3D&return_url=https%3A%2F%2Fpo.e57.cn&notify_url=https%3A%2F%2Fpo.e57.cn%2Fprod-api%2Fapi%2Foms-api%2Falipay%2Fnotify&version=1.0&app_id=2021006172644180&sign_type=RSA2&timestamp=2026-07-20+11%3A59%3A55&alipay_sdk=alipay-sdk-java-4.40.909.ALL&format=JSON"> + //<input type="hidden" name="biz_content" value="{&quot;out_trade_no&quot;:&quot;8f6ece19baf14f7ca8b0b5d8d0c03b57&quot;,&quot;total_amount&quot;:&quot;0.01&quot;,&quot;subject&quot;:&quot;店统领余额充值&quot;,&quot;body&quot;:&quot;店统领余额充值&quot;,&quot;product_code&quot;:&quot;FAST_INSTANT_TRADE_PAY&quot;,&quot;timeout_express&quot;:&quot;15m&quot;}"> + //<input type="submit" value="立即支付" style="display:none" > + //</form> + //<script>document.forms[0].submit();</script> + if (html2.Contains("200") || html2.Contains("0")) + { + var rstData = BaseRegex.GetStringXml(ref html2, "data").ParseToString(); + rstData = HttpUtility.HtmlDecode(rstData); + //rstData = HttpUtility.HtmlDecode(rstData); + + WXShopLoginForm loginForm = new WXShopLoginForm(new ShopLoginInfo()); + loginForm.InitUrl = ""; + loginForm.InitHtml = rstData; + loginForm.openType = EnumOpenType.manage; + loginForm.ShowDialog(); + + + //if (updateBalanceAction != null) + //{ + // updateBalanceAction(); + //} + } } } diff --git a/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.Designer.cs b/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.Designer.cs new file mode 100644 index 0000000..a00b28e --- /dev/null +++ b/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.Designer.cs @@ -0,0 +1,1074 @@ + +using TemuKJD.UserComponent; +using TemuKJD.UserControls; + +namespace Work._29Tools.Forms.UserForms +{ + partial class WXOemAccountBalanceForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WXOemAccountBalanceForm)); + this.panel1 = new System.Windows.Forms.Panel(); + this.splitContainer2 = new System.Windows.Forms.SplitContainer(); + this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.lblProfit = new System.Windows.Forms.Label(); + this.label13 = new System.Windows.Forms.Label(); + this.label12 = new System.Windows.Forms.Label(); + this.lblPostageNotReturnCnt = new System.Windows.Forms.Label(); + this.label10 = new System.Windows.Forms.Label(); + this.lblPostageWeightTotal = new System.Windows.Forms.Label(); + this.label8 = new System.Windows.Forms.Label(); + this.lblPostageReturnTotal = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.lblPostageTotal = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.btnSearchShop = new DevComponents.DotNetBar.PanelEx(); + this.label1 = new System.Windows.Forms.Label(); + this.txtUserName = new System.Windows.Forms.TextBox(); + this.btnSearch = new DevComponents.DotNetBar.PanelEx(); + this.dtpTimeEnd = new System.Windows.Forms.DateTimePicker(); + this.dtpTimeBegin = new System.Windows.Forms.DateTimePicker(); + this.label5 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.cmbType = new System.Windows.Forms.ComboBox(); + this.splitContainer3 = new System.Windows.Forms.SplitContainer(); + this.pnlGetUser = new System.Windows.Forms.Panel(); + this.btnOk = new DevComponents.DotNetBar.PanelEx(); + this.btnClose = new DevComponents.DotNetBar.PanelEx(); + this.btnClearFilter = new DevComponents.DotNetBar.PanelEx(); + this.cmbGroup = new System.Windows.Forms.ComboBox(); + this.label37 = new System.Windows.Forms.Label(); + this.dgvUser = new TemuKJD.UserComponent.DataGridViewEx(); + this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.UserIdColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.UserNickNameColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.mobileColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colParentUserName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.groupIdColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.groupNameColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colCompany = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.shopCountColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSaLevel = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colSaLevelName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colAuthority = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOemId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOemName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPoints = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPlus = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopPointsPerMonth = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colChangePointsPerMonth = new System.Windows.Forms.DataGridViewLinkColumn(); + this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colBalancePlus = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPostagePerOrder = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colChangePostagePerOrder = new System.Windows.Forms.DataGridViewLinkColumn(); + this.editColumn = new System.Windows.Forms.DataGridViewLinkColumn(); + this.deleteColumn = new System.Windows.Forms.DataGridViewLinkColumn(); + this.btnGetUser = new DevComponents.DotNetBar.PanelEx(); + this.label2 = new System.Windows.Forms.Label(); + this.txtSearch = new System.Windows.Forms.TextBox(); + this.pictureBox2 = new System.Windows.Forms.PictureBox(); + this.dgvPayment = new TemuKJD.UserComponent.DataGridViewEx(); + this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colType = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colUserName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colOrderId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colAmount = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colBalance = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colCreateTime = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colRemark = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit(); + this.splitContainer2.Panel1.SuspendLayout(); + this.splitContainer2.Panel2.SuspendLayout(); + this.splitContainer2.SuspendLayout(); + this.ucGroupBoxEx1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit(); + this.splitContainer3.Panel1.SuspendLayout(); + this.splitContainer3.Panel2.SuspendLayout(); + this.splitContainer3.SuspendLayout(); + this.pnlGetUser.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvUser)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgvPayment)).BeginInit(); + this.SuspendLayout(); + // + // panel1 + // + this.panel1.BackColor = System.Drawing.Color.White; + this.panel1.Controls.Add(this.splitContainer2); + this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel1.Location = new System.Drawing.Point(2, 34); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(1362, 580); + this.panel1.TabIndex = 1140; + // + // splitContainer2 + // + this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer2.Location = new System.Drawing.Point(0, 0); + this.splitContainer2.Name = "splitContainer2"; + this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer2.Panel1 + // + this.splitContainer2.Panel1.Controls.Add(this.ucGroupBoxEx1); + // + // splitContainer2.Panel2 + // + this.splitContainer2.Panel2.Controls.Add(this.splitContainer3); + this.splitContainer2.Size = new System.Drawing.Size(1362, 580); + this.splitContainer2.SplitterDistance = 86; + this.splitContainer2.TabIndex = 1163; + // + // ucGroupBoxEx1 + // + this.ucGroupBoxEx1.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.ucGroupBoxEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucGroupBoxEx1.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx1.Controls.Add(this.lblProfit); + this.ucGroupBoxEx1.Controls.Add(this.label13); + this.ucGroupBoxEx1.Controls.Add(this.label12); + this.ucGroupBoxEx1.Controls.Add(this.lblPostageNotReturnCnt); + this.ucGroupBoxEx1.Controls.Add(this.label10); + this.ucGroupBoxEx1.Controls.Add(this.lblPostageWeightTotal); + this.ucGroupBoxEx1.Controls.Add(this.label8); + this.ucGroupBoxEx1.Controls.Add(this.lblPostageReturnTotal); + this.ucGroupBoxEx1.Controls.Add(this.label7); + this.ucGroupBoxEx1.Controls.Add(this.lblPostageTotal); + this.ucGroupBoxEx1.Controls.Add(this.label3); + this.ucGroupBoxEx1.Controls.Add(this.btnSearchShop); + this.ucGroupBoxEx1.Controls.Add(this.label1); + this.ucGroupBoxEx1.Controls.Add(this.txtUserName); + this.ucGroupBoxEx1.Controls.Add(this.btnSearch); + this.ucGroupBoxEx1.Controls.Add(this.dtpTimeEnd); + this.ucGroupBoxEx1.Controls.Add(this.dtpTimeBegin); + this.ucGroupBoxEx1.Controls.Add(this.label5); + this.ucGroupBoxEx1.Controls.Add(this.label4); + this.ucGroupBoxEx1.Controls.Add(this.cmbType); + this.ucGroupBoxEx1.Location = new System.Drawing.Point(0, 2); + this.ucGroupBoxEx1.Name = "ucGroupBoxEx1"; + this.ucGroupBoxEx1.Size = new System.Drawing.Size(1362, 84); + this.ucGroupBoxEx1.TabIndex = 0; + this.ucGroupBoxEx1.TabStop = false; + this.ucGroupBoxEx1.Text = "查询条件"; + // + // lblProfit + // + this.lblProfit.AutoSize = true; + this.lblProfit.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.lblProfit.Location = new System.Drawing.Point(1261, 24); + this.lblProfit.Name = "lblProfit"; + this.lblProfit.Size = new System.Drawing.Size(40, 17); + this.lblProfit.TabIndex = 1185; + this.lblProfit.Text = "profit"; + // + // label13 + // + this.label13.AutoSize = true; + this.label13.Location = new System.Drawing.Point(1166, 24); + this.label13.Name = "label13"; + this.label13.Size = new System.Drawing.Size(104, 17); + this.label13.TabIndex = 1184; + this.label13.Text = "预计可提现利润:"; + // + // label12 + // + this.label12.AutoSize = true; + this.label12.Location = new System.Drawing.Point(546, 24); + this.label12.Name = "label12"; + this.label12.Size = new System.Drawing.Size(80, 17); + this.label12.TabIndex = 1183; + this.label12.Text = "当前选中的:"; + // + // lblPostageNotReturnCnt + // + this.lblPostageNotReturnCnt.AutoSize = true; + this.lblPostageNotReturnCnt.Location = new System.Drawing.Point(993, 51); + this.lblPostageNotReturnCnt.Name = "lblPostageNotReturnCnt"; + this.lblPostageNotReturnCnt.Size = new System.Drawing.Size(135, 17); + this.lblPostageNotReturnCnt.TabIndex = 1182; + this.lblPostageNotReturnCnt.Text = "postageNotReturnCnt"; + // + // label10 + // + this.label10.AutoSize = true; + this.label10.Location = new System.Drawing.Point(910, 51); + this.label10.Name = "label10"; + this.label10.Size = new System.Drawing.Size(92, 17); + this.label10.TabIndex = 1181; + this.label10.Text = "有效订单数量:"; + // + // lblPostageWeightTotal + // + this.lblPostageWeightTotal.AutoSize = true; + this.lblPostageWeightTotal.Location = new System.Drawing.Point(747, 51); + this.lblPostageWeightTotal.Name = "lblPostageWeightTotal"; + this.lblPostageWeightTotal.Size = new System.Drawing.Size(126, 17); + this.lblPostageWeightTotal.TabIndex = 1180; + this.lblPostageWeightTotal.Text = "postageWeightTotal"; + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(652, 51); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(104, 17); + this.label8.TabIndex = 1179; + this.label8.Text = "中转仓超重扣费:"; + // + // lblPostageReturnTotal + // + this.lblPostageReturnTotal.AutoSize = true; + this.lblPostageReturnTotal.Location = new System.Drawing.Point(993, 24); + this.lblPostageReturnTotal.Name = "lblPostageReturnTotal"; + this.lblPostageReturnTotal.Size = new System.Drawing.Size(123, 17); + this.lblPostageReturnTotal.TabIndex = 1178; + this.lblPostageReturnTotal.Text = "postageReturnTotal"; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(898, 24); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(104, 17); + this.label7.TabIndex = 1177; + this.label7.Text = "中转仓作废返还:"; + // + // lblPostageTotal + // + this.lblPostageTotal.AutoSize = true; + this.lblPostageTotal.Location = new System.Drawing.Point(747, 24); + this.lblPostageTotal.Name = "lblPostageTotal"; + this.lblPostageTotal.Size = new System.Drawing.Size(85, 17); + this.lblPostageTotal.TabIndex = 1176; + this.lblPostageTotal.Text = "postageTotal"; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(652, 24); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(104, 17); + this.label3.TabIndex = 1169; + this.label3.Text = "中转仓发货扣费:"; + // + // btnSearchShop + // + this.btnSearchShop.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnSearchShop.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnSearchShop.DisabledBackColor = System.Drawing.Color.Empty; + this.btnSearchShop.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnSearchShop.Location = new System.Drawing.Point(419, 51); + this.btnSearchShop.Name = "btnSearchShop"; + this.btnSearchShop.Size = new System.Drawing.Size(27, 23); + this.btnSearchShop.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearchShop.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearchShop.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearchShop.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnSearchShop.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnSearchShop.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnSearchShop.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnSearchShop.Style.GradientAngle = 90; + this.btnSearchShop.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearchShop.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearchShop.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearchShop.TabIndex = 1162; + this.btnSearchShop.Text = "..."; + this.btnSearchShop.Click += new System.EventHandler(this.btnSearchShop_Click); + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(11, 54); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(44, 17); + this.label1.TabIndex = 1158; + this.label1.Text = "用户名"; + // + // txtUserName + // + this.txtUserName.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.txtUserName.Location = new System.Drawing.Point(55, 51); + this.txtUserName.Name = "txtUserName"; + this.txtUserName.Size = new System.Drawing.Size(358, 23); + this.txtUserName.TabIndex = 1157; + // + // btnSearch + // + this.btnSearch.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnSearch.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnSearch.DisabledBackColor = System.Drawing.Color.Empty; + this.btnSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnSearch.Location = new System.Drawing.Point(451, 51); + this.btnSearch.Name = "btnSearch"; + this.btnSearch.Size = new System.Drawing.Size(58, 23); + this.btnSearch.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearch.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearch.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearch.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnSearch.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnSearch.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnSearch.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnSearch.Style.GradientAngle = 90; + this.btnSearch.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearch.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearch.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearch.TabIndex = 1153; + this.btnSearch.Text = "查询"; + this.btnSearch.Click += new System.EventHandler(this.btnSearch_Click); + // + // dtpTimeEnd + // + this.dtpTimeEnd.Location = new System.Drawing.Point(377, 21); + this.dtpTimeEnd.Name = "dtpTimeEnd"; + this.dtpTimeEnd.Size = new System.Drawing.Size(132, 23); + this.dtpTimeEnd.TabIndex = 1149; + // + // dtpTimeBegin + // + this.dtpTimeBegin.Location = new System.Drawing.Point(239, 21); + this.dtpTimeBegin.Name = "dtpTimeBegin"; + this.dtpTimeBegin.Size = new System.Drawing.Size(132, 23); + this.dtpTimeBegin.TabIndex = 1148; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(182, 24); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(56, 17); + this.label5.TabIndex = 1147; + this.label5.Text = "起止时间"; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(22, 24); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(32, 17); + this.label4.TabIndex = 1145; + this.label4.Text = "类型"; + // + // cmbType + // + this.cmbType.FormattingEnabled = true; + this.cmbType.Items.AddRange(new object[] { + "", + "充值", + "管理员充值", + "支付宝充值", + "拍单扣除/作废返还", + "超重扣费"}); + this.cmbType.Location = new System.Drawing.Point(55, 20); + this.cmbType.Name = "cmbType"; + this.cmbType.Size = new System.Drawing.Size(121, 25); + this.cmbType.TabIndex = 0; + // + // splitContainer3 + // + this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer3.Location = new System.Drawing.Point(0, 0); + this.splitContainer3.Name = "splitContainer3"; + this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer3.Panel1 + // + this.splitContainer3.Panel1.Controls.Add(this.pnlGetUser); + this.splitContainer3.Panel1.Controls.Add(this.pictureBox2); + this.splitContainer3.Panel1.Controls.Add(this.dgvPayment); + this.splitContainer3.Panel1.Padding = new System.Windows.Forms.Padding(2); + // + // splitContainer3.Panel2 + // + this.splitContainer3.Panel2.Controls.Add(this.ucSplitPage1); + this.splitContainer3.Size = new System.Drawing.Size(1362, 490); + this.splitContainer3.SplitterDistance = 461; + this.splitContainer3.TabIndex = 1163; + // + // pnlGetUser + // + this.pnlGetUser.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.pnlGetUser.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.pnlGetUser.Controls.Add(this.btnOk); + this.pnlGetUser.Controls.Add(this.btnClose); + this.pnlGetUser.Controls.Add(this.btnClearFilter); + this.pnlGetUser.Controls.Add(this.cmbGroup); + this.pnlGetUser.Controls.Add(this.label37); + this.pnlGetUser.Controls.Add(this.dgvUser); + this.pnlGetUser.Controls.Add(this.btnGetUser); + this.pnlGetUser.Controls.Add(this.label2); + this.pnlGetUser.Controls.Add(this.txtSearch); + this.pnlGetUser.Location = new System.Drawing.Point(55, 10); + this.pnlGetUser.Name = "pnlGetUser"; + this.pnlGetUser.Size = new System.Drawing.Size(454, 381); + this.pnlGetUser.TabIndex = 1164; + this.pnlGetUser.Visible = false; + // + // btnOk + // + this.btnOk.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.btnOk.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnOk.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnOk.DisabledBackColor = System.Drawing.Color.Empty; + this.btnOk.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnOk.Location = new System.Drawing.Point(409, 350); + this.btnOk.Name = "btnOk"; + this.btnOk.Size = new System.Drawing.Size(36, 23); + this.btnOk.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnOk.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnOk.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnOk.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnOk.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnOk.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnOk.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnOk.Style.GradientAngle = 90; + this.btnOk.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnOk.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnOk.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnOk.TabIndex = 865; + this.btnOk.Text = "确定"; + this.btnOk.Click += new System.EventHandler(this.btnOk_Click); + // + // btnClose + // + this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.btnClose.CanvasColor = System.Drawing.SystemColors.Control; + this.btnClose.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnClose.DisabledBackColor = System.Drawing.Color.Empty; + this.btnClose.Location = new System.Drawing.Point(9, 350); + this.btnClose.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(36, 23); + this.btnClose.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnClose.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnClose.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnClose.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.btnClose.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClose.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.btnClose.Style.GradientAngle = 90; + this.btnClose.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.btnClose.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnClose.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClose.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClose.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnClose.TabIndex = 861; + this.btnClose.Text = "关闭"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // btnClearFilter + // + this.btnClearFilter.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnClearFilter.CanvasColor = System.Drawing.SystemColors.Control; + this.btnClearFilter.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnClearFilter.DisabledBackColor = System.Drawing.Color.Empty; + this.btnClearFilter.Location = new System.Drawing.Point(409, 34); + this.btnClearFilter.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); + this.btnClearFilter.Name = "btnClearFilter"; + this.btnClearFilter.Size = new System.Drawing.Size(36, 23); + this.btnClearFilter.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnClearFilter.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnClearFilter.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); + this.btnClearFilter.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.btnClearFilter.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClearFilter.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.btnClearFilter.Style.GradientAngle = 90; + this.btnClearFilter.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; + this.btnClearFilter.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnClearFilter.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClearFilter.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnClearFilter.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.btnClearFilter.TabIndex = 857; + this.btnClearFilter.Text = "重置"; + this.btnClearFilter.Click += new System.EventHandler(this.btnClearFilter_Click); + // + // cmbGroup + // + this.cmbGroup.FormattingEnabled = true; + this.cmbGroup.Items.AddRange(new object[] { + "全部", + "主账户", + "客服"}); + this.cmbGroup.Location = new System.Drawing.Point(168, 4); + this.cmbGroup.Name = "cmbGroup"; + this.cmbGroup.Size = new System.Drawing.Size(238, 25); + this.cmbGroup.TabIndex = 850; + this.cmbGroup.Text = "全部"; + // + // label37 + // + this.label37.AutoSize = true; + this.label37.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.label37.Location = new System.Drawing.Point(33, 6); + this.label37.Name = "label37"; + this.label37.Size = new System.Drawing.Size(135, 20); + this.label37.TabIndex = 849; + this.label37.Text = "选择搜索的用户类型"; + // + // dgvUser + // + this.dgvUser.AllowUserToAddRows = false; + this.dgvUser.AllowUserToDeleteRows = false; + dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249))))); + this.dgvUser.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + this.dgvUser.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.dgvUser.AutoRowNumber = true; + this.dgvUser.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; + this.dgvUser.BackgroundColor = System.Drawing.Color.White; + this.dgvUser.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvUser.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + this.dgvUser.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvUser.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colSelect, + this.UserIdColumn, + this.UserNickNameColumn, + this.mobileColumn, + this.colParentUserName, + this.groupIdColumn, + this.groupNameColumn, + this.colCompany, + this.shopCountColumn, + this.colSaLevel, + this.colSaLevelName, + this.colAuthority, + this.colOemId, + this.colOemName, + this.colPoints, + this.colPlus, + this.colShopPointsPerMonth, + this.colChangePointsPerMonth, + this.dataGridViewTextBoxColumn1, + this.colBalancePlus, + this.colPostagePerOrder, + this.colChangePostagePerOrder, + this.editColumn, + this.deleteColumn}); + this.dgvUser.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(208)))), ((int)(((byte)(215)))), ((int)(((byte)(229))))); + this.dgvUser.Location = new System.Drawing.Point(9, 64); + this.dgvUser.MultiSelectCheckBox = true; + this.dgvUser.Name = "dgvUser"; + this.dgvUser.ReadOnly = true; + this.dgvUser.RowHeadersWidth = 35; + this.dgvUser.RowTemplate.Height = 23; + this.dgvUser.Size = new System.Drawing.Size(436, 281); + this.dgvUser.TabIndex = 847; + this.dgvUser.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvUser_CellContentClick); + // + // colSelect + // + this.colSelect.FillWeight = 35F; + this.colSelect.HeaderText = "选中"; + this.colSelect.Name = "colSelect"; + this.colSelect.ReadOnly = true; + this.colSelect.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSelect.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // UserIdColumn + // + this.UserIdColumn.HeaderText = "id"; + this.UserIdColumn.Name = "UserIdColumn"; + this.UserIdColumn.ReadOnly = true; + this.UserIdColumn.Visible = false; + // + // UserNickNameColumn + // + this.UserNickNameColumn.FillWeight = 130F; + this.UserNickNameColumn.HeaderText = "用户昵称"; + this.UserNickNameColumn.Name = "UserNickNameColumn"; + this.UserNickNameColumn.ReadOnly = true; + // + // mobileColumn + // + this.mobileColumn.FillWeight = 130F; + this.mobileColumn.HeaderText = "手机(登录账号)"; + this.mobileColumn.Name = "mobileColumn"; + this.mobileColumn.ReadOnly = true; + // + // colParentUserName + // + this.colParentUserName.HeaderText = "主账号"; + this.colParentUserName.Name = "colParentUserName"; + this.colParentUserName.ReadOnly = true; + // + // groupIdColumn + // + this.groupIdColumn.HeaderText = "groupId"; + this.groupIdColumn.Name = "groupIdColumn"; + this.groupIdColumn.ReadOnly = true; + this.groupIdColumn.Visible = false; + // + // groupNameColumn + // + this.groupNameColumn.FillWeight = 70F; + this.groupNameColumn.HeaderText = "分组"; + this.groupNameColumn.Name = "groupNameColumn"; + this.groupNameColumn.ReadOnly = true; + this.groupNameColumn.Visible = false; + // + // colCompany + // + this.colCompany.HeaderText = "公司"; + this.colCompany.Name = "colCompany"; + this.colCompany.ReadOnly = true; + // + // shopCountColumn + // + this.shopCountColumn.HeaderText = "店铺数"; + this.shopCountColumn.Name = "shopCountColumn"; + this.shopCountColumn.ReadOnly = true; + this.shopCountColumn.Visible = false; + // + // colSaLevel + // + this.colSaLevel.HeaderText = "saLevel"; + this.colSaLevel.Name = "colSaLevel"; + this.colSaLevel.ReadOnly = true; + this.colSaLevel.Visible = false; + // + // colSaLevelName + // + this.colSaLevelName.FillWeight = 80F; + this.colSaLevelName.HeaderText = "账户类型"; + this.colSaLevelName.Name = "colSaLevelName"; + this.colSaLevelName.ReadOnly = true; + this.colSaLevelName.Visible = false; + // + // colAuthority + // + this.colAuthority.FillWeight = 280F; + this.colAuthority.HeaderText = "功能权限"; + this.colAuthority.Name = "colAuthority"; + this.colAuthority.ReadOnly = true; + this.colAuthority.Visible = false; + // + // colOemId + // + this.colOemId.HeaderText = "代理编码"; + this.colOemId.Name = "colOemId"; + this.colOemId.ReadOnly = true; + this.colOemId.Visible = false; + // + // colOemName + // + this.colOemName.FillWeight = 80F; + this.colOemName.HeaderText = "代理名称"; + this.colOemName.Name = "colOemName"; + this.colOemName.ReadOnly = true; + this.colOemName.Visible = false; + // + // colPoints + // + this.colPoints.FillWeight = 60F; + this.colPoints.HeaderText = "积分点数"; + this.colPoints.Name = "colPoints"; + this.colPoints.ReadOnly = true; + this.colPoints.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colPoints.Visible = false; + // + // colPlus + // + dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + this.colPlus.DefaultCellStyle = dataGridViewCellStyle3; + this.colPlus.FillWeight = 22F; + this.colPlus.HeaderText = "+"; + this.colPlus.Name = "colPlus"; + this.colPlus.ReadOnly = true; + this.colPlus.Visible = false; + // + // colShopPointsPerMonth + // + this.colShopPointsPerMonth.FillWeight = 60F; + this.colShopPointsPerMonth.HeaderText = "月费耗点"; + this.colShopPointsPerMonth.Name = "colShopPointsPerMonth"; + this.colShopPointsPerMonth.ReadOnly = true; + this.colShopPointsPerMonth.Visible = false; + // + // colChangePointsPerMonth + // + dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + this.colChangePointsPerMonth.DefaultCellStyle = dataGridViewCellStyle4; + this.colChangePointsPerMonth.FillWeight = 25F; + this.colChangePointsPerMonth.HeaderText = "改"; + this.colChangePointsPerMonth.Name = "colChangePointsPerMonth"; + this.colChangePointsPerMonth.ReadOnly = true; + this.colChangePointsPerMonth.Visible = false; + // + // dataGridViewTextBoxColumn1 + // + this.dataGridViewTextBoxColumn1.FillWeight = 60F; + this.dataGridViewTextBoxColumn1.HeaderText = "快递余额"; + this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; + this.dataGridViewTextBoxColumn1.ReadOnly = true; + this.dataGridViewTextBoxColumn1.Visible = false; + // + // colBalancePlus + // + dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + this.colBalancePlus.DefaultCellStyle = dataGridViewCellStyle5; + this.colBalancePlus.FillWeight = 22F; + this.colBalancePlus.HeaderText = "+"; + this.colBalancePlus.Name = "colBalancePlus"; + this.colBalancePlus.ReadOnly = true; + this.colBalancePlus.Visible = false; + // + // colPostagePerOrder + // + this.colPostagePerOrder.FillWeight = 60F; + this.colPostagePerOrder.HeaderText = "每单快递费"; + this.colPostagePerOrder.Name = "colPostagePerOrder"; + this.colPostagePerOrder.ReadOnly = true; + this.colPostagePerOrder.Visible = false; + // + // colChangePostagePerOrder + // + dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; + this.colChangePostagePerOrder.DefaultCellStyle = dataGridViewCellStyle6; + this.colChangePostagePerOrder.FillWeight = 25F; + this.colChangePostagePerOrder.HeaderText = "改"; + this.colChangePostagePerOrder.Name = "colChangePostagePerOrder"; + this.colChangePostagePerOrder.ReadOnly = true; + this.colChangePostagePerOrder.Visible = false; + // + // editColumn + // + this.editColumn.FillWeight = 40F; + this.editColumn.HeaderText = "编辑"; + this.editColumn.Name = "editColumn"; + this.editColumn.ReadOnly = true; + this.editColumn.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.editColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.editColumn.Visible = false; + // + // deleteColumn + // + this.deleteColumn.FillWeight = 40F; + this.deleteColumn.HeaderText = "删除"; + this.deleteColumn.Name = "deleteColumn"; + this.deleteColumn.ReadOnly = true; + this.deleteColumn.Visible = false; + // + // btnGetUser + // + this.btnGetUser.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnGetUser.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnGetUser.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnGetUser.DisabledBackColor = System.Drawing.Color.Empty; + this.btnGetUser.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnGetUser.Location = new System.Drawing.Point(409, 4); + this.btnGetUser.Name = "btnGetUser"; + this.btnGetUser.Size = new System.Drawing.Size(36, 25); + this.btnGetUser.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnGetUser.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnGetUser.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnGetUser.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnGetUser.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnGetUser.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnGetUser.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnGetUser.Style.GradientAngle = 90; + this.btnGetUser.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnGetUser.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnGetUser.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnGetUser.TabIndex = 846; + this.btnGetUser.Text = "搜索"; + this.btnGetUser.Click += new System.EventHandler(this.btnGetUser_Click); + // + // 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(5, 35); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(163, 20); + this.label2.TabIndex = 844; + this.label2.Text = "搜索用户名、昵称或公司"; + // + // txtSearch + // + this.txtSearch.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtSearch.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.txtSearch.Location = new System.Drawing.Point(168, 34); + this.txtSearch.Name = "txtSearch"; + this.txtSearch.Size = new System.Drawing.Size(238, 23); + this.txtSearch.TabIndex = 843; + // + // pictureBox2 + // + this.pictureBox2.Anchor = System.Windows.Forms.AnchorStyles.None; + this.pictureBox2.Image = global::TemuKJD.Properties.Resources.loading_blue; + this.pictureBox2.Location = new System.Drawing.Point(656, 205); + this.pictureBox2.Name = "pictureBox2"; + this.pictureBox2.Size = new System.Drawing.Size(50, 50); + this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pictureBox2.TabIndex = 1163; + this.pictureBox2.TabStop = false; + this.pictureBox2.Visible = false; + // + // dgvPayment + // + this.dgvPayment.AllowUserToAddRows = false; + this.dgvPayment.AllowUserToDeleteRows = false; + dataGridViewCellStyle7.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvPayment.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle7; + this.dgvPayment.AutoRowNumber = true; + this.dgvPayment.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; + this.dgvPayment.BackgroundColor = System.Drawing.Color.White; + this.dgvPayment.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle8.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvPayment.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle8; + this.dgvPayment.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvPayment.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colCheck, + this.colType, + this.colUserName, + this.colOrderId, + this.colAmount, + this.colBalance, + this.colCreateTime, + this.colRemark}); + this.dgvPayment.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvPayment.Location = new System.Drawing.Point(2, 2); + this.dgvPayment.MultiSelectCheckBox = true; + this.dgvPayment.Name = "dgvPayment"; + this.dgvPayment.ReadOnly = true; + this.dgvPayment.RowTemplate.Height = 23; + this.dgvPayment.Size = new System.Drawing.Size(1358, 457); + this.dgvPayment.TabIndex = 1162; + this.dgvPayment.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPayment_CellContentClick); + this.dgvPayment.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvPayment_CellValueChanged); + // + // colCheck + // + this.colCheck.FillWeight = 20F; + this.colCheck.HeaderText = "选择"; + this.colCheck.Name = "colCheck"; + this.colCheck.ReadOnly = true; + this.colCheck.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCheck.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // colType + // + this.colType.HeaderText = "类型"; + this.colType.Name = "colType"; + this.colType.ReadOnly = true; + // + // colUserName + // + this.colUserName.HeaderText = "账户"; + this.colUserName.Name = "colUserName"; + this.colUserName.ReadOnly = true; + // + // colOrderId + // + this.colOrderId.FillWeight = 120F; + this.colOrderId.HeaderText = "订单ID"; + this.colOrderId.Name = "colOrderId"; + this.colOrderId.ReadOnly = true; + // + // colAmount + // + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colAmount.DefaultCellStyle = dataGridViewCellStyle9; + this.colAmount.FillWeight = 60F; + this.colAmount.HeaderText = "金额"; + this.colAmount.Name = "colAmount"; + this.colAmount.ReadOnly = true; + // + // colBalance + // + this.colBalance.FillWeight = 60F; + this.colBalance.HeaderText = "余额"; + this.colBalance.Name = "colBalance"; + this.colBalance.ReadOnly = true; + // + // colCreateTime + // + this.colCreateTime.HeaderText = "创建时间"; + this.colCreateTime.Name = "colCreateTime"; + this.colCreateTime.ReadOnly = true; + // + // colRemark + // + this.colRemark.FillWeight = 120F; + this.colRemark.HeaderText = "备注"; + this.colRemark.Name = "colRemark"; + this.colRemark.ReadOnly = true; + this.colRemark.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colRemark.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + // + // ucSplitPage1 + // + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right; + this.ucSplitPage1.IsShowPageSize = true; + this.ucSplitPage1.Location = new System.Drawing.Point(903, 0); + this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); + this.ucSplitPage1.Name = "ucSplitPage1"; + this.ucSplitPage1.PageSize = 50; + this.ucSplitPage1.Size = new System.Drawing.Size(459, 25); + this.ucSplitPage1.TabIndex = 1163; + this.ucSplitPage1.TotalPage = 1; + this.ucSplitPage1.PageChange += new System.Action(this.ucSplitPage1_PageChange); + // + // WXOemAccountBalanceForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(152)))), ((int)(((byte)(99)))), ((int)(((byte)(143))))); + this.ClientSize = new System.Drawing.Size(1366, 616); + this.Controls.Add(this.panel1); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.KeyPreview = true; + this.Name = "WXOemAccountBalanceForm"; + this.Padding = new System.Windows.Forms.Padding(2); + this.Text = "OEM返现明细"; + this.TitleText = "OEM返现明细"; + this.Load += new System.EventHandler(this.WXGetTopUpQrCode_Load); + this.Controls.SetChildIndex(this.panel1, 0); + this.panel1.ResumeLayout(false); + this.splitContainer2.Panel1.ResumeLayout(false); + this.splitContainer2.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit(); + this.splitContainer2.ResumeLayout(false); + this.ucGroupBoxEx1.ResumeLayout(false); + this.ucGroupBoxEx1.PerformLayout(); + this.splitContainer3.Panel1.ResumeLayout(false); + this.splitContainer3.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit(); + this.splitContainer3.ResumeLayout(false); + this.pnlGetUser.ResumeLayout(false); + this.pnlGetUser.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvUser)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgvPayment)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + private System.Windows.Forms.Panel panel1; + private TemuKJD.UserComponent.DataGridViewEx dgvPayment; + private System.Windows.Forms.SplitContainer splitContainer2; + private System.Windows.Forms.SplitContainer splitContainer3; + private TemuKJD.UserControls.UcSplitPage ucSplitPage1; + private System.Windows.Forms.PictureBox pictureBox2; + private UcGroupBoxEx ucGroupBoxEx1; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.ComboBox cmbType; + private System.Windows.Forms.DateTimePicker dtpTimeEnd; + private System.Windows.Forms.DateTimePicker dtpTimeBegin; + private DevComponents.DotNetBar.PanelEx btnSearch; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; + private System.Windows.Forms.DataGridViewTextBoxColumn colType; + private System.Windows.Forms.DataGridViewTextBoxColumn colUserName; + private System.Windows.Forms.DataGridViewTextBoxColumn colOrderId; + private System.Windows.Forms.DataGridViewTextBoxColumn colAmount; + private System.Windows.Forms.DataGridViewTextBoxColumn colBalance; + private System.Windows.Forms.DataGridViewTextBoxColumn colCreateTime; + private System.Windows.Forms.DataGridViewTextBoxColumn colRemark; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.TextBox txtUserName; + private DevComponents.DotNetBar.PanelEx btnSearchShop; + private System.Windows.Forms.Panel pnlGetUser; + private DevComponents.DotNetBar.PanelEx btnGetUser; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.TextBox txtSearch; + private DataGridViewEx dgvUser; + private System.Windows.Forms.ComboBox cmbGroup; + private System.Windows.Forms.Label label37; + private DevComponents.DotNetBar.PanelEx btnOk; + private DevComponents.DotNetBar.PanelEx btnClose; + private DevComponents.DotNetBar.PanelEx btnClearFilter; + private System.Windows.Forms.DataGridViewCheckBoxColumn colSelect; + private System.Windows.Forms.DataGridViewTextBoxColumn UserIdColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn UserNickNameColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn mobileColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn colParentUserName; + private System.Windows.Forms.DataGridViewTextBoxColumn groupIdColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn groupNameColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn colCompany; + private System.Windows.Forms.DataGridViewTextBoxColumn shopCountColumn; + private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevel; + private System.Windows.Forms.DataGridViewTextBoxColumn colSaLevelName; + private System.Windows.Forms.DataGridViewTextBoxColumn colAuthority; + private System.Windows.Forms.DataGridViewTextBoxColumn colOemId; + private System.Windows.Forms.DataGridViewTextBoxColumn colOemName; + private System.Windows.Forms.DataGridViewTextBoxColumn colPoints; + private System.Windows.Forms.DataGridViewTextBoxColumn colPlus; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopPointsPerMonth; + private System.Windows.Forms.DataGridViewLinkColumn colChangePointsPerMonth; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn colBalancePlus; + private System.Windows.Forms.DataGridViewTextBoxColumn colPostagePerOrder; + private System.Windows.Forms.DataGridViewLinkColumn colChangePostagePerOrder; + private System.Windows.Forms.DataGridViewLinkColumn editColumn; + private System.Windows.Forms.DataGridViewLinkColumn deleteColumn; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label lblPostageTotal; + private System.Windows.Forms.Label lblPostageWeightTotal; + private System.Windows.Forms.Label label8; + private System.Windows.Forms.Label lblPostageReturnTotal; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.Label lblPostageNotReturnCnt; + private System.Windows.Forms.Label label10; + private System.Windows.Forms.Label label12; + private System.Windows.Forms.Label label13; + private System.Windows.Forms.Label lblProfit; + } +} \ No newline at end of file diff --git a/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.cs b/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.cs new file mode 100644 index 0000000..792d6f7 --- /dev/null +++ b/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.cs @@ -0,0 +1,411 @@ +using AllBase; +using AllBase.Helper; +using AllBase.Model.DBModel; +using AllBase.Model.Result; +using CefSharp; +using CefSharp.WinForms; +using DevComponents.WinForms.Drawing; +using NaiBa.CefHelper; +using NaiBa.Util.Extension; +using Newtonsoft.Json.Linq; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Data.SQLite; +using System.Diagnostics; +using System.Drawing; +using System.Drawing.Printing; +using System.Linq; +using System.Security.Cryptography.X509Certificates; +using System.Security.Policy; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.BLL; +using TemuKJD.Extension; +using Work; + +namespace Work._29Tools.Forms.UserForms +{ + public partial class WXOemAccountBalanceForm : BaseGeneralForm + { + // (拍单后)回调函数,更新拍单余额 + private Action updateBalanceAction = null; + public static List AllUsers { get; set; } = new List(); + CancellationTokenSource cancellationTokenSource = null; + + public WXOemAccountBalanceForm() + { + InitializeComponent(); + } + + private async void WXGetTopUpQrCode_Load(object sender, EventArgs e) + { + var chkAll = this.dgvPayment.AddSelectorColumn("colCheck"); + chkAll.Click += ChkAll_Click; + + this.dgvUser.AddSelectorColumn("colSelect"); + this.dtpTimeBegin.Value = DateTime.Now.Date.AddMonths(-3); + this.dtpTimeEnd.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1); + + ucSplitPage1.cmbPageSize.Items.Remove("5000"); + + pictureBox2.Visible = true; + await Task.Run(() => { GetBalanceList(); }); + pictureBox2.Visible = false; + + + } + + private void ChkAll_Click(object sender, EventArgs e) + { + this.dgvPayment.CellValueChanged -= this.dgvPayment_CellValueChanged; + this.GetProfit(); + this.dgvPayment.CellValueChanged += this.dgvPayment_CellValueChanged; + } + + private void btnBalanceTopUp_Click(object sender, EventArgs e) + { + + } + + public async void GetBalanceList() + { + Invoke(new Action(() => + { + this.dgvPayment.Rows.Clear(); + dgvPayment.CellValueChanged -= dgvPayment_CellValueChanged; + })); + + if (string.IsNullOrEmpty(BaseClass.OemId)) + { + BaseMsgForm.ShowError("没有权限!"); + return; + } + + string url = BaseClass.BuildObjString("user/get_all_user"); + StringBuilder data = new StringBuilder(); + data.Append(UserLogin.GetSignaturex()); + // 查账户 + //data.Append("&group_id=3"); + data.Append("&oem_id=" + BaseClass.OemId); + string html = GetHtml.PostUtf8(url, data.ToString()); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(url, data); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + { + BaseMsgForm.ShowError("查询失败:" + BaseRegex.GetStringJsonByRegs(ref html, html, "msg")); + return; + } + var userObj = JObject.Parse(html); + var oemUserNames = ""; + foreach (JObject obj in userObj["data"]) + { + string oStr = JsonHelper.SerializeObject(obj); + //UserSubAccountInfo user = new UserSubAccountInfo(); + //user.id = BaseRegex.GetIntJson(ref oStr, "id"); + //user.user_name = BaseRegex.GetStringJson(ref oStr, "user_name"); + var userName = BaseRegex.GetStringJson(ref oStr, "user_name"); + if (txtUserName.Text.Trim().IsNullOrEmpty() || txtUserName.Text.Contains(userName)) + oemUserNames += userName + ","; + } + + oemUserNames = oemUserNames.Trim(','); + if (string.IsNullOrEmpty(oemUserNames)) + return; + + if (cancellationTokenSource != null) + cancellationTokenSource.Cancel(); + cancellationTokenSource = new CancellationTokenSource(); + await Task.Run(() => + { + var cancellationToken = cancellationTokenSource.Token; + int pageCount = 1; + int pageSize = 50; + var url3 = BaseClass.BuildWXObjString("user/get_user_balance"); + var data3 = UserLogin.GetSignaturex(); + Invoke(new Action(() => + { + data3 += "&user_name_in=" + oemUserNames; + data3 += "&create_time_begin=" + dtpTimeBegin.Value.ToString("yyyy-MM-dd HH:mm:ss"); + data3 += "&create_time_end=" + dtpTimeEnd.Value.ToString("yyyy-MM-dd HH:mm:ss"); + if (cmbType.Text == "充值") + data3 += "&type_in=1,30"; + if (cmbType.Text == "管理员充值") + data3 += "&type_in=1"; + if (cmbType.Text == "支付宝充值") + data3 += "&type_in=30"; + if (cmbType.Text == "拍单扣除/作废返还") + data3 += "&type_in=20,23"; + if (cmbType.Text == "超重扣费") + data3 += "&type_in=24"; + data3 += "&page=" + ucSplitPage1.CurrentPage; + data3 += "&page_size=" + ucSplitPage1.PageSize; + pageSize = ucSplitPage1.PageSize; + })); + var html3 = GetHtml.PostUtf8(url3, data3); + if (string.IsNullOrEmpty(html3) || !html3.Contains("\"code\":200")) + html3 = GetHtml.PostUtf8(url3, data3); + if (string.IsNullOrEmpty(html3) || !html3.Contains("\"code\":200")) + { + BaseMsgForm.ShowError("查询失败:" + BaseRegex.GetStringJsonByRegs(ref html3, html3, "msg")); + return; + } + List paymentList = new List(); + paymentList = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(html3)["data"].ParseToString()); + + Invoke(new Action(() => + { + this.dgvPayment.Rows.Clear(); + dgvPayment.CellValueChanged -= dgvPayment_CellValueChanged; + })); + foreach (var payment in paymentList) + { + if (cancellationToken.IsCancellationRequested) + return; + Invoke(new Action(() => + { + var rowIndex = this.dgvPayment.Rows.Add( + true, + ((EnumOrderPaymentType)payment.type.ParseToInt()).ParseToString(), + payment.user_name, + payment.order_id, + payment.amount, + payment.balance, + payment.create_time.ToString("yyyy-MM-dd HH:mm:ss"), + payment.remark + ); + this.dgvPayment.Rows[rowIndex].Height = 60; + })); + } + int count = BaseRegex.GetIntJson(ref html3, "count"); + pageCount = Math.Ceiling(1.0 * count / pageSize).ParseToInt(); + pageCount = Math.Max(pageCount, 1); + ucSplitPage1.TotalPage = pageCount; + }, cancellationTokenSource.Token); + Invoke(new Action(() => + { + GetProfit(); + dgvPayment.CellValueChanged += dgvPayment_CellValueChanged; + })); + } + + private async void btnSearch_Click(object sender, EventArgs e) + { + if (cancellationTokenSource != null) + cancellationTokenSource.Cancel(); + + if (this.ucSplitPage1.CurrentPage != 1) + this.ucSplitPage1.CurrentPage = 1; + + pictureBox2.Visible = true; + btnSearch.Enabled = false; + await Task.Run(() => + { + Task.Run(() => + { + Thread.Sleep(500); + Invoke(new Action(() => { btnSearch.Enabled = true; })); + }); + GetBalanceList(); + }); + pictureBox2.Visible = false; + } + + private async void ucSplitPage1_PageChange(object obj) + { + pictureBox2.Visible = true; + await Task.Run(() => { GetBalanceList(); }); + pictureBox2.Visible = false; + } + + private void btnGetUser_Click(object sender, EventArgs e) + { + GetUser(); + } + + private void GetUser() + { + if (BaseClass.OemId.IsNullOrEmpty() || BaseClass.IsOemOwner == false) + return; + + Invoke(new Action(() => + { + dgvUser.Rows.Clear(); + AllUsers.Clear(); + })); + string url = BaseClass.BuildObjString("user/get_all_user"); + StringBuilder data = new StringBuilder(); + data.Append(UserLogin.GetSignaturex()); + Invoke(new Action(() => + { + // 账户类型 + if (cmbGroup.Text == "主账户") + data.Append("&group_id=3"); + else if (cmbGroup.Text == "客服") + data.Append("&group_id=4"); + data.Append("&oem_id=" + BaseClass.OemId); + if (!string.IsNullOrWhiteSpace(txtSearch.Text)) + data.Append("&search=" + txtSearch.Text.Replace("'", "'")); + })); + + string html = GetHtml.PostUtf8(url, data.ToString()); + if (string.IsNullOrEmpty(html)) + return; + if (html.Contains("\"data\"")) + { + var userObj = Newtonsoft.Json.Linq.JObject.Parse(html); + foreach (Newtonsoft.Json.Linq.JObject obj in userObj["data"]) + { + string oStr = JsonHelper.SerializeObject(obj); + UserSubAccountInfo user = new UserSubAccountInfo(); + user.id = BaseRegex.GetIntJson(ref oStr, "id"); + user.user_name = BaseRegex.GetStringJson(ref oStr, "user_name"); + user.nick_name = BaseRegex.GetStringJson(ref oStr, "nick_name"); + user.mobile = BaseRegex.GetStringJson(ref oStr, "mobile"); + user.group_id = BaseRegex.GetStringJson(ref oStr, "group_id"); + user.shop_count = BaseRegex.GetIntJson(ref oStr, "shop_count"); + user.company_name = BaseRegex.GetStringJson(ref oStr, "company_name"); + user.sa_level = BaseRegex.GetIntJson(ref oStr, "sa_level"); + user.authority = BaseRegex.GetStringJson(ref oStr, "authority"); + user.points = BaseRegex.GetIntJson(ref oStr, "points"); + user.balance = BaseRegex.GetDecimalJson(ref oStr, "balance"); + user.shop_points_per_month = BaseRegex.GetIntJson(ref oStr, "shop_points_per_month"); + user.postage_per_order = BaseRegex.GetDecimalJson(ref oStr, "postage_per_order"); + user.oem_id = BaseRegex.GetStringJson(ref oStr, "oem_id"); + user.oem_name = BaseRegex.GetStringJson(ref oStr, "oem_name"); + var parent_user_name = BaseRegex.GetStringJson(ref oStr, "parent_user_name"); + + AllUsers.Add(user); + dgvUser.Rows.Add( + false, + user.id, + user.nick_name, + user.user_name, + parent_user_name, + user.group_id, + user.group_name, + user.company_name, + user.shop_count, + user.sa_level, + user.sa_level_name /*+ (user.group_id == "4" ? "(客服)" : "")*/, + user.authority, + user.oem_id, + user.oem_name, + (user.authority.Contains("充值用户") && user.group_id == "3") ? (int?)user.points : null, + (user.authority.Contains("充值用户") && user.group_id == "3") ? "+" : null, + (user.authority.Contains("充值用户") && user.group_id == "3") ? (int?)user.shop_points_per_month : null, + (user.authority.Contains("充值用户") && user.group_id == "3") ? "改" : null, + user.balance.ParseToDecimal(), + "+", + Math.Max(2.2m, user.postage_per_order.ParseToDecimal()), + (user.group_id == "3") ? "改" : null, + user.group_id == "3" ? "添加店铺" : "", + "编辑", + "删除"); + } + } + } + + void GetProfit() + { + //foreach (var row in dgvPayment.Rows.Cast().ToList()) + //{ + // if (row.Cells["colCheck"].Value.ParseToBool() == false) + // continue; + + // if (row.Cells[""].Value.ParseToString() == "中转仓扣费支出") + // { + + // } + //} + + var checkRows = dgvPayment.Rows.Cast().Where(r => r.Cells["colCheck"].Value.ParseToBool() == true).ToList(); + + lblPostageTotal.Text = checkRows + .Where(r => r.Cells["colType"].Value.ParseToString() == EnumOrderPaymentType.中转仓扣费支出.ParseToString()) + .Sum(r => r.Cells["colAmount"].Value.ParseToDecimal()).ToString(); + lblPostageReturnTotal.Text = checkRows + .Where(r => r.Cells["colType"].Value.ParseToString() == EnumOrderPaymentType.中转仓作废返还收入.ParseToString()) + .Sum(r => r.Cells["colAmount"].Value.ParseToDecimal()).ToString(); + lblPostageWeightTotal.Text = checkRows + .Where(r => r.Cells["colType"].Value.ParseToString() == EnumOrderPaymentType.中转仓超重支出.ParseToString()) + .Sum(r => r.Cells["colAmount"].Value.ParseToDecimal()).ToString(); + lblPostageNotReturnCnt.Text = (checkRows + .Where(r => r.Cells["colType"].Value.ParseToString() == EnumOrderPaymentType.中转仓扣费支出.ParseToString()).Count() - checkRows + .Where(r => r.Cells["colType"].Value.ParseToString() == EnumOrderPaymentType.中转仓作废返还收入.ParseToString()).Count()).ToString(); + lblProfit.Text = (lblPostageTotal.Text.ParseToDecimal() - lblPostageReturnTotal.Text.ParseToDecimal() - lblPostageNotReturnCnt.Text.ParseToInt() * 2.2m).ToString(); + } + + private void btnSearchShop_Click(object sender, EventArgs e) + { + pnlGetUser.Visible = true; + GetUser(); + } + + private void btnClose_Click(object sender, EventArgs e) + { + this.pnlGetUser.Visible = false; + } + + private void btnOk_Click(object sender, EventArgs e) + { + var ids = dgvUser.Rows.Cast() + .Where(r => r.Cells["colSelect"].Value.ParseToBool() == true) + .Select(r => r.Cells["mobileColumn"].Value.ParseToString()); + this.txtUserName.Text = string.Join(",", ids); + this.pnlGetUser.Visible = false; + } + + private void dgvUser_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + var row = dgvUser.Rows[e.RowIndex]; + string headerText = dgvUser.Columns[e.ColumnIndex].HeaderText; + string columnName = dgvUser.Columns[e.ColumnIndex].Name; + switch (headerText) + { + case "": + dgvUser.Rows[e.RowIndex].Cells["colSelect"].Value = !(bool)dgvUser.Rows[e.RowIndex].Cells["colSelect"].Value; + break; + default: + break; + } + } + + private void dgvPayment_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex < 0 || e.RowIndex < 0) + return; + var row = dgvPayment.Rows[e.RowIndex]; + string headerText = dgvPayment.Columns[e.ColumnIndex].HeaderText; + string columnName = dgvPayment.Columns[e.ColumnIndex].Name; + switch (headerText) + { + case "": + dgvPayment.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvPayment.Rows[e.RowIndex].Cells["colCheck"].Value; + break; + default: + break; + } + } + + private void btnClearFilter_Click(object sender, EventArgs e) + { + cmbGroup.Text = "全部"; + this.txtSearch.Text = ""; + } + + private void dgvPayment_CellValueChanged(object sender, DataGridViewCellEventArgs e) + { + if (e.ColumnIndex == 0) + { + GetProfit(); + } + } + } +} diff --git a/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.resx b/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.resx new file mode 100644 index 0000000..b4132c9 --- /dev/null +++ b/TEMUKJD/WXForms/ShopForms/WXOemAccountBalanceForm.resx @@ -0,0 +1,394 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + + AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ + AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA + OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT + AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj/////// + ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP// + //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4 + mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ + mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ + mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ + mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ + mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ + mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY + //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ + mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf + //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/ + //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv/// + //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP// + if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ + mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz + MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn/// + iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4 + kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP// + /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ + mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ + mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ + mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ + mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ + //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ + mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ + mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ + mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT + mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj/////// + ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn/// + //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ + mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ + mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ + mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ + mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj/////////// + ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY////// + ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP + //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4 + /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ + mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ + mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7 + mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4 + eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb//// + ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ + mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj///// + /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/ + ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ + mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ + mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ + mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ + mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA + AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA + AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz + MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA + AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w + AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA + Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA + AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA + AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA + AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA + AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA + AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA + AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA + AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD///// + wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w== + + + \ No newline at end of file diff --git a/TEMUKJD/WXForms/ShopForms/WXOemAccountForm.Designer.cs b/TEMUKJD/WXForms/ShopForms/WXOemAccountForm.Designer.cs index 9ddcff9..6a03a28 100644 --- a/TEMUKJD/WXForms/ShopForms/WXOemAccountForm.Designer.cs +++ b/TEMUKJD/WXForms/ShopForms/WXOemAccountForm.Designer.cs @@ -97,7 +97,6 @@ namespace TemuKJD.WXForms.ShopForms this.btnTopUpCancel = new DevComponents.DotNetBar.PanelEx(); this.btnTopUpOK = new DevComponents.DotNetBar.PanelEx(); this.dgvUser = new TemuKJD.UserComponent.DataGridViewEx(); - this.btnExportShopErp = new DevComponents.DotNetBar.PanelEx(); this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.UserIdColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.UserNickNameColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -122,6 +121,7 @@ namespace TemuKJD.WXForms.ShopForms this.colChangePostagePerOrder = new System.Windows.Forms.DataGridViewLinkColumn(); this.editColumn = new System.Windows.Forms.DataGridViewLinkColumn(); this.deleteColumn = new System.Windows.Forms.DataGridViewLinkColumn(); + this.btnExportShopErp = new DevComponents.DotNetBar.PanelEx(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer5)).BeginInit(); this.splitContainer5.Panel1.SuspendLayout(); this.splitContainer5.Panel2.SuspendLayout(); @@ -676,11 +676,6 @@ namespace TemuKJD.WXForms.ShopForms 0, 0, 0}); - this.numAddBalance.Minimum = new decimal(new int[] { - 100000, - 0, - 0, - -2147483648}); this.numAddBalance.Name = "numAddBalance"; this.numAddBalance.Size = new System.Drawing.Size(56, 23); this.numAddBalance.TabIndex = 1; @@ -919,11 +914,6 @@ namespace TemuKJD.WXForms.ShopForms 0, 0, 0}); - this.numAddTopUp.Minimum = new decimal(new int[] { - 100000, - 0, - 0, - -2147483648}); this.numAddTopUp.Name = "numAddTopUp"; this.numAddTopUp.Size = new System.Drawing.Size(56, 23); this.numAddTopUp.TabIndex = 1; @@ -1040,31 +1030,6 @@ namespace TemuKJD.WXForms.ShopForms this.dgvUser.TabIndex = 1; this.dgvUser.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvUser_CellContentClick); // - // btnExportShopErp - // - this.btnExportShopErp.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnExportShopErp.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnExportShopErp.DisabledBackColor = System.Drawing.Color.Empty; - this.btnExportShopErp.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnExportShopErp.Location = new System.Drawing.Point(0, 1); - this.btnExportShopErp.Name = "btnExportShopErp"; - this.btnExportShopErp.Size = new System.Drawing.Size(140, 25); - this.btnExportShopErp.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnExportShopErp.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnExportShopErp.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnExportShopErp.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; - this.btnExportShopErp.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; - this.btnExportShopErp.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; - this.btnExportShopErp.Style.ForeColor.Color = System.Drawing.Color.White; - this.btnExportShopErp.Style.GradientAngle = 90; - this.btnExportShopErp.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnExportShopErp.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnExportShopErp.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); - this.btnExportShopErp.TabIndex = 439; - this.btnExportShopErp.Text = "导出用户到后台系统"; - this.btnExportShopErp.Visible = false; - this.btnExportShopErp.Click += new System.EventHandler(this.btnExportShopErp_Click); - // // colCheck // this.colCheck.FillWeight = 30F; @@ -1253,6 +1218,31 @@ namespace TemuKJD.WXForms.ShopForms this.deleteColumn.ReadOnly = true; this.deleteColumn.Visible = false; // + // btnExportShopErp + // + this.btnExportShopErp.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnExportShopErp.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnExportShopErp.DisabledBackColor = System.Drawing.Color.Empty; + this.btnExportShopErp.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnExportShopErp.Location = new System.Drawing.Point(0, 1); + this.btnExportShopErp.Name = "btnExportShopErp"; + this.btnExportShopErp.Size = new System.Drawing.Size(140, 25); + this.btnExportShopErp.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnExportShopErp.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnExportShopErp.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnExportShopErp.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnExportShopErp.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnExportShopErp.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnExportShopErp.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnExportShopErp.Style.GradientAngle = 90; + this.btnExportShopErp.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnExportShopErp.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnExportShopErp.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnExportShopErp.TabIndex = 439; + this.btnExportShopErp.Text = "导出用户到后台系统"; + this.btnExportShopErp.Visible = false; + this.btnExportShopErp.Click += new System.EventHandler(this.btnExportShopErp_Click); + // // WXOemAccountForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; diff --git a/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.Designer.cs b/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.Designer.cs new file mode 100644 index 0000000..1004e29 --- /dev/null +++ b/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.Designer.cs @@ -0,0 +1,406 @@ + +using TemuKJD.UserComponent; +using TemuKJD.UserControls; + +namespace Work._29Tools.Forms.UserForms +{ + partial class WXOemPointsTopUpListForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WXOemPointsTopUpListForm)); + this.panel1 = new System.Windows.Forms.Panel(); + this.splitContainer2 = new System.Windows.Forms.SplitContainer(); + this.ucGroupBoxEx1 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); + this.chkNotCurrentAccount = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.btnSearch = new DevComponents.DotNetBar.PanelEx(); + this.dtpTimeEnd = new System.Windows.Forms.DateTimePicker(); + this.dtpTimeBegin = new System.Windows.Forms.DateTimePicker(); + this.label5 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.cmbType = new System.Windows.Forms.ComboBox(); + this.splitContainer3 = new System.Windows.Forms.SplitContainer(); + this.pictureBox2 = new System.Windows.Forms.PictureBox(); + this.dgvPayment = new TemuKJD.UserComponent.DataGridViewEx(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colType = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colUserName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShop = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colPoints = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colNewPoints = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colCreateTime = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colRemark = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit(); + this.splitContainer2.Panel1.SuspendLayout(); + this.splitContainer2.Panel2.SuspendLayout(); + this.splitContainer2.SuspendLayout(); + this.ucGroupBoxEx1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit(); + this.splitContainer3.Panel1.SuspendLayout(); + this.splitContainer3.Panel2.SuspendLayout(); + this.splitContainer3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgvPayment)).BeginInit(); + this.SuspendLayout(); + // + // panel1 + // + this.panel1.BackColor = System.Drawing.Color.White; + this.panel1.Controls.Add(this.splitContainer2); + this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel1.Location = new System.Drawing.Point(2, 34); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(1220, 529); + this.panel1.TabIndex = 1140; + // + // splitContainer2 + // + this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer2.Location = new System.Drawing.Point(0, 0); + this.splitContainer2.Name = "splitContainer2"; + this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer2.Panel1 + // + this.splitContainer2.Panel1.Controls.Add(this.ucGroupBoxEx1); + // + // splitContainer2.Panel2 + // + this.splitContainer2.Panel2.Controls.Add(this.splitContainer3); + this.splitContainer2.Size = new System.Drawing.Size(1220, 529); + this.splitContainer2.SplitterDistance = 86; + this.splitContainer2.TabIndex = 1163; + // + // ucGroupBoxEx1 + // + this.ucGroupBoxEx1.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.ucGroupBoxEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucGroupBoxEx1.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; + this.ucGroupBoxEx1.Controls.Add(this.chkNotCurrentAccount); + this.ucGroupBoxEx1.Controls.Add(this.btnSearch); + this.ucGroupBoxEx1.Controls.Add(this.dtpTimeEnd); + this.ucGroupBoxEx1.Controls.Add(this.dtpTimeBegin); + this.ucGroupBoxEx1.Controls.Add(this.label5); + this.ucGroupBoxEx1.Controls.Add(this.label4); + this.ucGroupBoxEx1.Controls.Add(this.cmbType); + this.ucGroupBoxEx1.Location = new System.Drawing.Point(0, 2); + this.ucGroupBoxEx1.Name = "ucGroupBoxEx1"; + this.ucGroupBoxEx1.Size = new System.Drawing.Size(1220, 84); + this.ucGroupBoxEx1.TabIndex = 0; + this.ucGroupBoxEx1.TabStop = false; + this.ucGroupBoxEx1.Text = "查询条件"; + // + // chkNotCurrentAccount + // + this.chkNotCurrentAccount.AutoSize = true; + this.chkNotCurrentAccount.Checked = true; + this.chkNotCurrentAccount.CheckState = System.Windows.Forms.CheckState.Checked; + this.chkNotCurrentAccount.Location = new System.Drawing.Point(585, 36); + this.chkNotCurrentAccount.Name = "chkNotCurrentAccount"; + this.chkNotCurrentAccount.Size = new System.Drawing.Size(87, 21); + this.chkNotCurrentAccount.TabIndex = 1157; + this.chkNotCurrentAccount.Text = "不含本账户"; + this.chkNotCurrentAccount.UseVisualStyleBackColor = true; + // + // btnSearch + // + this.btnSearch.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnSearch.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnSearch.DisabledBackColor = System.Drawing.Color.Empty; + this.btnSearch.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.btnSearch.Location = new System.Drawing.Point(700, 35); + this.btnSearch.Name = "btnSearch"; + this.btnSearch.Size = new System.Drawing.Size(62, 23); + this.btnSearch.Style.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearch.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearch.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.btnSearch.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.btnSearch.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.btnSearch.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.btnSearch.Style.ForeColor.Color = System.Drawing.Color.White; + this.btnSearch.Style.GradientAngle = 90; + this.btnSearch.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.btnSearch.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearch.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); + this.btnSearch.TabIndex = 1153; + this.btnSearch.Text = "查询"; + this.btnSearch.Click += new System.EventHandler(this.btnSearch_Click); + // + // dtpTimeEnd + // + this.dtpTimeEnd.Location = new System.Drawing.Point(430, 35); + this.dtpTimeEnd.Name = "dtpTimeEnd"; + this.dtpTimeEnd.Size = new System.Drawing.Size(132, 23); + this.dtpTimeEnd.TabIndex = 1149; + // + // dtpTimeBegin + // + this.dtpTimeBegin.Location = new System.Drawing.Point(292, 35); + this.dtpTimeBegin.Name = "dtpTimeBegin"; + this.dtpTimeBegin.Size = new System.Drawing.Size(132, 23); + this.dtpTimeBegin.TabIndex = 1148; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(235, 38); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(56, 17); + this.label5.TabIndex = 1147; + this.label5.Text = "起止时间"; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(39, 37); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(32, 17); + this.label4.TabIndex = 1145; + this.label4.Text = "类型"; + // + // cmbType + // + this.cmbType.FormattingEnabled = true; + this.cmbType.Items.AddRange(new object[] { + "", + "充值", + "转入", + "转出", + "店铺续期"}); + this.cmbType.Location = new System.Drawing.Point(72, 33); + this.cmbType.Name = "cmbType"; + this.cmbType.Size = new System.Drawing.Size(121, 25); + this.cmbType.TabIndex = 0; + // + // splitContainer3 + // + this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer3.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer3.Location = new System.Drawing.Point(0, 0); + this.splitContainer3.Name = "splitContainer3"; + this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer3.Panel1 + // + this.splitContainer3.Panel1.Controls.Add(this.pictureBox2); + this.splitContainer3.Panel1.Controls.Add(this.dgvPayment); + this.splitContainer3.Panel1.Padding = new System.Windows.Forms.Padding(2); + // + // splitContainer3.Panel2 + // + this.splitContainer3.Panel2.Controls.Add(this.ucSplitPage1); + this.splitContainer3.Size = new System.Drawing.Size(1220, 439); + this.splitContainer3.SplitterDistance = 410; + this.splitContainer3.TabIndex = 1163; + // + // pictureBox2 + // + this.pictureBox2.Anchor = System.Windows.Forms.AnchorStyles.None; + this.pictureBox2.Image = global::TemuKJD.Properties.Resources.loading_blue; + this.pictureBox2.Location = new System.Drawing.Point(585, 180); + this.pictureBox2.Name = "pictureBox2"; + this.pictureBox2.Size = new System.Drawing.Size(50, 50); + this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pictureBox2.TabIndex = 1163; + this.pictureBox2.TabStop = false; + this.pictureBox2.Visible = false; + // + // dgvPayment + // + this.dgvPayment.AllowUserToAddRows = false; + this.dgvPayment.AllowUserToDeleteRows = false; + dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvPayment.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + this.dgvPayment.AutoRowNumber = true; + this.dgvPayment.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill; + this.dgvPayment.BackgroundColor = System.Drawing.Color.White; + this.dgvPayment.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvPayment.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + this.dgvPayment.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvPayment.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colCheck, + this.colType, + this.colUserName, + this.colShop, + this.colPoints, + this.colNewPoints, + this.colCreateTime, + this.colRemark}); + this.dgvPayment.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvPayment.Location = new System.Drawing.Point(2, 2); + this.dgvPayment.MultiSelectCheckBox = true; + this.dgvPayment.Name = "dgvPayment"; + this.dgvPayment.ReadOnly = true; + this.dgvPayment.RowTemplate.Height = 23; + this.dgvPayment.Size = new System.Drawing.Size(1216, 406); + this.dgvPayment.TabIndex = 1162; + // + // ucSplitPage1 + // + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right; + this.ucSplitPage1.IsShowPageSize = true; + this.ucSplitPage1.Location = new System.Drawing.Point(761, 0); + this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); + this.ucSplitPage1.Name = "ucSplitPage1"; + this.ucSplitPage1.PageSize = 50; + this.ucSplitPage1.Size = new System.Drawing.Size(459, 25); + this.ucSplitPage1.TabIndex = 1163; + this.ucSplitPage1.TotalPage = 1; + this.ucSplitPage1.PageChange += new System.Action(this.ucSplitPage1_PageChange); + // + // colCheck + // + this.colCheck.FillWeight = 20F; + this.colCheck.HeaderText = "选择"; + this.colCheck.Name = "colCheck"; + this.colCheck.ReadOnly = true; + this.colCheck.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCheck.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // colType + // + this.colType.HeaderText = "类型"; + this.colType.Name = "colType"; + this.colType.ReadOnly = true; + // + // colUserName + // + this.colUserName.HeaderText = "账户"; + this.colUserName.Name = "colUserName"; + this.colUserName.ReadOnly = true; + // + // colShop + // + this.colShop.HeaderText = "店铺"; + this.colShop.Name = "colShop"; + this.colShop.ReadOnly = true; + // + // colPoints + // + dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.colPoints.DefaultCellStyle = dataGridViewCellStyle3; + this.colPoints.FillWeight = 60F; + this.colPoints.HeaderText = "点数变化"; + this.colPoints.Name = "colPoints"; + this.colPoints.ReadOnly = true; + // + // colNewPoints + // + this.colNewPoints.FillWeight = 60F; + this.colNewPoints.HeaderText = "点数余额"; + this.colNewPoints.Name = "colNewPoints"; + this.colNewPoints.ReadOnly = true; + // + // colCreateTime + // + this.colCreateTime.HeaderText = "创建时间"; + this.colCreateTime.Name = "colCreateTime"; + this.colCreateTime.ReadOnly = true; + // + // colRemark + // + this.colRemark.FillWeight = 120F; + this.colRemark.HeaderText = "备注"; + this.colRemark.Name = "colRemark"; + this.colRemark.ReadOnly = true; + this.colRemark.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colRemark.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable; + // + // WXOemPointsTopUpListForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(152)))), ((int)(((byte)(99)))), ((int)(((byte)(143))))); + this.ClientSize = new System.Drawing.Size(1224, 565); + this.Controls.Add(this.panel1); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.KeyPreview = true; + this.Name = "WXOemPointsTopUpListForm"; + this.Padding = new System.Windows.Forms.Padding(2); + this.Text = "OEM积分明细"; + this.TitleText = "OEM积分明细"; + this.Load += new System.EventHandler(this.WXGetTopUpQrCode_Load); + this.Controls.SetChildIndex(this.panel1, 0); + this.panel1.ResumeLayout(false); + this.splitContainer2.Panel1.ResumeLayout(false); + this.splitContainer2.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit(); + this.splitContainer2.ResumeLayout(false); + this.ucGroupBoxEx1.ResumeLayout(false); + this.ucGroupBoxEx1.PerformLayout(); + this.splitContainer3.Panel1.ResumeLayout(false); + this.splitContainer3.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit(); + this.splitContainer3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgvPayment)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + private System.Windows.Forms.Panel panel1; + private TemuKJD.UserComponent.DataGridViewEx dgvPayment; + private System.Windows.Forms.SplitContainer splitContainer2; + private System.Windows.Forms.SplitContainer splitContainer3; + private TemuKJD.UserControls.UcSplitPage ucSplitPage1; + private System.Windows.Forms.PictureBox pictureBox2; + private UcGroupBoxEx ucGroupBoxEx1; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.ComboBox cmbType; + private System.Windows.Forms.DateTimePicker dtpTimeEnd; + private System.Windows.Forms.DateTimePicker dtpTimeBegin; + private DevComponents.DotNetBar.PanelEx btnSearch; + private UcCheckBox chkNotCurrentAccount; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; + private System.Windows.Forms.DataGridViewTextBoxColumn colType; + private System.Windows.Forms.DataGridViewTextBoxColumn colUserName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShop; + private System.Windows.Forms.DataGridViewTextBoxColumn colPoints; + private System.Windows.Forms.DataGridViewTextBoxColumn colNewPoints; + private System.Windows.Forms.DataGridViewTextBoxColumn colCreateTime; + private System.Windows.Forms.DataGridViewTextBoxColumn colRemark; + } +} \ No newline at end of file diff --git a/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.cs b/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.cs new file mode 100644 index 0000000..5df50a1 --- /dev/null +++ b/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.cs @@ -0,0 +1,182 @@ +using AllBase; +using AllBase.Model.DBModel; +using AllBase.Model.Result; +using CefSharp; +using CefSharp.WinForms; +using DevComponents.WinForms.Drawing; +using NaiBa.CefHelper; +using NaiBa.Util.Extension; +using Newtonsoft.Json.Linq; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Diagnostics; +using System.Drawing; +using System.Drawing.Printing; +using System.Linq; +using System.Security.Cryptography.X509Certificates; +using System.Security.Policy; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.BLL; +using Work; + +namespace Work._29Tools.Forms.UserForms +{ + public partial class WXOemPointsTopUpListForm : BaseGeneralForm + { + // (拍单后)回调函数,更新拍单余额 + private Action updateBalanceAction = null; + + public WXOemPointsTopUpListForm() + { + InitializeComponent(); + } + + private void btnRefresh_Click(object sender, EventArgs e) + { + } + + private async void WXGetTopUpQrCode_Load(object sender, EventArgs e) + { + this.dtpTimeBegin.Value = DateTime.Now.Date.AddMonths(-3); + this.dtpTimeEnd.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1); + + ucSplitPage1.cmbPageSize.Items.Remove("5000"); + + pictureBox2.Visible = true; + await Task.Run(() => { GetBalanceList(); }); + pictureBox2.Visible = false; + + + } + + public async void GetBalanceList() + { + Invoke(new Action(() => + { + this.dgvPayment.Rows.Clear(); + })); + + if (string.IsNullOrEmpty(BaseClass.OemId)) + { + BaseMsgForm.ShowError("没有权限!"); + return; + } + + string url = BaseClass.BuildObjString("user/get_all_user"); + StringBuilder data = new StringBuilder(); + data.Append(UserLogin.GetSignaturex()); + // 查账户 + data.Append("&group_id=3"); + data.Append("&oem_id=" + BaseClass.OemId); + string html = GetHtml.PostUtf8(url, data.ToString()); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + html = GetHtml.PostUtf8(url, data); + if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200")) + { + BaseMsgForm.ShowError("查询失败:" + BaseRegex.GetStringJsonByRegs(ref html, html, "msg")); + return; + } + var userObj = JObject.Parse(html); + var oemUserNames = ""; + foreach (JObject obj in userObj["data"]) + { + string oStr = JsonHelper.SerializeObject(obj); + //UserSubAccountInfo user = new UserSubAccountInfo(); + //user.id = BaseRegex.GetIntJson(ref oStr, "id"); + //user.user_name = BaseRegex.GetStringJson(ref oStr, "user_name"); + string groupId = BaseRegex.GetStringJson(ref oStr, "group_id"); + string authority = BaseRegex.GetStringJson(ref oStr, "authority"); + string userName = BaseRegex.GetStringJson(ref oStr, "user_name"); + + if (chkNotCurrentAccount.Checked && userName == BaseClass.UserName) + continue; + + if (groupId == "3" && authority.Contains("充值用户")) + oemUserNames += BaseRegex.GetStringJson(ref oStr, "user_name") + ","; + } + + if (string.IsNullOrEmpty(oemUserNames)) + return; + oemUserNames = oemUserNames.Trim(','); + + await Task.Run(() => + { + int pageCount = 1; + int pageSize = 50; + var url3 = BaseClass.BuildWXObjString("user/get_user_points"); + var data3 = UserLogin.GetSignaturex(); + Invoke(new Action(() => + { + data3 += "&user_name_in=" + oemUserNames; + data3 += "&create_time_begin=" + dtpTimeBegin.Value.ToString("yyyy-MM-dd HH:mm:ss"); + data3 += "&create_time_end=" + dtpTimeEnd.Value.ToString("yyyy-MM-dd HH:mm:ss"); + if (cmbType.Text == "充值") + data3 += "&option_type_in=充值"; + if (cmbType.Text == "转入") + data3 += "&option_type_in=转入"; + if (cmbType.Text == "转出") + data3 += "&option_type_in=转出"; + if (cmbType.Text == "店铺续期") + data3 += "&option_type_in=续费"; + data3 += "&page=" + ucSplitPage1.CurrentPage; + data3 += "&page_size=" + ucSplitPage1.PageSize; + pageSize = ucSplitPage1.PageSize; + })); + var html3 = GetHtml.PostUtf8(url3, data3); + if (string.IsNullOrEmpty(html3) || !html3.Contains("\"code\":200")) + html3 = GetHtml.PostUtf8(url3, data3); + if (string.IsNullOrEmpty(html3) || !html3.Contains("\"code\":200")) + { + BaseMsgForm.ShowError("查询失败:" + BaseRegex.GetStringJsonByRegs(ref html3, html3, "msg")); + return; + } + List paymentList = new List(); + paymentList = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(html3)["data"].ParseToString()); + foreach (var payment in paymentList) + { + Invoke(new Action(() => + { + var rowIndex = this.dgvPayment.Rows.Add( + false, + payment.option_type.ParseToString().Replace("续费", "店铺续期"), + payment.user_name, + payment.shop_account, + payment.delta_points, + payment.new_points, + payment.add_time.ToString("yyyy-MM-dd HH:mm:ss"), + payment.remark + ); + this.dgvPayment.Rows[rowIndex].Height = 60; + })); + } + int count = BaseRegex.GetIntJson(ref html3, "count"); + pageCount = Math.Ceiling(1.0 * count / pageSize).ParseToInt(); + pageCount = Math.Max(pageCount, 1); + ucSplitPage1.TotalPage = pageCount; + }); + } + + private async void btnSearch_Click(object sender, EventArgs e) + { + if (this.ucSplitPage1.CurrentPage != 1) + this.ucSplitPage1.CurrentPage = 1; + + pictureBox2.Visible = true; + await Task.Run(() => { GetBalanceList(); }); + pictureBox2.Visible = false; + } + + private async void ucSplitPage1_PageChange(object obj) + { + pictureBox2.Visible = true; + await Task.Run(() => { GetBalanceList(); }); + pictureBox2.Visible = false; + } + } +} diff --git a/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.resx b/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.resx new file mode 100644 index 0000000..5d88a2b --- /dev/null +++ b/TEMUKJD/WXForms/ShopForms/WXOemPointsTopUpListForm.resx @@ -0,0 +1,322 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + + AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ + AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA + OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT + AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj/////// + ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP// + //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4 + mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ + mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ + mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ + mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ + mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ + mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY + //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ + mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf + //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/ + //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv/// + //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP// + if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ + mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz + MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn/// + iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4 + kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP// + /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ + mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ + mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ + mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ + mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ + //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ + mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ + mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ + mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT + mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj/////// + ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn/// + //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ + mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ + mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ + mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ + mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj/////////// + ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY////// + ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP + //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4 + /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ + mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ + mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7 + mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4 + eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb//// + ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ + mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj///// + /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/ + ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ + mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ + mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ + mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ + mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA + AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA + AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz + MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA + AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w + AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA + Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA + AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA + AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA + AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA + AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA + AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA + AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA + AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD///// + wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w== + + + \ No newline at end of file diff --git a/TEMUKJD/WXForms/ShopForms/WXShopForm.Designer.cs b/TEMUKJD/WXForms/ShopForms/WXShopForm.Designer.cs index 99c873a..a783092 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopForm.Designer.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopForm.Designer.cs @@ -31,12 +31,14 @@ 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("OEM账号管理"); - 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("评分考核"); - System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("税务申报"); - System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("充值二维码"); - System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("店铺管理", new System.Windows.Forms.TreeNode[] { + System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("OEM返现明细"); + System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("OEM积分明细"); + System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("店铺地址管理"); + System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("店铺经营统计"); + System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("评分考核"); + System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("税务申报"); + System.Windows.Forms.TreeNode treeNode10 = new System.Windows.Forms.TreeNode("充值二维码"); + System.Windows.Forms.TreeNode treeNode11 = new System.Windows.Forms.TreeNode("店铺管理", new System.Windows.Forms.TreeNode[] { treeNode1, treeNode2, treeNode3, @@ -44,7 +46,9 @@ treeNode5, treeNode6, treeNode7, - treeNode8}); + treeNode8, + treeNode9, + treeNode10}); this.panel1 = new System.Windows.Forms.Panel(); this.panel3 = new System.Windows.Forms.Panel(); this.panel2 = new System.Windows.Forms.Panel(); @@ -142,20 +146,24 @@ treeNode2.Text = "子账号管理"; treeNode3.Name = "OEM账号管理"; treeNode3.Text = "OEM账号管理"; - treeNode4.Name = "店铺地址管理"; - treeNode4.Text = "店铺地址管理"; - treeNode5.Name = "店铺经营统计"; - treeNode5.Text = "店铺经营统计"; - treeNode6.Name = "评分考核"; - treeNode6.Text = "评分考核"; - treeNode7.Name = "税务申报"; - treeNode7.Text = "税务申报"; - treeNode8.Name = "充值二维码"; - treeNode8.Text = "充值二维码"; - treeNode9.Name = "店铺管理"; - treeNode9.Text = "店铺管理"; + treeNode4.Name = "OEM返现明细"; + treeNode4.Text = "OEM返现明细"; + treeNode5.Name = "OEM积分明细"; + treeNode5.Text = "OEM积分明细"; + treeNode6.Name = "店铺地址管理"; + treeNode6.Text = "店铺地址管理"; + treeNode7.Name = "店铺经营统计"; + treeNode7.Text = "店铺经营统计"; + treeNode8.Name = "评分考核"; + treeNode8.Text = "评分考核"; + treeNode9.Name = "税务申报"; + treeNode9.Text = "税务申报"; + treeNode10.Name = "充值二维码"; + treeNode10.Text = "充值二维码"; + treeNode11.Name = "店铺管理"; + treeNode11.Text = "店铺管理"; this.tv.Nodes.AddRange(new System.Windows.Forms.TreeNode[] { - treeNode9}); + treeNode11}); this.tv.OverForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235))))); this.tv.Size = new System.Drawing.Size(140, 461); this.tv.TabIndex = 1; diff --git a/TEMUKJD/WXForms/ShopForms/WXShopForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopForm.cs index 8b6f477..8ccd3ae 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopForm.cs @@ -15,6 +15,7 @@ using TemuKJD.KJDForms.ProductSelectForms; using TemuKJD.KJDForms.ProductThirdSelectForms; using TemuKJD.KJDForms.ShopForms.Statistics; using NaiBa.Util.Extension; +using Work._29Tools.Forms.UserForms; namespace TemuKJD.WXForms.ShopForms { @@ -30,6 +31,8 @@ namespace TemuKJD.WXForms.ShopForms public Lazy shopAfterSaleAddressListForm = new Lazy(); public Lazy getTopUpQrCode = new Lazy(); public Lazy oemAccountForm = new Lazy(); + public Lazy oemAccountBalanceForm = new Lazy(); + public Lazy oemAccountPointsForm = new Lazy(); public WXShopForm() @@ -57,7 +60,7 @@ namespace TemuKJD.WXForms.ShopForms public List getHideTreeNodes() { - List hideNames = new List() { "OEM账号管理", "充值二维码", "店铺地址管理", "评分考核", "子账号管理", "高级运费模板", "运费模板", "素材库管理", "订单金额统计", "工作明细统计", "店铺经营统计1" }; + List hideNames = new List() { "充值二维码", "OEM账号管理", "OEM返现明细", "OEM积分明细", "店铺地址管理", "评分考核", "子账号管理", "高级运费模板", "运费模板", "素材库管理", "订单金额统计", "工作明细统计", "店铺经营统计1" }; if (BaseClass.SaLevel == 1) { @@ -73,13 +76,15 @@ namespace TemuKJD.WXForms.ShopForms { hideNames.Remove("评分考核"); } - if (BaseClass.UserAuthority.Contains("充值用户") && BaseClass.GroupId == 3) + if (BaseClass.UserAuthority.Contains("充值用户") && BaseClass.GroupId == 3 && BaseClass.AgentCode.IsNullOrEmpty() && BaseClass.OemId.IsNullOrEmpty()) { hideNames.Remove("充值二维码"); } if (!BaseClass.OemId.IsNullOrEmpty() && BaseClass.IsOemOwner) { hideNames.Remove("OEM账号管理"); + hideNames.Remove("OEM返现明细"); + hideNames.Remove("OEM积分明细"); } foreach (var forbiddenPage in BaseClass.ForbiddenPage.Split(',')) @@ -134,6 +139,12 @@ namespace TemuKJD.WXForms.ShopForms case "OEM账号管理": SetForm(oemAccountForm.Value); break; + case "OEM返现明细": + SetForm(oemAccountBalanceForm.Value); + break; + case "OEM积分明细": + SetForm(oemAccountPointsForm.Value); + break; } })); }).Start(); diff --git a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs index 4eb66ab..a3615b0 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs @@ -46,6 +46,7 @@ namespace TemuKJD.WXForms.ShopForms public bool isMultiLogin = false; public string MultiLoginCookieName = ""; public string InitUrl = ""; + public string InitHtml = ""; private string shopCookieHead = "qq.com"; private string shopLoginUrl = "https://store.weixin.qq.com/shop?redirect_url=%2Fhome"; private string shopMainUrl = "https://store.weixin.qq.com/shop/home"; @@ -87,6 +88,26 @@ namespace TemuKJD.WXForms.ShopForms }); } + if (string.IsNullOrEmpty(InitUrl) && !string.IsNullOrEmpty(InitHtml)) + { + btnLoginAgain.Visible = false; + foreach(Control ctrl in splitContainer1.Panel2.Controls) + ctrl.Visible = false; + + + cefWebBrowser = new ChromiumWebBrowser(new CefSharp.Web.HtmlString(InitHtml, false, "UTF-8")); + CustomResourceRequestHandlerLocal resourceRequestHandler = new CustomResourceRequestHandlerLocal(); + resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete; + cefWebBrowser.RequestHandler = new CustomRequestHandler(resourceRequestHandler); + var lifeSapnHandler = new LifeSpanHandlerLocal(PopWindowType.SelfWindow); + cefWebBrowser.LifeSpanHandler = lifeSapnHandler; + cefWebBrowser.KeyboardHandler = new KeyboardHandler(); + cefWebBrowser.Dock = DockStyle.Fill; + splitContainer1.Panel1.Controls.Add(cefWebBrowser); + cefWebBrowser.BringToFront(); + return; + } + if (!isMultiLogin) AutoLogin(); @@ -502,6 +523,21 @@ namespace TemuKJD.WXForms.ShopForms private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData, IRequest request) { + if (responseData.Contains("交易付款成功,正在跳转至商户页面") && !string.IsNullOrEmpty(this.InitHtml)) + { + Invoke(new Action(() => + { + try + { + this.Close(); + } + catch + { + + } + })); + } + if (url == "https://store.weixin.qq.com/shop/home" && this.openType == EnumOpenType.login) { Task.Run(() => diff --git a/TEMUKJD/bag.ico b/TEMUKJD/bag.ico new file mode 100644 index 0000000000000000000000000000000000000000..6554ca965662add93f57b659089552dc0289eda0 GIT binary patch literal 67646 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 aKlgS4Z>*4nH_?|I}5D_;U{<^CV9rme;R literal 0 HcmV?d00001