Example #1
0
 public static ReceiveModel ToDto(ReceiveEntity entity)
 {
     return(new ReceiveModel
     {
         RecOID = entity.RecOID,
         EmpID = entity.EmpID,
         EmpName = entity.EmpName,
         RecODate = entity.RecODate,
         RecEnabled = entity.RecEnabled,
     });
 }
Example #2
0
        /// <summary>
        /// //接收短信的方法,供串口sp的SerialDataReceivedEventHandler事件调用
        /// 参数:object sender,SerialDataReceivedEventArgs e:是SerialDataReceivedEventHandler事件调用的委托方法所要求的参数类型
        ///
        /// 注意:这个函数由串口(收到数据后)引发的SerialDataReceivedEventHandler事件自动调用(用户不必调用),所以属性为private
        ///       由于SerialDataReceivedEventHandler事件是由串口(收到数据后)引发的,所以,短信接收是自动执行的的
        /// </summary>

        private void ReceiveMessage(object sender, SerialDataReceivedEventArgs e)
        {
            ReceiveManager receiveManager = new ReceiveManager(this.SMSDBHelper);
            ReceiveEntity  re             = new ReceiveEntity();

            string ReceiveValue = string.Empty;

            try
            {
                SMSDBHelper.Open();
                Thread.Sleep(1000);
                string str = sp.ReadCom();   // 先从串口缓存中读出字节内容并转化为string类型
                Thread.Sleep(2000);
                str = str.Replace("\r\n", "").Replace(" ", "");
                if (str.Length > 6)                       // 只有当string长度大于6时,才认为可能是收到了用户短信??
                {
                    if (str.Substring(0, 5) == "+CMTI")
                    {
                        //MessageBox.Show("收到一条短信!");
                        int    index    = str.IndexOf(",");
                        string location = str.Substring(index + 1);
                        ReceiveValue = sp.ReadMsg(location);                   // 用ReadMsg解析出具体的短信内容
                        //MessageBox.Show(value, "有新短信", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        re.Phone       = ReceiveValue.Split(',')[0];
                        re.ReceiveTime = DateTime.Parse(ReceiveValue.Split(',')[1]);
                        re.Txt         = ReceiveValue.Split(',')[2];
                        receiveManager.Add(re);
                        //读完删除
                        DelMSG(location);
                    }
                }
            }
            catch (Exception ex)
            {
                //MessageBox.Show(ex.Message);
            }
            finally
            {
                SMSDBHelper.Close();
            }
        }
Example #3
0
        /// <summary>
        /// //接收短信的方法,供串口sp的SerialDataReceivedEventHandler事件调用
        /// 参数:object sender,SerialDataReceivedEventArgs e:是SerialDataReceivedEventHandler事件调用的委托方法所要求的参数类型
        /// 
        /// 注意:这个函数由串口(收到数据后)引发的SerialDataReceivedEventHandler事件自动调用(用户不必调用),所以属性为private
        ///       由于SerialDataReceivedEventHandler事件是由串口(收到数据后)引发的,所以,短信接收是自动执行的的
        /// </summary>
        private void ReceiveMessage(object sender, SerialDataReceivedEventArgs e)
        {
            ReceiveManager receiveManager = new ReceiveManager(this.SMSDBHelper);
            ReceiveEntity re = new ReceiveEntity();

            string ReceiveValue = string.Empty;
            try
            {
                SMSDBHelper.Open();
                Thread.Sleep(1000);
                string str = sp.ReadCom();   // 先从串口缓存中读出字节内容并转化为string类型
                Thread.Sleep(2000);
                str = str.Replace("\r\n", "").Replace(" ", "");
                if (str.Length > 6)                       // 只有当string长度大于6时,才认为可能是收到了用户短信??
                {
                    if (str.Substring(0, 5) == "+CMTI")
                    {
                        //MessageBox.Show("收到一条短信!");
                        int index = str.IndexOf(",");
                        string location = str.Substring(index + 1);
                        ReceiveValue = sp.ReadMsg(location);                   // 用ReadMsg解析出具体的短信内容
                        //MessageBox.Show(value, "有新短信", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        re.Phone = ReceiveValue.Split(',')[0];
                        re.ReceiveTime = DateTime.Parse(ReceiveValue.Split(',')[1]);
                        re.Txt = ReceiveValue.Split(',')[2];
                        receiveManager.Add(re);
                        //读完删除
                        DelMSG(location);
                    }
                }
            }
            catch (Exception ex)
            {
                //MessageBox.Show(ex.Message);
            }
            finally
            {
                SMSDBHelper.Close();
            }
        }