Advertisement
Guest User

Untitled

a guest
Nov 15th, 2019
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.76 KB | None | 0 0
  1. private void SendHl7Message(string hl7Message, string pacsIpAddress, int pacsPort)
  2.         {
  3.             try
  4.             {
  5.                 // Tạo TCP/IP để kết nối tới máy chủ
  6.                 //var pacsIpAddress = Setting.HisDhydSetting.PacsIpAddress;
  7.                 //var pacsPort = Setting.HisDhydSetting.PacsPort;
  8.  
  9.                 var client = new MyClient(pacsIpAddress, pacsPort);
  10.                 var timer = new Stopwatch();
  11.  
  12.                 // Gửi dữ liệu ngay sau khi connect thành công
  13.                 client.ConnectStatus += success =>
  14.                 {
  15.                     if (!success)
  16.                     {
  17.                         Log.Debug($"---------------- Could not connect to PACS Server: '{pacsIpAddress}:{pacsPort}'");
  18.                         Log.Debug($"Reconnect !!!");
  19.                         _isSending = false;
  20.                         return;
  21.                     }
  22.                     Log.Debug($"---- Connected success => Send Data'{pacsIpAddress}:{pacsPort}'");
  23.                     //Log.Trace($"HL7 Message:\r\n{hl7Message}");
  24.                     client.SendData(hl7Message);
  25.                 };
  26.  
  27.                 client.OnInCommingData = data =>
  28.                 {
  29.                     try
  30.                     {
  31.                         // Xử lý khi nhận được dữ liệu phản hồi từ PACS
  32.                         Log.Trace($"Message from PACS:'{data}'");
  33.                         //var m = Message.Parse(data.Substring(1));
  34.                         //Log.Debug(m[1][9].Value.Equals("ACK")
  35.                         //    ? "Gửi thông tin sang PACS thành công"
  36.                         //    : $"Gửi thông tin không thành công:\r\nReceive From Pacs:{data}");
  37.                         timer.Stop();
  38.                     }
  39.                     catch (Exception ex)
  40.                     {
  41.                         Log.Error($"Error while send Data: Detail \r\n{ex}");
  42.                     }
  43.                     finally
  44.                     {
  45.                         client.Disconnect();
  46.                         _sendMessage++;
  47.                         Log.Trace($"Send {_sendMessage} success -- Time to send current message: {timer.Elapsed.ToString(@"m\:ss\.fff")}");
  48.                         Log.Debug($"======================================================== CLose Connection to PACS success ========================================================\r\n");
  49.                         _isSending = false;
  50.                     }
  51.                 };
  52.                 _isSending = true;
  53.                 timer.Start();
  54.                 client.StartConnect();
  55.             }
  56.             catch (Exception e)
  57.             {
  58.                 Log.Error($"Error while send HL7 Message: Details:\r\n{e}");
  59.             }
  60.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement