/// <summary> /// 新增方法,插入随访明细,并更新随访主记录 /// </summary> /// <param name="visitRecord">随访明细实体</param> /// <param name="sequ">随访记录唯一ID</param> /// <param name="visit">随访主记录实体</param> /// <returns>成功返回 0;失败返回 -1;</returns> public int InsertAndUpdateVisit(Neusoft.HISFC.Models.HealthRecord.Visit.VisitRecord visitRecord , string sequ, Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit) { if (InsertVisitRecordInfo(visitRecord, sequ) == -1) { return(-1); } if (UpdateVisit(visit) == -1) { return(-1); } return(0); }
/// <summary> /// 更新随访主记录 /// </summary> /// <param name="visit">随访主记录实体类</param> /// <returns>影响的行数、-1 失败</returns> public int UpdateVisit(Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit) { this.SetDB(visitManager); int intReturn = visitManager.Update(visit); if (intReturn < 0) { this.Err = visitManager.Err; return(-1); } return(intReturn); }
/// <summary> /// 根据病历号查询随访主记录 /// </summary> /// <param name="visit">随访主记录实体类</param> /// <param name="cardNo">病历号</param> /// <returns>1 查询出结果、0 没有查询到结果、-1 失败</returns> public int GetVisitInfo(ref Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit, string cardNo) { this.SetDB(visitManager); int intReturn = visitManager.Select(ref visit, cardNo); if (intReturn < 0) { this.Err = visitManager.Err; return(-1); } return(intReturn); }
/// <summary> /// 获得update或者insert随访表的传入参数数组 /// </summary> /// <param name="company">随访主记录信息</param> /// <returns>参数数组</returns> private string[] GetVisitParmItem(Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit) { string[] strParm = new string[16]; strParm[0] = visit.Patient.PID.CardNO; strParm[1] = visit.Linkway.Address; strParm[2] = visit.Linkway.Mail; strParm[3] = visit.Linkway.Phone; strParm[4] = visit.LastVisitTime.ToString(); strParm[5] = visit.Linkway.LinkWayType.ID; strParm[6] = visit.Linkway.ZIP; if (visit.VisitState == Neusoft.HISFC.Models.HealthRecord.Visit.EnumVisitState.Normal) { strParm[7] = "1"; } else { strParm[7] = "0"; } if (visit.LastIsPassive) { strParm[8] = "1"; } else { strParm[8] = "0"; } strParm[9] = visit.Linkway.OtherLinkway; strParm[10] = visit.Linkway.LinkMan.Name; if (visit.Linkway.IsLinkMan) { strParm[11] = "1"; } else { strParm[11] = "0"; } strParm[12] = visit.Linkway.Relation.ID; strParm[13] = visit.User01; strParm[14] = visit.User02; strParm[15] = visit.User03; //返回数组 return(strParm); }
/// <summary> /// 传入病历号判断该患者是否已经停止随访 /// </summary> /// <param name="cardNo">病历号</param> /// <returns>-1 失败、0 停止随访、1 正常随访</returns> public int IsVisitStop(string cardNo) { Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit = new Neusoft.HISFC.Models.HealthRecord.Visit.Visit(); int intReturn = this.Select(ref visit, cardNo); if (intReturn == -1 || intReturn == 0) { return(-1); } if (visit.VisitState == Neusoft.HISFC.Models.HealthRecord.Visit.EnumVisitState.Stop) { return(0); } else { return(1); } }
/// <summary> /// 更新随访主记录 /// </summary> /// <param name="visit">随访主记录类</param> /// <returns>影响的行数;-1-失败</returns> public int Update(Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit) { string strSQL = ""; if (this.Sql.GetSql("HealthReacord.Visit.Vist.Update", ref strSQL) == -1) { this.Err = "没有找到HealthReacord.Visit.Vist.Update字段!"; return(-1); } try { string[] strParm = GetVisitParmItem(visit); strSQL = string.Format(strSQL, strParm); } catch (Exception ex) { this.Err = "赋值时候出错!" + ex.Message; return(-1); } // 执行SQL语句返回 return(this.ExecNoQuery(strSQL)); }
/// <summary> /// 根据病历号获取患者的随访主记录 /// </summary> /// <param name="visit">随访主记录类</param> /// <param name="cardNo">患者病历号</param> /// <returns>1-成功、0-没有查询到结果、-1-失败</returns> public int Select(ref Neusoft.HISFC.Models.HealthRecord.Visit.Visit visit, string cardNo) { string strSQL = ""; //读取SQL语句 if (this.Sql.GetSql("HealthReacord.Visit.Visit.Select", ref strSQL) == -1) { this.Err = "没有找到HealthReacord.Visit.Visit.Select字段!"; return(-1); } try { //传递病历号参数 strSQL = string.Format(strSQL, cardNo); } catch (Exception ex) { this.Err = "赋值时出错!" + ex.Message; return(-1); } ArrayList alVisit = new ArrayList(); this.ExecQuery(strSQL); try { while (this.Reader.Read()) { Neusoft.HISFC.Models.HealthRecord.Visit.Visit visitTemp = new Neusoft.HISFC.Models.HealthRecord.Visit.Visit(); visitTemp.Patient.PID.CardNO = this.Reader[0].ToString(); visitTemp.Linkway.Address = this.Reader[1].ToString(); visitTemp.Linkway.Mail = this.Reader[2].ToString(); visitTemp.Linkway.Phone = this.Reader[3].ToString(); visitTemp.LastVisitTime = NConvert.ToDateTime(this.Reader[4].ToString()); visitTemp.Linkway.LinkWayType.ID = this.Reader[5].ToString(); visitTemp.Linkway.ZIP = this.Reader[6].ToString(); //随访状态 if (this.Reader[7].ToString().Equals("0")) { visitTemp.VisitState = Neusoft.HISFC.Models.HealthRecord.Visit.EnumVisitState.Stop; } else { visitTemp.VisitState = Neusoft.HISFC.Models.HealthRecord.Visit.EnumVisitState.Normal; } if (this.Reader[8].ToString().Equals("1")) { visitTemp.LastIsPassive = true; } else { visitTemp.LastIsPassive = false; } visitTemp.Linkway.OtherLinkway = this.Reader[9].ToString(); visitTemp.Linkway.LinkMan.Name = this.Reader[10].ToString(); if (this.Reader[11].ToString().Equals("1")) { visitTemp.Linkway.IsLinkMan = true; } else { visitTemp.Linkway.IsLinkMan = false; } visitTemp.Linkway.Relation.ID = this.Reader[12].ToString(); visitTemp.User01 = this.Reader[13].ToString(); visitTemp.User02 = this.Reader[14].ToString(); visitTemp.User03 = this.Reader[15].ToString(); visitTemp.Linkway.LinkWayType.Name = this.Reader[16].ToString(); visitTemp.Linkway.Relation.Name = this.Reader[17].ToString(); alVisit.Add(visitTemp); } } catch (Exception ex) { this.Err = "读取随访主记录出错!" + ex.Message; return(-1); } finally { this.Reader.Close(); } if (alVisit.Count == 0) { return(0); } else if (alVisit.Count == 1) { visit = alVisit[0] as Neusoft.HISFC.Models.HealthRecord.Visit.Visit; return(1); } else { this.Err = "存在多条记录!"; return(-1); } }