using CommonUtil; using Operater.DAL; using Operater.DbModel; using SqlSugar; using System; using System.Threading; using System.Collections.Generic; using CommonUtil.Web; namespace SmsSendTool { class Program { static void Main(string[] args) { ThreadStart threadStart = delegate { do { try { //查询审核成功的任务 var send_where_expression = Expressionable.Create().And(m => m.Sendstatus == 1).And(m => m.Isshowsend == 0).ToExpression(); var smssendlist = new SmsSendDAL().ListGet(send_where_expression, t => t.Createtime, DbEnum.OrderType.Asc); if (smssendlist != null && smssendlist.Count > 0) { SendMain sendMain = new SendMain(); foreach (var smssend in smssendlist) { sendMain.SendSms(smssend.Id); } } //查询长时间未完成的任务 List sstaus =new List{0,1,2,3,4,5 }; var send_where_expression1 = Expressionable.Create().And(m => sstaus.Contains(m.Sendstatus)).And(m=>m.Wantsendtime>DateTime.Now.AddMinutes(30)).And(m => m.Isshowsend == 0).ToExpression(); var smssendlist1 = new SmsSendDAL().ListGet(send_where_expression1, t => t.Createtime, DbEnum.OrderType.Asc); if (smssendlist1 != null && smssendlist1.Count > 0) { Console.WriteLine("发送长时间未完成任务消息"); var timer = new Timer(v => SendMessage(smssendlist1.Count, 1), null, 0, 5 * 60 * 1000); } //查询待审核的任务 var send_where_expression2 = Expressionable.Create().And( m => m.Sendstatus == 0).And(m => m.Isshowsend == 0).ToExpression(); var smssendlist2 = new SmsSendDAL().ListGet(send_where_expression2, t => t.Createtime, DbEnum.OrderType.Asc); if (smssendlist2 != null && smssendlist2.Count > 0) { Console.WriteLine("发送待审核任务消息"); var timer = new Timer(v => SendMessage(smssendlist2.Count, 2), null, 0, 5 * 60 * 1000); } } catch (Exception ex) { Console.WriteLine(ex.ToString()); Console.WriteLine("数据异常"); } Thread.Sleep(10000); } while (true); }; Thread mainThread = new Thread(threadStart); mainThread.IsBackground = true; mainThread.Start(); Console.ReadLine(); } public static void SendMessage(int strcount,int type) { switch (type) { case 1: string warStr1 = "长时间未发送完成任务\n>类型:任务异常\n>数量:" + strcount; SendQwGroup.SendMessage(warStr1); break; case 2: string warStr2 = "您有待审核的任务\n>类型:待审核\n>数量:" + strcount + "\n>查看:[点击处理](https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx7a9a40880081340d&redirect_uri=https%3A%2F%2Fsms.ushopvip.com%2Fpages%2Fad_page%2Ftrans&response_type=code&scope=snsapi_base&state=gzh#wechat_redirect)"; SendQwGroup.SendMessage(warStr2); break; } } } }