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(); }
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(); }