Exemple #1
0
        protected override DoWorkResult DoWork(Model_SmsReord sms)
        {
            try
            {
                string smsContent = _SmsContentModel.Replace("【运单编号】", sms.Number).Replace("【发货单位】", sms.SenderOrg).Replace("【收货单位】", sms.ReceiverOrg).Replace("【车牌号码】", sms.StorageName);
                sms.SmsContent = smsContent;
                sms.SendTime   = DateTime.Now;
                if (string.IsNullOrEmpty(sms.SmsReceiver) || sms.SmsReceiver.Length != 11)
                {
                    sms.SendResult = "接收短信号码不正确";
                }
                else
                {
                    sms.SendResult = SmsSendHelper.SendSms(sms.SmsReceiver, sms.SmsContent);
                }
            }
            catch (Exception ex)
            {
                sms.SendResult = ex.Message;
                //throw ex;
                //return DoWorkResult.AbortCurrentThread;//有异常,可以终止当前线程.当然.也可以继续,
                //return  DoWorkResult.AbortAllThread; //特殊情况下 ,有异常终止所有的线程...
            }
            finally
            {
                try
                {
                    SmsRecordServer.AddSendSmsRecord(sms);
                    //Console.WriteLine("发送短信:"+sms.SmsContent+" 接收号码:"+sms.SmsReceiver+" 发送结果:"+sms.SendResult);
                }
                catch (Exception ex)
                {
                    LogServer.AddLogText("保存发送记录出错:" + ex.Message, "SMS_" + DateTime.Now.ToString("yyyyMMdd"));
                }
            }
            //return base.DoWork(pendingValue);


            return(DoWorkResult.ContinueThread);
        }
Exemple #2
0
        static void Main(string[] args)
        {
            InitUplpadConfig();
            InitSmsSendConfig();
            System.Console.WriteLine(string.Format("数据交换接口服务平台 V{0}", _Version));
            //System.Console.WriteLine("最新更改:增加批次获取区域信息的接口");
            //System.Console.WriteLine("最新更改:判断第三方运单信息是否存在");
            //System.Console.WriteLine("最新更改:客服关联信息新增省市第三级县级");
            //System.Console.WriteLine("最新更改:暂存没有查询到运单的节点,待运单上报时查询大于运单创建时间的暂存节点进行恢复");
            //System.Console.WriteLine("最新更改:添加接口,通过PDA最后同步时间来获取新的客户信息和区域信息");
            //System.Console.WriteLine("最新更改:添加接口,通过运输运单号或是tms运单号查询华东运单信息");
            //System.Console.WriteLine("最新更改:添加接口,通过第三方运单号查询对应信息");
            //System.Console.WriteLine("最新更改:修复第三方运单和节点保存错误的问题,增加新的上报接口上报第三方运单");
            //System.Console.WriteLine("最新更改:添加接口,同步第三方上游发货单位运管信息");
            //System.Console.WriteLine("最新更改:添加接口,支持PDA上报数据时携带供应商ID以便后台区分第三方供应商");
            //System.Console.WriteLine("最新更改:客户账号接口,查询具体客户是否存在相同账号");
            //System.Console.WriteLine("最新更改:弃用的接口由于还有旧PDA在使用,则特殊处理第三方运单带入大华东客户CustomerID=669");
            //System.Console.WriteLine("最新更改:修改查询运单节点信息错误");
            //System.Console.WriteLine("最新更改:第三方运单号使用固定补偿,大华东991+,华东医药981+");
            //System.Console.WriteLine("最新更改:第三方运单号收货单位显示具体客户名称");
            //System.Console.WriteLine("最新更改:模糊查询第三方、自运单信息");
            //System.Console.WriteLine("最新更改:更新存在运单的操作时间为最早的时间");
            //System.Console.WriteLine("最新更改:更新上传图片丢失问题");
            //System.Console.WriteLine("最新更改:更新pda重复上传运单删除节点问题");
            //System.Console.WriteLine("最新更改:第三方运单上报运抵节点时提升上报至大华东的优先级");
            //System.Console.WriteLine("最新更改:运单管理增加区域选项功能,根据区域显示对应的下游客户");
            //System.Console.WriteLine("最新更改:增加新的节点上报接口,接收新参数[上一个冷藏载体],保存节点的同时保存冷链数据上报处理进度信息");
            //System.Console.WriteLine("最新更改:插入节点暂存表时增加字段[ParentStorageId、CustomerId]");
            //System.Console.WriteLine("最新更改:插入节点暂存表时同时也处理上报进度信息");
            //System.Console.WriteLine("最新更改:客户信息表[Customer]增加字段BindReceiverOrg与华东医药的收货单位进行匹配,原来的FullName字段与大华东的收货单位进行匹配");
            //System.Console.WriteLine("最新更改:华东医药运单增加计件数量,创建运单时从列JFQUNTITY中获取");
            System.Console.WriteLine("最新更改:更改短信平台调用的接口[sendMsg2018]");
            System.Console.WriteLine("接口服务启动中......");
            StartServer(_host_console, typeof(ConsoleServer));
            StartServer(_host_pda, typeof(PDAServer));
            StartServer(_host_coldChain, typeof(ColdChainServer));

            _upload_timer          = new System.Timers.Timer(1000);
            _upload_timer.Elapsed += _upload_timer_Elapsed;
            _upload_timer.Start();

            System.Console.WriteLine(string.Format("已监听上报数据处理进度,处理间隔[{0}]秒,每次处理数量[{1}]条", _upload_space, _upload_count));
            //System.Console.WriteLine("请输入Help查看操作命令......");

            if (_smsSendInterval > 0)
            {
                SmsSendHelper.Init(_smsAddress, _projectNo, _projectKey);
                _smsSend_timer          = new System.Timers.Timer(1000);
                _smsSend_timer.Elapsed += _smsSend_timer_Elapsed;
                _smsSend_timer.Start();
                System.Console.WriteLine(string.Format("已监听短信发送处理,处理间隔[{0}秒/一条],短信服务器[{1}],工程编号[{2}]", _smsSendInterval, _smsAddress, _projectNo));
            }
            else
            {
                System.Console.WriteLine(string.Format("短信处理未开启,配置[SmsSendInterval={0}]", _smsSendInterval));
            }

            System.Console.WriteLine("短信处理开关:" + _SmsFlag + ";输入/sms on为打开;输入/sms off为关闭.");
            //while (true)
            //{
            //    System.Console.ReadLine();
            //}
            InitKeyList();
            EnterKeyConsole();
        }