| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332 |
- using BizCom;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Web.Script.Serialization;
- namespace SiteCore
- {
- public partial class WxPush
- {
- private static readonly object miniAtObj = new object();
- public static string mini_appid = "wx0819ba57901308c0";
- public static string mini_appsecret = "d9b31c6be01fc55f082a770a4462ef5c";
- static string mini_sendUrl = "https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=";
- public static object getMiniAt(HttpHelper http)
- {
- object cat = WebCache.GetRunCache("miniAt");
- if (cat == null)
- {
- lock (miniAtObj)
- {
- //http = new HttpHelper();
- HttpItem item = new HttpItem()
- {
- URL = string.Format(tokenUrl, mini_appid, mini_appsecret)
- };
- HttpResult hResult = http.GetHtml(item);
- string html = hResult.Html;
- JavaScriptSerializer jss = new JavaScriptSerializer();
- Dictionary<string, object> jObj = jss.Deserialize<Dictionary<string, object>>(html);
- if (!jObj.ContainsKey("errcode"))
- {
- string at = jObj["access_token"].ToString();
- WebCache.AddRunCacheTime("miniAt", at, 100);
- cat = at;
- }
- }
- }
- return cat;
- }
- /// <summary>
- /// openid,roomname,starttime,endtime,duration,r+c+posname,formid
- /// </summary>
- /// <param name="sArr"></param>
- public static void sendSignMsg(string[] sArr,List<string> lst)
- {
- if (sArr.Length<7 || sArr[6] == "") return;
- if (!lst.Contains("'" + sArr[6] + "'")) lst.Add("'" + sArr[6] + "'");
- if (sArr[6] == "the formId is a mock one") return;
- HttpHelper http = new HttpHelper();
- HttpResult hResult = null;
- object cat = getMiniAt(http);
- if (cat != null)
- {
- var tdata = new
- {
- keyword1 = new TemplateItem("图书馆座位签到", "#333333"),
- keyword2 = new TemplateItem(sArr[1], "#0E7700"),
- keyword3 = new TemplateItem(Convert.ToDateTime(sArr[2]).ToString("HH:mm") + "-" + Convert.ToDateTime(sArr[3]).ToString("HH:mm") + ",时长:" + sArr[4] + "小时", "#2148CD"),
- keyword4 = new TemplateItem("座位号 "+sArr[5], "#0E7700"),
- keyword5 = new TemplateItem("最迟签到使用时间~" + Convert.ToDateTime(sArr[2]).AddMinutes(15).ToString("HH:mm")+",过期未签到将无法使用!", "#0E7700")
- };
- var msgData = new MiniTemplateData()
- {
- touser = sArr[0],
- template_id = "_fOdxNx3trY5F7audxSTvaIly3J-ZlZRaSul-IsnyRc",
- form_id= sArr[6],
- page = "pages/lab/lab?remind=1",
- data = tdata
- };
- // miniprogram= minidata,
- string msg = Newtonsoft.Json.JsonConvert.SerializeObject(msgData);
- HttpItem item = new HttpItem()
- {
- URL = mini_sendUrl + cat,
- Method = "POST",
- ContentType = "application/json",
- Postdata = msg,
- PostEncoding = Encoding.UTF8,
- Encoding = Encoding.UTF8
- };
- //item.Encoding = Encoding.UTF8;
- hResult = http.GetHtml(item);
- string html = hResult.Html;
- //XLog.SaveLog(0,"发送消息返回:" + html);
- }
- }
- public static void sendExpireMsg(string[] sArr, List<string> lst)
- {
- if (sArr.Length < 7 || sArr[6] == "") return;
- if (!lst.Contains("'" + sArr[6] + "'")) lst.Add("'" + sArr[6] + "'");
- if (sArr[6] == "the formId is a mock one") return;
- HttpHelper http = new HttpHelper();
- HttpResult hResult = null;
- object cat = getMiniAt(http);
- if (cat != null)
- {
- DateTime cTime = DateTime.Now;
-
- var tdata = new
- {
- keyword1 = new TemplateItem(sArr[1], "#333333"),
- keyword2 = new TemplateItem(sArr[5], "#0E7700"),
- keyword3 = new TemplateItem(Convert.ToDateTime(sArr[3]).ToString("HH:mm"),"#2148CD"),
- keyword4 = new TemplateItem(Convert.ToInt32(Convert.ToDateTime(sArr[3]).Subtract(cTime).TotalMinutes) + "分钟,如需继续使用请续约!", "#0E7700")
- };
- var msgData = new MiniTemplateData()
- {
- touser = sArr[0],
- template_id = "EToqfWHBHyCGzzvTMNY6p9p-_guHQMj5Iix3nIgTV1Y",
- form_id = sArr[6],
- page = "pages/lab/lab?remind=1",
- data = tdata
- };
- // miniprogram= minidata,
- string msg = Newtonsoft.Json.JsonConvert.SerializeObject(msgData);
- HttpItem item = new HttpItem()
- {
- URL = mini_sendUrl + cat,
- Method = "POST",
- ContentType = "application/json",
- Postdata = msg,
- PostEncoding = Encoding.UTF8,
- Encoding = Encoding.UTF8
- };
- //item.Encoding = Encoding.UTF8;
- hResult = http.GetHtml(item);
- string html = hResult.Html;
- }
- }
-
- //提现
- public static void sendExtractMoneyMsg(string openid,string form_id,string amount)
- {
- HttpHelper http = new HttpHelper();
- HttpResult hResult = null;
- object cat = getMiniAt(http);
- if (cat != null)
- {
- DateTime cTime = DateTime.Now;
- var tdata = new
- {
- keyword1 = new TemplateItem("微信钱包", "#333333"),
- keyword2 = new TemplateItem(amount + "元", "#0E7700"),
- keyword3 = new TemplateItem("目前你的账户累计获得" + "元", "#2148CD"),
- };
- var msgData = new MiniTemplateData()
- {
- touser = openid,
- template_id = "eR3za_xz4wYkIYBNC9t4rKfUq_IpAJpMnbi0DYI6kuw",
- form_id = form_id,
- page = "pages/checkIn/checkInHome?remind=1&ct=1",
- data = tdata
- };
- // miniprogram= minidata,
- string msg = Newtonsoft.Json.JsonConvert.SerializeObject(msgData);
- HttpItem item = new HttpItem()
- {
- URL = mini_sendUrl + cat,
- Method = "POST",
- ContentType = "application/json",
- Postdata = msg,
- PostEncoding = Encoding.UTF8,
- Encoding = Encoding.UTF8
- };
- //item.Encoding = Encoding.UTF8;
- hResult = http.GetHtml(item);
- string html = hResult.Html;
- }
- }
- //任务报名通知
- public static void sendTaskReceiveMsg(string openid,string form_id,object tid,string btime,string bname,string bphone,string bprice,string bmemo)
- {
- HttpHelper http = new HttpHelper();
- HttpResult hResult = null;
- object cat = getMiniAt(http);
- if (cat != null)
- {
- DateTime cTime = DateTime.Now;
- var tdata = new
- {
- keyword1 = new TemplateItem(btime, "#333333"),
- keyword2 = new TemplateItem(bname, "#0E7700"),
- keyword3 = new TemplateItem(bprice, "#0E7700"),
- keyword4 = new TemplateItem(bphone, "#333333"),
- keyword5 = new TemplateItem(bmemo, "#333333")
- };
- var msgData = new MiniTemplateData()
- {
- touser = openid,
- template_id = "3FJ8OG_oqQxCq97ZYwUsIOWTh7VkgpxHtuh0Hc9IKY4",
- form_id = form_id,
- page = "pages/bounty/bountyDetail?r=1&tid="+tid,
- data = tdata
- };
- // miniprogram= minidata,
- string msg = Newtonsoft.Json.JsonConvert.SerializeObject(msgData);
- HttpItem item = new HttpItem()
- {
- URL = mini_sendUrl + cat,
- Method = "POST",
- ContentType = "application/json",
- Postdata = msg,
- PostEncoding = Encoding.UTF8,
- Encoding = Encoding.UTF8
- };
- //item.Encoding = Encoding.UTF8;
- hResult = http.GetHtml(item);
- string html = hResult.Html;
- }
- }
- //任务选中/取消选中通知
- public static void sendTaskChioceMsg(string openid, string form_id, object tid, string title,string con)
- {
- HttpHelper http = new HttpHelper();
- HttpResult hResult = null;
- object cat = getMiniAt(http);
- if (cat != null)
- {
- DateTime cTime = DateTime.Now;
- var tdata = new
- {
- keyword1 = new TemplateItem(title, "#333333"),
- keyword2 = new TemplateItem(con + " " + cTime.ToString("yyyy-MM-dd HH:mm:ss"), "#0E7700")
- };
- var msgData = new MiniTemplateData()
- {
- touser = openid,
- template_id = "rpvN7kE6vEWq8e4P1rvpWCGtPbxJUjXRmzKUO71zT4E",
- form_id = form_id,
- page = "pages/bounty/bountyDetail?r=1&tid=" + tid,
- data = tdata
- };
- // miniprogram= minidata,
- string msg = Newtonsoft.Json.JsonConvert.SerializeObject(msgData);
- HttpItem item = new HttpItem()
- {
- URL = mini_sendUrl + cat,
- Method = "POST",
- ContentType = "application/json",
- Postdata = msg,
- PostEncoding = Encoding.UTF8,
- Encoding = Encoding.UTF8
- };
- //item.Encoding = Encoding.UTF8;
- hResult = http.GetHtml(item);
- string html = hResult.Html;
- }
- }
- //public static void sendInComeMsg(string[] sArr, List<string> lst)
- //{
- // //if (sArr.Length < 7 || sArr[6] == "") return;
- // //if (!lst.Contains("'" + sArr[6] + "'")) lst.Add("'" + sArr[6] + "'");
- // //if (sArr[6] == "the formId is a mock one") return;
- // HttpHelper http = new HttpHelper();
- // HttpResult hResult = null;
- // object cat = getMiniAt(http);
- // if (cat != null)
- // {
- // DateTime cTime = DateTime.Now;
- // var tdata = new
- // {
- // keyword1 = new TemplateItem("\"早起红包\"瓜分资金池", "#333333"),
- // keyword2 = new TemplateItem("本次打卡收益" + "元", "#0E7700"),
- // keyword3 = new TemplateItem("目前你的账户累计获得" + "元", "#2148CD"),
- // keyword4 = new TemplateItem("点击进入小程序查看", "#000000")
- // };
- // var msgData = new MiniTemplateData()
- // {
- // touser = sArr[0],
- // template_id = "smsJomSa3j_gfdyEDyAiNMLpajDnTOAUCMkpjPqg9xs",
- // form_id = sArr[6],
- // page = "pages/checkIn/checkInHome?remind=1&ct=1",
- // data = tdata
- // };
- // // miniprogram= minidata,
- // string msg = Newtonsoft.Json.JsonConvert.SerializeObject(msgData);
- // HttpItem item = new HttpItem()
- // {
- // URL = mini_sendUrl + cat,
- // Method = "POST",
- // ContentType = "application/json",
- // Postdata = msg,
- // PostEncoding = Encoding.UTF8,
- // Encoding = Encoding.UTF8
- // };
- // //item.Encoding = Encoding.UTF8;
- // hResult = http.GetHtml(item);
- // string html = hResult.Html;
- // }
- //}
- }
- public class MiniTemplateData
- {
- public string touser { get; set; }
- public string template_id { get; set; }
- public string page { get; set; }
- public object form_id { get; set; }
- public object data { get; set; }
- //public string emphasis_keyword { get; set; }
- }
- }
|