diff --git a/TEMUKJD/MainForm.cs b/TEMUKJD/MainForm.cs index 51fa9af..8bb70ab 100644 --- a/TEMUKJD/MainForm.cs +++ b/TEMUKJD/MainForm.cs @@ -319,7 +319,7 @@ namespace TemuKJD { Thread.Sleep(500); } - if (BaseClass.UserAuthority.Contains("充值用户")) + if (BaseClass.UserAuthority.Contains("充值用户") && this.Created) { Invoke(new Action(() => { diff --git a/TEMUKJD/WXForms/AiTalkForms/WxAiTalkForm.cs b/TEMUKJD/WXForms/AiTalkForms/WxAiTalkForm.cs index e030915..3f1de54 100644 --- a/TEMUKJD/WXForms/AiTalkForms/WxAiTalkForm.cs +++ b/TEMUKJD/WXForms/AiTalkForms/WxAiTalkForm.cs @@ -544,37 +544,10 @@ namespace TemuKJD.WXForms.AiTalkForms Thread.Sleep(500); } - int pageSize = 5000; - for (int i = 1; i <= 100; i++) - { - var shopIds = string.Join(",", GlobalConfig.ShopLoginList.Select(s => s.ShopId)); - url = AiTalkUrl + "/api/stores?page=" + i + "&pageSize=" + pageSize + "&keyword=" + shopIds; - refer = AiTalkUrl + "/api/stores"; - var adminCookies = CEFBrowser.GetCookieList("", aiTalkAdminWebBrowser.RequestContext.GetCookieManager(null)); - rst = HttpResponseWxAiTalkBLL.GetResponse(new ShopLoginInfo() { Cookies = JsonHelper.SerializeObject(adminCookies) }, url, refer); - if (rst.Contains("\"stores\":[")) - { - List aiTalkInfoLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(rst)["stores"].ParseToString()); - foreach (var shop in GlobalConfig.ShopLoginList) - { - shop.shopAiTalkInfo = aiTalkInfoLst.FirstOrDefault(s => s.id == shop.ShopId); - } - if (aiTalkInfoLst.Count < pageSize) - break; - } - else - { - BaseMsgForm.ShowError("AI客服账户登录失败,请稍候重试!"); - return; - } - } + // 刷新Ai客服店铺状态 + refreshAiStatus(GlobalConfig.ShopLoginList.Select(s => s.ShopId).ToList(), true); - Thread.Sleep(1000); - - foreach (var shop in GlobalConfig.ShopLoginList) - { - BindAiTalkStatus(shop); - } + Thread.Sleep(1000); Invoke(new Action(() => { pnlCover.Visible = false; @@ -1393,23 +1366,35 @@ namespace TemuKJD.WXForms.AiTalkForms }); } - void refreshAiStatus(List shopIds) + void refreshAiStatus(List shopIds, bool showLoginErr = false) { - var url = AiTalkUrl + "/api/stores?page=1&pageSize=5000&keyword=" + string.Join(",", shopIds); - var refer = AiTalkUrl + "/api/stores"; - var adminCookies = CEFBrowser.GetCookieList("", aiTalkAdminWebBrowser.RequestContext.GetCookieManager(null)); - var rst = HttpResponseWxAiTalkBLL.GetResponse(new ShopLoginInfo() { Cookies = JsonHelper.SerializeObject(adminCookies) }, url, refer); + while (shopIds.Count > 0) + { + var tmpShopIds = shopIds.Take(300).ToList(); + shopIds.RemoveAll(id => tmpShopIds.Contains(id)); - if (rst.Contains("\"stores\":[")) - { - List aiTalkInfoLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(rst)["stores"].ParseToString()); - foreach (var shopId in shopIds) - { - var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); - if (shop != null) - shop.shopAiTalkInfo = aiTalkInfoLst.FirstOrDefault(ai => ai.id == shop.ShopId); - } - } + // http://14.103.99.254/api/stores?page=1&pageSize=5000&keyword= + var url = AiTalkUrl + "/api/stores?page=1&pageSize=1000&keyword=" + string.Join(",", tmpShopIds); + var refer = AiTalkUrl + "/api/stores"; + var adminCookies = CEFBrowser.GetCookieList("", aiTalkAdminWebBrowser.RequestContext.GetCookieManager(null)); + var rst = HttpResponseWxAiTalkBLL.GetResponse(new ShopLoginInfo() { Cookies = JsonHelper.SerializeObject(adminCookies) }, url, refer); + + if (rst.Contains("\"stores\":[")) + { + List aiTalkInfoLst = JsonHelper.DeserializeJsonToList(JsonHelper.JObjectParse(rst)["stores"].ParseToString()); + foreach (var shopId in tmpShopIds) + { + var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == shopId); + if (shop != null) + shop.shopAiTalkInfo = aiTalkInfoLst.FirstOrDefault(ai => ai.id == shop.ShopId); + } + } + else if (showLoginErr) + { + BaseMsgForm.ShowError("AI客服账户登录失败,请稍候重试!"); + return; + } + } foreach (var shop in GlobalConfig.ShopLoginList) {