using CRM.Core.BLL.EventBus.EventHandlers; using CRM.Core.BLL.EventBus.Events; using CRM.Core.BLL.Quality; using CRM.Core.Common.EventBus; using CRM.Core.Common.WebHelper; using CRM.Core.DTO.Res; using CRM.Core.Model.Entity; using Microsoft.VisualStudio.TestTools.UnitTesting; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Configuration; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Web; using WX.CRM.BLL.Util; using WX.CRM.BLL.Wx; using WX.CRM.Common; using WX.CRM.Common.WxPay; //using WeChatServerServices; using WX.CRM.DAL.Redis; using WX.CRM.Model.DTO; using WX.CRM.Model.Entity; namespace wechatTest { [TestClass] public class UnitTest1 { [TestMethod] public void TestMethod1() { } [TestMethod] public void TestUploadImage() { //var path = "C://Users//Administrator//Desktop//22.jpg"; //var bll = new WX.CRM.BLL.Wx.WX_FILEPATH_BL(); ////var result = bll.UploadImage(path); //Console.WriteLine(result); } [TestMethod] public void TestUpload() { //try //{ // var pstr = "testparams"; // var ret = Utility.PostData("http://localhost:18739/WXFilePathService.svc/Upload", pstr, Encoding.UTF8); // Console.WriteLine(ret); //} //catch (Exception ex) //{ //} string path = @"C:\Users\Administrator\Desktop\22.jpg"; //string path = @"D:\soft\MongoCola2.0.5.zip"; //string path = @"C:\Users\Administrator\Desktop\z\Bootstrap_Table.rar"; //string path = @"C:\Users\Administrator\Desktop\z\sealtalk-web.zip"; System.Net.WebClient client = new System.Net.WebClient(); client.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); var buffer = File.ReadAllBytes(path); //client.UploadDataCompleted += UploadWc_UploadDataCompleted; //client.UploadData(new Uri("http://localhost:46231/FilePath.svc/Upload/1111111111/22.jpg"), buffer); client.UploadData(new Uri("http://192.168.1.132:8099/WxFileUpload2.ashx?fileName=22.jpg"), buffer); //client.UploadDataAsync(new Uri("http://192.168.1.45:809/FilePath.svc/Upload/1111111111/22.jpg"), buffer); } private void UploadWc_UploadDataCompleted(object sender, System.Net.UploadDataCompletedEventArgs e) { Console.WriteLine(e.Result); } [TestMethod] public void TestPutRContact() { //var model = new rcontact() //{ // jobwxusername = "aaaa", // username = "wxid_h1sph8q2rgo722", // nickname = "浣溪沙", // type = 1 //}; var list = new List { new rcontact() { jobwxusername = "test", username = "wxid_h1sph8q2rgo722", nickname = "浣溪沙", type = 1 } }; //dynamic model = new JObject(); //model.username = "wxid_h1sph8q2rgo722"; //model.nickname = "浣溪沙"; //model.type = 1; //var url = "http://localhost:18739/WeiXinService.svc/RContact/Put"; var url = "http://192.168.1.45:809/WxMessageSvr.svc/RContact/Put"; var para = JsonConvert.SerializeObject(list); //var para = JsonConvert.SerializeObject(model); //var para = list.ToString(); //HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); //request.Method = "POST"; ////request.ContentType = "application/x-www-form-urlencoded"; //request.ContentType = "application/json"; //byte[] data = Encoding.UTF8.GetBytes(para); //using (BinaryWriter reqStream = new BinaryWriter(request.GetRequestStream())) //{ // reqStream.Write(data, 0, data.Length); //} //using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) //{ // StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); // string result = reader.ReadToEnd(); // Console.WriteLine(result); //} //var ret = Utility.PostData(url, para, Encoding.UTF8); WebClient webClient = new WebClient(); webClient.Encoding = Encoding.UTF8; webClient.Headers[HttpRequestHeader.ContentType] = "application/json"; //string result = webClient.UploadString(url, "POST", "{\"jobwxusername\" : \"Ashu|29|7 Years|.NET\"}"); string result = webClient.UploadString(url, "POST", para); Console.WriteLine(result); //webClient.UploadString(url, "POST", para); //webClient.UploadString(url, "POST", "{\"username\":\"test\"}"); //webClient.UploadString(url, "POST", "aaa"); } [TestMethod] public void TestPutMessage() { var message = new message() { msgId = 1, msgSvrId = 12121212121, content = "测试测试" }; var url = "http://192.168.1.132:809/WxMessageSvr.svc/Message/Put"; WebClient webClient = new WebClient(); webClient.Encoding = Encoding.UTF8; webClient.Headers[HttpRequestHeader.ContentType] = "application/json"; //string result = webClient.UploadString(url, "POST", JsonConvert.SerializeObject(message)); string result = webClient.UploadString(url, "POST", "{\"CTIME\":\"2016-12-20 19:38:40\",\"username\":\"wxid_h1sph8q2rgo722\",\"bizClientMsgId\":\"\",\"content\":\"yangjn6189%3A%0A%E6%98%AF%E5%88%B0%E5%90%83%E7%BE%8A%E8%82%89%E6%97%81%E8%BE%B9%E7%9A%84\",\"url\":\"\",\"filepath\":\"\",\"talker\":\"2717306012@chatroom\",\"nickname\":\"%E6%B5%A3%E6%BA%AA%E6%B2%99\",\"yunstatus\":1,\"msgSvrId\":7730313252734763026,\"createTime\":1480932765000,\"status\":3,\"isShowTimer\":0,\"talkerId\":34,\"isSend\":0,\"flag\":0,\"type\":1,\"upstatus\":0,\"msgId\":16,\"bizChatId\":-1,\"msgSeq\":0}"); Console.WriteLine(result); } [TestMethod] public void TestPutAlive() { var alive = new alive() { username = "test", lasttime = DateTime.Now.ToString() }; var url = "http://192.168.1.45:809/WxMessageSvr.svc/Alive/Put"; WebClient webClient = new WebClient(); webClient.Encoding = Encoding.UTF8; webClient.Headers[HttpRequestHeader.ContentType] = "application/json"; //string result = webClient.UploadString(url, "POST", JsonConvert.SerializeObject(alive)); string result = webClient.UploadString(url, "POST", "{\"username\":\"test\",\"lasttime\":11}"); Console.WriteLine(result); } [TestMethod] public void TestGetFileExt() { string path = @"asdfasdf\Desktop\Entity.aaa"; var ext = Path.GetFileNameWithoutExtension(path); Console.WriteLine(ext); } [TestMethod] public void TestGetMonth() { var yearMonth = DateTime.Now.ToString("yyyyMM"); var month = "201612"; if (yearMonth.Equals(month)) { Console.WriteLine("ok"); } Console.WriteLine(yearMonth); } //[TestMethod] //public void TestMessage() //{ // var json = // "{\"filepath\":\"\",\"url\":\"\",\"username\":\"wxid_h1sph8q2rgo722\",\"nickname\":\"浣溪沙\",\"yunstatus\":1,\"upstatus\":0,\"ctime\":null,\"msgId\":272,\"msgSvrId\":6274263898379622724,\"type\":1,\"status\":3,\"isSend\":0,\"isShowTimer\":0,\"createTime\":1482314314000,\"talker\":\"8187202671@chatroom\",\"content\":\"wxid_jo5nnmegwumv21:\n的点点滴滴\",\"imgPath\":null,\"reserved\":null,\"lvbuffer\":null,\"transContent\":null,\"transBrandWording\":null,\"talkerId\":38,\"bizClientMsgId\":\"\",\"bizChatId\":-1,\"bizChatUserId\":null,\"msgSeq\":602350890,\"flag\":0}"; // var info = JsonConvert.DeserializeObject(json); // Subscribe s = new Subscribe(); // s.WxMessage(info); //} //[TestMethod] //public void TestDoCreateTable() //{ // Subscribe s = new Subscribe(); // var table = s.GetTableName(); // Console.WriteLine(table); //} [TestMethod] public async Task TestRedisSet() { var isExists = await new RedisSet().Contains("wxid:wxid_h1sph8q2rgo722", "zch55771"); Console.WriteLine(isExists); } [TestMethod] public void TestZxReg() { //var url = "http://r.szzy888.com/Account/UnionRegister"; //var para = string.Format("userName={0}&userPassword={1}&userTrueName={2}&from={3}", "15179368185", "abc123", "", "guangzhou"); //var result = Utility.PostData(url, para, Encoding.UTF8); ////var result = "{\"result\":0,\"message\":\"注册成功!!\",\"data\":{\"userId\":\"161226020000803546\",\"userName\":\"13149388270\"}}"; //var json = JObject.Parse(result); //var data = JObject.Parse(json["data"].ToString()); //Console.WriteLine(int.Parse(json["result"].ToString())); //Console.WriteLine(json["message"]); //Console.WriteLine(data["userId"]); var result = Utility.PostData("http://localhost:46231/WxOrderSvr.svc/ZxRegister/Put/399673230373752993", Encoding.UTF8); Console.WriteLine(result); } [TestMethod] public void TestBatchInserUserIMEI() { var result = Utility.PostData("http://localhost:46231/WeiXinService.svc/BatchInsertUserIMEI?imeis=111111", Encoding.UTF8); Console.Write(result); } [TestMethod] public void TestUpPay() { ValidationErrors errors = new ValidationErrors(); SzzyOrderResult result = new SzzyOrderResult(); WX_SZZYORDER_BL wx_SzzyOrder_BL = new WX_SZZYORDER_BL(); WX.CRM.BLL.Util.CACHE_BL cache_BL = new WX.CRM.BLL.Util.CACHE_BL(); var str = cache_BL.GetValue_Parameter(WX.CRM.Model.Enum.Parameter.WeiXIn_SzzyOrderUnPayDayInterval); int m = 1; int.TryParse(str, out m); var list = wx_SzzyOrder_BL.GetUnPayList(-m); Console.Write(list.Count()); } [TestMethod] public void TestWorkAccountSystemPauseHandle() { WX_WORKACCOUNT_BL wx_WorkAccount_BL = new WX_WORKACCOUNT_BL(); string errmsg = string.Empty; var flag = wx_WorkAccount_BL.EveryDaySystemPauseHandle(out errmsg); if (!flag) { LogHelper.Info("处理系统暂停工作微信失败:" + errmsg); } else { LogHelper.Info("处理系统暂停工作微信成功!"); } Console.Write(flag); } [TestMethod] public void TestWorkAccountManualPauseHandle() { WX_WORKACCOUNT_BL wx_WorkAccount_BL = new WX_WORKACCOUNT_BL(); string errmsg = string.Empty; var flag = wx_WorkAccount_BL.EveryDayManualPauseHandle(out errmsg); if (!flag) { LogHelper.Info("处理手工暂停工作微信失败:" + errmsg); } else { LogHelper.Info("处理手工暂停工作微信成功!"); } Console.Write(flag); } [TestMethod] public void TestDoWhile() { var tag = true; do { var i = GetRandom(); Console.WriteLine(i); if (i < 10) { tag = false; } } while (tag); } [TestMethod] public void TestCheckDate() { var time = DateTime.Parse("2017/2/14 12:40:40"); var today = DateTime.Parse(DateTime.Now.Date.ToString()); var tomorrow = DateTime.Parse(DateTime.Now.Date.AddDays(1).ToString()); Console.WriteLine("today:" + today.ToString()); Console.WriteLine("tomorrow:" + tomorrow.ToString()); Console.WriteLine(time > today && time < tomorrow); ; } private int GetRandom() { Thread.Sleep(100); var random = new Random().Next(0, 50); return random; } [TestMethod] public void TestGetSzzyOrderListInfo() { var bll = new WX_SZZYORDER_BL(); var list = bll.GetSzzyOrderListInfo(); Console.WriteLine(list.Count); } [TestMethod] public void TestPhoneMd5() { WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper(); var mobile = sHelper.decyptData("UPWEBSITE", "4fU18+ipbzZ6vNhKMAi7IA=="); mobile = sHelper.encyptData("nj_crm", "13536107428"); //var mobile = sHelper.decyptData("nj_crm", "gNLkefJCGeWYGg+bthdoeA=="); //mobile = sHelper.encyptData("nj_crm", "13330196860"); //var mobile = sHelper.decyptData("TDORDERSITE", "YnegPa+RwIqrgZXjBLSrS0wxLnYRPgANkb7k5EXff8kkKip+/1v8gQZVTt0L1Jo6"); //mobile = sHelper.encyptData("nj_crm", "13330196860"); //var mobile = sHelper.decyptData("UPWEBSITE", HttpUtility.UrlDecode("delvAlmupXmJNN8LDai1GrymT4kDdaBMREaahQqtOsAibHcdbbYIqZX63CcqonXJbXQp1%2fLd3j4YX0guSfooyw%3d%3d")); Console.WriteLine(mobile); //var str = sHelper.decyptData("TDORDERSITE", "WSMG984VTfLKhFCfJh3mF20SaYp6IsFReQSCeo7c9zvimPfuFeUw1AJvUH8Mj+vZt01cnGUWoBthdHUfLRYrjwNoZa7YhvcN1OJQDtn30Gd5t0YbJSFEj84EIFh/iu0LUnlOba013+XWaKaikUiH830YxG+jU2qs0SaREh0hR64RE0ejkrIzAApjsl8WPYiCM6ybgipBla0/WIMFF8UJZIPXc6uW8vBGvynSyNsq90o="); //Console.WriteLine(str); //var phone = Utility.EncryptMD5("13606815699" + "hc.pj.2017"); //Console.WriteLine(phone); //var url = "WSMG984VTfLKhFCfJh3mF20SaYp6IsFReQSCeo7c9zvimPfuFeUw1AJvUH8Mj+vZt01cnGUWoBthdHUfLRYrjwNoZa7YhvcN1OJQDtn30Gd5t0YbJSFEj84EIFh/iu0LUnlOba013+XWaKaikUiH830YxG+jU2qs0SaREh0hR64RE0ejkrIzAApjsl8WPYiCM6ybgipBla0/WIMFF8UJZIPXc6uW8vBGvynSyNsq90o=&clientid=UPWEBSITE&sign=pFS+IHDK0XNMXegM0z4ddw=="; //Console.WriteLine(HttpUtility.UrlEncode(url)); } [TestMethod] public void TestPhoneCti() { //OTFOETB2ttGsS1fGKcWy0Q%3D%3D //X%2bCoAxNn4JSdr0UtCNN4rA%3d%3d //y01UqKP8k5%2FDq4wYLxxIGw%3D%3D //VgkvawNBKFDM+Z7BxbHD2w== //Zt2Nd9bCjOtXc9zs4ZVrSQ== var CNumber = "019928301085"; CNumber = CNumber.Replace("+86", ""); if (CNumber.StartsWith("01") && CNumber.Length == 12) { CNumber = CNumber.Substring(1); } Console.WriteLine(CNumber); //var encyptMobile = new SecurityHelper().encyptCtiNumStr("019928301085"); //Console.WriteLine(encyptMobile); //var mobile = new SecurityHelper().decyptCtiNumStr(encyptMobile); //Console.WriteLine(mobile); ////if (mobile.StartsWith("01") && mobile.Length == 12) ////{ //// mobile = mobile.Substring(1); //// Console.WriteLine("a:" + mobile); ////} ////mobile = mobile.Replace("+86", ""); ////if (mobile.Length == 12 && mobile.StartsWith("01"))//长度必须是12位,且是01开头,必然是手机号,去除前面的0 ////{ //// mobile = mobile.Substring(mobile.Length - 11, 11); //// Console.WriteLine("b:" + mobile); ////} ////else if (mobile.Length > 12)//大于12位的,取后面的11位 ////{ //// mobile = mobile.Substring(mobile.Length - 11, 11); //// Console.WriteLine("c:" + mobile); ////}//小于等于11的不做处理 //var resid = WX.CRM.Common.ResUtil.CreateResId(mobile); //Console.WriteLine(resid); } [TestMethod] public void TestCurDate() { /* //DateTime convertedDate = DateTime.Parse(DateTime.Now.ToShortDateString()); //Console.WriteLine(convertedDate.ToLocalTime()); DateTime convertedDate = DateTime.SpecifyKind(DateTime.Parse(DateTime.Now.ToShortDateString()), DateTimeKind.Utc); Console.WriteLine(convertedDate.ToString()); var date = DateTime.Parse(DateTime.UtcNow.ToShortDateString()).AddDays(1); //var date = DateTime.UtcNow.ToUniversalTime(); Console.WriteLine(date.ToString()); */ DateTime expireDate = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Utc).AddMinutes(10); var timeSpan = expireDate - DateTime.Now; Console.WriteLine(expireDate - DateTime.UtcNow); Console.WriteLine(timeSpan); } [TestMethod] public void TestSoftUser() { //WSMG984VTfLcooTfvUvIVfIEsItqa4MD/eSggp6Qv3phSAhba0aBtgc7HbvCoenHBK/OoOkCo/EzCgWl+zW5F+1qAgdYgWopPFshWxd5bqtoB7F0R8LMV7xP3lFTSnMGTI1ad2s6Rh5ShMb/zCF6CnK0Pxp9IKbRA7id/y5JyM4DEQYRCAHE7OHED6fum6cbvQTbhfu96w5ABQonjqcCssKAY8KTwFZg7BCudlXa6i8=&clientid=TDORDERSITE&sign=EEjOFIIQU1N4Hmaanvt+aQ== //string _url = "http://121.14.69.17:801/ResourceService.svc/GetResRegUser"; //System.Web.Script.Serialization.JavaScriptSerializer serize = new System.Web.Script.Serialization.JavaScriptSerializer(); //string message = serize.Serialize(new ResModel() { StartTime = sd.ToString(), EndTime = ed.ToString(), typeId = _id }); //string message = serize.Serialize(new ResModel() { StartTime = DateTime.Parse("2017-03-01").ToString(), EndTime = DateTime.Parse("2017-03-19").ToString(), companyCode = "TDOEM" }); string clientid = "UPWEBSITE"; string key = "content={0}&clientId=UPWEBSITE&sign={1}"; //string jiami = new SecurityHelper().encyptData(clientid, message); string jiami1 = HttpUtility.UrlEncode("WSMG984VTfLcooTfvUvIVfIEsItqa4MD/eSggp6Qv3phSAhba0aBtgc7HbvCoenHBK/OoOkCo/EzCgWl+zW5F+1qAgdYgWopPFshWxd5bqtoB7F0R8LMV7xP3lFTSnMGTI1ad2s6Rh5ShMb/zCF6CnK0Pxp9IKbRA7id/y5JyM4DEQYRCAHE7OHED6fum6cbvQTbhfu96w5ABQonjqcCssKAY8KTwFZg7BCudlXa6i8=", Encoding.UTF8); //string jiasuo = new SecurityHelper().signData(clientid, jiami); string jiasuo1 = HttpUtility.UrlEncode("EEjOFIIQU1N4Hmaanvt+aQ==", Encoding.UTF8); key = string.Format(key, jiami1, jiasuo1); Console.WriteLine(key); //WX.CRM.Common.LogHelper.Error(_url); // string str = WX.CRM.Common.Utility.HttpPostData(_url, key, Encoding.UTF8); //string str = WX.CRM.Common.Utility.PostData(_url + "?" + key, System.Text.Encoding.UTF8); //str = new SecurityHelper().decyptData("UPWEBSITE", str); //Console.WriteLine(str); //var str = "delvAlmupXkNIYzx75OcSzeE8/t07dG3IqLY0reM/plP1nV37r4r2A=="; //var ret = new SecurityHelper().decyptData("UPWEBSITE", str); //Console.WriteLine(ret); } [TestMethod] public void TestResourceJoin() { //Join?content={content}&clientid={clientid}&sign={sign} var model = new JionActiveDto() { account = "dn0000028", accounttype = 0, campaignId = "web_gzyy_20181115" }; var json = JsonConvert.SerializeObject(model); var para = new SecurityHelper().createSignEncodingStr(json); Console.WriteLine(para); //var url = "http://47.107.128.102:8096/ResourceService.svc/Join"; //var rep = Utility.PostData(url + "?" + para, Encoding.UTF8); //Console.WriteLine(rep); //var jiemi = new SecurityHelper().decyptData("UPWEBSITE", rep); //Console.WriteLine(jiemi); } [TestMethod] public void TestExpiryOrder() { ValidationErrors errors = new ValidationErrors(); SzzyOrderResult result = new SzzyOrderResult(); WX_SZZYORDER_BL wx_SzzyOrder_BL = new WX_SZZYORDER_BL(); var list = wx_SzzyOrder_BL.GetList(m => m.ORDERSTATUS == "4" && m.ENDTIME < DateTime.Now).OrderBy(m => m.ENDTIME); foreach (var item in list) { Thread.Sleep(1000); } } [TestMethod] public void TestNum() { /*string url = "http://192.168.1.132/uploadfile/20173/683158d486caa14bb6ba070995c4efcb.amr"; string arr = url.Substring(0, url.IndexOf("uploadfile")) + "uploadfile"; url = url.Replace(arr, ""); Console.WriteLine(url);*/ var str = WX.CRM.Common.Utility.ConvertDateTimeToInt(Convert.ToDateTime("2017-5-16")); var str2 = WX.CRM.Common.Utility.ConvertStringToDateTime("1494864000000"); Console.WriteLine(WX.CRM.Model.Enum.Parameter.WeiXin_IllegalKewords.ToString()); string url = "http://192.168.1.132/uploadfile/20173/683158d486caa14bb6ba070995c4efcb.amr"; string arr = url.Substring(0, url.IndexOf("uploadfile")) + "uploadfile"; url = url.Replace(arr, ""); var path = Path.Combine(@"\\192.168.1.171\weixin", "audio"); Console.WriteLine(arr); Console.WriteLine(url); Console.WriteLine(path); } [TestMethod] public void TestMsgSql() { var list = new List() { "wx_gen_msqunfa_detail197007_0", "wx_gen_msqunfa_detail197007_1", "wx_gen_msqunfa_detail197011_0", "wx_gen_msqunfa_detail197101_0", "wx_gen_msqunfa_detail197111_1", "wx_gen_msqunfa_detail197201_1", "wx_gen_msqunfa_detail197501_1", "wx_gen_msqunfa_detail197503_1", "wx_gen_msqunfa_detail197510_0", "wx_gen_msqunfa_detail197510_1", "wx_gen_msqunfa_detail197601_1", "wx_gen_msqunfa_detail197611_1", "wx_gen_msqunfa_detail197701_0", "wx_gen_msqunfa_detail197706_0", "wx_gen_msqunfa_detail197707_0", "wx_gen_msqunfa_detail197710_0", "wx_gen_msqunfa_detail197710_1", "wx_gen_msqunfa_detail197711_1", "wx_gen_msqunfa_detail197801_0", "wx_gen_msqunfa_detail197801_1", "wx_gen_msqunfa_detail197802_0", "wx_gen_msqunfa_detail197802_1", "wx_gen_msqunfa_detail197803_0", "wx_gen_msqunfa_detail197803_1", "wx_gen_msqunfa_detail197804_0", "wx_gen_msqunfa_detail197804_1", "wx_gen_msqunfa_detail197805_0", "wx_gen_msqunfa_detail197805_1", "wx_gen_msqunfa_detail197806_0", "wx_gen_msqunfa_detail197806_1", "wx_gen_msqunfa_detail197807_0", "wx_gen_msqunfa_detail197901_0", "wx_gen_msqunfa_detail198007_0", "wx_gen_msqunfa_detail198109_1", "wx_gen_msqunfa_detail198205_0", "wx_gen_msqunfa_detail198208_1", "wx_gen_msqunfa_detail198302_0", "wx_gen_msqunfa_detail198309_1", "wx_gen_msqunfa_detail198401_1", "wx_gen_msqunfa_detail198502_1", "wx_gen_msqunfa_detail198607_1", "wx_gen_msqunfa_detail198609_1", "wx_gen_msqunfa_detail198804_0", "wx_gen_msqunfa_detail198810_1", "wx_gen_msqunfa_detail198910_0", "wx_gen_msqunfa_detail199108_0", "wx_gen_msqunfa_detail199311_0", "wx_gen_msqunfa_detail199404_1", "wx_gen_msqunfa_detail199601_1", "wx_gen_msqunfa_detail199712_0", "wx_gen_msqunfa_detail199812_1", "wx_gen_msqunfa_detail199902_1", "wx_gen_msqunfa_detail200302_1", "wx_gen_msqunfa_detail201003_1", "wx_gen_msqunfa_detail201004_0", "wx_gen_msqunfa_detail201004_1", "wx_gen_msqunfa_detail201005_0", "wx_gen_msqunfa_detail201005_1", "wx_gen_msqunfa_detail201006_0", "wx_gen_msqunfa_detail201006_1", "wx_gen_msqunfa_detail201007_0", "wx_gen_msqunfa_detail201007_1", "wx_gen_msqunfa_detail201008_0", "wx_gen_msqunfa_detail201008_1", "wx_gen_msqunfa_detail201009_0", "wx_gen_msqunfa_detail201009_1", "wx_gen_msqunfa_detail201010_0", "wx_gen_msqunfa_detail201010_1", "wx_gen_msqunfa_detail201011_0", "wx_gen_msqunfa_detail201011_1", "wx_gen_msqunfa_detail201012_0", "wx_gen_msqunfa_detail201012_1", "wx_gen_msqunfa_detail201101_0", "wx_gen_msqunfa_detail201101_1", "wx_gen_msqunfa_detail201102_0", "wx_gen_msqunfa_detail201501_0", "wx_gen_msqunfa_detail201504_0", "wx_gen_msqunfa_detail201612_1", "wx_gen_msqunfa_detail201701_0", "wx_gen_msqunfa_detail201701_1", "wx_gen_msqunfa_detail201702_0", "wx_gen_msqunfa_detail201702_1", "wx_gen_msqunfa_detail201703_0", "wx_gen_msqunfa_detail201703_1", "wx_gen_msqunfa_detail201704_0", "wx_gen_msqunfa_detail201704_1", "wx_gen_msqunfa_detail201705_0", "wx_gen_msqunfa_detail201705_1", "wx_gen_msqunfa_detail201706_0", "wx_gen_msqunfa_detail201706_1", "wx_gen_msqunfa_detail201707_0", "wx_gen_msqunfa_detail201707_1", "wx_gen_msqunfa_detail201708_0", "wx_gen_msqunfa_detail201708_1", "wx_gen_msqunfa_detail201709_0", "wx_gen_msqunfa_detail201709_1", "wx_gen_msqunfa_detail201710_0", "wx_gen_msqunfa_detail201710_1", "wx_gen_msqunfa_detail201711_0", "wx_gen_msqunfa_detail201711_1", "wx_gen_msqunfa_detail201712_0", "wx_gen_msqunfa_detail201712_1", "wx_gen_msqunfa_detail201801_0", "wx_gen_msqunfa_detail201801_1", "wx_gen_msqunfa_detail201802_0", "wx_gen_msqunfa_detail201802_1", "wx_gen_msqunfa_detail201803_0", "wx_gen_msqunfa_detail201803_1", "wx_gen_msqunfa_detail201809_0", "wx_gen_msqunfa_detail201902_1", "wx_gen_msqunfa_detail201903_1", "wx_gen_msqunfa_detail202109_1", "wx_gen_msqunfa_detail202904_1", "wx_gen_msqunfa_detail203004_1", "wx_gen_msqunfa_detail203207_1" }; var sql = ""; var i = 1; foreach (var item in list) { var sql2 = "select fd.username talker,f.jobusername username,CONVERT(varchar(100), dateadd(HOUR,8, dateadd(ss,f.createtime/1000,CONVERT(datetime,'1/1/1970',111))), 111) createTime "; sql2 += "from wx_gen_msqunfa f join " + item + " fd on f.clientid = fd.clientid "; //sql2 += "where not exists(select 1 from wx_communication3day d where fd.username = d.username and f.jobusername = d.jobusername) "; sql2 += "where fd.username in('wxid_8hs2u25pb7gj22','wxid_bieom4hi5kx422','wxid_wimdq0a9whrf22','wxid_4s45rfhfcwci22') "; sql2 += "group by fd.username,f.jobusername,CONVERT(varchar(100), dateadd(HOUR, 8, dateadd(ss, f.createtime / 1000, CONVERT(datetime, '1/1/1970', 111))), 111) "; if (i != list.Count) sql2 += "union "; sql = sql + sql2; i++; } Console.WriteLine(sql); } [TestMethod] public void TestMsgSql2() { var list = new List() { "wx_message201612", "wx_message201701", "wx_message201702", "wx_message201703", "wx_message201704", "wx_message201705", "wx_message201706", "wx_message201707", "wx_message201708", "wx_message201709", "wx_message201710", "wx_message201711", "wx_message201712", "wx_message201801", "wx_message201802", "wx_message201803" }; var list2 = new List() { "wx_gen_msqunfa_detail197701_0", "wx_gen_msqunfa_detail197710_1", "wx_gen_msqunfa_detail197711_1", "wx_gen_msqunfa_detail197904_0", "wx_gen_msqunfa_detail197911_0", "wx_gen_msqunfa_detail198012_0", "wx_gen_msqunfa_detail198102_1", "wx_gen_msqunfa_detail201003_1", "wx_gen_msqunfa_detail201004_0", "wx_gen_msqunfa_detail201701_0", "wx_gen_msqunfa_detail201702_1", "wx_gen_msqunfa_detail201703_0", "wx_gen_msqunfa_detail201703_1", "wx_gen_msqunfa_detail201704_0", "wx_gen_msqunfa_detail201704_1", "wx_gen_msqunfa_detail201705_0", "wx_gen_msqunfa_detail201705_1", "wx_gen_msqunfa_detail201706_0", "wx_gen_msqunfa_detail201706_1", "wx_gen_msqunfa_detail201707_0", "wx_gen_msqunfa_detail201707_1", "wx_gen_msqunfa_detail201708_0", "wx_gen_msqunfa_detail201708_1", "wx_gen_msqunfa_detail201709_0", "wx_gen_msqunfa_detail201709_1", "wx_gen_msqunfa_detail201710_0", "wx_gen_msqunfa_detail201710_1", "wx_gen_msqunfa_detail201711_0", "wx_gen_msqunfa_detail201711_1", "wx_gen_msqunfa_detail201712_0", "wx_gen_msqunfa_detail201712_1", "wx_gen_msqunfa_detail201801_0", "wx_gen_msqunfa_detail201801_1", "wx_gen_msqunfa_detail201802_0", "wx_gen_msqunfa_detail201802_1", "wx_gen_msqunfa_detail201803_0", "wx_gen_msqunfa_detail201803_1" }; var sql = "select talker,username,count(*)num from("; foreach (var item in list) { var sql3 = "select m.talker,m.username,CONVERT(varchar(100), dateadd(HOUR,8, dateadd(ss,m.createTime/1000,CONVERT(datetime,'1/1/1970',111))), 111) createTime "; sql3 += "from " + item + " m where m.msgtype <> 10000 and m.issend = 1 "; sql3 += "and not exists(select 1 from wx_communication3day d where m.talker = d.username and m.username = d.jobusername) "; //sql3 += "and m.username = 'wxid_ock65zi7igqw22' "; sql3 += "group by m.talker,m.username,CONVERT(varchar(100), dateadd(HOUR,8, dateadd(ss,m.createTime/1000,CONVERT(datetime,'1/1/1970',111))), 111) "; sql3 += "union "; sql += sql3; } var i = 1; foreach (var item in list2) { var sql2 = "select fd.username talker,f.jobusername username,CONVERT(varchar(100), dateadd(HOUR,8, dateadd(ss,f.createtime/1000,CONVERT(datetime,'1/1/1970',111))), 111) createTime "; sql2 += "from wx_gen_msqunfa f join " + item + " fd on f.clientid = fd.clientid "; sql2 += "where not exists(select 1 from wx_communication3day d where fd.username = d.username and f.jobusername = d.jobusername) "; //sql2 += "where f.jobusername in('wxid_ock65zi7igqw22') "; sql2 += "group by fd.username,f.jobusername,CONVERT(varchar(100), dateadd(HOUR, 8, dateadd(ss, f.createtime / 1000, CONVERT(datetime, '1/1/1970', 111))), 111) "; if (i != list2.Count) sql2 += "union "; sql = sql + sql2; i++; } sql += ")m group by talker,username having count(*)>=3;"; Console.WriteLine(sql); } [TestMethod] public void TestArrayList() { var userName = ""; using (var db = new crmContext()) { var regUser = db.SOFT_USER.FirstOrDefault(p => p.USERNAME == userName); if (regUser != null) Console.WriteLine(regUser.USERNAME); else Console.WriteLine("user is null"); } } [TestMethod] public void TestConn() { var conn = ConfigurationManager.ConnectionStrings; foreach (ConnectionStringSettings connectionStringSettings in conn) { Console.WriteLine(connectionStringSettings.ConnectionString); } } [TestMethod] public void TestConfig() { var config = Utility.GetSettingOrNullByKey("IsSaveUploadFile"); if ((!string.IsNullOrEmpty(config) && config == "0")) Console.WriteLine("ok"); else Console.WriteLine("11111111111"); } [TestMethod] public void TestLottery() { //for (int i = 0; i < 10; i++) //{ // var ret = RandLottery(new List()); // Console.WriteLine(ret); //} var para = new List() { 0, 6 }; //var para = new List() { 2 }; //var para = new List() { 3 }; //var para = new List() {3, 5}; var ret = RandLottery(para); Console.WriteLine(ret); } [TestMethod] public void TestYiZhengSMS() { var list = new List() { new SmsDto(){ message = "aaaa", mobile="13416115228"} }; var json = JsonConvert.SerializeObject(list); WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper(); //var key = sHelper.createSignEncodingStr(json); string clientid = "UPWEBSITE"; //string key = "content={0}&clientid=gd_crm&sign={1}"; string jiami = sHelper.encyptData(clientid, json); string jiami1 = HttpUtility.UrlEncode(jiami, Encoding.UTF8); string jiasuo = sHelper.signData(clientid, jiami); string jiasuo1 = HttpUtility.UrlEncode(jiasuo, Encoding.UTF8); //key = string.Format(key, jiami1, jiasuo1); var para = new PutSmsDto() { clientid = clientid, content = jiami1, sign = jiasuo1 }; //Console.WriteLine(key); var url = "http://192.168.1.132:906/SmsService.svc/PutSms"; //var url = "http://localhost:18739/SmsService.svc/PutSms"; WebClient webClient = new WebClient(); webClient.Encoding = Encoding.UTF8; webClient.Headers.Add("Content-Type", "application/json"); //string result = webClient.UploadString(url, "POST", JsonConvert.SerializeObject(message)); string result = webClient.UploadString(url, "POST", JsonConvert.SerializeObject(para)); Console.WriteLine(result); //var result = Utility.PostData(url, key, Encoding.UTF8); //var result = Utility.GetData(url, key, Encoding.UTF8); //Console.WriteLine(result); //string str = "Jn92AhYu1+g="; //WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper(); //var ret = sHelper.decyptData("UPWEBSITE", str); //Console.WriteLine(ret); } [TestMethod] public void TestQingQiu() { var clientid = "UPWEBSITE"; var content = HttpUtility.UrlDecode("aaMP6krLOXtD7Hg3HxAsko1ID%2fuQLEe%2bePGDRyY3oPhs2KBtqgWejFR2lGmCtTtn"); var sign = HttpUtility.UrlDecode("A13fi2okBLI3jacAhaW2JA%3d%3d"); WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper(); //var aa = sHelper.decyptData(clientid, content); //Console.WriteLine(aa); if (!sHelper.CheckClientValid(clientid, content, sign)) { Console.WriteLine("err"); } else { Console.WriteLine("ok"); } } [TestMethod] public void TestJiaMi() { ////var account = "nanjing"; ////var date = DateTime.Now.ToString("yyyyMMdd"); ////var str = account + "#" + date; //WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper(); ////var clientId = "UPWEBSITE"; ////var ret = sHelper.encyptData(clientId, str); ////Console.WriteLine(ret); //var data = sHelper.decyptData("UPWEBSITE", "delvAlmupXmJNN8LDai1GrymT4kDdaBM2V3rGyDPkwI="); //Console.WriteLine(data); //var obj = Utility.JSONToObject(data); //Console.WriteLine(obj.result); ////var arr = data.Split('#'); ////Console.WriteLine(arr[0]); ////Console.WriteLine(arr[1]); var mobile = string.Empty; var sHelper = new WX.Interface.Security.EncDecUtil(); var num = sHelper.encyptData(mobile, "1622a92d"); Console.WriteLine(num); } [TestMethod] public void TestTuiSongJiaMi() { //var phone = new SecurityHelper().decyptData("UPWEBSITE", string.Format("{0}", HttpUtility.UrlDecode(Utility.JSONToObject("\"delvAlmupXmJNN8LDai1GrymT4kDdaBMREaahQqtOsAibHcdbbYIqU%2bR3ZxgW6MVT6Y9AcORszm9P3MqN7rkog%3d%3d\"")))); //Jn92AhYu1+g= //var phone = new SecurityHelper().decyptData("UPWEBSITE", string.Format("{0}", "Jn92AhYu1+g=")); //Console.WriteLine("phone:" + phone); //var username = Utility.EncryptMD5(phone.Trim() + "hc.pj.2017"); //Console.WriteLine(username); var aa = HttpUtility.UrlEncode("Alu3WU3OOD2XUp4ivX5tCCrCEbb8NbkFjd5hgs2xLNAz4cJSKmW4sMSgjIBWj9bH9naPvXccUDN7pWu/0JYwABN+YUb2lEo6Yv6ecirHF9bC+BGUjlPTqlcKonuZjYBHvCWPH0DNVL/vsdWH1BDjoOifH5p1p5ym&clientid=UPWEBSITE&sign=bpiIQZaHGxkMb8reb89zAQ=="); Console.WriteLine(aa); } [TestMethod] public void TestPassword() { var pwd = Utility.Sha512("abc123J1AcCb5m"); Console.WriteLine(pwd); } [TestMethod] public void TestOrderActive() { CRM.Core.BLL.Wx.WX_OrderActive_BL orderActive_BL = new CRM.Core.BLL.Wx.WX_OrderActive_BL(); var orderDate = Convert.ToDateTime("2019-2-1 09:46:36").Date; var list = orderActive_BL.GetList("UPCFJC_20181119180241", "QBJZ", orderDate); var count = 0; if (list != null) { count = list.Count; } Console.WriteLine(orderDate.ToString() + "\r\n" + count); } [TestMethod] public void HgSmsSend() { QC_CUSTOMERCOMPLAIN_BL complainBL = new QC_CUSTOMERCOMPLAIN_BL(); EventBus.Instance.Subscribe(new SendHgMessageEventHandler()); var hgReceiveMobile = ConfigurationManager.AppSettings["HgReceiveMobile"]; var resList = new List(); if (!string.IsNullOrWhiteSpace(hgReceiveMobile)) { resList = hgReceiveMobile.Split(',').ToList(); } var list = complainBL.GetUnHandleList(); if (list != null && list.Count > 0) { foreach (var resId in resList) { var sendHgMessageEvent = new SendHgMessageEvent(-1, resId, 10000); EventBus.Instance.Publish(sendHgMessageEvent); } } else { list = complainBL.GetHandleingList(); if (list != null && list.Count > 0) { foreach (var resId in resList) { var sendHgMessageEvent = new SendHgMessageEvent(0, resId, 10000); EventBus.Instance.Publish(sendHgMessageEvent); } } } } [TestMethod] public void OrderDonate() { CRM.Core.BLL.Wx.WX_SZZYORDER_BL orderBL = new CRM.Core.BLL.Wx.WX_SZZYORDER_BL(); CRM.Core.BLL.Wx.WX_OrderActive_BL orderActive_BL = new CRM.Core.BLL.Wx.WX_OrderActive_BL(); var orderId = 80000051; var order = orderBL.GetModel(orderId); if ((order.giftdays.HasValue && order.giftdays > 0) || (order.giftdays2.HasValue && order.giftdays2 > 0)) { //查询符合条件的活动信息 var orderCdate = DateTime.Now.Date; if (order.CTIME.HasValue) { orderCdate = order.CTIME.Value.Date; } var activeList = orderActive_BL.GetList(order.PRODUCTCODE, order.companycode, orderCdate); if (activeList != null && activeList.Count > 0) { string activeproductcode = ""; List activeProductList = new List(); foreach (var active in activeList) { //订购的数量达到最低要求 if (order.BOOKNUM >= active.MinCount) { var count = 0;//产品数量 //是否跟随订单赠送,1:用订单表的giftdays字段作为赠送时长,0:用本表的donateday字段作为赠送时长,2:用订单表的giftdays2字段作为赠送时长 if (active.IsFollowOrder == 1 && order.giftdays > 0) { count = order.BOOKNUM * order.giftdays.Value; //赠送天数,目前赠送天数以坐席端选择的赠送为准,不从活动表获取了 } else if (active.IsFollowOrder == 2 && order.giftdays2 > 0) { count = order.BOOKNUM * order.giftdays2.Value; //赠送天数,目前赠送天数以坐席端选择的赠送为准,不从活动表获取了 } else if (active.IsFollowOrder == 0 && order.giftdays > 0) { count = order.BOOKNUM * active.DonateDay;//产品数量 } if (count == 0) { continue; } Console.WriteLine(active.ActiveCode + " : " + count); } } } } } [TestMethod] public void RiskUrl() { //WX_PRODUCT_BL product_bl = new WX_PRODUCT_BL(); //CRM.Core.BLL.Base.BAS_PARAMETER_BL paramter_bl = new CRM.Core.BLL.Base.BAS_PARAMETER_BL(); SecurityHelper sHelper = new SecurityHelper(); string url = "https://r2.soft.tcfortune.com/contract_sign_crm/signcontract"; var json2 = new { productName = "测试", period = string.Format("{0}天", 1), price = string.Format("{0}元", 0.01), userId = "ceshi116", productLevel = 1, productInvestTime = 1, productInvestType = 1, issupplement = 1, orderId = "80026027", htid = string.Format("DN{0}", "1885305293046611") }; string clientid = SecurityHelper.OrderClientIdKey; string content = sHelper.encyptData(clientid, Utility.ConvertToJSON(json2)); string sign = sHelper.signData(clientid, content); var htUrl = url + string.Format("?content={0}&sign={1}&clientId={2}&protocolType=", HttpUtility.UrlEncode(content), HttpUtility.UrlEncode(sign), clientid); Console.WriteLine(htUrl); } [TestMethod] public void WxPay() { NativePay wxPay = new NativePay(); string res = wxPay.GetPayQRCode("123456", WxPayApi.GenerateOutTradeNo(), "测试", 1, "1526275611"); Console.WriteLine(res); } [TestMethod] public void TnbNotice() { CRM.Core.BLL.Wx.TnbSyncModel param = new CRM.Core.BLL.Wx.TnbSyncModel(); param.orderNo = "11111"; param.thridOrderNo = "22222222"; param.payWay = "WX"; param.merchantOrderNo = "123"; param.totalPrice = 1; string sign = string.Format("{0}-{1}-{2}-{3}-{4}-{5}", param.orderNo, param.thridOrderNo, param.payWay, param.totalPrice, param.merchantOrderNo, "LJo2wgt8920RjgCL"); param.sign = Utility.EncryptMD5(sign); string freejson = JsonHelper.ObjDivertToJson(param); string msg = Utility.PostAjaxData("http://api.taoniubang.com/orders/callback/dn", freejson, Encoding.UTF8);//返回信息 //TnbResult res = JsonHelper.JsonDivertToObj(msg); Console.WriteLine(msg); } private int RandLottery(List arr) { var list = new List() { 0, 0, 0, 0, 0, 0, 4, 4, 4, 4, 4, 4, 6, 6, 6, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 5, 7 }; var list046 = new List() { 0, 4, 6 }; var list357 = new List() { 3, 5, 7 }; //第一次抽奖 if (arr.Count <= 0) { return list.OrderBy(p => Guid.NewGuid()).First(); } else if (arr.Count == 1) { //第二次抽奖,使用 list 是为了保证中奖率的问题 if (arr.Contains(2)) { //如果已经抽中 2,那就不能抽中 2,0,4,6 var list2 = list.Where(p => p != 0 && p != 4 && p != 6 && p != 2); return list2.OrderBy(p => Guid.NewGuid()).First(); } else if (arr.Contains(0) || arr.Contains(4) || arr.Contains(6)) { //如果抽中 0,4,6 中的一个,就去掉抽中的那个和 2 var list2 = list.Where(p => p != 2 && p != arr[0]); return list2.OrderBy(p => Guid.NewGuid()).First(); } else { //如果抽中 3,5,7 中的一个,就去掉抽中的那个 var list2 = list.Where(p => p != arr[0]); return list2.OrderBy(p => Guid.NewGuid()).First(); } } else { var except046 = new List(); var except357 = new List(); var allList = new List(); //获取与046的交集 var intersect046 = list046.Intersect(arr); //如果中了 2,就不能中 0,4,6 if (!arr.Contains(2)) { //小于2说明这个组还能再抽奖 if (intersect046.Count() < 2) { //取能中奖的数 except046 = list046.Except(intersect046).ToList(); } } //获取与357的交集 var intersect357 = list357.Intersect(arr); //小于2说明这个组还能再抽奖 if (intersect357.Count() < 2) { //取能中奖的数 except357 = list357.Except(intersect357).ToList(); } allList.AddRange(except046); allList.AddRange(except357); //如果不包含0,4,6,并且没中过 2,那么可以抽 2 if (intersect046.Count() <= 0 && !arr.Contains(2)) { allList.Add(2); } return allList.OrderBy(p => Guid.NewGuid()).First(); } } public class ResModel { public string StartTime { get; set; } public string EndTime { get; set; } public string companyCode { get; set; } } public class SmsDto { public string message { get; set; } public string mobile { get; set; } } public class PutSmsDto { public string content { get; set; } public string clientid { get; set; } public string sign { get; set; } } public class aa { public string result { get; set; } } } }