/// <summary> /// 减免实体赋值 /// </summary> /// <param name="derateFeeObj"></param> /// <returns></returns> private string[] getArgs(Neusoft.HISFC.Models.Fee.DerateFee derateFeeObj) { string[] strArgs = new string[] { derateFeeObj.InpatientNO, //0}', --医疗流水号 derateFeeObj.HappenNO.ToString(), //{1}', --发生序号 derateFeeObj.DerateKind.ID, //{2}', --减免种类 0 总额 1 最小费用 2 项目减免 3 减免管理使用(按最小费用) derateFeeObj.RecipeNO, //{3}', --处方号 derateFeeObj.SequenceNO.ToString(), //{4}', --处方内项目流水号 derateFeeObj.DerateType.ID, //{5}', --减免类型 derateFeeObj.FeeCode, //{6}', --最小费用 derateFeeObj.DerateCost.ToString(), //{7}', --减免金额 derateFeeObj.DerateCause, //{8}', --减免原因 derateFeeObj.ConfirmOperator.ID, //{9}', --批准人员工代码 derateFeeObj.ConfirmOperator.Name, //{10}', --批准人姓名 derateFeeObj.DerateOper.Dept.ID, //{11}', --科室代码 derateFeeObj.BalanceNO.ToString(), //{12}', --结算序号 derateFeeObj.BalanceState, //{13}', --结算状态 0:未结算;1:已结算 derateFeeObj.InvoiceNO, //{14}', --发票号 derateFeeObj.CancelDerateOper.ID, //{15}', --作废人代码 derateFeeObj.CancelDerateOper.OperTime.ToString(), //{16}', --作废时间 derateFeeObj.DerateOper.ID, //{17}', --操作员 derateFeeObj.DerateOper.OperTime.ToString(), //{18}', --操作日期 derateFeeObj.ItemCode, //{19}', --项目代码 derateFeeObj.ItemName, //{20}', --项目名称 derateFeeObj.FeeName, //'{21}', --最小费用 (Neusoft.FrameWork.Function.NConvert.ToInt32(derateFeeObj.IsValid)).ToString() }; return(strArgs); }
/// <summary> /// 更新或插入数据 /// </summary> /// <param name="sqlIndex"></param> /// <param name="derateList"></param> /// <returns></returns> private int InsertOrUpdateSingleTable(string sqlIndex, Neusoft.HISFC.Models.Fee.DerateFee derateObj) { string sql = string.Empty;//Update语句 //获得Where语句 if (this.Sql.GetSql(sqlIndex, ref sql) == -1) { this.Err = "没有找到索引为:" + sqlIndex + "的SQL语句"; return(-1); } string[] args = this.getArgs(derateObj); return(this.ExecNoQuery(sql, args)); }
/// <summary> /// 根据where条件查询信息 /// </summary> /// <param name="sqlIndex"></param> /// <param name="args"></param> /// <returns></returns> private ArrayList QueryDerateInfoByIndex(string sqlIndex, params string[] args) { string selectSql = this.PatientQuerySelect(); string whereSql = ""; int returnValue = this.Sql.GetSql(sqlIndex, ref whereSql); if (returnValue < 0) { this.Err = "查询" + sqlIndex + "对应的sql语句失败"; return(null); } this.ExecQuery(selectSql + " " + whereSql, args); Neusoft.HISFC.Models.Fee.DerateFee info = null; ArrayList al = new ArrayList(); while (this.Reader.Read()) { info = new Neusoft.HISFC.Models.Fee.DerateFee(); if (!this.Reader.IsDBNull(0)) { info.InpatientNO = Reader[0].ToString(); //住院流水号 } if (!this.Reader.IsDBNull(1)) { info.HappenNO = Convert.ToInt32(Reader[1].ToString()); //发生序号 } if (!this.Reader.IsDBNull(2)) { info.DerateKind.ID = Reader[2].ToString(); //减免种类 } if (!this.Reader.IsDBNull(3)) { info.RecipeNO = Reader[3].ToString();//处方号 } if (!this.Reader.IsDBNull(4)) { info.SequenceNO = Neusoft.FrameWork.Function.NConvert.ToInt32((Reader[4].ToString())); //处方内项目流水号 } if (!this.Reader.IsDBNull(5)) { info.DerateType.ID = Reader[5].ToString(); //减免类型 } if (!this.Reader.IsDBNull(6)) { info.FeeCode = Reader[6].ToString(); //最小费用 } if (!this.Reader.IsDBNull(7)) { info.DerateCost = Convert.ToDecimal(Reader[7]); //减免金额 } if (!this.Reader.IsDBNull(8)) { info.DerateCause = Reader[8].ToString(); //减免原因 } if (!this.Reader.IsDBNull(9)) { info.ConfirmOperator.ID = Reader[9].ToString(); //批准人编码 } if (!this.Reader.IsDBNull(10)) { info.ConfirmOperator.Name = Reader[10].ToString(); // 批准人 } if (!this.Reader.IsDBNull(11)) { info.DerateOper.Dept.ID = Reader[11].ToString(); // 科室 } if (!this.Reader.IsDBNull(12)) { info.BalanceNO = Convert.ToInt32(Reader[12].ToString()); // 结算序号 } if (!this.Reader.IsDBNull(13)) //结算状态 0:未结算;1:已结算 { info.BalanceState = this.Reader[13].ToString(); //结算状态 0:未结算;1:已结算 } if (!this.Reader.IsDBNull(14))//发票号 { info.InvoiceNO = Reader[14].ToString(); } if (!this.Reader.IsDBNull(15))//作废人代码 { info.CancelDerateOper.ID = Reader[15].ToString(); } if (!this.Reader.IsDBNull(16))//作废时间 { info.CancelDerateOper.OperTime = Convert.ToDateTime(Reader[16].ToString()); } if (!this.Reader.IsDBNull(17))//操作员 { info.DerateOper.ID = Reader[17].ToString(); } if (!this.Reader.IsDBNull(18))//操作日期 { info.DerateOper.OperTime = Convert.ToDateTime(Reader[18]); } if (!this.Reader.IsDBNull(19))//项目代码 { info.ItemCode = this.Reader[19].ToString(); } if (!this.Reader.IsDBNull(20))//项目名称 { info.ItemName = this.Reader[20].ToString(); } if (!this.Reader.IsDBNull(21))//最小费用 { info.FeeName = this.Reader[21].ToString(); } if (!this.Reader.IsDBNull(22)) { info.IsValid = Neusoft.FrameWork.Function.NConvert.ToBoolean(this.Reader[22]); } if (!this.Reader.IsDBNull(23)) { info.DerateKind.Name = this.Reader[23].ToString(); } if (!this.Reader.IsDBNull(24)) { info.DerateType.Name = this.Reader[24].ToString(); } if (!this.Reader.IsDBNull(25)) { info.DerateOper.Dept.Name = this.Reader[25].ToString(); } al.Add(info); } this.Reader.Close(); return(al); }
/// <summary> /// 更新减免信息 /// </summary> /// <param name="derateList">减免实体</param> /// <returns></returns> public int UpdateDerateFeeInfo(Neusoft.HISFC.Models.Fee.DerateFee derateObj) { return(this.InsertOrUpdateSingleTable("Fee.Inpatient.Derate.NewUpdate", derateObj)); }