private void buttonSendQuery_Click(object sender, EventArgs e) { try { Channel channel = new Channel("127.0.0.1:50051", ChannelCredentials.Insecure); var client = new ScannerServer.ScannerServerClient(channel); var reply = client.SendQueryToServerDB(new MessageQueryToServerDB { TimeFrom = dateTimePickerFrom.Value.ToString(), TimeTo = dateTimePickerTo.Value.ToString() }); int i = 1; foreach (GoodsInfo goods in reply.GoodsInfo) { richTextBoxLog.AppendText($"{i++}. {goods.Time} {goods.RFID}" + Environment.NewLine); } } catch (Exception ex) { richTextBoxLog.AppendText("Send query error!" + $"Exception {ex.Message}" + Environment.NewLine); } }
private void inventory() { byte Ant = 0; int CardNum = 0; int Totallen = 0; int EPClen, m; byte[] EPC = new byte[50000]; int CardIndex; string temps, temp; temp = ""; string sEPC; byte MaskMem = 0; byte[] MaskAdr = new byte[2]; byte MaskLen = 0; byte[] MaskData = new byte[100]; byte MaskFlag = 0; byte AdrTID = 0; byte LenTID = 0; DataGridViewRow rows = new DataGridViewRow(); ErrorsCatcher.errorName = RWDev.Inventory_G2(ref RWDev.comAddress, RWDev.QValue, RWDev.session, MaskMem, MaskAdr, MaskLen, MaskData, MaskFlag, AdrTID, LenTID, RWDev.TIDFlag, RWDev.target, RWDev.inAnt, scantime, RWDev.fastFlag, EPC, ref Ant, ref Totallen, ref CardNum, RWDev.frmComPortIndex); resultTime = DateTime.Now; if ((ErrorsCatcher.errorName == 1) | (ErrorsCatcher.errorName == 2) | (ErrorsCatcher.errorName == 3) | (ErrorsCatcher.errorName == 4)) { byte[] daw = new byte[Totallen]; Array.Copy(EPC, daw, Totallen); temps = ConverterTo.ByteArrayToHexString(daw); m = 0; if (CardNum == 0) { return; } for (CardIndex = 0; CardIndex < CardNum; CardIndex++) { EPClen = daw[m] + 1; temp = temps.Substring(m * 2 + 2, EPClen * 2); sEPC = temp.Substring(0, temp.Length - 2); string RSSI = Convert.ToInt32(temp.Substring(temp.Length - 2, 2), 16).ToString(); m = m + EPClen + 1; if (sEPC.Length != (EPClen - 1) * 2) { return; } if (!scanData.ContainsKey(sEPC)) { scanData.Add(sEPC, resultTime); richTextBoxLogs.AppendText(resultTime.ToString() + " goods with RFID " + sEPC + " scaned." + Environment.NewLine); Task sendToServer = Task.Run(() => { try { Channel channel = new Channel("127.0.0.1:50051", ChannelCredentials.Insecure); var client = new ScannerServer.ScannerServerClient(channel); var reply = client.SendDataToServer(new SendRequest { GoodsInfo = { RFID = sEPC, Time = resultTime.ToString() } }); } catch { richTextBoxLogs.AppendText("Send data to server failed!" + Environment.NewLine); } }); } } } }