/// <summary> /// Nhận Dữ Liệu Từ Phần Cứng /// </summary> /// <param name="obj">Nhận Dữ Liệu Từ Phần Cứng</param> void Receive(object obj) { Socket client = obj as Socket; try { while (true) { byte[] data = new byte[1024 * 5000]; int rec = client.Receive(data); if (rec < data.Length) { Array.Resize <byte>(ref data, rec); } Data = Encoding.UTF8.GetString(data).ToUpper(); ID = Data; //Xử lí chổ này if (Data != Temp) { lblID.Text = Data; Data = MappingCode_Id.MappingCodeToID(Data); if (Data != "") { ShowInfoSinhVienByID(Data); WriteData(Data, MaHP); } else { String sms = "KHONG TON TAI" + "-" + "MA THE"; foreach (Socket clientSEND in Clientlist) { clientSEND.Send(Encoding.UTF8.GetBytes(sms)); } txtCode.Text = ""; txtFullName.Text = ""; txtSex.Text = ""; txtClass.Text = ""; txtAddress.Text = ""; picImage.Image = global::Project_Diem_Danh.Properties.Resources.no_avatar; ShowMessageResult("Thẻ không tồn tại, vui lòng kiểm tra lại", 0); } Temp = ID; Time = DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString(); } else { int timetemp = Convert.ToInt32(ConfigurationManager.AppSettings["thoiGianHaiLanQuetThe"].ToString()); int t = (ConverTotMinute(DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString()) - ConverTotMinute(Time)); if (t > timetemp) { lblID.Text = Data; Data = MappingCode_Id.MappingCodeToID(Data); if (Data != "") { ShowInfoSinhVienByID(Data); WriteData(Data, MaHP); } else { String sms = "KHONG TON TAI" + "-" + "MA THE"; foreach (Socket clientSEND in Clientlist) { clientSEND.Send(Encoding.UTF8.GetBytes(sms)); } txtCode.Text = ""; txtFullName.Text = ""; txtSex.Text = ""; txtClass.Text = ""; txtAddress.Text = ""; //String path = Application.StartupPath + "\\Images\\no_avatar.png"; picImage.Image = global::Project_Diem_Danh.Properties.Resources.no_avatar; ShowMessageResult("Thẻ không tồn tại, vui lòng kiểm tra lại", 0); } Temp = ID; Time = DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString(); } } } } catch { Clientlist.Remove(client); client.Close(); } }
/// <summary> /// Nhận Dữ Liệu Từ Phần Cứng /// </summary> /// <param name="obj">Nhận Dữ Liệu Từ Phần Cứng</param> void Receive(object obj) { Socket client = obj as Socket; try { while (true) { byte[] data = new byte[1024 * 5000]; int rec = client.Receive(data); if (rec < data.Length) Array.Resize<byte>(ref data, rec); Data = Encoding.UTF8.GetString(data).ToUpper(); ID = Data; //Xử lí chổ này if(Data!=Temp) { lblID.Text = Data; Data = MappingCode_Id.MappingCodeToID(Data); if(Data!="") { ShowInfoSinhVienByID(Data); WriteData(Data, MaHP); } else { txtCode.Text = ""; txtFullName.Text = ""; txtSex.Text = ""; txtClass.Text = ""; txtAddress.Text = ""; String path = Application.StartupPath + @"\no_avatar.png"; picImage.Image = Image.FromFile(path); ShowMessageResult("Thẻ không tồn tại, vui lòng kiểm tra lại", 0); } Temp = ID; Time = DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString(); } else { int timetemp = Convert.ToInt32(ConfigurationManager.AppSettings["thoiGianHaiLanQuetThe"].ToString()); int t = (ConverTotMinute(DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString())-ConverTotMinute(Time)); if (t > timetemp) { lblID.Text = Data; Data = MappingCode_Id.MappingCodeToID(Data); if (Data != "") { ShowInfoSinhVienByID(Data); WriteData(Data, MaHP); } else { txtCode.Text = ""; txtFullName.Text = ""; txtSex.Text = ""; txtClass.Text = ""; txtAddress.Text = ""; String path = Application.StartupPath + @"\no_avatar.png"; picImage.Image = Image.FromFile(path); ShowMessageResult("Thẻ không tồn tại, vui lòng kiểm tra lại", 0); } Temp = ID; Time = DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString(); } } } } catch { Clientlist.Remove(client); client.Close(); //MessageBox.Show("Kết Nối bị lỗi, Vui lòng reset kết nối", "Lỗi Kết Nối", MessageBoxButtons.OK, MessageBoxIcon.Error); //progressPanel1.Show(); //toolStripStatus_lbl.Text = "Đã Kết Đóng Nối Với Thiết Bị..."; } }