Esempio n. 1
0
        public IActionResult ToRes1(string vnames, string tnames, string content)
        {
            var response = ResponseModelFactory.CreateResultInstance;

            //if (string.IsNullOrEmpty(vnames))
            //{
            //    response.SetFailed("请选择村庄");
            //    return Ok(response);
            //}
            if (string.IsNullOrEmpty(tnames))
            {
                response.SetFailed("请选择村镇民兵");
                return(Ok(response));
            }
            if (string.IsNullOrEmpty(content))
            {
                response.SetFailed("请输入短信内容");
                return(Ok(response));
            }
            string[] tname = tnames.Split(',');
            var      list  = _dbContext.Cunzhenmb.Where(x => tname.Contains(x.Address) && x.IsDeleted == 0).ToList();

            for (int i = 0; i < list.Count; i++)
            {
                YunSendMsg.SendMsg(list[i].Phone, content);
            }
            //response.SetData(list, totalCount);
            return(Ok(response));
        }
Esempio n. 2
0
        public IActionResult SetIDCard(IdCardInfo info)
        {
            var response = ResponseModelFactory.CreateInstance;

            if (string.IsNullOrEmpty(info.Openid) || string.IsNullOrEmpty(info.IdCard))
            {
                response.SetFailed("openid或身份证号为空");
                return(Ok(response));
            }
            var entity = _dbContext.SystemUser.FirstOrDefault(x => x.Wechat == info.Openid);

            if (entity != null)
            {
                entity.UserIdCard = info.IdCard;
                entity.IdcardMd5  = YunSendMsg.GenerateMD5(info.IdCard);
                _dbContext.SaveChanges();
                response.SetSuccess("绑定成功");
                return(Ok(response));
            }
            else
            {
                response.SetFailed("绑定失败");
                return(Ok(response));
            }
        }
Esempio n. 3
0
 //百姓码
 public string Common(string result)
 {
     if (string.IsNullOrEmpty(result))
     {
         return("请求参数存在空值");
     }
     else
     {
         //设置请求接口
         var request = (HttpWebRequest)WebRequest.Create("https://api.bechangedt.com/api/healthcode/verify");
         //请求参数
         var postData = "{" + '"' + "healthQrCode" + '"' + ":" + '"' + result + '"' + "}";
         var data     = Encoding.ASCII.GetBytes(postData);
         //请求方式
         request.Method = "POST";
         //请求头参数设置
         request.Headers.Add("organizationId", "002504421");
         request.Headers.Add("appId", "6737FDA2D");
         request.Headers.Add("dataSources", "3");
         request.Headers.Add("tradeCode", "60002");
         var requestTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
         request.Headers.Add("requestTime", requestTime);
         string md5 = YunSendMsg.GenerateMD5("002504421" + "6737FDA2D" + "840CA391C69950D13514A2A3CD572506" + "3" + "60002" + requestTime).ToUpper();
         request.Headers.Add("sign", md5);
         request.ContentType           = "application/json;charset=UTF-8";
         request.ContentLength         = data.Length;
         request.UseDefaultCredentials = true;
         using (var stream = request.GetRequestStream())
         {
             stream.Write(data, 0, data.Length);
         }
         //结果返回
         var responses = (HttpWebResponse)request.GetResponse();
         //转字符串
         var responseString = new StreamReader(responses.GetResponseStream(), Encoding.UTF8).ReadToEnd();
         //转换为json对象
         CommonCard commodel = JsonConvert.DeserializeObject <CommonCard>(responseString);
         if (commodel.code != 1 || commodel.data == null)
         {
             return(commodel.msg);
         }
         else
         {
             var           card      = AESHelper.Decrypt(commodel.data.verifyResp, "HEALTHCODEVERIFY");
             CommonCardMan commodels = JsonConvert.DeserializeObject <CommonCardMan>(card);
             return(commodels.idCardValue);
         }
     }
 }
Esempio n. 4
0
        public IActionResult ToRes2(string level, string content)
        {
            var response = ResponseModelFactory.CreateResultInstance;

            if (string.IsNullOrEmpty(level))
            {
                response.SetFailed("请选择响应级别");
                return(Ok(response));
            }
            if (string.IsNullOrEmpty(content))
            {
                response.SetFailed("请输入短信内容");
                return(Ok(response));
            }

            if (level == "level4")
            {
                content = "四级响应:" + content;
            }
            if (level == "level3")
            {
                content = "三级响应:" + content;
            }
            if (level == "level2")
            {
                content = "二级响应:" + content;
            }
            if (level == "level1")
            {
                content = "一级响应:" + content;
            }


            var list = _dbContext.VillageMember.Where(x => x.IsDelete == 0).ToList();

            for (int i = 0; i < list.Count; i++)
            {
                YunSendMsg.SendMsg(list[i].MemberPhone, content);
            }

            //response.SetData(list, totalCount);
            return(Ok(response));
        }
Esempio n. 5
0
        public string MSG()
        {
            var str = YunSendMsg.SendMsg("16657110023", "林志国就是个弟弟!");

            return(str);
        }
Esempio n. 6
0
        public void TCP1()
        {
            context1 = new HQContext();
            try
            {
                string    message   = "当前水位:";
                int       port      = 33300;
                IPAddress localAddr = IPAddress.Parse("10.172.33.4");
                listener1 = new TcpListener(localAddr, port);
                listener1.Start();
                log.Info("监听1开启");
                byte[] bytes = new byte[500];
                string data  = null;
                while (true)
                {
                    var date = DateTime.Now;
                    Console.WriteLine(date);
                    TcpClient client = listener1.AcceptTcpClient();
                    Console.WriteLine("Connected!");
                    log.Info("TCP1Connected!");
                    data = null;
                    NetworkStream stream = client.GetStream();

                    int i;
                    if (stream.CanRead)
                    {
                        log.Info("stream1可读");
                        while ((i = stream.Read(bytes, 0, bytes.Length)) != 0)
                        {
                            log.Info("接受报文1");
                            Console.WriteLine("字节数:" + i);
                            var str = "";
                            Console.WriteLine(ToHex(bytes, 0, 1));
                            Console.WriteLine(ToHex(bytes, 2, 2));
                            Console.WriteLine(ToHex(bytes, 3, 7));
                            Console.WriteLine(ToHex(bytes, 8, 9));
                            Console.WriteLine(ToHex(bytes, 10, 10));
                            Console.WriteLine(ToHex(bytes, 11, 12));
                            Console.WriteLine("----------------------------");
                            Console.WriteLine(ToHex(bytes, 13, 13));
                            Console.WriteLine("******************************");
                            Console.WriteLine(ToHex(bytes, 14, 15));  //1
                            Console.WriteLine(ToBCD(bytes, 16, 21));  //2


                            if (i > 25)
                            {
                                Console.WriteLine(ToHex(bytes, 22, 23));  //3
                                Console.WriteLine(ToHex(bytes, 24, 28));  //4
                                Console.WriteLine(ToHex(bytes, 29, 29));  //5
                                Console.WriteLine(ToHex(bytes, 30, 31));  //6
                                Console.WriteLine(ToBCD(bytes, 32, 36));  //7
                                Console.WriteLine(ToHex(bytes, 37, 38));  //8
                                Console.WriteLine(ToHex(bytes, 39, 42));  //9
                                Console.WriteLine(ToHex(bytes, 43, 44));  //10
                                Console.WriteLine(ToHex(bytes, 45, 47));  //11
                                Console.WriteLine(ToHex(bytes, 48, 49));  //12
                                Console.WriteLine(ToHex(bytes, 50, 52));  //13
                                Console.WriteLine(ToHex(bytes, 53, 54));  //14
                                Console.WriteLine(ToHex(bytes, 55, 56));  //15


                                var dtbdc = (DateTime.Now.Year / 100).ToString() + ToBCD(bytes, 32, 36) + "00";
                                log.Info("监测时间1:" + dtbdc);

                                var dateTime    = DateTime.Now;
                                var checkToTime = DateTime.TryParseExact(dtbdc, "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None, out dateTime);
                                if (checkToTime)
                                {
                                    var sdatetime = dateTime.ToString("yyyy-MM-dd HH:mm:ss");
                                    log.Info("监测时间1转换:" + sdatetime);

                                    var sw = ToHex(bytes, 39, 42);
                                    //var sw = "0000750";
                                    double num = 0;
                                    //if (sw[sw.Length - 1] == '0')
                                    //{
                                    //    num = double.Parse(sw);
                                    //    num = num / 100;
                                    //}
                                    //else
                                    //{
                                    num = double.Parse(sw);
                                    num = num / 1000;
                                    Console.WriteLine("水位:" + num);
                                    log.Info("水位1:" + num);
                                    var checkinfo = "";
                                    if (num == 9999.999)
                                    {
                                        checkinfo = "大于";
                                        num       = 2.5;
                                    }
                                    else
                                    {
                                        checkinfo = "";
                                    }
                                    //}
                                    sw = num.ToString();
                                    var ljsw = (double)context1.SystemSetting.First(x => x.ID == 1).WaterLevelCriticalPoint;
                                    if (num >= ljsw)
                                    {
                                        log.Info("count1:" + count1 + "/" + "lastNum1:" + lastNum1 + "/" + "lastSentTime1:" + lastSentTime1.ToString("yyyy-MM-dd HH:mm:ss"));

                                        if (count1 >= 0 && lastNum1 < ljsw)
                                        {
                                            log.Info("<警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            //YunSendMsg.SendMsg("15868894638", "警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            YunSendMsg.SendMsg("16657110023", "警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            YunSendMsg.SendMsg("18100196818", "警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            count1++;
                                            lastNum1      = num;
                                            lastSentTime1 = DateTime.Now;
                                        }
                                        else if (count1 > 0 && lastNum1 > ljsw && (DateTime.Now - lastSentTime1).Minutes >= 29)
                                        {
                                            log.Info(">警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            //YunSendMsg.SendMsg("15868894638", "警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            YunSendMsg.SendMsg("16657110023", "警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            YunSendMsg.SendMsg("18100196818", "警告!中鑫村当前水位:" + checkinfo + sw + " (m),已超过临界点");
                                            count1++;
                                            lastNum1      = num;
                                            lastSentTime1 = DateTime.Now;
                                        }
                                        else
                                        {
                                            lastNum1 = num;
                                        }
                                    }
                                    lastNum1 = num;
                                    num      = 0;
                                    Console.WriteLine(sw);

                                    //if(sw)
                                    var cp = ToHex(bytes, 45, 47);
                                    num = double.Parse(cp);
                                    num = num / 10;

                                    HeDaowater heDaowater = new HeDaowater()
                                    {
                                        HeDaowaterUuid       = Guid.NewGuid(),
                                        HeDaowaterAddress    = ToHex(bytes, 24, 28) + "/" + TelemetryStationType(ToHex(bytes, 29, 29)),
                                        HeDaowaterTime       = sdatetime,
                                        HeDaoHeDaowaterSw    = sw,
                                        IsDeleted            = 0,
                                        AddTime              = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
                                        AddPeople            = "TCP",
                                        CurrentPrecipitation = (decimal?)num,
                                    };
                                    if (!context1.HeDaowater.Any(x => x.HeDaowaterAddress == heDaowater.HeDaowaterAddress && x.HeDaowaterTime == sdatetime && x.IsDeleted == 0))
                                    {
                                        context1.HeDaowater.Add(heDaowater);
                                        context1.SaveChanges();
                                    }
                                }
                            }



                            Console.WriteLine("******************************");
                            Console.WriteLine(ToHex(bytes, i - 3, i - 3));
                            Console.WriteLine("----------------------------");
                            //Console.WriteLine(Encoding.ASCII.GetString(bytes,13,1));
                            //Console.WriteLine(Encoding.ASCII.GetString(bytes,22,1));
                            Console.WriteLine(str);
                            if (i > 25)
                            {
                                data = ToHex(bytes, 0, 15) + ToBCD(bytes, 16, 21) + ToHex(bytes, 22, 31) + ToBCD(bytes, 32, 36) + ToHex(bytes, 37, i - 1);
                            }
                            else
                            {
                                data = ToHex(bytes, 0, 15) + ToBCD(bytes, 16, 21) + ToHex(bytes, 21, i - 1);
                            }

                            Console.WriteLine("Received:" + data);
                            log.Info("Received:" + data);
                            data = data.ToUpper();

                            //byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);

                            //// Send back a response.
                            //stream.Write(msg, 0, msg.Length);
                            //Console.WriteLine("Sent: {0}", data);
                        }
                    }
                    else
                    {
                        log.Info("stream1无法读,");
                        log.Info(listener1.Server.Connected);
                        log.Info(listener1.Server.Blocking);
                        //stream.Close();
                        //client.Close();
                        //client= listener1.AcceptTcpClient();
                        //stream = client.GetStream();
                    }

                    //client.Close();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                log.Info("监听1错误:" + ex.Message);
                listener1.Stop();
            }
            finally
            {
                //listener1.Stop();
                listener1 = null;
                GC.Collect();
                log.Info("重启TCP1");
                TCP1();
            }
        }