/// <summary> /// 消息达到后交个Biz处理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void SocketHelper_MessageReviced(object sender, MessageRevicedEventArgs e) { string sendingApp = AppSettingString.SendingApp; string recvApp = AppSettingString.RecvApp; //System.Configuration.ConfigurationManager.AppSettings["recvApp"]; try { DBConn dbcon = new DBConn(); PipeParser parser = new PipeParser(); //解析出消息类型,创建对应的Biz进行处理 string message = System.Text.Encoding.UTF8.GetString(e.Contents); message = MediII.Common.MLLPHelper.TrimMLLP(message, true, false); LogHelp.WriteLog(message); ////手术字典 //if (message.Contains(_AcceptTitleOperDic)) //{ // OperDicModel dic = HL7ToXmlConverter.ToOperDic(message); // dbcon.InsertOperDic(dic); //} if (message.Contains(_NewOperApply)) { OTypesetting paiban = null; paiban = HL7ToXmlConverter.toDataBae(message, paiban); if (dbcon.GetPaiban(paiban.PatZhuYuanID) == null) { dbcon.InsertPaiban(paiban); } } //修改 else if (message.Contains(_UpdateOperApply)) { string zhuyuanid = HL7ToXmlConverter.GetZhuyuanId(message); OTypesetting paiban = dbcon.GetPaiban(zhuyuanid); paiban = HL7ToXmlConverter.toDataBae(message, paiban); if (paiban != null) { if (paiban.Ostate == 0) { dbcon.UpdatePaiban(paiban); } } } else if (message.Contains(_CancelOperApply)) { string zhuyuanid = ""; message = message.Replace("ARQ", "\nARQ"); string[] sList = message.Split('\n'); foreach (string str in sList) { if (str.Contains("ARQ|")) { zhuyuanid = str.Split('|')[1].Replace("^", ""); } } dbcon.UpdatePaibanOstate(zhuyuanid, -1); } //string mesStruct = parser.GetMessageStructure(message).Substring(0, 3); string ackMsg = MediII.Common.MessageHelper.SetACK("ACK", "", "", recvApp, recvApp, sendingApp, sendingApp, Guid.NewGuid().ToString("N")); LogHelp.WriteLog(ackMsg); SocketHelper.SendAck(MediII.Common.MLLPHelper.AddMLLP(ackMsg), e.SocketHandler); } catch (Exception ex) { //出现异常需要返回,避免队列堵塞 string ackMsg = MediII.Common.MessageHelper.SetACK("ACK", "", "", recvApp, recvApp, sendingApp, sendingApp, Guid.NewGuid().ToString("N"), ex.Message); LogHelp.WriteErrorLog(ackMsg); SocketHelper.SendAck(MediII.Common.MLLPHelper.AddMLLP(ackMsg), e.SocketHandler); MediII.Common.LogHelper.LogError(ex, Common.LogCatagories.AdapterBiz); } }
public int UpdatePaiban(OTypesetting model) { return(db.Updateable <OTypesetting>(model).ExecuteCommand()); }
public PAIBAN_Add(string id) { InitializeComponent(); _model = dal.GetPaiban(id.ToInt32()); }
private void button1_Click(object sender, EventArgs e) { string sendingApp = AppSettingString.SendingApp; string recvApp = AppSettingString.RecvApp; //System.Configuration.ConfigurationManager.AppSettings["recvApp"]; String message = txtOutput.Text; ////手术字典 //if (message.Contains(Program._AcceptTitleOperDic)) //{ // OperDicModel dic = HL7ToXmlConverter.ToOperDic(message); // int res = dbcon.InsertOperDic(dic); // if (res > 0) // { // MessageBox.Show("插入字典成功"); // } //} if (message.Contains(Program._NewOperApply)) { OTypesetting paiban = null; paiban = HL7ToXmlConverter.toDataBae(message, paiban); if (dbcon.GetPaiban(paiban.PatZhuYuanID) == null) { int i = dbcon.InsertPaiban(paiban); if (i > 0) { MessageBox.Show("新加手术成功"); } } else { MessageBox.Show("病人已经存在!"); } } else if (message.Contains(Program._UpdateOperApply)) { string zhuyuanid = HL7ToXmlConverter.GetZhuyuanId(message); OTypesetting paiban = dbcon.GetPaiban(zhuyuanid); paiban = HL7ToXmlConverter.toDataBae(message, paiban); if (paiban != null) { if (paiban.Ostate == 0) { dbcon.UpdatePaiban(paiban); } } } else if (message.Contains(Program._CancelOperApply)) { string zhuyuanid = ""; message = message.Replace("ARQ", "\nARQ"); string[] sList = message.Split('\n'); foreach (string str in sList) { if (str.Contains("ARQ|")) { zhuyuanid = str.Split('|')[1].Replace("^", ""); } } int i = dbcon.UpdatePaibanOstate(zhuyuanid, -1); if (i > 0) { MessageBox.Show("取消手术成功"); } } }