示例#1
0
        public static void Completed(IAsyncResult result)
        {
            //获取委托对象,调用EndInvoke方法获取运行结果
            AsyncResult           _result    = (AsyncResult)result;
            AsyncSendEventHandler myDelegate = (AsyncSendEventHandler)_result.AsyncDelegate;

            myDelegate.EndInvoke(_result);
        }
示例#2
0
        void objTimer_Elapsed(object sender, ElapsedEventArgs e)  //这个方法内实现你想做的事情。
        {
            #region 查询分销商验证同步日志表,  发送失败(失败次数小于3次)记录中的前10条(正序),重新发送验证请求
            List <Agent_asyncsendlog> loglist = new Agent_asyncsendlogData().GetTop10SendFail();
            if (loglist != null)
            {
                if (loglist.Count > 0)
                {
                    foreach (Agent_asyncsendlog log in loglist)
                    {
                        AsyncSendEventHandler mydelegate = new AsyncSendEventHandler(AsyncSend);
                        mydelegate.BeginInvoke(log, new AsyncCallback(Completed), null);
                    }
                }
            }
            #endregion

            #region 超时12小时自动解除 顾问锁定用户

            var channlelock = new MemberChannelData().WxMessageUnLockUserTimeout();
            #endregion

            #region 定时执行:1.凌晨1点0分-1点10分 之间执行一次(过期产品应该自动下线状态。); 2.商户 每天生成一个随机码
            int intHour   = DateTime.Now.Hour;
            int intMinute = DateTime.Now.Minute;
            if (intHour == 1 && intMinute < 10)
            {
                #region 过期产品应该自动下线状态
                ProductJsonData.ProAutoDownLine();
                #endregion
                #region  商户 每天生成一个随机码
                int onlineCompanyCount            = 0;
                List <B2b_company> b2bcompanylist = new B2bCompanyData().GetAllCompanys("1", out onlineCompanyCount);
                foreach (B2b_company cominfo in b2bcompanylist)
                {
                    if (cominfo != null)
                    {
                        //得到商户当天的 随机码
                        new B2bCompanyData().GetComDayRandomstr(cominfo.ID, "999999999");
                    }
                }
                #endregion
            }

            #endregion

            #region 超时(时限:30分钟)订单自动作废
            try
            {
                //查询出含有超时订单的产品
                List <B2b_com_pro> timeoutorderprolist = new B2bOrderData().GetTimeoutOrderProlist();
                if (timeoutorderprolist.Count > 0)
                {
                    foreach (B2b_com_pro mpro in timeoutorderprolist)
                    {
                        //作废超时未支付订单,完成回滚操作
                        int rs = new B2bComProData().CancelOvertimeOrder(mpro);
                    }
                }
            }
            catch { }
            #endregion



            #region (暂时未应用)联合查询短信日志表和订单表,查出订单状态成功(4发码成功;22已处理),但是发码失败(1未发送;3发送中)的前5条订单,重新发送二维码短信
            //List<B2b_smsmobilesend> smsloglist = new B2bSmsMobileSendDate().GetTop5SendFail();
            //if (loglist != null)
            //{
            //    if (loglist.Count > 0)
            //    {
            //        foreach (B2b_smsmobilesend msmslog in smsloglist)
            //        {
            //            Asyncsendsms2EventHandler mydelegate2 = new Asyncsendsms2EventHandler(AsyncSendSms);
            //            mydelegate2.BeginInvoke(msmslog, new AsyncCallback(CompletedSendSms), null);
            //        }
            //    }
            //}


            ////ExcelSqlHelper.ExecuteNonQuery("insert into test (retstr,pno) values('" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','')");
            #endregion
        }