示例#1
0
        private void ReadCard(int timeSpan)
        {
            OpenPort();


            Task t = new Task(() =>
            {
                while (true)
                {
                    var values    = new List <Sznfc.vicRFID.ActiveReader.TagIds>();
                    uint count    = 500;
                    Byte dataFlag = 0;
                    int status    = 0;
                    status        = myReader.GetTagIds(ref dataFlag, ref count, ref values);
                    if (status == 0)
                    {
                        foreach (ActiveReader.TagIds tempTagId in values)
                        {
                            int tempStr = tempTagId.Id[5] * 65536 + tempTagId.Id[6] * 256 + tempTagId.Id[7];
                            var result  = new AnnalBll().CreateWaveAnnal(tempStr.ToString());
                        }
                    }
                    else
                    {
                        OpenPort();
                    }

                    Thread.Sleep(timeSpan);
                }
            });

            t.Start();
        }
示例#2
0
        public void State()
        {
            Task t = new Task(() =>
            {
                while (true)
                {
                    var annalBll = new AnnalBll();


                    var inputStream = Request.InputStream;
                    var strLen      = Convert.ToInt32(inputStream.Length);
                    var strArr      = new byte[strLen];
                    inputStream.Read(strArr, 0, strLen);
                    var requestMes = Encoding.UTF8.GetString(strArr);
                    var license    = "";
                    var serialno   = "";
                    var imagePath  = "";
                    var key        = "";
                    var value      = "";

                    if (requestMes != "")
                    {
                        JsonReader reader = new JsonTextReader(new StringReader(requestMes));
                        while (reader.Read())
                        {
                            if (reader.TokenType.ToString() == "PropertyName")
                            {
                                key = reader.Value.ToString();
                            }
                            if (reader.TokenType.ToString() == "String")
                            {
                                value = reader.Value.ToString();
                            }
                            if (key != "" && value != "")
                            {
                                switch (key)
                                {
                                case "license":
                                    license = value;
                                    break;

                                case "serialno":
                                    serialno = value;
                                    break;

                                case "imagePath":
                                    imagePath = value;
                                    break;

                                default:
                                    break;
                                }
                                key   = "";
                                value = "";
                            }
                        }
                    }
                    // 根据设备序列号得到相关信息
                    var equipemnt  = annalBll.GetEquipment(serialno);
                    var areaAndEqu = annalBll.GetAreaAndEqu(equipemnt.EquipmentId);

                    //todo 保存图片到本地
                    imagePath = annalBll.SaveImages(imagePath, license, equipemnt.IP);
                    // 写入记录
                    annalBll.CreateAnnal(license, imagePath, equipemnt, areaAndEqu);
                    //todo 更改剩余车位
                    annalBll.UpdateParkNumber(areaAndEqu);
                    Thread.Sleep(500);
                }
            });

            t.Start();
        }