private void button5_Click(object sender, EventArgs e) { DBConn db = new DBConn(); string sql = "select * from gxjzdj where aac044 = '" + s.aac044 + "' and id = " + str_id; DataTable dt = db.GetDataSet(sql).Tables[0]; if (dt.Rows.Count < 1) { MessageBox.Show("该病人尚未就诊登记"); return; } gxjzdj gx = new gxjzdj(); var pros = gx.GetType().GetProperties(); foreach (var p in pros) { p.SetValue(gx, dt.Rows[0][p.Name].ToString(), null); } DialogResult dr = MessageBox.Show("确认对该病人进行就诊登记回退吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (dr == DialogResult.OK) { string otran = "select transid from fhjzdj where aac044 = '" + s.aac044 + "' and id=" + str_id; string otranid = db.GetDataSet(otran).Tables[0].Rows[0]["transid"].ToString(); WebReference.STYDJY bbb = new WebReference.STYDJY(); string resultxml = bbb.STYDJKService("0214", "<?xml version=\"1.0\" encoding=\"GBK\"?>" + "<input>" + "<otransid>" + otranid + "</otransid>" + "<aab299>" + PublicCommon.aab299 + "</aab299>" + "<yab600>" + PublicCommon.yab600 + "</yab600>" + "<akb026>" + PublicCommon.akb026 + "</akb026>" + "<akb021>" + PublicCommon.akb021 + "</akb021>" + "<ykc700>" + gx.ykc700 + "</ykc700>" + "<aab301>" + gx.aab301 + "</aab301>" + "<yab060>" + gx.yab060 + "</yab060>" + "<aac002>" + gx.aac002 + "</aac002>" + "<aac043>" + gx.aac043 + "</aac043>" + "<aac044>" + gx.aac044 + "</aac044>" + "<aae011>" + gx.aae011 + "</aae011>" + "<aae036>" + gx.aae036 + "</aae036>" + "</input>"); if (resultxml == "") { return; } XmlDocument xd = new XmlDocument(); xd.LoadXml(resultxml); XmlNode res = xd.SelectSingleNode("//result"); int error = int.Parse(res.SelectSingleNode("errorcode").InnerText); if (error < 0) { MessageBox.Show(res.SelectSingleNode("errormsg").InnerText); } else { MessageBox.Show("身份证为:" + gx.aac044 + " 的病人出院登记回退成功"); string sql1 = "delete fhjzdj where aac044 = '" + gx.aac044 + "' and id = " + str_id; string sql2 = "delete gxjzdj where aac044 = '" + gx.aac044 + "' and id = " + str_id; db.GetSqlCmd(sql1); db.GetSqlCmd(sql2); frm3.sfsbcx(); } } }